2020#include " llvm/CodeGen/MachineInstrBuilder.h"
2121#include " llvm/CodeGen/MachineModuleInfo.h"
2222
23+ #define DEBUG_TYPE " riscv-indrect-branch-tracking"
24+ #define PASS_NAME " RISC-V Indirect Branch Tracking"
25+
2326using namespace llvm ;
2427
2528cl::opt<uint32_t > PreferredLandingPadLabel (
2629 " riscv-landing-pad-label" , cl::ReallyHidden,
2730 cl::desc (" Use preferred fixed label for all labels" ));
2831
2932namespace {
30- class RISCVIndirectBranchTrackingPass : public MachineFunctionPass {
33+ class RISCVIndirectBranchTracking : public MachineFunctionPass {
3134public:
32- RISCVIndirectBranchTrackingPass () : MachineFunctionPass(ID) {}
35+ static char ID;
36+ RISCVIndirectBranchTracking () : MachineFunctionPass(ID) {}
3337
34- StringRef getPassName () const override {
35- return " RISC-V Indirect Branch Tracking" ;
36- }
38+ StringRef getPassName () const override { return PASS_NAME; }
3739
3840 bool runOnMachineFunction (MachineFunction &MF) override ;
3941
4042private:
41- static char ID;
4243 const Align LpadAlign = Align(4 );
4344};
4445
4546} // end anonymous namespace
4647
47- char RISCVIndirectBranchTrackingPass::ID = 0 ;
48+ INITIALIZE_PASS (RISCVIndirectBranchTracking, DEBUG_TYPE, PASS_NAME, false ,
49+ false )
50+
51+ char RISCVIndirectBranchTracking::ID = 0;
4852
4953FunctionPass *llvm::createRISCVIndirectBranchTrackingPass () {
50- return new RISCVIndirectBranchTrackingPass ();
54+ return new RISCVIndirectBranchTracking ();
5155}
5256
5357static void emitLpad (MachineBasicBlock &MBB, const RISCVInstrInfo *TII,
@@ -57,8 +61,7 @@ static void emitLpad(MachineBasicBlock &MBB, const RISCVInstrInfo *TII,
5761 .addImm (Label);
5862}
5963
60- bool RISCVIndirectBranchTrackingPass::runOnMachineFunction (
61- MachineFunction &MF) {
64+ bool RISCVIndirectBranchTracking::runOnMachineFunction (MachineFunction &MF) {
6265 const auto &Subtarget = MF.getSubtarget <RISCVSubtarget>();
6366 const RISCVInstrInfo *TII = Subtarget.getInstrInfo ();
6467 if (!Subtarget.hasStdExtZicfilp ())
0 commit comments