This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/32335] libgcc build failure, ICE in cselib_record_set, at cselib.c:1508
- From: "rask at sygehus dot dk" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 17 Jun 2007 08:43:14 -0000
- Subject: [Bug target/32335] libgcc build failure, ICE in cselib_record_set, at cselib.c:1508
- References: <bug-32335-12574@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- 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