aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gcc.target/i386/patch-functions-force-patching.c
diff options
context:
space:
mode:
authorCaroline Tice <cmtice@google.com>2018-01-08 10:25:12 -0800
committerCaroline Tice <cmtice@google.com>2018-01-08 10:25:12 -0800
commitdeec799746e92ab0487eca489499ade08a2610bf (patch)
tree9a2c42ca86130fa98e61c5d7bfb7e890f501a066 /gcc-4.9/gcc/testsuite/gcc.target/i386/patch-functions-force-patching.c
parentdca601e5d2b032ac5cca1df90ac56077ccf5d665 (diff)
downloadtoolchain_gcc-deec799746e92ab0487eca489499ade08a2610bf.tar.gz
toolchain_gcc-deec799746e92ab0487eca489499ade08a2610bf.tar.bz2
toolchain_gcc-deec799746e92ab0487eca489499ade08a2610bf.zip
[GCC] Commit retpoline patch code, for fixing security issues.
This applies the Intel GCC code patches, to allow compiling with appropriate flags for mitigating the indirect branch variant of the speculative execution security flaw. Bug: None Test: This is already in place in ChromeOS and has been tested on the ChromeOS kernels. Change-Id: Ideffb433b697f1fe7e4ca2c1eaa968160abfcc8b
Diffstat (limited to 'gcc-4.9/gcc/testsuite/gcc.target/i386/patch-functions-force-patching.c')
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.target/i386/patch-functions-force-patching.c20
1 files changed, 0 insertions, 20 deletions
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/patch-functions-force-patching.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/patch-functions-force-patching.c
deleted file mode 100644
index 86ad1594c..000000000
--- a/gcc-4.9/gcc/testsuite/gcc.target/i386/patch-functions-force-patching.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* { dg-do compile } */
-/* { dg-require-effective-target lp64 } */
-/* { dg-options "-O3 -mpatch-functions-for-instrumentation -mno-patch-functions-main-always" } */
-
-/* Functions which have the always_patch attribute should be patched no matter
- what. Check that there are nop-bytes at the beginning and end of the
- function. We add -O3 so that the compiler will try to inline foo (but it
- will be blocked by the attribute). */
-
-/* { dg-final { scan-assembler ".byte\t0xeb,0x09(.*).byte\t0x90" } } */
-/* { dg-final { scan-assembler "ret(.*).byte\t0x90(.*).byte\t0x90" } } */
-
-__attribute__ ((always_patch_for_instrumentation))
-static int foo () {
- return 3;
-}
-
-int main () {
- volatile int x = foo ();
-}