forked from OSchip/llvm-project
[AArch64] Plug the beginning of the GlobalISel pipeline.
llvm-svn: 260569
This commit is contained in:
parent
2e00253750
commit
d96f49543d
|
@ -14,6 +14,9 @@
|
|||
#include "AArch64TargetMachine.h"
|
||||
#include "AArch64TargetObjectFile.h"
|
||||
#include "AArch64TargetTransformInfo.h"
|
||||
#ifdef LLVM_BUILD_GLOBAL_ISEL
|
||||
# include "llvm/CodeGen/GlobalISel/IRTranslator.h"
|
||||
#endif
|
||||
#include "llvm/CodeGen/Passes.h"
|
||||
#include "llvm/CodeGen/RegAllocRegistry.h"
|
||||
#include "llvm/IR/Function.h"
|
||||
|
@ -194,6 +197,9 @@ public:
|
|||
void addIRPasses() override;
|
||||
bool addPreISel() override;
|
||||
bool addInstSelector() override;
|
||||
#ifdef LLVM_BUILD_GLOBAL_ISEL
|
||||
bool addIRTranslator() override;
|
||||
#endif
|
||||
bool addILPOpts() override;
|
||||
void addPreRegAlloc() override;
|
||||
void addPostRegAlloc() override;
|
||||
|
@ -278,6 +284,13 @@ bool AArch64PassConfig::addInstSelector() {
|
|||
return false;
|
||||
}
|
||||
|
||||
#ifdef LLVM_BUILD_GLOBAL_ISEL
|
||||
bool AArch64PassConfig::addIRTranslator() {
|
||||
addPass(new IRTranslator());
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
|
||||
bool AArch64PassConfig::addILPOpts() {
|
||||
if (EnableCondOpt)
|
||||
addPass(createAArch64ConditionOptimizerPass());
|
||||
|
|
|
@ -31,5 +31,5 @@ has_jit = 1
|
|||
type = Library
|
||||
name = AArch64CodeGen
|
||||
parent = AArch64
|
||||
required_libraries = AArch64AsmPrinter AArch64Desc AArch64Info AArch64Utils Analysis AsmPrinter CodeGen Core MC Scalar SelectionDAG Support Target
|
||||
required_libraries = AArch64AsmPrinter AArch64Desc AArch64Info AArch64Utils Analysis AsmPrinter CodeGen Core MC Scalar SelectionDAG Support Target GlobalISel
|
||||
add_to_library_groups = AArch64
|
||||
|
|
Loading…
Reference in New Issue