[all-commits] [llvm/llvm-project] b6dbda: [clang] Implement type/address discrimination of t...

Ahmed Bougacha via All-commits all-commits at lists.llvm.org
Mon Jul 22 16:41:43 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b6dbda67d8f687350de66e68a7fd61433fac7107
      https://github.com/llvm/llvm-project/commit/b6dbda67d8f687350de66e68a7fd61433fac7107
  Author: Ahmed Bougacha <ahmed at bougacha.org>
  Date:   2024-07-22 (Mon, 22 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/Features.def
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/PointerAuthOptions.h
    M clang/include/clang/Driver/Options.td
    M clang/lib/Frontend/CompilerInvocation.cpp
    A clang/test/CodeGenCXX/ptrauth-type-info-vtable.cpp

  Log Message:
  -----------
  [clang] Implement type/address discrimination of type_info vtable. (#99726)

We want to be able to support full type and address discrimination of
type_info on targets that don't have existing ABI compatibility
constraints.

This patch does not enable such behavior on any platform, it just adds
the necessary machinery.

In clang we add a new commandline argument to control the type_info
vtable ABI:
  -fptrauth-type-info-vtable-pointer-discrimination

and a feature flag to allow source level detection of the ABI:
  __has_feature(ptrauth_type_info_vtable_pointer_discrimination)

Co-authored-by: Oliver Hunt <oliver at apple.com>



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