LLVM 22.0.0git
|
#include "AArch64Subtarget.h"
#include "Utils/AArch64BaseInfo.h"
#include "llvm/ADT/BitVector.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/CodeGen/MachineBasicBlock.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/MachineOperand.h"
#include "llvm/CodeGen/RegisterScavenging.h"
#include "llvm/IR/DebugLoc.h"
#include "llvm/Pass.h"
#include "llvm/Support/Debug.h"
#include "llvm/Target/TargetMachine.h"
#include <cassert>
Go to the source code of this file.
Macros | |
#define | DEBUG_TYPE "aarch64-speculation-hardening" |
#define | AARCH64_SPECULATION_HARDENING_NAME "AArch64 speculation hardening pass" |
Functions | |
INITIALIZE_PASS (AArch64SpeculationHardening, "aarch64-speculation-hardening", AARCH64_SPECULATION_HARDENING_NAME, false, false) bool AArch64SpeculationHardening |
Variables | |
static cl::opt< bool > | HardenLoads ("aarch64-slh-loads", cl::Hidden, cl::desc("Sanitize loads from memory."), cl::init(true)) |
#define AARCH64_SPECULATION_HARDENING_NAME "AArch64 speculation hardening pass" |
Definition at line 114 of file AArch64SpeculationHardening.cpp.
Referenced by INITIALIZE_PASS().
#define DEBUG_TYPE "aarch64-speculation-hardening" |
Definition at line 112 of file AArch64SpeculationHardening.cpp.
INITIALIZE_PASS | ( | AArch64SpeculationHardening | , |
"aarch64-speculation-hardening" | , | ||
AARCH64_SPECULATION_HARDENING_NAME | , | ||
false | , | ||
false | ) |
Definition at line 178 of file AArch64SpeculationHardening.cpp.
References AARCH64_SPECULATION_HARDENING_NAME, assert(), llvm::SmallVectorTemplateCommon< T, typename >::empty(), llvm::getImm(), if(), MBB, llvm::SmallVectorTemplateCommon< T, typename >::size(), TBB, and TII.