[llvm-commits] CVS: llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp

Rafael Espindola rafael.espindola at gmail.com
Mon Sep 4 12:05:16 PDT 2006



Changes in directory llvm/lib/Target/ARM:

ARMISelDAGToDAG.cpp updated: 1.40 -> 1.41
---
Log message:

add support for returning 64bit values


---
Diffs of the changes:  (+9 -0)

 ARMISelDAGToDAG.cpp |    9 +++++++++
 1 files changed, 9 insertions(+)


Index: llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
diff -u llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp:1.40 llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp:1.41
--- llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp:1.40	Sun Sep  3 08:19:15 2006
+++ llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp	Mon Sep  4 14:05:01 2006
@@ -238,6 +238,15 @@
     if (DAG.getMachineFunction().liveout_empty())
       DAG.getMachineFunction().addLiveOut(ARM::R0);
     break;
+  case 5:
+    Copy = DAG.getCopyToReg(Chain, ARM::R1, Op.getOperand(3), SDOperand());
+    Copy = DAG.getCopyToReg(Copy, ARM::R0, Op.getOperand(1), Copy.getValue(1));
+    // If we haven't noted the R0+R1 are live out, do so now.
+    if (DAG.getMachineFunction().liveout_empty()) {
+      DAG.getMachineFunction().addLiveOut(ARM::R0);
+      DAG.getMachineFunction().addLiveOut(ARM::R1);
+    }
+    break;
   }
 
   //We must use RET_FLAG instead of BRIND because BRIND doesn't have a flag






More information about the llvm-commits mailing list