summaryrefslogtreecommitdiff
path: root/tests/crasher.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/crasher.c')
-rw-r--r--tests/crasher.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/tests/crasher.c b/tests/crasher.c
index 24c78054..9df57095 100644
--- a/tests/crasher.c
+++ b/tests/crasher.c
@@ -87,6 +87,11 @@ write_maps(char *fname)
#endif
#ifdef __GNUC__
+#ifndef __clang__
+// Gcc >= 8 became too good at inlining aliase c into b when using -O2 or -O3,
+// so force -O1 in all cases, otherwise a frame will be missing in the tests.
+#pragma GCC optimize "-O1"
+#endif
int c(int x) NOINLINE ALIAS(b);
#define compiler_barrier() asm volatile("");
#else