https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104713
Bug ID: 104713 Summary: gcc does not reject -march=i686 -fcf-protection Product: gcc Version: 11.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: bunk at stusta dot de Target Milestone: --- To support the Geode in OLPC, the toolchain definition of i686 does include CMOV but it does not include multi-byte NOPs. https://bugs.debian.org/1004894 is due to autodetection for -fcf-protection that incorrectly succeeds with -march=i686. The bug is likely in https://gcc.gnu.org/git/?p=gcc.git;a=blob;f=gcc/config/i386/i386-options.cc;h=805539364108eee07f5bda527acd6f39f3f7bf95;hb=HEAD#l2929 A similar problem in a different place was bug 84148. Testcase: $ touch test.c $ gcc -m32 -march=i586 -fcf-protection -c test.c cc1: error: ‘-fcf-protection’ is not compatible with this target $ gcc -m32 -march=i686 -fcf-protection -c test.c $