The latest GCC fails if -fcf-protection is used with an x86 (32-bit) target 
that doesn't support CMOV:

https://gcc.gnu.org/git/?p=gcc.git;a=blobdiff;f=gcc/config/i386/i386-options.c;h=a70f6edf7b0bfa6994db372c2507dbacb5526646;hp=6819a04238965f0ad63b10323823caa2fb8b147c;hb=77d372abec0fbf2cfe922e3140ee3410248f979e;hpb=5ebdd53534db25401473db5f6a0ad30f41410241

At least back to OpenJDK 11, the JDK build forces -march=i586 and the build 
fails with '-fcf-protection is not compatible with this target'

This patch uses -march=i686 instead if -fcf-protection is detected in the 
compiler flags. It also makes it clear which is being set in the configure 
output, rather than silently setting the flag.

-------------

Commit messages:
 - JDK-8259949: x86 32-bit build fails when -fcf-protection is passed in the 
compiler flags

Changes: https://git.openjdk.java.net/jdk/pull/2153/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=2153&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8259949
  Stats: 14 lines in 1 file changed: 12 ins; 0 del; 2 mod
  Patch: https://git.openjdk.java.net/jdk/pull/2153.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/2153/head:pull/2153

PR: https://git.openjdk.java.net/jdk/pull/2153

Reply via email to