X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Fconfig.gcc;h=7d00a6c2a089f443a692b1b687f28740812c960f;hb=cd238b8dc6b5d7eb99de6ddf7c28118100ffbc4b;hp=7c318dea3a440a24e3a985216d9132bfb55211e0;hpb=b0a47c393be19a812da5fa51603d7b3c65c717ae;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/config.gcc b/gcc/config.gcc index 7c318dea3a4..7d00a6c2a08 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -1,6 +1,6 @@ # GCC target-specific configuration file. # Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, -# 2008, 2009, 2010, 2011 Free Software Foundation, Inc. +# 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. #This file is part of GCC. @@ -90,6 +90,9 @@ # out_file The name of the machine description C support # file, if different from "$cpu_type/$cpu_type.c". # +# common_out_file The name of the source file for code shared between +# the compiler proper and the driver. +# # md_file The name of the machine-description file, if # different from "$cpu_type/$cpu_type.md". # @@ -129,9 +132,6 @@ # extra_passes List of extra executables compiled for this target # machine, used for compiling from source to object. # -# extra_parts List of extra object files that should be compiled -# for this target machine. -# # extra_programs Like extra_passes, but these are used when linking. # # extra_options List of target-dependent .opt files. @@ -177,6 +177,13 @@ # configure_default_options # Set to an initializer for configure_default_options # in configargs.h, based on --with-cpu et cetera. +# +# native_system_header_dir +# Where system header files are found for this +# target. This defaults to /usr/include. If +# the --with-sysroot configure option or the +# --sysroot command line option is used this +# will be relative to the sysroot. # The following variables are used in each case-construct to build up the # outgoing variables: @@ -186,8 +193,12 @@ # # target_has_targetcm Set to yes or no depending on whether the target # has its own definition of targetcm. +# +# target_has_targetm_common Set to yes or no depending on whether the +# target has its own definition of targetm_common. out_file= +common_out_file= tmake_file= extra_headers= user_headers_inc_next_pre= @@ -195,7 +206,6 @@ user_headers_inc_next_post= use_gcc_tgmath=yes use_gcc_stdint=none extra_passes= -extra_parts= extra_programs= extra_objs= extra_gcc_objs= @@ -204,6 +214,7 @@ c_target_objs= cxx_target_objs= fortran_target_objs= target_has_targetcm=no +target_has_targetm_common=yes tm_defines= xm_defines= # Set this to force installation and use of collect2. @@ -223,6 +234,7 @@ default_gnu_indirect_function=no target_gtfiles= need_64bit_hwint= need_64bit_isa= +native_system_header_dir=/usr/include # Don't carry these over build->host->target. Please. xm_file= @@ -230,7 +242,9 @@ md_file= # Obsolete configurations. case ${target} in - i[34567]86-*-interix3* \ + alpha*-dec-osf5.1* \ + | mips-sgi-irix6.5 \ + | mips*-*-openbsd* \ | score-* \ | *-*-solaris2.8* \ ) @@ -262,6 +276,7 @@ case ${target} in | *-*-linux*oldld* \ | *-*-rtemsaout* \ | *-*-rtemscoff* \ + | *-*-solaris2 \ | *-*-solaris2.[0-7] \ | *-*-solaris2.[0-7].* \ | *-*-sysv* \ @@ -282,6 +297,7 @@ case ${target} in m32c*-*-*) cpu_type=m32c tmake_file=m32c/t-m32c + target_has_targetm_common=no ;; alpha*-*-*) cpu_type=alpha @@ -302,6 +318,7 @@ avr-*-*) cpu_type=avr c_target_objs="avr-c.o" cxx_target_objs="avr-c.o" + extra_options="${extra_options} avr/avr-tables.opt" ;; bfin*-*) cpu_type=bfin @@ -313,22 +330,26 @@ frv*) cpu_type=frv extra_options="${extra_options} g.opt" ;; moxie*) cpu_type=moxie + target_has_targetm_common=no ;; fido-*-*) cpu_type=m68k extra_headers=math-68881.h + extra_options="${extra_options} m68k/m68k-tables.opt" ;; i[34567]86-*-*) cpu_type=i386 c_target_objs="i386-c.o" cxx_target_objs="i386-c.o" + need_64bit_hwint=yes extra_options="${extra_options} fused-madd.opt" extra_headers="cpuid.h mmintrin.h mm3dnow.h xmmintrin.h emmintrin.h pmmintrin.h tmmintrin.h ammintrin.h smmintrin.h nmmintrin.h bmmintrin.h fma4intrin.h wmmintrin.h immintrin.h x86intrin.h avxintrin.h xopintrin.h ia32intrin.h cross-stdarg.h lwpintrin.h popcntintrin.h - abmintrin.h bmiintrin.h tbmintrin.h" + lzcntintrin.h bmiintrin.h bmi2intrin.h tbmintrin.h + avx2intrin.h fmaintrin.h f16cintrin.h" ;; x86_64-*-*) cpu_type=i386 @@ -340,7 +361,8 @@ x86_64-*-*) nmmintrin.h bmmintrin.h fma4intrin.h wmmintrin.h immintrin.h x86intrin.h avxintrin.h xopintrin.h ia32intrin.h cross-stdarg.h lwpintrin.h popcntintrin.h - abmintrin.h bmiintrin.h tbmintrin.h" + lzcntintrin.h bmiintrin.h tbmintrin.h bmi2intrin.h + avx2intrin.h fmaintrin.h f16cintrin.h" need_64bit_hwint=yes ;; ia64-*-*) @@ -360,6 +382,7 @@ m32r*-*-*) ;; m68k-*-*) extra_headers=math-68881.h + extra_options="${extra_options} m68k/m68k-tables.opt" ;; microblaze*-*-*) cpu_type=microblaze @@ -369,7 +392,7 @@ mips*-*-*) cpu_type=mips need_64bit_hwint=yes extra_headers="loongson.h" - extra_options="${extra_options} g.opt" + extra_options="${extra_options} g.opt mips/mips-tables.opt" ;; picochip-*-*) cpu_type=picochip @@ -383,11 +406,11 @@ powerpc*-*-*) cpu_is_64bit=yes ;; esac - extra_options="${extra_options} g.opt fused-madd.opt" + extra_options="${extra_options} g.opt fused-madd.opt rs6000/rs6000-tables.opt" ;; rs6000*-*-*) need_64bit_hwint=yes - extra_options="${extra_options} g.opt fused-madd.opt" + extra_options="${extra_options} g.opt fused-madd.opt rs6000/rs6000-tables.opt" ;; score*-*-*) cpu_type=score @@ -395,6 +418,9 @@ score*-*-*) ;; sparc*-*-*) cpu_type=sparc + c_target_objs="sparc-c.o" + cxx_target_objs="sparc-c.o" + extra_headers="visintrin.h" need_64bit_hwint=yes ;; spu*-*-*) @@ -411,9 +437,25 @@ sh[123456789lbe]*-*-* | sh-*-*) cpu_type=sh need_64bit_hwint=yes ;; +v850*-*-*) + cpu_type=v850 + ;; +tic6x-*-*) + cpu_type=c6x + extra_headers="c6x_intrinsics.h" + extra_options="${extra_options} c6x/c6x-tables.opt" + ;; xtensa*-*-*) extra_options="${extra_options} fused-madd.opt" ;; +tilegx*-*-*) + cpu_type=tilegx + need_64bit_hwint=yes + ;; +tilepro-*-*) + cpu_type=tilepro + need_64bit_hwint=yes + ;; esac tm_file=${cpu_type}/${cpu_type}.h @@ -510,24 +552,15 @@ case ${target} in # pleases around the provided core setting. gas=yes gnu_ld=yes - extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o" fbsd_major=`echo ${target} | sed -e 's/.*freebsd//g' | sed -e 's/\..*//g'` tm_defines="${tm_defines} FBSD_MAJOR=${fbsd_major}" - tmake_file="t-slibgcc-elf-ver t-freebsd" + tmake_file="t-slibgcc" case ${enable_threads} in no) fbsd_tm_file="${fbsd_tm_file} freebsd-nthr.h" ;; "" | yes | posix) thread_file='posix' - tmake_file="${tmake_file} t-freebsd-thread" - # Before 5.0, FreeBSD can't bind shared libraries to -lc - # when "optionally" threaded via weak pthread_* checks. - case ${target} in - *-*-freebsd[34] | *-*-freebsd[34].*) - tmake_file="${tmake_file} t-slibgcc-nolc-override" - ;; - esac ;; *) echo 'Unknown thread configuration for FreeBSD' @@ -547,26 +580,24 @@ case ${target} in ;; *-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu | *-*-gnu* | *-*-kopensolaris*-gnu) extra_options="$extra_options gnu-user.opt" - extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o" gas=yes gnu_ld=yes case ${enable_threads} in "" | yes | posix) thread_file='posix' ;; esac - tmake_file="t-slibgcc-elf-ver t-linux" + tmake_file="t-slibgcc" case $target in *-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu | *-*-kopensolaris*-gnu) :;; *-*-gnu*) - tmake_file="$tmake_file t-gnu";; + native_system_header_dir=/include + ;; esac # glibc / uclibc / bionic switch. # uclibc and bionic aren't usable for GNU/Hurd and neither for GNU/k*BSD. case $target in *linux*) extra_options="$extra_options linux.opt";; - *) - tm_defines="$tm_defines SINGLE_LIBC";; esac case $target in *-*-*android*) @@ -602,7 +633,7 @@ case ${target} in esac ;; *-*-netbsd*) - tmake_file="t-slibgcc-elf-ver t-libc-ok t-netbsd t-libgcc-pic" + tmake_file="t-slibgcc" gas=yes gnu_ld=yes @@ -623,15 +654,6 @@ case ${target} in ;; esac - # NetBSD 1.7 and later are set up to use GCC's crtstuff for - # ELF configurations. We will clear extra_parts in the - # a.out configurations. - case ${target} in - *-*-netbsd*1.[7-9]* | *-*-netbsd[2-9]* | *-*-netbsdelf[2-9]*) - extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o" - ;; - esac - # NetBSD 2.0 and later provide __cxa_atexit(), which we use by # default (unless overridden by --disable-__cxa_atexit). case ${target} in @@ -641,11 +663,10 @@ case ${target} in esac ;; *-*-openbsd*) - tmake_file="t-libc-ok t-openbsd t-libgcc-pic" + tmake_file="t-openbsd" case ${enable_threads} in yes) thread_file='posix' - tmake_file="${tmake_file} t-openbsd-thread" ;; esac case ${target} in @@ -666,12 +687,45 @@ case ${target} in tm_defines="$tm_defines DEFAULT_LIBC=LIBC_UCLIBC SINGLE_LIBC" ;; *-*-solaris2*) + # i?86-*-solaris2* needs to insert headers between cpu default and + # Solaris 2 specific ones. + sol2_tm_file="dbxelf.h elfos.h ${cpu_type}/sysv4.h sol2.h ${cpu_type}/sol2.h" + case ${target} in + *-*-solaris2.1[0-9]*) + sol2_tm_file="${sol2_tm_file} sol2-10.h" + use_gcc_stdint=wrap + ;; + *) + use_gcc_stdint=provide + ;; + esac + if test x$gnu_ld = xyes; then + tm_file="usegld.h ${tm_file}" + fi + if test x$gas = xyes; then + tm_file="usegas.h ${tm_file}" + fi + tm_p_file="${tm_p_file} sol2-protos.h" + tmake_file="${tmake_file} t-sol2 t-slibgcc" + c_target_objs="${c_target_objs} sol2-c.o" + cxx_target_objs="${cxx_target_objs} sol2-c.o sol2-cxx.o" + extra_objs="sol2.o sol2-stubs.o" extra_options="${extra_options} sol2.opt" + case ${enable_threads}:${have_pthread_h}:${have_thread_h} in + "":yes:* | yes:yes:* ) + thread_file=posix + ;; + esac ;; *-*-*vms*) extra_options="${extra_options} vms/vms.opt" xmake_file=vms/x-vms - tmake_file="vms/t-vms" + tmake_file="vms/t-vms t-slibgcc" + extra_objs="vms.o" + target_gtfiles="$target_gtfiles \$(srcdir)/config/vms/vms.c" + tm_p_file="${tm_p_file} vms/vms-protos.h" + c_target_objs="vms-c.o" + cxx_target_objs="vms-c.o" if test x$gnu_ld != xyes; then # Build wrappers for native case. extra_programs="ld\$(exeext) ar\$(exeext)" @@ -697,36 +751,21 @@ case ${target} in esac case ${target} in -# Support site-specific machine types. -*local*) - rest=`echo ${target} | sed -e "s/$cpu_type-//"` - tm_file=${cpu_type}/$rest.h - if test -f $srcdir/config/${cpu_type}/xm-$rest.h - then xm_file=${cpu_type}/xm-$rest.h - fi - if test -f $srcdir/config/${cpu_type}/t-$rest - then tmake_file=${cpu_type}/t-$rest - fi - ;; alpha*-*-linux*) tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h glibc-stdint.h" extra_options="${extra_options} alpha/elf.opt" target_cpu_default="MASK_GAS" - tmake_file="${tmake_file} alpha/t-crtfm alpha/t-alpha alpha/t-ieee alpha/t-linux" ;; alpha*-*-freebsd*) tm_file="${tm_file} ${fbsd_tm_file} alpha/elf.h alpha/freebsd.h" extra_options="${extra_options} alpha/elf.opt" target_cpu_default="MASK_GAS" - tmake_file="${tmake_file} alpha/t-crtfm alpha/t-alpha alpha/t-ieee" - extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o" ;; alpha*-*-netbsd*) tm_file="${tm_file} netbsd.h alpha/elf.h netbsd-elf.h alpha/netbsd.h" extra_options="${extra_options} netbsd.opt netbsd-elf.opt \ alpha/elf.opt" target_cpu_default="MASK_GAS" - tmake_file="${tmake_file} alpha/t-alpha alpha/t-ieee" ;; alpha*-*-openbsd*) tm_defines="${tm_defines} OBSD_HAS_DECLARE_FUNCTION_NAME OBSD_HAS_DECLARE_FUNCTION_SIZE OBSD_HAS_DECLARE_OBJECT" @@ -734,19 +773,20 @@ alpha*-*-openbsd*) extra_options="${extra_options} openbsd.opt alpha/elf.opt" # default x-alpha is only appropriate for dec-osf. target_cpu_default="MASK_GAS" - tmake_file="${tmake_file} alpha/t-alpha alpha/t-ieee" ;; alpha*-dec-osf5.1*) if test x$stabs = xyes then tm_file="${tm_file} dbx.h" fi - if test x$gas != xyes + # mips-tfile and mips-tdump are only used with the native assembler + # and require the Tru64 UNIX , so only build native. + if test x$gas != xyes && test x${host} = x${target} then extra_passes="mips-tfile mips-tdump" fi use_collect2=yes - tmake_file="alpha/t-alpha alpha/t-ieee alpha/t-crtfm alpha/t-osf5" + tmake_file="t-slibgcc" tm_file="${tm_file} alpha/osf5.h" tm_defines="${tm_defines} TARGET_SUPPORT_ARCH=1" extra_options="${extra_options} rpath.opt alpha/osf5.opt" @@ -755,19 +795,18 @@ alpha*-dec-osf5.1*) case ${enable_threads} in "" | yes | posix) thread_file='posix' - tmake_file="${tmake_file} alpha/t-osf-pthread" ;; esac ;; alpha64-dec-*vms*) - tm_file="${tm_file} alpha/vms.h alpha/vms64.h" + tm_file="${tm_file} vms/vms.h vms/vms64.h alpha/vms.h" xm_file="alpha/xm-vms.h vms/xm-vms64.h" - tmake_file="${tmake_file} alpha/t-alpha vms/t-vms64 alpha/t-vms alpha/t-ieee" + tmake_file="${tmake_file} vms/t-vms64 alpha/t-vms" ;; alpha*-dec-*vms*) - tm_file="${tm_file} alpha/vms.h" + tm_file="${tm_file} vms/vms.h alpha/vms.h" xm_file="alpha/xm-vms.h" - tmake_file="${tmake_file} alpha/t-alpha alpha/t-vms alpha/t-ieee" + tmake_file="${tmake_file} alpha/t-vms" ;; arm-wrs-vxworks) tm_file="elfos.h arm/elf.h arm/aout.h ${tm_file} vx-common.h vxworks.h arm/vxworks.h" @@ -781,21 +820,20 @@ arm*-*-freebsd*) arm*-*-netbsdelf*) tm_file="dbxelf.h elfos.h netbsd.h netbsd-elf.h arm/elf.h arm/aout.h arm/arm.h arm/netbsd-elf.h" extra_options="${extra_options} netbsd.opt netbsd-elf.opt" - tmake_file="${tmake_file} arm/t-arm arm/t-netbsd" + tmake_file="${tmake_file} arm/t-arm" ;; arm*-*-linux*) # ARM GNU/Linux with ELF tm_file="dbxelf.h elfos.h gnu-user.h linux.h linux-android.h glibc-stdint.h arm/elf.h arm/linux-gas.h arm/linux-elf.h" case $target in - arm*b-*) + arm*b-*-linux*) tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=1" ;; esac - tmake_file="${tmake_file} t-linux arm/t-arm" + tmake_file="${tmake_file} arm/t-arm" case ${target} in arm*-*-linux-*eabi) tm_file="$tm_file arm/bpabi.h arm/linux-eabi.h" - tm_file="$tm_file ../../libgcc/config/arm/bpabi-lib.h" - tmake_file="$tmake_file arm/t-arm-elf arm/t-bpabi arm/t-linux-eabi t-slibgcc-libgcc" + tmake_file="$tmake_file arm/t-arm-elf arm/t-bpabi arm/t-linux-eabi" # Define multilib configuration for arm-linux-androideabi. case ${target} in *-androideabi) @@ -813,8 +851,8 @@ arm*-*-linux*) # ARM GNU/Linux with ELF tmake_file="$tmake_file arm/t-linux" ;; esac + with_tls=${with_tls:-gnu} tm_file="$tm_file arm/aout.h arm/arm.h" - tmake_file="${tmake_file} arm/t-arm-softfp soft-fp/t-softfp" ;; arm*-*-uclinux*) # ARM ucLinux tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/linux-gas.h arm/uclinux-elf.h glibc-stdint.h" @@ -822,7 +860,6 @@ arm*-*-uclinux*) # ARM ucLinux case ${target} in arm*-*-uclinux*eabi) tm_file="$tm_file arm/bpabi.h arm/uclinux-eabi.h" - tm_file="$tm_file ../../libgcc/config/arm/bpabi-lib.h" tmake_file="$tmake_file arm/t-bpabi" # The BPABI long long divmod functions return a 128-bit value in # registers r0-r3. Correctly modeling that requires the use of @@ -832,21 +869,18 @@ arm*-*-uclinux*) # ARM ucLinux default_use_cxa_atexit=yes esac tm_file="$tm_file arm/aout.h arm/arm.h" - tmake_file="${tmake_file} arm/t-arm-softfp soft-fp/t-softfp" ;; arm*-*-ecos-elf) tm_file="dbxelf.h elfos.h newlib-stdint.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/ecos-elf.h" tmake_file="arm/t-arm arm/t-arm-elf" - tmake_file="${tmake_file} arm/t-arm-softfp soft-fp/t-softfp" ;; -arm*-*-eabi* | arm*-*-symbianelf* ) +arm*-*-eabi* | arm*-*-symbianelf* | arm*-*-rtemseabi*) # The BPABI long long divmod functions return a 128-bit value in # registers r0-r3. Correctly modeling that requires the use of # TImode. need_64bit_hwint=yes default_use_cxa_atexit=yes tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/bpabi.h" - tm_file="$tm_file ../../libgcc/config/arm/bpabi-lib.h" tmake_file="arm/t-arm arm/t-arm-elf" case ${target} in arm*-*-eabi*) @@ -854,6 +888,10 @@ arm*-*-eabi* | arm*-*-symbianelf* ) tmake_file="${tmake_file} arm/t-bpabi" use_gcc_stdint=wrap ;; + arm*-*-rtemseabi*) + tm_file="${tm_file} rtems.h arm/rtems-eabi.h newlib-stdint.h" + tmake_file="${tmake_file} arm/t-bpabi t-rtems arm/t-rtems-eabi" + ;; arm*-*-symbianelf*) tm_file="${tm_file} arm/symbian.h" # We do not include t-bpabi for Symbian OS because the system @@ -862,17 +900,14 @@ arm*-*-eabi* | arm*-*-symbianelf* ) ;; esac tm_file="${tm_file} arm/aout.h arm/arm.h" - tmake_file="${tmake_file} arm/t-arm-softfp soft-fp/t-softfp" ;; arm*-*-rtems*) tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/rtems-elf.h rtems.h newlib-stdint.h" tmake_file="arm/t-arm arm/t-arm-elf t-rtems arm/t-rtems" - tmake_file="${tmake_file} arm/t-arm-softfp soft-fp/t-softfp" ;; arm*-*-elf) tm_file="dbxelf.h elfos.h newlib-stdint.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h" tmake_file="arm/t-arm arm/t-arm-elf" - tmake_file="${tmake_file} arm/t-arm-softfp soft-fp/t-softfp" ;; arm*-wince-pe*) tm_file="arm/semi.h arm/aout.h arm/arm.h arm/coff.h dbxcoff.h arm/pe.h arm/wince-pe.h" @@ -881,16 +916,17 @@ arm*-wince-pe*) extra_objs="pe.o" ;; avr-*-rtems*) - tm_file="avr/avr.h dbxelf.h avr/rtems.h rtems.h newlib-stdint.h" - tmake_file="avr/t-avr t-rtems avr/t-rtems" + tm_file="elfos.h avr/elf.h avr/avr.h avr/multilib.h dbxelf.h avr/rtems.h rtems.h newlib-stdint.h" + tmake_file="avr/t-avr avr/t-multilib t-rtems avr/t-rtems" extra_gcc_objs="driver-avr.o avr-devices.o" - extra_objs="avr-devices.o" + extra_objs="avr-devices.o avr-log.o" ;; avr-*-*) - tm_file="avr/avr.h dbxelf.h newlib-stdint.h" + tm_file="elfos.h avr/elf.h avr/avr.h avr/multilib.h dbxelf.h newlib-stdint.h" + tmake_file="avr/t-avr avr/t-multilib" use_gcc_stdint=wrap extra_gcc_objs="driver-avr.o avr-devices.o" - extra_objs="avr-devices.o" + extra_objs="avr-devices.o avr-log.o" ;; bfin*-elf*) tm_file="${tm_file} dbxelf.h elfos.h newlib-stdint.h bfin/elf.h" @@ -904,20 +940,23 @@ bfin*-uclinux*) ;; bfin*-linux-uclibc*) tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h gnu-user.h linux.h glibc-stdint.h bfin/linux.h ./linux-sysroot-suffix.h" - tmake_file="t-slibgcc-elf-ver bfin/t-bfin-linux" - extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o" + tmake_file="bfin/t-bfin-linux t-slibgcc" use_collect2=no ;; bfin*-rtems*) tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h bfin/rtems.h rtems.h newlib-stdint.h" - tmake_file="bfin/t-bfin t-rtems bfin/t-rtems" + tmake_file="t-rtems bfin/t-rtems" ;; bfin*-*) tm_file="${tm_file} dbxelf.h elfos.h newlib-stdint.h bfin/elf.h" - tmake_file=bfin/t-bfin use_collect2=no use_gcc_stdint=wrap ;; +cr16-*-elf) + tm_file="elfos.h ${tm_file}" + tmake_file="${tmake_file} cr16/t-cr16 " + use_collect2=no + ;; crisv32-*-elf | crisv32-*-none) tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" tmake_file="cris/t-cris" @@ -936,7 +975,7 @@ cris-*-elf | cris-*-none) crisv32-*-linux* | cris-*-linux*) tm_file="dbxelf.h elfos.h ${tm_file} gnu-user.h linux.h glibc-stdint.h cris/linux.h" # We need to avoid using t-linux, so override default tmake_file - tmake_file="cris/t-cris t-slibgcc-elf-ver cris/t-linux" + tmake_file="cris/t-cris cris/t-linux t-slibgcc" extra_options="${extra_options} cris/linux.opt" case $target in cris-*-*) @@ -947,46 +986,48 @@ crisv32-*-linux* | cris-*-linux*) ;; esac ;; +epiphany-*-elf ) + tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" + tmake_file="epiphany/t-epiphany" + extra_options="${extra_options} fused-madd.opt" + extra_objs="$extra_objs mode-switch-use.o resolve-sw-modes.o" + tm_defines="${tm_defines} EPIPHANY_STACK_OFFSET=${with_stack_offset:-8}" + extra_headers="epiphany_intrinsics.h" + ;; fr30-*-elf) tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" - tmake_file=fr30/t-fr30 - extra_parts="crti.o crtn.o crtbegin.o crtend.o" ;; frv-*-elf) tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" - tm_file="${tm_file} ../../libgcc/config/frv/frv-abi.h" tmake_file=frv/t-frv ;; frv-*-*linux*) tm_file="dbxelf.h elfos.h ${tm_file} \ gnu-user.h linux.h glibc-stdint.h frv/linux.h" - tm_file="${tm_file} ../../libgcc/config/frv/frv-abi.h" tmake_file="${tmake_file} frv/t-frv frv/t-linux" ;; moxie-*-elf) gas=yes gnu_ld=yes tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" - extra_parts="crti.o crtn.o crtbegin.o crtend.o" - tmake_file="${tmake_file} moxie/t-moxie moxie/t-moxie-softfp soft-fp/t-softfp" + tmake_file="${tmake_file} moxie/t-moxie" ;; moxie-*-uclinux*) gas=yes gnu_ld=yes tm_file="dbxelf.h elfos.h ${tm_file} gnu-user.h linux.h glibc-stdint.h moxie/uclinux.h" - extra_parts="crti.o crtn.o crtbegin.o crtend.o" - tmake_file="${tmake_file} moxie/t-moxie moxie/t-moxie-softfp soft-fp/t-softfp" + tmake_file="${tmake_file} moxie/t-moxie" ;; moxie-*-rtems*) - tmake_file="${tmake_file} moxie/t-moxie moxie/t-moxie-softfp soft-fp/t-softfp t-rtems" + tmake_file="${tmake_file} moxie/t-moxie t-rtems" tm_file="moxie/moxie.h dbxelf.h elfos.h moxie/rtems.h rtems.h newlib-stdint.h" ;; h8300-*-rtems*) - tmake_file="h8300/t-h8300 h8300/t-elf t-rtems h8300/t-rtems" + tmake_file="h8300/t-h8300 t-rtems h8300/t-rtems" tm_file="h8300/h8300.h dbxelf.h elfos.h h8300/elf.h h8300/rtems.h rtems.h newlib-stdint.h" ;; h8300-*-elf*) - tmake_file="h8300/t-h8300 h8300/t-elf" + tmake_file="h8300/t-h8300" tm_file="h8300/h8300.h dbxelf.h elfos.h newlib-stdint.h h8300/elf.h" ;; hppa*64*-*-linux*) @@ -994,7 +1035,6 @@ hppa*64*-*-linux*) tm_file="pa/pa64-start.h ${tm_file} dbxelf.h elfos.h gnu-user.h linux.h \ glibc-stdint.h pa/pa-linux.h pa/pa64-regs.h pa/pa-64.h \ pa/pa64-linux.h" - tmake_file="${tmake_file} pa/t-linux64" gas=yes gnu_ld=yes need_64bit_hwint=yes ;; @@ -1002,13 +1042,6 @@ hppa*-*-linux*) target_cpu_default="MASK_PA_11|MASK_NO_SPACE_REGS" tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h pa/pa-linux.h \ pa/pa32-regs.h pa/pa32-linux.h" - tmake_file="${tmake_file} pa/t-linux t-slibgcc-libgcc" - # Set the libgcc version number - if test x$sjlj = x1; then - tmake_file="$tmake_file pa/t-slibgcc-sjlj-ver" - else - tmake_file="$tmake_file pa/t-slibgcc-dwarf-ver" - fi ;; # port not yet contributed. #hppa*-*-openbsd*) @@ -1031,7 +1064,7 @@ hppa[12]*-*-hpux10*) esac use_gcc_stdint=provide tm_file="${tm_file} hpux-stdint.h" - tmake_file="pa/t-pa-hpux10 pa/t-pa-hpux pa/t-hpux-shlib" + tmake_file="t-slibgcc" case ${enable_threads} in "") if test x$have_pthread_h = xyes ; then @@ -1042,12 +1075,6 @@ hppa[12]*-*-hpux10*) tmake_file="${tmake_file} pa/t-dce-thr" ;; esac - # Set the libgcc version number - if test x$sjlj = x1; then - tmake_file="$tmake_file pa/t-slibgcc-sjlj-ver" - else - tmake_file="$tmake_file pa/t-slibgcc-dwarf-ver" - fi use_collect2=yes gas=yes if test "x$with_dwarf2" != x; then @@ -1065,10 +1092,14 @@ hppa*64*-*-hpux11*) pa/pa64-regs.h pa/pa-hpux.h pa/pa-hpux1010.h \ pa/pa-hpux11.h" case ${target} in - *-*-hpux11.[1-9]*) + *-*-hpux11.[12]*) tm_file="${tm_file} pa/pa-hpux1111.h pa/pa-64.h pa/pa64-hpux.h" extra_options="${extra_options} pa/pa-hpux1111.opt" ;; + *-*-hpux11.[3-9]*) + tm_file="${tm_file} pa/pa-hpux1131.h pa/pa-64.h pa/pa64-hpux.h" + extra_options="${extra_options} pa/pa-hpux1131.opt" + ;; *) tm_file="${tm_file} pa/pa-64.h pa/pa64-hpux.h" ;; @@ -1076,15 +1107,7 @@ hppa*64*-*-hpux11*) extra_options="${extra_options} pa/pa-hpux.opt \ pa/pa-hpux1010.opt pa/pa64-hpux.opt hpux11.opt" need_64bit_hwint=yes - tmake_file="pa/t-pa64 pa/t-pa-hpux pa/t-hpux-shlib" - # Set the libgcc version number - if test x$sjlj = x1; then - tmake_file="$tmake_file pa/t-slibgcc-sjlj-ver" - else - tmake_file="$tmake_file pa/t-slibgcc-dwarf-ver" - fi - extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o \ - libgcc_stub.a" + tmake_file="t-slibgcc" case x${enable_threads} in x | xyes | xposix ) thread_file=posix @@ -1113,19 +1136,16 @@ hppa[12]*-*-hpux11*) extra_options="${extra_options} pa/pa-hpux.opt pa/pa-hpux1010.opt \ hpux11.opt" case ${target} in - *-*-hpux11.[1-9]*) + *-*-hpux11.[12]*) tm_file="${tm_file} pa/pa-hpux1111.h" extra_options="${extra_options} pa/pa-hpux1111.opt" ;; + *-*-hpux11.[3-9]*) + tm_file="${tm_file} pa/pa-hpux1131.h" + extra_options="${extra_options} pa/pa-hpux1131.opt" + ;; esac - tmake_file="pa/t-pa-hpux11 pa/t-pa-hpux pa/t-hpux-shlib" - # Set the libgcc version number - if test x$sjlj = x1; then - tmake_file="$tmake_file pa/t-slibgcc-sjlj-ver" - else - tmake_file="$tmake_file pa/t-slibgcc-dwarf-ver" - fi - extra_parts="libgcc_stub.a" + tmake_file="t-slibgcc" case x${enable_threads} in x | xyes | xposix ) thread_file=posix @@ -1149,32 +1169,27 @@ hppa[12]*-*-hpux11*) fi ;; i[34567]86-*-darwin*) - need_64bit_hwint=yes need_64bit_isa=yes # Baseline choice for a machine that allows m64 support. with_cpu=${with_cpu:-core2} - tmake_file="${tmake_file} t-slibgcc-darwin i386/t-crtpc i386/t-crtfm" + tmake_file="${tmake_file} t-slibgcc" ;; x86_64-*-darwin*) with_cpu=${with_cpu:-core2} - tmake_file="${tmake_file} ${cpu_type}/t-darwin64 t-slibgcc-darwin i386/t-crtpc i386/t-crtfm" + tmake_file="${tmake_file} ${cpu_type}/t-darwin64 t-slibgcc" tm_file="${tm_file} ${cpu_type}/darwin64.h" ;; i[34567]86-*-elf*) tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h newlib-stdint.h i386/i386elf.h" - tmake_file="${tmake_file} i386/t-i386elf t-svr4" ;; x86_64-*-elf*) tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h newlib-stdint.h i386/i386elf.h i386/x86-64.h" - tmake_file="${tmake_file} i386/t-i386elf t-svr4" ;; i[34567]86-*-freebsd*) tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/freebsd.h" - tmake_file="${tmake_file} i386/t-crtstuff" ;; x86_64-*-freebsd*) tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/x86-64.h i386/freebsd.h i386/freebsd64.h" - tmake_file="${tmake_file} i386/t-crtstuff" ;; i[34567]86-*-netbsdelf*) tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-elf.h i386/netbsd-elf.h" @@ -1183,13 +1198,12 @@ i[34567]86-*-netbsdelf*) x86_64-*-netbsd*) tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-elf.h i386/x86-64.h i386/netbsd64.h" extra_options="${extra_options} netbsd.opt netbsd-elf.opt" - tmake_file="${tmake_file} i386/t-crtstuff" ;; i[34567]86-*-openbsd2.*|i[34567]86-*openbsd3.[0123]) tm_file="i386/i386.h i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h openbsd-oldgas.h openbsd.h i386/openbsd.h" extra_options="${extra_options} openbsd.opt" # needed to unconfuse gdb - tmake_file="${tmake_file} t-libc-ok t-openbsd i386/t-openbsd" + tmake_file="${tmake_file} t-openbsd i386/t-openbsd" # we need collect2 until our bug is fixed... use_collect2=yes ;; @@ -1203,19 +1217,35 @@ i[34567]86-*-openbsd*) i[34567]86-*-linux* | i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu | i[34567]86-*-gnu* | i[34567]86-*-kopensolaris*-gnu) # Intel 80386's running GNU/* # with ELF format using glibc 2 - tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h" + tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h gnu-user.h glibc-stdint.h" case ${target} in i[34567]86-*-linux*) + tm_file="${tm_file} linux.h" # Assume modern glibc default_gnu_indirect_function=yes if test x$enable_targets = xall; then tm_file="${tm_file} i386/x86-64.h i386/gnu-user64.h i386/linux64.h" tm_defines="${tm_defines} TARGET_BI_ARCH=1" tmake_file="${tmake_file} i386/t-linux64" - need_64bit_hwint=yes + x86_multilibs="${with_multilib_list}" + if test "$x86_multilibs" = "default"; then + x86_multilibs="m64,m32" + fi + x86_multilibs=`echo $x86_multilibs | sed -e 's/,/ /g'` + for x86_multilib in ${x86_multilibs}; do + case ${x86_multilib} in + m32 | m64 | mx32) + TM_MULTILIB_CONFIG="${TM_MULTILIB_CONFIG},${x86_multilib}" + ;; + *) + echo "--with-multilib-list=${x86_with_multilib} not supported." + exit 1 + esac + done + TM_MULTILIB_CONFIG=`echo $TM_MULTILIB_CONFIG | sed 's/^,//'` need_64bit_isa=yes case X"${with_cpu}" in - Xgeneric|Xatom|Xcore2|Xcorei7|Xcorei7-avx|Xnocona|Xx86-64|Xbdver1|Xbtver1|Xamdfam10|Xbarcelona|Xk8|Xopteron|Xathlon64|Xathlon-fx|Xathlon64-sse3|Xk8-sse3|Xopteron-sse3) + Xgeneric|Xatom|Xcore2|Xcorei7|Xcorei7-avx|Xnocona|Xx86-64|Xbdver2|Xbdver1|Xbtver1|Xamdfam10|Xbarcelona|Xk8|Xopteron|Xathlon64|Xathlon-fx|Xathlon64-sse3|Xk8-sse3|Xopteron-sse3) ;; X) if test x$with_cpu_64 = x; then @@ -1224,7 +1254,7 @@ i[34567]86-*-linux* | i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu | i ;; *) echo "Unsupported CPU used in --with-cpu=$with_cpu, supported values:" 1>&2 - echo "generic atom core2 corei7 corei7-avx nocona x86-64 bdver1 btver1 amdfam10 barcelona k8 opteron athlon64 athlon-fx athlon64-sse3 k8-sse3 opteron-sse3" 1>&2 + echo "generic atom core2 corei7 corei7-avx nocona x86-64 bdver2 bdver1 btver1 amdfam10 barcelona k8 opteron athlon64 athlon-fx athlon64-sse3 k8-sse3 opteron-sse3" 1>&2 exit 1 ;; esac @@ -1232,28 +1262,58 @@ i[34567]86-*-linux* | i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu | i tm_file="${tm_file} i386/gnu-user.h i386/linux.h" fi ;; - i[34567]86-*-knetbsd*-gnu) tm_file="${tm_file} i386/gnu-user.h i386/linux.h knetbsd-gnu.h i386/knetbsd-gnu.h" ;; - i[34567]86-*-kfreebsd*-gnu) tm_file="${tm_file} i386/gnu-user.h i386/linux.h kfreebsd-gnu.h i386/kfreebsd-gnu.h" ;; - i[34567]86-*-kopensolaris*-gnu) tm_file="${tm_file} i386/gnu-user.h i386/linux.h kopensolaris-gnu.h i386/kopensolaris-gnu.h" ;; - i[34567]86-*-gnu*) tm_file="$tm_file i386/gnu-user.h i386/linux.h gnu.h i386/gnu.h";; + i[34567]86-*-knetbsd*-gnu) + tm_file="${tm_file} i386/gnu-user.h knetbsd-gnu.h i386/knetbsd-gnu.h" + ;; + i[34567]86-*-kfreebsd*-gnu) + tm_file="${tm_file} i386/gnu-user.h kfreebsd-gnu.h i386/kfreebsd-gnu.h" + ;; + i[34567]86-*-kopensolaris*-gnu) + tm_file="${tm_file} i386/gnu-user.h kopensolaris-gnu.h i386/kopensolaris-gnu.h" + ;; + i[34567]86-*-gnu*) + tm_file="$tm_file i386/gnu-user.h gnu.h i386/gnu.h" + ;; esac - tmake_file="${tmake_file} i386/t-crtstuff i386/t-crtpc i386/t-crtfm t-dfprules" ;; x86_64-*-linux* | x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu) - tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h \ - i386/x86-64.h i386/gnu-user64.h i386/linux64.h" + tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h gnu-user.h glibc-stdint.h \ + i386/x86-64.h i386/gnu-user64.h" case ${target} in x86_64-*-linux*) - default_gnu_indirect_function=glibc-2011 ;; - x86_64-*-kfreebsd*-gnu) tm_file="${tm_file} kfreebsd-gnu.h i386/kfreebsd-gnu.h" ;; - x86_64-*-knetbsd*-gnu) tm_file="${tm_file} knetbsd-gnu.h" ;; + tm_file="${tm_file} linux.h i386/linux64.h" + # Assume modern glibc + default_gnu_indirect_function=yes + ;; + x86_64-*-kfreebsd*-gnu) + tm_file="${tm_file} kfreebsd-gnu.h i386/kfreebsd-gnu64.h" + ;; + x86_64-*-knetbsd*-gnu) + tm_file="${tm_file} knetbsd-gnu.h" + ;; esac - tmake_file="${tmake_file} i386/t-linux64 i386/t-crtstuff i386/t-crtpc i386/t-crtfm t-dfprules" + tmake_file="${tmake_file} i386/t-linux64" + x86_multilibs="${with_multilib_list}" + if test "$x86_multilibs" = "default"; then + x86_multilibs="m64,m32" + fi + x86_multilibs=`echo $x86_multilibs | sed -e 's/,/ /g'` + for x86_multilib in ${x86_multilibs}; do + case ${x86_multilib} in + m32 | m64 | mx32) + TM_MULTILIB_CONFIG="${TM_MULTILIB_CONFIG},${x86_multilib}" + ;; + *) + echo "--with-multilib-list=${x86_with_multilib} not supported." + exit 1 + esac + done + TM_MULTILIB_CONFIG=`echo $TM_MULTILIB_CONFIG | sed 's/^,//'` ;; i[34567]86-pc-msdosdjgpp*) xm_file=i386/xm-djgpp.h tm_file="dbxcoff.h ${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/djgpp.h i386/djgpp-stdint.h" - tmake_file="${tmake_file} i386/t-djgpp" + native_system_header_dir=/dev/env/DJDIR/include extra_options="${extra_options} i386/djgpp.opt" gnu_ld=yes gas=yes @@ -1262,47 +1322,24 @@ i[34567]86-pc-msdosdjgpp*) i[34567]86-*-lynxos*) xm_defines=POSIX tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/lynx.h lynx.h" - tmake_file="${tmake_file} i386/t-crtstuff t-lynx" - extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o" + tmake_file="${tmake_file} t-lynx" extra_options="${extra_options} lynx.opt" thread_file=lynx gnu_ld=yes gas=yes ;; -i[3456x]86-*-netware*) - tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h tm-dwarf2.h i386/netware.h" - tmake_file="${tmake_file} i386/t-netware" - extra_objs=netware.o - extra_options="${extra_options} i386/netware.opt" - case /${with_ld} in - */nwld) - extra_objs="$extra_objs nwld.o" - tm_file="${tm_file} i386/nwld.h" - tmake_file="${tmake_file} i386/t-nwld" - extra_parts="crt0.o libgcc.def libc.def libcpre.def posixpre.def" - ;; - esac - case x${enable_threads} in - x | xyes | xposix) thread_file='posix';; - xnks) thread_file='nks';; - xno) ;; - *) echo 'Unknown thread configuration for NetWare' >&2; exit 1;; - esac - ;; i[34567]86-*-nto-qnx*) tm_file="${tm_file} i386/att.h dbxelf.h tm-dwarf2.h elfos.h i386/unix.h i386/nto.h" extra_options="${extra_options} i386/nto.opt" - tmake_file="${tmake_file} i386/t-nto" gnu_ld=yes gas=yes ;; i[34567]86-*-rtems*) tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/i386elf.h i386/rtemself.h rtems.h newlib-stdint.h" - extra_parts="crtbegin.o crtend.o crti.o crtn.o" - tmake_file="${tmake_file} i386/t-rtems-i386 i386/t-crtstuff t-rtems" + tmake_file="${tmake_file} i386/t-rtems t-rtems" ;; -i[34567]86-*-solaris2*) - tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/sysv4.h sol2.h" +i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*) + tm_file="${tm_file} i386/unix.h i386/att.h ${sol2_tm_file}" # Set default arch_32 to pentium4, tune_32 to generic like the other # i386 targets, although config.guess defaults to i386-pc-solaris2*. case ${target} in @@ -1318,44 +1355,12 @@ i[34567]86-*-solaris2*) with_tune_32=${with_tune_32:-generic} case ${target} in *-*-solaris2.1[0-9]*) - tm_file="${tm_file} sol2-10.h" - ;; - esac - tm_file="${tm_file} i386/sol2.h" - if test x$gnu_ld = xyes; then - tm_file="${tm_file} sol2-gld.h" - fi - if test x$gas = xyes; then - tm_file="${tm_file} i386/sol2-gas.h" - fi - tmake_file="${tmake_file} t-sol2 t-svr4" - c_target_objs="${c_target_objs} sol2-c.o" - cxx_target_objs="${cxx_target_objs} sol2-c.o" - extra_objs="sol2.o" - tm_p_file="${tm_p_file} sol2-protos.h" - if test x$gnu_ld = xyes; then - tmake_file="$tmake_file t-slibgcc-elf-ver" - tm_defines="${tm_defines} TARGET_GNU_LD=1" - else - tmake_file="$tmake_file t-slibgcc-sld" - fi - if test x$gas = xyes; then - tm_file="usegas.h ${tm_file}" - fi - tm_file="$tm_file tm-dwarf2.h" - case ${target} in - *-*-solaris2.1[0-9]*) - tm_file="${tm_file} i386/x86-64.h i386/sol2-10.h" + tm_file="${tm_file} i386/x86-64.h i386/sol2-bi.h sol2-bi.h" tm_defines="${tm_defines} TARGET_BI_ARCH=1" - tmake_file="$tmake_file i386/t-sol2-10" - # i386/t-crtstuff only affects libgcc. Its inclusion - # depends on a runtime test and is thus performed in - # libgcc/configure.ac instead. - need_64bit_hwint=yes + tmake_file="$tmake_file i386/t-sol2-64" need_64bit_isa=yes - use_gcc_stdint=wrap case X"${with_cpu}" in - Xgeneric|Xatom|Xcore2|Xcorei7|Xcorei7-avx|Xnocona|Xx86-64|Xbdver1|Xbtver1|Xamdfam10|Xbarcelona|Xk8|Xopteron|Xathlon64|Xathlon-fx|Xathlon64-sse3|Xk8-sse3|Xopteron-sse3) + Xgeneric|Xatom|Xcore2|Xcorei7|Xcorei7-avx|Xnocona|Xx86-64|Xbdver2|Xbdver1|Xbtver1|Xamdfam10|Xbarcelona|Xk8|Xopteron|Xathlon64|Xathlon-fx|Xathlon64-sse3|Xk8-sse3|Xopteron-sse3) ;; X) if test x$with_cpu_64 = x; then @@ -1364,19 +1369,11 @@ i[34567]86-*-solaris2*) ;; *) echo "Unsupported CPU used in --with-cpu=$with_cpu, supported values:" 1>&2 - echo "generic atom core2 corei7 corei7-avx nocona x86-64 bdver1 btver1 amdfam10 barcelona k8 opteron athlon64 athlon-fx athlon64-sse3 k8-sse3 opteron-sse3" 1>&2 + echo "generic atom core2 corei7 corei7-avx nocona x86-64 bdver2 bdver1 btver1 amdfam10 barcelona k8 opteron athlon64 athlon-fx athlon64-sse3 k8-sse3 opteron-sse3" 1>&2 exit 1 ;; esac ;; - *) - use_gcc_stdint=provide - ;; - esac - case ${enable_threads}:${have_pthread_h}:${have_thread_h} in - "":yes:* | yes:yes:* ) - thread_file=posix - ;; esac ;; i[4567]86-wrs-vxworks|i[4567]86-wrs-vxworksae) @@ -1395,19 +1392,7 @@ i[4567]86-wrs-vxworks|i[4567]86-wrs-vxworksae) i[34567]86-*-cygwin*) tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/cygming.h i386/cygwin.h i386/cygwin-stdint.h" xm_file=i386/xm-cygwin.h - # This has to match the logic for DWARF2_UNWIND_INFO in gcc/config/i386/cygming.h - if test x$sjlj = x0; then - tmake_eh_file="i386/t-dw2-eh" - else - tmake_eh_file="i386/t-sjlj-eh" - fi - # Shared libgcc DLL install dir depends on cross/native build. - if test x${host} = x${target} ; then - tmake_dlldir_file="i386/t-dlldir" - else - tmake_dlldir_file="i386/t-dlldir-x" - fi - tmake_file="${tmake_file} ${tmake_eh_file} ${tmake_dlldir_file} i386/t-cygming i386/t-cygwin t-dfprules" + tmake_file="${tmake_file} i386/t-cygming t-slibgcc" target_gtfiles="\$(srcdir)/config/i386/winnt.c" extra_options="${extra_options} i386/cygming.opt" extra_objs="winnt.o winnt-stubs.o" @@ -1423,7 +1408,6 @@ i[34567]86-*-mingw* | x86_64-*-mingw*) xm_file=i386/xm-mingw32.h case ${target} in x86_64-*-* | *-w64-*) - need_64bit_hwint=yes need_64bit_isa=yes ;; *) @@ -1442,7 +1426,7 @@ i[34567]86-*-mingw* | x86_64-*-mingw*) if test x$enable_targets = xall; then tm_defines="${tm_defines} TARGET_BI_ARCH=1" case X"${with_cpu}" in - Xgeneric|Xatom|Xcore2|Xcorei7|Xcorei7-avx|Xnocona|Xx86-64|Xbdver1|Xbtver1|Xamdfam10|Xbarcelona|Xk8|Xopteron|Xathlon64|Xathlon-fx|Xathlon64-sse3|Xk8-sse3|Xopteron-sse3) + Xgeneric|Xatom|Xcore2|Xcorei7|Xcorei7-avx|Xnocona|Xx86-64|Xbdver2|Xbdver1|Xbtver1|Xamdfam10|Xbarcelona|Xk8|Xopteron|Xathlon64|Xathlon-fx|Xathlon64-sse3|Xk8-sse3|Xopteron-sse3) ;; X) if test x$with_cpu_64 = x; then @@ -1451,7 +1435,7 @@ i[34567]86-*-mingw* | x86_64-*-mingw*) ;; *) echo "Unsupported CPU used in --with-cpu=$with_cpu, supported values:" 1>&2 - echo "generic atom core2 corei7 Xcorei7-avx nocona x86-64 bdver1 btver1 amdfam10 barcelona k8 opteron athlon64 athlon-fx athlon64-sse3 k8-sse3 opteron-sse3" 1>&2 + echo "generic atom core2 corei7 Xcorei7-avx nocona x86-64 bdver2 bdver1 btver1 amdfam10 barcelona k8 opteron athlon64 athlon-fx athlon64-sse3 k8-sse3 opteron-sse3" 1>&2 exit 1 ;; esac @@ -1461,19 +1445,7 @@ i[34567]86-*-mingw* | x86_64-*-mingw*) ;; esac tm_file="${tm_file} i386/mingw-stdint.h" - # This has to match the logic for DWARF2_UNWIND_INFO in gcc/config/i386/cygming.h - if test x$sjlj = x0; then - tmake_eh_file="i386/t-dw2-eh" - else - tmake_eh_file="i386/t-sjlj-eh" - fi - # Shared libgcc DLL install dir depends on cross/native build. - if test x${host} = x${target} ; then - tmake_dlldir_file="i386/t-dlldir" - else - tmake_dlldir_file="i386/t-dlldir-x" - fi - tmake_file="${tmake_file} ${tmake_eh_file} ${tmake_dlldir_file} i386/t-cygming t-dfprules" + tmake_file="${tmake_file} i386/t-cygming t-slibgcc" case ${target} in x86_64-w64-*) tmake_file="${tmake_file} i386/t-mingw-w64" @@ -1481,10 +1453,8 @@ i[34567]86-*-mingw* | x86_64-*-mingw*) i[34567]86-w64-*) tmake_file="${tmake_file} i386/t-mingw-w32" ;; - *) - tmake_file="${tmake_file} i386/t-mingw32" - ;; esac + native_system_header_dir=/mingw/include target_gtfiles="\$(srcdir)/config/i386/winnt.c" extra_options="${extra_options} i386/cygming.opt i386/mingw.opt" case ${target} in @@ -1500,22 +1470,14 @@ i[34567]86-*-mingw* | x86_64-*-mingw*) default_use_cxa_atexit=yes use_gcc_stdint=wrap case ${enable_threads} in - "" | yes | win32) thread_file='win32' - tmake_file="${tmake_file} i386/t-gthr-win32" + "" | yes | win32) + thread_file='win32' ;; posix) thread_file='posix' - tmake_file="i386/t-mingw-pthread ${tmake_file}" ;; esac case ${target} in - x86_64-*-mingw*) - tmake_file="${tmake_file} i386/t-crtfm" - ;; - *) - ;; - esac - case ${target} in *mingw32crt*) tm_file="${tm_file} i386/crtdll.h" ;; @@ -1523,11 +1485,11 @@ i[34567]86-*-mingw* | x86_64-*-mingw*) ;; esac ;; -i[34567]86-*-interix3*) - tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/i386-interix.h i386/i386-interix3.h interix.h interix3.h" +i[34567]86-*-interix[3-9]*) + tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/i386-interix.h" tmake_file="${tmake_file} i386/t-interix" - extra_options="${extra_options} rpath.opt interix.opt" - extra_objs=winnt.o + extra_options="${extra_options} rpath.opt i386/interix.opt" + extra_objs="winnt.o winnt-stubs.o" target_gtfiles="\$(srcdir)/config/i386/winnt.c" if test x$enable_threads = xyes ; then thread_file='posix' @@ -1548,26 +1510,20 @@ ia64*-*-elf*) then target_cpu_default="${target_cpu_default}|MASK_GNU_LD" fi - extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtfastmath.o" ;; ia64*-*-freebsd*) tm_file="${tm_file} dbxelf.h elfos.h ${fbsd_tm_file} ia64/sysv4.h ia64/freebsd.h" target_cpu_default="MASK_GNU_AS|MASK_GNU_LD" tmake_file="${tmake_file} ia64/t-ia64" - extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtfastmath.o" ;; ia64*-*-linux*) tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h ia64/sysv4.h ia64/linux.h" - tmake_file="${tmake_file} ia64/t-ia64 t-libunwind ia64/t-glibc" - if test x$with_system_libunwind != xyes ; then - tmake_file="${tmake_file} t-libunwind-elf ia64/t-glibc-libunwind" - fi + tmake_file="${tmake_file} ia64/t-ia64 t-libunwind" target_cpu_default="MASK_GNU_AS|MASK_GNU_LD" - extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtfastmath.o" ;; ia64*-*-hpux*) tm_file="${tm_file} dbxelf.h elfos.h ia64/sysv4.h ia64/hpux.h" - tmake_file="ia64/t-ia64 ia64/t-hpux" + tmake_file="ia64/t-ia64 ia64/t-hpux t-slibgcc" target_cpu_default="MASK_GNU_AS" case x$enable_threads in x | xyes | xposix ) @@ -1580,11 +1536,16 @@ ia64*-*-hpux*) extra_options="${extra_options} ia64/ilp32.opt hpux11.opt" use_gcc_stdint=wrap tm_file="${tm_file} hpux-stdint.h" + case ${target} in + *-*-hpux11.3*) + tm_file="${tm_file} ia64/hpux-unix2003.h" + ;; + esac ;; ia64-hp-*vms*) - tm_file="${tm_file} elfos.h ia64/sysv4.h ia64/elf.h ia64/vms.h ia64/vms64.h" + tm_file="${tm_file} elfos.h ia64/sysv4.h ia64/elf.h vms/vms.h vms/vms64.h ia64/vms.h" xm_file="vms/xm-vms.h vms/xm-vms64.h" - tmake_file="${tmake_file} vms/t-vms64 ia64/t-ia64 ia64/t-vms" + tmake_file="${tmake_file} vms/t-vms64 ia64/t-ia64" target_cpu_default="0" if test x$gas = xyes then @@ -1594,40 +1555,37 @@ ia64-hp-*vms*) ;; iq2000*-*-elf*) tm_file="elfos.h newlib-stdint.h iq2000/iq2000.h" - tmake_file=iq2000/t-iq2000 out_file=iq2000/iq2000.c md_file=iq2000/iq2000.md ;; lm32-*-elf*) tm_file="dbxelf.h elfos.h ${tm_file}" - tmake_file="${tmake_file} lm32/t-lm32 lm32/t-fprules-softfp soft-fp/t-softfp" + tmake_file="${tmake_file} lm32/t-lm32" ;; lm32-*-rtems*) tm_file="dbxelf.h elfos.h ${tm_file} lm32/rtems.h rtems.h newlib-stdint.h" - tmake_file="${tmake_file} lm32/t-lm32 lm32/t-fprules-softfp soft-fp/t-softfp" + tmake_file="${tmake_file} lm32/t-lm32" tmake_file="${tmake_file} t-rtems" + tmake_file="${tmake_file} lm32/t-rtems" ;; lm32-*-uclinux*) tm_file="dbxelf.h elfos.h ${tm_file} gnu-user.h linux.h lm32/uclinux-elf.h" - tmake_file="${tmake_file} lm32/t-lm32 lm32/t-fprules-softfp soft-fp/t-softfp" + tmake_file="${tmake_file} lm32/t-lm32" ;; m32r-*-elf*) tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" - extra_parts="crtinit.o crtfini.o" ;; m32rle-*-elf*) tm_file="dbxelf.h elfos.h newlib-stdint.h m32r/little.h ${tm_file}" - extra_parts="crtinit.o crtfini.o m32rx/crtinit.o m32rx/crtfini.o" ;; m32r-*-rtems*) tm_file="dbxelf.h elfos.h ${tm_file} m32r/rtems.h rtems.h newlib-stdint.h" tmake_file="m32r/t-m32r t-rtems" - extra_parts="crtinit.o crtfini.o" ;; m32r-*-linux*) tm_file="dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h ${tm_file} m32r/linux.h" # We override the tmake_file for linux -- why? - tmake_file="t-slibgcc-elf-ver m32r/t-linux" + tmake_file="m32r/t-linux t-slibgcc" gnu_ld=yes if test x$enable_threads = xyes; then thread_file='posix' @@ -1636,7 +1594,7 @@ m32r-*-linux*) m32rle-*-linux*) tm_file="dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h m32r/little.h ${tm_file} m32r/linux.h" # We override the tmake_file for linux -- why? - tmake_file="t-slibgcc-elf-ver m32r/t-linux" + tmake_file="m32r/t-linux t-slibgcc" gnu_ld=yes if test x$enable_threads = xyes; then thread_file='posix' @@ -1672,7 +1630,6 @@ m68k-*-elf* | fido-*-elf*) tmake_file="$tmake_file m68k/t-mlibs" ;; esac - extra_parts="crtbegin.o crtend.o" ;; m68k*-*-netbsdelf*) default_m68k_cpu=68020 @@ -1688,7 +1645,7 @@ m68k*-*-openbsd*) tm_defines="${tm_defines} OBSD_OLD_GAS" tm_file="${tm_file} openbsd.h openbsd-stdint.h openbsd-libpthread.h m68k/openbsd.h" extra_options="${extra_options} openbsd.opt" - tmake_file="t-libc-ok t-openbsd m68k/t-openbsd" + tmake_file="t-openbsd m68k/t-openbsd" # we need collect2 until our bug is fixed... use_collect2=yes ;; @@ -1702,7 +1659,7 @@ m68k-*-uclinux*) # Motorola m68k/ColdFire running uClinux tm_defines="${tm_defines} MOTOROLA=1" tmake_file="m68k/t-floatlib m68k/t-uclinux m68k/t-mlibs" ;; -m68k-*-linux*) # Motorola m68k's running GNU/Linux +m68k-*-linux*) # Motorola m68k's running GNU/Linux # with ELF format using glibc 2 # aka the GNU/Linux C library 6. default_m68k_cpu=68020 @@ -1712,11 +1669,6 @@ m68k-*-linux*) # Motorola m68k's running GNU/Linux extra_options="${extra_options} m68k/ieee.opt" tm_defines="${tm_defines} MOTOROLA=1" tmake_file="${tmake_file} m68k/t-floatlib m68k/t-linux m68k/t-mlibs" - # if not configured with --enable-sjlj-exceptions, bump the - # libgcc version number - if test x$sjlj != x1; then - tmake_file="$tmake_file m68k/t-slibgcc-elf-ver" - fi ;; m68k-*-rtems*) default_m68k_cpu=68020 @@ -1724,7 +1676,6 @@ m68k-*-rtems*) tmake_file="m68k/t-floatlib m68k/t-m68kbare m68k/t-crtstuff t-rtems m68k/t-rtems m68k/t-mlibs" tm_file="${tm_file} m68k/m68k-none.h m68k/m68kelf.h dbxelf.h elfos.h m68k/m68kemb.h m68k/m68020-elf.h m68k/rtemself.h rtems.h newlib-stdint.h" tm_defines="${tm_defines} MOTOROLA=1" - extra_parts="crtbegin.o crtend.o" ;; mcore-*-elf) tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file} mcore/mcore-elf.h" @@ -1734,7 +1685,6 @@ mcore-*-elf) mep-*-*) tm_file="dbxelf.h elfos.h ${tm_file}" tmake_file=mep/t-mep - extra_parts="crtbegin.o crtend.o" c_target_objs="mep-pragma.o" cxx_target_objs="mep-pragma.o" if test -d "${srcdir}/../newlib/libc/include" && @@ -1747,8 +1697,6 @@ microblaze*-linux*) tm_file="${tm_file} dbxelf.h gnu-user.h linux.h microblaze/linux.h" c_target_objs="${c_target_objs} microblaze-c.o" cxx_target_objs="${cxx_target_objs} microblaze-c.o" - tmake_file="${tmake_file} t-slibgcc-elf-ver t-slibgcc-nolc-override t-linux microblaze/t-microblaze" - extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o crtbeginT.o" ;; microblaze*-*-*) tm_file="${tm_file} dbxelf.h" @@ -1758,7 +1706,7 @@ microblaze*-*-*) ;; mips-sgi-irix6.5*) tm_file="elfos.h ${tm_file} mips/iris6.h" - tmake_file="mips/t-iris mips/t-iris6 mips/t-slibgcc-irix" + tmake_file="mips/t-irix6 t-slibgcc" extra_options="${extra_options} rpath.opt mips/iris6.opt" target_cpu_default="MASK_ABICALLS" tm_defines="${tm_defines} MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_N32" @@ -1782,8 +1730,8 @@ mips*-*-netbsd*) # NetBSD/mips, either endian. extra_options="${extra_options} netbsd.opt netbsd-elf.opt" ;; mips64*-*-linux* | mipsisa64*-*-linux*) - tm_file="dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h ${tm_file} mips/linux.h mips/linux64.h" - tmake_file="${tmake_file} mips/t-linux64 mips/t-libgcc-mips16" + tm_file="dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h ${tm_file} mips/gnu-user.h mips/gnu-user64.h mips/linux64.h" + tmake_file="${tmake_file} mips/t-linux64" tm_defines="${tm_defines} MIPS_ABI_DEFAULT=ABI_N32" case ${target} in mips64el-st-linux-gnu) @@ -1798,14 +1746,16 @@ mips64*-*-linux* | mipsisa64*-*-linux*) tm_defines="${tm_defines} MIPS_ISA_DEFAULT=65" ;; esac - extra_parts="$extra_parts crtfastmath.o" gnu_ld=yes gas=yes test x$with_llsc != x || with_llsc=yes ;; mips*-*-linux*) # Linux MIPS, either endian. - tm_file="dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h ${tm_file} mips/linux.h" - tmake_file="${tmake_file} mips/t-libgcc-mips16" + tm_file="dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h ${tm_file} mips/gnu-user.h mips/linux.h" + if test x$enable_targets = xall; then + tm_file="${tm_file} mips/gnu-user64.h mips/linux64.h" + tmake_file="${tmake_file} mips/t-linux64" + fi case ${target} in mipsisa32r2*) tm_defines="${tm_defines} MIPS_ISA_DEFAULT=33" @@ -1813,7 +1763,6 @@ mips*-*-linux*) # Linux MIPS, either endian. mipsisa32*) tm_defines="${tm_defines} MIPS_ISA_DEFAULT=32" esac - extra_parts="$extra_parts crtfastmath.o" test x$with_llsc != x || with_llsc=yes ;; mips*-*-openbsd*) @@ -1829,7 +1778,7 @@ mips*-*-openbsd*) ;; mips*-sde-elf*) tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h mips/sde.h" - tmake_file="mips/t-sde mips/t-libgcc-mips16" + tmake_file="mips/t-sde" extra_options="${extra_options} mips/sde.opt" case "${with_newlib}" in yes) @@ -1866,7 +1815,7 @@ mipsisa32r2-*-elf* | mipsisa32r2el-*-elf* | \ mipsisa64-*-elf* | mipsisa64el-*-elf* | \ mipsisa64r2-*-elf* | mipsisa64r2el-*-elf*) tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h" - tmake_file="mips/t-isa3264 mips/t-libgcc-mips16" + tmake_file="mips/t-isa3264" case ${target} in mipsisa32r2*) tm_defines="${tm_defines} MIPS_ISA_DEFAULT=33" @@ -1903,17 +1852,17 @@ mipsisa64sr71k-*-elf*) ;; mipsisa64sb1-*-elf* | mipsisa64sb1el-*-elf*) tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h" - tmake_file="mips/t-elf mips/t-libgcc-mips16 mips/t-sb1" + tmake_file="mips/t-elf mips/t-sb1" target_cpu_default="MASK_64BIT|MASK_FLOAT64" tm_defines="${tm_defines} MIPS_ISA_DEFAULT=64 MIPS_CPU_STRING_DEFAULT=\\\"sb1\\\" MIPS_ABI_DEFAULT=ABI_O64" ;; mips-*-elf* | mipsel-*-elf*) tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h" - tmake_file="mips/t-elf mips/t-libgcc-mips16" + tmake_file="mips/t-elf" ;; mips64-*-elf* | mips64el-*-elf*) tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h" - tmake_file="mips/t-elf mips/t-libgcc-mips16" + tmake_file="mips/t-elf" target_cpu_default="MASK_64BIT|MASK_FLOAT64" tm_defines="${tm_defines} MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_O64" ;; @@ -1924,13 +1873,13 @@ mips64vr-*-elf* | mips64vrel-*-elf*) ;; mips64orion-*-elf* | mips64orionel-*-elf*) tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elforion.h mips/elf.h" - tmake_file="mips/t-elf mips/t-libgcc-mips16" + tmake_file="mips/t-elf" target_cpu_default="MASK_64BIT|MASK_FLOAT64" tm_defines="${tm_defines} MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_O64" ;; mips*-*-rtems*) tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h mips/rtems.h rtems.h" - tmake_file="mips/t-elf mips/t-libgcc-mips16 t-rtems mips/t-rtems" + tmake_file="mips/t-elf t-rtems mips/t-rtems" ;; mips-wrs-vxworks) tm_file="elfos.h ${tm_file} mips/elf.h vx-common.h vxworks.h mips/vxworks.h" @@ -1938,7 +1887,7 @@ mips-wrs-vxworks) ;; mipstx39-*-elf* | mipstx39el-*-elf*) tm_file="elfos.h newlib-stdint.h ${tm_file} mips/r3900.h mips/elf.h" - tmake_file="mips/t-r3900 mips/t-libgcc-mips16" + tmake_file="mips/t-r3900" ;; mmix-knuth-mmixware) tm_file="${tm_file} newlib-stdint.h" @@ -1965,12 +1914,11 @@ picochip-*) ;; # port not yet contributed #powerpc-*-openbsd*) -# tmake_file="${tmake_file} rs6000/t-fprules rs6000/t-fprules-fpbit " +# tmake_file="${tmake_file} rs6000/t-fprules" # extra_headers= # ;; powerpc-*-darwin*) extra_options="${extra_options} rs6000/darwin.opt" - extra_parts="crt2.o" case ${target} in *-darwin1[0-9]* | *-darwin[8-9]*) tmake_file="${tmake_file} rs6000/t-darwin8" @@ -1982,20 +1930,18 @@ powerpc-*-darwin*) *-darwin[0-6]*) ;; esac - tmake_file="${tmake_file} t-slibgcc-darwin" + tmake_file="${tmake_file} t-slibgcc" extra_headers=altivec.h ;; powerpc64-*-darwin*) extra_options="${extra_options} ${cpu_type}/darwin.opt" - extra_parts="crt2.o" - tmake_file="${tmake_file} ${cpu_type}/t-darwin64 t-slibgcc-darwin" + tmake_file="${tmake_file} ${cpu_type}/t-darwin64 t-slibgcc" tm_file="${tm_file} ${cpu_type}/darwin8.h ${cpu_type}/darwin64.h" extra_headers=altivec.h ;; powerpc-*-freebsd*) tm_file="${tm_file} dbxelf.h elfos.h ${fbsd_tm_file} rs6000/sysv4.h rs6000/freebsd.h" - tmake_file="rs6000/t-fprules rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm rs6000/t-freebsd" - tmake_file="${tmake_file} t-slibgcc-libgcc rs6000/t-fprules-softfp soft-fp/t-softfp" + tmake_file="rs6000/t-fprules rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm" extra_options="${extra_options} rs6000/sysv4.opt" ;; powerpc-*-netbsd*) @@ -2013,47 +1959,47 @@ powerpc-*-eabispe*) powerpc-*-eabisimaltivec*) tm_file="${tm_file} dbxelf.h elfos.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h rs6000/eabisim.h rs6000/eabialtivec.h" extra_options="${extra_options} rs6000/sysv4.opt" - tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppcendian rs6000/t-ppccomm" + tmake_file="rs6000/t-fprules rs6000/t-ppcendian rs6000/t-ppccomm" use_gcc_stdint=wrap ;; powerpc-*-eabisim*) tm_file="${tm_file} dbxelf.h elfos.h usegas.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h rs6000/eabisim.h" extra_options="${extra_options} rs6000/sysv4.opt" - tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppcgas rs6000/t-ppccomm" + tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm" use_gcc_stdint=wrap ;; powerpc-*-elf*) tm_file="${tm_file} dbxelf.h elfos.h usegas.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h" extra_options="${extra_options} rs6000/sysv4.opt" - tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppcgas rs6000/t-ppccomm" + tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm" ;; powerpc-*-eabialtivec*) tm_file="${tm_file} dbxelf.h elfos.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h rs6000/eabialtivec.h" extra_options="${extra_options} rs6000/sysv4.opt" - tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppcendian rs6000/t-ppccomm" + tmake_file="rs6000/t-fprules rs6000/t-ppcendian rs6000/t-ppccomm" use_gcc_stdint=wrap ;; powerpc-xilinx-eabi*) tm_file="${tm_file} dbxelf.h elfos.h usegas.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/singlefp.h rs6000/xfpu.h rs6000/xilinx.h" extra_options="${extra_options} rs6000/sysv4.opt rs6000/xilinx.opt" - tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppcgas rs6000/t-ppccomm rs6000/t-xilinx" + tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm rs6000/t-xilinx" use_gcc_stdint=wrap ;; powerpc-*-eabi*) tm_file="${tm_file} dbxelf.h elfos.h usegas.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h" extra_options="${extra_options} rs6000/sysv4.opt" - tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppcgas rs6000/t-ppccomm" + tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm" use_gcc_stdint=wrap ;; powerpc-*-rtems*) tm_file="${tm_file} dbxelf.h elfos.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h rs6000/rtems.h rtems.h" extra_options="${extra_options} rs6000/sysv4.opt" - tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-rtems t-rtems rs6000/t-ppccomm" + tmake_file="rs6000/t-fprules rs6000/t-rtems t-rtems rs6000/t-ppccomm" ;; powerpc-*-linux* | powerpc64-*-linux*) tm_file="${tm_file} dbxelf.h elfos.h freebsd-spec.h rs6000/sysv4.h" extra_options="${extra_options} rs6000/sysv4.opt" - tmake_file="t-dfprules rs6000/t-fprules rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm" + tmake_file="rs6000/t-fprules rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm" maybe_biarch=yes case ${target} in powerpc64-*-linux*spe* | powerpc64-*-linux*paired*) @@ -2081,8 +2027,10 @@ powerpc-*-linux* | powerpc64-*-linux*) tm_file="${tm_file} rs6000/linux.h glibc-stdint.h" ;; esac - tmake_file="${tmake_file} t-slibgcc-libgcc rs6000/t-fprules-softfp soft-fp/t-softfp" case ${target} in + powerpc*-*-linux*ppc476*) + tm_file="${tm_file} rs6000/476.h" + extra_options="${extra_options} rs6000/476.opt" ;; powerpc*-*-linux*altivec*) tm_file="${tm_file} rs6000/linuxaltivec.h" ;; powerpc*-*-linux*spe*) @@ -2096,7 +2044,7 @@ powerpc-*-linux* | powerpc64-*-linux*) ;; powerpc-wrs-vxworks|powerpc-wrs-vxworksae) tm_file="${tm_file} elfos.h freebsd-spec.h rs6000/sysv4.h" - tmake_file="${tmake_file} rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppccomm rs6000/t-vxworks" + tmake_file="${tmake_file} rs6000/t-fprules rs6000/t-ppccomm rs6000/t-vxworks" extra_options="${extra_options} rs6000/sysv4.opt" extra_headers=ppc-asm.h case ${target} in @@ -2114,31 +2062,30 @@ powerpc-*-lynxos*) tm_file="${tm_file} dbxelf.h elfos.h rs6000/sysv4.h rs6000/lynx.h lynx.h" tmake_file="t-lynx rs6000/t-lynx" extra_options="${extra_options} rs6000/sysv4.opt lynx.opt" - extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o" thread_file=lynx gnu_ld=yes gas=yes ;; powerpcle-*-elf*) tm_file="${tm_file} dbxelf.h elfos.h usegas.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/sysv4le.h" - tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppcgas rs6000/t-ppccomm" + tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm" extra_options="${extra_options} rs6000/sysv4.opt" ;; powerpcle-*-eabisim*) tm_file="${tm_file} dbxelf.h elfos.h usegas.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h rs6000/e500.h rs6000/eabisim.h" - tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppcgas rs6000/t-ppccomm" + tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm" extra_options="${extra_options} rs6000/sysv4.opt" use_gcc_stdint=wrap ;; powerpcle-*-eabi*) tm_file="${tm_file} dbxelf.h elfos.h usegas.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h rs6000/e500.h" - tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppcgas rs6000/t-ppccomm" + tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm" extra_options="${extra_options} rs6000/sysv4.opt" use_gcc_stdint=wrap ;; rs6000-ibm-aix4.[3456789]* | powerpc-ibm-aix4.[3456789]*) tm_file="rs6000/biarch64.h ${tm_file} rs6000/aix.h rs6000/aix43.h rs6000/xcoff.h rs6000/aix-stdint.h" - tmake_file=rs6000/t-aix43 + tmake_file="rs6000/t-aix43 t-slibgcc" extra_options="${extra_options} rs6000/aix64.opt" use_collect2=yes thread_file='aix' @@ -2148,7 +2095,7 @@ rs6000-ibm-aix4.[3456789]* | powerpc-ibm-aix4.[3456789]*) rs6000-ibm-aix5.1.* | powerpc-ibm-aix5.1.*) tm_file="rs6000/biarch64.h ${tm_file} rs6000/aix.h rs6000/aix51.h rs6000/xcoff.h rs6000/aix-stdint.h" extra_options="${extra_options} rs6000/aix64.opt" - tmake_file=rs6000/t-aix43 + tmake_file="rs6000/t-aix43 t-slibgcc" use_collect2=yes thread_file='aix' use_gcc_stdint=wrap @@ -2156,7 +2103,7 @@ rs6000-ibm-aix5.1.* | powerpc-ibm-aix5.1.*) ;; rs6000-ibm-aix5.2.* | powerpc-ibm-aix5.2.*) tm_file="${tm_file} rs6000/aix.h rs6000/aix52.h rs6000/xcoff.h rs6000/aix-stdint.h" - tmake_file=rs6000/t-aix52 + tmake_file="rs6000/t-aix52 t-slibgcc" extra_options="${extra_options} rs6000/aix64.opt" use_collect2=yes thread_file='aix' @@ -2165,7 +2112,7 @@ rs6000-ibm-aix5.2.* | powerpc-ibm-aix5.2.*) ;; rs6000-ibm-aix5.3.* | powerpc-ibm-aix5.3.*) tm_file="${tm_file} rs6000/aix.h rs6000/aix53.h rs6000/xcoff.h rs6000/aix-stdint.h" - tmake_file=rs6000/t-aix52 + tmake_file="rs6000/t-aix52 t-slibgcc" extra_options="${extra_options} rs6000/aix64.opt" use_collect2=yes thread_file='aix' @@ -2174,19 +2121,29 @@ rs6000-ibm-aix5.3.* | powerpc-ibm-aix5.3.*) ;; rs6000-ibm-aix[6789].* | powerpc-ibm-aix[6789].*) tm_file="${tm_file} rs6000/aix.h rs6000/aix61.h rs6000/xcoff.h rs6000/aix-stdint.h" - tmake_file=rs6000/t-aix52 + tmake_file="rs6000/t-aix52 t-slibgcc" extra_options="${extra_options} rs6000/aix64.opt" use_collect2=yes thread_file='aix' use_gcc_stdint=wrap extra_headers=altivec.h ;; +rl78-*-elf*) + tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" + target_has_targetm_common=no + c_target_objs="rl78-c.o" + cxx_target_objs="rl78-c.o" + tmake_file="${tmake_file} rl78/t-rl78" + ;; rx-*-elf*) - tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file} ../../libgcc/config/rx/rx-abi.h" + tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" tmake_file="${tmake_file} rx/t-rx" ;; s390-*-linux*) tm_file="s390/s390.h dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h s390/linux.h" + if test x$enable_targets = xall; then + tmake_file="${tmake_file} s390/t-linux64" + fi ;; s390x-*-linux*) tm_file="s390/s390x.h s390/s390.h dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h s390/linux.h" @@ -2202,7 +2159,6 @@ s390x-ibm-tpf*) md_file=s390/s390.md extra_modes=s390/s390-modes.def out_file=s390/s390.c - extra_parts="crtbeginS.o crtendS.o" thread_file='tpf' extra_options="${extra_options} s390/tpf.opt" ;; @@ -2210,14 +2166,11 @@ score-*-elf) gas=yes gnu_ld=yes tm_file="dbxelf.h elfos.h score/elf.h score/score.h newlib-stdint.h" - extra_parts="crti.o crtn.o crtbegin.o crtend.o" - tmake_file="${tmake_file} score/t-score-elf score/t-score-softfp soft-fp/t-softfp" - extra_objs="score7.o" ;; sh-*-elf* | sh[12346l]*-*-elf* | \ sh-*-linux* | sh[2346lbe]*-*-linux* | \ sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* | sh5l*-*-netbsd* | \ - sh64-*-netbsd* | sh64l*-*-netbsd*) + sh64-*-netbsd* | sh64l*-*-netbsd*) tmake_file="${tmake_file} sh/t-sh sh/t-elf" if test x${with_endian} = x; then case ${target} in @@ -2258,7 +2211,6 @@ sh-*-elf* | sh[12346l]*-*-elf* | \ fi tm_file="${tm_file} sh/embed-elf.h" tm_file="${tm_file} sh/superh.h" - tmake_file="${tmake_file} sh/t-superh" extra_options="${extra_options} sh/superh.opt" ;; *) if test x$with_newlib = xyes \ && test x$with_libgloss = xyes; then @@ -2269,17 +2221,16 @@ sh-*-elf* | sh[12346l]*-*-elf* | \ case ${target} in sh5*-*-netbsd*) # SHmedia, 32-bit ABI - tmake_file="${tmake_file} sh/t-sh64 sh/t-netbsd" + tmake_file="${tmake_file} sh/t-sh64" ;; sh64*-netbsd*) # SHmedia, 64-bit ABI - tmake_file="${tmake_file} sh/t-sh64 sh/t-netbsd sh/t-netbsd-sh5-64" + tmake_file="${tmake_file} sh/t-sh64 sh/t-netbsd-sh5-64" ;; *-*-netbsd) - tmake_file="${tmake_file} sh/t-netbsd" ;; sh64*-*-linux*) - tmake_file="${tmake_file} sh/t-sh64 sh/t-linux64" + tmake_file="${tmake_file} sh/t-sh64" tm_file="${tm_file} sh/sh64.h" extra_headers="shmedia.h ushmedia.h sshmedia.h" ;; @@ -2393,46 +2344,43 @@ sh-*-elf* | sh[12346l]*-*-elf* | \ tmake_file="$tmake_file t-sysroot-suffix" ;; sh-*-rtems*) - tmake_file="sh/t-sh sh/t-elf t-rtems sh/t-rtems" + tmake_file="sh/t-sh t-rtems sh/t-rtems" tm_file="${tm_file} dbxelf.h elfos.h sh/elf.h sh/embed-elf.h sh/rtemself.h rtems.h newlib-stdint.h" ;; sh-wrs-vxworks) - tmake_file="$tmake_file sh/t-sh sh/t-elf sh/t-vxworks" + tmake_file="$tmake_file sh/t-sh sh/t-vxworks" tm_file="${tm_file} elfos.h sh/elf.h sh/embed-elf.h vx-common.h vxworks.h sh/vxworks.h" ;; sparc-*-elf*) tm_file="${tm_file} dbxelf.h elfos.h newlib-stdint.h sparc/sysv4.h sparc/sp-elf.h" case ${target} in *-leon-*) - tmake_file="sparc/t-leon" + tmake_file="sparc/t-sparc sparc/t-leon" ;; *-leon[3-9]*) - tmake_file="sparc/t-leon3" + tmake_file="sparc/t-sparc sparc/t-leon3" ;; *) - tmake_file="sparc/t-elf" + tmake_file="sparc/t-sparc sparc/t-elf" ;; esac - tmake_file="${tmake_file} sparc/t-crtfm" - extra_parts="crtbegin.o crtend.o" ;; sparc-*-rtems*) tm_file="${tm_file} dbxelf.h elfos.h sparc/sysv4.h sparc/sp-elf.h sparc/rtemself.h rtems.h newlib-stdint.h" - tmake_file="sparc/t-elf sparc/t-crtfm t-rtems" - extra_parts="crtbegin.o crtend.o" + tmake_file="sparc/t-sparc sparc/t-elf t-rtems" ;; sparc-*-linux*) - tm_file="${tm_file} dbxelf.h elfos.h sparc/sysv4.h gnu-user.h linux.h glibc-stdint.h" + tm_file="${tm_file} dbxelf.h elfos.h sparc/sysv4.h gnu-user.h linux.h glibc-stdint.h sparc/tso.h" extra_options="${extra_options} sparc/long-double-switch.opt" case ${target} in *-leon-*) - tmake_file="${tmake_file} sparc/t-leon" + tmake_file="${tmake_file} sparc/t-sparc sparc/t-leon" ;; *-leon[3-9]*) - tmake_file="${tmake_file} sparc/t-leon3" + tmake_file="${tmake_file} sparc/t-sparc sparc/t-leon3" ;; *) - tmake_file="${tmake_file} sparc/t-linux" + tmake_file="${tmake_file} sparc/t-sparc" ;; esac if test x$enable_targets = xall; then @@ -2441,155 +2389,126 @@ sparc-*-linux*) else tm_file="${tm_file} sparc/linux.h" fi - tmake_file="${tmake_file} sparc/t-crtfm" ;; sparc-*-netbsdelf*) tm_file="${tm_file} dbxelf.h elfos.h sparc/sysv4.h netbsd.h netbsd-elf.h sparc/netbsd-elf.h" extra_options="${extra_options} netbsd.opt netbsd-elf.opt" extra_options="${extra_options} sparc/long-double-switch.opt" + tmake_file="${tmake_file} sparc/t-sparc" ;; sparc*-*-solaris2*) - tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h sparc/sysv4.h sol2.h" - case ${target} in - *-*-solaris2.1[0-9]*) - tm_file="${tm_file} sol2-10.h" - use_gcc_stdint=wrap - ;; - *) - use_gcc_stdint=provide - ;; - esac - tm_file="${tm_file} sparc/sol2.h" + tm_file="sparc/biarch64.h ${tm_file} ${sol2_tm_file} sol2-bi.h sparc/tso.h" case ${target} in sparc64-*-* | sparcv9-*-*) - tm_file="${tm_file} sparc/sol2-64.h" + tm_file="sparc/default-64.h ${tm_file}" ;; *) test x$with_cpu != x || with_cpu=v9 ;; esac - tm_file="${tm_file} sparc/sol2-bi.h" - if test x$gas = xyes; then - tm_file="${tm_file} sparc/sol2-gas.h sparc/sol2-gas-bi.h" - fi - if test x$gnu_ld = xyes; then - tm_file="${tm_file} sol2-gld.h sparc/sol2-gld-bi.h" - fi - tm_file="${tm_file} tm-dwarf2.h" - tmake_file="t-sol2 sparc/t-sol2 sparc/t-sol2-64 sparc/t-crtfm" - if test x$gnu_ld = xyes; then - tmake_file="$tmake_file t-slibgcc-elf-ver" - else - tmake_file="$tmake_file t-slibgcc-sld" - fi - if test x$gas = xyes; then - tm_file="usegas.h ${tm_file}" - fi - c_target_objs="sol2-c.o" - cxx_target_objs="sol2-c.o" - extra_objs="sol2.o" - tm_p_file="${tm_p_file} sol2-protos.h" - extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o" - case ${enable_threads}:${have_pthread_h}:${have_thread_h} in - "":yes:* | yes:yes:* ) - thread_file=posix - ;; - esac + tmake_file="${tmake_file} sparc/t-sparc sparc/t-sol2-64" ;; sparc-wrs-vxworks) tm_file="${tm_file} elfos.h sparc/sysv4.h vx-common.h vxworks.h sparc/vxworks.h" - tmake_file="${tmake_file} sparc/t-vxworks" + tmake_file="${tmake_file} sparc/t-sparc sparc/t-vxworks" ;; sparc64-*-elf*) tm_file="${tm_file} dbxelf.h elfos.h newlib-stdint.h sparc/sysv4.h sparc/sp64-elf.h" - extra_options="${extra_options} sparc/little-endian.opt" - tmake_file="${tmake_file} sparc/t-crtfm" - extra_parts="crtbegin.o crtend.o" + extra_options="${extra_options}" + tmake_file="${tmake_file} sparc/t-sparc" ;; sparc64-*-rtems*) tm_file="${tm_file} dbxelf.h elfos.h newlib-stdint.h sparc/sysv4.h sparc/sp64-elf.h sparc/rtemself.h rtems.h" - extra_options="${extra_options} sparc/little-endian.opt" - tmake_file="${tmake_file} sparc/t-crtfm t-rtems" - extra_parts="crtbegin.o crtend.o" + extra_options="${extra_options}" + tmake_file="${tmake_file} sparc/t-sparc t-rtems" ;; sparc64-*-linux*) - tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h sparc/sysv4.h gnu-user.h linux.h glibc-stdint.h sparc/linux64.h" + tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h sparc/sysv4.h gnu-user.h linux.h glibc-stdint.h sparc/default-64.h sparc/linux64.h sparc/tso.h" extra_options="${extra_options} sparc/long-double-switch.opt" - tmake_file="${tmake_file} sparc/t-linux sparc/t-linux64 sparc/t-crtfm" + tmake_file="${tmake_file} sparc/t-sparc sparc/t-linux64" ;; sparc64-*-freebsd*|ultrasparc-*-freebsd*) tm_file="${tm_file} ${fbsd_tm_file} dbxelf.h elfos.h sparc/sysv4.h sparc/freebsd.h" extra_options="${extra_options} sparc/long-double-switch.opt" - tmake_file="${tmake_file} sparc/t-crtfm" case "x$with_cpu" in xultrasparc) ;; x) with_cpu=ultrasparc ;; *) echo "$with_cpu not supported for freebsd target"; exit 1 ;; esac + tmake_file="${tmake_file} sparc/t-sparc" ;; sparc64-*-netbsd*) tm_file="sparc/biarch64.h ${tm_file}" tm_file="${tm_file} dbxelf.h elfos.h sparc/sysv4.h netbsd.h netbsd-elf.h sparc/netbsd-elf.h" extra_options="${extra_options} netbsd.opt netbsd-elf.opt" extra_options="${extra_options} sparc/long-double-switch.opt" - tmake_file="${tmake_file} sparc/t-netbsd64" + tmake_file="${tmake_file} sparc/t-sparc sparc/t-netbsd64" ;; sparc64-*-openbsd*) tm_file="sparc/openbsd1-64.h ${tm_file} dbxelf.h elfos.h sparc/sysv4.h sparc/sp64-elf.h" tm_file="${tm_file} openbsd.h openbsd-stdint.h openbsd-libpthread.h sparc/openbsd64.h" extra_options="${extra_options} openbsd.opt" - extra_options="${extra_options} sparc/little-endian.opt" + extra_options="${extra_options}" gas=yes gnu_ld=yes with_cpu=ultrasparc + tmake_file="${tmake_file} sparc/t-sparc" ;; spu-*-elf*) tm_file="dbxelf.h elfos.h spu/spu-elf.h spu/spu.h newlib-stdint.h" tmake_file="spu/t-spu-elf" + native_system_header_dir=/include extra_headers="spu_intrinsics.h spu_internals.h vmx2spu.h spu_mfcio.h vec_types.h spu_cache.h" extra_modes=spu/spu-modes.def c_target_objs="${c_target_objs} spu-c.o" cxx_target_objs="${cxx_target_objs} spu-c.o" ;; -v850e1-*-*) - target_cpu_default="TARGET_CPU_v850e1" - tm_file="dbxelf.h elfos.h newlib-stdint.h v850/v850.h" - tm_p_file=v850/v850-protos.h - tmake_file=v850/t-v850e - md_file=v850/v850.md - extra_modes=v850/v850-modes.def - out_file=v850/v850.c - extra_options="${extra_options} v850/v850.opt" - if test x$stabs = xyes - then - tm_file="${tm_file} dbx.h" - fi +tic6x-*-elf) + tm_file="elfos.h ${tm_file} c6x/elf-common.h c6x/elf.h" + tm_file="${tm_file} dbxelf.h tm-dwarf2.h newlib-stdint.h" + tmake_file="c6x/t-c6x c6x/t-c6x-elf" use_collect2=no - c_target_objs="v850-c.o" - cxx_target_objs="v850-c.o" - use_gcc_stdint=wrap ;; -v850e-*-*) - target_cpu_default="TARGET_CPU_v850e" - tm_file="dbxelf.h elfos.h newlib-stdint.h v850/v850.h" - tm_p_file=v850/v850-protos.h - tmake_file=v850/t-v850e - md_file=v850/v850.md - extra_modes=v850/v850-modes.def - out_file=v850/v850.c - extra_options="${extra_options} v850/v850.opt" - if test x$stabs = xyes - then - tm_file="${tm_file} dbx.h" - fi +tic6x-*-uclinux) + tm_file="elfos.h ${tm_file} gnu-user.h linux.h c6x/elf-common.h c6x/uclinux-elf.h" + tm_file="${tm_file} dbxelf.h tm-dwarf2.h glibc-stdint.h" + tm_file="${tm_file} ./sysroot-suffix.h" + tmake_file="t-sysroot-suffix t-slibgcc" + tmake_file="${tmake_file} c6x/t-c6x c6x/t-c6x-elf c6x/t-c6x-uclinux" use_collect2=no - c_target_objs="v850-c.o" - cxx_target_objs="v850-c.o" - use_gcc_stdint=wrap ;; -v850-*-*) - target_cpu_default="TARGET_CPU_generic" - tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}" - tmake_file=v850/t-v850 +tilegx-*-linux*) + tm_file="elfos.h gnu-user.h linux.h glibc-stdint.h tilegx/linux.h ${tm_file}" + tmake_file="${tmake_file} tilegx/t-tilegx" + extra_objs="mul-tables.o" + c_target_objs="tilegx-c.o" + cxx_target_objs="tilegx-c.o" + ;; +tilepro-*-linux*) + tm_file="elfos.h gnu-user.h linux.h glibc-stdint.h tilepro/linux.h ${tm_file}" + tmake_file="${tmake_file} tilepro/t-tilepro" + extra_objs="mul-tables.o" + c_target_objs="tilepro-c.o" + cxx_target_objs="tilepro-c.o" + ;; +v850*-*-*) + case ${target} in + v850e2v3-*-*) + target_cpu_default="TARGET_CPU_v850e2v3" + ;; + v850e2-*-*) + target_cpu_default="TARGET_CPU_v850e2" + ;; + v850e1-*-* | v850es-*-*) + target_cpu_default="TARGET_CPU_v850e1" + ;; + v850e-*-*) + target_cpu_default="TARGET_CPU_v850e" + ;; + v850-*-*) + target_cpu_default="TARGET_CPU_generic" + ;; + esac + tm_file="dbxelf.h elfos.h newlib-stdint.h v850/v850.h" if test x$stabs = xyes then tm_file="${tm_file} dbx.h" @@ -2602,7 +2521,6 @@ v850-*-*) vax-*-linux*) tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h linux.h vax/elf.h vax/linux.h" extra_options="${extra_options} vax/elf.opt" - tmake_file="${tmake_file} vax/t-linux" ;; vax-*-netbsdelf*) tm_file="${tm_file} elfos.h netbsd.h netbsd-elf.h vax/elf.h vax/netbsd-elf.h" @@ -2621,22 +2539,18 @@ xstormy16-*-elf) out_file=stormy16/stormy16.c extra_options=stormy16/stormy16.opt tmake_file="stormy16/t-stormy16" - extra_parts="crtbegin.o crtend.o" ;; xtensa*-*-elf*) tm_file="${tm_file} dbxelf.h elfos.h newlib-stdint.h xtensa/elf.h" extra_options="${extra_options} xtensa/elf.opt" - tmake_file="xtensa/t-xtensa xtensa/t-elf" ;; xtensa*-*-linux*) tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h xtensa/linux.h" - tmake_file="${tmake_file} xtensa/t-xtensa xtensa/t-linux" + tmake_file="${tmake_file} xtensa/t-xtensa" ;; am33_2.0-*-linux*) tm_file="mn10300/mn10300.h dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h mn10300/linux.h" - tmake_file="${tmake_file} mn10300/t-linux" gas=yes gnu_ld=yes - extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o" use_collect2=no ;; m32c-*-rtems*) @@ -2672,6 +2586,14 @@ if [ "$target_has_targetcm" = "no" ]; then cxx_target_objs="$cxx_target_objs default-c.o" fi +if [ "$common_out_file" = "" ]; then + if [ "$target_has_targetm_common" = "yes" ]; then + common_out_file="$cpu_type/$cpu_type-common.c" + else + common_out_file="default-common.c" + fi +fi + # Support for --with-cpu and related options (and a few unrelated options, # too). case ${with_cpu} in @@ -2738,6 +2660,10 @@ case ${target} in ;; i686-*-* | i786-*-*) case ${target_noncanonical} in + bdver2-*) + arch=bdver2 + cpu=bdver2 + ;; bdver1-*) arch=bdver1 cpu=bdver1 @@ -2831,6 +2757,10 @@ case ${target} in ;; x86_64-*-*) case ${target_noncanonical} in + bdver2-*) + arch=bdver2 + cpu=bdver2 + ;; bdver1-*) arch=bdver1 cpu=bdver1 @@ -3064,7 +2994,7 @@ case "${target}" in ;; arm*-*-*) - supported_defaults="arch cpu float tune fpu abi mode" + supported_defaults="arch cpu float tune fpu abi mode tls" for which in cpu tune; do # See if it matches any of the entries in arm-cores.def eval "val=\$with_$which" @@ -3147,6 +3077,17 @@ case "${target}" in ;; esac + case "$with_tls" in + "" \ + | gnu | gnu2) + # OK + ;; + *) + echo "Unknown TLS method used in --with-tls=$with_tls" 1>&2 + exit 1 + ;; + esac + if test "x$with_arch" != x && test "x$with_cpu" != x; then echo "Warning: --with-arch overrides --with-cpu=$with_cpu" 1>&2 fi @@ -3255,8 +3196,9 @@ case "${target}" in ;; "" | x86-64 | generic | native \ | k8 | k8-sse3 | athlon64 | athlon64-sse3 | opteron \ - | opteron-sse3 | athlon-fx | bdver1 | btver1 | amdfam10 \ - | barcelona | nocona | core2 | corei7 | corei7-avx | atom) + | opteron-sse3 | athlon-fx | bdver2 | bdver1 | btver1 \ + | amdfam10 | barcelona | nocona | core2 | corei7 \ + | corei7-avx | core-avx-i | core-avx2 | atom) # OK ;; *) @@ -3443,7 +3385,8 @@ case "${target}" in | v8 | supersparc | hypersparc | leon \ | sparclite | f930 | f934 | sparclite86x \ | sparclet | tsc701 \ - | v9 | ultrasparc | ultrasparc3 | niagara | niagara2) + | v9 | ultrasparc | ultrasparc3 | niagara | niagara2 \ + | niagara3 | niagara4) # OK ;; *) @@ -3481,10 +3424,24 @@ case "${target}" in done ;; + tic6x-*-*) + supported_defaults="arch" + + case ${with_arch} in + "" | c62x | c64x | c64x+ | c67x | c67x+ | c674x) + # OK + ;; + *) + echo "Unknown arch used in --with-arch=$with_arch." 1>&2 + exit 1 + ;; + esac + ;; + v850*-*-*) supported_defaults=cpu case ${with_cpu} in - "" | v850e | v850e1) + "" | v850e | v850e1 | v850e2 | v850es | v850e2v3) # OK ;; *) @@ -3524,30 +3481,25 @@ case ${target} in fido*-*-* | m68k*-*-*) target_cpu_default2=$m68k_cpu_ident + tmake_file="m68k/t-opts $tmake_file" if [ x"$m68k_arch_family" != x ]; then tmake_file="m68k/t-$m68k_arch_family $tmake_file" fi ;; i[34567]86-*-darwin* | x86_64-*-darwin*) - tmake_file="${tmake_file} i386/t-fprules-softfp soft-fp/t-softfp" ;; i[34567]86-*-linux* | x86_64-*-linux* | \ i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu | \ i[34567]86-*-gnu*) - tmake_file="${tmake_file} i386/t-fprules-softfp soft-fp/t-softfp i386/t-linux" ;; - i[34567]86-*-solaris2*) - tmake_file="${tmake_file} i386/t-fprules-softfp soft-fp/t-softfp" + i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*) ;; i[34567]86-*-cygwin* | i[34567]86-*-mingw* | x86_64-*-mingw*) - tmake_file="${tmake_file} i386/t-fprules-softfp soft-fp/t-softfp" ;; i[34567]86-*-freebsd* | x86_64-*-freebsd*) - tmake_file="${tmake_file} i386/t-fprules-softfp soft-fp/t-softfp" ;; ia64*-*-linux*) - tmake_file="${tmake_file} ia64/t-fprules-softfp soft-fp/t-softfp" ;; mips*-*-*) @@ -3611,20 +3563,21 @@ case ${target} in ;; v850*-*-*) - # FIXME: The v850 is "special" in that it does not support - # runtime CPU selection, only --with-cpu. case "x$with_cpu" in x) ;; - xv850e) + xv850e | xv850e1 | xv850e2 | xv850e2v3) target_cpu_default2="TARGET_CPU_$with_cpu" ;; + xv850es) + target_cpu_default2="TARGET_CPU_v850e1" + ;; esac ;; esac t= -all_defaults="abi cpu cpu_32 cpu_64 arch arch_32 arch_64 tune tune_32 tune_64 schedule float mode fpu divide llsc mips-plt synci" +all_defaults="abi cpu cpu_32 cpu_64 arch arch_32 arch_64 tune tune_32 tune_64 schedule float mode fpu divide llsc mips-plt synci tls" for option in $all_defaults do eval "val=\$with_"`echo $option | sed s/-/_/g`