diff options
author | Elena Demikhovsky <elena.demikhovsky@intel.com> | 2015-04-28 14:46:35 +0000 |
---|---|---|
committer | Elena Demikhovsky <elena.demikhovsky@intel.com> | 2015-04-28 14:46:35 +0000 |
commit | 1f7b3644d3bf28af9f0d19ca1a63cc48c026089c (patch) | |
tree | 530d4790b99db08f695f5065f86ac7b07fef6d24 /llvm/lib/Target | |
parent | 0846f54b0e41f8c5f6245b6d56410ff379d117b1 (diff) | |
download | bcm5719-llvm-1f7b3644d3bf28af9f0d19ca1a63cc48c026089c.tar.gz bcm5719-llvm-1f7b3644d3bf28af9f0d19ca1a63cc48c026089c.zip |
Fixed crash of variable shift inst on AVX2
https://llvm.org/bugs/show_bug.cgi?id=22955
llvm-svn: 235993
Diffstat (limited to 'llvm/lib/Target')
-rw-r--r-- | llvm/lib/Target/X86/X86ISelLowering.cpp | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp index cf3165e7513..1797ce4a11f 100644 --- a/llvm/lib/Target/X86/X86ISelLowering.cpp +++ b/llvm/lib/Target/X86/X86ISelLowering.cpp @@ -16495,9 +16495,7 @@ static SDValue LowerScalarVariableShift(SDValue Op, SelectionDAG &DAG, } // Special case in 32-bit mode, where i64 is expanded into high and low parts. - if (!Subtarget->is64Bit() && - (VT == MVT::v2i64 || (Subtarget->hasInt256() && VT == MVT::v4i64) || - (Subtarget->hasAVX512() && VT == MVT::v8i64)) && + if (!Subtarget->is64Bit() && VT == MVT::v2i64 && Amt.getOpcode() == ISD::BITCAST && Amt.getOperand(0).getOpcode() == ISD::BUILD_VECTOR) { Amt = Amt.getOperand(0); |