------- Comment #5 from rask at sygehus dot dk 2007-06-17 08:43 ------- I agree that the insn is invalid. It probably should be something like this:
(parallel [ (set (reg:PSI 7 fb) (mem:PSI (reg:PSI 7 fb) [0 S4 A8])) (set (reg:PSI 8 sp) (plus:PSI (reg:PSI 7 fb) (const_int 2 [0x2]))) (return) ]) I.e. one set of sp and fb each. The faulty pattern is named "epilogue_exitd". The two patterns "prologue_enter_16" and "prologue_enter_24" are also broken in that they use (parallel [ ... (pre_dec (SP_REGNO)) (set (SP_REGNO) ...) ]) which is just another invalid use of PARALLEL. DJ? On the AVR, my bets are on the define_insn "call_prologue_saves" with two sets of (reg:HI SP_REG) inside the implicit parallel. -- rask at sygehus dot dk changed: What |Removed |Added ---------------------------------------------------------------------------- GCC target triplet|m32c-unknown-elf |m32c-unknown-elf avr- | |unknown-elf http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32335