[llvm-branch-commits] [llvm-branch] r98113 - in /llvm/branches/Apple/Hermes: include/llvm/Target/ lib/CodeGen/ lib/Target/ARM/ lib/Target/Alpha/ lib/Target/Blackfin/ lib/Target/CellSPU/ lib/Target/MSP430/ lib/Target/Mips/ lib/Target/PIC16/ lib/Target/PowerPC/ lib/Target/Sparc/ lib/Target/SystemZ/ lib/Target/X86/ lib/Target/XCore/
Jim Grosbach
grosbach at apple.com
Tue Mar 9 16:32:27 PST 2010
Author: grosbach
Date: Tue Mar 9 18:32:27 2010
New Revision: 98113
URL: http://llvm.org/viewvc/llvm-project?rev=98113&view=rev
Log:
merge 98071 98086 98109
Modified:
llvm/branches/Apple/Hermes/include/llvm/Target/TargetRegisterInfo.h
llvm/branches/Apple/Hermes/lib/CodeGen/PrologEpilogInserter.cpp
llvm/branches/Apple/Hermes/lib/CodeGen/PrologEpilogInserter.h
llvm/branches/Apple/Hermes/lib/Target/ARM/ARMBaseRegisterInfo.cpp
llvm/branches/Apple/Hermes/lib/Target/ARM/ARMBaseRegisterInfo.h
llvm/branches/Apple/Hermes/lib/Target/ARM/Thumb1RegisterInfo.cpp
llvm/branches/Apple/Hermes/lib/Target/ARM/Thumb1RegisterInfo.h
llvm/branches/Apple/Hermes/lib/Target/Alpha/AlphaRegisterInfo.cpp
llvm/branches/Apple/Hermes/lib/Target/Alpha/AlphaRegisterInfo.h
llvm/branches/Apple/Hermes/lib/Target/Blackfin/BlackfinRegisterInfo.cpp
llvm/branches/Apple/Hermes/lib/Target/Blackfin/BlackfinRegisterInfo.h
llvm/branches/Apple/Hermes/lib/Target/CellSPU/SPURegisterInfo.cpp
llvm/branches/Apple/Hermes/lib/Target/CellSPU/SPURegisterInfo.h
llvm/branches/Apple/Hermes/lib/Target/MSP430/MSP430RegisterInfo.cpp
llvm/branches/Apple/Hermes/lib/Target/MSP430/MSP430RegisterInfo.h
llvm/branches/Apple/Hermes/lib/Target/Mips/MipsRegisterInfo.cpp
llvm/branches/Apple/Hermes/lib/Target/Mips/MipsRegisterInfo.h
llvm/branches/Apple/Hermes/lib/Target/PIC16/PIC16RegisterInfo.cpp
llvm/branches/Apple/Hermes/lib/Target/PIC16/PIC16RegisterInfo.h
llvm/branches/Apple/Hermes/lib/Target/PowerPC/PPCRegisterInfo.cpp
llvm/branches/Apple/Hermes/lib/Target/PowerPC/PPCRegisterInfo.h
llvm/branches/Apple/Hermes/lib/Target/Sparc/SparcRegisterInfo.cpp
llvm/branches/Apple/Hermes/lib/Target/Sparc/SparcRegisterInfo.h
llvm/branches/Apple/Hermes/lib/Target/SystemZ/SystemZRegisterInfo.cpp
llvm/branches/Apple/Hermes/lib/Target/SystemZ/SystemZRegisterInfo.h
llvm/branches/Apple/Hermes/lib/Target/X86/X86RegisterInfo.cpp
llvm/branches/Apple/Hermes/lib/Target/X86/X86RegisterInfo.h
llvm/branches/Apple/Hermes/lib/Target/XCore/XCoreRegisterInfo.cpp
llvm/branches/Apple/Hermes/lib/Target/XCore/XCoreRegisterInfo.h
Modified: llvm/branches/Apple/Hermes/include/llvm/Target/TargetRegisterInfo.h
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/include/llvm/Target/TargetRegisterInfo.h?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/include/llvm/Target/TargetRegisterInfo.h (original)
+++ llvm/branches/Apple/Hermes/include/llvm/Target/TargetRegisterInfo.h Tue Mar 9 18:32:27 2010
@@ -682,8 +682,9 @@
/// When -enable-frame-index-scavenging is enabled, the virtual register
/// allocated for this frame index is returned and its value is stored in
/// *Value.
+ typedef std::pair<unsigned, int> FrameIndexValue;
virtual unsigned eliminateFrameIndex(MachineBasicBlock::iterator MI,
- int SPAdj, int *Value = NULL,
+ int SPAdj, FrameIndexValue *Value = NULL,
RegScavenger *RS=NULL) const = 0;
/// emitProlog/emitEpilog - These methods insert prolog and epilog code into
Modified: llvm/branches/Apple/Hermes/lib/CodeGen/PrologEpilogInserter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/CodeGen/PrologEpilogInserter.cpp?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/CodeGen/PrologEpilogInserter.cpp (original)
+++ llvm/branches/Apple/Hermes/lib/CodeGen/PrologEpilogInserter.cpp Tue Mar 9 18:32:27 2010
@@ -57,6 +57,7 @@
const TargetRegisterInfo *TRI = Fn.getTarget().getRegisterInfo();
RS = TRI->requiresRegisterScavenging(Fn) ? new RegScavenger() : NULL;
FrameIndexVirtualScavenging = TRI->requiresFrameIndexScavenging(Fn);
+ FrameConstantRegMap.clear();
// Get MachineModuleInfo so that we can track the construction of the
// frame.
@@ -685,7 +686,7 @@
// If this instruction has a FrameIndex operand, we need to
// use that target machine register info object to eliminate
// it.
- int Value;
+ TargetRegisterInfo::FrameIndexValue Value;
unsigned VReg =
TRI.eliminateFrameIndex(MI, SPAdj, &Value,
FrameIndexVirtualScavenging ? NULL : RS);
@@ -764,12 +765,12 @@
unsigned CurrentVirtReg = 0;
unsigned CurrentScratchReg = 0;
bool havePrevValue = false;
- int PrevValue = 0;
+ TargetRegisterInfo::FrameIndexValue PrevValue(0,0);
+ TargetRegisterInfo::FrameIndexValue Value(0,0);
MachineInstr *PrevLastUseMI = NULL;
unsigned PrevLastUseOp = 0;
bool trackingCurrentValue = false;
int SPAdj = 0;
- int Value = 0;
// The instruction stream may change in the loop, so check BB->end()
// directly.
@@ -826,8 +827,11 @@
if (trackingCurrentValue) {
SPAdj = (*Entry).second.second;
Value = (*Entry).second.first;
- } else
- SPAdj = Value = 0;
+ } else {
+ SPAdj = 0;
+ Value.first = 0;
+ Value.second = 0;
+ }
// If the scratch register from the last allocation is still
// available, see if the value matches. If it does, just re-use it.
Modified: llvm/branches/Apple/Hermes/lib/CodeGen/PrologEpilogInserter.h
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/CodeGen/PrologEpilogInserter.h?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/CodeGen/PrologEpilogInserter.h (original)
+++ llvm/branches/Apple/Hermes/lib/CodeGen/PrologEpilogInserter.h Tue Mar 9 18:32:27 2010
@@ -102,7 +102,8 @@
// When using the scavenger post-pass to resolve frame reference
// materialization registers, maintain a map of the registers to
// the constant value and SP adjustment associated with it.
- typedef std::pair<int, int> FrameConstantEntry;
+ typedef std::pair<TargetRegisterInfo::FrameIndexValue, int>
+ FrameConstantEntry;
DenseMap<unsigned, FrameConstantEntry> FrameConstantRegMap;
#ifndef NDEBUG
Modified: llvm/branches/Apple/Hermes/lib/Target/ARM/ARMBaseRegisterInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/ARM/ARMBaseRegisterInfo.cpp?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/ARM/ARMBaseRegisterInfo.cpp (original)
+++ llvm/branches/Apple/Hermes/lib/Target/ARM/ARMBaseRegisterInfo.cpp Tue Mar 9 18:32:27 2010
@@ -40,7 +40,7 @@
#include "llvm/Support/CommandLine.h"
using namespace llvm;
-static cl::opt<bool>
+cl::opt<bool>
ReuseFrameIndexVals("arm-reuse-frame-index-vals", cl::Hidden, cl::init(true),
cl::desc("Reuse repeated frame index values"));
@@ -1153,7 +1153,7 @@
unsigned
ARMBaseRegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II,
- int SPAdj, int *Value,
+ int SPAdj, FrameIndexValue *Value,
RegScavenger *RS) const {
unsigned i = 0;
MachineInstr &MI = *II;
@@ -1205,7 +1205,10 @@
MI.getOperand(i).ChangeToRegister(FrameReg, false, false, false);
else {
ScratchReg = MF.getRegInfo().createVirtualRegister(ARM::GPRRegisterClass);
- if (Value) *Value = Offset;
+ if (Value) {
+ Value->first = FrameReg; // use the frame register as a kind indicator
+ Value->second = Offset;
+ }
if (!AFI->isThumbFunction())
emitARMRegPlusImmediate(MBB, II, MI.getDebugLoc(), ScratchReg, FrameReg,
Offset, Pred, PredReg, TII);
Modified: llvm/branches/Apple/Hermes/lib/Target/ARM/ARMBaseRegisterInfo.h
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/ARM/ARMBaseRegisterInfo.h?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/ARM/ARMBaseRegisterInfo.h (original)
+++ llvm/branches/Apple/Hermes/lib/Target/ARM/ARMBaseRegisterInfo.h Tue Mar 9 18:32:27 2010
@@ -145,7 +145,7 @@
MachineBasicBlock::iterator I) const;
virtual unsigned eliminateFrameIndex(MachineBasicBlock::iterator II,
- int SPAdj, int *Value = NULL,
+ int SPAdj, FrameIndexValue *Value = NULL,
RegScavenger *RS = NULL) const;
virtual void emitPrologue(MachineFunction &MF) const;
Modified: llvm/branches/Apple/Hermes/lib/Target/ARM/Thumb1RegisterInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/ARM/Thumb1RegisterInfo.cpp?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/ARM/Thumb1RegisterInfo.cpp (original)
+++ llvm/branches/Apple/Hermes/lib/Target/ARM/Thumb1RegisterInfo.cpp Tue Mar 9 18:32:27 2010
@@ -33,10 +33,13 @@
#include "llvm/Target/TargetMachine.h"
#include "llvm/ADT/BitVector.h"
#include "llvm/ADT/SmallVector.h"
+#include "llvm/Support/CommandLine.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/raw_ostream.h"
using namespace llvm;
+extern cl::opt<bool> ReuseFrameIndexVals;
+
Thumb1RegisterInfo::Thumb1RegisterInfo(const ARMBaseInstrInfo &tii,
const ARMSubtarget &sti)
: ARMBaseRegisterInfo(tii, sti) {
@@ -426,7 +429,7 @@
unsigned
Thumb1RegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II,
- int SPAdj, int *Value,
+ int SPAdj, FrameIndexValue *Value,
RegScavenger *RS) const{
unsigned VReg = 0;
unsigned i = 0;
@@ -638,8 +641,10 @@
} else if (Desc.mayStore()) {
VReg = MF.getRegInfo().createVirtualRegister(ARM::tGPRRegisterClass);
assert (Value && "Frame index virtual allocated, but Value arg is NULL!");
- *Value = Offset;
bool UseRR = false;
+ bool TrackVReg = true;
+ Value->first = FrameReg; // use the frame register as a kind indicator
+ Value->second = Offset;
if (Opcode == ARM::tSpill) {
if (FrameReg == ARM::SP)
@@ -648,6 +653,7 @@
else {
emitLoadConstPool(MBB, II, dl, VReg, 0, Offset);
UseRR = true;
+ TrackVReg = false;
}
} else
emitThumbRegPlusImmediate(MBB, II, VReg, FrameReg, Offset, TII,
@@ -658,6 +664,8 @@
MI.addOperand(MachineOperand::CreateReg(FrameReg, false));
else // tSTR has an extra register operand.
MI.addOperand(MachineOperand::CreateReg(0, false));
+ if (!ReuseFrameIndexVals || !TrackVReg)
+ VReg = 0;
} else
assert(false && "Unexpected opcode!");
Modified: llvm/branches/Apple/Hermes/lib/Target/ARM/Thumb1RegisterInfo.h
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/ARM/Thumb1RegisterInfo.h?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/ARM/Thumb1RegisterInfo.h (original)
+++ llvm/branches/Apple/Hermes/lib/Target/ARM/Thumb1RegisterInfo.h Tue Mar 9 18:32:27 2010
@@ -59,7 +59,7 @@
const TargetRegisterClass *RC,
unsigned Reg) const;
unsigned eliminateFrameIndex(MachineBasicBlock::iterator II,
- int SPAdj, int *Value = NULL,
+ int SPAdj, FrameIndexValue *Value = NULL,
RegScavenger *RS = NULL) const;
void emitPrologue(MachineFunction &MF) const;
Modified: llvm/branches/Apple/Hermes/lib/Target/Alpha/AlphaRegisterInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/Alpha/AlphaRegisterInfo.cpp?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/Alpha/AlphaRegisterInfo.cpp (original)
+++ llvm/branches/Apple/Hermes/lib/Target/Alpha/AlphaRegisterInfo.cpp Tue Mar 9 18:32:27 2010
@@ -153,7 +153,7 @@
unsigned
AlphaRegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II,
- int SPAdj, int *Value,
+ int SPAdj, FrameIndexValue *Value,
RegScavenger *RS) const {
assert(SPAdj == 0 && "Unexpected");
Modified: llvm/branches/Apple/Hermes/lib/Target/Alpha/AlphaRegisterInfo.h
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/Alpha/AlphaRegisterInfo.h?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/Alpha/AlphaRegisterInfo.h (original)
+++ llvm/branches/Apple/Hermes/lib/Target/Alpha/AlphaRegisterInfo.h Tue Mar 9 18:32:27 2010
@@ -42,7 +42,7 @@
MachineBasicBlock::iterator I) const;
unsigned eliminateFrameIndex(MachineBasicBlock::iterator II,
- int SPAdj, int *Value = NULL,
+ int SPAdj, FrameIndexValue *Value = NULL,
RegScavenger *RS = NULL) const;
//void processFunctionBeforeFrameFinalized(MachineFunction &MF) const;
Modified: llvm/branches/Apple/Hermes/lib/Target/Blackfin/BlackfinRegisterInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/Blackfin/BlackfinRegisterInfo.cpp?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/Blackfin/BlackfinRegisterInfo.cpp (original)
+++ llvm/branches/Apple/Hermes/lib/Target/Blackfin/BlackfinRegisterInfo.cpp Tue Mar 9 18:32:27 2010
@@ -221,7 +221,7 @@
unsigned
BlackfinRegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II,
- int SPAdj, int *Value,
+ int SPAdj, FrameIndexValue *Value,
RegScavenger *RS) const {
MachineInstr &MI = *II;
MachineBasicBlock &MBB = *MI.getParent();
Modified: llvm/branches/Apple/Hermes/lib/Target/Blackfin/BlackfinRegisterInfo.h
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/Blackfin/BlackfinRegisterInfo.h?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/Blackfin/BlackfinRegisterInfo.h (original)
+++ llvm/branches/Apple/Hermes/lib/Target/Blackfin/BlackfinRegisterInfo.h Tue Mar 9 18:32:27 2010
@@ -65,7 +65,7 @@
MachineBasicBlock::iterator I) const;
unsigned eliminateFrameIndex(MachineBasicBlock::iterator II,
- int SPAdj, int *Value = NULL,
+ int SPAdj, FrameIndexValue *Value = NULL,
RegScavenger *RS = NULL) const;
void processFunctionBeforeCalleeSavedScan(MachineFunction &MF,
Modified: llvm/branches/Apple/Hermes/lib/Target/CellSPU/SPURegisterInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/CellSPU/SPURegisterInfo.cpp?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/CellSPU/SPURegisterInfo.cpp (original)
+++ llvm/branches/Apple/Hermes/lib/Target/CellSPU/SPURegisterInfo.cpp Tue Mar 9 18:32:27 2010
@@ -328,7 +328,8 @@
unsigned
SPURegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II, int SPAdj,
- int *Value, RegScavenger *RS) const
+ FrameIndexValue *Value,
+ RegScavenger *RS) const
{
unsigned i = 0;
MachineInstr &MI = *II;
Modified: llvm/branches/Apple/Hermes/lib/Target/CellSPU/SPURegisterInfo.h
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/CellSPU/SPURegisterInfo.h?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/CellSPU/SPURegisterInfo.h (original)
+++ llvm/branches/Apple/Hermes/lib/Target/CellSPU/SPURegisterInfo.h Tue Mar 9 18:32:27 2010
@@ -64,7 +64,7 @@
MachineBasicBlock::iterator I) const;
//! Convert frame indicies into machine operands
unsigned eliminateFrameIndex(MachineBasicBlock::iterator II, int SPAdj,
- int *Value = NULL,
+ FrameIndexValue *Value = NULL,
RegScavenger *RS = NULL) const;
//! Determine the frame's layour
void determineFrameLayout(MachineFunction &MF) const;
Modified: llvm/branches/Apple/Hermes/lib/Target/MSP430/MSP430RegisterInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/MSP430/MSP430RegisterInfo.cpp?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/MSP430/MSP430RegisterInfo.cpp (original)
+++ llvm/branches/Apple/Hermes/lib/Target/MSP430/MSP430RegisterInfo.cpp Tue Mar 9 18:32:27 2010
@@ -207,7 +207,7 @@
unsigned
MSP430RegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II,
- int SPAdj, int *Value,
+ int SPAdj, FrameIndexValue *Value,
RegScavenger *RS) const {
assert(SPAdj == 0 && "Unexpected");
Modified: llvm/branches/Apple/Hermes/lib/Target/MSP430/MSP430RegisterInfo.h
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/MSP430/MSP430RegisterInfo.h?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/MSP430/MSP430RegisterInfo.h (original)
+++ llvm/branches/Apple/Hermes/lib/Target/MSP430/MSP430RegisterInfo.h Tue Mar 9 18:32:27 2010
@@ -50,7 +50,7 @@
MachineBasicBlock::iterator I) const;
unsigned eliminateFrameIndex(MachineBasicBlock::iterator II,
- int SPAdj, int *Value = NULL,
+ int SPAdj, FrameIndexValue *Value = NULL,
RegScavenger *RS = NULL) const;
void emitPrologue(MachineFunction &MF) const;
Modified: llvm/branches/Apple/Hermes/lib/Target/Mips/MipsRegisterInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/Mips/MipsRegisterInfo.cpp?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/Mips/MipsRegisterInfo.cpp (original)
+++ llvm/branches/Apple/Hermes/lib/Target/Mips/MipsRegisterInfo.cpp Tue Mar 9 18:32:27 2010
@@ -355,7 +355,7 @@
// direct reference.
unsigned MipsRegisterInfo::
eliminateFrameIndex(MachineBasicBlock::iterator II, int SPAdj,
- int *Value, RegScavenger *RS) const
+ FrameIndexValue *Value, RegScavenger *RS) const
{
MachineInstr &MI = *II;
MachineFunction &MF = *MI.getParent()->getParent();
Modified: llvm/branches/Apple/Hermes/lib/Target/Mips/MipsRegisterInfo.h
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/Mips/MipsRegisterInfo.h?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/Mips/MipsRegisterInfo.h (original)
+++ llvm/branches/Apple/Hermes/lib/Target/Mips/MipsRegisterInfo.h Tue Mar 9 18:32:27 2010
@@ -64,7 +64,7 @@
/// Stack Frame Processing Methods
unsigned eliminateFrameIndex(MachineBasicBlock::iterator II,
- int SPAdj, int *Value = NULL,
+ int SPAdj, FrameIndexValue *Value = NULL,
RegScavenger *RS = NULL) const;
void processFunctionBeforeFrameFinalized(MachineFunction &MF) const;
Modified: llvm/branches/Apple/Hermes/lib/Target/PIC16/PIC16RegisterInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/PIC16/PIC16RegisterInfo.cpp?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/PIC16/PIC16RegisterInfo.cpp (original)
+++ llvm/branches/Apple/Hermes/lib/Target/PIC16/PIC16RegisterInfo.cpp Tue Mar 9 18:32:27 2010
@@ -53,7 +53,7 @@
unsigned PIC16RegisterInfo::
eliminateFrameIndex(MachineBasicBlock::iterator II, int SPAdj,
- int *Value, RegScavenger *RS) const
+ FrameIndexValue *Value, RegScavenger *RS) const
{
/* NOT YET IMPLEMENTED */
return 0;
Modified: llvm/branches/Apple/Hermes/lib/Target/PIC16/PIC16RegisterInfo.h
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/PIC16/PIC16RegisterInfo.h?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/PIC16/PIC16RegisterInfo.h (original)
+++ llvm/branches/Apple/Hermes/lib/Target/PIC16/PIC16RegisterInfo.h Tue Mar 9 18:32:27 2010
@@ -49,7 +49,7 @@
virtual bool hasFP(const MachineFunction &MF) const;
virtual unsigned eliminateFrameIndex(MachineBasicBlock::iterator MI,
- int SPAdj, int *Value = NULL,
+ int SPAdj, FrameIndexValue *Value = NULL,
RegScavenger *RS=NULL) const;
void eliminateCallFramePseudoInstr(MachineFunction &MF,
Modified: llvm/branches/Apple/Hermes/lib/Target/PowerPC/PPCRegisterInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/PowerPC/PPCRegisterInfo.cpp?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/PowerPC/PPCRegisterInfo.cpp (original)
+++ llvm/branches/Apple/Hermes/lib/Target/PowerPC/PPCRegisterInfo.cpp Tue Mar 9 18:32:27 2010
@@ -713,7 +713,7 @@
unsigned
PPCRegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II,
- int SPAdj, int *Value,
+ int SPAdj, FrameIndexValue *Value,
RegScavenger *RS) const {
assert(SPAdj == 0 && "Unexpected");
Modified: llvm/branches/Apple/Hermes/lib/Target/PowerPC/PPCRegisterInfo.h
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/PowerPC/PPCRegisterInfo.h?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/PowerPC/PPCRegisterInfo.h (original)
+++ llvm/branches/Apple/Hermes/lib/Target/PowerPC/PPCRegisterInfo.h Tue Mar 9 18:32:27 2010
@@ -67,7 +67,7 @@
void lowerCRSpilling(MachineBasicBlock::iterator II, unsigned FrameIndex,
int SPAdj, RegScavenger *RS) const;
unsigned eliminateFrameIndex(MachineBasicBlock::iterator II,
- int SPAdj, int *Value = NULL,
+ int SPAdj, FrameIndexValue *Value = NULL,
RegScavenger *RS = NULL) const;
/// determineFrameLayout - Determine the size of the frame and maximum call
Modified: llvm/branches/Apple/Hermes/lib/Target/Sparc/SparcRegisterInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/Sparc/SparcRegisterInfo.cpp?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/Sparc/SparcRegisterInfo.cpp (original)
+++ llvm/branches/Apple/Hermes/lib/Target/Sparc/SparcRegisterInfo.cpp Tue Mar 9 18:32:27 2010
@@ -78,7 +78,7 @@
unsigned
SparcRegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II,
- int SPAdj, int *Value,
+ int SPAdj, FrameIndexValue *Value,
RegScavenger *RS) const {
assert(SPAdj == 0 && "Unexpected");
Modified: llvm/branches/Apple/Hermes/lib/Target/Sparc/SparcRegisterInfo.h
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/Sparc/SparcRegisterInfo.h?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/Sparc/SparcRegisterInfo.h (original)
+++ llvm/branches/Apple/Hermes/lib/Target/Sparc/SparcRegisterInfo.h Tue Mar 9 18:32:27 2010
@@ -44,7 +44,7 @@
MachineBasicBlock::iterator I) const;
unsigned eliminateFrameIndex(MachineBasicBlock::iterator II,
- int SPAdj, int *Value = NULL,
+ int SPAdj, FrameIndexValue *Value = NULL,
RegScavenger *RS = NULL) const;
void processFunctionBeforeFrameFinalized(MachineFunction &MF) const;
Modified: llvm/branches/Apple/Hermes/lib/Target/SystemZ/SystemZRegisterInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/SystemZ/SystemZRegisterInfo.cpp?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/SystemZ/SystemZRegisterInfo.cpp (original)
+++ llvm/branches/Apple/Hermes/lib/Target/SystemZ/SystemZRegisterInfo.cpp Tue Mar 9 18:32:27 2010
@@ -110,7 +110,7 @@
unsigned
SystemZRegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II,
- int SPAdj, int *Value,
+ int SPAdj, FrameIndexValue *Value,
RegScavenger *RS) const {
assert(SPAdj == 0 && "Unxpected");
Modified: llvm/branches/Apple/Hermes/lib/Target/SystemZ/SystemZRegisterInfo.h
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/SystemZ/SystemZRegisterInfo.h?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/SystemZ/SystemZRegisterInfo.h (original)
+++ llvm/branches/Apple/Hermes/lib/Target/SystemZ/SystemZRegisterInfo.h Tue Mar 9 18:32:27 2010
@@ -56,7 +56,7 @@
MachineBasicBlock::iterator I) const;
unsigned eliminateFrameIndex(MachineBasicBlock::iterator II,
- int SPAdj, int *Value = NULL,
+ int SPAdj, FrameIndexValue *Value = NULL,
RegScavenger *RS = NULL) const;
Modified: llvm/branches/Apple/Hermes/lib/Target/X86/X86RegisterInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/X86/X86RegisterInfo.cpp?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/X86/X86RegisterInfo.cpp (original)
+++ llvm/branches/Apple/Hermes/lib/Target/X86/X86RegisterInfo.cpp Tue Mar 9 18:32:27 2010
@@ -581,7 +581,7 @@
unsigned
X86RegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II,
- int SPAdj, int *Value,
+ int SPAdj, FrameIndexValue *Value,
RegScavenger *RS) const{
assert(SPAdj == 0 && "Unexpected");
Modified: llvm/branches/Apple/Hermes/lib/Target/X86/X86RegisterInfo.h
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/X86/X86RegisterInfo.h?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/X86/X86RegisterInfo.h (original)
+++ llvm/branches/Apple/Hermes/lib/Target/X86/X86RegisterInfo.h Tue Mar 9 18:32:27 2010
@@ -142,7 +142,7 @@
MachineBasicBlock::iterator MI) const;
unsigned eliminateFrameIndex(MachineBasicBlock::iterator MI,
- int SPAdj, int *Value = NULL,
+ int SPAdj, FrameIndexValue *Value = NULL,
RegScavenger *RS = NULL) const;
void processFunctionBeforeCalleeSavedScan(MachineFunction &MF,
Modified: llvm/branches/Apple/Hermes/lib/Target/XCore/XCoreRegisterInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/XCore/XCoreRegisterInfo.cpp?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/XCore/XCoreRegisterInfo.cpp (original)
+++ llvm/branches/Apple/Hermes/lib/Target/XCore/XCoreRegisterInfo.cpp Tue Mar 9 18:32:27 2010
@@ -173,7 +173,7 @@
unsigned
XCoreRegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II,
- int SPAdj, int *Value,
+ int SPAdj, FrameIndexValue *Value,
RegScavenger *RS) const {
assert(SPAdj == 0 && "Unexpected");
MachineInstr &MI = *II;
Modified: llvm/branches/Apple/Hermes/lib/Target/XCore/XCoreRegisterInfo.h
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Hermes/lib/Target/XCore/XCoreRegisterInfo.h?rev=98113&r1=98112&r2=98113&view=diff
==============================================================================
--- llvm/branches/Apple/Hermes/lib/Target/XCore/XCoreRegisterInfo.h (original)
+++ llvm/branches/Apple/Hermes/lib/Target/XCore/XCoreRegisterInfo.h Tue Mar 9 18:32:27 2010
@@ -58,7 +58,7 @@
MachineBasicBlock::iterator I) const;
unsigned eliminateFrameIndex(MachineBasicBlock::iterator II,
- int SPAdj, int *Value = NULL,
+ int SPAdj, FrameIndexValue *Value = NULL,
RegScavenger *RS = NULL) const;
void processFunctionBeforeCalleeSavedScan(MachineFunction &MF,
More information about the llvm-branch-commits
mailing list