[all-commits] [llvm/llvm-project] fc0b1c: [PAC] Define __builtin_ptrauth_type_discriminator ...

Akira Hatanaka via All-commits all-commits at lists.llvm.org
Wed Jul 24 07:33:59 PDT 2024


  Branch: refs/heads/release/19.x
  Home:   https://github.com/llvm/llvm-project
  Commit: fc0b1ce075a570a7631eab23ab865023346b574e
      https://github.com/llvm/llvm-project/commit/fc0b1ce075a570a7631eab23ab865023346b574e
  Author: Akira Hatanaka <ahatanak at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/TokenKinds.def
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/Headers/ptrauth.h
    M clang/lib/Parse/ParseExpr.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaExpr.cpp
    A clang/test/AST/ast-dump-ptrauth-json.cpp
    M clang/test/CodeGenCXX/mangle-fail.cpp
    M clang/test/Sema/ptrauth-intrinsics-macro.c
    A clang/test/SemaCXX/ptrauth-type-discriminator.cpp

  Log Message:
  -----------
  [PAC] Define __builtin_ptrauth_type_discriminator (#100204)

The builtin computes the discriminator for a type, which can be used to
sign/authenticate function pointers and member function pointers.

If the type passed to the builtin is a C++ member function pointer type,
the result is the discriminator used to signed member function pointers
of that type. If the type is a function, function pointer, or function
reference type, the result is the discriminator used to sign functions
of that type. It is ill-formed to use this builtin with any other type.

A call to this function is an integer constant expression.

Co-Authored-By: John McCall rjmccall at apple.com
(cherry picked from commit 666e3326fedfb6a033494c36c36aa95c4124d642)



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