LLVM 20.0.0git
Macros | Functions
CFGuardLongjmp.cpp File Reference

This file contains a machine function pass to insert a symbol after each call to _setjmp and store this in the MachineFunction's LongjmpTargets vector. More...

#include "llvm/ADT/Statistic.h"
#include "llvm/CodeGen/MachineBasicBlock.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/CodeGen/MachineModuleInfo.h"
#include "llvm/CodeGen/MachineOperand.h"
#include "llvm/CodeGen/Passes.h"
#include "llvm/IR/Module.h"
#include "llvm/InitializePasses.h"

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "cfguard-longjmp"
 

Functions

 STATISTIC (CFGuardLongjmpTargets, "Number of Control Flow Guard longjmp targets")
 
 INITIALIZE_PASS (CFGuardLongjmp, "CFGuardLongjmp", "Insert symbols at valid longjmp targets for /guard:cf", false, false) FunctionPass *llvm
 

Detailed Description

This file contains a machine function pass to insert a symbol after each call to _setjmp and store this in the MachineFunction's LongjmpTargets vector.

This will be used to emit the table of valid longjmp targets used by Control Flow Guard.

Definition in file CFGuardLongjmp.cpp.

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "cfguard-longjmp"

Definition at line 29 of file CFGuardLongjmp.cpp.

Function Documentation

◆ INITIALIZE_PASS()

INITIALIZE_PASS ( CFGuardLongjmp  ,
"CFGuardLongjmp"  ,
"Insert symbols at valid longjmp targets for /guard:cf"  ,
false  ,
false   
)

Definition at line 57 of file CFGuardLongjmp.cpp.

◆ STATISTIC()

STATISTIC ( CFGuardLongjmpTargets  ,
"Number of Control Flow Guard longjmp targets"   
)