[all-commits] [llvm/llvm-project] 2831a2: [KCFI] Emit debugtrap to make indirect call checks...

Sami Tolvanen via All-commits all-commits at lists.llvm.org
Fri Jun 2 13:00:28 PDT 2023

  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 2831a271c8beee7bc0a5b8ea1421de606358207b
  Author: Sami Tolvanen <samitolvanen at google.com>
  Date:   2023-06-02 (Fri, 02 Jun 2023)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/KCFI.cpp
    M llvm/test/Transforms/KCFI/kcfi.ll

  Log Message:
  [KCFI] Emit debugtrap to make indirect call checks recoverable

KCFI traps should always be recoverable, but as Intrinsic::trap
is marked noreturn, it's not possible to continue execution after
handling the trap as the compiler is free to assume we never
return. Switch to debugtrap instead to ensure we have the option
to resume execution after the trap.

More information about the All-commits mailing list