diff options
| author | Ruchira Sasanka <sasanka@students.uiuc.edu> | 2001-11-03 17:13:27 +0000 |
|---|---|---|
| committer | Ruchira Sasanka <sasanka@students.uiuc.edu> | 2001-11-03 17:13:27 +0000 |
| commit | b7a397253f8d0cd60a386e749fc71f801a066501 (patch) | |
| tree | 72e0d99ff8ff5fa3100833653428f2f07e9a3234 /llvm/lib/Target/Sparc | |
| parent | 629a15247a64adaaaab8d399b4f72a13829392ee (diff) | |
| download | bcm5719-llvm-b7a397253f8d0cd60a386e749fc71f801a066501.tar.gz bcm5719-llvm-b7a397253f8d0cd60a386e749fc71f801a066501.zip | |
Arranged stack frame - needs furhter organization
Moved InsertCallerSaveInstr to the SparcRegInfo.cpp
llvm-svn: 1106
Diffstat (limited to 'llvm/lib/Target/Sparc')
| -rw-r--r-- | llvm/lib/Target/Sparc/SparcInternals.h | 3 | ||||
| -rw-r--r-- | llvm/lib/Target/Sparc/SparcRegInfo.cpp | 12 |
2 files changed, 15 insertions, 0 deletions
diff --git a/llvm/lib/Target/Sparc/SparcInternals.h b/llvm/lib/Target/Sparc/SparcInternals.h index 653a2018a77..72b234f72cb 100644 --- a/llvm/lib/Target/Sparc/SparcInternals.h +++ b/llvm/lib/Target/Sparc/SparcInternals.h @@ -401,6 +401,9 @@ class UltraSparcRegInfo : public MachineRegInfo MachineInstr * cpMem2RegMI(const unsigned SrcPtrReg, const int Offset, const unsigned DestReg, const int RegType) const; + MachineInstr* cpValue2Value(Value *Src, Value *Dest) const; + + inline bool isRegVolatile(const int RegClassID, const int Reg) const { return (MachineRegClassArr[RegClassID])->isRegVolatile(Reg); } diff --git a/llvm/lib/Target/Sparc/SparcRegInfo.cpp b/llvm/lib/Target/Sparc/SparcRegInfo.cpp index 11180f5995b..a34a5305ae7 100644 --- a/llvm/lib/Target/Sparc/SparcRegInfo.cpp +++ b/llvm/lib/Target/Sparc/SparcRegInfo.cpp @@ -979,7 +979,19 @@ MachineInstr * UltraSparcRegInfo::cpMem2RegMI(const unsigned SrcPtrReg, } +MachineInstr* UltraSparcRegInfo::cpValue2Value(Value *Src, Value *Dest) const { + MachineInstr * MI = NULL; + + MI = new MachineInstr(ADD, 3); + MI->SetMachineOperand(0, MachineOperand:: MO_VirtualRegister, Src, false); + MI->SetMachineOperand(1, SparcIntRegOrder::g0, false); + MI->SetMachineOperand(2, MachineOperand:: MO_VirtualRegister, Dest, true); + + + return MI; + +} |

