Commit db67ea0f by Iain Sandoe Committed by Iain Sandoe

[Darwin] More specs TLC.

This strips out a few driver specs that are only specifying a default state.
Also warn on an option now ignored, and add some comments to the driver specs
section.

2019-07-19  Iain Sandoe  <iain@sandoe.co.uk>

	* config/darwin.h (DRIVER_SELF_SPECS): Ignore X and Mach specs which
	refer to default conditions.  Warn for the 'y' spec which is ignored
	by current linkers.

From-SVN: r273608
parent 1acf0246
2019-07-19 Iain Sandoe <iain@sandoe.co.uk>
* config/darwin.h (DRIVER_SELF_SPECS): Ignore X and Mach specs which
refer to default conditions. Warn for the 'y' spec which is ignored
by current linkers.
2019-07-19 Bill Seurer <seurer@linux.vnet.ibm.com>
* config/rs6000/rs6000.c (builtin_description, cpu_is_info,
......
......@@ -118,13 +118,23 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
/* True if pragma ms_struct is in effect. */
extern GTY(()) int darwin_ms_struct;
/* The majority of Darwin's special driver opts are direct access to ld flags
(to save the user typing -Wl,xxxxx or Xlinker xxxxx) but we can't process
them here, since doing so will make it appear that there are linker infiles
and the linker will invoked even when it is not necessary.
However, a few can be handled and we can elide options that are silently-
ignored defaults, plus warn on obsolete ones that no longer function. */
#define DRIVER_SELF_SPECS \
"%{gfull:-g -fno-eliminate-unused-debug-symbols} %<gfull", \
"%{gused:-g -feliminate-unused-debug-symbols} %<gused", \
"%{fapple-kext|mkernel:-static}", \
"%{shared:-Zdynamiclib} %<shared", \
"%{gsplit-dwarf:%ngsplit-dwarf is not supported on this platform} \
%<gsplit-dwarf"
"%{fapple-kext|mkernel:-static}", \
"%{gfull:-g -fno-eliminate-unused-debug-symbols} %<gfull", \
"%{gsplit-dwarf:%ngsplit-dwarf is not supported on this platform} \
%<gsplit-dwarf", \
"%{gused:-g -feliminate-unused-debug-symbols} %<gused", \
"%{shared:-Zdynamiclib} %<shared", \
"%{static:%{Zdynamic:%e conflicting code gen style switches are used}}",\
"%{y*:%nthe y option is obsolete and ignored} %<y*", \
"%<Mach %<X"
#if LD64_HAS_EXPORT_DYNAMIC
#define DARWIN_RDYNAMIC "%{rdynamic:-export_dynamic}"
......@@ -342,13 +352,11 @@ extern GTY(()) int darwin_ms_struct;
%{Zunexported_symbols_list*:-unexported_symbols_list %*} \
%{Zweak_reference_mismatches*:-weak_reference_mismatches %*} \
%{!Zweak_reference_mismatches*:-weak_reference_mismatches non-weak} \
%{X} \
%{y*} \
%{w} \
%{pagezero_size*} %{segs_read_*} %{seglinkedit} %{noseglinkedit} \
%{sectalign*} %{sectobjectsymbols*} %{segcreate*} %{whyload} \
%{whatsloaded} %{dylinker_install_name*} \
%{dylinker} %{Mach} "
%{dylinker} "
/* Machine dependent libraries. */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment