rs6000.c (rs6000_call_aix): Use unspec rather than mem for toc_restore.
commite404a667bf4b0fcef2a4af1b32ef21f5b07367b6
authorAlan Modra <amodra@gmail.com>
Mon, 2 Feb 2015 07:16:11 +0000 (2 17:46 +1030)
committerAlan Modra <amodra@gcc.gnu.org>
Mon, 2 Feb 2015 07:16:11 +0000 (2 17:46 +1030)
tree67853275467ee73b7fc804fc8ce9712de3281e16
parent02d3e45e7afcf4e6ea1b3dbcc5cfaf505c8e7fb9
rs6000.c (rs6000_call_aix): Use unspec rather than mem for toc_restore.

gcc/
* config/rs6000/rs6000.c (rs6000_call_aix): Use unspec rather
than mem for toc_restore.
* config/rs6000/rs6000.md (UNSPEC_TOCSLOT): Define.
(call_indirect_aix, call_value_indirect_aix): Adjust to suit.
(call_indirect_elfv2, call_value_indirect_elfv2): Likewise.
gcc/testsuite/
* gcc.target/powerpc/cprophard.c: New.

From-SVN: r220344
gcc/ChangeLog
gcc/config/rs6000/rs6000.c
gcc/config/rs6000/rs6000.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/powerpc/cprophard.c [new file with mode: 0644]