gcc/libgcc
Iain Sandoe b410cf1dc0 [Darwin] fix PR67710 by updating 'as' specs to handle newer assembler versions.
A/ Newer versions of ld64 check the min_version command, and newer versions of
   the system assembler inserts this in response to "-mmacosx-version-min=" on
   the assembler line. Unless one makes sensible versions, some object is bound
   to conflict.

B/ Additionally, there's a difference in behaviour between "as" and "ld" when
   presented with xx.yy.zz (ld truncates to xx.yy, as doesn't); net result is
   that one needs to pass a truncated version to "as".

So (if the assembler supports minversion commands)
(a) provide a truncated minversion (as asm_macosx_version_min, which is a
    driver-only var).
(b) pass this to "as"
(c) Update tests to determine 'HAVE_AS_MMACOSX_VERSION_MIN_OPTION'
    (Rainer's patch)
(d) For some reason the testcases are "run" (it's not obvious they need to be,
    they are checking compile-time issues)
  - anyway, to preserve the status quo, I've left them as exec.  However, the
    minimum version that can be code-gened for is target-dependent (there are no
    released x86 versions before 10.4, for example).  To avoid conflicts where
    the "as" is assuming some minimum, I've set the testversion to 10.5 (which
    is supported by all the archs we have)
(e) We need to ensure that libgcc and crts are generated with a sufficiently
    old minversion not to conflict.

gcc/

2016-11-27  Iain Sandoe  <iain@codesourcery.com>
	    Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	PR target/67710
	* config.in: Regenerate
	* config/darwin-driver.c (darwin_driver_init): Emit a version string
	for the assembler.
	* config/darwin.h(ASM_MMACOSX_VERSION_MIN_SPEC): New, new tests.
	* config/darwin.opt(asm_macosx_version_min): New.
	* config/i386/darwin.h: Handle ASM_MMACOSX_VERSION_MIN_SPEC.
	* configure: Regenerate
	* configure.ac: Check for mmacosx-version-min handling.

gcc/testsuite/

2016-11-27  Iain Sandoe  <iain@codesourcery.com>
	    Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
	    Dominique d'Humieres  <dominiq@lps.ens.fr>

	PR target/67710
	*  gcc.dg/darwin-minversion-1.c: Update min version check.
	*  gcc.dg/darwin-minversion-2.c: Likewise.
	*  gcc.dg/darwin-minversion-3.c: Likewise.

libgcc/

2016-11-27  Iain Sandoe  <iain@codesourcery.com>
	    Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	PR target/67710
	*  config/t-darwin: Default builds to 10.5 codegen.


Co-Authored-By: Dominique d'Humieres <dominiq@lps.ens.fr>
Co-Authored-By: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>

From-SVN: r242898
2016-11-27 15:07:22 +00:00
..
config [Darwin] fix PR67710 by updating 'as' specs to handle newer assembler versions. 2016-11-27 15:07:22 +00:00
soft-fp [Patch libgcc 9/17] Update soft-fp from glibc 2016-11-23 17:27:27 +00:00
ChangeLog [Darwin] fix PR67710 by updating 'as' specs to handle newer assembler versions. 2016-11-27 15:07:22 +00:00
config.host TILEPro: force gcc to link against libgcc.a when creating shared 2016-11-19 02:28:00 +00:00
config.in
configure configure.ac: Do not create links, only substitute the filenames. 2016-09-21 12:53:20 +00:00
configure.ac configure.ac: Do not create links, only substitute the filenames. 2016-09-21 12:53:20 +00:00
crtstuff.c Protect __TMC_END__ - __TMC_LIST__ == 0 2016-11-20 13:35:27 +00:00
dfp-bit.c
dfp-bit.h
divmod.c
empty.mk
emutls.c
enable-execute-stack-empty.c
enable-execute-stack-mprotect.c
find-symver.awk
fixed-bit.c
fixed-bit.h
fixed-obj.mk
floatunsidf.c
floatunsisf.c
floatunsitf.c
floatunsixf.c
fp-bit.c
fp-bit.h
gbl-ctors.h
gen-fixed.sh
generic-morestack-thread.c
generic-morestack.c
generic-morestack.h
gstdint.h
gthr-posix.h
gthr-single.h
gthr.h
libgcc2.c re PR libgcc/78067 (libgcc2 calls count_leading_zero with 0) 2016-11-03 12:52:19 +00:00
libgcc2.h Makefile.in (LIB2_DIVMOD_FUNCS): Add _divmoddi4. 2016-11-02 23:23:13 +01:00
libgcc-std.ver.in Makefile.in (LIB2_DIVMOD_FUNCS): Add _divmoddi4. 2016-11-02 23:23:13 +01:00
libgcov-driver-system.c
libgcov-driver.c gcov: dump in a static dtor instead of in an atexit handler 2016-09-27 11:07:11 +00:00
libgcov-interface.c
libgcov-merge.c Remove __gcov_merge_delta (PR bootstrap/77749) 2016-09-27 10:04:39 +00:00
libgcov-profiler.c Make direct emission of time profiler counter 2016-11-03 15:24:22 +00:00
libgcov-util.c Remove __gcov_merge_delta (PR bootstrap/77749) 2016-09-27 10:04:39 +00:00
libgcov.h gcov: dump in a static dtor instead of in an atexit handler 2016-09-27 11:07:11 +00:00
Makefile.in Makefile.in (LIB2_DIVMOD_FUNCS): Add _divmoddi4. 2016-11-02 23:23:13 +01:00
memcmp.c
memcpy.c
memmove.c
memset.c
mkheader.sh
mkmap-flat.awk
mkmap-symver.awk
offloadstuff.c
shared-object.mk
siditi-object.mk
static-object.mk
sync.c
udivmod.c
udivmodsi4.c
unwind-arm-common.inc
unwind-c.c PR libgcc/78064: Add missing include directive to unwind-c.c 2016-10-24 20:25:09 +02:00
unwind-compat.c
unwind-compat.h
unwind-dw2-fde-compat.c
unwind-dw2-fde-dip.c re PR libgcc/68468 (frv/bfin FDPIC toolchain build error) 2016-11-16 08:01:56 +01:00
unwind-dw2-fde.c re PR libgcc/71744 (Concurrently throwing exceptions is not scalable) 2016-09-16 21:17:47 +02:00
unwind-dw2-fde.h
unwind-dw2.c
unwind-dw2.h
unwind-generic.h
unwind-pe.h
unwind-seh.c
unwind-sjlj.c
unwind.inc
vtv_end_preinit.c
vtv_end.c
vtv_start_preinit.c
vtv_start.c