[clang] [llvm] [Clang]: Support opt-in speculative devirtualization (PR #159685)

LLVM Continuous Integration via llvm-commits llvm-commits at lists.llvm.org
Sun Dec 7 06:46:53 PST 2025


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `bolt-aarch64-ubuntu-clang` running on `bolt-worker-aarch64` while building `clang,llvm` at step 5 "build-clang-bolt".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/128/builds/9265

<details>
<summary>Here is the relevant piece of the build log for the reference</summary>

```
Step 5 (build-clang-bolt) failure: build (failure)
...
161.120 [7/3/3363] Linking CXX static library lib/libclangExtractAPI.a
161.146 [7/2/3364] Linking CXX static library lib/libclangDriver.a
161.184 [6/2/3365] Linking CXX static library lib/libclangCrossTU.a
161.282 [5/2/3366] Linking CXX static library lib/libclangCodeGen.a
161.330 [5/1/3367] Linking CXX static library lib/libclangStaticAnalyzerCore.a
161.632 [4/1/3368] Linking CXX static library lib/libclangStaticAnalyzerCheckers.a
161.678 [3/1/3369] Linking CXX static library lib/libclangStaticAnalyzerFrontend.a
161.716 [2/1/3370] Linking CXX static library lib/libclangFrontendTool.a
162.570 [1/1/3371] Linking CXX executable bin/clang-22
553.646 [0/1/3372] Creating executable symlink bin/clang
FAILED: bin/clang 
/usr/bin/cmake -E cmake_symlink_executable bin/clang-22 bin/clang && cd /home/buildbot/workspace/bolt-aarch64-ubuntu-clang/build/tools/clang/tools/driver && /usr/bin/cmake -E create_symlink clang-22 /home/buildbot/workspace/bolt-aarch64-ubuntu-clang/build/./bin/clang++ && cd /home/buildbot/workspace/bolt-aarch64-ubuntu-clang/build/tools/clang/tools/driver && /usr/bin/cmake -E create_symlink clang-22 /home/buildbot/workspace/bolt-aarch64-ubuntu-clang/build/./bin/clang-cl && cd /home/buildbot/workspace/bolt-aarch64-ubuntu-clang/build/tools/clang/tools/driver && /usr/bin/cmake -E create_symlink clang-22 /home/buildbot/workspace/bolt-aarch64-ubuntu-clang/build/./bin/clang-cpp && cd /home/buildbot/workspace/bolt-aarch64-ubuntu-clang/build/tools/clang/tools/driver && /usr/bin/python3 /home/buildbot/workspace/bolt-aarch64-ubuntu-clang/llvm-project/clang/tools/driver/../../utils/perf-training/perf-helper.py bolt-optimize --method INSTRUMENT --input /home/buildbot/workspace/bolt-aarch64-ubuntu-clang/build/bin/clang-22 --instrumented-output /home/buildbot/workspace/bolt-aarch64-ubuntu-clang/build/./bin/clang-bolt.inst --fdata /home/buildbot/workspace/bolt-aarch64-ubuntu-clang/build/tools/clang/tools/driver/../../utils/perf-training/prof.fdata --perf-training-binary-dir /home/buildbot/workspace/bolt-aarch64-ubuntu-clang/build/tools/clang/tools/driver/../../utils/perf-training --readelf /home/buildbot/workspace/bolt-aarch64-ubuntu-clang/build/bin/llvm-readobj --bolt /home/buildbot/workspace/bolt-aarch64-ubuntu-clang/build/bin/llvm-bolt --lit /home/buildbot/workspace/bolt-aarch64-ubuntu-clang/build/./bin/llvm-lit --merge-fdata /home/buildbot/workspace/bolt-aarch64-ubuntu-clang/build/bin/merge-fdata
Running: /home/buildbot/workspace/bolt-aarch64-ubuntu-clang/build/bin/llvm-bolt /home/buildbot/workspace/bolt-aarch64-ubuntu-clang/build/bin/clang-22 -o /home/buildbot/workspace/bolt-aarch64-ubuntu-clang/build/./bin/clang-bolt.inst -instrument --instrumentation-file-append-pid --instrumentation-file=/home/buildbot/workspace/bolt-aarch64-ubuntu-clang/build/tools/clang/tools/driver/../../utils/perf-training/prof.fdata
BOLT-INFO: shared object or position-independent executable detected
BOLT-INFO: Target architecture: aarch64
BOLT-INFO: BOLT version: <unknown>
BOLT-INFO: first alloc address is 0x0
BOLT-INFO: creating new program header table at address 0x8a00000, offset 0x8a00000
BOLT-INFO: enabling relocation mode
BOLT-INFO: forcing -jump-tables=move for instrumentation
BOLT-INFO: PointerAuthCFIAnalyzer ran on 2 functions. Ignored 0 functions (0.00%) because of CFI inconsistencies
BOLT-INFO: number of removed linker-inserted veneers: 0
BOLT-INFO: 0 out of 155249 functions in the binary (0.0%) have non-empty execution profile
BOLT-INSTRUMENTER: Number of indirect call site descriptors: 58547
BOLT-INSTRUMENTER: Number of indirect call target descriptors: 151922
BOLT-INSTRUMENTER: Number of function descriptors: 151912
BOLT-INSTRUMENTER: Number of branch counters: 1990740
BOLT-INSTRUMENTER: Number of ST leaf node counters: 1015291
BOLT-INSTRUMENTER: Number of direct call counters: 0
BOLT-INSTRUMENTER: Total number of counters: 3006031
BOLT-INSTRUMENTER: Total size of counters: 24048248 bytes (static alloc memory)
BOLT-INSTRUMENTER: Total size of string table emitted: 16003631 bytes in file
BOLT-INSTRUMENTER: Total size of descriptors: 222856908 bytes in file
BOLT-INSTRUMENTER: Profile will be saved to file /home/buildbot/workspace/bolt-aarch64-ubuntu-clang/build/tools/clang/tools/driver/../../utils/perf-training/prof.fdata
BOLT-INFO: removed 20111 empty blocks
BOLT-INFO: merged 6 duplicate CFG edges
BOLT-INFO: Starting stub-insertion pass
BOLT-INFO: Inserted 1378 stubs in the hot area and 0 stubs in the cold area. Shared 172624 times, iterated 4 times.
BOLT-INFO: rewritten pac-ret DWARF info in 2 out of 155551 functions (0.00%).
BOLT-INFO: padding code to 0x13000000 to accommodate hot text
BOLT-INFO: output linked against instrumentation runtime library, lib entry point is 0x15bf88c0
BOLT-INFO: clear procedure is 0x15bf7540
BOLT-INFO: patched build-id (flipped last bit)
BOLT-INFO: setting __bolt_runtime_start to 0x15bf88c0
BOLT-INFO: setting __bolt_runtime_fini to 0x15bf8954
BOLT-INFO: setting __hot_start to 0x8c00000
BOLT-INFO: setting __hot_end to 0x12ffe6e8
BOLT-INFO: runtime library finalization was hooked via DT_FINI, set to 0x15bf8954
BOLT-INFO: runtime library initialization was hooked via ELF Header Entry Point, set to 0x15bf88c0

```

</details>

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


More information about the llvm-commits mailing list