summaryrefslogtreecommitdiffstats
path: root/patches/gcc-4.3.2/generic/gcc-43-pr39429.diff
blob: 4e1dc9ef7331f97606ee275576f84777d639606f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
From: Michael Olbrich <m.olbrich@pengutronix.de>
Subject: Fix: compiler create bad asm codes.

See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39429 for details.

Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>

---
 gcc/config/arm/arm.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: b/gcc/config/arm/arm.c
===================================================================
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -6838,7 +6838,7 @@ adjacent_mem_locations (rtx a, rtx b)
       /* Don't accept any offset that will require multiple
 	 instructions to handle, since this would cause the
 	 arith_adjacentmem pattern to output an overlong sequence.  */
-      if (!const_ok_for_op (PLUS, val0) || !const_ok_for_op (PLUS, val1))
+      if (!const_ok_for_op (val0, PLUS) || !const_ok_for_op (val1, PLUS))
 	return 0;
 
       /* Don't allow an eliminable register: register elimination can make