[all-commits] [llvm/llvm-project] ff86e1: [BOLT] Gadget scanner: clarify MCPlusBuilder callb...
Anatoly Trosinenko via All-commits
all-commits at lists.llvm.org
Thu Apr 17 08:35:58 PDT 2025
Branch: refs/heads/users/atrosinenko/bolt-gs-refactor-target-callbacks
Home: https://github.com/llvm/llvm-project
Commit: ff86e1d8b25b443c7b3bb2d26a45d9a280b31d97
https://github.com/llvm/llvm-project/commit/ff86e1d8b25b443c7b3bb2d26a45d9a280b31d97
Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Date: 2025-04-17 (Thu, 17 Apr 2025)
Changed paths:
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/lib/Passes/PAuthGadgetScanner.cpp
M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
M bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s
M bolt/test/binary-analysis/AArch64/gs-pauth-signing-oracles.s
Log Message:
-----------
[BOLT] Gadget scanner: clarify MCPlusBuilder callbacks interface
Clarify the semantics of `getAuthenticatedReg` and remove a redundant
`isAuthenticationOfReg` method, as combined auth+something instructions
(such as `retaa` on AArch64) should be handled carefully, especially
when searching for authentication oracles: usually, such instructions
cannot be authentication oracles and only some of them actually write
an authenticated pointer to a register (such as "ldra x0, [x1]!").
Use `std::optional<MCPhysReg>` returned type instead of plain MCPhysReg
and returning `getNoRegister()` as a "not applicable" indication.
Document a few existing methods, add information about preconditions.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list