This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r254252 - in /trunk/gcc: ChangeLog config/rs600...
- From: segher at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Tue, 31 Oct 2017 09:49:40 -0000
- Subject: r254252 - in /trunk/gcc: ChangeLog config/rs600...
Author: segher
Date: Tue Oct 31 09:49:40 2017
New Revision: 254252
URL: https://gcc.gnu.org/viewcvs?rev=254252&root=gcc&view=rev
Log:
Subject: [PATCH] rs6000: Fix crash with big stack clash interval (PR82674)
If the user asks for a stack clash probe interval of 64kB, we currently
generate a "stdu rX,-65536(r1)" instruction. That instruction does not
exist (the offset is a 16-bit signed number). If the offset is too big
we should force it into a register and generate a "stdux rX,rY,r1"
instruction, instead.
PR target/82674
* config/rs6000/rs6000.md (allocate_stack): Force update interval
into a register if it does not fit into an immediate offset field.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/rs6000/rs6000.md