diff options
author | Dan Gohman <gohman@apple.com> | 2008-09-23 21:53:34 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2008-09-23 21:53:34 +0000 |
commit | 918fe08a5697040435ca979bacd381e83bcd94aa (patch) | |
tree | de30996f44fb8f77b8709e1fbca22a802cabdb63 /llvm/lib/Target | |
parent | e8a06e619a054ed1179a4e568c4b0773d9b9d36e (diff) | |
download | bcm5719-llvm-918fe08a5697040435ca979bacd381e83bcd94aa.tar.gz bcm5719-llvm-918fe08a5697040435ca979bacd381e83bcd94aa.zip |
Arrange for FastISel code to have access to the MachineModuleInfo
object. This will be needed to support debug info.
llvm-svn: 56508
Diffstat (limited to 'llvm/lib/Target')
-rw-r--r-- | llvm/lib/Target/X86/X86FastISel.cpp | 6 | ||||
-rw-r--r-- | llvm/lib/Target/X86/X86ISelLowering.cpp | 3 | ||||
-rw-r--r-- | llvm/lib/Target/X86/X86ISelLowering.h | 2 |
3 files changed, 8 insertions, 3 deletions
diff --git a/llvm/lib/Target/X86/X86FastISel.cpp b/llvm/lib/Target/X86/X86FastISel.cpp index 7747788e813..b53e042edcb 100644 --- a/llvm/lib/Target/X86/X86FastISel.cpp +++ b/llvm/lib/Target/X86/X86FastISel.cpp @@ -49,10 +49,11 @@ class X86FastISel : public FastISel { public: explicit X86FastISel(MachineFunction &mf, + MachineModuleInfo *mmi, DenseMap<const Value *, unsigned> &vm, DenseMap<const BasicBlock *, MachineBasicBlock *> &bm, DenseMap<const AllocaInst *, int> &am) - : FastISel(mf, vm, bm, am) { + : FastISel(mf, mmi, vm, bm, am) { Subtarget = &TM.getSubtarget<X86Subtarget>(); StackPtr = Subtarget->is64Bit() ? X86::RSP : X86::ESP; X86ScalarSSEf64 = Subtarget->hasSSE2(); @@ -1160,9 +1161,10 @@ unsigned X86FastISel::TargetMaterializeAlloca(AllocaInst *C) { namespace llvm { llvm::FastISel *X86::createFastISel(MachineFunction &mf, + MachineModuleInfo *mmi, DenseMap<const Value *, unsigned> &vm, DenseMap<const BasicBlock *, MachineBasicBlock *> &bm, DenseMap<const AllocaInst *, int> &am) { - return new X86FastISel(mf, vm, bm, am); + return new X86FastISel(mf, mmi, vm, bm, am); } } diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp index f988048a106..18d0f6c78ca 100644 --- a/llvm/lib/Target/X86/X86ISelLowering.cpp +++ b/llvm/lib/Target/X86/X86ISelLowering.cpp @@ -1866,12 +1866,13 @@ bool X86TargetLowering::IsEligibleForTailCallOptimization(CallSDNode *TheCall, FastISel * X86TargetLowering::createFastISel(MachineFunction &mf, + MachineModuleInfo *mmo, DenseMap<const Value *, unsigned> &vm, DenseMap<const BasicBlock *, MachineBasicBlock *> &bm, DenseMap<const AllocaInst *, int> &am) { - return X86::createFastISel(mf, vm, bm, am); + return X86::createFastISel(mf, mmo, vm, bm, am); } diff --git a/llvm/lib/Target/X86/X86ISelLowering.h b/llvm/lib/Target/X86/X86ISelLowering.h index 96d829c583e..875787a53aa 100644 --- a/llvm/lib/Target/X86/X86ISelLowering.h +++ b/llvm/lib/Target/X86/X86ISelLowering.h @@ -472,6 +472,7 @@ namespace llvm { /// or null if the target does not support "fast" ISel. virtual FastISel * createFastISel(MachineFunction &mf, + MachineModuleInfo *mmi, DenseMap<const Value *, unsigned> &, DenseMap<const BasicBlock *, MachineBasicBlock *> &, DenseMap<const AllocaInst *, int> &); @@ -604,6 +605,7 @@ namespace llvm { namespace X86 { FastISel *createFastISel(MachineFunction &mf, + MachineModuleInfo *mmi, DenseMap<const Value *, unsigned> &, DenseMap<const BasicBlock *, MachineBasicBlock *> &, DenseMap<const AllocaInst *, int> &); |