Changes in directory llvm/lib/Target/X86:
X86RegisterInfo.cpp updated: 1.130 -> 1.131 X86RegisterInfo.h updated: 1.34 -> 1.35 --- Log message: Add support to locate local variables in frames (early version.) --- Diffs of the changes: (+15 -0) X86RegisterInfo.cpp | 12 ++++++++++++ X86RegisterInfo.h | 3 +++ 2 files changed, 15 insertions(+) Index: llvm/lib/Target/X86/X86RegisterInfo.cpp diff -u llvm/lib/Target/X86/X86RegisterInfo.cpp:1.130 llvm/lib/Target/X86/X86RegisterInfo.cpp:1.131 --- llvm/lib/Target/X86/X86RegisterInfo.cpp:1.130 Fri Mar 17 19:23:20 2006 +++ llvm/lib/Target/X86/X86RegisterInfo.cpp Thu Mar 23 12:12:57 2006 @@ -21,6 +21,7 @@ #include "llvm/CodeGen/MachineInstrBuilder.h" #include "llvm/CodeGen/MachineFunction.h" #include "llvm/CodeGen/MachineFrameInfo.h" +#include "llvm/CodeGen/MachineLocation.h" #include "llvm/Target/TargetFrameInfo.h" #include "llvm/Target/TargetMachine.h" #include "llvm/Target/TargetOptions.h" @@ -685,5 +686,16 @@ } } +void X86RegisterInfo::getLocation(MachineFunction &MF, unsigned Index, + MachineLocation &ML) const { + MachineFrameInfo *MFI = MF.getFrameInfo(); + bool FP = hasFP(MF); + + // FIXME - Needs to handle register variables. + // FIXME - Hardcoding gcc numbering. + ML.set(FP ? 6 : 7, + MFI->getObjectOffset(Index) + MFI->getStackSize()); +} + #include "X86GenRegisterInfo.inc" Index: llvm/lib/Target/X86/X86RegisterInfo.h diff -u llvm/lib/Target/X86/X86RegisterInfo.h:1.34 llvm/lib/Target/X86/X86RegisterInfo.h:1.35 --- llvm/lib/Target/X86/X86RegisterInfo.h:1.34 Thu Feb 2 14:12:32 2006 +++ llvm/lib/Target/X86/X86RegisterInfo.h Thu Mar 23 12:12:57 2006 @@ -62,6 +62,9 @@ void emitPrologue(MachineFunction &MF) const; void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const; + + void getLocation(MachineFunction &MF, unsigned Index, + MachineLocation &ML) const; }; } // End llvm namespace _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits