From a95c7222d3e232d54836740bdfca0d633f83babe Mon Sep 17 00:00:00 2001 From: Andy Fiddaman Date: Wed, 26 Oct 2022 12:53:51 +0000 Subject: [PATCH 34/39] Add -fforce-omit-frame-pointer --- gcc/common.opt | 4 ++++ gcc/config/i386/i386-options.cc | 7 +++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/gcc/common.opt b/gcc/common.opt index a37f1126069..f1d00cc6a43 100644 --- a/gcc/common.opt +++ b/gcc/common.opt @@ -2432,6 +2432,10 @@ fomit-frame-pointer Common Var(flag_omit_frame_pointer) Optimization When possible do not generate stack frames. +fforce-omit-frame-pointer +Common Var(flag_force_omit_frame_pointer) Optimization +When possible, do not generate stack frames. Hinders debugging with mdb and dtrace. + fopenmp-target-simd-clone Common Alias(fopenmp-target-simd-clone=,any,none) diff --git a/gcc/config/i386/i386-options.cc b/gcc/config/i386/i386-options.cc index a0023603143..5b9c5e119f8 100644 --- a/gcc/config/i386/i386-options.cc +++ b/gcc/config/i386/i386-options.cc @@ -3254,8 +3254,11 @@ ix86_option_override_internal (bool main_args_p, * questionable benefit anyway, even on i386. */ - flag_omit_frame_pointer = 0; - opts->x_flag_omit_frame_pointer = 0; + if (flag_force_omit_frame_pointer == 0) + { + flag_omit_frame_pointer = 0; + opts->x_flag_omit_frame_pointer = 0; + } /* Save the initial options in case the user does function specific options. */ -- 2.53.0