[Bug target/15286] ICE cause by reload
uweigand at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Mon Oct 25 21:04:00 GMT 2004
------- Additional Comments From uweigand at gcc dot gnu dot org 2004-10-25 21:04 -------
well, as pointed out by David you do need in addition the change I
described in comment #20.
If you prefer a patch:
Index: gcc/recog.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/recog.c,v
retrieving revision 1.211
diff -c -p -r1.211 recog.c
*** gcc/recog.c 28 Sep 2004 07:59:48 -0000 1.211
--- gcc/recog.c 25 Oct 2004 21:02:03 -0000
*************** general_operand (rtx op, enum machine_mo
*** 937,943 ****
#ifdef INSN_SCHEDULING
/* On machines that have insn scheduling, we want all memory
reference to be explicit, so outlaw paradoxical SUBREGs. */
! if (MEM_P (sub)
&& GET_MODE_SIZE (mode) > GET_MODE_SIZE (GET_MODE (sub)))
return 0;
#endif
--- 937,943 ----
#ifdef INSN_SCHEDULING
/* On machines that have insn scheduling, we want all memory
reference to be explicit, so outlaw paradoxical SUBREGs. */
! if (!reload_completed && MEM_P (sub)
&& GET_MODE_SIZE (mode) > GET_MODE_SIZE (GET_MODE (sub)))
return 0;
#endif
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15286
More information about the Gcc-bugs
mailing list