[llvm] [BOLT][AArch64] Skip gadget pacret test on RHEL8 (PR #145527)

Anatoly Trosinenko via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 25 03:07:10 PDT 2025


atrosinenko wrote:

Given that CHECK-NEXT on line 21 matched, but the match "is not on the line after the previous match" and "note: previous match ended here", I assume that some report was generated for `f1` and 
```
<stdin>:12:44: note: previous match ended here
 This happens in the following basic block:
```
corresponds to that report (specifically, it corresponds to CHECK-NEXT on the line 20 of the test source). Then `f1` function should start at
```
000102f8: paciasp
```
With all the above, it looks like the report on RHEL8 would match something along these lines:
```
// CHECK-LABEL: GS-PAUTH: non-protected ret found in function f1, basic block {{[0-9a-zA-Z.]+}}, at address
// CHECK-NEXT:    The instruction is     {{[0-9a-f]+}}:       ret
// CHECK-NEXT:    The 1 instructions that write to the affected registers after any authentication are:
// CHECK-NEXT:    1. {{[0-9a-f]+}}: ldp     x29, x30, [sp], #0x10
// CHECK-NEXT:  This happens in the following basic block:
// CHECK-NEXT: {{[0-9a-f]+}}:   paciasp
// CHECK-NEXT: {{[0-9a-f]+}}:   stp     x29, x30, [sp, #-16]!
// CHECK-NEXT: {{[0-9a-f]+}}:   mov     x29, sp
// CHECK-NEXT: {{[0-9a-f]+}}:   bl      g
// CHECK-NEXT: {{[0-9a-f]+}}:   add     x0, x0, #0x3
// CHECK-NEXT: {{[0-9a-f]+}}:   ldp     x29, x30, [sp], #0x10
// CHECK-NEXT: {{[0-9a-f]+}}:   ret
```
Obviously, I don't suggest inserting these four lines to the test (as it would break other runners), but I wonder why `bl g` ends basic block on other platforms in the first place.

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


More information about the llvm-commits mailing list