[llvm] [BOLT] Support computed goto and allow map addrs inside functions. (PR #120267)

via llvm-commits llvm-commits at lists.llvm.org
Thu Jan 23 11:25:52 PST 2025


ms178 wrote:

> I've tested this patch on an aarch64 python3.12 build and found that it allows BOLT to run without `--skip-funcs` flags. Without this patch the following error occurs:
> 
> ```
> llvm-bolt -o test.out.bolt python3.12
> BOLT-ERROR: unable to get new address corresponding to input address 0x1b3f14 in function sre_ucs1_match/1. Consider adding this function to --skip-funcs=...
> ```
> 
> These functions no longer need to be skipped when goto patch is applied:
> 
> ```
> sre_ucs1_match/1; sre_ucs2_match/1; sre_ucs4_match/1; _PyEval_EvalFrameDefault.localalias/1
> ```

I can confirm that it works on Intel Raptor Lake as well. With this patch applied to e4f03b158c97098e1835cc1f00d0175398974f98, compiling python 3.13.1 with --enable-bolt does work now which previously did not.

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


More information about the llvm-commits mailing list