summaryrefslogtreecommitdiff
path: root/patches/gcc/4.8.4/003-PR57717-E500v2.patch
blob: 723c71062df24d7825cf7f1fc3a45398f7cec20f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
This backports fix from http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57717

Upstream-Status: Backport
Signed-off-by: Julian Brown <Julian_Brown@mentor.com>

fix for PR57717 (PowerPC E500v2)
http://gcc.gnu.org/ml/gcc-patches/2013-08/msg00668.html

--- a/gcc/config/rs6000/rs6000.c	2013-05-09 20:54:06.000000000 -0500
+++ b/gcc/config/rs6000/rs6000.c	2013-08-28 01:25:24.865218744 -0500
@@ -7385,9 +7385,7 @@
       && GET_CODE (XEXP (x, 1)) == CONST_INT
       && reg_offset_p
       && !SPE_VECTOR_MODE (mode)
-      && !(TARGET_E500_DOUBLE && (mode == DFmode || mode == TFmode
-				  || mode == DDmode || mode == TDmode
-				  || mode == DImode))
+      && !(TARGET_E500_DOUBLE && GET_MODE_SIZE (mode) > UNITS_PER_WORD)
       && (!VECTOR_MODE_P (mode) || VECTOR_MEM_NONE_P (mode)))
     {
       HOST_WIDE_INT val = INTVAL (XEXP (x, 1));