[all-commits] [llvm/llvm-project] 034102: [X86][AVX] LowerADDSAT_SUBSAT - avoid X86ISD::BLEN...
Simon Pilgrim via All-commits
all-commits at lists.llvm.org
Fri Nov 20 10:23:59 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 0341029bb414d346edcceeeabaf4c5bb3312c38c
https://github.com/llvm/llvm-project/commit/0341029bb414d346edcceeeabaf4c5bb3312c38c
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2020-11-20 (Fri, 20 Nov 2020)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/uadd_sat_vec.ll
M llvm/test/CodeGen/X86/usub_sat_vec.ll
Log Message:
-----------
[X86][AVX] LowerADDSAT_SUBSAT - avoid X86ISD::BLENDV in UADDSAT/USUBSAT v8i32/v4i64 lowering
Use the OR(CMP,ADD) / AND(CMP,SUB) patterns like we do on SSE targets.
Enable custom lowering for v8i32/v4i64 and generalize the 128-bit lowering code for any vector size - this also lets us use the slightly cheaper codegen for icmp_ugt instead of umin/umax.
More information about the All-commits
mailing list