aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2005-01-02 02:38:18 +0000
committerChris Lattner <sabre@nondot.org>2005-01-02 02:38:18 +0000
commit5dd350defd1932c712a9a51c99c8a5384331b702 (patch)
tree2a822e0583d98babeaf96f4b50fc8e983b79db67
parenteb96ec52ff77e6cfd97c71fbbab2ea19901fbe12 (diff)
Add a new method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19249 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Target/X86/X86InstrBuilder.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/lib/Target/X86/X86InstrBuilder.h b/lib/Target/X86/X86InstrBuilder.h
index 9f6ae1b7a8..17dc38eb6d 100644
--- a/lib/Target/X86/X86InstrBuilder.h
+++ b/lib/Target/X86/X86InstrBuilder.h
@@ -49,7 +49,9 @@ struct X86AddressMode {
GlobalValue *GV;
X86AddressMode() : BaseType(RegBase), Scale(1), IndexReg(0), Disp(0),
- GV(NULL) {}
+ GV(NULL) {
+ Base.Reg = 0;
+ }
};
/// addDirectMem - This function is used to add a direct memory reference to the
@@ -73,6 +75,13 @@ inline const MachineInstrBuilder &addRegOffset(const MachineInstrBuilder &MIB,
return MIB.addReg(Reg).addZImm(1).addReg(0).addSImm(Offset);
}
+/// addRegReg - This function is used to add a memory reference of the form:
+/// [Reg + Reg].
+inline const MachineInstrBuilder &addRegReg(const MachineInstrBuilder &MIB,
+ unsigned Reg1, unsigned Reg2) {
+ return MIB.addReg(Reg1).addZImm(1).addReg(Reg2).addSImm(0);
+}
+
inline const MachineInstrBuilder &addFullAddress(const MachineInstrBuilder &MIB,
const X86AddressMode &AM) {
assert (AM.Scale == 1 || AM.Scale == 2 || AM.Scale == 4 || AM.Scale == 8);