------- 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

Reply via email to