[all-commits] [llvm/llvm-project] 6f9c18: [ubsan] Report specific CFI checks in UBSan summar...

Jakob Koschel via All-commits all-commits at lists.llvm.org
Fri Jul 31 01:56:37 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 6f9c189f738d47c7ad80f6bdf928fea441bfa8d6
      https://github.com/llvm/llvm-project/commit/6f9c189f738d47c7ad80f6bdf928fea441bfa8d6
  Author: Jakob Koschel <jakobkoschel at google.com>
  Date:   2026-07-31 (Fri, 31 Jul 2026)

  Changed paths:
    M compiler-rt/lib/ubsan/ubsan_checks.inc
    M compiler-rt/lib/ubsan/ubsan_handlers.cpp
    M compiler-rt/lib/ubsan/ubsan_handlers_cxx.cpp
    M compiler-rt/test/cfi/anon-namespace.cpp
    M compiler-rt/test/cfi/bad-cast.cpp
    M compiler-rt/test/cfi/base-derived-destructor.cpp
    M compiler-rt/test/cfi/cross-dso-diagnostic.cpp
    M compiler-rt/test/cfi/cross-dso/icall/diag.cpp
    M compiler-rt/test/cfi/cross-dso/icall/icall-from-dso.cpp
    M compiler-rt/test/cfi/cross-dso/icall/icall.cpp
    M compiler-rt/test/cfi/cross-dso/simple-fail.cpp
    M compiler-rt/test/cfi/cross-dso/target_out_of_bounds.cpp
    M compiler-rt/test/cfi/icall/bad-signature.c
    M compiler-rt/test/cfi/mfcall.cpp
    M compiler-rt/test/cfi/multiple-inheritance.cpp
    M compiler-rt/test/cfi/nvcall.cpp
    M compiler-rt/test/cfi/overwrite.cpp
    M compiler-rt/test/cfi/simple-fail.cpp
    M compiler-rt/test/cfi/target_uninstrumented.cpp
    M compiler-rt/test/cfi/vdtor.cpp

  Log Message:
  -----------
  [ubsan] Report specific CFI checks in UBSan summaries (#213224)

Instead of reporting generic `cfi-bad-type` in UBSan summaries for CFI
failures, report the specific CFI check kind (e.g., `cfi-vcall`,
`cfi-nvcall`, `cfi-icall`, `cfi-mfcall`, `cfi-derived-cast`,
`cfi-unrelated-cast`).

This is done by splitting CFIBadType into specific error types in
ubsan_checks.inc, and updating the handlers to report the appropriate
ErrorType based on the check kind. The suppression flag name for all of
them remains `cfi` to maintain backward compatibility.

Also replaces cfi-bad-type expectations in the existing tests.

Assisted-by: Automated tooling, human reviewed.



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