diff options
| author | David Greene <greened@obbligato.org> | 2009-11-12 20:49:22 +0000 | 
|---|---|---|
| committer | David Greene <greened@obbligato.org> | 2009-11-12 20:49:22 +0000 | 
| commit | 1fbe0544509ff3a4b9edcd2e0fb8fbab6ce1f5b1 (patch) | |
| tree | 4b3925f0e867adad2b81a16e5daefa7d390deb0e /llvm/lib/Target/X86/X86RegisterInfo.cpp | |
| parent | 2cefe383658bbd052f4dcf07ac3adbee33a2f51b (diff) | |
| download | bcm5719-llvm-1fbe0544509ff3a4b9edcd2e0fb8fbab6ce1f5b1.tar.gz bcm5719-llvm-1fbe0544509ff3a4b9edcd2e0fb8fbab6ce1f5b1.zip | |
Add a bool flag to StackObjects telling whether they reference spill
slots.  The AsmPrinter will use this information to determine whether to
print a spill/reload comment.
Remove default argument values.  It's too easy to pass a wrong argument
value when multiple arguments have default values.  Make everything
explicit to trap bugs early.
Update all targets to adhere to the new interfaces..
llvm-svn: 87022
Diffstat (limited to 'llvm/lib/Target/X86/X86RegisterInfo.cpp')
| -rw-r--r-- | llvm/lib/Target/X86/X86RegisterInfo.cpp | 12 | 
1 files changed, 7 insertions, 5 deletions
| diff --git a/llvm/lib/Target/X86/X86RegisterInfo.cpp b/llvm/lib/Target/X86/X86RegisterInfo.cpp index 63d28218095..d4e720c9528 100644 --- a/llvm/lib/Target/X86/X86RegisterInfo.cpp +++ b/llvm/lib/Target/X86/X86RegisterInfo.cpp @@ -614,8 +614,8 @@ X86RegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II,      // Offset is a 32-bit integer.      int Offset = getFrameIndexOffset(MF, FrameIndex) +        (int)(MI.getOperand(i + 3).getImm()); -   -     MI.getOperand(i + 3).ChangeToImmediate(Offset); + +    MI.getOperand(i + 3).ChangeToImmediate(Offset);    } else {      // Offset is symbolic. This is extremely rare.      uint64_t Offset = getFrameIndexOffset(MF, FrameIndex) + @@ -651,7 +651,8 @@ X86RegisterInfo::processFunctionBeforeCalleeSavedScan(MachineFunction &MF,      //   }      //   [EBP]      MFI->CreateFixedObject(-TailCallReturnAddrDelta, -                           (-1U*SlotSize)+TailCallReturnAddrDelta); +                           (-1U*SlotSize)+TailCallReturnAddrDelta, +                           true, false);    }    if (hasFP(MF)) { @@ -663,7 +664,8 @@ X86RegisterInfo::processFunctionBeforeCalleeSavedScan(MachineFunction &MF,      int FrameIdx = MFI->CreateFixedObject(SlotSize,                                            -(int)SlotSize +                                            TFI.getOffsetOfLocalArea() + -                                          TailCallReturnAddrDelta); +                                          TailCallReturnAddrDelta, +                                          true, false);      assert(FrameIdx == MFI->getObjectIndexBegin() &&             "Slot for EBP register must be last in order to be found!");      FrameIdx = 0; @@ -1275,7 +1277,7 @@ unsigned X86RegisterInfo::getRARegister() const {                   : X86::EIP;    // Should have dwarf #8.  } -unsigned X86RegisterInfo::getFrameRegister(MachineFunction &MF) const { +unsigned X86RegisterInfo::getFrameRegister(const MachineFunction &MF) const {    return hasFP(MF) ? FramePtr : StackPtr;  } | 

