ld: Add NOCF_PROTECTION_CFLAGS to turn off -fcf-protection
authorH.J. Lu <hjl.tools@gmail.com>
Thu, 2 Apr 2020 14:03:08 +0000 (07:03 -0700)
committerH.J. Lu <hjl.tools@gmail.com>
Thu, 2 Apr 2020 14:12:45 +0000 (07:12 -0700)
commit8be5def63b0f2036312483dac8dd5a4fa2e91009
treee9944941e51e9b0c3f781b0bdd91ffb12d16706a
parent4d095f5b5e57584133f85df42da2123e20834aec
ld: Add NOCF_PROTECTION_CFLAGS to turn off -fcf-protection

GCC in Ubuntu 20.04 enables -fcf-protection by default, which leads to

FAIL: S-records
FAIL: S-records with constructors
FAIL: Build plt-main with -z bndplt
FAIL: Build plt-main with PIE and -z bndplt
FAIL: Build plt-main with -z bndplt -z now
FAIL: Build plt-main with PIE and -z bndplt -z now

on x86-64.  Add NOCF_PROTECTION_CFLAGS to pass -fcf-protection=none on
these tests.

* testsuite/config/default.exp (NOCF_PROTECTION_CFLAGS): New.
Set to "-fcf-protection=none" if target compiler supports it.
* testsuite/ld-srec/srec.exp: Add $NOCF_PROTECTION_CFLAGS to
CC and CXX.
* testsuite/ld-x86-64/x86-64.exp: Add $NOCF_PROTECTION_CFLAGS
to PLT BND tests.
ld/ChangeLog
ld/testsuite/config/default.exp
ld/testsuite/ld-srec/srec.exp
ld/testsuite/ld-x86-64/x86-64.exp