[PATCH, i386]: Simplify setting of opts->x_flag_entry.
Uros Bizjak
ubizjak@gmail.com
Tue Aug 29 18:38:00 GMT 2017
Check opts_set->x_flag_fentry and remove check for non-existing
PROFILE_BEFORE_PROLOGUE definition.
2017-08-29 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.opt (flag_fentry): Do not init to -1.
* config/i386/i386.c (ix86_option_override_internal): Simplify
setting of opts->x_flag_entry.
Bootstrapped and regression tested on x86_64-linux-gnu {,-m32}.
Committed to mainline SVN.
Uros.
-------------- next part --------------
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index b5c113d95aad..509fd3a26d5b 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -6545,27 +6545,18 @@ ix86_option_override_internal (bool main_args_p,
opts->x_target_flags |= MASK_CLD & ~opts_set->x_target_flags;
#endif
- if (!TARGET_64BIT_P (opts->x_ix86_isa_flags) && opts->x_flag_pic)
+ /* Set the default value for -mfentry. */
+ if (!opts_set->x_flag_fentry)
+ opts->x_flag_fentry = TARGET_SEH;
+ else
{
- if (opts->x_flag_fentry > 0)
- sorry ("-mfentry isn%'t supported for 32-bit in combination "
+ if (!TARGET_64BIT_P (opts->x_ix86_isa_flags) && opts->x_flag_pic
+ && opts->x_flag_fentry)
+ sorry ("-mfentry isn%'t supported for 32-bit in combination "
"with -fpic");
- opts->x_flag_fentry = 0;
- }
- else if (TARGET_SEH)
- {
- if (opts->x_flag_fentry == 0)
+ else if (TARGET_SEH && !opts->x_flag_fentry)
sorry ("-mno-fentry isn%'t compatible with SEH");
- opts->x_flag_fentry = 1;
}
- else if (opts->x_flag_fentry < 0)
- {
-#if defined(PROFILE_BEFORE_PROLOGUE)
- opts->x_flag_fentry = 1;
-#else
- opts->x_flag_fentry = 0;
-#endif
- }
if (TARGET_SEH && TARGET_CALL_MS2SYSV_XLOGUES)
sorry ("-mcall-ms2sysv-xlogues isn%'t currently supported with SEH");
diff --git a/gcc/config/i386/i386.opt b/gcc/config/i386/i386.opt
index 8bf6af21fd18..81bbc1e2170a 100644
--- a/gcc/config/i386/i386.opt
+++ b/gcc/config/i386/i386.opt
@@ -862,7 +862,7 @@ Target Report Mask(ISA_PREFETCHWT1) Var(ix86_isa_flags) Save
Support PREFETCHWT1 built-in functions and code generation.
mfentry
-Target Report Var(flag_fentry) Init(-1)
+Target Report Var(flag_fentry)
Emit profiling counter call at function entry before prologue.
mrecord-mcount
More information about the Gcc-patches
mailing list