[PATCH] [XCore] Support functions returning more than 4 words.

robert lytton robert at xmos.com
Thu Feb 27 03:44:12 PST 2014


  LGTM


================
Comment at: lib/Target/XCore/XCoreISelLowering.cpp:1092-1093
@@ +1091,4 @@
+    if (VA.isRegLoc()) {
+      Chain = DAG.getCopyFromReg(Chain, dl, RVLocs[i].getLocReg(),
+                                 RVLocs[i].getValVT(), InFlag).getValue(1);
+      InFlag = Chain.getValue(2);
----------------
Replacing RVLocs[i] with VA would improve readability.

================
Comment at: lib/Target/XCore/XCoreMachineFunctionInfo.h:35-37
@@ -34,3 +34,5 @@
   bool EHSpillSlotSet;
+  unsigned ReturnStackOffset;
+  bool ReturnStackOffsetSet;
   int EHSpillSlot[2];
   int VarArgsFrameIndex;
----------------
Can you swap these lines around, to keep EHSpillSlotSet with EHSpillSlot[].


http://llvm-reviews.chandlerc.com/D2889

BRANCH
  multiple_returns

ARCANIST PROJECT
  llvm



More information about the llvm-commits mailing list