perf: fix LTO build with gcc (hybrid VM) - #23602
Conversation
| [x86_64*|amd64*], [AS_VAR_APPEND([LDFLAGS], [" -ffixed-r14 -ffixed-r15"])], | ||
| [x86*|amd*|i?86*|pentium], [AS_VAR_APPEND([LDFLAGS], [" -ffixed-esi -ffixed-edi"])], | ||
| [aarch64*|arm64*], [AS_VAR_APPEND([LDFLAGS], [" -ffixed-x27 -ffixed-x28"])], | ||
| [ppc64*|powerpc64*], [AS_VAR_APPEND([LDFLAGS], [" -ffixed-r14 -ffixed-r15"])], |
There was a problem hiding this comment.
I m certain powerpc is correct, I was digging a bit about riscv64 and it looks correct too according to this doc, those registers are equivalent to s2/s3 confirmed with the gcc header (see REGISTER_NAMES/ADDITIONAL_REGISTER_NAMES).
There was a problem hiding this comment.
I certainly hope they're correct, because otherwise php would crash, I copied them from
Line 52 in 810a9e5
|
What I m less sure about is if the target is appropriate, it s border line improvement/bug fix, I have no issue targetting stable branch personally but I ll leave it to @arnaud-lb |
|
It's a bugfix in the sense that lto compilation previously failed with the hybrid vm. Nothing changes about existing builds, so it's safe to merge into supported branches. |
#23588 but on php 8.4/8.5