x86: Skip ISA check for always_inline in system headers
authorH.J. Lu <hjl.tools@gmail.com>
Wed, 24 Mar 2021 03:04:58 +0000 (20:04 -0700)
committerH.J. Lu <hjl.tools@gmail.com>
Thu, 25 Mar 2021 12:30:07 +0000 (05:30 -0700)
commit72982851d70dfbc547d83ed2bb45356b9ebe3ff0
treef448fce0f556542cabdfce604a36fb3c17678ddd
parentd99111fd8e12deffdd9a965ce17e8a760d531ec3
x86: Skip ISA check for always_inline in system headers

For always_inline in system headers, we don't know if caller's ISAs are
compatible with callee's ISAs until much later.  Skip ISA check for
always_inline in system headers if caller has target attribute.

gcc/

PR target/98209
PR target/99744
* config/i386/i386.c (ix86_can_inline_p): Don't check ISA for
always_inline in system headers.

gcc/testsuite/

PR target/98209
PR target/99744
* gcc.target/i386/pr98209.c: New test.
* gcc.target/i386/pr99744-1.c: Likewise.
* gcc.target/i386/pr99744-2.c: Likewise.
gcc/config/i386/i386.c
gcc/testsuite/gcc.target/i386/pr98209.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr99744-1.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr99744-2.c [new file with mode: 0644]