[PATCH] D25987: [X86] New pattern to generate PSUBUS from SELECT
Yulia Koval via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Jan 26 03:46:59 PST 2017
yulia_koval updated this revision to Diff 85883.
yulia_koval added a comment.
Herald added a subscriber: igorb.
I updated the patch to trunk, because test output changed due to https://reviews.llvm.org/rL292479 optimization. I failed to find a better check, based on TLI.isLegal.., because it doesn't requires exact type. For example, in case of SSE4.1, isOperationLegalOrCustom(MIN, v8i32) returns false and disables the optimization. However, the transformation works fine as the illegal operation is split into two v4i32 operations. The hasSSE41 check is sufficient, because it includes both v8i16 and v4i32 for each integer type. i8(SSE hass i8 based umin) can't be used in this optimisation, because the ExtType is always larger then psubus type and can be minimum i16.
https://reviews.llvm.org/D25987
Files:
lib/Target/X86/X86ISelLowering.cpp
test/CodeGen/X86/psubus.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D25987.85883.patch
Type: text/x-patch
Size: 21151 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170126/7693d7c5/attachment.bin>
More information about the llvm-commits
mailing list