[all-commits] [llvm/llvm-project] b6b40e: [BOLT] Gadget scanner: reformulate the state for d...

Anatoly Trosinenko via All-commits all-commits at lists.llvm.org
Tue Mar 25 11:45:23 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b6b40e9ac980518d7270b4ac880496b91efc8ca5
      https://github.com/llvm/llvm-project/commit/b6b40e9ac980518d7270b4ac880496b91efc8ca5
  Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
  Date:   2025-03-25 (Tue, 25 Mar 2025)

  Changed paths:
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/include/bolt/Passes/PAuthGadgetScanner.h
    M bolt/lib/Passes/PAuthGadgetScanner.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/test/binary-analysis/AArch64/gs-pacret-autiasp.s
    M bolt/test/binary-analysis/AArch64/gs-pacret-multi-bb.s
    M bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s

  Log Message:
  -----------
  [BOLT] Gadget scanner: reformulate the state for data-flow analysis (#131898)

In preparation for implementing support for detection of non-protected
call instructions, refine the definition of state which is computed for
each register by data-flow analysis.

Explicitly marking the registers which are known to be trusted at
function entry is crucial for finding non-protected calls. In addition,
it fixes less-common false negatives for pac-ret, such as `ret x1` in
`f_nonx30_ret_non_auted` test case.



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