------- Comment #10 from kkojima at gcc dot gnu dot org 2008-08-02 22:12 ------- (In reply to comment #8) > If a label is reachable from different args_size levels, that's a severe bug > and should be fixed wherever that is created, likely expander.
It seems that arg_size is reset with (set (reg sp) (reg fp)) just after label 77 in #7: (code_label 77 42 76 10 "" [2 uses]) (note 76 77 61 [bb 9] NOTE_INSN_BASIC_BLOCK) (insn 61 76 100 bas.c:22 (use (reg/i:SI 0 r0)) -1 (nil)) (note 100 61 101 NOTE_INSN_EPILOGUE_BEG) (insn 101 100 102 bas.c:22 (unspec_volatile [ (const_int 0 [0x0]) ] 0) 284 {blockage} (nil)) (insn 102 101 127 bas.c:22 (set (reg/f:SI 15 r15) (reg/f:SI 14 r14)) 175 {movsi_ie} (nil)) Does it look a target bug? If so, should I file a new PR target to bugzilla? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36998