summaryrefslogtreecommitdiff
path: root/patches/gcc/linaro-4.8-2015.06/002_gcc_bug_62231.patch
blob: b970ebc81570b950ab4a67688bc5a1fd5aa6a7fd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
As-applied.  From:

https://gcc.gnu.org/ml/gcc-patches/2014-10/msg02605.html

Linked from bug62231 comment 4 there

diff -durN a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
--- a/gcc/config/rs6000/rs6000.c	2014-12-08 17:29:04.000000000 -0800
+++ b/gcc/config/rs6000/rs6000.c	2014-12-15 14:44:46.568801843 -0800
@@ -1673,7 +1673,7 @@
      SCmode so as to pass the value correctly in a pair of
      registers.  */
   else if (TARGET_E500_DOUBLE && FLOAT_MODE_P (mode) && mode != SCmode
-	   && !DECIMAL_FLOAT_MODE_P (mode))
+	   && !DECIMAL_FLOAT_MODE_P (mode) && SPE_SIMD_REGNO_P (regno))
     reg_size = UNITS_PER_FP_WORD;
 
   else