https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120838
Bug ID: 120838 Summary: lra-eliminations: sp offsets are not reversible Product: gcc Version: 16.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: rtl-optimization Assignee: unassigned at gcc dot gnu.org Reporter: aoliva at gcc dot gnu.org CC: vmakarov at gcc dot gnu.org Target Milestone: --- Bootstrapping gcc with ix86_frame_pointer_required modified so as to return true on nonzero frame sizes (see PR120424) requires -maccumulate-outgoing-args to avoid varying sp within function bodies. Without that flag, SP offsets are applied to insns in function call sequences that pass arguments on the stack, and we can't reverse them when the elimination becomes unavailable. We now have asserts in place to detect these cases, instead of silently generating wrong code, but it would be more desirable to be able to reverse them.