[llvm-commits] [llvm] r121238 - /llvm/trunk/lib/Target/ARM/ARMFrameInfo.cpp

Evan Cheng evan.cheng at apple.com
Tue Dec 7 22:29:02 PST 2010


Author: evancheng
Date: Wed Dec  8 00:29:02 2010
New Revision: 121238

URL: http://llvm.org/viewvc/llvm-project?rev=121238&view=rev
Log:
Add comments.

Modified:
    llvm/trunk/lib/Target/ARM/ARMFrameInfo.cpp

Modified: llvm/trunk/lib/Target/ARM/ARMFrameInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMFrameInfo.cpp?rev=121238&r1=121237&r2=121238&view=diff
==============================================================================
--- llvm/trunk/lib/Target/ARM/ARMFrameInfo.cpp (original)
+++ llvm/trunk/lib/Target/ARM/ARMFrameInfo.cpp Wed Dec  8 00:29:02 2010
@@ -529,10 +529,11 @@
       if (isKill)
         MBB.addLiveIn(Reg);
 
-      if (NoGap && LastReg) {
-        if (LastReg != Reg-1)
-          break;
-      }
+      // If NoGap is true, pop consecutive registers and then leave the rest
+      // for other instructions. e.g.
+      // vpush {d8, d10, d11} -> vpush {d8}, vpop {d10, d11}
+      if (NoGap && LastReg && LastReg != Reg-1)
+        break;
       LastReg = Reg;
       Regs.push_back(std::make_pair(Reg, isKill));
     }
@@ -574,10 +575,12 @@
         DeleteRet = true;
       }
 
-      if (NoGap && LastReg) {
-        if (LastReg != Reg-1)
-          break;
-      }
+      // If NoGap is true, pop consecutive registers and then leave the rest
+      // for other instructions. e.g.
+      // vpop {d8, d10, d11} -> vpop {d8}, vpop {d10, d11}
+      if (NoGap && LastReg && LastReg != Reg-1)
+        break;
+
       LastReg = Reg;
       Regs.push_back(Reg);
     }





More information about the llvm-commits mailing list