[clang] [PAC] Define __builtin_ptrauth_type_discriminator (PR #100204)

Daniil Kovalev via cfe-commits cfe-commits at lists.llvm.org
Tue Jul 23 14:26:47 PDT 2024


================
@@ -1,5 +1,6 @@
 // RUN: %clang_cc1 -emit-llvm-only -x c++ -std=c++11 -triple %itanium_abi_triple -verify %s -DN=1
 // RUN: %clang_cc1 -emit-llvm-only -x c++ -std=c++11 -triple %itanium_abi_triple -verify %s -DN=2
+// RUN: %clang_cc1 -emit-llvm-only -x c++ -std=c++11 -triple %itanium_abi_triple -verify %s -DN=3
----------------
kovdan01 wrote:

Using `-triple %itanium_abi_triple` does not look correct in this context - for most people who do not have arm64e triple set as default one, the test would fail with the following error:

```
error: 'expected-error' diagnostics expected but not seen:
  File /path/to/llvm-project/clang/test/CodeGenCXX/mangle-fail.cpp Line 23: cannot yet mangle __builtin_ptrauth_type_discriminator expression
error: 'expected-error' diagnostics seen but not expected:
  File /path/to/llvm-project/clang/test/CodeGenCXX/mangle-fail.cpp Line 27: this target does not support pointer authentication
```

You probably want to use smth like `-triple aarch64-linux-gnu -fptrauth-intrinsics` instead of `-triple %itanium_abi_triple`. If I'm not mistaken, it'll need `// REQUIRES: aarch64-registered-target`, and maybe it's better to put this test case into a separate file in order to have other tests running for all targets.

https://github.com/llvm/llvm-project/pull/100204


More information about the cfe-commits mailing list