summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorColin Watson <cjwatson@debian.org>2022-02-24 16:04:18 +0000
committerDamien Miller <djm@mindrot.org>2022-02-25 11:28:45 +1100
commit6c4a67ece33d9551429490898bb3c793a689e913 (patch)
tree713042133aafaf5942813f5044913e9c9874a587
parent2ebf478107ecb3c554fceb26d01bca59c6d0ed1e (diff)
downloadopenssh-git-6c4a67ece33d9551429490898bb3c793a689e913.tar.gz
Improve detection of -fzero-call-used-regs=all support
GCC doesn't tell us whether this option is supported unless it runs into the situation where it would need to emit corresponding code.
-rw-r--r--m4/openssh.m43
1 files changed, 3 insertions, 0 deletions
diff --git a/m4/openssh.m4 b/m4/openssh.m4
index 4f9c3792..8c33c701 100644
--- a/m4/openssh.m4
+++ b/m4/openssh.m4
@@ -14,6 +14,8 @@ AC_DEFUN([OSSH_CHECK_CFLAG_COMPILE], [{
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
#include <stdlib.h>
#include <stdio.h>
+/* Trivial function to help test for -fzero-call-used-regs */
+void f(int n) {}
int main(int argc, char **argv) {
(void)argv;
/* Some math to catch -ftrapv problems in the toolchain */
@@ -21,6 +23,7 @@ int main(int argc, char **argv) {
float l = i * 2.1;
double m = l / 0.5;
long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
+ f(0);
printf("%d %d %d %f %f %lld %lld\n", i, j, k, l, m, n, o);
/*
* Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does