With revision 259496: commit b1384095a7c1d06a44b70853372ebe037b2f7867 Author: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4> Date: Thu Apr 19 15:15:04 2018 +0000
x86: Enable -fcf-protection with multi-byte NOPs -fcf-protection no longer depens on -mcet and with revision 259522: commit d59cfa9a4064339cf2bd2da828c4c133f13e57f0 Author: hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4> Date: Fri Apr 20 13:30:13 2018 +0000 Define __CET__ for -fcf-protection and remove -mibt -mcet becomes an alias for -mshstk. To enable shadow stack protection in a program, -fcf-protection=return must be used to compile the program. -mcet/-mshstk are used to enable shadow stack intrinsics to IMPLEMENT shadow stack, not to ENABLE shadow stack protection. Since -mcet won't get any shadow stack protection, -mcet will only lead user confusions. This set of patches removes -mcet from GCC 8. H.J. Lu (5): x86/CET: Build target libraries with -mshstk Regenerate configure of target libraries Don't bootstrap GCC with -mcet x86/CET tests: Remove -mcet/-mno-cet or replace -mcet with -mshstk x86/CET: Remove the -mcet command-lint option config/bootstrap-cet.mk | 6 +-- config/cet.m4 | 2 +- gcc/common/config/i386/i386-common.c | 1 - gcc/config/i386/i386.opt | 5 --- gcc/doc/install.texi | 4 +- gcc/doc/invoke.texi | 10 +---- gcc/testsuite/g++.dg/cet-notrack-1.C | 2 +- gcc/testsuite/g++.dg/torture/pr85334.C | 2 +- gcc/testsuite/gcc.dg/pr85388-1.c | 2 +- gcc/testsuite/gcc.dg/pr85388-2.c | 2 +- gcc/testsuite/gcc.dg/pr85388-3.c | 2 +- gcc/testsuite/gcc.dg/pr85388-4.c | 2 +- gcc/testsuite/gcc.dg/pr85388-5.c | 2 +- gcc/testsuite/gcc.dg/pr85388-6.c | 4 +- gcc/testsuite/gcc.dg/torture/pr85397-1.c | 2 +- gcc/testsuite/gcc.target/i386/attr-nocf-check-1a.c | 2 +- gcc/testsuite/gcc.target/i386/attr-nocf-check-3a.c | 2 +- gcc/testsuite/gcc.target/i386/cet-intrin-10.c | 2 +- gcc/testsuite/gcc.target/i386/cet-intrin-3.c | 2 +- gcc/testsuite/gcc.target/i386/cet-intrin-5.c | 2 +- gcc/testsuite/gcc.target/i386/cet-intrin-6.c | 2 +- gcc/testsuite/gcc.target/i386/cet-intrin-7.c | 2 +- gcc/testsuite/gcc.target/i386/cet-intrin-8.c | 2 +- gcc/testsuite/gcc.target/i386/cet-intrin-9.c | 2 +- gcc/testsuite/gcc.target/i386/cet-label-2.c | 2 +- gcc/testsuite/gcc.target/i386/cet-label-3.c | 16 -------- gcc/testsuite/gcc.target/i386/cet-label.c | 4 +- gcc/testsuite/gcc.target/i386/cet-notrack-1a.c | 2 +- gcc/testsuite/gcc.target/i386/cet-notrack-1b.c | 2 +- gcc/testsuite/gcc.target/i386/cet-notrack-2a.c | 2 +- gcc/testsuite/gcc.target/i386/cet-notrack-2b.c | 2 +- gcc/testsuite/gcc.target/i386/cet-notrack-3.c | 2 +- gcc/testsuite/gcc.target/i386/cet-notrack-4a.c | 2 +- gcc/testsuite/gcc.target/i386/cet-notrack-4b.c | 2 +- gcc/testsuite/gcc.target/i386/cet-notrack-5a.c | 2 +- gcc/testsuite/gcc.target/i386/cet-notrack-5b.c | 2 +- gcc/testsuite/gcc.target/i386/cet-notrack-6a.c | 2 +- gcc/testsuite/gcc.target/i386/cet-notrack-6b.c | 2 +- gcc/testsuite/gcc.target/i386/cet-notrack-7.c | 2 +- gcc/testsuite/gcc.target/i386/cet-notrack-icf-2.c | 2 +- gcc/testsuite/gcc.target/i386/cet-notrack-icf-4.c | 2 +- gcc/testsuite/gcc.target/i386/cet-property-1.c | 2 +- gcc/testsuite/gcc.target/i386/cet-property-2.c | 2 +- gcc/testsuite/gcc.target/i386/cet-property-3.c | 11 ----- gcc/testsuite/gcc.target/i386/cet-rdssp-1.c | 2 +- gcc/testsuite/gcc.target/i386/cet-sjlj-1.c | 2 +- gcc/testsuite/gcc.target/i386/cet-sjlj-2.c | 2 +- gcc/testsuite/gcc.target/i386/cet-sjlj-3.c | 2 +- gcc/testsuite/gcc.target/i386/cet-sjlj-4.c | 2 +- gcc/testsuite/gcc.target/i386/cet-sjlj-5.c | 2 +- gcc/testsuite/gcc.target/i386/cet-sjlj-6a.c | 2 +- gcc/testsuite/gcc.target/i386/cet-sjlj-6b.c | 2 +- gcc/testsuite/gcc.target/i386/cet-sjlj-7.c | 48 ---------------------- gcc/testsuite/gcc.target/i386/cet-switch-1.c | 2 +- gcc/testsuite/gcc.target/i386/cet-switch-2.c | 2 +- gcc/testsuite/gcc.target/i386/cet-switch-3.c | 2 +- gcc/testsuite/gcc.target/i386/indirect-thunk-11.c | 2 +- gcc/testsuite/gcc.target/i386/indirect-thunk-12.c | 2 +- .../gcc.target/i386/indirect-thunk-attr-12.c | 2 +- .../gcc.target/i386/indirect-thunk-attr-13.c | 2 +- .../gcc.target/i386/indirect-thunk-attr-14.c | 2 +- .../gcc.target/i386/indirect-thunk-attr-15.c | 2 +- .../gcc.target/i386/indirect-thunk-attr-16.c | 2 +- .../gcc.target/i386/indirect-thunk-extern-10.c | 2 +- .../gcc.target/i386/indirect-thunk-extern-8.c | 2 +- .../gcc.target/i386/indirect-thunk-extern-9.c | 2 +- gcc/testsuite/gcc.target/i386/pr82659-1.c | 2 +- gcc/testsuite/gcc.target/i386/pr82659-2.c | 2 +- gcc/testsuite/gcc.target/i386/pr82659-3.c | 2 +- gcc/testsuite/gcc.target/i386/pr82659-4.c | 2 +- gcc/testsuite/gcc.target/i386/pr82659-5.c | 2 +- gcc/testsuite/gcc.target/i386/pr82659-6.c | 2 +- gcc/testsuite/gcc.target/i386/pr84146.c | 2 +- gcc/testsuite/gcc.target/i386/pr85345.c | 2 +- gcc/testsuite/gcc.target/i386/pr85403.c | 2 +- gcc/testsuite/gcc.target/i386/pr85404.c | 2 +- libatomic/configure | 2 +- libbacktrace/configure | 2 +- libgcc/configure | 2 +- libgfortran/configure | 2 +- libgomp/configure | 2 +- libitm/configure | 2 +- libmpx/configure | 2 +- libobjc/configure | 2 +- libquadmath/configure | 2 +- libsanitizer/configure | 2 +- libssp/configure | 2 +- libstdc++-v3/configure | 2 +- libvtv/configure | 2 +- 89 files changed, 90 insertions(+), 177 deletions(-) delete mode 100644 gcc/testsuite/gcc.target/i386/cet-label-3.c delete mode 100644 gcc/testsuite/gcc.target/i386/cet-property-3.c delete mode 100644 gcc/testsuite/gcc.target/i386/cet-sjlj-7.c -- 2.14.3