This doesn't break anything right now, since we don't have the initial "big" trampoline on AArch64, and only emit the "little" trampolines on AArch64. But with the immenent move to LLVM 19, this is breaking stuff.
Also, our use of the term "trampoline" here is overloaded. Let's call the big trampoline a "shim" from here on out. We can rename trampoline.c to shim.c and update all of the references to the old name to make it more clear. That should wait until after GH-125499 though, to reduce the amount of conflicts.
CC @diegorusso and @savannahostrowski. Either one of you want to take this?
Crash report
_PyJIT_Compile
doesn't consider the initial (big) trampoline "group" when collecting the (little) trampolines needed to compile a given trace.This doesn't break anything right now, since we don't have the initial "big" trampoline on AArch64, and only emit the "little" trampolines on AArch64. But with the immenent move to LLVM 19, this is breaking stuff.
Also, our use of the term "trampoline" here is overloaded. Let's call the big trampoline a "shim" from here on out. We can rename
trampoline.c
toshim.c
and update all of the references to the old name to make it more clear. That should wait until after GH-125499 though, to reduce the amount of conflicts.CC @diegorusso and @savannahostrowski. Either one of you want to take this?