*** config.rpath.ORIG Mon Jan 28 13:34:39 2008 --- config.rpath Mon Jan 28 15:22:19 2008 *************** *** 125,131 **** ld_shlibs=yes if test "$with_gnu_ld" = yes; then case "$host_os" in ! aix3* | aix4* | aix5*) # On AIX/PPC, the GNU linker is very broken if test "$host_cpu" != ia64; then ld_shlibs=no --- 125,131 ---- ld_shlibs=yes if test "$with_gnu_ld" = yes; then case "$host_os" in ! aix3* | aix4* | aix5* | aix6*) # On AIX/PPC, the GNU linker is very broken if test "$host_cpu" != ia64; then ld_shlibs=no *************** *** 198,204 **** hardcode_direct=unsupported fi ;; ! aix4* | aix5*) if test "$host_cpu" = ia64; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. --- 198,204 ---- hardcode_direct=unsupported fi ;; ! aix4* | aix5* | aix6*) if test "$host_cpu" = ia64; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. *************** *** 208,214 **** # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we # need to do runtime linking. ! case $host_os in aix4.[23]|aix4.[23].*|aix5*) for ld_flag in $LDFLAGS; do if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then aix_use_runtimelinking=yes --- 208,214 ---- # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we # need to do runtime linking. ! case $host_os in aix4.[23]|aix4.[23].*|aix5*|aix6*) for ld_flag in $LDFLAGS; do if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then aix_use_runtimelinking=yes *************** *** 432,438 **** case "$host_os" in aix3*) ;; ! aix4* | aix5*) ;; amigaos*) ;; --- 432,438 ---- case "$host_os" in aix3*) ;; ! aix4* | aix5* | aix6*) ;; amigaos*) ;; *** ltcf-c.sh.ORIG Mon Jan 28 13:34:39 2008 --- ltcf-c.sh Mon Jan 28 15:22:19 2008 *************** *** 57,63 **** # See if GNU ld supports shared libraries. case $host_os in ! aix3* | aix4* | aix5*) # On AIX/PPC, the GNU linker is very broken if test "$host_cpu" != ia64; then ld_shlibs=no --- 57,63 ---- # See if GNU ld supports shared libraries. case $host_os in ! aix3* | aix4* | aix5* | aix6*) # On AIX/PPC, the GNU linker is very broken if test "$host_cpu" != ia64; then ld_shlibs=no *************** *** 263,269 **** fi ;; ! aix4* | aix5*) hardcode_direct=yes hardcode_libdir_separator=':' link_all_deplibs=yes --- 263,269 ---- fi ;; ! aix4* | aix5* | aix6*) hardcode_direct=yes hardcode_libdir_separator=':' link_all_deplibs=yes *** ltcf-cxx.sh.ORIG Mon Jan 28 13:34:39 2008 --- ltcf-cxx.sh Mon Jan 28 15:22:19 2008 *************** *** 123,129 **** # FIXME: insert proper C++ library support ld_shlibs=no ;; ! aix4* | aix5*) archive_cmds='' hardcode_direct=yes hardcode_libdir_separator=':' --- 123,129 ---- # FIXME: insert proper C++ library support ld_shlibs=no ;; ! aix4* | aix5* | aix6*) archive_cmds='' hardcode_direct=yes hardcode_libdir_separator=':' *************** *** 778,784 **** esac else case $host_os in ! aix4* | aix5*) # All AIX code is PIC. if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor --- 778,784 ---- esac else case $host_os in ! aix4* | aix5* | aix6*) # All AIX code is PIC. if test "$host_cpu" = ia64; then # AIX 5 now supports IA64 processor *** ltcf-gcj.sh.ORIG Mon Jan 28 13:34:39 2008 --- ltcf-gcj.sh Mon Jan 28 15:22:19 2008 *************** *** 60,66 **** # See if GNU ld supports shared libraries. case $host_os in ! aix3* | aix4* | aix5*) # On AIX/PPC, the GNU linker is very broken if test "$host_cpu" != ia64; then ld_shlibs=no --- 60,66 ---- # See if GNU ld supports shared libraries. case $host_os in ! aix3* | aix4* | aix5* | aix6*) # On AIX/PPC, the GNU linker is very broken if test "$host_cpu" != ia64; then ld_shlibs=no *************** *** 262,268 **** fi ;; ! aix4* | aix5*) hardcode_direct=yes hardcode_libdir_separator=':' link_all_deplibs=yes --- 262,268 ---- fi ;; ! aix4* | aix5* | aix6*) hardcode_direct=yes hardcode_libdir_separator=':' link_all_deplibs=yes *** ltconfig.ORIG Mon Jan 28 13:34:39 2008 --- ltconfig Mon Jan 28 15:22:19 2008 *************** *** 989,995 **** soname_spec='${libname}${release}.so$major' ;; ! aix4* | aix5*) version_type=linux if test "$host_cpu" = ia64; then # AIX 5 supports IA64 --- 989,995 ---- soname_spec='${libname}${release}.so$major' ;; ! aix4* | aix5* | aix6*) version_type=linux if test "$host_cpu" = ia64; then # AIX 5 supports IA64 *************** *** 1616,1622 **** fi ;; ! aix4* | aix5*) test "$enable_shared" = yes && enable_static=no ;; esac --- 1616,1622 ---- fi ;; ! aix4* | aix5* | aix6*) test "$enable_shared" = yes && enable_static=no ;; esac *** gcc/config.gcc.ORIG Tue Jan 29 14:21:05 2008 --- gcc/config.gcc Mon Jan 28 23:27:37 2008 *************** *** 1,6 **** # GCC target-specific configuration file. ! # Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 ! # Free Software Foundation, Inc. #This file is part of GCC. --- 1,6 ---- # GCC target-specific configuration file. ! # Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, ! # 2008 Free Software Foundation, Inc. #This file is part of GCC. *************** *** 24,29 **** --- 24,32 ---- # configure script. Putting it in a separate shell file lets us skip # running autoconf when modifying target-specific information. + # When you change the cases in the OS or target switches, consider + # updating ../libgcc/config.host also. + # This file switches on the shell variable ${target}, and also uses the # following shell variables: # *************** *** 94,99 **** --- 97,105 ---- # extra_headers List of used header files from the directory # config/${cpu_type}. # + # use_gcc_tgmath If set, add tgmath.h to the list of used header + # files. + # # extra_passes List of extra executables compiled for this target # machine, used for compiling from source to object. # *************** *** 152,157 **** --- 158,164 ---- out_file= tmake_file= extra_headers= + use_gcc_tgmath=yes extra_passes= extra_parts= extra_programs= *************** *** 188,195 **** # Obsolete configurations. case ${target} in ! c4x-* \ ! | tic4x-* \ ) if test "x$enable_obsolete" != xyes; then echo "*** Configuration ${target} is obsolete." >&2 --- 195,202 ---- # Obsolete configurations. case ${target} in ! crx-* \ ! | mt-* \ ) if test "x$enable_obsolete" != xyes; then echo "*** Configuration ${target} is obsolete." >&2 *************** *** 251,266 **** ;; arm*-*-*) cpu_type=arm ! extra_headers="mmintrin.h" ;; bfin*-*) cpu_type=bfin ;; ep9312*-*-*) cpu_type=arm ;; frv*) cpu_type=frv ;; xscale-*-*) cpu_type=arm extra_headers="mmintrin.h" --- 258,282 ---- ;; arm*-*-*) cpu_type=arm ! extra_headers="mmintrin.h arm_neon.h" ! c_target_objs="arm-c.o" ! cxx_target_objs="arm-c.o" ;; bfin*-*) cpu_type=bfin ;; + crisv32-*) + cpu_type=cris + ;; ep9312*-*-*) cpu_type=arm ;; frv*) cpu_type=frv ;; + fido-*-*) + cpu_type=m68k + extra_headers=math-68881.h + ;; xscale-*-*) cpu_type=arm extra_headers="mmintrin.h" *************** *** 267,277 **** ;; i[34567]86-*-*) cpu_type=i386 ! extra_headers="mmintrin.h mm3dnow.h xmmintrin.h emmintrin.h pmmintrin.h" ;; x86_64-*-*) cpu_type=i386 ! extra_headers="mmintrin.h mm3dnow.h xmmintrin.h emmintrin.h pmmintrin.h" need_64bit_hwint=yes ;; ia64-*-*) --- 283,297 ---- ;; i[34567]86-*-*) cpu_type=i386 ! extra_headers="cpuid.h mmintrin.h mm3dnow.h xmmintrin.h emmintrin.h ! pmmintrin.h tmmintrin.h ammintrin.h smmintrin.h ! nmmintrin.h bmmintrin.h mmintrin-common.h" ;; x86_64-*-*) cpu_type=i386 ! extra_headers="cpuid.h mmintrin.h mm3dnow.h xmmintrin.h emmintrin.h ! pmmintrin.h tmmintrin.h ammintrin.h smmintrin.h ! nmmintrin.h bmmintrin.h mmintrin-common.h" need_64bit_hwint=yes ;; ia64-*-*) *************** *** 297,306 **** ;; powerpc*-*-*) cpu_type=rs6000 ! extra_headers="ppc-asm.h altivec.h spe.h" need_64bit_hwint=yes case x$with_cpu in ! xpowerpc64|xdefault64|x6[23]0|x970|xG5|xpower[3456]|xrs64a) cpu_is_64bit=yes ;; esac --- 317,326 ---- ;; powerpc*-*-*) cpu_type=rs6000 ! extra_headers="ppc-asm.h altivec.h spe.h ppu_intrinsics.h paired.h spu2vmx.h vec_types.h si2vmx.h" need_64bit_hwint=yes case x$with_cpu in ! xpowerpc64|xdefault64|x6[23]0|x970|xG5|xpower[3456]|xpower6x|xrs64a|xcell) cpu_is_64bit=yes ;; esac *************** *** 318,323 **** --- 338,347 ---- sparc*-*-*) cpu_type=sparc ;; + spu*-*-*) + cpu_type=spu + need_64bit_hwint=yes + ;; s390*-*-*) cpu_type=s390 need_64bit_hwint=yes *************** *** 327,335 **** cpu_type=sh need_64bit_hwint=yes ;; - tic4x-*-*) - cpu_type=c4x - ;; esac tm_file=${cpu_type}/${cpu_type}.h --- 351,356 ---- *************** *** 377,382 **** --- 398,404 ---- c_target_objs="darwin-c.o" cxx_target_objs="darwin-c.o" extra_objs="darwin.o" + extra_gcc_objs="darwin-driver.o" default_use_cxa_atexit=yes case ${enable_threads} in "" | yes | posix) thread_file='posix' ;; *************** *** 410,435 **** gas=yes gnu_ld=yes extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o" ! case ${target} in ! *-*-freebsd3 | *-*-freebsd[3].*) ! tm_defines="${tm_defines} FBSD_MAJOR=3" ;; ! *-*-freebsd4 | *-*-freebsd[4].*) ! tm_defines="${tm_defines} FBSD_MAJOR=4" ;; ! *-*-freebsd5 | *-*-freebsd[5].*) ! tm_defines="${tm_defines} FBSD_MAJOR=5" ;; ! *-*-freebsd6 | *-*-freebsd[6].*) ! tm_defines="${tm_defines} FBSD_MAJOR=6" ;; ! *-*-freebsd7 | *-*-freebsd[7].*) ! tm_defines="${tm_defines} FBSD_MAJOR=7" ;; ! *-*-freebsd8 | *-*-freebsd[8].*) ! tm_defines="${tm_defines} FBSD_MAJOR=8" ;; ! *-*-freebsd9 | *-*-freebsd[9].*) ! tm_defines="${tm_defines} FBSD_MAJOR=9" ;; ! *) ! echo 'Please update *-*-freebsd* in gcc/config.gcc' ! exit 1 ! ;; ! esac tmake_file="t-slibgcc-elf-ver t-freebsd" case ${enable_threads} in no) --- 432,439 ---- 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" case ${enable_threads} in no) *************** *** 476,481 **** --- 480,486 ---- esac # Assume that glibc or uClibc are being used and so __cxa_atexit is provided. default_use_cxa_atexit=yes + use_gcc_tgmath=no ;; *-*-gnu*) # On the Hurd, the setup is just about the same on *************** *** 499,504 **** --- 504,510 ---- esac # Assume that glibc is being used and so __cxa_atexit is provided. default_use_cxa_atexit=yes + use_gcc_tgmath=no ;; *-*-netbsd*) tmake_file="t-slibgcc-elf-ver t-libc-ok t-netbsd t-libgcc-pic" *************** *** 559,567 **** ;; *-*-vxworks*) tmake_file=t-vxworks - tm_file="${tm_file} elfos.h svr4.h" xm_defines=POSIX extra_options="${extra_options} vxworks.opt" case ${enable_threads} in no) ;; "" | yes | vxworks) thread_file='vxworks' ;; --- 565,573 ---- ;; *-*-vxworks*) tmake_file=t-vxworks xm_defines=POSIX extra_options="${extra_options} vxworks.opt" + extra_objs=vxworks.o case ${enable_threads} in no) ;; "" | yes | vxworks) thread_file='vxworks' ;; *************** *** 678,689 **** tm_file="arm/semi.h arm/aout.h arm/arm.h arm/coff.h dbxcoff.h" tmake_file="arm/t-arm arm/t-arm-coff" ;; - arm-semi-aof | armel-semi-aof) - tm_file="arm/semiaof.h arm/aof.h arm/arm.h" - tmake_file="arm/t-arm arm/t-semi" - ;; arm-wrs-vxworks) ! tm_file="dbxelf.h elfos.h svr4.h vxworks.h arm/elf.h arm/aout.h arm/arm.h arm/vxworks.h" tmake_file="${tmake_file} arm/t-arm arm/t-vxworks" ;; arm*-*-freebsd*|strongarm*-*-freebsd*) --- 684,691 ---- tm_file="arm/semi.h arm/aout.h arm/arm.h arm/coff.h dbxcoff.h" tmake_file="arm/t-arm arm/t-arm-coff" ;; arm-wrs-vxworks) ! tm_file="elfos.h arm/elf.h arm/aout.h ${tm_file} vx-common.h vxworks.h arm/vxworks.h" tmake_file="${tmake_file} arm/t-arm arm/t-vxworks" ;; arm*-*-freebsd*|strongarm*-*-freebsd*) *************** *** 702,707 **** --- 704,714 ---- ;; arm*-*-linux*) # ARM GNU/Linux with ELF tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h" + case $target in + arm*b-*) + tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=1" + ;; + esac tmake_file="${tmake_file} t-linux arm/t-arm" case ${target} in arm*-*-linux-*eabi) *************** *** 721,728 **** tm_file="$tm_file arm/aout.h arm/arm.h" ;; arm*-*-uclinux*) # ARM ucLinux ! tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/linux-gas.h arm/linux-elf.h arm/uclinux-elf.h" tmake_file="arm/t-arm arm/t-arm-elf" ;; arm*-*-ecos-elf) tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/ecos-elf.h" --- 728,747 ---- tm_file="$tm_file arm/aout.h arm/arm.h" ;; 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 arm/uclinux-elf.h" tmake_file="arm/t-arm arm/t-arm-elf" + case ${target} in + arm*-*-uclinux-*eabi) + tm_file="$tm_file arm/bpabi.h arm/uclinux-eabi.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 + # TImode. + need_64bit_hwint=yes + # The EABI requires the use of __cxa_atexit. + default_use_cxa_atexit=yes + esac + tm_file="$tm_file arm/aout.h arm/arm.h" ;; arm*-*-ecos-elf) tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/ecos-elf.h" *************** *** 783,816 **** ;; bfin*-elf*) tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h" ! tmake_file=bfin/t-bfin-elf ! use_collect2=no ! ;; bfin*-uclinux*) ! tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h bfin/uclinux.h" ! tmake_file=bfin/t-bfin-elf ! use_collect2=no ! ;; bfin*-rtems*) tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h bfin/rtems.h rtems.h" tmake_file="bfin/t-bfin t-rtems bfin/t-rtems" ! ;; bfin*-*) tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h" ! tmake_file=bfin/t-bfin ! use_collect2=no ! ;; ! c4x-*-rtems* | tic4x-*-rtems*) ! tmake_file="c4x/t-c4x t-rtems c4x/t-rtems" ! tm_file="c4x/c4x.h c4x/rtems.h rtems.h" ! c_target_objs="c4x-c.o" ! cxx_target_objs="c4x-c.o" ;; - c4x-* | tic4x-*) - tmake_file=c4x/t-c4x - c_target_objs="c4x-c.o" - cxx_target_objs="c4x-c.o" - ;; cris-*-aout) tm_file="dbxelf.h ${tm_file} cris/aout.h" gas=yes --- 802,832 ---- ;; bfin*-elf*) tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h" ! tmake_file=bfin/t-bfin-elf ! use_collect2=no ! ;; bfin*-uclinux*) ! tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h linux.h bfin/uclinux.h" ! tmake_file=bfin/t-bfin-uclinux ! tm_defines="${tm_defines} UCLIBC_DEFAULT=1" ! extra_options="${extra_options} linux.opt" ! use_collect2=no ! ;; ! bfin*-linux-uclibc*) ! tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h linux.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" ! use_collect2=no ! ;; bfin*-rtems*) tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h bfin/rtems.h rtems.h" tmake_file="bfin/t-bfin t-rtems bfin/t-rtems" ! ;; bfin*-*) tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h" ! tmake_file=bfin/t-bfin ! use_collect2=no ;; cris-*-aout) tm_file="dbxelf.h ${tm_file} cris/aout.h" gas=yes *************** *** 817,822 **** --- 833,845 ---- tmake_file="cris/t-cris cris/t-aout" extra_options="${extra_options} cris/aout.opt" ;; + crisv32-*-elf | crisv32-*-none) + tm_file="dbxelf.h elfos.h ${tm_file}" + tmake_file="cris/t-cris" + target_cpu_default=32 + gas=yes + extra_options="${extra_options} cris/elf.opt" + ;; cris-*-elf | cris-*-none) tm_file="dbxelf.h elfos.h ${tm_file}" tmake_file="cris/t-cris cris/t-elfmulti" *************** *** 823,833 **** gas=yes extra_options="${extra_options} cris/elf.opt" ;; ! cris-*-linux*) tm_file="dbxelf.h elfos.h svr4.h ${tm_file} linux.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" extra_options="${extra_options} cris/linux.opt" ;; crx-*-elf) tm_file="elfos.h ${tm_file}" --- 846,864 ---- gas=yes extra_options="${extra_options} cris/elf.opt" ;; ! crisv32-*-linux* | cris-*-linux*) tm_file="dbxelf.h elfos.h svr4.h ${tm_file} linux.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" extra_options="${extra_options} cris/linux.opt" + case $target in + cris-*-*) + target_cpu_default=10 + ;; + crisv32-*-*) + target_cpu_default=32 + ;; + esac ;; crx-*-elf) tm_file="elfos.h ${tm_file}" *************** *** 850,859 **** linux.h frv/linux.h frv/frv-abi.h" tmake_file="${tmake_file} frv/t-frv frv/t-linux" ;; - h8300-*-rtemscoff*) - tmake_file="h8300/t-h8300 t-rtems h8300/t-rtems" - tm_file="h8300/h8300.h dbxcoff.h h8300/coff.h h8300/rtems.h rtems.h" - ;; h8300-*-rtems*) tmake_file="h8300/t-h8300 h8300/t-elf t-rtems h8300/t-rtems" tm_file="h8300/h8300.h dbxelf.h elfos.h h8300/elf.h h8300/rtems.h rtems.h" --- 881,886 ---- *************** *** 1019,1031 **** # config.guess deciding that the configuration is i386-*-darwin* and # then this file using that to set --with-cpu=i386 which has no -m64 # support. - with_arch=${with_arch:-nocona} with_cpu=${with_cpu:-generic} ;; x86_64-*-darwin*) - with_arch=${with_arch:-nocona} with_cpu=${with_cpu:-generic} ! tmake_file="t-darwin ${cpu_type}/t-darwin64 t-slibgcc-darwin" tm_file="${tm_file} ${cpu_type}/darwin64.h" ;; i[34567]86-*-elf*) --- 1046,1057 ---- # config.guess deciding that the configuration is i386-*-darwin* and # then this file using that to set --with-cpu=i386 which has no -m64 # support. with_cpu=${with_cpu:-generic} + tmake_file="${tmake_file} i386/t-fprules-softfp64 soft-fp/t-softfp i386/t-crtpc i386/t-crtfm" ;; x86_64-*-darwin*) with_cpu=${with_cpu:-generic} ! tmake_file="t-darwin ${cpu_type}/t-darwin64 t-slibgcc-darwin i386/t-fprules-softfp64 soft-fp/t-softfp i386/t-crtpc i386/t-crtfm" tm_file="${tm_file} ${cpu_type}/darwin64.h" ;; i[34567]86-*-elf*) *************** *** 1033,1038 **** --- 1059,1069 ---- tmake_file="i386/t-i386elf t-svr4" use_fixproto=yes ;; + x86_64-*-elf*) + tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/i386elf.h i386/x86-64.h" + tmake_file="i386/t-i386elf t-svr4" + use_fixproto=yes + ;; i[34567]86-sequent-ptx4* | i[34567]86-sequent-sysv4*) if test x$gas = xyes then *************** *** 1057,1062 **** --- 1088,1094 ---- ;; 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" *************** *** 1069,1074 **** --- 1101,1107 ---- ;; 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" + 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" *************** *** 1090,1101 **** i[34567]86-*-linux* | i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-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 svr4.h linux.h i386/linux.h" case ${target} in ! i[34567]86-*-knetbsd*-gnu) tm_file="${tm_file} knetbsd-gnu.h i386/knetbsd-gnu.h" ;; ! i[34567]86-*-kfreebsd*-gnu) tm_file="${tm_file} kfreebsd-gnu.h i386/kfreebsd-gnu.h" ;; esac ! tmake_file="${tmake_file} i386/t-crtstuff 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 svr4.h linux.h \ --- 1123,1158 ---- i[34567]86-*-linux* | i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-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 svr4.h linux.h" case ${target} in ! i[34567]86-*-linux*) ! if test x$enable_targets = xall; then ! tm_file="${tm_file} i386/x86-64.h i386/linux64.h" ! tm_defines="${tm_defines} TARGET_BI_ARCH=1" ! tmake_file="${tmake_file} i386/t-linux64 i386/t-fprules-softfp64 soft-fp/t-softfp" ! need_64bit_hwint=yes ! # FIXME: -m64 for i[34567]86-*-* should be allowed just ! # like -m32 for x86_64-*-*. ! case X"${with_cpu}" in ! Xgeneric|Xcore2|Xnocona|Xx86-64|Xamdfam10|Xbarcelona|Xk8|Xopteron|Xathlon64|Xathlon-fx) ! ;; ! X) ! with_cpu=generic ! ;; ! *) ! echo "Unsupported CPU used in --with-cpu=$with_cpu, supported values:" 1>&2 ! echo "generic core2 nocona x86-64 amdfam10 barcelona k8 opteron athlon64 athlon-fx" 1>&2 ! exit 1 ! ;; ! esac ! else ! tm_file="${tm_file} i386/linux.h" ! fi ! ;; ! i[34567]86-*-knetbsd*-gnu) tm_file="${tm_file} i386/linux.h knetbsd-gnu.h i386/knetbsd-gnu.h" ;; ! i[34567]86-*-kfreebsd*-gnu) tm_file="${tm_file} i386/linux.h kfreebsd-gnu.h i386/kfreebsd-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 svr4.h linux.h \ *************** *** 1104,1110 **** x86_64-*-kfreebsd*-gnu) tm_file="${tm_file} kfreebsd-gnu.h" ;; x86_64-*-knetbsd*-gnu) tm_file="${tm_file} knetbsd-gnu.h" ;; esac ! tmake_file="${tmake_file} i386/t-linux64 i386/t-crtfm t-dfprules" ;; i[34567]86-*-gnu*) ;; --- 1161,1167 ---- x86_64-*-kfreebsd*-gnu) tm_file="${tm_file} kfreebsd-gnu.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 i386/t-fprules-softfp64 soft-fp/t-softfp t-dfprules" ;; i[34567]86-*-gnu*) ;; *************** *** 1201,1212 **** *-*-solaris2.1[0-9]*) tm_file="${tm_file} i386/x86-64.h i386/sol2-10.h" tm_defines="${tm_defines} TARGET_BI_ARCH=1" ! tmake_file="$tmake_file i386/t-sol2-10" need_64bit_hwint=yes # FIXME: -m64 for i[34567]86-*-* should be allowed just # like -m32 for x86_64-*-*. case X"${with_cpu}" in ! Xgeneric|Xnocona|Xx86-64|Xk8|Xopteron|Xathlon64|Xathlon-fx) ;; X) with_cpu=generic --- 1258,1269 ---- *-*-solaris2.1[0-9]*) tm_file="${tm_file} i386/x86-64.h i386/sol2-10.h" tm_defines="${tm_defines} TARGET_BI_ARCH=1" ! tmake_file="$tmake_file i386/t-crtstuff i386/t-sol2-10" need_64bit_hwint=yes # FIXME: -m64 for i[34567]86-*-* should be allowed just # like -m32 for x86_64-*-*. case X"${with_cpu}" in ! Xgeneric|Xcore2|Xnocona|Xx86-64|Xamdfam10|Xbarcelona|Xk8|Xopteron|Xathlon64|Xathlon-fx) ;; X) with_cpu=generic *************** *** 1213,1219 **** ;; *) echo "Unsupported CPU used in --with-cpu=$with_cpu, supported values:" 1>&2 ! echo "generic nocona x86-64 k8 opteron athlon64 athlon-fx" 1>&2 exit 1 ;; esac --- 1270,1276 ---- ;; *) echo "Unsupported CPU used in --with-cpu=$with_cpu, supported values:" 1>&2 ! echo "generic core2 nocona x86-64 amdfam10 barcelona k8 opteron athlon64 athlon-fx" 1>&2 exit 1 ;; esac *************** *** 1265,1278 **** use_fixproto=yes ;; i[4567]86-wrs-vxworks|i[4567]86-wrs-vxworksae) ! tm_file="${tm_file} i386/sysv4.h i386/unix.h i386/att.h vx-common.h" case ${target} in *-vxworksae*) ! tm_file="${tm_file} vxworksae.h i386/vxworksae.h" tmake_file="${tmake_file} i386/t-vxworks i386/t-vxworksae" ;; *) ! tm_file="${tm_file} vxworks.h i386/vxworks.h" tmake_file="${tmake_file} i386/t-vxworks" ;; esac --- 1322,1335 ---- use_fixproto=yes ;; i[4567]86-wrs-vxworks|i[4567]86-wrs-vxworksae) ! tm_file="${tm_file} i386/unix.h i386/att.h elfos.h svr4.h vx-common.h" case ${target} in *-vxworksae*) ! tm_file="${tm_file} vxworksae.h i386/vx-common.h i386/vxworksae.h" tmake_file="${tmake_file} i386/t-vxworks i386/t-vxworksae" ;; *) ! tm_file="${tm_file} vxworks.h i386/vx-common.h i386/vxworks.h" tmake_file="${tmake_file} i386/t-vxworks" ;; esac *************** *** 1291,1297 **** thread_file='posix' fi ;; ! i[34567]86-*-mingw32*) tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/cygming.h i386/mingw32.h" xm_file=i386/xm-mingw32.h tmake_file="i386/t-cygming i386/t-mingw32" --- 1348,1354 ---- thread_file='posix' fi ;; ! i[34567]86-*-mingw32* | x86_64-*-mingw32*) tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/cygming.h i386/mingw32.h" xm_file=i386/xm-mingw32.h tmake_file="i386/t-cygming i386/t-mingw32" *************** *** 1299,1304 **** --- 1356,1362 ---- extra_options="${extra_options} i386/cygming.opt" extra_objs="winnt.o winnt-stubs.o" cxx_target_objs=winnt-cxx.o + default_use_cxa_atexit=yes case ${enable_threads} in "" | yes | win32) thread_file='win32' *************** *** 1375,1381 **** tmake_file="ia64/t-ia64 ia64/t-hpux" target_cpu_default="MASK_GNU_AS" case x$enable_threads in ! xyes | xposix ) thread_file=posix ;; esac --- 1433,1439 ---- tmake_file="ia64/t-ia64 ia64/t-hpux" target_cpu_default="MASK_GNU_AS" case x$enable_threads in ! x | xyes | xposix ) thread_file=posix ;; esac *************** *** 1443,1495 **** use_fixproto=yes ;; m68k-*-aout*) ! tmake_file=m68k/t-m68kbare ! tm_file="m68k/m68k.h m68k/m68k-none.h m68k/m68kemb.h m68k/m68k-aout.h libgloss.h" ;; m68k-*-coff*) ! tmake_file=m68k/t-m68kbare ! tm_defines="${tm_defines} MOTOROLA USE_GAS" ! tm_file="m68k/m68k.h m68k/m68k-none.h m68k/m68kemb.h dbxcoff.h m68k/coff.h dbx.h" use_fixproto=yes ;; ! m68020-*-elf* | m68k-*-elf*) ! tm_file="m68k/m68k.h m68k/m68k-none.h m68k/m68kelf.h dbxelf.h elfos.h m68k/m68kemb.h m68k/m68020-elf.h" ! tm_defines="${tm_defines} MOTOROLA USE_GAS" ! tmake_file=m68k/t-m68kelf ! extra_parts="crtbegin.o crtend.o" ! ;; ! m68010-*-netbsdelf* | m68k*-*-netbsdelf*) ! tm_file="${tm_file} dbxelf.h elfos.h netbsd.h netbsd-elf.h m68k/netbsd-elf.h" ! tm_defines="${tm_defines} MOTOROLA USE_GAS" case ${target} in ! m68010*) ! target_cpu_default="0" ;; *) ! target_cpu_default="MASK_68020|MASK_68881|MASK_BITFIELD" ;; esac ;; m68k*-*-openbsd*) # needed to unconfuse gdb ! tm_defines="${tm_defines} OBSD_OLD_GAS TARGET_DEFAULT=(MASK_68020|MASK_68881|MASK_BITFIELD)" ! tm_file="m68k/m68k.h openbsd.h m68k/openbsd.h" tmake_file="t-libc-ok t-openbsd m68k/t-openbsd" # we need collect2 until our bug is fixed... use_collect2=yes ;; ! m68k-*-uclinux*) # Motorola m68k/ColdFire running uClinux with uClibc ! tm_file="m68k/m68k.h m68k/m68k-none.h m68k/m68kelf.h dbxelf.h elfos.h m68k/uclinux.h" ! tm_defines="${tm_defines} MOTOROLA USE_GAS" ! tmake_file=m68k/t-uclinux use_fixproto=no ;; m68k-*-linux*) # Motorola m68k's running GNU/Linux # with ELF format using glibc 2 # aka the GNU/Linux C library 6. ! tm_file="m68k/m68k.h dbxelf.h elfos.h svr4.h linux.h m68k/linux.h" extra_options="${extra_options} m68k/ieee.opt" ! tm_defines="${tm_defines} MOTOROLA USE_GAS" # if not configured with --enable-sjlj-exceptions, bump the # libgcc version number if test x$sjlj != x1; then --- 1501,1596 ---- use_fixproto=yes ;; m68k-*-aout*) ! default_m68k_cpu=68020 ! default_cf_cpu=5206 ! tmake_file="m68k/t-floatlib m68k/t-m68kbare m68k/t-mlibs" ! tm_file="${tm_file} m68k/m68k-none.h m68k/m68kemb.h m68k/m68k-aout.h libgloss.h" ;; m68k-*-coff*) ! default_m68k_cpu=68020 ! default_cf_cpu=5206 ! tmake_file="m68k/t-floatlib m68k/t-m68kbare m68k/t-mlibs" ! tm_defines="${tm_defines} MOTOROLA=1" ! tm_file="${tm_file} m68k/m68k-none.h m68k/m68kemb.h dbxcoff.h m68k/coff.h dbx.h" use_fixproto=yes ;; ! m68020-*-elf* | m68k-*-elf* | fido-*-elf*) case ${target} in ! fido-*-elf*) ! # Check that $with_cpu makes sense. ! case $with_cpu in ! "" | "fidoa") ! ;; ! *) ! echo "Cannot accept --with-cpu=$with_cpu" ! exit 1 ! ;; ! esac ! with_cpu=fidoa ;; *) ! default_m68k_cpu=68020 ! default_cf_cpu=5206 ;; esac + tm_file="${tm_file} m68k/m68k-none.h m68k/m68kelf.h dbxelf.h elfos.h m68k/m68kemb.h m68k/m68020-elf.h" + tm_defines="${tm_defines} MOTOROLA=1" + tmake_file="m68k/t-floatlib m68k/t-m68kbare m68k/t-m68kelf" + # Add multilibs for targets other than fido. + case ${target} in + fido-*-elf*) + ;; + *) + tmake_file="$tmake_file m68k/t-mlibs" + ;; + esac + extra_parts="crtbegin.o crtend.o" ;; + m68010-*-netbsdelf* | m68k*-*-netbsdelf*) + default_m68k_cpu=68020 + default_cf_cpu=5475 + tm_file="${tm_file} dbxelf.h elfos.h netbsd.h netbsd-elf.h m68k/netbsd-elf.h" + tm_defines="${tm_defines} MOTOROLA=1" + ;; m68k*-*-openbsd*) + default_m68k_cpu=68020 + default_cf_cpu=5475 # needed to unconfuse gdb ! tm_defines="${tm_defines} OBSD_OLD_GAS" ! tm_file="${tm_file} openbsd.h m68k/openbsd.h" tmake_file="t-libc-ok t-openbsd m68k/t-openbsd" # we need collect2 until our bug is fixed... use_collect2=yes ;; ! m68k-*-uclinuxoldabi*) # Motorola m68k/ColdFire running uClinux ! # with uClibc, using the original ! # m68k-elf-based ABI ! default_m68k_cpu=68020 ! default_cf_cpu=5206 ! tm_file="${tm_file} m68k/m68k-none.h m68k/m68kelf.h dbxelf.h elfos.h m68k/uclinux-oldabi.h" ! tm_defines="${tm_defines} MOTOROLA=1" ! tmake_file="m68k/t-floatlib m68k/t-uclinux" use_fixproto=no ;; + m68k-*-uclinux*) # Motorola m68k/ColdFire running uClinux + # with uClibc, using the new GNU/Linux-style + # ABI. + default_m68k_cpu=68020 + default_cf_cpu=5206 + tm_file="${tm_file} dbxelf.h elfos.h svr4.h linux.h flat.h m68k/linux.h m68k/uclinux.h ./sysroot-suffix.h" + tm_defines="${tm_defines} MOTOROLA=1 UCLIBC_DEFAULT=1" + extra_options="${extra_options} linux.opt" + tmake_file="m68k/t-floatlib m68k/t-uclinux m68k/t-mlibs" + use_fixproto=no + ;; 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 ! default_cf_cpu=5475 ! tm_file="${tm_file} dbxelf.h elfos.h svr4.h linux.h m68k/linux.h" extra_options="${extra_options} m68k/ieee.opt" ! tm_defines="${tm_defines} MOTOROLA=1" # if not configured with --enable-sjlj-exceptions, bump the # libgcc version number if test x$sjlj != x1; then *************** *** 1497,1505 **** fi ;; m68k-*-rtems*) ! tmake_file="m68k/t-m68kbare m68k/t-crtstuff t-rtems m68k/t-rtems" ! tm_file="m68k/m68k.h m68k/m68k-none.h m68k/m68kelf.h dbxelf.h elfos.h m68k/m68kemb.h m68k/m68020-elf.h m68k/rtemself.h rtems.h" ! tm_defines="${tm_defines} MOTOROLA USE_GAS" extra_parts="crtbegin.o crtend.o" ;; mcore-*-elf) --- 1598,1608 ---- fi ;; m68k-*-rtems*) ! default_m68k_cpu=68020 ! default_cf_cpu=5206 ! 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" ! tm_defines="${tm_defines} MOTOROLA=1" extra_parts="crtbegin.o crtend.o" ;; mcore-*-elf) *************** *** 1535,1543 **** then tm_defines="${tm_defines} IRIX_USING_GNU_LD" fi ! # if test x$enable_threads = xyes; then ! # thread_file='irix' ! # fi use_fixproto=yes ;; mips*-*-netbsd*) # NetBSD/mips, either endian. --- 1638,1646 ---- then tm_defines="${tm_defines} IRIX_USING_GNU_LD" fi ! case ${enable_threads}:${have_pthread_h} in ! "":yes | yes:yes ) thread_file=posix ;; ! esac use_fixproto=yes ;; mips*-*-netbsd*) # NetBSD/mips, either endian. *************** *** 1550,1564 **** tm_defines="${tm_defines} MIPS_ABI_DEFAULT=ABI_N32" gnu_ld=yes gas=yes ;; mips*-*-linux*) # Linux MIPS, either endian. tm_file="dbxelf.h elfos.h svr4.h linux.h ${tm_file} mips/linux.h" case ${target} in ! mipsisa32*-*) ! target_cpu_default="MASK_SOFT_FLOAT" ! tm_defines="${tm_defines} MIPS_ISA_DEFAULT=32" ;; esac ;; mips*-*-openbsd*) tm_defines="${tm_defines} OBSD_HAS_DECLARE_FUNCTION_NAME OBSD_HAS_DECLARE_OBJECT OBSD_HAS_CORRECT_SPECS" --- 1653,1670 ---- tm_defines="${tm_defines} MIPS_ABI_DEFAULT=ABI_N32" 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 svr4.h linux.h ${tm_file} mips/linux.h" case ${target} in ! mipsisa32r2*) ! tm_defines="${tm_defines} MIPS_ISA_DEFAULT=33" ;; + mipsisa32*) + tm_defines="${tm_defines} MIPS_ISA_DEFAULT=32" esac + test x$with_llsc != x || with_llsc=yes ;; mips*-*-openbsd*) tm_defines="${tm_defines} OBSD_HAS_DECLARE_FUNCTION_NAME OBSD_HAS_DECLARE_OBJECT OBSD_HAS_CORRECT_SPECS" *************** *** 1570,1593 **** *) tm_defines="${tm_defines} TARGET_ENDIAN_DEFAULT=MASK_BIG_ENDIAN";; esac ;; ! mipsisa32-*-elf* | mipsisa32el-*-elf*) ! tm_file="elfos.h ${tm_file} mips/elf.h" ! tmake_file=mips/t-isa3264 ! tm_defines="${tm_defines} MIPS_ISA_DEFAULT=32 MIPS_ABI_DEFAULT=ABI_EABI" ! use_fixproto=yes ;; ! mipsisa32r2-*-elf* | mipsisa32r2el-*-elf*) ! tm_file="elfos.h ${tm_file} mips/elf.h" ! tmake_file=mips/t-isa3264 ! tm_defines="${tm_defines} MIPS_ISA_DEFAULT=33 MIPS_ABI_DEFAULT=ABI_EABI" ! use_fixproto=yes ! ;; mipsisa64-*-elf* | mipsisa64el-*-elf*) tm_file="elfos.h ${tm_file} mips/elf.h" ! tmake_file=mips/t-isa3264 ! target_cpu_default="MASK_64BIT|MASK_FLOAT64" ! tm_defines="${tm_defines} MIPS_ISA_DEFAULT=64 MIPS_ABI_DEFAULT=ABI_EABI" ! use_fixproto=yes ;; mipsisa64sr71k-*-elf*) tm_file="elfos.h ${tm_file} mips/elf.h" --- 1676,1741 ---- *) tm_defines="${tm_defines} TARGET_ENDIAN_DEFAULT=MASK_BIG_ENDIAN";; esac ;; ! mips*-sde-elf*) ! tm_file="elfos.h ${tm_file} mips/elf.h mips/sde.h" ! tmake_file="mips/t-sde mips/t-libgcc-mips16" ! case "${with_newlib}" in ! yes) ! # newlib / libgloss. ! ;; ! *) ! # MIPS toolkit libraries. ! tm_file="$tm_file mips/sdemtk.h" ! tmake_file="$tmake_file mips/t-sdemtk" ! extra_options="$extra_options mips/sdemtk.opt" ! case ${enable_threads} in ! "" | yes | mipssde) ! thread_file='mipssde' ! ;; ! esac ! ;; ! esac ! case ${target} in ! mipsisa32r2*) ! tm_defines="MIPS_ISA_DEFAULT=33 MIPS_ABI_DEFAULT=ABI_32" ! ;; ! mipsisa32*) ! tm_defines="MIPS_ISA_DEFAULT=32 MIPS_ABI_DEFAULT=ABI_32" ! ;; ! mipsisa64*) ! tm_defines="MIPS_ISA_DEFAULT=64 MIPS_ABI_DEFAULT=ABI_N32" ! ;; ! esac ;; ! mipsisa32-*-elf* | mipsisa32el-*-elf* | \ ! mipsisa32r2-*-elf* | mipsisa32r2el-*-elf* | \ mipsisa64-*-elf* | mipsisa64el-*-elf*) tm_file="elfos.h ${tm_file} mips/elf.h" ! tmake_file="mips/t-isa3264 mips/t-libgcc-mips16" ! case ${target} in ! mipsisa32r2*) ! tm_defines="${tm_defines} MIPS_ISA_DEFAULT=33" ! ;; ! mipsisa32*) ! tm_defines="${tm_defines} MIPS_ISA_DEFAULT=32" ! ;; ! mipsisa64*) ! tm_defines="${tm_defines} MIPS_ISA_DEFAULT=64" ! ;; ! esac ! case ${target} in ! mipsisa32*-*-elfoabi*) ! tm_defines="${tm_defines} MIPS_ABI_DEFAULT=ABI_32" ! tm_file="${tm_file} mips/elfoabi.h" ! ;; ! mipsisa64*-*-elfoabi*) ! tm_defines="${tm_defines} MIPS_ABI_DEFAULT=ABI_O64" ! tm_file="${tm_file} mips/elfoabi.h" ! ;; ! *-*-elf*) ! tm_defines="${tm_defines} MIPS_ABI_DEFAULT=ABI_EABI" ! ;; ! esac ;; mipsisa64sr71k-*-elf*) tm_file="elfos.h ${tm_file} mips/elf.h" *************** *** 1598,1604 **** ;; mipsisa64sb1-*-elf* | mipsisa64sb1el-*-elf*) tm_file="elfos.h ${tm_file} mips/elf.h" ! 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" use_fixproto=yes --- 1746,1752 ---- ;; mipsisa64sb1-*-elf* | mipsisa64sb1el-*-elf*) tm_file="elfos.h ${tm_file} mips/elf.h" ! tmake_file="mips/t-elf mips/t-libgcc-mips16 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" use_fixproto=yes *************** *** 1605,1616 **** ;; mips-*-elf* | mipsel-*-elf*) tm_file="elfos.h ${tm_file} mips/elf.h" ! tmake_file=mips/t-elf use_fixproto=yes ;; mips64-*-elf* | mips64el-*-elf*) tm_file="elfos.h ${tm_file} mips/elf.h" ! 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" use_fixproto=yes --- 1753,1764 ---- ;; mips-*-elf* | mipsel-*-elf*) tm_file="elfos.h ${tm_file} mips/elf.h" ! tmake_file="mips/t-elf mips/t-libgcc-mips16" use_fixproto=yes ;; mips64-*-elf* | mips64el-*-elf*) tm_file="elfos.h ${tm_file} mips/elf.h" ! tmake_file="mips/t-elf mips/t-libgcc-mips16" target_cpu_default="MASK_64BIT|MASK_FLOAT64" tm_defines="${tm_defines} MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_O64" use_fixproto=yes *************** *** 1622,1628 **** ;; mips64orion-*-elf* | mips64orionel-*-elf*) tm_file="elfos.h ${tm_file} mips/elforion.h mips/elf.h" ! 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" use_fixproto=yes --- 1770,1776 ---- ;; mips64orion-*-elf* | mips64orionel-*-elf*) tm_file="elfos.h ${tm_file} mips/elforion.h mips/elf.h" ! tmake_file="mips/t-elf mips/t-libgcc-mips16" target_cpu_default="MASK_64BIT|MASK_FLOAT64" tm_defines="${tm_defines} MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_O64" use_fixproto=yes *************** *** 1629,1651 **** ;; mips*-*-rtems*) tm_file="elfos.h ${tm_file} mips/elf.h mips/rtems.h rtems.h" ! tmake_file="mips/t-elf t-rtems mips/t-rtems" ;; mips-wrs-vxworks) ! # We want vxworks.h after mips/elf.h, which unfortunately means we ! # have to redo the tm_file list from scratch. ! tm_file="elfos.h mips/mips.h svr4.h mips/elf.h vxworks.h mips/vxworks.h" tmake_file="${tmake_file} mips/t-vxworks" ;; mips-wrs-windiss) # Instruction-level simulator for VxWorks. xm_defines=POSIX tm_file="elfos.h mips/mips.h svr4.h mips/elf.h windiss.h mips/windiss.h" ! tmake_file="${tmake_file} mips/t-elf" thread_file= ;; mipstx39-*-elf* | mipstx39el-*-elf*) tm_file="elfos.h ${tm_file} mips/r3900.h mips/elf.h" ! tmake_file=mips/t-r3900 use_fixproto=yes ;; mmix-knuth-mmixware) --- 1777,1797 ---- ;; mips*-*-rtems*) tm_file="elfos.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" ;; mips-wrs-vxworks) ! tm_file="elfos.h ${tm_file} svr4.h mips/elf.h vx-common.h vxworks.h mips/vxworks.h" tmake_file="${tmake_file} mips/t-vxworks" ;; mips-wrs-windiss) # Instruction-level simulator for VxWorks. xm_defines=POSIX tm_file="elfos.h mips/mips.h svr4.h mips/elf.h windiss.h mips/windiss.h" ! tmake_file="${tmake_file} mips/t-elf mips/t-libgcc-mips16" thread_file= ;; mipstx39-*-elf* | mipstx39el-*-elf*) tm_file="elfos.h ${tm_file} mips/r3900.h mips/elf.h" ! tmake_file="mips/t-r3900 mips/t-libgcc-mips16" use_fixproto=yes ;; mmix-knuth-mmixware) *************** *** 1664,1679 **** tm_file="dbxelf.h elfos.h svr4.h ${tm_file}" tmake_file="${tmake_file} mt/t-mt" ;; - ns32k-*-netbsdelf*) - echo "GCC does not yet support the ${target} target"; exit 1 - ;; - ns32k-*-netbsd*) - tm_file="${tm_file} netbsd.h netbsd-aout.h ns32k/netbsd.h" - # On NetBSD, the headers are already okay, except for math.h. - tmake_file="t-netbsd ns32k/t-ns32k" - extra_parts="" - use_collect2=yes - ;; pdp11-*-bsd) tm_file="${tm_file} pdp11/2bsd.h" use_fixproto=yes --- 1810,1815 ---- *************** *** 1752,1768 **** use_fixproto=yes ;; powerpc-*-eabispe*) ! tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabispe.h" extra_options="${extra_options} rs6000/sysv4.opt" tmake_file="rs6000/t-spe rs6000/t-ppccomm" ;; powerpc-*-eabisimaltivec*) ! tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.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" ;; powerpc-*-eabisim*) ! tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.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" ;; --- 1888,1904 ---- use_fixproto=yes ;; powerpc-*-eabispe*) ! tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h rs6000/eabispe.h" extra_options="${extra_options} rs6000/sysv4.opt" tmake_file="rs6000/t-spe rs6000/t-ppccomm" ;; powerpc-*-eabisimaltivec*) ! tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.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" ;; powerpc-*-eabisim*) ! tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.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" ;; *************** *** 1773,1789 **** use_fixproto=yes ;; powerpc-*-eabialtivec*) ! tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.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" ;; powerpc-*-eabi*) ! tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h" extra_options="${extra_options} rs6000/sysv4.opt" tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppcgas rs6000/t-ppccomm" ;; powerpc-*-rtems*) ! tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.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" ;; --- 1909,1925 ---- use_fixproto=yes ;; powerpc-*-eabialtivec*) ! tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.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" ;; powerpc-*-eabi*) ! tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.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" ;; powerpc-*-rtems*) ! tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.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" ;; *************** *** 1793,1802 **** tmake_file="rs6000/t-fprules rs6000/t-fprules-softfp soft-fp/t-softfp rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm" ;; powerpc-*-linux*spe*) ! tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h rs6000/linuxspe.h" extra_options="${extra_options} rs6000/sysv4.opt" tmake_file="rs6000/t-fprules rs6000/t-fprules-softfp soft-fp/t-softfp rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm" ;; powerpc-*-linux*) tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h" extra_options="${extra_options} rs6000/sysv4.opt" --- 1929,1943 ---- tmake_file="rs6000/t-fprules rs6000/t-fprules-softfp soft-fp/t-softfp rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm" ;; powerpc-*-linux*spe*) ! tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h rs6000/linuxspe.h rs6000/e500.h" extra_options="${extra_options} rs6000/sysv4.opt" tmake_file="rs6000/t-fprules rs6000/t-fprules-softfp soft-fp/t-softfp rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm" ;; + powerpc-*-linux*paired*) + tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h rs6000/750cl.h" + extra_options="${extra_options} rs6000/sysv4.opt" + tmake_file="rs6000/t-fprules rs6000/t-fprules-softfp soft-fp/t-softfp rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm" + ;; powerpc-*-linux*) tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h" extra_options="${extra_options} rs6000/sysv4.opt" *************** *** 1835,1853 **** fi ;; powerpc-wrs-vxworks|powerpc-wrs-vxworksae) ! # We want vxworks.h after rs6000/sysv4.h, which unfortunately ! # means we have to redo the tm_file list from scratch. ! tm_file="rs6000/rs6000.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h" tmake_file="${tmake_file} rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppccomm rs6000/t-vxworks" extra_options="${extra_options} rs6000/sysv4.opt" extra_headers=ppc-asm.h case ${target} in *-vxworksae*) ! tm_file="${tm_file} vx-common.h vxworksae.h rs6000/vxworks.h rs6000/vxworksae.h" tmake_file="${tmake_file} rs6000/t-vxworksae" ;; *-vxworks*) ! tm_file="${tm_file} vx-common.h vxworks.h rs6000/vxworks.h" ;; esac ;; --- 1976,1992 ---- fi ;; powerpc-wrs-vxworks|powerpc-wrs-vxworksae) ! tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h" tmake_file="${tmake_file} rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppccomm rs6000/t-vxworks" extra_options="${extra_options} rs6000/sysv4.opt" extra_headers=ppc-asm.h case ${target} in *-vxworksae*) ! tm_file="${tm_file} vx-common.h vxworksae.h rs6000/vxworks.h rs6000/e500.h rs6000/vxworksae.h" tmake_file="${tmake_file} rs6000/t-vxworksae" ;; *-vxworks*) ! tm_file="${tm_file} vx-common.h vxworks.h rs6000/vxworks.h rs6000/e500.h" ;; esac ;; *************** *** 1882,1893 **** use_fixproto=yes ;; powerpcle-*-eabisim*) ! tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h rs6000/eabisim.h" tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppcgas rs6000/t-ppccomm" extra_options="${extra_options} rs6000/sysv4.opt" ;; powerpcle-*-eabi*) ! tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h" tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppcgas rs6000/t-ppccomm" extra_options="${extra_options} rs6000/sysv4.opt" ;; --- 2021,2032 ---- use_fixproto=yes ;; powerpcle-*-eabisim*) ! tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.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" extra_options="${extra_options} rs6000/sysv4.opt" ;; powerpcle-*-eabi*) ! tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.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" extra_options="${extra_options} rs6000/sysv4.opt" ;; *************** *** 1925,1931 **** thread_file='aix' extra_headers= ;; ! rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].*) tm_file="${tm_file} rs6000/aix.h rs6000/aix52.h rs6000/xcoff.h" tmake_file=rs6000/t-aix52 extra_options="${extra_options} rs6000/aix64.opt" --- 2064,2070 ---- thread_file='aix' extra_headers= ;; ! rs6000-ibm-aix5.2.* | powerpc-ibm-aix5.2.*) tm_file="${tm_file} rs6000/aix.h rs6000/aix52.h rs6000/xcoff.h" tmake_file=rs6000/t-aix52 extra_options="${extra_options} rs6000/aix64.opt" *************** *** 1933,1938 **** --- 2072,2093 ---- thread_file='aix' extra_headers= ;; + rs6000-ibm-aix5.3.* | powerpc-ibm-aix5.3.*) + tm_file="${tm_file} rs6000/aix.h rs6000/aix53.h rs6000/xcoff.h" + tmake_file=rs6000/t-aix52 + extra_options="${extra_options} rs6000/aix64.opt" + use_collect2=yes + thread_file='aix' + extra_headers=altivec.h + ;; + rs6000-ibm-aix[6789].* | powerpc-ibm-aix[6789].*) + tm_file="${tm_file} rs6000/aix.h rs6000/aix61.h rs6000/xcoff.h" + tmake_file=rs6000/t-aix52 + extra_options="${extra_options} rs6000/aix64.opt" + use_collect2=yes + thread_file='aix' + extra_headers=altivec.h + ;; s390-*-linux*) tm_file="s390/s390.h dbxelf.h elfos.h svr4.h linux.h s390/linux.h" tmake_file="${tmake_file} t-dfprules s390/t-crtstuff s390/t-linux" *************** *** 1959,1965 **** score-*-elf) tm_file="dbxelf.h elfos.h score/elf.h score/score.h" tmake_file=score/t-score-elf ! extra_objs="score-mdaux.o" ;; sh-*-elf* | sh[12346l]*-*-elf* | sh*-*-kaos* | \ sh-*-symbianelf* | sh[12346l]*-*-symbianelf* | \ --- 2114,2120 ---- score-*-elf) tm_file="dbxelf.h elfos.h score/elf.h score/score.h" tmake_file=score/t-score-elf ! extra_objs="score7.o score3.o" ;; sh-*-elf* | sh[12346l]*-*-elf* | sh*-*-kaos* | \ sh-*-symbianelf* | sh[12346l]*-*-symbianelf* | \ *************** *** 2002,2008 **** with_libgloss=yes tm_file="${tm_file} sh/newlib.h" fi ! tm_file="${tm_file} sh/embed-elf.h" extra_options="${extra_options} sh/superh.opt" ;; *) if test x$with_newlib = xyes \ && test x$with_libgloss = xyes; then --- 2157,2164 ---- with_libgloss=yes tm_file="${tm_file} sh/newlib.h" fi ! tm_file="${tm_file} sh/embed-elf.h 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 *************** *** 2082,2088 **** sh5-32media-nofpu | sh5-32media | sh5-compact-nofpu | sh5-compact | \ sh2a-single-only | sh2a-single | sh2a-nofpu | sh2a | \ sh4a-single-only | sh4a-single | sh4a-nofpu | sh4a | sh4al | \ ! sh4-single-only | sh4-single | sh4-nofpu | sh4 | \ sh3e | sh3 | sh2e | sh2 | sh1) ;; "") sh_cpu_default=${sh_cpu_target} ;; *) echo "with_cpu=$with_cpu not supported"; exit 1 ;; --- 2238,2244 ---- sh5-32media-nofpu | sh5-32media | sh5-compact-nofpu | sh5-compact | \ sh2a-single-only | sh2a-single | sh2a-nofpu | sh2a | \ sh4a-single-only | sh4a-single | sh4a-nofpu | sh4a | sh4al | \ ! sh4-single-only | sh4-single | sh4-nofpu | sh4 | sh4-300 | \ sh3e | sh3 | sh2e | sh2 | sh1) ;; "") sh_cpu_default=${sh_cpu_target} ;; *) echo "with_cpu=$with_cpu not supported"; exit 1 ;; *************** *** 2108,2114 **** for sh_multilib in ${sh_multilibs}; do case ${sh_multilib} in sh1 | sh2 | sh2e | sh3 | sh3e | \ ! sh4 | sh4-single | sh4-single-only | sh4-nofpu | \ sh4a | sh4a-single | sh4a-single-only | sh4a-nofpu | sh4al | \ sh2a | sh2a-single | sh2a-single-only | sh2a-nofpu | \ sh5-64media | sh5-64media-nofpu | \ --- 2264,2270 ---- for sh_multilib in ${sh_multilibs}; do case ${sh_multilib} in sh1 | sh2 | sh2e | sh3 | sh3e | \ ! sh4 | sh4-single | sh4-single-only | sh4-nofpu | sh4-300 |\ sh4a | sh4a-single | sh4a-single-only | sh4a-nofpu | sh4al | \ sh2a | sh2a-single | sh2a-single-only | sh2a-nofpu | \ sh5-64media | sh5-64media-nofpu | \ *************** *** 2128,2137 **** fi use_fixproto=yes ;; - sh-*-rtemscoff*) - tmake_file="sh/t-sh t-rtems sh/t-rtems" - tm_file="${tm_file} dbxcoff.h sh/coff.h sh/rtems.h rtems.h" - ;; sh-*-rtems*) tmake_file="sh/t-sh sh/t-elf t-rtems sh/t-rtems" tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/elf.h sh/embed-elf.h sh/rtemself.h rtems.h" --- 2284,2289 ---- *************** *** 2138,2144 **** ;; sh-wrs-vxworks) tmake_file="$tmake_file sh/t-sh sh/t-elf sh/t-vxworks" ! tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/embed-elf.h sh/vxworks.h" ;; sh-*-*) tm_file="${tm_file} dbxcoff.h sh/coff.h" --- 2290,2296 ---- ;; sh-wrs-vxworks) tmake_file="$tmake_file sh/t-sh sh/t-elf sh/t-vxworks" ! tm_file="${tm_file} elfos.h svr4.h sh/elf.h sh/embed-elf.h vx-common.h vxworks.h sh/vxworks.h" ;; sh-*-*) tm_file="${tm_file} dbxcoff.h sh/coff.h" *************** *** 2272,2277 **** --- 2424,2433 ---- extra_parts="crtbegin.o crtend.o" use_fixproto=yes ;; + sparc-wrs-vxworks) + tm_file="${tm_file} elfos.h svr4.h sparc/sysv4.h vx-common.h vxworks.h sparc/vxworks.h" + tmake_file="${tmake_file} sparc/t-vxworks" + ;; sparc64-*-elf*) tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sp64-elf.h" extra_options="${extra_options} sparc/little-endian.opt" *************** *** 2301,2306 **** --- 2457,2470 ---- extra_options="${extra_options} sparc/long-double-switch.opt" tmake_file="${tmake_file} sparc/t-netbsd64" ;; + spu-*-elf*) + tm_file="dbxelf.h elfos.h spu/spu-elf.h spu/spu.h" + tmake_file="spu/t-spu-elf" + extra_headers="spu_intrinsics.h spu_internals.h vmx2spu.h spu_mfcio.h vec_types.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" + ;; strongarm-*-elf*) tm_file="arm/strongarm-elf.h dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h" tmake_file="arm/t-arm arm/t-strongarm-elf" *************** *** 2512,2517 **** --- 2676,2684 ---- ;; i686-*-* | i786-*-*) case ${target_noncanonical} in + amdfam10-*|barcelona-*) + with_cpu=amdfam10 + ;; k8-*|opteron-*|athlon_64-*) with_cpu=k8 ;; *************** *** 2521,2526 **** --- 2688,2696 ---- athlon_tbird-*|athlon-*) with_cpu=athlon ;; + geode-*) + with_cpu=geode + ;; pentium2-*) with_cpu=pentium2 ;; *************** *** 2536,2541 **** --- 2706,2714 ---- nocona-*) with_cpu=nocona ;; + core2-*) + with_cpu=core2 + ;; pentium_m-*) with_cpu=pentium-m ;; *************** *** 2549,2554 **** --- 2722,2730 ---- ;; x86_64-*-*) case ${target_noncanonical} in + amdfam10-*|barcelona-*) + with_cpu=amdfam10 + ;; k8-*|opteron-*|athlon_64-*) with_cpu=k8 ;; *************** *** 2555,2560 **** --- 2731,2739 ---- nocona-*) with_cpu=nocona ;; + core2-*) + with_cpu=core2 + ;; *) with_cpu=generic ;; *************** *** 2581,2586 **** --- 2760,2781 ---- frv550-*-*linux*) with_cpu=fr550 ;; + m680[012]0-*-*) + with_cpu=`echo ${target} | sed 's/-.*$//'` + ;; + m68k*-*-*) + case "$with_arch" in + "cf") + with_cpu=${default_cf_cpu} + ;; + "" | "m68k") + with_cpu=m${default_m68k_cpu} + ;; + esac + ;; + mips*-*-vxworks) + with_arch=mips2 + ;; sparc*-*-*) with_cpu="`echo ${target} | sed 's/-.*$//'`" ;; *************** *** 2681,2687 **** case "$with_fpu" in "" \ ! | fpa | fpe2 | fpe3 | maverick | vfp ) # OK ;; *) --- 2876,2882 ---- case "$with_fpu" in "" \ ! | fpa | fpe2 | fpe3 | maverick | vfp | vfp3 | neon ) # OK ;; *) *************** *** 2729,2746 **** esac ;; ! m68k*-linux*) ! supported_defaults="cpu" ! case "$with_cpu" in ! "" | "m68020" | "m68030" | "m68040" | "m68060" | "m68020-40" | "m68020-60") ! # OK ;; *) ! echo "Unknown CPU used in --with-cpu=$with_cpu, known values:" 1>&2 ! echo "m68020 m68030 m68040 m68060 m68020-40 m68020-60" 1>&2 exit 1 ;; esac ;; hppa*-*-* | parisc*-*-*) --- 2924,2967 ---- esac ;; ! fido-*-* | m680[012]0-*-* | m68k*-*-*) ! supported_defaults="arch cpu" ! case "$with_arch" in ! "" | "m68k"| "cf") ! m68k_arch_family="$with_arch" ;; *) ! echo "Invalid --with-arch=$with_arch" 1>&2 exit 1 ;; esac + + # We always have a $with_cpu setting here. + case "$with_cpu" in + "m68000" | "m68010" | "m68020" | "m68030" | "m68040" | "m68060") + m68k_cpu_ident=$with_cpu + ;; + "m68020-40") + m68k_cpu_ident=m68020 + tm_defines="$tm_defines M68K_DEFAULT_TUNE=u68020_40" + ;; + "m68020-60") + m68k_cpu_ident=m68020 + tm_defines="$tm_defines M68K_DEFAULT_TUNE=u68020_60" + ;; + *) + # We need the C identifier rather than the string. + m68k_cpu_ident=`awk -v arg="\"$with_cpu\"" \ + 'BEGIN { FS="[ \t]*[,()][ \t]*" }; \ + $1 == "M68K_DEVICE" && $2 == arg { print $3 }' \ + ${srcdir}/config/m68k/m68k-devices.def` + if [ x"$m68k_cpu_ident" = x ] ; then + echo "Unknown CPU used in --with-cpu=$with_cpu" 1>&2 + exit 1 + fi + with_cpu="mcpu=$with_cpu" + ;; + esac ;; hppa*-*-* | parisc*-*-*) *************** *** 2776,2782 **** | i586 | pentium | pentium-mmx | winchip-c6 | winchip2 \ | c3 | c3-2 | i686 | pentiumpro | pentium2 | pentium3 \ | pentium4 | k6 | k6-2 | k6-3 | athlon | athlon-tbird \ ! | athlon-4 | athlon-xp | athlon-mp \ | prescott | pentium-m | pentium4m | pentium3m) case "${target}" in x86_64-*-*) --- 2997,3003 ---- | i586 | pentium | pentium-mmx | winchip-c6 | winchip2 \ | c3 | c3-2 | i686 | pentiumpro | pentium2 | pentium3 \ | pentium4 | k6 | k6-2 | k6-3 | athlon | athlon-tbird \ ! | athlon-4 | athlon-xp | athlon-mp | geode \ | prescott | pentium-m | pentium4m | pentium3m) case "${target}" in x86_64-*-*) *************** *** 2786,2792 **** esac # OK ;; ! "" | k8 | opteron | athlon64 | athlon-fx | nocona | generic) # OK ;; *) --- 3007,3013 ---- esac # OK ;; ! "" | amdfam10 | barcelona | k8 | opteron | athlon64 | athlon-fx | nocona | core2 | generic) # OK ;; *) *************** *** 2798,2804 **** ;; mips*-*-*) ! supported_defaults="abi arch float tune divide" case ${with_float} in "" | soft | hard) --- 3019,3025 ---- ;; mips*-*-*) ! supported_defaults="abi arch float tune divide llsc" case ${with_float} in "" | soft | hard) *************** *** 2827,2833 **** --- 3048,3071 ---- *) echo "Unknown division check type use in --with-divide=$with_divide" 1>&2 exit 1 + ;; esac + + case ${with_llsc} in + yes) + with_llsc=llsc + ;; + no) + with_llsc="no-llsc" + ;; + "") + # OK + ;; + *) + echo "Unknown llsc type used in --with-llsc" 1>&2 + exit 1 + ;; + esac ;; mt-*-*) *************** *** 2864,2875 **** eval "with_$which=405" ;; "" | common \ ! | power | power[23456] | powerpc | powerpc64 \ | rios | rios1 | rios2 | rsc | rsc1 | rs64a \ | 401 | 403 | 405 | 405fp | 440 | 440fp | 505 \ | 601 | 602 | 603 | 603e | ec603e | 604 \ | 604e | 620 | 630 | 740 | 750 | 7400 | 7450 \ ! | 854[08] | 801 | 821 | 823 | 860 | 970 | G3 | G4 | G5) # OK ;; *) --- 3102,3113 ---- eval "with_$which=405" ;; "" | common \ ! | power | power[23456] | power6x | powerpc | powerpc64 \ | rios | rios1 | rios2 | rsc | rsc1 | rs64a \ | 401 | 403 | 405 | 405fp | 440 | 440fp | 505 \ | 601 | 602 | 603 | 603e | ec603e | 604 \ | 604e | 620 | 630 | 740 | 750 | 7400 | 7450 \ ! | 854[08] | 801 | 821 | 823 | 860 | 970 | G3 | G4 | G5 | cell) # OK ;; *) *************** *** 2886,2892 **** for which in arch tune; do eval "val=\$with_$which" case ${val} in ! "" | g5 | g6 | z900 | z990 | z9-109) # OK ;; *) --- 3124,3130 ---- for which in arch tune; do eval "val=\$with_$which" case ${val} in ! "" | g5 | g6 | z900 | z990 | z9-109 | z9-ec) # OK ;; *) *************** *** 2935,2941 **** "" | sparc | sparcv9 | sparc64 | sparc86x \ | v7 | cypress | v8 | supersparc | sparclite | f930 \ | f934 | hypersparc | sparclite86x | sparclet | tsc701 \ ! | v9 | ultrasparc | ultrasparc3 | niagara) # OK ;; *) --- 3173,3179 ---- "" | sparc | sparcv9 | sparc64 | sparc86x \ | v7 | cypress | v8 | supersparc | sparclite | f930 \ | f934 | hypersparc | sparclite86x | sparclet | tsc701 \ ! | v9 | ultrasparc | ultrasparc3 | niagara | niagara2) # OK ;; *) *************** *** 2956,2961 **** --- 3194,3216 ---- esac ;; + spu-*-*) + supported_defaults="arch tune" + + for which in arch tune; do + eval "val=\$with_$which" + case ${val} in + "" | cell | celledp) + # OK + ;; + *) + echo "Unknown cpu used in --with-$which=$val." 1>&2 + exit 1 + ;; + esac + done + ;; + v850*-*-*) supported_defaults=cpu case ${with_cpu} in *************** *** 2989,3025 **** fi ;; - m68k*-linux*) - case "x$with_cpu" in - x) - # The most generic - target_cpu_default2="(MASK_68020|MASK_68881|MASK_BITFIELD)" - ;; - xm68020) - target_cpu_default2="(MASK_68020|MASK_68881|MASK_BITFIELD)" - ;; - xm68030) - target_cpu_default2="(MASK_68030|MASK_68020|MASK_68881|MASK_BITFIELD)" - ;; - xm68040) - target_cpu_default2="(MASK_68040|MASK_68040_ONLY|MASK_68020|MASK_68881|MASK_BITFIELD)" - ;; - xm68060) - target_cpu_default2="(MASK_68060|MASK_68040_ONLY|MASK_68020|MASK_68881|MASK_BITFIELD)" - ;; - xm68020-40) - target_cpu_default2="(MASK_BITFIELD|MASK_68881|MASK_68020|MASK_68040)" - ;; - xm68020-60) - target_cpu_default2="(MASK_BITFIELD|MASK_68881|MASK_68020|MASK_68040|MASK_68060)" - ;; - *) - echo "Unknown CPU used in --with-cpu=$with_cpu" 1>&2 - exit 1 - ;; - esac - ;; - hppa*-*-* | parisc*-*-*) target_cpu_default2="MASK_BIG_SWITCH" if test x$gas = xyes --- 3244,3249 ---- *************** *** 3028,3033 **** --- 3252,3264 ---- fi ;; + fido*-*-* | m680[012]0-*-* | m68k*-*-*) + target_cpu_default2=$m68k_cpu_ident + if [ x"$m68k_arch_family" != x ]; then + tmake_file="m68k/t-$m68k_arch_family $tmake_file" + fi + ;; + mips*-*-*) if test x$gnu_ld = xyes then *************** *** 3098,3104 **** esac t= ! all_defaults="abi cpu arch tune schedule float mode fpu divide" for option in $all_defaults do eval "val=\$with_$option" --- 3329,3335 ---- esac t= ! all_defaults="abi cpu arch tune schedule float mode fpu divide llsc" for option in $all_defaults do eval "val=\$with_$option" *** gcc/config/rs6000/aix53.h.ORIG Tue Jan 29 09:34:54 2008 --- gcc/config/rs6000/aix53.h Tue Jan 29 09:41:33 2008 *************** *** 0 **** --- 1,194 ---- + /* Definitions of target machine for GNU compiler, + for IBM RS/6000 POWER running AIX V5.3. + Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 + Free Software Foundation, Inc. + Contributed by David Edelsohn (edelsohn@gnu.org). + + This file is part of GCC. + + GCC is free software; you can redistribute it and/or modify it + under the terms of the GNU General Public License as published + by the Free Software Foundation; either version 3, or (at your + option) any later version. + + GCC is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public + License for more details. + + You should have received a copy of the GNU General Public License + along with GCC; see the file COPYING3. If not see + . */ + + /* Sometimes certain combinations of command options do not make sense + on a particular target machine. You can define a macro + `OVERRIDE_OPTIONS' to take account of this. This macro, if + defined, is executed once just after all the command options have + been parsed. + + The macro SUBTARGET_OVERRIDE_OPTIONS is provided for subtargets, to + get control. */ + + #define NON_POWERPC_MASKS (MASK_POWER | MASK_POWER2) + #define SUBTARGET_OVERRIDE_OPTIONS \ + do { \ + if (TARGET_64BIT && (target_flags & NON_POWERPC_MASKS)) \ + { \ + target_flags &= ~NON_POWERPC_MASKS; \ + warning (0, "-maix64 and POWER architecture are incompatible"); \ + } \ + if (TARGET_64BIT && ! TARGET_POWERPC64) \ + { \ + target_flags |= MASK_POWERPC64; \ + warning (0, "-maix64 requires PowerPC64 architecture remain enabled"); \ + } \ + if (TARGET_SOFT_FLOAT && TARGET_LONG_DOUBLE_128) \ + { \ + rs6000_long_double_type_size = 64; \ + if (rs6000_explicit_options.long_double) \ + warning (0, "soft-float and long-double-128 are incompatible"); \ + } \ + if (TARGET_POWERPC64 && ! TARGET_64BIT) \ + { \ + error ("-maix64 required: 64-bit computation with 32-bit addressing not yet supported"); \ + } \ + } while (0); + + #undef ASM_SPEC + #define ASM_SPEC "-u %{maix64:-a64 %{!mcpu*:-mppc64}} %(asm_cpu)" + + /* Common ASM definitions used by ASM_SPEC amongst the various targets + for handling -mcpu=xxx switches. */ + #undef ASM_CPU_SPEC + #define ASM_CPU_SPEC \ + "%{!mcpu*: %{!maix64: \ + %{mpowerpc64: -mppc64} \ + %{maltivec: -m970} \ + %{!maltivec: %{!mpower64: %(asm_default)}}}} \ + %{mcpu=power3: -m620} \ + %{mcpu=power4: -mpwr4} \ + %{mcpu=power5: -mpwr5} \ + %{mcpu=power5+: -mpwr5x} \ + %{mcpu=power6: -mpwr6} \ + %{mcpu=power6x: -mpwr6} \ + %{mcpu=powerpc: -mppc} \ + %{mcpu=rs64a: -mppc} \ + %{mcpu=603: -m603} \ + %{mcpu=603e: -m603} \ + %{mcpu=604: -m604} \ + %{mcpu=604e: -m604} \ + %{mcpu=620: -m620} \ + %{mcpu=630: -m620} \ + %{mcpu=970: -m970} \ + %{mcpu=G5: -m970}" + + #undef ASM_DEFAULT_SPEC + #define ASM_DEFAULT_SPEC "-mppc" + + #undef TARGET_OS_CPP_BUILTINS + #define TARGET_OS_CPP_BUILTINS() \ + do \ + { \ + builtin_define ("_AIX43"); \ + builtin_define ("_AIX51"); \ + builtin_define ("_AIX52"); \ + builtin_define ("_AIX53"); \ + TARGET_OS_AIX_CPP_BUILTINS (); \ + } \ + while (0) + + #undef CPP_SPEC + #define CPP_SPEC "%{posix: -D_POSIX_SOURCE} \ + %{ansi: -D_ANSI_C_SOURCE} \ + %{maix64: -D__64BIT__} \ + %{mpe: -I/usr/lpp/ppe.poe/include} \ + %{pthread: -D_THREAD_SAFE}" + + /* The GNU C++ standard library requires that these macros be + defined. Synchronize with libstdc++ os_defines.h. */ + #undef CPLUSPLUS_CPP_SPEC + #define CPLUSPLUS_CPP_SPEC \ + "-D_ALL_SOURCE \ + %{maix64: -D__64BIT__} \ + %{mpe: -I/usr/lpp/ppe.poe/include} \ + %{pthread: -D_THREAD_SAFE}" + + #undef TARGET_DEFAULT + #define TARGET_DEFAULT (MASK_POWERPC | MASK_NEW_MNEMONICS) + + #undef PROCESSOR_DEFAULT + #define PROCESSOR_DEFAULT PROCESSOR_POWER5 + #undef PROCESSOR_DEFAULT64 + #define PROCESSOR_DEFAULT64 PROCESSOR_POWER5 + + #undef TARGET_POWER + #define TARGET_POWER 0 + + /* Define this macro as a C expression for the initializer of an + array of string to tell the driver program which options are + defaults for this target and thus do not need to be handled + specially when using `MULTILIB_OPTIONS'. + + Do not define this macro if `MULTILIB_OPTIONS' is not defined in + the target makefile fragment or if none of the options listed in + `MULTILIB_OPTIONS' are set by default. *Note Target Fragment::. */ + + #undef MULTILIB_DEFAULTS + + #undef LIB_SPEC + #define LIB_SPEC "%{pg:-L/lib/profiled -L/usr/lib/profiled}\ + %{p:-L/lib/profiled -L/usr/lib/profiled}\ + %{!maix64:%{!shared:%{g*:-lg}}}\ + %{mpe:-L/usr/lpp/ppe.poe/lib -lmpi -lvtd}\ + %{pthread:-lpthreads} -lc" + + #undef LINK_SPEC + #define LINK_SPEC "-bpT:0x10000000 -bpD:0x20000000 %{!r:-btextro} -bnodelcsect\ + %{static:-bnso %(link_syscalls) } %{shared:-bM:SRE %{!e:-bnoentry}}\ + %{!maix64:%{!shared:%{g*: %(link_libg) }}} %{maix64:-b64}\ + %{mpe:-binitfini:poe_remote_main}" + + #undef STARTFILE_SPEC + #define STARTFILE_SPEC "%{!shared:\ + %{maix64:%{pg:gcrt0_64%O%s}%{!pg:%{p:mcrt0_64%O%s}%{!p:crt0_64%O%s}}}\ + %{!maix64:\ + %{pthread:%{pg:gcrt0_r%O%s}%{!pg:%{p:mcrt0_r%O%s}%{!p:crt0_r%O%s}}}\ + %{!pthread:%{pg:gcrt0%O%s}%{!pg:%{p:mcrt0%O%s}%{!p:crt0%O%s}}}}}" + + /* AIX V5 typedefs ptrdiff_t as "long" while earlier releases used "int". */ + + #undef PTRDIFF_TYPE + #define PTRDIFF_TYPE "long int" + + /* Type used for wchar_t, as a string used in a declaration. */ + #undef WCHAR_TYPE + #define WCHAR_TYPE (!TARGET_64BIT ? "short unsigned int" : "unsigned int") + + /* Width of wchar_t in bits. */ + #undef WCHAR_TYPE_SIZE + #define WCHAR_TYPE_SIZE (!TARGET_64BIT ? 16 : 32) + + /* AIX V5 uses PowerPC nop (ori 0,0,0) instruction as call glue for PowerPC + and "cror 31,31,31" for POWER architecture. */ + + #undef RS6000_CALL_GLUE + #define RS6000_CALL_GLUE "{cror 31,31,31|nop}" + + /* AIX 4.2 and above provides initialization and finalization function + support from linker command line. */ + #undef HAS_INIT_SECTION + #define HAS_INIT_SECTION + + #undef LD_INIT_SWITCH + #define LD_INIT_SWITCH "-binitfini" + + /* AIX 5.2 has the float and long double forms of math functions. */ + #undef TARGET_C99_FUNCTIONS + #define TARGET_C99_FUNCTIONS 1 + + #ifndef _AIX52 + extern long long int atoll(const char *); + #endif + + /* This target uses the aix64.opt file. */ + #define TARGET_USES_AIX64_OPT 1 *** gcc/config/rs6000/aix61.h.ORIG Tue Jan 29 09:31:55 2008 --- gcc/config/rs6000/aix61.h Mon Jan 28 23:27:34 2008 *************** *** 0 **** --- 1,197 ---- + /* Definitions of target machine for GNU compiler, + for IBM RS/6000 POWER running AIX V5.3. + Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008 + Free Software Foundation, Inc. + Contributed by David Edelsohn (edelsohn@gnu.org). + + This file is part of GCC. + + GCC is free software; you can redistribute it and/or modify it + under the terms of the GNU General Public License as published + by the Free Software Foundation; either version 3, or (at your + option) any later version. + + GCC is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public + License for more details. + + You should have received a copy of the GNU General Public License + along with GCC; see the file COPYING3. If not see + . */ + + /* Sometimes certain combinations of command options do not make sense + on a particular target machine. You can define a macro + `OVERRIDE_OPTIONS' to take account of this. This macro, if + defined, is executed once just after all the command options have + been parsed. + + The macro SUBTARGET_OVERRIDE_OPTIONS is provided for subtargets, to + get control. */ + + #define NON_POWERPC_MASKS (MASK_POWER | MASK_POWER2) + #define SUBTARGET_OVERRIDE_OPTIONS \ + do { \ + if (TARGET_64BIT && (target_flags & NON_POWERPC_MASKS)) \ + { \ + target_flags &= ~NON_POWERPC_MASKS; \ + warning (0, "-maix64 and POWER architecture are incompatible"); \ + } \ + if (TARGET_64BIT && ! TARGET_POWERPC64) \ + { \ + target_flags |= MASK_POWERPC64; \ + warning (0, "-maix64 requires PowerPC64 architecture remain enabled"); \ + } \ + if (TARGET_SOFT_FLOAT && TARGET_LONG_DOUBLE_128) \ + { \ + rs6000_long_double_type_size = 64; \ + if (rs6000_explicit_options.long_double) \ + warning (0, "soft-float and long-double-128 are incompatible"); \ + } \ + if (TARGET_POWERPC64 && ! TARGET_64BIT) \ + { \ + error ("-maix64 required: 64-bit computation with 32-bit addressing not yet supported"); \ + } \ + } while (0); + + #undef ASM_SPEC + #define ASM_SPEC "-u %{maix64:-a64 %{!mcpu*:-mppc64}} %(asm_cpu)" + + /* Common ASM definitions used by ASM_SPEC amongst the various targets + for handling -mcpu=xxx switches. */ + #undef ASM_CPU_SPEC + #define ASM_CPU_SPEC \ + "%{!mcpu*: %{!maix64: \ + %{mpowerpc64: -mppc64} \ + %{maltivec: -m970} \ + %{!maltivec: %{!mpower64: %(asm_default)}}}} \ + %{mcpu=power3: -m620} \ + %{mcpu=power4: -mpwr4} \ + %{mcpu=power5: -mpwr5} \ + %{mcpu=power5+: -mpwr5x} \ + %{mcpu=power6: -mpwr6} \ + %{mcpu=power6x: -mpwr6} \ + %{mcpu=powerpc: -mppc} \ + %{mcpu=rs64a: -mppc} \ + %{mcpu=603: -m603} \ + %{mcpu=603e: -m603} \ + %{mcpu=604: -m604} \ + %{mcpu=604e: -m604} \ + %{mcpu=620: -m620} \ + %{mcpu=630: -m620} \ + %{mcpu=970: -m970} \ + %{mcpu=G5: -m970}" + + #undef ASM_DEFAULT_SPEC + #define ASM_DEFAULT_SPEC "-mppc" + + #undef TARGET_OS_CPP_BUILTINS + #define TARGET_OS_CPP_BUILTINS() \ + do \ + { \ + builtin_define ("_AIX43"); \ + builtin_define ("_AIX51"); \ + builtin_define ("_AIX52"); \ + builtin_define ("_AIX53"); \ + builtin_define ("_AIX61"); \ + TARGET_OS_AIX_CPP_BUILTINS (); \ + } \ + while (0) + + #undef CPP_SPEC + #define CPP_SPEC "%{posix: -D_POSIX_SOURCE} \ + %{ansi: -D_ANSI_C_SOURCE} \ + %{maix64: -D__64BIT__} \ + %{mpe: -I/usr/lpp/ppe.poe/include} \ + %{pthread: -D_THREAD_SAFE}" + + /* The GNU C++ standard library requires that these macros be + defined. Synchronize with libstdc++ os_defines.h. */ + #undef CPLUSPLUS_CPP_SPEC + #define CPLUSPLUS_CPP_SPEC \ + "-D_ALL_SOURCE -D__COMPATMATH__ \ + %{maix64: -D__64BIT__} \ + %{mpe: -I/usr/lpp/ppe.poe/include} \ + %{pthread: -D_THREAD_SAFE}" + + #undef TARGET_DEFAULT + #define TARGET_DEFAULT (MASK_POWERPC | MASK_NEW_MNEMONICS) + + #undef PROCESSOR_DEFAULT + #define PROCESSOR_DEFAULT PROCESSOR_POWER5 + #undef PROCESSOR_DEFAULT64 + #define PROCESSOR_DEFAULT64 PROCESSOR_POWER5 + + #undef TARGET_POWER + #define TARGET_POWER 0 + + /* Define this macro as a C expression for the initializer of an + array of string to tell the driver program which options are + defaults for this target and thus do not need to be handled + specially when using `MULTILIB_OPTIONS'. + + Do not define this macro if `MULTILIB_OPTIONS' is not defined in + the target makefile fragment or if none of the options listed in + `MULTILIB_OPTIONS' are set by default. *Note Target Fragment::. */ + + #undef MULTILIB_DEFAULTS + + #undef LIB_SPEC + #define LIB_SPEC "%{pg:-L/lib/profiled -L/usr/lib/profiled}\ + %{p:-L/lib/profiled -L/usr/lib/profiled}\ + %{!maix64:%{!shared:%{g*:-lg}}}\ + %{mpe:-L/usr/lpp/ppe.poe/lib -lmpi -lvtd}\ + %{pthread:-lpthreads} -lc" + + #undef LINK_SPEC + #define LINK_SPEC "-bpT:0x10000000 -bpD:0x20000000 %{!r:-btextro} -bnodelcsect\ + %{static:-bnso %(link_syscalls) } %{shared:-bM:SRE %{!e:-bnoentry}}\ + %{!maix64:%{!shared:%{g*: %(link_libg) }}} %{maix64:-b64}\ + %{mpe:-binitfini:poe_remote_main}" + + #undef STARTFILE_SPEC + #define STARTFILE_SPEC "%{!shared:\ + %{maix64:%{pg:gcrt0_64%O%s}%{!pg:%{p:mcrt0_64%O%s}%{!p:crt0_64%O%s}}}\ + %{!maix64:\ + %{pthread:%{pg:gcrt0_r%O%s}%{!pg:%{p:mcrt0_r%O%s}%{!p:crt0_r%O%s}}}\ + %{!pthread:%{pg:gcrt0%O%s}%{!pg:%{p:mcrt0%O%s}%{!p:crt0%O%s}}}}}" + + /* AIX V5 typedefs ptrdiff_t as "long" while earlier releases used "int". */ + + #undef PTRDIFF_TYPE + #define PTRDIFF_TYPE "long int" + + /* Type used for wchar_t, as a string used in a declaration. */ + #undef WCHAR_TYPE + #define WCHAR_TYPE (!TARGET_64BIT ? "short unsigned int" : "unsigned int") + + /* Width of wchar_t in bits. */ + #undef WCHAR_TYPE_SIZE + #define WCHAR_TYPE_SIZE (!TARGET_64BIT ? 16 : 32) + + /* AIX V5 uses PowerPC nop (ori 0,0,0) instruction as call glue for PowerPC + and "cror 31,31,31" for POWER architecture. */ + + #undef RS6000_CALL_GLUE + #define RS6000_CALL_GLUE "{cror 31,31,31|nop}" + + /* AIX 4.2 and above provides initialization and finalization function + support from linker command line. */ + #undef HAS_INIT_SECTION + #define HAS_INIT_SECTION + + #undef LD_INIT_SWITCH + #define LD_INIT_SWITCH "-binitfini" + + /* AIX 5.2 has the float and long double forms of math functions. */ + #undef TARGET_C99_FUNCTIONS + #define TARGET_C99_FUNCTIONS 1 + + #ifndef _AIX52 + extern long long int atoll(const char *); + #endif + + /* This target uses the aix64.opt file. */ + #define TARGET_USES_AIX64_OPT 1 + + #define RS6000_DEFAULT_LONG_DOUBLE_SIZE 128 *** gcc/config/rs6000/rs6000-c.c.ORIG Tue Jan 29 14:21:34 2008 --- gcc/config/rs6000/rs6000-c.c Tue Jan 29 15:59:30 2008 *************** *** 131,137 **** RS6000_CPU_CPP_ENDIAN_BUILTINS(); if (TARGET_LONG_DOUBLE_128) ! builtin_define ("__LONG_DOUBLE_128__"); switch (rs6000_current_abi) { --- 131,140 ---- RS6000_CPU_CPP_ENDIAN_BUILTINS(); if (TARGET_LONG_DOUBLE_128) ! { ! builtin_define ("__LONG_DOUBLE_128__"); ! builtin_define ("__LONGDOUBLE128"); ! } switch (rs6000_current_abi) { *** libstdc++-v3/config/os/aix/os_defines.h.ORIG Tue Jan 29 14:22:25 2008 --- libstdc++-v3/config/os/aix/os_defines.h Tue Jan 29 14:23:29 2008 *************** *** 1,6 **** // Specific definitions for AIX -*- C++ -*- ! // Copyright (C) 2000, 2002, 2005 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the --- 1,6 ---- // Specific definitions for AIX -*- C++ -*- ! // Copyright (C) 2000, 2002, 2005, 2008 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the *************** *** 46,51 **** --- 46,56 ---- // atomic types #ifndef _ALL_SOURCE #define _ALL_SOURCE + #endif + + // C99 math + #ifndef __COMPATMATH__ + #define __COMPATMATH__ #endif #endif