From: Eric Christopher Date: Tue, 3 Feb 2015 06:40:22 +0000 (+0000) Subject: Define a runOnMachineFunction for the Hexagon AsmPrinter and X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=482e09094475653048ad15f32755d7778898b289;p=oota-llvm.git Define a runOnMachineFunction for the Hexagon AsmPrinter and use it to initialize the subtarget. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@227948 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/Hexagon/HexagonAsmPrinter.cpp b/lib/Target/Hexagon/HexagonAsmPrinter.cpp index d0aef52dcea..dd4bf1574d4 100644 --- a/lib/Target/Hexagon/HexagonAsmPrinter.cpp +++ b/lib/Target/Hexagon/HexagonAsmPrinter.cpp @@ -63,9 +63,7 @@ static cl::opt AlignCalls( HexagonAsmPrinter::HexagonAsmPrinter(TargetMachine &TM, std::unique_ptr Streamer) - : AsmPrinter(TM, std::move(Streamer)) { - Subtarget = &TM.getSubtarget(); -} + : AsmPrinter(TM, std::move(Streamer)), Subtarget(nullptr) {} void HexagonAsmPrinter::printOperand(const MachineInstr *MI, unsigned OpNo, raw_ostream &O) { diff --git a/lib/Target/Hexagon/HexagonAsmPrinter.h b/lib/Target/Hexagon/HexagonAsmPrinter.h index 66cc1ac1670..792fc8b7af3 100644 --- a/lib/Target/Hexagon/HexagonAsmPrinter.h +++ b/lib/Target/Hexagon/HexagonAsmPrinter.h @@ -28,6 +28,11 @@ namespace llvm { explicit HexagonAsmPrinter(TargetMachine &TM, std::unique_ptr Streamer); + bool runOnMachineFunction(MachineFunction &Fn) override { + Subtarget = &Fn.getSubtarget(); + return AsmPrinter::runOnMachineFunction(Fn); + } + const char *getPassName() const override { return "Hexagon Assembly Printer"; }