Module Name: src Committed By: mrg Date: Wed Mar 28 19:24:52 UTC 2018
Modified Files: src/external/gpl3/gcc.old/dist/gcc/config/i386: constraints.md i386-opts.h i386-protos.h i386.c i386.h i386.md i386.opt predicates.md src/external/gpl3/gcc.old/dist/gcc/doc: extend.texi invoke.texi Log Message: add the spectre mitigation options for x86: -mindirect-branch=<choice> -mfunction-return=<choice> -mindirect-branch-register the values for 'choice' are "keep" (default, existing behaviour), "thunk", "thunk-inline", and "thunk-extern". as taken from the Ubuntu port of these changes in their ubuntu:gcc-5_5.5.0-8ubuntu1.diff. i've also included the doc updates that are missing from ubuntu from gcc itself. i've tested both i386 and amd64 fairly heavily with these options enabled in both kernels and userland, atf runs and hundreds of package builds. XXX: pullup-8 to gcc/ not gcc.old/ To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 \ src/external/gpl3/gcc.old/dist/gcc/config/i386/constraints.md \ src/external/gpl3/gcc.old/dist/gcc/config/i386/i386-protos.h \ src/external/gpl3/gcc.old/dist/gcc/config/i386/predicates.md cvs rdiff -u -r1.3 -r1.4 \ src/external/gpl3/gcc.old/dist/gcc/config/i386/i386-opts.h cvs rdiff -u -r1.9 -r1.10 \ src/external/gpl3/gcc.old/dist/gcc/config/i386/i386.c cvs rdiff -u -r1.6 -r1.7 \ src/external/gpl3/gcc.old/dist/gcc/config/i386/i386.h \ src/external/gpl3/gcc.old/dist/gcc/config/i386/i386.md \ src/external/gpl3/gcc.old/dist/gcc/config/i386/i386.opt cvs rdiff -u -r1.6 -r1.7 src/external/gpl3/gcc.old/dist/gcc/doc/extend.texi \ src/external/gpl3/gcc.old/dist/gcc/doc/invoke.texi Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.