gcc/gcc/config
Steven Bosscher c082f9f317 configure.ac (--enable-lto): Add x86_64-apple-darwin* as a platform that supports LTO.
ChangeLog:
	* configure.ac (--enable-lto): Add x86_64-apple-darwin* as
	a platform that supports LTO.
	* configure: Regenerate.

gcc/ChangeLog:
	* config.gcc (i[34567]86-*-darwin*, x86_64-*-darwin*): Add
	lto-macho as lto_binary_reader.
	* target.h (struct gcc_target): New hooks lto_start and	lto_end.
	* target-def.h (TARGET_ASM_LTO_START, TARGET_ASM_LTO_END): Define.
	* cgraphunit.c (ipa_passes): Wrap LTO assembler output generation
	in lto_start and lto_end calls.
	(is_elf_or_coff): Rename to maybe_lto_object_file.  Add Mach-O
	magic numbers.
	(scan_prog_file): Update is_elf_or_coff call.
	* doc/tm.text (TARGET_ASM_LTO_START, TARGET_ASM_LTO_END): Document.

	* collect2.c (main): Fix enum comparison.

	* config/darwin-protos.h (darwin_asm_lto_start, darwin_asm_lto_end):
	Add prototypes.
	* darwin9.h (LINK_COMMAND_SPEC): Pass -flto and -fwhopr to the linker.
	* darwin.h (LINK_COMMAND_SPEC): Likewise.  Define TARGET_ASM_LTO_START
	and TARGET_ASM_LTO_END.
	* darwin.c: Include obstack.h and lto-streamer.h.
	(lto_section_names_offset, lto_section_names_obstack,
	lto_asm_out_file, lto_asm_out_name, saved_asm_out_file): New static
	global variables.
	(LTO_SEGMENT_NAME, LTO_NAMES_SECTION): New defines.
	(darwin_asm_lto_start): New function.  Redirect output to asm_out_file
	to a temporary file.
	(darwin_asm_lto_end): New function.  Restore asm_out_file.
	(darwin_asm_named_section): For LTO sections, replace the name with
	the offset of the section name in a string table, and build this
	table.
	(darwin_file_start): Initialize global vars for LTO support.
	(darwin_file_end): If output to asm_out_file was redirected, append it
	to the proper asm_out_file here.  Add the section names section.

lto/ChangeLog:
	* lto.h (struct lto_file_struct): Document offset member.
	* lto-endian.h: New file.
	* lto-macho.h: New file.
	* lto-macho.c: New file.
	* Make-lang.in: Add rule for lto-macho.o.

From-SVN: r159173
2010-05-07 21:37:43 +00:00
..
alpha elf.h (ASM_DECLARE_OBJECT_NAME): Use gnu_unique_object type if available. 2010-04-28 18:56:24 +02:00
arc * config/arc/arc.c (arc_trampoline_init): Fix typo. 2009-09-23 15:17:24 +00:00
arm arm.h (MAX_LDM_STM_OPS): New macro. 2010-05-05 22:46:38 +00:00
avr tm.texi (defmac SMALL_REGISTER_CLASSES): Remove. 2010-05-03 17:47:47 +00:00
bfin tm.texi (defmac SMALL_REGISTER_CLASSES): Remove. 2010-05-03 17:47:47 +00:00
cris defaults.h (CONSTANT_ADDRESS_P): Provide a default definition. 2009-11-04 11:06:36 +00:00
crx * config/crx/crx.h (INITIALIZE_TRAMPOLINE): Remove. 2009-09-22 08:12:31 -07:00
fr30 defaults.h (CONSTANT_ADDRESS_P): Provide a default definition. 2009-11-04 11:06:36 +00:00
frv defaults.h (CONSTANT_ADDRESS_P): Provide a default definition. 2009-11-04 11:06:36 +00:00
h8300 tm.texi (defmac SMALL_REGISTER_CLASSES): Remove. 2010-05-03 17:47:47 +00:00
i386 re PR target/43888 (FAIL: gcc.dg/alias-7.c execution test) 2010-05-06 16:06:18 +00:00
ia64 partial fix, make all 'e' class regs fixed PR rtl-optimization/43520 2010-04-19 18:16:59 -07:00
iq2000 tm.texi (defmac SMALL_REGISTER_CLASSES): Remove. 2010-05-03 17:47:47 +00:00
lm32 [multiple changes] 2010-04-02 04:59:07 +02:00
m32c tm.texi (defmac SMALL_REGISTER_CLASSES): Remove. 2010-05-03 17:47:47 +00:00
m32r m32r.c (m32r_is_insn): Return false for debugging insns. 2009-09-28 12:15:42 +00:00
m68hc11 tm.texi (defmac SMALL_REGISTER_CLASSES): Remove. 2010-05-03 17:47:47 +00:00
m68k * config/m68k/uclinux.h (LIB_SPEC): Bring in sync with config/linux.h. 2010-05-06 15:54:14 +00:00
mcore tm.texi (defmac SMALL_REGISTER_CLASSES): Remove. 2010-05-03 17:47:47 +00:00
mep Make-lang.in, [...]: Update copyright years. 2010-04-02 19:54:46 +00:00
mips * config/mips/iris6.h (LINK_SPEC): Don't pass -init, -fini with -r. 2010-05-07 12:36:58 +00:00
mmix mmix.md ("*divdi3_nonknuth", [...]): Add missing earlyclobber for second alternative. 2010-04-27 00:55:30 +00:00
mn10300 tm.texi (defmac SMALL_REGISTER_CLASSES): Remove. 2010-05-03 17:47:47 +00:00
moxie Fix moxie tramponline alignment problem 2010-02-03 11:36:30 +00:00
pa pa.c (emit_move_sequence): Remove use of deleted variable flag_argument_noalias. 2010-04-12 20:01:41 +00:00
pdp11 tm.texi (defmac SMALL_REGISTER_CLASSES): Remove. 2010-05-03 17:47:47 +00:00
picochip picochip.c (picochip_legitimize_address): Define. 2010-04-30 09:40:21 +00:00
rs6000 re PR testsuite/43758 (19 new GCC HEAD@158360 regressions) 2010-05-05 15:33:11 -04:00
rx tm.texi (defmac SMALL_REGISTER_CLASSES): Remove. 2010-05-03 17:47:47 +00:00
s390 re PR target/43635 (ICE in s390_emit_call, at config/s390/s390.c:9484) 2010-04-20 07:51:14 +00:00
score defaults.h (CONSTANT_ADDRESS_P): Provide a default definition. 2009-11-04 11:06:36 +00:00
sh sh.c (sh_small_register_classes_for_mode_p): Remove static. 2010-05-04 12:43:13 +00:00
soft-fp Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
sparc re PR target/42895 (Low registers are preferred than register ip in thumb2 mode) 2010-04-29 21:37:01 +00:00
spu Make-lang.in, [...]: Update copyright years. 2010-04-02 19:54:46 +00:00
stormy16 * config/stormy16/stormy16-lib2.c (__ucmpsi2): Fix thinko. 2010-04-22 14:28:16 +00:00
v850 v850.c (function_arg): Fix handling of zero-length function arguments. 2009-11-24 15:38:39 +00:00
vax linux.h (TARGET_OS_CPP_BUILTINS): Don't define __pic__ or __PIC__. 2009-11-04 00:07:24 +00:00
vms vms-cc.c: Deleted. 2009-07-30 00:15:35 +00:00
xtensa tm.texi (defmac SMALL_REGISTER_CLASSES): Remove. 2010-05-03 17:47:47 +00:00
README
darwin-64.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
darwin-c.c re PR target/43708 (gcc.dg/pragma-darwin.c "set not used", not working with pragma) 2010-05-07 17:34:31 +00:00
darwin-crt2.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
darwin-crt3.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
darwin-driver.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
darwin-f.c
darwin-ppc-ldouble-patch.def ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
darwin-protos.h configure.ac (--enable-lto): Add x86_64-apple-darwin* as a platform that supports LTO. 2010-05-07 21:37:43 +00:00
darwin-sections.def ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
darwin.c configure.ac (--enable-lto): Add x86_64-apple-darwin* as a platform that supports LTO. 2010-05-07 21:37:43 +00:00
darwin.h configure.ac (--enable-lto): Add x86_64-apple-darwin* as a platform that supports LTO. 2010-05-07 21:37:43 +00:00
darwin.opt
darwin9.h configure.ac (--enable-lto): Add x86_64-apple-darwin* as a platform that supports LTO. 2010-05-07 21:37:43 +00:00
darwin10.h re PR c++/41313 (r150553 causes g++.dg/tree-prof/partition1.C compilation and execution test failures on *-apple-darwin*) 2009-10-21 15:07:59 +00:00
dbx.h
dbxcoff.h
dbxelf.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
dfp-bit.c re PR c/41049 (conversion from integer to decimal float loses trailing zeros) 2009-09-17 17:07:24 +00:00
dfp-bit.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
divmod.c ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
elfos.h elfos.h (ASM_DECLARE_OBJECT_NAME): Use gnu_unique_object type if available. 2009-08-18 13:01:36 -04:00
fixed-bit.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
fixed-bit.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
flat.h
floatunsidf.c
floatunsisf.c
floatunsitf.c
floatunsixf.c
fp-bit.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
fp-bit.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
freebsd-nthr.h
freebsd-spec.h unwind-dw2-fde-glibc.c: Define and use USE_PT_GNU_EH_FRAME. 2009-09-22 16:28:26 +00:00
freebsd-stdint.h freebsd-stdint.h: New file. 2009-06-01 03:03:37 +00:00
freebsd.h freebsd.h: Update comment on types. 2009-09-18 22:15:58 +00:00
glibc-stdint.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
gnu.h re PR target/28102 (GNU Hurd bootstrap error: 'OPTION_GLIBC' undeclared) 2008-11-14 00:28:46 +01:00
gofast.h
host-darwin.c
host-darwin.h
host-hpux.c
host-linux.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
host-solaris.c re PR pch/14940 (PCH largefile test fails on various platforms) 2010-03-01 12:44:33 +00:00
hpux-stdint.h config.gcc (hppa*64*-*-hpux11*): Set use_gcc_stdint and add hpux-stdint.h to tm_file. 2009-04-28 15:20:07 +00:00
interix.h
interix3.h
kfreebsd-gnu.h
knetbsd-gnu.h
kopensolaris-gnu.h configure.ac: Recognize GNU/kOpenSolaris (*-*-kopensolaris*-gnu). 2009-01-29 18:48:41 +00:00
libgcc-glibc.ver ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
linux.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
linux.opt linux.opt: Put mglibc ahead of muclibc. 2009-06-22 16:49:03 +00:00
lynx.h
lynx.opt
memcmp.c
memcpy.c
memmove.c
memset.c
netbsd-aout.h
netbsd-elf.h
netbsd.h re PR target/41246 (should "sorry" when regparm=3 and nested functions are encountered) 2009-09-22 08:11:37 -07:00
newlib-stdint.h re PR c/448 (<stdint.h>-related issues (C99 issues)) 2009-03-31 21:30:31 +01:00
openbsd-libpthread.h config.gcc: Update OpenBSD targets. 2009-09-27 13:20:23 +00:00
openbsd-oldgas.h
openbsd-stdint.h openbsd-stdint.h: Change to reflect what c_common_nodes_and_builtins expects. 2009-11-08 22:19:45 +00:00
openbsd.h config.gcc: Update OpenBSD targets. 2009-09-27 13:20:23 +00:00
print-sysroot-suffix.sh config.gcc (sh-*-*): Add sysroot-suffix.h to tm_file. 2009-04-07 07:10:43 +00:00
rtems.h Make-lang.in, [...]: Update copyright years. 2010-04-02 19:54:46 +00:00
sol2-10.h
sol2-c.c Make-lang.in, [...]: Update copyright years. 2010-04-02 19:54:46 +00:00
sol2-gld.h configure.ac (plugin -rdynamic test): Log result. 2010-04-09 17:35:18 +00:00
sol2-protos.h sol2.c: Include output.h. 2010-03-31 09:19:20 +00:00
sol2.c sysv4.h (PUSHSECTION_FORMAT): Remove undef. 2010-03-31 10:42:56 +00:00
sol2.h configure.ac (plugin -rdynamic test): Log result. 2010-04-09 17:35:18 +00:00
svr3.h
svr4.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
sync.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
t-darwin Make-lang.in, [...]: Update copyright years. 2010-04-02 19:54:46 +00:00
t-dfprules
t-freebsd unwind-dw2-fde-glibc.c: Define and use USE_PT_GNU_EH_FRAME. 2009-09-22 16:28:26 +00:00
t-freebsd-thread
t-gnu
t-libc-ok
t-libgcc-pic
t-libunwind ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
t-libunwind-elf ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
t-linux ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
t-lynx ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
t-netbsd
t-openbsd
t-openbsd-thread
t-rtems
t-slibgcc-darwin
t-slibgcc-elf-ver t-slibgcc-elf-ver (SHLIB_MAKE_SOLINK, [...]): New variables. 2009-09-09 20:39:52 +02:00
t-slibgcc-libgcc t-slibgcc-elf-ver (SHLIB_MAKE_SOLINK, [...]): New variables. 2009-09-09 20:39:52 +02:00
t-slibgcc-nolc-override
t-slibgcc-sld ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
t-sol2 sol2.c: Include output.h. 2010-03-31 09:19:20 +00:00
t-svr4 inclhack.def (aix_syswait, [...]): Remove. 2009-03-28 06:51:09 +00:00
t-sysroot-suffix config.gcc (sh-*-*): Add sysroot-suffix.h to tm_file. 2009-04-07 07:10:43 +00:00
t-vxworks Makefile.in (COMPILER, [...]): Define. 2009-05-26 14:02:04 +00:00
tm-dwarf2.h
udivmod.c ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
udivmodsi4.c ABOUT-GCC-NLS, [...]: Add copyright and license notices. 2009-04-21 20:03:23 +01:00
usegas.h
vx-common.h Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
vxlib-tls.c vxlib-tls.c (active_tls_threads): Delete. 2009-04-23 10:39:24 +00:00
vxlib.c gthr-vxworks.h (struct __gthread_once_t): Add alignment and padding for PPC. 2009-04-22 10:53:53 +00:00
vxworks-dummy.h Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
vxworks.c Update Copyright years for files modified in 2008 and/or 2009. 2009-02-20 16:20:38 +01:00
vxworks.h
vxworks.opt
vxworksae.h
x-cflags-O1 re PR bootstrap/37739 (bootstrap broken with core gcc > gcc-4.2.x) 2008-12-19 15:55:42 +01:00
x-darwin Makefile.in (COMPILER, [...]): Define. 2009-05-26 14:02:04 +00:00
x-hpux Makefile.in (COMPILER, [...]): Define. 2009-05-26 14:02:04 +00:00
x-linux Makefile.in (COMPILER, [...]): Define. 2009-05-26 14:02:04 +00:00
x-solaris Makefile.in (COMPILER, [...]): Define. 2009-05-26 14:02:04 +00:00

README

This directory contains machine-specific files for the GNU C compiler.
It has a subdirectory for each basic CPU type.
The only files in this directory itself
are some .h files that pertain to particular operating systems
and are used for more than one CPU type.