LLVM: lib/Target/AArch64/AArch64AsmPrinter.cpp File Reference (original) (raw)
Go to the source code of this file.
| Macros | |
|---|---|
| #define | DEBUG_TYPE "asm-printer" |
| #define | GET_CB_OPC(IsImm, Width, ImmCond, RegCond) |
| Enumerations | |
|---|---|
| enum | PtrauthCheckMode { Default, Unchecked, Poison, Trap } |
| Functions | |
|---|---|
| static void | emitAuthenticatedPointer (MCStreamer &OutStreamer, MCSymbol *StubLabel, const MCExpr *StubAuthPtrRef) |
| static void | emitAddress (MCStreamer &Streamer, MCRegister Reg, const MCExpr *Expr, bool DSOLocal, const MCSubtargetInfo &STI) |
| static bool | targetSupportsPAuthRelocation (const Triple &TT, const MCExpr *Target, const MCExpr *DSExpr) |
| static bool | targetSupportsIRelativeRelocation (const Triple &TT) |
| INITIALIZE_PASS (AArch64AsmPrinter, "aarch64-asm-printer", "AArch64 Assembly Printer", false, false) extern "C" LLVM_ABI LLVM_EXTERNAL_VISIBILITY void LLVMInitializeAArch64AsmPrinter() |
| Variables | |
|---|---|
| static cl::opt< PtrauthCheckMode > | PtrauthAuthChecks ("aarch64-ptrauth-auth-checks", cl::Hidden, cl::values(clEnumValN(Unchecked, "none", "don't test for failure"), clEnumValN(Poison, "poison", "poison on failure"), clEnumValN(Trap, "trap", "trap on failure")), cl::desc("Check pointer authentication auth/resign failures"), cl::init(Default)) |
◆ DEBUG_TYPE
#define DEBUG_TYPE "asm-printer"
◆ GET_CB_OPC
| #define GET_CB_OPC | ( | IsImm, |
|---|---|---|
| Width, | ||
| ImmCond, | ||
| RegCond ) |
Value:
(IsImm \
? (Width == 32 ? AArch64::CB##ImmCond##Wri : AArch64::CB##ImmCond##Xri) \
: (Width == 8 \
? AArch64::CBB##RegCond##Wrr \
: (Width == 16 ? AArch64::CBH##RegCond##Wrr \
: (Width == 32 ? AArch64::CB##RegCond##Wrr \
: AArch64::CB##RegCond##Xrr))))
◆ PtrauthCheckMode
◆ emitAddress()
Definition at line 2339 of file AArch64AsmPrinter.cpp.
References llvm::MCInstBuilder::addImm(), llvm::MCSpecifierExpr::create(), llvm::MCSymbolRefExpr::create(), llvm::MCStreamer::emitInstruction(), llvm::MCExpr::evaluateAsRelocatable(), llvm::MCValue::getAddSym(), llvm::MCValue::getConstant(), llvm::MCStreamer::getContext(), Reg, llvm::report_fatal_error(), llvm::AArch64::S_ABS_PAGE, llvm::AArch64::S_GOT_LO12, llvm::AArch64::S_GOT_PAGE, and llvm::AArch64::S_LO12.
◆ emitAuthenticatedPointer()
◆ INITIALIZE_PASS()
| INITIALIZE_PASS | ( | AArch64AsmPrinter | , |
|---|---|---|---|
| "aarch64-asm-printer" | , | ||
| "AArch64 Assembly Printer" | , | ||
| false | , | ||
| false | ) |
◆ targetSupportsIRelativeRelocation()
◆ targetSupportsPAuthRelocation()
◆ PtrauthAuthChecks
| cl::opt< PtrauthCheckMode > PtrauthAuthChecks("aarch64-ptrauth-auth-checks", cl::Hidden, cl::values(clEnumValN(Unchecked, "none", "don't test for failure"), clEnumValN(Poison, "poison", "poison on failure"), clEnumValN(Trap, "trap", "trap on failure")), cl::desc("Check pointer authentication auth/resign failures"), cl::init(Default)) ( "aarch64-ptrauth-auth-checks" , cl::Hidden , cl::values(clEnumValN(Unchecked, "none", "don't test for failure"), clEnumValN(Poison, "poison", "poison on failure"), clEnumValN(Trap, "trap", "trap on failure")) , cl::desc("Check pointer authentication auth/resign failures") , cl::init(Default) ) | static |
|---|