Fix PowerPC ICE due to secondary_reload ignoring reload replacements
authorAlan Modra <amodra@gmail.com>
Wed, 9 Sep 2015 05:56:26 +0000 (15:26 +0930)
committerAlan Modra <amodra@gcc.gnu.org>
Wed, 9 Sep 2015 05:56:26 +0000 (15:26 +0930)
commit04e49571a086621e33261b8e25b35a577195f2d6
tree486c315e02a987f8585cd2f7bd62d8f8f61f5ff8
parent6b3ebcdda18d2b6b0e2bf3857726ab02fbac5ad4
Fix PowerPC ICE due to secondary_reload ignoring reload replacements

The reason for this PR is that insns emitted by secondary reload
patterns are being generated without taking into account other reloads
that may have occurred.  We run into this problem when an insn has a
pseudo that doesn't get a hard reg, and the pseudo is used in a way
that requires a secondary reload.  In this case the secondary reload
is needed due to gcc generating a 64-bit gpr load from memory insn
with an address offset not a multiple of 4.

PR target/67378
* config/rs6000/rs6000.c (rs6000_secondary_reload_gpr): Find
reload replacement for PRE_MODIFY address reg.

From-SVN: r227573
gcc/ChangeLog
gcc/config/rs6000/rs6000.c