diff options
author | Craig Topper <craig.topper@intel.com> | 2018-10-26 17:21:26 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@intel.com> | 2018-10-26 17:21:26 +0000 |
commit | 8315d9990c1f98efa069f9d27275f0fbfc3cc0fd (patch) | |
tree | fec12c498f5dc19d24fad6d4c2ba1010051ca7d7 /llvm/test/CodeGen/X86/bitcast-setcc-128.ll | |
parent | faf423ca74e865a3321ec8728105ac590990416d (diff) | |
download | bcm5719-llvm-8315d9990c1f98efa069f9d27275f0fbfc3cc0fd.tar.gz bcm5719-llvm-8315d9990c1f98efa069f9d27275f0fbfc3cc0fd.zip |
[X86] Stop promoting vector and/or/xor/andn to vXi64.
These promotions add additional bitcasts to the SelectionDAG that can pessimize computeKnownBits/computeNumSignBits. It also seems to interfere with broadcast formation.
This patch removes the promotion and adds isel patterns instead.
The increased table size is more than I would like, but hopefully we can find some canonicalizations or other tricks to start pruning out patterns going forward.
Differential Revision: https://reviews.llvm.org/D53268
llvm-svn: 345408
Diffstat (limited to 'llvm/test/CodeGen/X86/bitcast-setcc-128.ll')
-rw-r--r-- | llvm/test/CodeGen/X86/bitcast-setcc-128.ll | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/llvm/test/CodeGen/X86/bitcast-setcc-128.ll b/llvm/test/CodeGen/X86/bitcast-setcc-128.ll index c43b19a7179..3f78d0c9c5c 100644 --- a/llvm/test/CodeGen/X86/bitcast-setcc-128.ll +++ b/llvm/test/CodeGen/X86/bitcast-setcc-128.ll @@ -708,7 +708,6 @@ define i64 @v16i8_widened_with_ones(<16 x i8> %a, <16 x i8> %b) { ; AVX2-NEXT: vpcmpeqb %xmm1, %xmm0, %xmm0 ; AVX2-NEXT: vinserti128 $1, {{.*}}(%rip), %ymm0, %ymm0 ; AVX2-NEXT: vpsllw $7, %ymm0, %ymm0 -; AVX2-NEXT: vpand {{.*}}(%rip), %ymm0, %ymm0 ; AVX2-NEXT: vpmovmskb %ymm0, %ecx ; AVX2-NEXT: movabsq $-4294967296, %rax # imm = 0xFFFFFFFF00000000 ; AVX2-NEXT: orq %rcx, %rax |