https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83986
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |segher at gcc dot gnu.org, | |vmakarov at gcc dot gnu.org --- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> --- So, the problem seems to be aggressive scheduling of the (insn/f 72 71 73 7 (set (reg:SI 0 0) (reg:SI 65 lr)) "pr83986.c":5 483 {*movsi_internal1} (expr_list:REG_DEAD (reg:SI 65 lr) (nil))) frame related instruction across a branch, from the basic block containing the shrink-wrapped prologue to the predecessor, which only conditionally branches to the prologue. Shall we disallow moving of frame related instructions across branches in the scheduler?