https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92692
Wilco <wilco at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |wilco at gcc dot gnu.org --- Comment #3 from Wilco <wilco at gcc dot gnu.org> --- (In reply to Andrew Pinski from comment #2) > I think this has been a latent bug since revision 243200: > [AArch64] Separate shrink wrapping hooks implementation > > I think aarch64_disqualify_components would be a location which should > disqualify the Separate for the register 19. What is the "exclusives reservation granule" size? It could only fail if the granule is large and the spill happens to be in the same granule as the stxr. I guess it's easy to fix by delaying the expansion or inserting a clobber of x19 before the loop starts.