aboutsummaryrefslogtreecommitdiff
path: root/gcc/gcc.cc
diff options
context:
space:
mode:
authorAlexandre Oliva <oliva@adacore.com>2022-11-05 03:14:33 -0300
committerAlexandre Oliva <oliva@gnu.org>2022-11-05 03:14:33 -0300
commit6b1a2474f9e422ef746f7ea13014b288850bb68a (patch)
tree391e95f35df7bf1efbefe820003324821508f1c4 /gcc/gcc.cc
parent95ba31bc4f88a0a2ff9f0ed41f3478cafcb9e040 (diff)
downloadgcc-6b1a2474f9e422ef746f7ea13014b288850bb68a.zip
gcc-6b1a2474f9e422ef746f7ea13014b288850bb68a.tar.gz
gcc-6b1a2474f9e422ef746f7ea13014b288850bb68a.tar.bz2
Support multilib-aware target lib flags self-specs overriding
This patch introduces -fmultiflags, short for multilib TFLAGS, as an option that does nothing by default, but that can be added to TFLAGS and mapped to useful options by driver self-specs. for gcc/ChangeLog * common.opt (fmultiflags): New. * doc/invoke.texi: Document it. * gcc.cc (driver_self_specs): Discard it. * opts.cc (common_handle_option): Ignore it in the driver.
Diffstat (limited to 'gcc/gcc.cc')
-rw-r--r--gcc/gcc.cc6
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index 98a239c..830ab88 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
@@ -1327,7 +1327,11 @@ static const char *const multilib_defaults_raw[] = MULTILIB_DEFAULTS;
static const char *const driver_self_specs[] = {
"%{fdump-final-insns:-fdump-final-insns=.} %<fdump-final-insns",
- DRIVER_SELF_SPECS, CONFIGURE_SPECS, GOMP_SELF_SPECS, GTM_SELF_SPECS
+ DRIVER_SELF_SPECS, CONFIGURE_SPECS, GOMP_SELF_SPECS, GTM_SELF_SPECS,
+ /* This discards -fmultiflags at the end of self specs processing in the
+ driver, so that it is effectively Ignored, without actually marking it as
+ Ignored, which would get it discarded before self specs could remap it. */
+ "%<fmultiflags"
};
#ifndef OPTION_DEFAULT_SPECS