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.

Reply via email to