[llvm-commits] [llvm] r99859 - /llvm/trunk/lib/Target/X86/X86ISelLowering.cpp
Eric Christopher
echristo at apple.com
Mon Mar 29 18:04:59 PDT 2010
Author: echristo
Date: Mon Mar 29 20:04:59 2010
New Revision: 99859
URL: http://llvm.org/viewvc/llvm-project?rev=99859&view=rev
Log:
Add FIXME for operand promotion.
Modified:
llvm/trunk/lib/Target/X86/X86ISelLowering.cpp
Modified: llvm/trunk/lib/Target/X86/X86ISelLowering.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86ISelLowering.cpp?rev=99859&r1=99858&r2=99859&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86ISelLowering.cpp (original)
+++ llvm/trunk/lib/Target/X86/X86ISelLowering.cpp Mon Mar 29 20:04:59 2010
@@ -794,6 +794,9 @@
}
// Promote v16i8, v8i16, v4i32 load, select, and, or, xor to v2i64.
+ // FIXME: This produces lots of inefficiencies in isel since
+ // we then need notice that most of our operands have been implicitly
+ // converted to v2i64.
for (unsigned i = (unsigned)MVT::v16i8; i != (unsigned)MVT::v2i64; i++) {
MVT::SimpleValueType SVT = (MVT::SimpleValueType)i;
EVT VT = SVT;
@@ -802,6 +805,7 @@
if (!VT.is128BitVector()) {
continue;
}
+
setOperationAction(ISD::AND, SVT, Promote);
AddPromotedToType (ISD::AND, SVT, MVT::v2i64);
setOperationAction(ISD::OR, SVT, Promote);
More information about the llvm-commits
mailing list