[PATCH] D96037: [DAGCombiner] Don't fold FCOPYSIGN vector sign operand casts
Luís Marques via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Feb 4 07:23:22 PST 2021
luismarques created this revision.
luismarques added reviewers: david-arm, asb, efriedma, mundaym.
Herald added subscribers: ecnelises, pengfei, hiraditya.
luismarques requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.
Avoid doing the following combine for vector types:
copysign(x, fp_extend(y)) -> copysign(x, y)
copysign(x, fp_round(y)) -> copysign(x, y)
This seems to impede the selection of vector instruction and cause a mess in various circumstances.
This patch was extracted from D70426 <https://reviews.llvm.org/D70426>, which I am abandoning. The patch also refactors the code, for clarity.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D96037
Files:
llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
llvm/test/CodeGen/AArch64/vector-fcopysign.ll
llvm/test/CodeGen/X86/combine-fcopysign.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D96037.321416.patch
Type: text/x-patch
Size: 9176 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210204/f0f1a7c7/attachment.bin>
More information about the llvm-commits
mailing list