Commit Graph

1042 Commits

Author SHA1 Message Date
H.J. Lu 5e9627caa4 Set need_64bit_hwint to yes for x86 targets.
gcc/

2011-07-28  H.J. Lu  <hongjiu.lu@intel.com>

	* config.gcc: Set need_64bit_hwint to yes for x86 targets.

libcpp/

2011-07-28  H.J. Lu  <hongjiu.lu@intel.com>

	* configure.ac: Set need_64bit_hwint to yes for x86 targets.
	* configure: Regenerated.

From-SVN: r176871
2011-07-28 07:29:38 -07:00
Rainer Orth 1500b428fd re PR target/47124 (*solaris2 configurations configure, but don't build)
PR target/47124
	* config.gcc: Reject *-*-solaris2 configuration.

From-SVN: r176751
2011-07-25 14:58:18 +00:00
Uros Bizjak 63708bf570 config.gcc (i[34567]86-*-linux*): Set default_gnu_indirect_function to yes.
* config.gcc (i[34567]86-*-linux*): Set
	default_gnu_indirect_function to yes.

From-SVN: r176628
2011-07-22 17:21:57 +02:00
Robert Millan 87f5355496 config.gcc (mips*-*-linux*): Remove redundant tm_file entry.
gcc/
2011-07-20  Robert Millan  <rmh@gnu.org>

	* config.gcc (mips*-*-linux*): Remove redundant tm_file entry.

From-SVN: r176535
2011-07-20 21:02:33 +00:00
Robert Millan 0baeec1b09 gnu-user.h: Copy from linux.h.
gcc/
2011-07-19  Robert Millan  <rmh@gnu.org>

	* config/mips/gnu-user.h: Copy from linux.h.  Update comments.
	(GLIBC_DYNAMIC_LINKER): Remove.

	* config/mips/gnu-user64.h: Copy from linux64.h.  Update comments.
	(GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64)
	(GLIBC_DYNAMIC_LINKERN32, UCLIBC_DYNAMIC_LINKERN32)
	(BIONIC_DYNAMIC_LINKERN32, GNU_USER_DYNAMIC_LINKERN32): Remove.
	(LINK_SPEC): Use GNU_USER_DYNAMIC_LINKER32,
	GNU_USER_DYNAMIC_LINKER64 and GNU_USER_LINK_EMULATIONN32.

	* config/mips/linux.h: Remove everything except for ...
	(GLIBC_DYNAMIC_LINKER): ... this macro.

	* config/mips/linux64.h: Remove everything except for ...
	(GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64)
	(GLIBC_DYNAMIC_LINKERN32, UCLIBC_DYNAMIC_LINKERN32)
	(BIONIC_DYNAMIC_LINKERN32): ... these macros.
	(GNU_USER_LINK_EMULATION32, GNU_USER_LINK_EMULATION64)
	(GNU_USER_LINK_EMULATIONN32): New macros.

	* config.gcc (mips64*-*-linux* | mipsisa64*-*-linux* |
	mips-*-linux*): Use the new headers.

From-SVN: r176479
2011-07-19 18:00:27 +00:00
Rainer Orth fbf80ef770 re PR bootstrap/49769 (configuration mismatch -- extra parts)
PR bootstrap/49769
	* config.gcc (alpha*-*-linux*): Add crtfastmath.o to extra_parts.
	(alpha*-*-freebsd*): Likewise.
	(i[34567]86-*-linux*, i[34567]86-*-kfreebsd*-gnu,
	i[34567]86-*-knetbsd*-gnu, i[34567]86-*-gnu*,
	i[34567]86-*-kopensolaris*-gnu): Add crtprec32.o, crtprec64.o,
	crtprec80.o, crtfastmath.o to extra_parts for all targets.
	(ia64*-*-elf*): Remove extra_parts.
	(sparc-*-linux*): Add crtfastmath.o to extra_parts.
	(sparc64-*-linux*): Likewise.
	(sparc64-*-freebsd*): Likewise.

	Revert:
	* config.gcc (ia64*-*-freebsd*): Remove crtfastmath.o from extra_parts.
	(ia64*-*-linux*): Likewise.
	(mips64*-*-linux*): Likewise.
	(mips*-*-linux*): Likewise.

From-SVN: r176406
2011-07-18 16:41:55 +00:00
Rainer Orth e44dbbe18b re PR debug/23205 ([C++/unit-at-a-time] stabs debug info omitted for global const variables)
toplevel:
	* configure: Regenerate.

	config:
	* elf.m4 (target_elf): Remove *-netware*.

	contrib:
	* config-list.mk (i586-netware): Remove.
	(.PHONY): Remove make-script-dir dependency.
	(make-script-dir): Remove.
	($(LIST)): Remove make-script-dir dependency.

	gcc:
	* config.gcc (i[3456x]86-*-netware*): Remove.

	* gthr-nks.h: Remove.
	* configure.ac (enable_threads): Remove nks.
	* configure: Regenerate.

	* config/i386/i386.c (ix86_encode_section_info): Remove netware
	reference.
	* config/i386/i386.h (KEEP_AGGREGATE_RETURN_POINTER): Remove
	<netware.h> reference.

	* config/i386/netware-libgcc.c,
	gcc/config/i386/netware-libgcc.def,
	gcc/config/i386/netware-libgcc.exp, gcc/config/i386/netware.c,
	gcc/config/i386/netware.h, gcc/config/i386/netware.opt,
	gcc/config/i386/nwld.c, gcc/config/i386/nwld.h,
	gcc/config/i386/t-netware, gcc/config/i386/t-nwld: Remove

	* doc/extend.texi (Function Attributes,
	callee_pop_aggregate_return): Remove i?86-netware reference.
	* doc/install.texi (Configuration, --enable-threads): Remove nks.

	gcc/testsuite:
	* g++.dg/ext/bitfield2.C: Remove i?86-*-netware support.
	* g++.dg/ext/bitfield3.C: Likewise.
	* g++.dg/ext/bitfield4.C: Likewise.
	* g++.dg/ext/bitfield5.C: Likewise.
	* g++.dg/other/PR23205.C: Remove *-*-netware* support.
	* g++.dg/other/pr23205-2.C: Likewise.
	* gcc.c-torture/compile/20001109-1.c: Remove dg-xfail-if.
	* gcc.c-torture/compile/20001109-2.c: Likewise.
	* gcc.dg/20040813-1.c: Remove *-*-netware* support.
	* gcc.dg/bitfld-15.c: Remove i?86-*-netware support.
	* gcc.dg/bitfld-16.c: Likewise.
	* gcc.dg/bitfld-17.c: Likewise.
	* gcc.dg/bitfld-18.c: Likewise.
	* gcc.dg/builtins-config.h: Remove Netware support.
	* gcc.dg/cdce1.c: Remove *-*-netware* support.  Update line number.
	* gcc.dg/cdce2.c: Likewise.
	* gcc.dg/cpp/assert4.c: Remove netware support.
	* gcc.dg/debug/pr35154.c: Remove *-*-netware* support.
	* gfortran.dg/debug/pr35154-stabs.f: Remove *-*-netware* support.

	* lib/target-supports.exp (check_visibility_available): Remove
	NetWare support.
	(check_profiling_available): Likewise.

	libgcc:
	* config.host (i[3456x]86-*-netware*): Remove.
	* config/i386/netware-crt0.c, config/i386/t-nwld,
	config/i386/t-slibgcc-nwld: Remove.

	libstdc++-v3:
	* crossconfig.m4 (*-netware): Remove.
	* configure: Regenerate.

From-SVN: r176391
2011-07-18 11:04:18 +00:00
Bernd Schmidt bcead286bf invoke.texi (C6X Options): New section.
gcc/
	* doc/invoke.texi (C6X Options): New section.
	* doc/md.texi (TI C6X family): New section.
	* config.gcc: Handle tic6x, in particular tic6x-*-elf and
	tic6x-*-uclinux.
	* longlong.h (add_ssaaaa, __umulsidi3, umul_ppmm,
	count_leading_zeros, count_trailing_zeros, UMUL_TIME, UDIV_TIME):
	Provide C6X definitions.
	* config/c6x/c6x.md: New file.
	* config/c6x/constraints.md: New file.
	* config/c6x/predicates.md: New file.
	* config/c6x/c6x-sched.md.in: New file.
	* config/c6x/c6x-sched.md: New file.
	* config/c6x/gensched.sh: New file.
	* config/c6x/c6x-mult.md.in: New file.
	* config/c6x/genmult.sh: New file.
	* config/c6x/c6x-mult.md: New file.
	* config/c6x/sync.md: New file.
	* config/c6x/c6x-protos.h: New file.
	* config/c6x/sfp-machine.h: New file.
	* config/c6x/c6x.c: New file.
	* config/c6x/c6x.h: New file.
	* config/c6x/crti.s: New file.
	* config/c6x/crtn.s: New file.
	* config/c6x/lib1funcs.asm: New file.
	* config/c6x/c6x-modes.def: New file.
	* config/c6x/genopt.sh: New file.
	* config/c6x/c6x.opt: New file.
	* config/c6x/c6x-tables.opt: New file.
	* config/c6x/c6x-opts.h: New file.
	* config/c6x/c6x-isas.def: New file.
	* config/c6x/elf.h: New file.
	* config/c6x/elf-common.h: New file.
	* config/c6x/uclinux-elf.h: New file.
	* config/c6x/t-c6x: New file.
	* config/c6x/t-c6x-elf: New file.
	* config/c6x/t-c6x-uclinux: New file.
	* config/c6x/t-c6x-softfp: New file.
	* config/c6x/gtd.c: New file.
	* config/c6x/gtf.c: New file.
	* config/c6x/ltd.c: New file.
	* config/c6x/ltf.c: New file.
	* config/c6x/ged.c: New file.
	* config/c6x/gef.c: New file.
	* config/c6x/led.c: New file.
	* config/c6x/lef.c: New file.
	* config/c6x/eqd.c: New file.
	* config/c6x/eqf.c: New file.
	* config/c6x/libgcc-c6xeabi.ver: New file.

contrib/
	* gcc_update: Add C6X generated files.
	* contrib/config-list.mk: Add c6x-elf and c6x-uclinux.

libgcc/
	* config.host: Handle tic6x-*-*.
	* config/c6x/c6x-abi.h: New file.

From-SVN: r176308
2011-07-15 09:36:40 +00:00
Rainer Orth d31fb329c8 Restore bootstrap on Linux/x86.
2011-07-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	PR bootstrap/49739
	* config.gcc (extra_parts): Add crtprec32.o crtprec64.o crtp
	rec80.o crtfastmath.o for Linux/x86.

From-SVN: r176261
2011-07-13 20:38:06 -07:00
Rainer Orth b3fe158425 crtprec.c: Move to ../libgcc/config/i386.
gcc:
	* config/i386/crtprec.c: Move to ../libgcc/config/i386.
	* config/i386/t-crtpc: Remove.
	* config/t-darwin (EXTRA_MULTILIB_PARTS): Remove.
	* config.gcc (i[34567]86-*-darwin*): Remove i386/t-crtpc from
	tmake_file.
	(x86_64-*-darwin*): Likewise.
	(i[34567]86-*-linux*): Likewise.
	(x86_64-*-linux*): Likewise.

	* config/i386/sol2.h (ENDFILE_SPEC): Redefine.
	Handle -mpc32, -mpc64, -mpc80.

	libgcc:
	* config/i386/crtprec.c: New file.
	* config/i386/t-crtpc: Use $(srcdir) to refer to crtprec.c.
	* config.host (i[34567]86-*-darwin*): Add i386/t-crtpc to tmake_file.
	Add crtprec32.o, crtprec64.o, crtprec80.o to extra_parts.
	(x86_64-*-darwin*): Likewise.
	(i[34567]86-*-solaris2*: Likewise.

	gcc/testsuite:
	* gcc.c-torture/execute/990127-2.x: Use -mpc64 on i?86-*-darwin*,
	i?86-*-solaris2*, x86_64-*-darwin*, x86_64-*-solaris2*.

From-SVN: r176242
2011-07-13 17:39:35 +00:00
Rainer Orth 35d8090d78 crtfastmath.c: Move to ../libgcc/config/alpha.
gcc:
	* config/alpha/crtfastmath.c: Move to ../libgcc/config/alpha.
	* config/alpha/t-crtfm: Remove.
	* config/i386/crtfastmath.c: Move to ../libgcc/config/i386.
	* config/i386/t-crtfm: Remove.
	* config/ia64/crtfastmath.c: Move to ../libgcc/config/ia64.
	* config/mips/crtfastmath.c: Move to ../libgcc/config/mips.
	* config/sparc/crtfastmath.c: Move to ../libgcc/config/sparc.
	* config/sparc/t-crtfm: Remove.

	* config.gcc (alpha*-*-linux*): Remove alpha/t-crtfm from tmake_file.
	(alpha*-*-freebsd*): Likewise.
	(i[34567]86-*-darwin*): Remove i386/t-crtfm from tmake_file.
	(x86_64-*-darwin*): Likewise.
	(i[34567]86-*-linux*): Likewise.
	(x86_64-*-linux*): Likewise.
	(x86_64-*-mingw*): Likewise.
	(ia64*-*-elf*): Remove crtfastmath.o from extra_parts.
	(ia64*-*-freebsd*): Likewise.
	(ia64*-*-linux*): Likewise.
	(mips64*-*-linux*): Likewise.
	(mips*-*-linux*): Likewise.
	(sparc-*-linux*): Remove sparc/t-crtfm from tmake_file.
	(sparc64-*-linux*): Likewise.
	(sparc64-*-freebsd*): Likewise.

	libgcc:
	* config/alpha/crtfastmath.c: New file.
	* config/i386/crtfastmath.c: New file.
	* config/ia64/crtfastmath.c: New file.
	* config/mips/crtfastmath.c: New file.
	* config/sparc/crtfastmath.c: New file.

	* config/t-crtfm (crtfastmath.o): Use $(srcdir) to refer to
	crtfastmath.c.
	Add -frandom-seed=gcc-crtfastmath.
	* config/alpha/t-crtfm: Remove.
	* config/i386/t-crtfm: Use $(srcdir) to refer to crtfastmath.c.
	* config/ia64/t-ia64 (crtfastmath.o): Remove.

	* config.host (alpha*-*-linux*): Replace alpha/t-crtfm by t-crtfm.
	(alpha*-dec-osf5.1*): Likewise.
	(alpha*-*-freebsd*): Add t-crtfm to tmake_file.
	Add crtfastmath.o to extra_parts.
	(i[34567]86-*-darwin*): Add i386/t-crtfm to tmake_file.
	Add crtfastmath.o to extra_parts.
	(x86_64-*-darwin*): Likewise.
	(x86_64-*-mingw*): Likewise.
	(ia64*-*-elf*): Add t-crtfm to tmake_file.
	(ia64*-*-freebsd*): Likewise.
	(ia64*-*-linux*): Likewise.
	(sparc64-*-freebsd*): Add t-crtfm to tmake_file.
	Add crtfastmath.o to extra_parts.

From-SVN: r176241
2011-07-13 17:33:38 +00:00
Rainer Orth e141542e74 darwin-crt2.c: Move to ../libgcc/config/rs6000.
gcc:
	* config/darwin-crt2.c: Move to ../libgcc/config/rs6000.
	* config/darwin-crt3.c: Move to ../libgcc/config.
	* config/t-darwin (EXTRA_MULTILIB_PARTS): Remove.
	($(T)crt3$(objext)): Remove.
	* config/rs6000/t-darwin (DARWIN_EXTRA_CRT_BUILD_CFLAGS): Remove.
	($(T)crt2$(objext)): Remove.
	* config.gcc (powerpc-*-darwin*): Remove extra_parts.
	(powerpc64-*-darwin*): Likewise.

	gcc/po:
	* EXCLUDES (config/darwin-crt2.c): Remove.

	libgcc:
	* config/darwin-crt3.o: New file.
	* config/rs6000/darwin-crt2.c: New file.
	* config/t-darwin: New file.
	* config/rs6000/t-darwin (DARWIN_EXTRA_CRT_BUILD_CFLAGS): New variable.
	(crt2.o): New rule.
	* config.host (*-*-darwin*): Add crt3.o to extra_parts.
	(powerpc-*-darwin*): Add crt2.o to extra_parts.
	(powerpc64-*-darwin*): Likewise.

From-SVN: r176239
2011-07-13 16:28:30 +00:00
Rainer Orth 2d1efe2d2d Makefile.in (CRT0STUFF_T_CFLAGS): Remove.
gcc:
	* Makefile.in (CRT0STUFF_T_CFLAGS): Remove.
	($(T)crt0.o, $(T)mcrt0.o, s-crt0): Remove.
	* config/i386/netware-crt0.c: Move to ../libgcc/config/i386.
	* config/i386/t-nwld (CRTSTUFF_T_CFLAGS, CRT0STUFF_T_CFLAGS): Remove.
	(CRT0_S, MCRT0_S): Remove.
	($(T)libgcc.def, $(T)libc.def, $(T)libcpre.def, $(T)posixpre.def):
	Remove.
	(s-crt0): Remove.
	* config.gcc (i[3456x]86-*-netware*): Remove extra_parts.

	libgcc:
	* config/i386/netware-crt0.c: New file.
	* config/i386/t-nwld: Rename to ...
	* config/i386/t-slibgcc-nwld: ... this.
	* config/i386/t-nwld: New file.
	* config.host (i[3456x]86-*-netware*): Add i386/t-slibgcc-nwld to
	tmake_file.
	Add crt0.o, libgcc.def, libc.def, libcpre.def, posixpre.def to
	extra_parts.

From-SVN: r176225
2011-07-13 09:57:08 +00:00
Harsha Jagasia 4d652a1865 AMD bdver2 Enablement
2011-07-12  Harsha Jagasia  <harsha.jagasia@amd.com>

	AMD bdver2 Enablement
	* config.gcc (i[34567]86-*-linux* | ...): Add bdver2.
	(case ${target}): Add bdver2.
	* config/i386/driver-i386.c (host_detect_local_cpu): Let
	-march=native recognize bdver2 processors.
	* config/i386/i386-c.c (ix86_target_macros_internal): Add
	bdver2 def_and_undef
	* config/i386/i386.c (struct processor_costs bdver2_cost): New
	bdver2 cost table.
	(m_BDVER2): New definition.
	(m_AMD_MULTIPLE): Includes m_BDVER2.
	(initial_ix86_tune_features): Add bdver2 tuning.
	(processor_target_table): Add bdver2 entry.
	(static const char *const cpu_names): Add bdver2 entry.
	(ix86_option_override_internal): Add bdver2 instruction sets.
	(ix86_issue_rate): Add bdver2.
	(ix86_adjust_cost): Add bdver2.
	(has_dispatch): Add bdver2.
	* config/i386/i386.h (TARGET_BDVER2): New definition.
	(enum target_cpu_default): Add TARGET_CPU_DEFAULT_bdver2.
	(enum processor_type): Add PROCESSOR_BDVER2.
	* config/i386/i386.md (define_attr "cpu"): Add bdver2.
	* config/i386/i386.opt ( mdispatch-scheduler): Add bdver2 to
	description.

From-SVN: r176209
2011-07-12 16:26:02 +00:00
Rainer Orth 2d8d59352b dfp-bit.c, dfp-bit.h: Move to ../libgcc.
gcc:
	* config/dfp-bit.c, config/dfp-bit.h: Move to ../libgcc.
	* config/t-dfprules: Move to ../libgcc/config.
	* config.gcc (i[34567]86-*-linux*, i[34567]86-*-kfreebsd*-gnu,
	i[34567]86-*-knetbsd*-gnu, i[34567]86-*-gnu*,
	i[34567]86-*-kopensolaris*-gnu): Remove t-dfprules from tmake_file.
	(x86_64-*-linux*, x86_64-*-kfreebsd*-gnu, x86_64-*-knetbsd*-gnu):
	Likewise.
	(i[34567]86-*-cygwin*): Likewise.
	(i[34567]86-*-mingw*,  x86_64-*-mingw*): Likewise.
	(powerpc-*-linux*, powerpc64-*-linux*): Likewise.
	* Makefile.in (D32PBIT_FUNCS, D64PBIT_FUNCS, D128PBIT_FUNCS): Remove.
	(libgcc.mvars): Remove DFP_ENABLE, DFP_CFLAGS, D32PBIT_FUNCS,
	D64PBIT_FUNCS, D128PBIT_FUNCS.

	libgcc:
	* dfp-bit.c, dfp-bit.h: New files.
	* Makefile.in (D32PBIT_FUNCS, D64PBIT_FUNCS, D128PBIT_FUNCS): New
	variables.
	($(d32pbit-o)): Use $(srcdir) to refer to dfp-bit.c
	($(d64pbit-o)): Likewise.
	($(d128pbit-o)): Likewise.
	* config/t-dfprules: New file.
	* config.host (i[34567]86-*-linux*): Add t-dfprules to tmake_file.
	(i[34567]86-*-kfreebsd*-gnu, i[34567]86-*-knetbsd*-gnu,
	i[34567]86-*-gnu*, i[34567]86-*-kopensolaris*-gnu): Likewise.
	(x86_64-*-linux*): Likewise.
	(x86_64-*-kfreebsd*-gnu, x86_64-*-knetbsd*-gnu): Likewise.
	(i[34567]86-*-cygwin*): Likewise.
	(i[34567]86-*-mingw*,  x86_64-*-mingw*): Likewise.
	(powerpc-*-linux*, powerpc64-*-linux*): Likewise.

From-SVN: r176156
2011-07-11 14:40:56 +00:00
Arthur Loiret f305422365 config.gcc (s390-*-linux*): If 'enabled_targets' is 'all', build a bi-arch compiler defaulting to 31-bit.
2011-07-11  Arthur Loiret  <aloiret@debian.org>

        * config.gcc (s390-*-linux*): If 'enabled_targets' is 'all', build
        a bi-arch compiler defaulting to 31-bit. In this case:
        (tmake_file): Add s390/t-linux64.
        * doc/install.texi: Add s390-linux to the list of targets supporting
        --enable-targets=all.

From-SVN: r176146
2011-07-11 11:41:56 +00:00
Arthur Loiret bd5ab709de config.gcc (mips*-*-linux*): If 'enabled_targets' is 'all'...
2011-07-11  Arthur Loiret  <aloiret@debian.org>
            Matthias Klose <doko@debian.org>

        * config.gcc (mips*-*-linux*): If 'enabled_targets' is 'all', build
        a tri-arch compiler defaulting to 32-bit (ABI o32). In this case:
        (tm_file): Add mips/linux64.h.
        (tmake_file): Add mips/t-linux64.
        (tm_defines): Add MIPS_ABI_DEFAULT=ABI_32.
        * config/mips/linux64.h (DRIVER_SELF_SPECS): Use MULTILIB_ABI_DEFAULT
        instead of hardcoded mabi=n32.
        * config/mips/t-linux64 (MULTILIB_DIRNAMES): Set to 'n32 . 64' if
        tm_defines contains MIPS_ABI_DEFAULT ABI_32, to follow the glibc
        convention.

Co-Authored-By: Matthias Klose <doko@debian.org>

From-SVN: r176145
2011-07-11 11:22:15 +00:00
Joseph Myers 1e4b2746e0 config.gcc (*local*): Remove.
gcc:
	* config.gcc (*local*): Remove.
	* doc/install-old.texi: Don't mention local configurations.

libgcc:
	* config.host (*local*): Remove.

From-SVN: r175988
2011-07-07 17:33:18 +01:00
H.J. Lu f0ea75811a Initial x32 support.
2011-07-07  H.J. Lu  <hongjiu.lu@intel.com>

	* config.gcc: Support --with-multilib-list for x86 Linux
	targets.

	* configure.ac: Mention x86-64 for --with-multilib-list.
	* configure: Regenerated.

	* config/i386/gnu-user64.h (SPEC_64): Support x32.
	(SPEC_32): Likewise.
	(ASM_SPEC): Likewise.
	(LINK_SPEC): Likewise.
	(TARGET_THREAD_SSP_OFFSET): Likewise.
	(TARGET_THREAD_SPLIT_STACK_OFFSET): Likewise.
	(SPEC_X32): New.

	* config/i386/i386.h (TARGET_X32): New.
	(TARGET_LP64): New.
	(LONG_TYPE_SIZE): Likewise.
	(POINTER_SIZE): Likewise.
	(POINTERS_EXTEND_UNSIGNED): Likewise.
	(OPT_ARCH64): Support x32.
	(OPT_ARCH32): Likewise.

	* config/i386/i386.opt (mx32): New.

	* config/i386/kfreebsd-gnu64.h (GNU_USER_LINK_EMULATIONX32): New.
	(GLIBC_DYNAMIC_LINKERX32): Likewise.
	* config/i386/linux64.h (GNU_USER_LINK_EMULATIONX32): Likewise.
	(GLIBC_DYNAMIC_LINKERX32): Likewise.

	* config/linux.h (UCLIBC_DYNAMIC_LINKERX32): New.
	(BIONIC_DYNAMIC_LINKERX32): Likewise.
	(GNU_USER_DYNAMIC_LINKERX32): Likewise.

	* config/i386/t-linux64: Support TM_MULTILIB_CONFIG.

	* doc/install.texi: Document --with-multilib-list for
	Linux/x86-64.

	* doc/invoke.texi: Document -mx32.

From-SVN: r175984
2011-07-07 08:38:34 -07:00
Joseph Myers 41dfca871e common-target-def.h (TARGET_HAVE_NAMED_SECTIONS): Don't default based on TARGET_ASM_NAMED_SECTION.
* common/common-target-def.h (TARGET_HAVE_NAMED_SECTIONS): Don't
	default based on TARGET_ASM_NAMED_SECTION.
	* common/common-target.def (have_named_sections): Default to true.
	* common/config/default-common.c: Don't include tm.h.
	* common/config/picochip/picochip-common.c
	(TARGET_HAVE_NAMED_SECTIONS): Don't define.
	* common/config/m32c/m32c-common.c: Remove.
	* config.gcc (m32c*-*-*): Set target_has_targetm_common=no.
	* config/alpha/osf5.h (TARGET_HAVE_NAMED_SECTIONS): Define to
	false.
	* config/i386/openbsd.h (TARGET_HAVE_NAMED_SECTIONS): Define to
	false.
	* config/m68k/openbsd.h (TARGET_HAVE_NAMED_SECTIONS): Define to
	false.
	* config/pa/som.h (TARGET_HAVE_NAMED_SECTIONS): Define to false.
	* config/pdp11/pdp11.h (TARGET_HAVE_NAMED_SECTIONS): Define to
	false.
	* config/vax/openbsd.h (TARGET_HAVE_NAMED_SECTIONS): Define to
	false.

From-SVN: r175969
2011-07-07 14:22:44 +01:00
Rainer Orth fbdd5d8715 re PR bootstrap/39150 (Configure scripts have no 64-Bit Solaris defined (only i386-solaris*).)
gcc:
	PR target/39150
	* configure.ac (gcc_cv_as_hidden): Also accept
	x86_64-*-solaris2.1[0-9]*.
	(gcc_cv_as_cfi_directive): Likewise.
	(gcc_cv_as_comdat_group_group): Likewise.
	(set_have_as_tls): Likewise.
	* configure: Regenerate.
	* config.gcc (i[34567]86-*-solaris2*): Also handle
	x86_64-*-solaris2.1[0-9]*.
	* config.host (i[34567]86-*-solaris2*): Likewise.
	* config/sparc/sol2.h (ASM_CPU_DEFAULT_SPEC): Remove.
	* config/sol2-bi.h (ASM_CPU_DEFAULT_SPEC): Redefine.
	[USE_GLD] (ARCH_DEFAULT_EMULATION): Define.
	(TARGET_LD_EMULATION): Use it.
	* config/i386/sol2.h (ASM_CPU_DEFAULT_SPEC): Define.
	(SUBTARGET_CPU_EXTRA_SPECS): Add asm_cpu_default.
	* config/i386/sol2-bi.h (ASM_CPU32_DEFAULT_SPEC): Define.
	(ASM_CPU64_DEFAULT_SPEC): Define.
	(ASM_CPU_SPEC): Use %(asm_cpu_default).
	(ASM_SPEC): Redefine.
	(DEFAULT_ARCH32_P): Define using TARGET_64BIT_DEFAULT.
	* config/host-solaris.c [__x86_64__] (TRY_EMPTY_VM_SPACE): Reduce.
	* doc/install.texi (Specific, amd64-*-solaris2.1[0-9]*):
	Document.
	(Specific, i?86-*-solaris2.10): Mention x86_64-*-solaris2.1[0-9]*
	configuration.
	(Specific, x86_64-*-solaris2.1[0-9]*): Document.

	gcc/ada:
	PR target/39150
	* gcc-interface/Makefile.in: Handle x86_64-solaris2.

	libgcc:
	PR target/39150
	* config.host (*-*-solaris2*): Handle x86_64-*-solaris2.1[0-9]*
	like i?86-*-solaris2.1[0-9]*.
	(i[34567]86-*-solaris2*): Also handle x86_64-*-solaris2.1[0-9]*.
	* configure.ac (i?86-*-solaris2*): Likewise.
	* configure: Regenerate.

	gcc/testsuite:
	PR target/39150
	* gcc.misc-tests/linkage.exp: Handle x86_64-*-solaris2.1[0-9]*.

	toplevel:
	PR target/39150
	* configure.ac (i[3456789]86-*-solaris2*): Also accept
	x86_64-*-solaris2.1[0-9]*.
	* configure: Regenerate.

	boehm-gc:
	PR target/39150
	* configure.ac (i?86-*-solaris2.[89]): Also accept
	x86_64-*-solaris2.1?.
	* configure: Regenerate.

	gnattools:
	PR target/39150
	* configure.ac (*86-*-solaris2*): Also accept
	x86_64-*-solaris2.1[0-9]*.
	* configure: Regenerate.

	libcpp:
	PR target/39150
	* configure.ac (host_wide_int): Handle x86_64-*-solaris2.1[0-9]
	like i[34567]86-*-solaris2.1[0-9]*.
	* configure: Regenerate.

	libgo:
	PR target/39150
	* config/libtool.m4: Handle x86_64-*-solaris2.1[0-9]* like
	i?86-*-solaris*.
	* configure: Regenerate.

	libjava:
	PR target/39150
	* configure.host (x86_64-*): Add -Usun to libgcj_flags.
	(x86_64-*-solaris2.1[0-9]*): New case.
	(i?86-*-solaris2*): Also accept x86_64-*-solaris2.1[0-9]*.

From-SVN: r175958
2011-07-07 09:24:16 +00:00
Rainer Orth 179fc656fa config.gcc: Obsolete alpha*-dec-osf5.1, mips-sgi-irix6.5.
* config.gcc: Obsolete alpha*-dec-osf5.1, mips-sgi-irix6.5.
	* doc/install.texi (Specific, alpha*-dec-osf5.1): Document it.
	(Specific, mips-sgi-irix6): Likewise.

From-SVN: r175751
2011-07-01 09:25:29 +00:00
Chen Liqin 7474f71976 config.gcc (score-*-elf): Remove score7.o.
2011-07-01  Chen Liqin  <liqin.gcc@gmail.com>

        * config.gcc (score-*-elf): Remove score7.o.
        * config/score/t-score-elf: Likewise.
        * config/score/score.c: Merge score7 to score.c and remove forwarding functions.
        * config/score/score7.c: Deleted.
        * config/score/score7.h: Deleted.

From-SVN: r175747
2011-07-01 07:51:38 +00:00
Rainer Orth 6138f9bd87 sol2-64.h (TARGET_DEFAULT): Remove.
* config/sparc/sol2-64.h (TARGET_DEFAULT): Remove.
	(TARGET_64BIT_DEFAULT): Define.
	* config.gcc (sparc*-*-solaris2*): Move sparc/sol2-64.h to front
	of tm_file.
	* config/sparc/sol2.h [TARGET_64BIT_DEFAULT] (TARGET_DEFAULT): Define.

From-SVN: r175593
2011-06-28 17:50:50 +00:00
Georg-Johann Lay 880962aca2 config.gcc (tm_file): Add elfos.h and avr/elf.h for avr-*-* and avr-*-rtems* targets.
* config.gcc (tm_file): Add elfos.h and avr/elf.h for 
	avr-*-* and avr-*-rtems* targets.
	* config/avr/elf.h: New file.
	(ASM_OUTPUT_BEFORE_CASE_LABEL): Define.
	(TARGET_ASM_SELECT_SECTION): Define.
	(INIT_SECTION_ASM_OP): Undefine.
	(FINI_SECTION_ASM_OP): Undefine.
	(READONLY_DATA_SECTION_ASM_OP): Undefine.
	(PCC_BITFIELD_TYPE_MATTERS): Undefine.
	(TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): Undefine.
	* config/avr/avr.h:
	(PREFERRED_DEBUGGING_TYPE): Move to elf.h.
	(TARGET_ASM_NAMED_SECTION): Move to elf.h.
	(MAX_OFILE_ALIGNMENT): Move to elf.h.
	(STRING_LIMIT): Move to elf.h.
	(ASM_DECLARE_FUNCTION_NAME): Move to elf.h.
	(ASM_DECLARE_OBJECT_NAME): Remove.
	(ESCAPES): Remove.
	(ASM_OUTPUT_SKIP): Remove.
	(DWARF2_DEBUGGING_INFO): Remove.
	(OBJECT_FORMAT_ELF): Remove.
	(USER_LABEL_PREFIX): Remove.
	(ASM_OUTPUT_EXTERNAL): Remove.
	(ASM_OUTPUT_ASCII): Remove.
	(TYPE_ASM_OP): Remove.
	(SIZE_ASM_OP): Remove.
	(WEAK_ASM_OP): Remove.
	(STRING_ASM_OP): Remove.
	(SET_ASM_OP): Remove.
	(ASM_WEAKEN_LABEL): Remove.
	(TYPE_OPERAND_FMT): Remove.
	(ASM_DECLARE_FUNCTION_SIZE): Remove.
	(ASM_FINISH_DECLARE_OBJECT): Remove.
	(NO_DOLLAR_IN_LABEL): Remove.
	(ASM_GENERATE_INTERNAL_LABEL): Remove.
	(ASM_OUTPUT_CASE_LABEL): Remove.
	* config/avr/avr.c (avr_asm_output_aligned_decl_common): Use
	ASM_OUTPUT_ALIGNED_LOCAL, ASM_OUTPUT_ALIGNED_COMMON.
	(gas_output_ascii): Remove.
	(gas_output_limited_string): Remove.
	(TARGET_ASM_FILE_START_FILE_DIRECTIVE): Remove.
	* config/avr/avr-protos.h
	(gas_output_ascii): Remove prototye.
	(gas_output_limited_string): Remove prototype.

From-SVN: r175575
2011-06-28 07:26:09 +00:00
Tristan Gingold db8b22ef49 re PR target/44241 (vms-crtl.h, vms-crtl-64.h need many more symbols)
2011-06-27  Tristan Gingold  <gingold@adacore.com>

	PR target/44241
	* config/vms/vms-protos.h: New file.
	* config/vms/vms-crtlmap.map: New file.
	* config/vms/vms.c: New file.
	* config/vms/make-crtlmap.awk: New file.
	* config/vms/vms-crtl.h: File removed.
	* config/vms/vms-crtl-64.h: File removed.
	* config/vms/t-vms (vms-crtlmap.h, vms.o): New targets.
	* config/alpha/vms64.h: Do not include vms-crtl-64.h
	* config/alpha/alpha.c (alpha_init_builtins): Remove code to
	clear some builtins on VMS.  Calls vms_patch_builtins.
	(avms_asm_output_external): Remove.
	* config/alpha/vms.h (ASM_OUTPUT_EXTERNAL): Remove.
	(struct crtl_name_spec): Remove
	(DO_CTRL_NAMES): Remove.
	* config/ia64/vms.h (struct crtl_name_spec): Remove
	(DO_CTRL_NAMES): Remove.
	* config/ia64/ia64.c (alpha_init_builtins): Remove code to
	clear some builtins on VMS.  Calls vms_patch_builtins.
	(ia64_asm_output_external): Remove DO_CRTL_NAME.
	* config/ia64/vms64.h: Do not include vms-crtl-64.h
	* config.gcc (*-*-*vms*): Define extra_objs, target_gtfiles,
	tm_p_file.

From-SVN: r175523
2011-06-27 12:51:09 +00:00
Nathan Sidwell 7cf13d1f46 arm.h (OPTION_DEFAULT_SPECS): Fix -mtls-dialect typo.
* config/arm/arm.h (OPTION_DEFAULT_SPECS): Fix -mtls-dialect
	typo.
	* config.gcc (arm*-*-linux*): Default to gnu tls.
	(arm*-*-*): Add --with-tls option.
	(all_defaults): Add 'tls'.

From-SVN: r175298
2011-06-22 17:01:17 +00:00
Joseph Myers 1b916ca624 gcc_update (gcc/config/avr/avr-tables.opt): New dependencies.
contrib:
	* gcc_update (gcc/config/avr/avr-tables.opt): New dependencies.

gcc:
	* config/avr/avr-mcus.def, config/avr/genopt.sh: New files.
	* config/avr/avr-tables.opt: New file (generated).
	* config.gcc (avr-*-*): Use avr/avr-tables.opt.
	* config/avr/avr-devices.c (avr_mcu_types): Move contents to
	avr-mcus.def.
	* config/avr/avr.c (avr_help, TARGET_HELP): Remove.
	(avr_option_override): Don't process -mmcu= argument here.  Set
	avr_current_device using avr_mcu_index.
	(avr_file_start): Use avr_current_device->name instead of
	avr_mcu_name.
	* config/avr/avr.opt (mmcu=): Use Enum.
	* config/avr/t-avr (avr-devices.o): Update dependencies.
	($(srcdir)/config/avr/avr-tables.opt): New.
	* target.def (help): Remove.
	* doc/tm.texi.in (TARGET_HELP): Remove.
	* doc/tm.texi: Regenerate.
	* opts.c: Don't include target.h.
	(common_handle_option): Don't call targetm.help.
	* system.h (TARGET_HELP): Poison.
	* Makefile.in (opts.o): Update dependencies.

From-SVN: r175248
2011-06-21 11:22:19 +01:00
Rainer Orth 7ecfa34f84 usegld.h: New file.
* config/usegld.h: New file.
	* config/sol2.h (PREFERRED_DEBUGGING_TYPE): Remove.
	(CPP_SUBTARGET_SPEC): Remove -compat-bsd support.
	(LIB_SPEC): Likewise.
	Search /lib.
	(LINK_ARCH32_SPEC_BASE): Remove -compat-bsd support.
	(RDYNAMIC_SPEC): Handle GNU ld.
	[HAVE_LD_EH_FRAME_HDR && TARGET_DL_ITERATE_PHDR] (LINK_EH_SPEC): Define.
	(SUPPORTS_INIT_PRIORITY): Only disable for Sun ld.
	(SUBTARGET_INSERT_ATTRIBUTES, SUBTARGET_ATTRIBUTE_TABLE): Define.
	[!USE_GAS] (NO_DBX_BNSYM_ENSYM): Redefine.
	(STACK_CHECK_STATIC_BUILTIN): Define.
	* config/sol2.opt (compat-bsd): Remove.
	* config/sol2-10.h (TARGET_C99_FUNCTIONS): Remove undef.
	* config/sol2-bi.h: New file.
	* config/sol2-gld.h: Remove.
	* config/i386/sol2.h (TLS_COMMON_ASM_OP): Only define if !USE_GAS.
	(NO_DBX_BNSYM_ENSYM): Remove.
	(SUBTARGET_INSERT_ATTRIBUTES, SUBTARGET_ATTRIBUTE_TABLE): Remove.
	(STACK_CHECK_STATIC_BUILTIN): Remove.
	Test USE_GLD instead of TARGET_GNU_LD.
	* config/i386/sol2-10.h: Rename to ...
	* config/i386/sol2-bi.h .. this.
	(SUBTARGET_EXTRA_SPECS): Redefine.
	(WCHAR_TYPE, WCHAR_TYPE_SIZE, WINT_TYPE, WINT_TYPE_SIZE): Remove.
	(MULTILIB_DEFAULTS): Remove.
	(DEFAULT_ARCH32_P): Define.
	(LINK_ARCH64_SPEC_BASE, LINK_ARCH64_SPEC): Remove.
	(ARCH64_SUBDIR): Define.
	Test USE_GLD instead of TARGET_GNU_LD.
	(I386_EMULATION): Rename to ...
	(ARCH32_EMULATION): ... this.
	(X86_64_EMULATION): Rename to ...
	(ARCH64_EMULATION): ... this.
	(TARGET_LD_EMULATION): Remove.
	(LINK_ARCH_SPEC): Remove.
	* config/i386/sol2-gas.h: Remove.
	* config/i386/t-sol2-10: Rename to ...
	* config/i386/t-sol2-64: ... this.
	* config/sparc/sol2.h (SPARC_DEFAULT_CMODEL): Redefine.
	(AS_SPARC64_FLAG): Define.
	(ASM_CPU32_DEFAULT_SPEC, ASM_CPU64_DEFAULT_SPEC): Redefine.
	(CPP_CPU64_DEFAULT_SPEC, ASM_CPU32_DEFAULT_SPEC): Redefine
	depending on TARGET_CPU_DEFAULT.
	(CPP_CPU_SPEC): Redefine.
	(ASM_CPU_SPEC): Handle DEFAULT_ARCH32_P.
	(CPP_CPU_DEFAULT_SPEC, ASM_CPU_DEFAULT_SPEC): Redefine.
	(CPP_ARCH32_SPEC, CPP_ARCH64_SPEC, CPP_ARCH_SPEC): Redefine.
	(ASM_ARCH_SPEC, ASM_ARCH32_SPEC, ASM_ARCH64_SPEC,
	ASM_ARCH_DEFAULT_SPEC): Redefine.
	(SUBTARGET_EXTRA_SPECS): Add LINK_ARCH32_SPEC, LINK_ARCH64_SPEC,
	LINK_ARCH_DEFAULT_SPEC.
	[USE_GLD] (ARCH32_EMULATION, ARCH64_EMULATION): Define.
	[USE_GLD] (LINK_ARCH32_SPEC, LINK_ARCH64_SPEC): Redefine.
	(ARCH64_SUBDIR): Define.
	(LINK_ARCH64_SPEC): Redefine.
	(CC1_SPEC): Redefine.
	(OPTION_DEFAULT_SPECS): Redefine.
	(MULTILIB_DEFAULTS): Define.
	(WCHAR_TYPE, WCHAR_TYPE_SIZE, WINT_TYPE, WINT_TYPE_SIZE): Redefine.
	[USE_GAS && HAVE_AS_TLS] (TARGET_SUN_TLS, TARGET_GNU_TLS): Redefine.
	[USE_GLD] (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Undef.
	(NO_DBX_BNSYM_ENSYM): Remove.
	(SUBTARGET_INSERT_ATTRIBUTES, SUBTARGET_ATTRIBUTE_TABLE): Remove.
	(ASM_OUTPUT_ALIGN_WITH_NOP): Only define if !USE_GAS.
	(TARGET_ASM_NAMED_SECTION): Likewise.
	(STACK_CHECK_STATIC_BUILTIN): Remove.
	* config/sparc/sol2-bi.h: Remove.
	* config/sparc/sol2-gas-bi.h: Remove.
	* config/sparc/sol2-gas.h: Remove.
	* config/sparc/sol2-gld-bi.h: Remove.
	* config.gcc (i[34567]86-*-solaris2*, sparc*-*-solaris2*): Move
	common parts ...
	(*-*-solaris2*): ... here.

From-SVN: r175245
2011-06-21 08:53:06 +00:00
Nick Clifton fd4df33d4e re PR target/49427 (v850e-elf wants 850e/v850e-common.c)
PR target/49427
	* config.gcc: Set cpu_type to v850 for any V850 architecture.
	(v850*-*-*): Delete explicit setting of tm_p_file, tmake_file,
	md_file, extra_modes, out_file and extra_options are these are all
	deduced from cpu_type.

From-SVN: r175100
2011-06-16 10:21:05 +00:00
Joseph Myers 677f3fa815 target-def.h (TARGET_HAVE_NAMED_SECTIONS): Move to common/common-target-def.h.
* target-def.h (TARGET_HAVE_NAMED_SECTIONS): Move to
	common/common-target-def.h.
	* target.def (default_target_flags, handle_option,
	supports_split_stack, optimization_table, init_struct,
	except_unwind_info, unwind_tables_default, have_named_sections):
	Move to common/common-target.def.
	* target.h (enum opt_levels, struct default_options): Move to
	common/common-target.h.
	* targhooks.c (default_except_unwind_info,
	dwarf2_except_unwind_info, sjlj_except_unwind_info,
	default_target_handle_option, empty_optimization_table): Move to
	common/common-targhooks.c.
	* targhooks.h (default_except_unwind_info,
	dwarf2_except_unwind_info, sjlj_except_unwind_info,
	default_target_handle_option, empty_optimization_table): Move to
	common/common-targhooks.h.
	* common/common-target-def.h: Include common/common-targhooks.h.
	(TARGET_HAVE_NAMED_SECTIONS): Define if TARGET_ASM_NAMED_SECTION
	defined.
	* common/common-target.def (handle_option, option_init_struct,
	option_optimization_table, default_target_flags,
	except_unwind_info, supports_split_stack, unwind_tables_default,
	have_named_sections): Move from target.def.
	(HOOK_PREFIX): Undefine at end of file.
	* common/common-target.h: Include input.h.
	(enum opt_levels, struct default_options): Move from target.h.
	* common/common-targhooks.c, common/common-targhooks.h: New.
	* config.gcc (target_has_targetm_common): Default to yes.
	(moxie*): Set target_has_targetm_common=no.
	(hppa*-*-*): Don't set target_has_targetm_common=yes.
	* doc/tm.texi: Regenerate.
	* Makefile.in (COMMON_TARGET_H): Add $(INPUT_H).
	(C_TARGET_DEF_H): Add common/common-targhooks.h.
	(GCC_OBJS): Remove vec.o.
	(OBJS): Remove hooks.o and vec.o.
	(OBJS-libcommon-target): Add vec.o, hooks.o and
	common/common-targhooks.o.
	(c-family/c-common.o, c-family/c-cppbuiltin.o, lto-opts.o, tree.o,
	tree-tailcall.o, opts.o, toplev.o, varasm.o, function.o, except.o,
	expr.o, explow.o, dbxout.o, dwarf2out.o, cfgrtl.o, haifa-sched.o,
	cfglayout.o, $(out_object_file), $(common_out_object_file)):
	Update dependencies.
	(common/common-targhooks.o): New.
	* common/config/default-common.c: Include tm.h.  Add FIXME
	comment.
	* common/config/pa/pa-common.c: Include more headers.  Take
	copyright dates from pa.c.
	(pa_option_optimization_table, pa_handle_option,
	TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_DEFAULT_TARGET_FLAGS,
	TARGET_HANDLE_OPTION): Move from pa.c.
	* common/config/alpha/alpha-common.c,
	common/config/arm/arm-common.c, common/config/avr/avr-common.c,
	common/config/bfin/bfin-common.c,
	common/config/cris/cris-common.c,
	common/config/fr30/fr30-common.c, common/config/frv/frv-common.c,
	common/config/h8300/h8300-common.c,
	common/config/i386/i386-common.c,
	common/config/ia64/ia64-common.c,
	common/config/iq2000/iq2000-common.c,
	common/config/lm32/lm32-common.c,
	common/config/m32c/m32c-common.c,
	common/config/m32r/m32r-common.c,
	common/config/m68k/m68k-common.c,
	common/config/mcore/mcore-common.c,
	common/config/mep/mep-common.c,
	common/config/microblaze/microblaze-common.c,
	common/config/mips/mips-common.c,
	common/config/mmix/mmix-common.c,
	common/config/mn10300/mn10300-common.c,
	common/config/pdp11/pdp11-common.c,
	common/config/picochip/picochip-common.c,
	common/config/rs6000/rs6000-common.c,
	common/config/rx/rx-common.c, common/config/s390/s390-common.c,
	common/config/score/score-common.c, common/config/sh/sh-common.c,
	common/config/sparc/sparc-common.c,
	common/config/spu/spu-common.c, common/config/v850/v850-common.c,
	common/config/vax/vax-common.c,
	common/config/xstormy16/xstormy16-common.c,
	common/config/xtensa/xtensa-common.c: New.
	* config/alpha/alpha.c: Include common/common-target.h.
	(alpha_option_optimization_table, alpha_handle_option,
	TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
	TARGET_OPTION_OPTIMIZATION_TABLE): Move to alpha-common.c.
	* config/arm/arm-protos.h (arm_except_unwind_info): Declare.
	* config/arm/arm.c (arm_option_optimization_table,
	TARGET_DEFAULT_TARGET_FLAGS, TARGET_OPTION_OPTIMIZATION_TABLE,
	TARGET_EXCEPT_UNWIND_INFO, arm_except_unwind_info): Move to
	arm-common.c.
	* config/avr/avr.c (avr_option_optimization_table,
	TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_EXCEPT_UNWIND_INFO): Move
	to avr-common.c.
	* config/bfin/bfin.c (struct bfin_cpu): Move to bfin.h.
	(bfin_cpus, bfin_handle_option, TARGET_HANDLE_OPTION,
	TARGET_DEFAULT_TARGET_FLAGS): Move to bfin-common.c.
	* config/bfin/bfin.h struct bfin_cpu): Move from bfin.c.
	* config/cris/cris.c (cris_option_optimization_table,
	TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
	TARGET_OPTION_OPTIMIZATION_TABLE, cris_handle_option): Move to
	cris-common.c.
	* config/fr30/fr30.c (fr30_option_optimization_table,
	TARGET_EXCEPT_UNWIND_INFO, TARGET_OPTION_OPTIMIZATION_TABLE): Move
	to fr30-common.c.
	* config/frv/frv.c (frv_option_optimization_table,
	MASK_DEFAULT_ALLOC_CC, TARGET_DEFAULT_TARGET_FLAGS,
	TARGET_OPTION_OPTIMIZATION_TABLE): Move to frv-common.c.
	* config/h8300/h8300.c (h8300_option_optimization_table,
	TARGET_DEFAULT_TARGET_FLAGS, TARGET_OPTION_OPTIMIZATION_TABLE,
	TARGET_EXCEPT_UNWIND_INFO): Move to h8300-common.c.
	* config/i386/i386-protos.h (ix86_handle_option): Declare.
	* config/i386/i386.c: Include common/common-target.h.
	(OPTION_MASK_ISA_MMX_SET, OPTION_MASK_ISA_3DNOW_SET,
	OPTION_MASK_ISA_SSE_SET, OPTION_MASK_ISA_SSE2_SET,
	OPTION_MASK_ISA_SSE3_SET, OPTION_MASK_ISA_SSSE3_SET,
	OPTION_MASK_ISA_SSE4_1_SET, OPTION_MASK_ISA_SSE4_2_SET,
	OPTION_MASK_ISA_AVX_SET, OPTION_MASK_ISA_FMA_SET,
	OPTION_MASK_ISA_SSE4_SET, OPTION_MASK_ISA_SSE4A_SET,
	OPTION_MASK_ISA_FMA4_SET, OPTION_MASK_ISA_XOP_SET,
	OPTION_MASK_ISA_LWP_SET, OPTION_MASK_ISA_AES_SET,
	OPTION_MASK_ISA_PCLMUL_SET, OPTION_MASK_ISA_ABM_SET,
	OPTION_MASK_ISA_BMI_SET, OPTION_MASK_ISA_TBM_SET,
	OPTION_MASK_ISA_POPCNT_SET, OPTION_MASK_ISA_CX16_SET,
	OPTION_MASK_ISA_SAHF_SET, OPTION_MASK_ISA_MOVBE_SET,
	OPTION_MASK_ISA_CRC32_SET, OPTION_MASK_ISA_FSGSBASE_SET,
	OPTION_MASK_ISA_RDRND_SET, OPTION_MASK_ISA_F16C_SET,
	OPTION_MASK_ISA_MMX_UNSET, OPTION_MASK_ISA_3DNOW_UNSET,
	OPTION_MASK_ISA_3DNOW_A_UNSET, OPTION_MASK_ISA_SSE_UNSET,
	OPTION_MASK_ISA_SSE2_UNSET, OPTION_MASK_ISA_SSE3_UNSET,
	OPTION_MASK_ISA_SSSE3_UNSET, OPTION_MASK_ISA_SSE4_1_UNSET,
	OPTION_MASK_ISA_SSE4_2_UNSET, OPTION_MASK_ISA_AVX_UNSET,
	OPTION_MASK_ISA_FMA_UNSET, OPTION_MASK_ISA_SSE4_UNSET,
	OPTION_MASK_ISA_SSE4A_UNSET, OPTION_MASK_ISA_FMA4_UNSET,
	OPTION_MASK_ISA_XOP_UNSET, OPTION_MASK_ISA_LWP_UNSET,
	OPTION_MASK_ISA_AES_UNSET, OPTION_MASK_ISA_PCLMUL_UNSET,
	OPTION_MASK_ISA_ABM_UNSET, OPTION_MASK_ISA_BMI_UNSET,
	OPTION_MASK_ISA_TBM_UNSET, OPTION_MASK_ISA_POPCNT_UNSET,
	OPTION_MASK_ISA_CX16_UNSET, OPTION_MASK_ISA_SAHF_UNSET,
	OPTION_MASK_ISA_MOVBE_UNSET, OPTION_MASK_ISA_CRC32_UNSET,
	OPTION_MASK_ISA_FSGSBASE_UNSET, OPTION_MASK_ISA_RDRND_UNSET,
	OPTION_MASK_ISA_F16C_UNSET, ix86_handle_option,
	ix86_option_optimization_table, ix86_option_init_struct,
	ix86_supports_split_stack, TARGET_DEFAULT_TARGET_FLAGS,
	TARGET_HANDLE_OPTION, TARGET_OPTION_OPTIMIZATION_TABLE,
	TARGET_OPTION_INIT_STRUCT, TARGET_SUPPORTS_SPLIT_STACK): Move to
	i386-common.c.
	* config/i386/t-i386 (i386.o): Update dependencies.
	* config/ia64/ia64-protos.h (ia64_except_unwind_info): Declare.
	* config/ia64/ia64.c (ia64_option_optimization_table,
	TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_EXCEPT_UNWIND_INFO,
	TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
	ia64_handle_option): Move to ia64-common.c.
	* config/iq2000/iq2000.c (iq2000_option_optimization_table,
	TARGET_OPTION_OPTIMIZATION_TABLE): Move to iq2000-common.c.
	* config/lm32/lm32.c (lm32_option_optimization_table,
	TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_EXCEPT_UNWIND_INFO): Move
	to lm32-common.c.
	* config/m32c/m32c.c (TARGET_HAVE_NAMED_SECTIONS): Move to
	m32c-common.c.
	* config/m32r/m32r.c (m32r_option_optimization_table,
	TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
	TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_EXCEPT_UNWIND_INFO,
	m32r_handle_option): Move to m32r-common.c.
	(m32r_memory_move_cost): Remove comment referring to
	TARGET_HANDLE_OPTION.
	* config/m68k/m68k.c (TARGET_HANDLE_OPTION, m68k_handle_option):
	Move to m68k-common.c.
	* config/mcore/mcore.c (mcore_option_optimization_table,
	TARGET_DEFAULT_TARGET_FLAGS, TARGET_OPTION_OPTIMIZATION_TABLE,
	TARGET_EXCEPT_UNWIND_INFO): Move to mcore-common.c.
	* config/mep/mep.c (mep_option_optimization_table,
	mep_handle_option, TARGET_HANDLE_OPTION,
	TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_DEFAULT_TARGET_FLAGS):
	Move to mep-common.c.
	* config/microblaze/microblaze.c
	(microblaze_option_optimization_table,
	TARGET_DEFAULT_TARGET_FLAGS, TARGET_OPTION_OPTIMIZATION_TABLE,
	TARGET_EXCEPT_UNWIND_INFO): Move to microblaze-common.c.
	* config/mips/mips.c (mips_handle_option,
	mips_option_optimization_table, TARGET_OPTION_OPTIMIZATION_TABLE,
	TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Move to
	mips-common.c.
	* config/mmix/mmix.c (mmix_option_optimization_table,
	TARGET_DEFAULT_TARGET_FLAGS, TARGET_OPTION_OPTIMIZATION_TABLE):
	Move to mmix-common.c.
	* config/mn10300/mn10300.c (mn10300_option_optimization_table,
	mn10300_handle_option, TARGET_EXCEPT_UNWIND_INFO,
	TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
	TARGET_OPTION_OPTIMIZATION_TABLE): Move to mn10300-common.c.
	* config/pa/pa.c: Include common/common-target.h.
	(pa_option_optimization_table, TARGET_OPTION_OPTIMIZATION_TABLE,
	TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
	pa_handle_option): Move to pa-common.c.
	(pa_option_override): Use targetm_common.except_unwind_info.
	(pa_asm_output_mi_thunk, pa_function_section): Use
	targetm_common.have_named_sections.
	* config/pdp11/pdp11.c (pdp11_option_optimization_table,
	TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
	TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_OPTION_INIT_STRUCT,
	pdp11_handle_option, pdp11_option_init_struct): Move to
	pdp11-common.c.
	* config/picochip/picochip.c (picochip_option_optimization_table,
	TARGET_HAVE_NAMED_SECTIONS, TARGET_OPTION_OPTIMIZATION_TABLE,
	TARGET_EXCEPT_UNWIND_INFO): Move to picochip-common.c.
	* config/rs6000/rs6000.c: Include common/common-target.h.
	(rs6000_option_optimization_table, TARGET_HANDLE_OPTION,
	TARGET_OPTION_INIT_STRUCT, TARGET_OPTION_OPTIMIZATION_TABLE,
	TARGET_DEFAULT_TARGET_FLAGS, rs6000_option_init_struct,
	rs6000_handle_option): Move to rs6000-common.c.
	* config/rs6000/t-rs6000 (rs6000.o): Update dependencies.
	* config/rx/rx.c (rx_handle_option, rx_option_optimization_table,
	TARGET_HANDLE_OPTION, TARGET_OPTION_OPTIMIZATION_TABLE,
	TARGET_EXCEPT_UNWIND_INFO): Move to rx-common.c.
	* config/s390/s390.c (processor_flags_table,
	s390_option_optimization_table, s390_option_init_struct,
	s390_handle_option, TARGET_DEFAULT_TARGET_FLAGS,
	TARGET_HANDLE_OPTION, TARGET_OPTION_OPTIMIZATION_TABLE,
	TARGET_OPTION_INIT_STRUCT): Move to s390-common.c.
	* config/s390/s390.h (processor_flags_table): Declare.
	* config/score/score.c (score_option_optimization_table,
	TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
	TARGET_OPTION_OPTIMIZATION_TABLE, MASK_ALL_CPU_BITS,
	score_handle_option): Move to score-common.c.
	* config/sh/sh.c (sh_option_optimization_table,
	TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_OPTION_INIT_STRUCT,
	TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
	sh_handle_option, sh_option_init_struct): Move to sh-common.c.
	* config/sparc/sparc.c: Include common/common-target.h.
	(sparc_option_optimization_table, TARGET_DEFAULT_TARGET_FLAGS,
	TARGET_OPTION_OPTIMIZATION_TABLE): Move to sparc-common.c.
	* config/spu/spu.c (TARGET_DEFAULT_TARGET_FLAGS,
	TARGET_OPTION_INIT_STRUCT, TARGET_EXCEPT_UNWIND_INFO,
	spu_option_init_struct): Move to spu-common.c.
	* config/stormy16/stormy16.c (xstorym16_option_optimization_table,
	TARGET_OPTION_OPTIMIZATION_TABLE): Move to xstormy16-common.c.
	* config/v850/v850.c (small_memory_physical_max,
	v850_handle_memory_optionn v850_handle_option,
	v850_option_optimization_table, TARGET_DEFAULT_TARGET_FLAGS,
	TARGET_HANDLE_OPTION, TARGET_OPTION_OPTIMIZATION_TABLE): Move to
	v850-common.c.
	* config/vax/vax.c (TARGET_DEFAULT_TARGET_FLAGS): Move to
	vax-common.c.
	* config/xtensa/xtensa.c (xtensa_option_optimization_table,
	TARGET_DEFAULT_TARGET_FLAGS, TARGET_OPTION_OPTIMIZATION_TABLE):
	Move to xtensa-common.c.
	* cfglayout.c: Include common/common-target.h.
	(fixup_reorder_chain): Use targetm_common.have_named_sections.
	* cfgrtl.c: Include common/common-target.h.
	(force_nonfallthru_and_redirect, commit_one_edge_insertion): Use
	targetm_common.have_named_sections.
	* dbxout.c: Include common/common-target.h.
	(dbxout_function_end): Use targetm_common.have_named_sections.
	* defaults.h (STACK_OLD_CHECK_PROTECT, STACK_CHECK_PROTECT): Use
	targetm_common.except_unwind_info.
	* dwarf2out.c: Include common/common-target.h.
	(dwarf2out_do_frame, dwarf2out_do_cfi_asm,
	dwarf2out_begin_prologue, dwarf2out_frame_init,
	dwarf2out_frame_finish, dwarf2out_assembly_start): Use
	targetm_common.except_unwind_info.
	* except.c: Include common/common-target.h.
	(init_eh, finish_eh_generation,
	output_one_function_exception_table): Use
	targetm_common.except_unwind_info.
	(switch_to_exception_section): Use
	targetm_common.have_named_sections.
	* explow.c: Include common/common-target.h.
	* expr.c: Include common/common-target.h.
	(build_personality_function): Use
	targetm_common.except_unwind_info.
	* function.c: Include common/common-target.h.
	(expand_function_end): Use targetm_common.except_unwind_info.
	* haifa-sched.c: Include common/common-target.h.
	(sched_create_recovery_edges): Use
	targetm_common.have_named_sections.
	* lto-opts.c: Include common/common-target.h instead of target.h.
	(lto_reissue_options): Use targetm_common.handle_option.
	* opts.c: Include common/common-target.h.
	(target_handle_option): Use targetm_common.handle_option.
	(init_options_struct): Update comment referring to
	targetm.target_option.optimization.  Use
	targetm_common.default_target_flags,
	targetm_common.unwind_tables_default and
	targetm_common.option_init_struct.
	(default_options_optimization): Use
	targetm_common.option_optimization_table.
	(finish_options): Use targetm_common.except_unwind_info,
	targetm_common.unwind_tables_default,
	targetm_common.have_named_sections and
	targetm_common.supports_split_stack.
	* toplev.c: Include common/common-target.h.
	(process_options): Use targetm_common.have_named_sections.
	* tree-tailcall.c: Include common/common-target.h.
	(suitable_for_tail_call_opt_p): Use
	targetm_common.except_unwind_info.
	* tree.c: Include common/common-target.h.
	(build_common_builtin_nodes): Use
	targetm_common.except_unwind_info.
	* varasm.c: Include common/common-target.h.
	(resolve_unique_section, hot_function_section,
	default_function_section): Use targetm_common.have_named_sections.

ada:
	* gcc-interface/Make-lang.in (gnatbind$(exeext)): Use ggc-none.o.
	(ada/utils.o): Update dependencies.
	* gcc-interface/Makefile.in (EXTRA_GNATTOOLS_OBJS): Add
	../../../libcpp/libcpp.a.
	* gcc-interface/utils.c: Include common/common-target.h.
	(process_attributes): Use targetm_common.have_named_sections.

c-family:
	* c-common.c: Include common/common-target.h.
	(handle_section_attribute): Use
	targetm_common.have_named_sections.
	* c-cppbuiltin.c: Include common/common-target.h.
	(c_cpp_builtins): Use targetm_common.except_unwind_info.

cp:
	* Make-lang.in (cp/method.o): Update dependencies.
	* method.c: Include common/common-target.h.
	(use_thunk): Use targetm_common.have_named_sections.

go:
	* Make-lang.in (go/go-lang.o, go/go-backend.o): Update
	dependencies.
	* go-backend.c: Include common/common-target.h.
	(go_write_export_data): Use targetm_common.have_named_sections.
	* go-lang.c: Include common/common-target.h.
	(go_langhook_init_options_struct): Use
	targetm_common.supports_split_stack.

po:
	* exgettext: Handle common/ directory and subdirectories.

From-SVN: r175064
2011-06-15 00:11:35 +01:00
Joseph Myers c49a696204 common-target-def.h, [...]: New files.
* common/common-target-def.h, common/common-target.def,
	common/common-target.h, common/config/default-common.c,
	common/config/pa/pa-common.c: New files.
	* Makefile.in (common_out_file, common_out_object_file,
	COMMON_TARGET_H, COMMON_TARGET_DEF_H): New.
	(OBJS-libcommon-target): Include $(common_out_object_file).
	(prefix.o): Update dependencies.
	($(common_out_object_file), common/common-target-hooks-def.h,
	s-common-target-hooks-def-h): New.
	(s-tm-texi): Also check timestamp on common-target.def.
	(build/genhooks.o): Update dependencies.
	* config.gcc (common_out_file, target_has_targetm_common): Define.
	* config/pa/som.h (ALWAYS_STRIP_DOTDOT): Replace with
	TARGET_ALWAYS_STRIP_DOTDOT.
	* configure.ac (common_out_object_file): Define.
	(common_out_file, common_out_object_file): Substitute.
	(common): Create directory.
	* configure: Regenerate.
	* doc/tm.texi.in (targetm_common): Document.
	(TARGET_ALWAYS_STRIP_DOTDOT): Add @hook entry.
	* doc/tm.texi: Regenerate.
	* genhooks.c (hook_array): Also include common/common-target.def.
	* prefix.c (tm.h): Don't include.
	(common/common-target.h): Include.
	(ALWAYS_STRIP_DOTDOT): Don't define.
	(update_path): Use targetm_common.always_strip_dotdot instead of
	ALWAYS_STRIP_DOTDOT.
	* system.h (ALWAYS_STRIP_DOTDOT): Poison.

From-SVN: r175052
2011-06-14 21:11:37 +01:00
Robert Millan 7d8d16c3d9 kfreebsd-gnu.h: Resync with `config/i386/linux.h'.
* config/i386/kfreebsd-gnu.h: Resync with `config/i386/linux.h'.
	* config/kfreebsd-gnu.h (GNU_USER_DYNAMIC_LINKER): Resync with
	`config/linux.h'.

	* config/i386/kfreebsd-gnu64.h: New file.
	* config.gcc (x86_64-*-kfreebsd*-gnu): Replace `i386/kfreebsd-gnu.h'
	with `i386/kfreebsd-gnu64.h'.

	* config/i386/linux64.h (GNU_USER_LINK_EMULATION32)
	(GNU_USER_LINK_EMULATION64): New macros.
	* config/i386/gnu-user64.h (LINK_SPEC): Rely on
	`GNU_USER_LINK_EMULATION32' and `GNU_USER_LINK_EMULATION64' instead
	of hardcoding `elf_i386' and `elf_x86_64'.

From-SVN: r175031
2011-06-14 17:32:55 +02:00
Nick Clifton 0ccef3d256 re PR target/49403 (v850e-elf: incompatible pointer type (near initialization for ‘targetm.memory_move_cost’))
PR target/49403
	* config/v850/v850.c (v850_memory_move_cost): Add reg_class_t parameter.

	PR target/49402
	* config.gcc(v850*-*-*): Avoid duplication of v850.opt.

From-SVN: r175030
2011-06-14 15:30:05 +00:00
Nick Clifton 1dcad07971 config.gcc: Unify V850 architecture options and add support for newer V850 architectures.
* config.gcc: Unify V850 architecture options and add support for
	newer V850 architectures.
	* config/v850/t-v850e: Delete.

From-SVN: r174744
2011-06-07 14:00:13 +00:00
Rainer Orth 737346fa24 config.gcc (mips-sgi-irix6.5*): Set tmake_file to mips/t-irix6 t-slibgcc-dummy.
gcc:
	* config.gcc (mips-sgi-irix6.5*): Set tmake_file to mips/t-irix6
	t-slibgcc-dummy.
	* config/mips/irix-crti.asm: Move to ../libgcc/config/mips/irix-crti.S.
	* config/mips/irix-crtn.asm: Move to ../libgcc/config/mips/irix-crtn.S.
	* config/mips/t-iris: Remove.
	* config/mips/t-irix6: New file.
	* config/mips/t-slibgcc-irix: Move to ../libgcc/config/mips.

	libgcc:
	* config.host (mips-sgi-irix[56]*): Restrict to mips-sgi-irix6.5*.
	Set tmake_file, extra_parts.
	* config/mips/irix-crti.S: Move from ../gcc/config/mips/irix-crti.asm.
	Remove O32 support.
	* config/mips/irix-crtn.S: Move from ../gcc/config/mips/irix-crtn.asm.
	Remove O32 support.
	* config/mips/t-irix6: New file.
	* config/mips/t-slibgcc-irix: New file.

From-SVN: r174608
2011-06-03 17:16:44 +00:00
Rainer Orth ee33b5f0b2 t-osf5: Remove.
gcc:
	* config/alpha/t-osf5: Remove.
	* config/alpha/t-osf-pthread: Remove.
	* config.gcc (alpha*-dec-osf5.1*): Set tmake_file to t-slibgcc-dummy.
	* mkmap-flat.awk: Handle osf_export for Tru64 UNIX linker -input file.

	libgcc:
	* configure.ac (target_thread_file): Determine thread model.
	* configure: Regenerate.
	* config.host (alpha*-dec-osf5.1*): Set tmake_file, extra_parts.
	* config/alpha/t-alpha: New file.
	* config/alpha/t-crtfm: Use $<.
	* config/alpha/t-ieee: New file.
	* config/alpha/t-osf-pthread: New file.
	* config/alpha/t-slibgcc-osf: New file.
	* config/alpha/libgcc-osf5.ver: New file.

From-SVN: r174603
2011-06-03 13:23:35 +00:00
Rainer Orth ca24c5ad73 t-slibgcc-darwin: Move to ...
gcc:
	* config/t-slibgcc-darwin: Move to ...
	* config/t-slibgcc-dummy: .. this.
	Clarify comments.
	* config.gcc (i[34567]86-*-darwin*, x86_64-*-darwin*,
	powerpc-*-darwin*, powerpc64-*-darwin*): Reflect this.
	(i[3456x]86-*-netware*): Add t-slibgcc-dummy to tmake_file.
	(i[34567]86-*-rtems*): Remove extra_parts.
	Use i386/t-rtems.
	Remove i386/t-crtstuff from tmake_file.
	(i[34567]86-*-solaris2*): Remove t-svr4,
	t-slibgcc-elf-ver, t-slibgcc-sld from tmake_file, add
	t-slibgcc-dummy.
	(sparc-*-elf*, sparc64-*-elf*): Remove tmake_file, extra_parts.
	(sparc-*-rtems*, sparc64-*-rtems*): Remove sparc/t-crtin,
	sparc/t-crtfm from tmake_file.
	(sparc*-*-solaris2*): Remove sparc/t-sol2, sparc/t-crtfm,
	t-slibgcc-elf-ver, t-slibgcc-sld, add t-slibgcc-dummy.
	Remove extra_parts.
	* config/t-sol2 (TARGET_LIBGCC2_CFLAGS): Define.
	* config/i386/t-nwld (SHLIB_LINK): Remove.
	* config/i386/t-rtems-i386: Rename to ...
	* config/i386/t-rtems: ... this.
	($(T)crti.o, $(T)crtn.o): Remove.
	(FPBIT, DPBIT, LIB2FUNCS_EXTRA): Remove.
	(dp-bit.c, fp-bit.c, xp-bit.c): Remove.
	(EXTRA_MULTILIB_PARTS, LIBGCC, INSTALL_LIBGCC): Remove.
	* config/i386/t-sol2-10 (LIBGCC, INSTALL_LIBGCC,
	EXTRA_MULTILIB_PARTS): Remove.
	* config/sparc/t-sol2-64: Likewise.
	* config/sparc/t-sol2: Remove.
	* config/sparc/t-crtin: Remove.
	* config/sparc/gmon-sol2.c: Move to ../libgcc/config.
	* config/i386/gmon-sol2.c: Remove.
	* config/i386/sol2-c1.asm: Move to ../libgcc/config/i386/sol2-c1.S.
	* config/i386/sol2-ci.asm: Move to ../libgcc/config/i386/sol2-ci.S.
	* config/i386/sol2-cn.asm: Move to ../libgcc/config/i386/sol2-cn.S.
	* config/i386/sol2-gc1.asm: Remove.
	* config/sparc/sol2-c1.asm: Move to ../libgcc/config/sparc/sol2-c1.S.
	* config/sparc/sol2-ci.asm: Move to ../libgcc/config/sparc/sol2-ci.S.
	* config/sparc/sol2-cn.asm: Move to ../libgcc/config/sparc/sol2-cn.S.
	* config/t-slibgcc-sld: Remove.

	libgcc:
	* Makefile.in (cpu_type): Define.
	* config.host (i[34567]86-*-rtems*): Handle it.
	(i[34567]86-*-solaris2*): Move body ...
	(*-*-solaris2*): ... here.
	New case, generalize.
	(sparc-*-elf*): Handle it.
	(sparc-*-linux*, sparc64-*-linux*): Replace sparc/t-crtfm by t-crtfm.
	(sparc-*-rtems*, sparc64-*-rtems*); Handle it.
	(sparc64-*-solaris2*, sparcv9-*-solaris2*, sparc-*-solaris2*):
	Fold into ...
	(sparc*-*-solaris2*): ... this.
	New case.
	(sparc64-*-elf*): Handle it.
	* config/gmon-sol2.c: Move from ../gcc/config/sparc.
	Merge ../gcc/config/i386/gmon-sol2.c.
	* config/i386/sol2-c1.S: Move from ../gcc/config/i386/sol2-c1.asm.
	Use C comments.
	Merge ../gcc/config/i386/sol2-gc1.asm.
	* config/i386/sol2-ci.S: Move from ../gcc/config/i386/sol2-ci.asm.
	Use C comments.
	* config/i386/sol2-cn.S: Move from ../gcc/config/i386/sol2-cn.asm.
	Use C comments.
	* config/i386/t-crtfm (crtfastmath.o): Use $<.
	* config/i386/t-crtstuff: New file.
	* config/i386/t-softfp: New file.
	* config/i386/t-sol2 ($(T)gmon.o, $(T)gcrt1.o, $(T)crt1.o),
	$(T)crti.o, $(T)crtn.o): Remove.
	(gcrt1.o): New rule.
	(TARGET_LIBGCC2_CFLAGS): Remove.
	* config/sparc/sol2-c1.S: Move from ../gcc/config/sparc/sol2-c1.asm.
	* config/sparc/sol2-ci.S: Move from ../gcc/config/sparc/sol2-ci.asm.
	* config/sparc/sol2-cn.S: Move from ../gcc/config/sparc/sol2-cn.asm.
	* config/sparc/t-sol2: New file.
	* config/sparc/t-crtfm: Move to ...
	* config/t-crtfm: ... this.
	Use $(cpu_type), $<.
	* config/t-crtin: New file.
	* config/sparc/t-softfp: New file.
	* config/sparc/t-softmul: New file.
	* config/t-rtems: New file.
	* config/t-slibgcc: New file.
	* config/t-slibgcc-elf-ver: New file.
	* config/t-slibgcc-gld: New file.
	* config/t-slibgcc-sld: New file.
	* config/t-sol2: New file.
	* configure.ac: Include ../config/lib-ld.m4.
	Call AC_LIB_PROG_LD_GNU.
	Substitute cpu_type.
	* configure: Regenerate.

From-SVN: r174529
2011-06-01 14:39:17 +00:00
Richard Sandiford 3fd7879d12 config.gcc: Keep obselete list sorted.
gcc/
	* config.gcc: Keep obselete list sorted.

From-SVN: r174442
2011-05-30 16:27:54 +00:00
Richard Sandiford 7ca2afa0c3 config.gcc: Deprecate mips*-*-openbsd*.
gcc/
	* config.gcc: Deprecate mips*-*-openbsd*.

From-SVN: r174379
2011-05-28 08:02:57 +00:00
Rainer Orth caee412b75 re PR target/3746 (compilation of mips-tfile missing mips/a.out.h)
PR target/3746
	* config.gcc (alpha*-dec-osf5.1*): Only build mips-tfile,
	mips-tdump native.
	* mips-tfile.c: Remove CROSS_DIRECTORY_STRUCTURE handling.
	* mips-tdump.c: Likewise.

From-SVN: r174128
2011-05-24 17:51:51 +00:00
Eric Botcazou 8ac798357f config.gcc (sparc-*-elf*): Add sparc/t-crtin.
* config.gcc (sparc-*-elf*): Add sparc/t-crtin.
	(sparc-*-rtems*): Likewise.
	(sparc64-*-elf*): Likewise.
	(sparc64-*-rtems*): Likewise.
	(sparc*-*-solaris2*): Likewise.  Remove crti.o crtn.o extra parts.
	* config/sparc/t-crtin: New file.
	* config/sparc/t-sol2 (crti.o): Delete rule.
	(crtn.o): Likewise.
	* config/sparc/t-linux64 (EXTRA_MULTILIB_PARTS): Delete.
	* config/sparc/t-sol2-64 (EXTRA_MULTILIB_PARTS): Likewise.
	* config/sparc/sp64-elf.h (STARTFILE_SPEC): Tidy and add crti.o.
	(ENDFILE_SPEC): Add crtn.o.

From-SVN: r174041
2011-05-22 20:01:01 +00:00
Joseph Myers 4a68b4ca4e config.gcc (i[34567]86-*-darwin*, [...]): Add i386/darwin-lib.h to $libgcc_tm_file.
gcc:
	* config.gcc (i[34567]86-*-darwin*, x86_64-*-darwin*): Add
	i386/darwin-lib.h to $libgcc_tm_file.
	* config/i386/darwin.h (DECLARE_LIBRARY_RENAMES): Remove.

libgcc:
	* config/i386/darwin-lib.h: New file.

From-SVN: r173622
2011-05-10 17:40:55 +01:00
Joseph Myers f10d3ac9bb gcc_update (gcc/config/rs6000/rs6000-tables.opt): New dependencies.
contrib:
	* gcc_update (gcc/config/rs6000/rs6000-tables.opt): New
	dependencies.

gcc:
	* config/rs6000/genopt.sh, config/rs6000/rs6000-cpus.def: New
	files.
	* config/rs6000/rs6000-tables.opt: New file (generated).
	* config.gcc (powerpc*-*-*, rs6000*-*-*): Add
	rs6000/rs6000-tables.opt to extra_options.
	* config/rs6000/rs6000-opts.h (RS6000_CPU_OPTION_NATIVE): Define.
	* config/rs6000/rs6000.c (rs6000_select): Remove.
	(processor_target_table): Move contents to rs6000-cpus.def.
	(darwin_rs6000_override_options): Check
	global_options_set.x_rs6000_cpu_index instead of
	rs6000_select[1].string.
	(rs6000_option_override_internal): Likewise.
	(rs6000_handle_option): Don't assert that global structures are in
	use.  Don't handle OPT_mcpu_ and OPT_mtune_ here.
	(rs6000_default_cpu): New variable.
	(rs6000_file_start): Set it instead of local default_cpu.  Check
	rs6000_default_cpu, global_options_set.x_rs6000_cpu_index and
	global_options_set.x_rs6000_tune_index instead of rs6000_select.
	(rs6000_darwin_file_start): Check rs6000_default_cpu and
	global_options_set.x_rs6000_cpu_index instead of rs6000_select.
	* config/rs6000/rs6000.h (struct rs6000_cpu_select,
	rs6000_select): Remove.
	* config/rs6000/rs6000.opt (rs6000_cpu_index, rs6000_tune_index):
	Remove.
	(mcpu=, mtune=): Use Var, Init, Enum and Save.
	* config/rs6000/t-rs6000
	($(srcdir)/config/rs6000/rs6000-tables.opt): New.
	* config/rs6000/eabispe.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Check
	global_options_set.x_rs6000_cpu_index instead of
	rs6000_select[1].string.
	* config/rs6000/linuxspe.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Check
	global_options_set.x_rs6000_cpu_index instead of
	rs6000_select[1].string.

From-SVN: r173620
2011-05-10 15:46:34 +01:00
Joseph Myers 80cf2e08cc config.gcc (libgcc_tm_file): Define instead of including files from ../../libgcc/config/ in tm_file.
gcc:
	* config.gcc (libgcc_tm_file): Define instead of including files
	from ../../libgcc/config/ in tm_file.
	* configure.ac (libgcc_tm_file_list, libgcc_tm_include_list):
	Define.
	* configure: Regenerate.
	* Makefile.in (libgcc_tm_file_list, libgcc_tm_include_list,
	libgcc_tm.h, cs-libgcc_tm.h): New.
	(TM_H): Include libgcc_tm.h and $(libgcc_tm_file_list).
	(clean): Remove libgcc_tm.h.
	* config/arm/symbian.h (RENAME_LIBRARY): Remove.
	* mkconfig.sh: Include libgcc_tm.h in tm.h if USED_FOR_TARGET.
	* system.h (DECLARE_LIBRARY_RENAMES): Poison.

libgcc:
	* config/arm/symbian-lib.h: New.

From-SVN: r173619
2011-05-10 15:41:47 +01:00
Joseph Myers d371df6f10 gcc_update (gcc/config/mips/mips-tables.opt): New dependencies.
contrib:
	* gcc_update (gcc/config/mips/mips-tables.opt): New dependencies.

gcc:
	* config/mips/genopt.sh, config/mips/mips-cpus.def: New files.
	* config/mips/mips-tables.opt: New file (generated).
	* config.gcc (mips*-*-*): Add mips/mips-tables.opt to
	extra_options.
	* config/mips/mips-opts.h (MIPS_ARCH_OPTION_FROM_ABI,
	MIPS_ARCH_OPTION_NATIVE): Define.
	* config/mips/mips.c (mips_cpu_info_table): Move contents to
	mips-cpus.def.
	(mips_strict_matching_cpu_name_p, mips_matching_cpu_name_p,
	mips_parse_cpu): Remove.
	(mips_cpu_info_from_opt, mips_default_arch): New.
	(mips_handle_option): Don't assert that global structures are in
	use.  Don't handle OPT_march_, OPT_mtune_ and OPT_mips here.
	(mips_option_override): Use new variables and functions to set
	state of these options.  Use strcmp to check for individual CPU
	names.
	* config/mips/mips.h (MIPS_CPU_STRING_DEFAULT): Remove default
	definition.
	* config/mips/mips.opt (march=): Use ToLower and Enum.
	(mips): Use ToLower, Enum and Var.
	(mtune=): Use ToLower and Enum.
	* config/mips/t-mips ($(srcdir)/config/mips/mips-tables.opt): New.

From-SVN: r173561
2011-05-09 10:40:19 +01:00
Steve Ellcey fc4538e41e config.gcc (hppa*64*-*-hpux11*): Modify tm_file and extra_options for 11.31.
2011-05-05  Steve Ellcey  <sje@cup.hp.com>

	* config.gcc (hppa*64*-*-hpux11*): Modify tm_file and extra_options
	for 11.31.
	(hppa[12]*-*-hpux11*): Ditto.
	(ia64*-*-hpux*): Add ia64/hpux-unix2003.h to tm_file.
	* config/ia64/hpux-unix2003.h: New.
	* config/pa/pa-hpux1131.opt: New.
	* config/pa/pa-hpux1131.h: New.
	* config/pa/pa64-hpux.h (STARTFILE_SPEC): Use unix2003.o if requested.
	* config/pa/pa-hpux.opt (flag_pa_unix): Check TARGET_HPUX_11_31 value.
	config/pa/pa.h (TARGET_HPUX_11_31): Provide default (0) value.

From-SVN: r173437
2011-05-05 15:49:28 +00:00
Joseph Myers 47c94d21e4 gcc_update (gcc/config/m68k/m68k-tables.opt): New dependencies.
contrib:
	* gcc_update (gcc/config/m68k/m68k-tables.opt): New dependencies.

gcc:
	* config/m68k/genopt.sh, config/m68k/m68k-isas.def,
	config/m68k/m68k-microarchs.def, config/m68k/m68k-opts.h,
	config/m68k/t-opts: New files.
	* config/m68k/m68k-tables.opt: New file (generated).
	* config.gcc (fido-*-*, m68k-*-*): Add m68k/m68k-tables.opt to
	extra_options and m68k/t-opts to tmake_file.
	* config/m68k/m68k.c (m68k_library_id_string): More to m68k.opt.
	(all_isas): Initialize using m68k-isas.def.
	(all_microarchs): Initialize using m68k-microarchs.def.
	(m68k_find_selection): Remove.
	(m68k_handle_option): Don't assert that global structures are in
	use.  Use error_at.  Access variables via opts pointer.  Don't
	handle -march=, -mcpu= and -mtune= here.  Set gcc_options fields
	directly for -m68020-40 and -m68020-60.
	(m68k_option_override): Set m68k_arch_entry, m68k_cpu_entry and
	m68k_tune_entry here.
	* config/m68k/m68k.h (enum uarch_type, enum target_device): Move
	to m68k-opts.h.
	(m68k_library_id_string): Remove declaration.
	* config/m68k/m68k.opt (config/m68k/m68k-opts.h): New
	HeaderInclude.
	(m68k_library_id_string): New Variable.
	(march=, mcpu=, mtune=): Use Enum and Var.

From-SVN: r173256
2011-05-02 16:42:39 +01:00
Joseph Myers 6c0170eaf1 * config.gcc (*-*-kfreebsd*-gnu | *-*-knetbsd*-gnu | *-*-gnu* |
*-*-kopensolaris*-gnu): Don't define SINGLE_LIBC.
	(i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu |
	i[34567]86-*-gnu* | i[34567]86-*-kopensolaris*-gnu,
	x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu): Don't use
	linux*.h headers.
	* config/gnu-user.h (TARGET_C99_FUNCTIONS, TARGET_HAS_SINCOS):
	Define.
	* config/i386/gnu.h (MD_UNWIND_SUPPORT): Don't undefine.
	* config/i386/kfreebsd-gnu.h (MD_UNWIND_SUPPORT): Don't undefine.
	* config/i386/knetbsd-gnu.h (MD_UNWIND_SUPPORT): Don't undefine.
	* config/i386/kopensolaris-gnu.h (MD_UNWIND_SUPPORT): Don't
	undefine.
	* config/i386/linux-unwind.h (x86_fallback_frame_state): Don't use
	REG_NAME.
	* config/i386/linux.h (REG_NAME): Don't define.
	* config/i386/linux64.h (REG_NAME): Don't define.
	* config/linux.h (TARGET_C99_FUNCTIONS, TARGET_HAS_SINCOS):
	Undefine before defining.

From-SVN: r173119
2011-04-28 17:49:49 +01:00
Tristan Gingold 18a24fed72 config.gcc (-*-*-*vms): Added.
2011-04-19  Tristan Gingold  <gingold@adacore.com>

	* config.gcc (-*-*-*vms): Added.
	(alpha64-dec-*vms*,alpha*-dec-*vms*, ia64-hp-*vms*): Common
	definitions moved.
	* config/vms/vms-ld.c: New file.
	* config/vms/vms-ar.c: New file.
	* config/vms/t-vmsnative: New file.

From-SVN: r172695
2011-04-19 08:10:49 +00:00