summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/X86/X86ISelLowering.cpp
diff options
context:
space:
mode:
authorBill Wendling <isanbard@gmail.com>2007-03-27 20:22:40 +0000
committerBill Wendling <isanbard@gmail.com>2007-03-27 20:22:40 +0000
commit6dff51ae652c52aed2bcfce29b7d4e55a047c7cc (patch)
tree2cda6d271862fab5780441fe8dd043a9cf46ed76 /llvm/lib/Target/X86/X86ISelLowering.cpp
parent5852729ce8c77c273cec7ffb30b5958b4ea59cf1 (diff)
downloadbcm5719-llvm-6dff51ae652c52aed2bcfce29b7d4e55a047c7cc.tar.gz
bcm5719-llvm-6dff51ae652c52aed2bcfce29b7d4e55a047c7cc.zip
Fix so that pandn is emitted instead of an xor/and combo. Add integer
comparison operators. llvm-svn: 35385
Diffstat (limited to 'llvm/lib/Target/X86/X86ISelLowering.cpp')
-rw-r--r--llvm/lib/Target/X86/X86ISelLowering.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp
index dfc9680f987..0f27c3062db 100644
--- a/llvm/lib/Target/X86/X86ISelLowering.cpp
+++ b/llvm/lib/Target/X86/X86ISelLowering.cpp
@@ -361,13 +361,15 @@ X86TargetLowering::X86TargetLowering(TargetMachine &TM)
AddPromotedToType (ISD::LOAD, MVT::v2i32, MVT::v1i64);
setOperationAction(ISD::LOAD, MVT::v1i64, Legal);
- setOperationAction(ISD::BUILD_VECTOR, MVT::v8i8, Expand);
- setOperationAction(ISD::BUILD_VECTOR, MVT::v4i16, Expand);
- setOperationAction(ISD::BUILD_VECTOR, MVT::v2i32, Expand);
+ setOperationAction(ISD::BUILD_VECTOR, MVT::v8i8, Custom);
+ setOperationAction(ISD::BUILD_VECTOR, MVT::v4i16, Custom);
+ setOperationAction(ISD::BUILD_VECTOR, MVT::v2i32, Custom);
+ setOperationAction(ISD::BUILD_VECTOR, MVT::v1i64, Custom);
setOperationAction(ISD::VECTOR_SHUFFLE, MVT::v8i8, Custom);
setOperationAction(ISD::VECTOR_SHUFFLE, MVT::v4i16, Custom);
setOperationAction(ISD::VECTOR_SHUFFLE, MVT::v2i32, Custom);
+ setOperationAction(ISD::VECTOR_SHUFFLE, MVT::v1i64, Custom);
}
if (Subtarget->hasSSE1()) {
OpenPOWER on IntegriCloud