summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2006-04-24 22:58:52 +0000
committerEvan Cheng <evan.cheng@apple.com>2006-04-24 22:58:52 +0000
commit5c2bfb069ec19a54aafdf0e58552ae69addd473d (patch)
treebb16f03dbdd9b4e21c4330b54d7a19f5c00b5660 /llvm
parent63bd4d3730409c3c4d73d3791698bdf2e90d8806 (diff)
downloadbcm5719-llvm-5c2bfb069ec19a54aafdf0e58552ae69addd473d.tar.gz
bcm5719-llvm-5c2bfb069ec19a54aafdf0e58552ae69addd473d.zip
Special case handling two wide build_vector(0, x).
llvm-svn: 27961
Diffstat (limited to 'llvm')
-rw-r--r--llvm/lib/Target/X86/X86ISelLowering.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp
index 1a11c32b341..a03c92ae6d1 100644
--- a/llvm/lib/Target/X86/X86ISelLowering.cpp
+++ b/llvm/lib/Target/X86/X86ISelLowering.cpp
@@ -3236,10 +3236,6 @@ SDOperand X86TargetLowering::LowerOperation(SDOperand Op, SelectionDAG &DAG) {
MVT::ValueType EVT = MVT::getVectorBaseType(VT);
unsigned EVTBits = MVT::getSizeInBits(EVT);
- // Let legalizer expand 2-widde build_vector's.
- if (EVTBits == 64)
- return SDOperand();
-
unsigned NumElems = Op.getNumOperands();
unsigned NumZero = 0;
unsigned NumNonZero = 0;
@@ -3291,6 +3287,10 @@ SDOperand X86TargetLowering::LowerOperation(SDOperand Op, SelectionDAG &DAG) {
}
}
+ // Let legalizer expand 2-widde build_vector's.
+ if (EVTBits == 64)
+ return SDOperand();
+
// If element VT is < 32 bits, convert it to inserts into a zero vector.
if (EVTBits == 8) {
SDOperand V = LowerBuildVectorv16i8(Op, NonZeros,NumNonZero,NumZero, DAG);
OpenPOWER on IntegriCloud