https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69246
rsandifo at gcc dot gnu.org <rsandifo at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Assignee|unassigned at gcc dot gnu.org |rsandifo at gcc dot gnu.org --- Comment #7 from rsandifo at gcc dot gnu.org <rsandifo at gcc dot gnu.org> --- I think the problem with the old code was that we were using a non-sibcall expander for an ECF_SIBCALL call. I.e. we generated an insn that had the stack adjustment, was marked SIBLING_CALL_P, and matched *sibcall_pop, but we generated it through call_pop rather than (the nonexistent) sibcall_pop. Perhaps I should instead have kept the calls.c support for sibcall_pop and sibcall_value_pop and defined corresponding expanders for x86.