From d96f49543d7cdc1a77ce82a4056f5f722ab0b118 Mon Sep 17 00:00:00 2001 From: Quentin Colombet Date: Thu, 11 Feb 2016 19:35:06 +0000 Subject: [PATCH] [AArch64] Plug the beginning of the GlobalISel pipeline. llvm-svn: 260569 --- llvm/lib/Target/AArch64/AArch64TargetMachine.cpp | 13 +++++++++++++ llvm/lib/Target/AArch64/LLVMBuild.txt | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/llvm/lib/Target/AArch64/AArch64TargetMachine.cpp b/llvm/lib/Target/AArch64/AArch64TargetMachine.cpp index c52c554..1599f68 100644 --- a/llvm/lib/Target/AArch64/AArch64TargetMachine.cpp +++ b/llvm/lib/Target/AArch64/AArch64TargetMachine.cpp @@ -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()); diff --git a/llvm/lib/Target/AArch64/LLVMBuild.txt b/llvm/lib/Target/AArch64/LLVMBuild.txt index 642c183..0196c50 100644 --- a/llvm/lib/Target/AArch64/LLVMBuild.txt +++ b/llvm/lib/Target/AArch64/LLVMBuild.txt @@ -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 -- 2.7.4