diff options
author | Akira Hatanaka <ahatanaka@mips.com> | 2011-11-23 22:19:28 +0000 |
---|---|---|
committer | Akira Hatanaka <ahatanaka@mips.com> | 2011-11-23 22:19:28 +0000 |
commit | 421455f1ea081e2e1767e782ac0d57ca55976e9b (patch) | |
tree | 63d24791262ad8e16aeb3bc15859606b4405ed01 /lib/Target/Mips/MipsMCInstLower.h | |
parent | 84bfc2f090639f933df06cc675c4385511516bef (diff) | |
download | external_llvm-421455f1ea081e2e1767e782ac0d57ca55976e9b.zip external_llvm-421455f1ea081e2e1767e782ac0d57ca55976e9b.tar.gz external_llvm-421455f1ea081e2e1767e782ac0d57ca55976e9b.tar.bz2 |
This patch makes the following changes necessary for MIPS' direct code emission.
- lower unaligned loads/stores.
- encode the size operand of instructions INS and EXT.
- emit relocation information needed for JAL (jump-and-link).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145113 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/Mips/MipsMCInstLower.h')
-rw-r--r-- | lib/Target/Mips/MipsMCInstLower.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/Target/Mips/MipsMCInstLower.h b/lib/Target/Mips/MipsMCInstLower.h index 3a24da2..98e37e4 100644 --- a/lib/Target/Mips/MipsMCInstLower.h +++ b/lib/Target/Mips/MipsMCInstLower.h @@ -37,10 +37,12 @@ public: void Lower(const MachineInstr *MI, MCInst &OutMI) const; void LowerCPLOAD(const MachineInstr *MI, SmallVector<MCInst, 4>& MCInsts); void LowerCPRESTORE(const MachineInstr *MI, MCInst &OutMI); + void LowerUnalignedLoadStore(const MachineInstr *MI, + SmallVector<MCInst, 4>& MCInsts); private: MCOperand LowerSymbolOperand(const MachineOperand &MO, MachineOperandType MOTy, unsigned Offset) const; - MCOperand LowerOperand(const MachineOperand& MO) const; + MCOperand LowerOperand(const MachineOperand& MO, unsigned offset = 0) const; }; } |