aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/Mips/MipsMCInstLower.h
diff options
context:
space:
mode:
authorAkira Hatanaka <ahatanaka@mips.com>2011-11-23 22:19:28 +0000
committerAkira Hatanaka <ahatanaka@mips.com>2011-11-23 22:19:28 +0000
commit421455f1ea081e2e1767e782ac0d57ca55976e9b (patch)
tree63d24791262ad8e16aeb3bc15859606b4405ed01 /lib/Target/Mips/MipsMCInstLower.h
parent84bfc2f090639f933df06cc675c4385511516bef (diff)
downloadexternal_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.h4
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;
};
}