[llvm-commits] [llvm] r98058 - /llvm/trunk/lib/Target/XCore/XCoreISelLowering.cpp

Richard Osborne richard at xmos.com
Tue Mar 9 08:13:58 PST 2010


Author: friedgold
Date: Tue Mar  9 10:13:57 2010
New Revision: 98058

URL: http://llvm.org/viewvc/llvm-project?rev=98058&view=rev
Log:
Canonicalize ladd constant to RHS.

Modified:
    llvm/trunk/lib/Target/XCore/XCoreISelLowering.cpp

Modified: llvm/trunk/lib/Target/XCore/XCoreISelLowering.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/XCore/XCoreISelLowering.cpp?rev=98058&r1=98057&r2=98058&view=diff
==============================================================================
--- llvm/trunk/lib/Target/XCore/XCoreISelLowering.cpp (original)
+++ llvm/trunk/lib/Target/XCore/XCoreISelLowering.cpp Tue Mar  9 10:13:57 2010
@@ -1105,6 +1105,10 @@
     ConstantSDNode *N1C = dyn_cast<ConstantSDNode>(N1);
     EVT VT = N0.getValueType();
 
+    // canonicalize constant to RHS
+    if (N0C && !N1C)
+      return DAG.getNode(XCoreISD::LADD, dl, DAG.getVTList(VT, VT), N1, N0, N2);
+
     // fold (ladd 0, 0, x) -> 0, x & 1
     if (N0C && N0C->isNullValue() && N1C && N1C->isNullValue()) {
       SDValue Carry = DAG.getConstant(0, VT);





More information about the llvm-commits mailing list