------- Comment #2 from hp at gcc dot gnu dot org  2009-08-11 01:02 -------
I had a brief look.  Seems like the new code assumes that promote_mode always
promotes the input mode (ahem! :) when mismatching, which it only does if the
target defines PROMOTE_MODE (which CRIS does not; it just has a
TARGET_PROMOTE_FUNCTION_MODE hook).  So, a QImode is still QImode and
mismatching SImode for the object in SA.partition_to_pseudo[dest])).

At the gcc_assert in question:
(gdb) p src_mode
$24 = QImode
(gdb) p unsignedp
$25 = 0
(gdb) p dest_mode
$26 = QImode
(gdb) p dest
$27 = 3
(gdb) p SA.partition_to_pseudo[dest]
$28 = (rtx) 0xb7e658f0
(gdb) pr
(reg/v:SI 220 [ type ])

hth


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41031

Reply via email to