[llvm-branch-commits] Move {load, store}(llvm.protected.field.ptr) lowering to InstCombine. (PR #186548)

via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Fri Mar 13 19:03:54 PDT 2026


github-actions[bot] wrote:

<!--PREMERGE ADVISOR COMMENT: Linux-->
# :penguin: Linux x64 Test Results

* 171266 tests passed
* 3041 tests skipped
* 1 test failed

## Failed Tests
(click on a test name to see its output)

### Clang
<details>
<summary>Clang.CodeGenCXX/pfp-load-store.cpp</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 1
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/clang -cc1 -internal-isystem /home/gha/actions-runner/_work/llvm-project/llvm-project/build/lib/clang/23/include -nostdsysteminc -triple aarch64-linux -fexperimental-pointer-field-protection-abi -fexperimental-pointer-field-protection-tagged -emit-llvm -O1 -o - /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/CodeGenCXX/pfp-load-store.cpp | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/CodeGenCXX/pfp-load-store.cpp
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/clang -cc1 -internal-isystem /home/gha/actions-runner/_work/llvm-project/llvm-project/build/lib/clang/23/include -nostdsysteminc -triple aarch64-linux -fexperimental-pointer-field-protection-abi -fexperimental-pointer-field-protection-tagged -emit-llvm -O1 -o - /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/CodeGenCXX/pfp-load-store.cpp
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/CodeGenCXX/pfp-load-store.cpp
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/CodeGenCXX/pfp-load-store.cpp:32:11: error: CHECK: expected string not found in input
# | // CHECK: call {{.*}} @llvm.protected.field.ptr.p0{{.*}}
# |           ^
# | <stdin>:10:45: note: scanning from here
# | define dso_local [2 x i64] @_Z12test_pointer7Pointer([2 x i64] %t.coerce) local_unnamed_addr #0 {
# |                                             ^
# | <stdin>:10:77: note: possible intended match here
# | define dso_local [2 x i64] @_Z12test_pointer7Pointer([2 x i64] %t.coerce) local_unnamed_addr #0 {
# |                                                                             ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/CodeGenCXX/pfp-load-store.cpp:40:11: error: CHECK: expected string not found in input
# | // CHECK: call {{.*}} @llvm.protected.field.ptr.p0{{.*}}
# |           ^
# | <stdin>:18:46: note: scanning from here
# | define dso_local noundef ptr @_Z11test_structP6Struct(ptr noundef readonly captures(none) %t) local_unnamed_addr #1 {
# |                                              ^
# | <stdin>:22:7: note: possible intended match here
# |  %2 = call i64 @llvm.ptrauth.auth(i64 %1, i32 2, i64 36403) [ "deactivation-symbol"(ptr @__pfp_ds__ZTS7Pointer.ptr) ]
# |       ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/clang/test/CodeGenCXX/pfp-load-store.cpp
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |             5:  
# |             6: @val = global i32 0, align 4 
# |             7: @__pfp_ds__ZTS7Pointer.ptr = extern_weak hidden global i8 
# |             8:  
# |             9: ; Function Attrs: mustprogress nofree norecurse nosync nounwind willreturn memory(none) 
# |            10: define dso_local [2 x i64] @_Z12test_pointer7Pointer([2 x i64] %t.coerce) local_unnamed_addr #0 { 
# | check:32'0                                                 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# | check:32'1                                                                                 ?                      possible intended match
# |            11: entry: 
# | check:32'0     ~~~~~~~
# |            12:  %0 = extractvalue [2 x i64] %t.coerce, 1 
# | check:32'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            13:  %1 = insertvalue [2 x i64] [i64 ptrtoint (ptr @val to i64), i64 poison], i64 %0, 1 
# | check:32'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            14:  ret [2 x i64] %1 
# | check:32'0     ~~~~~~~~~~~~~~~~~~
# |            15: } 
# | check:32'0     ~~
# |            16:  
# | check:32'0     ~
# |            17: ; Function Attrs: mustprogress nofree nounwind willreturn memory(argmem: read) 
# | check:32'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            18: define dso_local noundef ptr @_Z11test_structP6Struct(ptr noundef readonly captures(none) %t) local_unnamed_addr #1 { 
# | check:32'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:40'0                                                  X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# |            19: entry: 
# | check:40'0     ~~~~~~~
# |            20:  %0 = load ptr, ptr %t, align 8, !tbaa !5 
# | check:40'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            21:  %1 = ptrtoint ptr %0 to i64 
# | check:40'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            22:  %2 = call i64 @llvm.ptrauth.auth(i64 %1, i32 2, i64 36403) [ "deactivation-symbol"(ptr @__pfp_ds__ZTS7Pointer.ptr) ] 
# | check:40'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:40'1           ?                                                                                                                possible intended match
# |            23:  %3 = inttoptr i64 %2 to ptr 
# | check:40'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            24:  ret ptr %3 
# | check:40'0     ~~~~~~~~~~~~
# |            25: } 
# | check:40'0     ~~
# |            26:  
# | check:40'0     ~
# |            27: ; Function Attrs: nounwind memory(none) 
# | check:40'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>

If these failures are unrelated to your changes (for example tests are broken or flaky at HEAD), please open an issue at https://github.com/llvm/llvm-project/issues and add the `infrastructure` label.

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


More information about the llvm-branch-commits mailing list