]> git.ipfire.org Git - thirdparty/gcc.git/commit
[PATCH] Allow indirect call via GOT for 64-bit Pmode x32
authoruros <uros@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 23 Dec 2015 09:49:28 +0000 (09:49 +0000)
committeruros <uros@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 23 Dec 2015 09:49:28 +0000 (09:49 +0000)
commite21f958766601f20c29dda516c84e8240e01cbdc
treefc9c5459806e88a34d0c675bdf00a8da5ccebb46
parentc6f0dbcb24d31a40f49ace874e3a23ce67e71552
[PATCH] Allow indirect call via GOT for 64-bit Pmode x32

From: H.J. Lu  <hongjiu.lu@intel.com>

Since Pmode is 64-bit with -maddress-mode=long for x32, indirect call
via GOT slot doesn't need zero_extend.  This patch enables indirect call
via GOT for x32 with 64-bit Pmode.

gcc/

PR target/66232
* config/i386/constraints.md (Bs): Allow GOT slot for x32 with
64-bit Pmode.
(Bw): Likewise.
(Bz): Likewise.
* config/i386/predicates.md (call_insn_operand): Likewise.
(sibcall_insn_operand): Likewise.

gcc/testsuite/

PR target/66232
* gcc.target/i386/pr66232-10.c: New test.
* gcc.target/i386/pr66232-11.c: Likewise.
* gcc.target/i386/pr66232-12.c: Likewise.
* gcc.target/i386/pr66232-13.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231923 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/i386/constraints.md
gcc/config/i386/predicates.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/pr66232-10.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr66232-11.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr66232-12.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr66232-13.c [new file with mode: 0644]