re PR target/63542 (My build log is full of "non-delegitimized UNSPEC UNSPEC_GOT...
authorJakub Jelinek <jakub@redhat.com>
Wed, 22 Oct 2014 06:56:36 +0000 (08:56 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Wed, 22 Oct 2014 06:56:36 +0000 (08:56 +0200)
commit793dbadc8d9a2d95debc7fb49d544c177a316aa5
tree88096dac4da0cd7b62d51922493ff61dc68db7fa
parent19a9ba64e7895c9919b95cd446faa4922ebf284e
re PR target/63542 (My build log is full of "non-delegitimized UNSPEC UNSPEC_GOT (0) found in variable location")

PR target/63542
* config/i386/i386.c (ix86_pic_register_p): Also return
true if x is a hard register with ORIGINAL_REGNO equal to
pic_offset_table_rtx pseudo REGNO.
(ix86_delegitimize_address): For ix86_use_pseudo_pic_reg ()
after reload, subtract GOT_SYMBOL_NAME symbol if possible.

* gcc.target/i386/pr63542-1.c: New test.
* gcc.target/i386/pr63542-2.c: New test.

From-SVN: r216540
gcc/ChangeLog
gcc/config/i386/i386.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/pr63542-1.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr63542-2.c [new file with mode: 0644]