Files
gcc48/gcc48-bnc976627.patch
Richard Biener e579bfe1f6 - Add patch gcc48-bnc988274.patch for fixing libffi issue for
armv7l.  [bnc#988274]

- Add patch gcc48-bnc981311.diff for fixing a kernel
  miscompile on aarch64.  [bnc #981311]

- Add patch gcc48-bnc976627.patch for fixing a ppc64le
  ICE. [bnc #976627]

OBS-URL: https://build.opensuse.org/package/show/devel:gcc/gcc48?expand=0&rev=201
2016-09-26 07:18:05 +00:00

15 lines
726 B
Diff

Fix for bnc 976627. Under high reg pressure constants need to be reloaded
from the TOC, and when it was floating point constants that reload
from the TOC wasn't accepted.
--- gcc/config/rs6000/rs6000.c.mm 2016-04-25 20:51:23.033619239 +0200
+++ gcc/config/rs6000/rs6000.c 2016-04-25 20:51:47.413926002 +0200
@@ -17094,6 +17094,7 @@ rs6000_secondary_reload_inner (rtx reg,
case FLOAT_REGS:
if (legitimate_indirect_address_p (addr, false) /* reg */
|| legitimate_indexed_address_p (addr, false) /* reg+reg */
+ || legitimate_constant_pool_address_p (addr, mode, false)
|| ((GET_MODE_SIZE (mode) == 4 || GET_MODE_SIZE (mode) == 8)
&& and_op2 == NULL_RTX
&& scratch_or_premodify == scratch