[llvm-commits] CVS: llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp AlphaRegisterInfo.h
Changes in directory llvm/lib/Target/Alpha: AlphaRegisterInfo.cpp updated: 1.65 - 1.66 AlphaRegisterInfo.h updated: 1.23 - 1.24 --- Log message: eliminateFrameIndex() change. --- Diffs of the changes: (+4 -2) AlphaRegisterInfo.cpp |4 +++- AlphaRegisterInfo.h |2 +- 2 files changed, 4 insertions(+), 2 deletions(-) Index: llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp diff -u llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.65 llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.66 --- llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.65Mon Apr 16 13:10:22 2007 +++ llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp Tue May 1 04:13:03 2007 @@ -255,7 +255,9 @@ //- SP void AlphaRegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II, -RegScavenger *RS) const { +int SPAdj, RegScavenger *RS) const { + assert(SPAdj == 0 Unexpected); + unsigned i = 0; MachineInstr MI = *II; MachineBasicBlock MBB = *MI.getParent(); Index: llvm/lib/Target/Alpha/AlphaRegisterInfo.h diff -u llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.23 llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.24 --- llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.23 Tue Mar 20 03:07:46 2007 +++ llvm/lib/Target/Alpha/AlphaRegisterInfo.h Tue May 1 04:13:03 2007 @@ -61,7 +61,7 @@ MachineBasicBlock::iterator I) const; void eliminateFrameIndex(MachineBasicBlock::iterator II, - RegScavenger *RS = NULL) const; + int SPAdj, RegScavenger *RS = NULL) const; //void processFunctionBeforeFrameFinalized(MachineFunction MF) const; ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp AlphaRegisterInfo.h
Changes in directory llvm/lib/Target/Alpha: AlphaRegisterInfo.cpp updated: 1.63 - 1.64 AlphaRegisterInfo.h updated: 1.22 - 1.23 --- Log message: Added MRegisterInfo hook to re-materialize an instruction. --- Diffs of the changes: (+12 -0) AlphaRegisterInfo.cpp |9 + AlphaRegisterInfo.h |3 +++ 2 files changed, 12 insertions(+) Index: llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp diff -u llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.63 llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.64 --- llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.63Tue Feb 27 18:18:31 2007 +++ llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp Tue Mar 20 03:07:46 2007 @@ -155,6 +155,15 @@ } } +void AlphaRegisterInfo::reMaterialize(MachineBasicBlock MBB, + MachineBasicBlock::iterator I, + unsigned DestReg, + const MachineInstr *Orig) const { + MachineInstr *MI = Orig-clone(); + MI-getOperand(0).setReg(DestReg); + MBB.insert(I, MI); +} + const unsigned* AlphaRegisterInfo::getCalleeSavedRegs() const { static const unsigned CalleeSavedRegs[] = { Alpha::R9, Alpha::R10, Index: llvm/lib/Target/Alpha/AlphaRegisterInfo.h diff -u llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.22 llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.23 --- llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.22 Tue Feb 27 18:18:31 2007 +++ llvm/lib/Target/Alpha/AlphaRegisterInfo.h Tue Mar 20 03:07:46 2007 @@ -45,6 +45,9 @@ unsigned DestReg, unsigned SrcReg, const TargetRegisterClass *RC) const; + void reMaterialize(MachineBasicBlock MBB, MachineBasicBlock::iterator MI, + unsigned DestReg, const MachineInstr *Orig) const; + const unsigned *getCalleeSavedRegs() const; const TargetRegisterClass* const* getCalleeSavedRegClasses() const; ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp AlphaRegisterInfo.h
Changes in directory llvm/lib/Target/Alpha: AlphaRegisterInfo.cpp updated: 1.62 - 1.63 AlphaRegisterInfo.h updated: 1.21 - 1.22 --- Log message: PEI now passes a RegScavenger ptr to eliminateFrameIndex. --- Diffs of the changes: (+4 -3) AlphaRegisterInfo.cpp |4 ++-- AlphaRegisterInfo.h |3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) Index: llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp diff -u llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.62 llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.63 --- llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.62Thu Feb 22 19:10:03 2007 +++ llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp Tue Feb 27 18:18:31 2007 @@ -245,8 +245,8 @@ //variable locals //- SP -void -AlphaRegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II) const { +void AlphaRegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II, +RegScavenger *RS) const { unsigned i = 0; MachineInstr MI = *II; MachineBasicBlock MBB = *MI.getParent(); Index: llvm/lib/Target/Alpha/AlphaRegisterInfo.h diff -u llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.21 llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.22 --- llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.21 Wed Feb 21 16:54:50 2007 +++ llvm/lib/Target/Alpha/AlphaRegisterInfo.h Tue Feb 27 18:18:31 2007 @@ -57,7 +57,8 @@ MachineBasicBlock MBB, MachineBasicBlock::iterator I) const; - void eliminateFrameIndex(MachineBasicBlock::iterator II) const; + void eliminateFrameIndex(MachineBasicBlock::iterator II, + RegScavenger *RS = NULL) const; //void processFunctionBeforeFrameFinalized(MachineFunction MF) const; ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp AlphaRegisterInfo.h
Changes in directory llvm/lib/Target/Alpha: AlphaRegisterInfo.cpp updated: 1.59 - 1.60 AlphaRegisterInfo.h updated: 1.19 - 1.20 --- Log message: Re-apply my liveintervalanalysis changes. Now with PR1207: http://llvm.org/PR1207 fixes. --- Diffs of the changes: (+11 -0) AlphaRegisterInfo.cpp |9 + AlphaRegisterInfo.h |2 ++ 2 files changed, 11 insertions(+) Index: llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp diff -u llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.59 llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.60 --- llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.59Sun Feb 18 21:20:00 2007 +++ llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp Mon Feb 19 15:49:54 2007 @@ -28,6 +28,7 @@ #include llvm/Target/TargetInstrInfo.h #include llvm/Support/CommandLine.h #include llvm/Support/Debug.h +#include llvm/ADT/BitVector.h #include llvm/ADT/STLExtras.h #include cstdlib using namespace llvm; @@ -178,6 +179,14 @@ return CalleeSavedRegClasses; } +BitVector AlphaRegisterInfo::getReservedRegs(const MachineFunction MF) const { + BitVector Reserved(getNumRegs()); + Reserved.set(Alpha::R15); + Reserved.set(Alpha::R30); + Reserved.set(Alpha::R31); + return Reserved; +} + //===--===// // Stack Frame Processing methods //===--===// Index: llvm/lib/Target/Alpha/AlphaRegisterInfo.h diff -u llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.19 llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.20 --- llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.19 Sun Feb 18 21:20:00 2007 +++ llvm/lib/Target/Alpha/AlphaRegisterInfo.h Mon Feb 19 15:49:54 2007 @@ -49,6 +49,8 @@ const TargetRegisterClass* const* getCalleeSavedRegClasses() const; + BitVector getReservedRegs(const MachineFunction MF) const; + bool hasFP(const MachineFunction MF) const; void eliminateCallFramePseudoInstr(MachineFunction MF, ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp AlphaRegisterInfo.h
Changes in directory llvm/lib/Target/Alpha: AlphaRegisterInfo.cpp updated: 1.58 - 1.59 AlphaRegisterInfo.h updated: 1.18 - 1.19 --- Log message: For PR1207: http://llvm.org/PR1207 : Revert patches that caused the problem. Evan, please investigate and reapply when you've discovered the problem. --- Diffs of the changes: (+0 -11) AlphaRegisterInfo.cpp |9 - AlphaRegisterInfo.h |2 -- 2 files changed, 11 deletions(-) Index: llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp diff -u llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.58 llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.59 --- llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.58Sat Feb 17 05:06:00 2007 +++ llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp Sun Feb 18 21:20:00 2007 @@ -28,7 +28,6 @@ #include llvm/Target/TargetInstrInfo.h #include llvm/Support/CommandLine.h #include llvm/Support/Debug.h -#include llvm/ADT/BitVector.h #include llvm/ADT/STLExtras.h #include cstdlib using namespace llvm; @@ -179,14 +178,6 @@ return CalleeSavedRegClasses; } -BitVector AlphaRegisterInfo::getReservedRegs(const MachineFunction MF) const { - BitVector Reserved(getNumRegs()); - Reserved.set(Alpha::R15); - Reserved.set(Alpha::R30); - Reserved.set(Alpha::R31); - return Reserved; -} - //===--===// // Stack Frame Processing methods //===--===// Index: llvm/lib/Target/Alpha/AlphaRegisterInfo.h diff -u llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.18 llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.19 --- llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.18 Sat Feb 17 05:06:00 2007 +++ llvm/lib/Target/Alpha/AlphaRegisterInfo.h Sun Feb 18 21:20:00 2007 @@ -49,8 +49,6 @@ const TargetRegisterClass* const* getCalleeSavedRegClasses() const; - BitVector getReservedRegs(const MachineFunction MF) const; - bool hasFP(const MachineFunction MF) const; void eliminateCallFramePseudoInstr(MachineFunction MF, ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp AlphaRegisterInfo.h
Changes in directory llvm/lib/Target/Alpha: AlphaRegisterInfo.cpp updated: 1.57 - 1.58 AlphaRegisterInfo.h updated: 1.17 - 1.18 --- Log message: Added getReservedRegs(). --- Diffs of the changes: (+11 -0) AlphaRegisterInfo.cpp |9 + AlphaRegisterInfo.h |2 ++ 2 files changed, 11 insertions(+) Index: llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp diff -u llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.57 llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.58 --- llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.57Tue Jan 23 03:37:38 2007 +++ llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp Sat Feb 17 05:06:00 2007 @@ -28,6 +28,7 @@ #include llvm/Target/TargetInstrInfo.h #include llvm/Support/CommandLine.h #include llvm/Support/Debug.h +#include llvm/ADT/BitVector.h #include llvm/ADT/STLExtras.h #include cstdlib using namespace llvm; @@ -178,6 +179,14 @@ return CalleeSavedRegClasses; } +BitVector AlphaRegisterInfo::getReservedRegs(const MachineFunction MF) const { + BitVector Reserved(getNumRegs()); + Reserved.set(Alpha::R15); + Reserved.set(Alpha::R30); + Reserved.set(Alpha::R31); + return Reserved; +} + //===--===// // Stack Frame Processing methods //===--===// Index: llvm/lib/Target/Alpha/AlphaRegisterInfo.h diff -u llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.17 llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.18 --- llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.17 Mon Jan 22 18:53:13 2007 +++ llvm/lib/Target/Alpha/AlphaRegisterInfo.h Sat Feb 17 05:06:00 2007 @@ -49,6 +49,8 @@ const TargetRegisterClass* const* getCalleeSavedRegClasses() const; + BitVector getReservedRegs(const MachineFunction MF) const; + bool hasFP(const MachineFunction MF) const; void eliminateCallFramePseudoInstr(MachineFunction MF, ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp AlphaRegisterInfo.h
Changes in directory llvm/lib/Target/Alpha: AlphaRegisterInfo.cpp updated: 1.54 - 1.55 AlphaRegisterInfo.h updated: 1.15 - 1.16 --- Log message: Fix naming inconsistency. --- Diffs of the changes: (+8 -8) AlphaRegisterInfo.cpp | 12 ++-- AlphaRegisterInfo.h |4 ++-- 2 files changed, 8 insertions(+), 8 deletions(-) Index: llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp diff -u llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.54 llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.55 --- llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.54Thu Dec 7 16:21:48 2006 +++ llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp Tue Jan 2 15:32:26 2007 @@ -151,8 +151,8 @@ } } -const unsigned* AlphaRegisterInfo::getCalleeSaveRegs() const { - static const unsigned CalleeSaveRegs[] = { +const unsigned* AlphaRegisterInfo::getCalleeSavedRegs() const { + static const unsigned CalleeSavedRegs[] = { Alpha::R9, Alpha::R10, Alpha::R11, Alpha::R12, Alpha::R13, Alpha::R14, @@ -161,12 +161,12 @@ Alpha::F6, Alpha::F7, Alpha::F8, Alpha::F9, 0 }; - return CalleeSaveRegs; + return CalleeSavedRegs; } const TargetRegisterClass* const* -AlphaRegisterInfo::getCalleeSaveRegClasses() const { - static const TargetRegisterClass * const CalleeSaveRegClasses[] = { +AlphaRegisterInfo::getCalleeSavedRegClasses() const { + static const TargetRegisterClass * const CalleeSavedRegClasses[] = { Alpha::GPRCRegClass, Alpha::GPRCRegClass, Alpha::GPRCRegClass, Alpha::GPRCRegClass, Alpha::GPRCRegClass, Alpha::GPRCRegClass, @@ -175,7 +175,7 @@ Alpha::F8RCRegClass, Alpha::F8RCRegClass, Alpha::F8RCRegClass, Alpha::F8RCRegClass, 0 }; - return CalleeSaveRegClasses; + return CalleeSavedRegClasses; } //===--===// Index: llvm/lib/Target/Alpha/AlphaRegisterInfo.h diff -u llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.15 llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.16 --- llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.15 Mon Nov 27 17:37:22 2006 +++ llvm/lib/Target/Alpha/AlphaRegisterInfo.h Tue Jan 2 15:32:26 2007 @@ -45,9 +45,9 @@ unsigned DestReg, unsigned SrcReg, const TargetRegisterClass *RC) const; - const unsigned *getCalleeSaveRegs() const; + const unsigned *getCalleeSavedRegs() const; - const TargetRegisterClass* const* getCalleeSaveRegClasses() const; + const TargetRegisterClass* const* getCalleeSavedRegClasses() const; void eliminateCallFramePseudoInstr(MachineFunction MF, MachineBasicBlock MBB, ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp AlphaRegisterInfo.h
Changes in directory llvm/lib/Target/Alpha: AlphaRegisterInfo.cpp updated: 1.39 - 1.40 AlphaRegisterInfo.h updated: 1.11 - 1.12 --- Log message: Foundation for call frame information. --- Diffs of the changes: (+8 -2) AlphaRegisterInfo.cpp |7 ++- AlphaRegisterInfo.h |3 ++- 2 files changed, 8 insertions(+), 2 deletions(-) Index: llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp diff -u llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.39 llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.40 --- llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.39Tue Mar 28 07:48:33 2006 +++ llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp Fri Apr 7 11:34:45 2006 @@ -354,8 +354,13 @@ } } +unsigned AlphaRegisterInfo::getRARegister() const { + assert(0 What is the return address register); + return 0; +} + unsigned AlphaRegisterInfo::getFrameRegister(MachineFunction MF) const { - return getDwarfRegNum(hasFP(MF) ? Alpha::R15 : Alpha::R30); + return hasFP(MF) ? Alpha::R15 : Alpha::R30; } #include AlphaGenRegisterInfo.inc Index: llvm/lib/Target/Alpha/AlphaRegisterInfo.h diff -u llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.11 llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.12 --- llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.11 Tue Mar 28 07:48:33 2006 +++ llvm/lib/Target/Alpha/AlphaRegisterInfo.h Fri Apr 7 11:34:45 2006 @@ -53,7 +53,8 @@ void emitPrologue(MachineFunction MF) const; void emitEpilogue(MachineFunction MF, MachineBasicBlock MBB) const; - // Debug information queries. + // Debug information queries. + unsigned getRARegister() const; unsigned getFrameRegister(MachineFunction MF) const; static std::string getPrettyName(unsigned reg); ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp AlphaRegisterInfo.h
Changes in directory llvm/lib/Target/Alpha: AlphaRegisterInfo.cpp updated: 1.38 - 1.39 AlphaRegisterInfo.h updated: 1.10 - 1.11 --- Log message: Expose base register for DwarfWriter. Refactor code accordingly. --- Diffs of the changes: (+4 -12) AlphaRegisterInfo.cpp | 12 ++-- AlphaRegisterInfo.h |4 ++-- 2 files changed, 4 insertions(+), 12 deletions(-) Index: llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp diff -u llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.38 llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.39 --- llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.38Mon Mar 27 14:18:45 2006 +++ llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp Tue Mar 28 07:48:33 2006 @@ -354,16 +354,8 @@ } } -void AlphaRegisterInfo::getLocation(MachineFunction MF, unsigned Index, -MachineLocation ML) const { - assert(0 Needs to be defined for target); - MachineFrameInfo *MFI = MF.getFrameInfo(); - bool FP = hasFP(MF); - - // FIXME - Needs to handle register variables. - // FIXME - Faking that llvm number is same as gcc numbering. - ML.set(getDwarfRegNum(FP ? Alpha::R15 : Alpha::R30), - MFI-getObjectOffset(Index) + MFI-getStackSize()); +unsigned AlphaRegisterInfo::getFrameRegister(MachineFunction MF) const { + return getDwarfRegNum(hasFP(MF) ? Alpha::R15 : Alpha::R30); } #include AlphaGenRegisterInfo.inc Index: llvm/lib/Target/Alpha/AlphaRegisterInfo.h diff -u llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.10 llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.11 --- llvm/lib/Target/Alpha/AlphaRegisterInfo.h:1.10 Thu Mar 23 12:12:57 2006 +++ llvm/lib/Target/Alpha/AlphaRegisterInfo.h Tue Mar 28 07:48:33 2006 @@ -53,8 +53,8 @@ void emitPrologue(MachineFunction MF) const; void emitEpilogue(MachineFunction MF, MachineBasicBlock MBB) const; - void getLocation(MachineFunction MF, unsigned Index, MachineLocation ML) const; - + // Debug information queries. + unsigned getFrameRegister(MachineFunction MF) const; static std::string getPrettyName(unsigned reg); }; ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits