diff options
| author | Craig Topper <craig.topper@gmail.com> | 2012-01-13 05:04:25 +0000 |
|---|---|---|
| committer | Craig Topper <craig.topper@gmail.com> | 2012-01-13 05:04:25 +0000 |
| commit | 2aa07f832e0a6f3d7fb41e2e792d10bb7f568c3c (patch) | |
| tree | 87d6b47dda9c1e343dda06c297d7866b3bdceea8 | |
| parent | 6f2288b67cafef22509117245cafbe10ae12f25c (diff) | |
| download | bcm5719-llvm-2aa07f832e0a6f3d7fb41e2e792d10bb7f568c3c.tar.gz bcm5719-llvm-2aa07f832e0a6f3d7fb41e2e792d10bb7f568c3c.zip | |
Fix typo in PerformAddCombine that caused any vector type to be checked for horizontal add/sub if AVX2 is enabled. This caused an assert to fail for non 128/256-bit vectors when done before type legalizing. Fixes PR11749.
llvm-svn: 148096
| -rw-r--r-- | llvm/lib/Target/X86/X86ISelLowering.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp index 6a5e6f5f240..a6f22fafeea 100644 --- a/llvm/lib/Target/X86/X86ISelLowering.cpp +++ b/llvm/lib/Target/X86/X86ISelLowering.cpp @@ -14575,7 +14575,7 @@ static SDValue PerformAddCombine(SDNode *N, SelectionDAG &DAG, // Try to synthesize horizontal adds from adds of shuffles. if (((Subtarget->hasSSSE3() && (VT == MVT::v8i16 || VT == MVT::v4i32)) || - (Subtarget->hasAVX2() && (VT == MVT::v16i16 || MVT::v8i32))) && + (Subtarget->hasAVX2() && (VT == MVT::v16i16 || VT == MVT::v8i32))) && isHorizontalBinOp(Op0, Op1, true)) return DAG.getNode(X86ISD::HADD, N->getDebugLoc(), VT, Op0, Op1); |

