Fixed a bug with pervious ColorCallArg
authorRuchira Sasanka <sasanka@students.uiuc.edu>
Mon, 12 Nov 2001 20:54:19 +0000 (20:54 +0000)
committerRuchira Sasanka <sasanka@students.uiuc.edu>
Mon, 12 Nov 2001 20:54:19 +0000 (20:54 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1278 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/SparcV9/SparcV9RegInfo.cpp

index b576d05e6fa239f03b9be096901c428689a5bb6c..16e3b9f038093883840973d48f567951194e05c0 100644 (file)
@@ -655,9 +655,11 @@ void UltraSparcRegInfo::colorCallArgs(const MachineInstr *const CallMI,
       // the LR is colored with UniLRReg but has to go into  UniArgReg
       // to pass it as an argument
 
-      if( isArgInReg ) 
+      if( isArgInReg ) {
        AdMI = cpReg2RegMI(UniLRReg, UniArgReg, RegType );
-
+       AddedInstrnsBefore.push_back( AdMI ); 
+      }
+      
       else {
        // Now, we have to pass the arg on stack. Since LR received a register
        // we just have to move that register to the stack position where
@@ -666,13 +668,16 @@ void UltraSparcRegInfo::colorCallArgs(const MachineInstr *const CallMI,
        int argOffset = PRA.mcInfo.allocateOptionalArg(target, LR->getType()); 
 
        AdMI = cpReg2MemMI(UniLRReg, getStackPointer(), argOffset, RegType );
+
+       // Now add the instruction. We can directly add to
+       // CallAI->InstrnsBefore since we are just saving a reg on stack
+       //
+       CallAI->InstrnsBefore.push_back( AdMI ); 
+
+       //cerr << "\nCaution: Passing a reg on stack";
       }
 
-      // Now add the instruction. We can directly add to
-      // CallAI->InstrnsBefore since we are just saving a reg on stack
-      //
-      CallAI->InstrnsBefore.push_back( AdMI ); 
-      //cerr << "\nCaution: Passing a reg on stack";
+
     }
 
     else {                          // LR is not colored (i.e., spilled)