This is the mail archive of the
mailing list for the GCC project.
[ob] Fix an RTL sharing bug in the ARM backend
- From: Daniel Jacobowitz <drow at false dot org>
- To: gcc-patches at gcc dot gnu dot org
- Date: Thu, 23 Apr 2009 11:10:33 -0400
- Subject: [ob] Fix an RTL sharing bug in the ARM backend
This patch fixes several ICEs when running the testsuite with -mthumb
I read through the insv pattern several times looking for other
potential sharing problems. I didn't spot any, but I don't have total
confidence in that either; I don't think this pattern was expecting to
be called after expansion. But it is (via emit_move_insn for a
Tested on arm-none-eabi, committed as obvious.
2009-04-23 Daniel Jacobowitz <email@example.com>
* config/arm/arm.md (insv): Do not share operands.
--- config/arm/arm.md (revision 145603)
+++ config/arm/arm.md (working copy)
@@ -2280,7 +2280,7 @@
- target = operands;
+ target = copy_rtx (operands);
/* Avoid using a subreg as a subtarget, and avoid writing a paradoxical
subreg as the final target. */
if (GET_CODE (target) == SUBREG)