diff options
author | Benjamin Kramer <benny.kra@googlemail.com> | 2013-01-11 20:05:37 +0000 |
---|---|---|
committer | Benjamin Kramer <benny.kra@googlemail.com> | 2013-01-11 20:05:37 +0000 |
commit | 69e42dbd006c0afb732067ece7327988b1e24c01 (patch) | |
tree | 15eda209bdbedb97aed6f16286c25e7d845f4432 /include/llvm/CodeGen/Passes.h | |
parent | 3e40d927a775994d8f4c2d30695be69c248fa16c (diff) | |
download | llvm-69e42dbd006c0afb732067ece7327988b1e24c01.tar.gz llvm-69e42dbd006c0afb732067ece7327988b1e24c01.tar.bz2 llvm-69e42dbd006c0afb732067ece7327988b1e24c01.tar.xz |
Split TargetLowering into a CodeGen and a SelectionDAG part.
This fixes some of the cycles between libCodeGen and libSelectionDAG. It's still
a complete mess but as long as the edges consist of virtual call it doesn't
cause breakage. BasicTTI did static calls and thus broke some build
configurations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172246 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/CodeGen/Passes.h')
-rw-r--r-- | include/llvm/CodeGen/Passes.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/include/llvm/CodeGen/Passes.h b/include/llvm/CodeGen/Passes.h index 0d027006e6..1746fd4c14 100644 --- a/include/llvm/CodeGen/Passes.h +++ b/include/llvm/CodeGen/Passes.h @@ -25,6 +25,7 @@ namespace llvm { class MachineFunctionPass; class PassInfo; class PassManagerBase; + class TargetLoweringBase; class TargetLowering; class TargetRegisterClass; class raw_ostream; @@ -284,7 +285,8 @@ namespace llvm { /// /// This pass implements the target transform info analysis using the target /// independent information available to the LLVM code generator. - ImmutablePass *createBasicTargetTransformInfoPass(const TargetLowering *TLI); + ImmutablePass * + createBasicTargetTransformInfoPass(const TargetLoweringBase *TLI); /// createUnreachableBlockEliminationPass - The LLVM code generator does not /// work well with unreachable basic blocks (what live ranges make sense for a @@ -481,7 +483,7 @@ namespace llvm { /// createStackProtectorPass - This pass adds stack protectors to functions. /// - FunctionPass *createStackProtectorPass(const TargetLowering *tli); + FunctionPass *createStackProtectorPass(const TargetLoweringBase *tli); /// createMachineVerifierPass - This pass verifies cenerated machine code /// instructions for correctness. @@ -495,7 +497,7 @@ namespace llvm { /// createSjLjEHPreparePass - This pass adapts exception handling code to use /// the GCC-style builtin setjmp/longjmp (sjlj) to handling EH control flow. /// - FunctionPass *createSjLjEHPreparePass(const TargetLowering *tli); + FunctionPass *createSjLjEHPreparePass(const TargetLoweringBase *tli); /// LocalStackSlotAllocation - This pass assigns local frame indices to stack /// slots relative to one another and allocates base registers to access them |