darwin, x86 - disable '-mfentry' for the port.
authorIain Sandoe <iain@sandoe.co.uk>
Thu, 23 May 2019 20:51:04 +0000 (20:51 +0000)
committerIain Sandoe <iains@gcc.gnu.org>
Thu, 23 May 2019 20:51:04 +0000 (20:51 +0000)
commitaa992ce717568eb88b324d39429e52df04a42eb1
tree05c217e598b56dc1e43ab72c06d7745030e1f466
parent99f8432359851649b749d4c16b91b758820d30c1
darwin, x86 - disable '-mfentry' for the port.

This can't work without special support because placing
the call directly after the function label breaks the
ABI requirement that call sites are 16byte aligned.

gcc/

2019-05-23  Iain Sandoe  <iain@sandoe.co.uk>

       * config/i386/darwin.h: Reject -mfentry*.
       * doc/sourcebuild.texi: Document mfentry target support.

gcc/testsuite/

2019-05-23  Iain Sandoe  <iain@sandoe.co.uk>

       * lib/target-supports.exp (check_effective_target_mfentry): New.
       * gcc.target/i386/fentry-override.c: Require effective target mfentry.
       * gcc/testsuite/gcc.target/i386/fentry.c: Likewise
       * gcc.target/i386/fentryname1.c: Likewise
       * gcc.target/i386/fentryname2.c: Likewise
       * gcc.target/i386/fentryname3.c: Likewise
       * gcc.target/i386/nop-mcount.c: Likewise
       * gcc.target/i386/pr82699-2.c: Likewise
       * gcc.target/i386/pr82699-4.c: Likewise
       * gcc.target/i386/pr82699-5.c: Likewise
       * gcc.target/i386/pr82699-6.c: Likewise
       * gcc.target/i386/returninst1.c: Likewise
       * gcc.target/i386/returninst2.c: Likewise
       * gcc.target/i386/returninst3.c : Likewise

From-SVN: r271580
18 files changed:
gcc/ChangeLog
gcc/config/i386/darwin.h
gcc/doc/sourcebuild.texi
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/fentry-override.c
gcc/testsuite/gcc.target/i386/fentry.c
gcc/testsuite/gcc.target/i386/fentryname1.c
gcc/testsuite/gcc.target/i386/fentryname2.c
gcc/testsuite/gcc.target/i386/fentryname3.c
gcc/testsuite/gcc.target/i386/nop-mcount.c
gcc/testsuite/gcc.target/i386/pr82699-2.c
gcc/testsuite/gcc.target/i386/pr82699-4.c
gcc/testsuite/gcc.target/i386/pr82699-5.c
gcc/testsuite/gcc.target/i386/pr82699-6.c
gcc/testsuite/gcc.target/i386/returninst1.c
gcc/testsuite/gcc.target/i386/returninst2.c
gcc/testsuite/gcc.target/i386/returninst3.c
gcc/testsuite/lib/target-supports.exp