[PATCH] D55515: [x86] increment/decrement constant vector with min/max in vsetcc lowering (PR39859)
Sanjay Patel via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Dec 10 08:57:31 PST 2018
spatel created this revision.
spatel added reviewers: nikic, andreadb, RKSimon.
Herald added a subscriber: mcrosier.
This is part of fixing PR39859:
https://bugs.llvm.org/show_bug.cgi?id=39859
We have a crippled vector ISA, so we have to invert a typical fold and create min/max here.
As discussed in the bug report, we can probably do better by using saturating subtract in larger patterns when it's available, but we should have this improvement for the minimal patterns regardless.
Alive proofs:
https://rise4fun.com/Alive/zsf
https://rise4fun.com/Alive/Qrl
https://reviews.llvm.org/D55515
Files:
lib/Target/X86/X86ISelLowering.cpp
test/CodeGen/X86/sat-add.ll
test/CodeGen/X86/vec_minmax_match.ll
test/CodeGen/X86/vec_setcc-2.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D55515.177534.patch
Type: text/x-patch
Size: 10001 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20181210/e588037f/attachment.bin>
More information about the llvm-commits
mailing list