[mips] Initialize the long branch pass for testing purposes
authorSimon Dardis <simon.dardis@mips.com>
Sat, 12 May 2018 16:57:26 +0000 (16:57 +0000)
committerSimon Dardis <simon.dardis@mips.com>
Sat, 12 May 2018 16:57:26 +0000 (16:57 +0000)
llvm-svn: 332172

llvm/lib/Target/Mips/Mips.h
llvm/lib/Target/Mips/MipsLongBranch.cpp
llvm/lib/Target/Mips/MipsTargetMachine.cpp

index 1ca9ea1..641eece 100644 (file)
@@ -43,6 +43,7 @@ namespace llvm {
                                                      MipsRegisterBankInfo &);
 
   void initializeMipsDelaySlotFillerPass(PassRegistry &);
+  void initializeMipsLongBranchPass(PassRegistry &);
 } // end namespace llvm;
 
 #endif
index 7a7c8ab..d31c639 100644 (file)
@@ -77,8 +77,9 @@ namespace {
   public:
     static char ID;
 
-    MipsLongBranch()
-        : MachineFunctionPass(ID), ABI(MipsABIInfo::Unknown()) {}
+    MipsLongBranch() : MachineFunctionPass(ID), ABI(MipsABIInfo::Unknown()) {
+      initializeMipsLongBranchPass(*PassRegistry::getPassRegistry());
+    }
 
     StringRef getPassName() const override { return "Mips Long Branch"; }
 
@@ -108,6 +109,9 @@ namespace {
 
 char MipsLongBranch::ID = 0;
 
+INITIALIZE_PASS(MipsLongBranch, DEBUG_TYPE,
+                "Expand out of range branch instructions", false, false)
+
 /// Iterate over list of Br's operands and search for a MachineBasicBlock
 /// operand.
 static MachineBasicBlock *getTargetMBB(const MachineInstr &Br) {
index 77f43a2..2b9ac2c 100644 (file)
@@ -54,6 +54,7 @@ extern "C" void LLVMInitializeMipsTarget() {
   PassRegistry *PR = PassRegistry::getPassRegistry();
   initializeGlobalISel(*PR);
   initializeMipsDelaySlotFillerPass(*PR);
+  initializeMipsLongBranchPass(*PR);
 }
 
 static std::string computeDataLayout(const Triple &TT, StringRef CPU,