diff options
author | Dan Gohman <gohman@apple.com> | 2010-07-07 16:29:44 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2010-07-07 16:29:44 +0000 |
commit | a4160c3434b08288d1f79f1acbe453d1b9610b22 (patch) | |
tree | aa60f4c520a5dcf1b6c0620410290eb19b94d97e /include/llvm/CodeGen/FastISel.h | |
parent | 4c3fd9f92f89810d659973d2666ab729758de64a (diff) | |
download | llvm-a4160c3434b08288d1f79f1acbe453d1b9610b22.tar.gz llvm-a4160c3434b08288d1f79f1acbe453d1b9610b22.tar.bz2 llvm-a4160c3434b08288d1f79f1acbe453d1b9610b22.tar.xz |
Simplify FastISel's constructor by giving it a FunctionLoweringInfo
instance, rather than pointers to all of FunctionLoweringInfo's
members.
This eliminates an NDEBUG ABI sensitivity.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107789 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/CodeGen/FastISel.h')
-rw-r--r-- | include/llvm/CodeGen/FastISel.h | 20 |
1 files changed, 3 insertions, 17 deletions
diff --git a/include/llvm/CodeGen/FastISel.h b/include/llvm/CodeGen/FastISel.h index 8e1f8fe1f0..c5c457db0c 100644 --- a/include/llvm/CodeGen/FastISel.h +++ b/include/llvm/CodeGen/FastISel.h @@ -24,6 +24,7 @@ namespace llvm { class AllocaInst; class ConstantFP; +class FunctionLoweringInfo; class Instruction; class MachineBasicBlock; class MachineConstantPool; @@ -45,14 +46,7 @@ class FastISel { protected: MachineBasicBlock *MBB; DenseMap<const Value *, unsigned> LocalValueMap; - DenseMap<const Value *, unsigned> &ValueMap; - DenseMap<const BasicBlock *, MachineBasicBlock *> &MBBMap; - DenseMap<const AllocaInst *, int> &StaticAllocaMap; - std::vector<std::pair<MachineInstr*, unsigned> > &PHINodesToUpdate; -#ifndef NDEBUG - SmallSet<const Instruction *, 8> &CatchInfoLost; -#endif - MachineFunction &MF; + FunctionLoweringInfo &FuncInfo; MachineRegisterInfo &MRI; MachineFrameInfo &MFI; MachineConstantPool &MCP; @@ -113,15 +107,7 @@ public: virtual ~FastISel(); protected: - FastISel(MachineFunction &mf, - DenseMap<const Value *, unsigned> &vm, - DenseMap<const BasicBlock *, MachineBasicBlock *> &bm, - DenseMap<const AllocaInst *, int> &am, - std::vector<std::pair<MachineInstr*, unsigned> > &PHINodesToUpdate -#ifndef NDEBUG - , SmallSet<const Instruction *, 8> &cil -#endif - ); + explicit FastISel(FunctionLoweringInfo &funcInfo); /// TargetSelectInstruction - This method is called by target-independent /// code when the normal FastISel process fails to select an instruction. |