X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gas%2Fconfigure.tgt;h=3e230cba934db10764bb10e103760f4ebf5b38e4;hb=c2c4ff8d52a2cd3263a547b0384692498714aa1b;hp=777f798d4db84fa6dafebae421afbb59afede944;hpb=7ba29e2a41ab1802c0e56ce97b290d5f0aece80e;p=deliverable%2Fbinutils-gdb.git diff --git a/gas/configure.tgt b/gas/configure.tgt index 777f798d4d..3e230cba93 100644 --- a/gas/configure.tgt +++ b/gas/configure.tgt @@ -1,4 +1,21 @@ # gas target specific configuration file. This is a -*- sh -*- file. +# +# Copyright (C) 2012-2016 Free Software Foundation, Inc. +# +# This file 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 of the License, or +# (at your option) any later version. +# +# This program 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 this program; see the file COPYING3. If not see +# . +# # This is invoked by configure. Putting it in a separate shell file # lets us skip running autoconf when modifying target specific @@ -13,7 +30,7 @@ # em emulation; identifies the config/te-* files # Optional output shell variables; these are not always set: -# arch the default architecture; sets DEFAULT_ARCH on some systems +# arch the default architecture; sets DEFAULT_ARCH on some systems # endian "big" or "little"; used on bi-endian systems cpu_type= @@ -29,8 +46,11 @@ eval `echo $targ | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/cpu=\1 vendor=\2 os=\3/'` # endian and arch. # Note: This table is alpha-sorted, please try to keep it that way. case ${cpu} in + aarch64) cpu_type=aarch64 endian=little ;; + aarch64_be) cpu_type=aarch64 endian=big ;; alpha*) cpu_type=alpha ;; am33_2.0) cpu_type=mn10300 endian=little ;; + arc*eb) cpu_type=arc endian=big ;; arm*be|arm*b) cpu_type=arm endian=big ;; arm*) cpu_type=arm endian=little ;; bfin*) cpu_type=bfin endian=little ;; @@ -38,14 +58,15 @@ case ${cpu} in cr16*) cpu_type=cr16 endian=little ;; crisv32) cpu_type=cris arch=crisv32 ;; crx*) cpu_type=crx endian=little ;; + epiphany*) cpu_type=epiphany endian=little ;; fido) cpu_type=m68k ;; hppa*) cpu_type=hppa ;; i[3-7]86) cpu_type=i386 arch=i386;; ia64) cpu_type=ia64 ;; - ip2k) cpu_type=ip2k endian=big ;; - iq2000) cpu_type=iq2000 endian=big ;; - lm32) cpu_type=lm32 ;; - m32c) cpu_type=m32c endian=big ;; + ip2k) cpu_type=ip2k endian=big ;; + iq2000) cpu_type=iq2000 endian=big ;; + lm32) cpu_type=lm32 ;; + m32c) cpu_type=m32c endian=little ;; m32r) cpu_type=m32r endian=big ;; m32rle) cpu_type=m32r endian=little ;; m5200) cpu_type=m68k ;; @@ -53,26 +74,32 @@ case ${cpu} in m680[012346]0) cpu_type=m68k ;; m6811|m6812|m68hc12) cpu_type=m68hc11 ;; m683??) cpu_type=m68k ;; - maxq) cpu_type=maxq ;; - mep-*-elf) cpu_type=mep endian=big ;; - microblaze*) cpu_type=microblaze ;; + mep) cpu_type=mep endian=little ;; + microblazeel*) cpu_type=microblaze endian=little;; + microblaze*) cpu_type=microblaze endian=big;; mips*el) cpu_type=mips endian=little ;; mips*) cpu_type=mips endian=big ;; - mt) cpu_type=mt endian=big ;; - or32*) cpu_type=or32 endian=big ;; + mt) cpu_type=mt endian=big ;; + nds32be) cpu_type=nds32 endian=big ;; + nds32le) cpu_type=nds32 endian=little ;; + or1k* | or1knd*) cpu_type=or1k endian=big ;; pjl*) cpu_type=pj endian=little ;; pj*) cpu_type=pj endian=big ;; powerpc*le*) cpu_type=ppc endian=little ;; powerpc*) cpu_type=ppc endian=big ;; + riscv32*) cpu_type=riscv endian=little arch=riscv32 ;; + riscv64*) cpu_type=riscv endian=little arch=riscv64 ;; rs6000*) cpu_type=ppc ;; + rl78*) cpu_type=rl78 ;; + rx) cpu_type=rx ;; s390x*) cpu_type=s390 arch=s390x ;; s390*) cpu_type=s390 arch=s390 ;; - score*l) cpu_type=score endian=little ;; - score*) cpu_type=score endian=big ;; + score*l) cpu_type=score endian=little ;; + score*) cpu_type=score endian=big ;; sh5le*) cpu_type=sh64 endian=little ;; sh5*) cpu_type=sh64 endian=big ;; sh64le*) cpu_type=sh64 endian=little ;; - sh64*) cpu_type=sh64 endian=big ;; + sh64*) cpu_type=sh64 endian=big ;; sh*le) cpu_type=sh endian=little ;; sh*) cpu_type=sh endian=big ;; sparc64*) cpu_type=sparc arch=v9-64 ;; @@ -80,13 +107,12 @@ case ${cpu} in sparclet*) cpu_type=sparc arch=sparclet ;; sparclite*) cpu_type=sparc arch=sparclite ;; sparc*) cpu_type=sparc arch=sparclite ;; # ??? See tc-sparc.c. - strongarm*be) cpu_type=arm endian=big ;; - strongarm*b) cpu_type=arm endian=big ;; - strongarm*) cpu_type=arm endian=little ;; + tilegx*be) cpu_type=tilegx endian=big ;; + tilegx*) cpu_type=tilegx endian=little ;; v850*) cpu_type=v850 ;; + visium) cpu_type=visium endian=big ;; x86_64*) cpu_type=i386 arch=x86_64;; - xscale*be|xscale*b) cpu_type=arm endian=big ;; - xscale*) cpu_type=arm endian=little ;; + xgate) cpu_type=xgate ;; xtensa*) cpu_type=xtensa arch=xtensa ;; *) cpu_type=${cpu} ;; esac @@ -96,35 +122,44 @@ esac generic_target=${cpu_type}-$vendor-$os # Note: This table is alpha-sorted, please try to keep it that way. case ${generic_target} in + aarch64*-*-elf | aarch64*-*-rtems*) fmt=elf;; + aarch64*-*-linux*) fmt=elf em=linux ;; + alpha-*-*vms*) fmt=evax ;; alpha-*-osf*) fmt=ecoff ;; - alpha-*-linuxecoff*) fmt=ecoff ;; + alpha-*-linux*ecoff*) fmt=ecoff ;; alpha-*-linux-*) fmt=elf em=linux ;; - alpha-*-netbsd*) fmt=elf em=nbsd ;; - alpha-*-openbsd*) fmt=elf em=obsd ;; + alpha-*-netbsd* | alpha-*-openbsd*) fmt=elf em=nbsd ;; arc-*-elf*) fmt=elf ;; + arc*-*-linux*) fmt=elf bfd_gas=yes ;; arm-*-aout) fmt=aout ;; - arm-*-coff | thumb-*-coff) fmt=coff ;; - arm-*-rtems* | thumb-*-rtems*) fmt=elf ;; - arm-*-elf | thumb-*-elf) fmt=elf ;; + arm-*-coff) fmt=coff ;; + arm-*-phoenix*) fmt=elf ;; + arm-*-rtems*) fmt=elf ;; + arm-*-elf) fmt=elf ;; arm-*-eabi*) fmt=elf em=armeabi ;; arm-*-symbianelf*) fmt=elf em=symbian ;; arm-*-kaos*) fmt=elf ;; arm-*-conix*) fmt=elf ;; + arm-*-freebsd[89].* | armeb-*-freebsd[89].*) + fmt=elf em=freebsd ;; + arm-*-freebsd* | armeb-*-freebsd*) fmt=elf em=armfbsdeabi ;; + arm*-*-freebsd*) fmt=elf em=armfbsdvfp ;; arm-*-linux*aout*) fmt=aout em=linux ;; arm-*-linux-*eabi*) fmt=elf em=armlinuxeabi ;; arm-*-linux-*) fmt=elf em=linux ;; arm-*-uclinux*eabi*) fmt=elf em=armlinuxeabi ;; arm-*-uclinux*) fmt=elf em=linux ;; - arm-*-netbsdelf*) fmt=elf em=nbsd ;; + arm-*-nacl*) fmt=elf em=nacl ;; + arm-*-netbsdelf*) fmt=elf em=nbsd ;; arm-*-*n*bsd*) fmt=aout em=nbsd ;; arm-*-nto*) fmt=elf ;; - arm-epoc-pe | thumb-epoc-pe) fmt=coff em=epoc-pe ;; + arm-epoc-pe) fmt=coff em=epoc-pe ;; arm-wince-pe | arm-*-wince | arm*-*-mingw32ce* | arm*-*-cegcc*) fmt=coff em=wince-pe ;; - arm-*-pe | thumb-*-pe) fmt=coff em=pe ;; + arm-*-pe) fmt=coff em=pe ;; arm-*-riscix*) fmt=aout em=riscix ;; avr-*-*) fmt=elf bfd_gas=yes ;; @@ -134,24 +169,25 @@ case ${generic_target} in bfin-*-rtems*) fmt=elf ;; bfin-*elf) fmt=elf ;; - cr16-*-elf*) fmt=elf ;; + cr16-*-elf*) fmt=elf ;; cris-*-linux-* | crisv32-*-linux-*) fmt=multi em=linux ;; cris-*-* | crisv32-*-*) fmt=multi ;; - crx-*-elf*) fmt=elf ;; + crx-*-elf*) fmt=elf ;; d10v-*-*) fmt=elf ;; d30v-*-*) fmt=elf ;; dlx-*-*) fmt=elf ;; + epiphany-*-*) fmt=elf ;; + fr30-*-*) fmt=elf ;; frv-*-*linux*) fmt=elf em=linux;; frv-*-*) fmt=elf ;; - moxie-*-uclinux) fmt=elf em=linux;; - moxie-*-*) fmt=elf ;; + ft32-*-*) fmt=elf ;; hppa-*-linux*) case ${cpu} in @@ -174,6 +210,7 @@ case ${generic_target} in hppa-*-hiux*) fmt=som em=hppa ;; h8300-*-elf | h8300-*-rtems*) fmt=elf ;; + h8300-*-linux*) fmt=elf em=linux ;; i370-*-elf* | i370-*-linux*) fmt=elf ;; @@ -182,9 +219,14 @@ case ${generic_target} in i386-*-beospe*) fmt=coff em=pe ;; i386-*-beos*) fmt=elf ;; i386-*-coff) fmt=coff ;; - i386-*-elf) fmt=elf ;; + i386-*-elfiamcu) fmt=elf arch=iamcu ;; + i386-*-elf*) fmt=elf ;; i386-*-kaos*) fmt=elf ;; i386-*-bsd*) fmt=aout em=386bsd ;; + i386-*-nacl*) fmt=elf em=nacl + case ${cpu} in + x86_64*) arch=x86_64:32 ;; + esac ;; i386-*-netbsd0.8) fmt=aout em=386bsd ;; i386-*-netbsdpe*) fmt=coff em=pe ;; i386-*-netbsd*-gnu* | \ @@ -201,15 +243,18 @@ case ${generic_target} in i386-*-linux*aout*) fmt=aout em=linux ;; i386-*-linux*oldld) fmt=aout em=linux ;; i386-*-linux*coff*) fmt=coff em=linux ;; - i386-*-linux-*) fmt=elf em=linux ;; + i386-*-linux-*) fmt=elf em=linux + case ${cpu}-${os} in + x86_64*-linux-gnux32) arch=x86_64:32 ;; + esac ;; i386-*-lynxos*) fmt=elf em=lynx ;; i386-*-sysv[45]*) fmt=elf ;; i386-*-solaris*) fmt=elf em=solaris ;; i386-*-freebsdaout*) fmt=aout em=386bsd ;; i386-*-freebsd[12].*) fmt=aout em=386bsd ;; i386-*-freebsd[12]) fmt=aout em=386bsd ;; - i386-*-freebsd* | i386-*-kfreebsd*-gnu | i386-*-dragonfly*) - fmt=elf em=freebsd ;; + i386-*-freebsd* \ + | i386-*-kfreebsd*-gnu) fmt=elf em=freebsd ;; i386-*-sysv*) fmt=coff ;; i386-*-sco3.2v5*coff) fmt=coff ;; i386-*-isc*) fmt=coff ;; @@ -224,7 +269,11 @@ case ${generic_target} in i386-*-msdos*) fmt=aout ;; i386-*-moss*) fmt=elf ;; i386-*-pe) fmt=coff em=pe ;; - i386-*-cygwin*) fmt=coff em=pe ;; + i386-*-cygwin*) + case ${cpu} in + x86_64*) fmt=coff em=pep ;; + i*) fmt=coff em=pe ;; + esac ;; i386-*-interix*) fmt=coff em=interix ;; i386-*-mingw*) case ${cpu} in @@ -250,7 +299,7 @@ case ${generic_target} in ip2k-*-*) fmt=elf ;; - iq2000-*-elf) fmt=elf ;; + iq2000-*-elf) fmt=elf ;; lm32-*-*) fmt=elf ;; @@ -262,41 +311,36 @@ case ${generic_target} in m68hc11-*-* | m6811-*-*) fmt=elf ;; m68hc12-*-* | m6812-*-*) fmt=elf ;; + m68k-*-aout) fmt=aout bfd_gas=yes ;; m68k-*-elf*) fmt=elf ;; m68k-*-sysv4*) fmt=elf em=svr4 ;; m68k-*-rtems*) fmt=elf ;; m68k-*-linux-*) fmt=elf em=linux ;; - m68k-*-uclinux*) fmt=elf ;; + m68k-*-uclinux*) fmt=elf em=uclinux ;; m68k-*-gnu*) fmt=elf ;; m68k-*-netbsdelf*) fmt=elf em=nbsd ;; m68k-*-netbsd*) fmt=aout em=nbsd bfd_gas=yes ;; m68k-*-openbsd*) fmt=aout em=nbsd bfd_gas=yes ;; m68k-*-psos*) fmt=elf em=psos;; - maxq-*-coff) fmt=coff bfd_gas=yes ;; - mep-*-elf) fmt=elf ;; + metag-*-elf) fmt=elf ;; + metag-*-linux*) fmt=elf em=linux ;; + mcore-*-elf) fmt=elf ;; mcore-*-pe) fmt=coff em=pe bfd_gas=yes ;; microblaze-*-*) fmt=elf ;; - # don't change em like *-*-bsd does - mips-sony-bsd*) fmt=ecoff ;; - mips-*-ultrix*) fmt=ecoff endian=little ;; - mips-*-osf*) fmt=ecoff endian=little ;; - mips-*-ecoff*) fmt=ecoff ;; - mips-*-pe*) fmt=coff endian=little em=pe ;; mips-*-irix6*) fmt=elf em=irix ;; mips-*-irix5*) fmt=elf em=irix ;; - mips-*-irix*) fmt=ecoff em=irix ;; - mips-*-lnews*) fmt=ecoff em=lnews ;; - mips-*-riscos*) fmt=ecoff ;; mips*-*-linux*) fmt=elf em=tmips ;; + mips*-*-freebsd* | mips*-*-kfreebsd*-gnu) + fmt=elf em=freebsd ;; mips-*-sysv4*MP* | mips-*-gnu*) fmt=elf em=tmips ;; - mips*-sde-elf*) fmt=elf em=tmips ;; - mips-*-sysv*) fmt=ecoff ;; + mips*-sde-elf* | mips*-mti-elf* | mips*-img-elf*) + fmt=elf em=tmips ;; mips-*-elf* | mips-*-rtems*) fmt=elf ;; mips-*-netbsd*) fmt=elf em=tmips ;; mips-*-openbsd*) fmt=elf em=tmips ;; @@ -309,19 +353,27 @@ case ${generic_target} in mn10300-*-linux*) fmt=elf em=linux ;; mn10300-*-*) fmt=elf ;; + moxie-*-uclinux) fmt=elf em=linux ;; + moxie-*-moxiebox*) fmt=elf endian=little ;; + moxie-*-*) fmt=elf ;; + mt-*-elf) fmt=elf bfd_gas=yes ;; msp430-*-*) fmt=elf ;; + nds32-*-elf*) fmt=elf ;; + nds32-*-linux*) fmt=elf em=linux ;; + + nios2-*-rtems*) fmt=elf ;; + nios2*-linux*) fmt=elf em=linux ;; + ns32k-pc532-mach*) fmt=aout em=pc532mach ;; ns32k-pc532-ux*) fmt=aout em=pc532mach ;; ns32k-pc532-lites*) fmt=aout em=nbsd532 ;; ns32k-*-*n*bsd*) fmt=aout em=nbsd532 ;; - openrisc-*-*) fmt=elf ;; - - or32-*-rtems*) fmt=elf ;; - or32-*-elf) fmt=elf ;; + or1k*-*-elf | or1k*-*-rtems*) fmt=elf endian=big ;; + or1k*-*-linux*) fmt=elf em=linux endian=big ;; pj*) fmt=elf ;; @@ -329,7 +381,7 @@ case ${generic_target} in ppc-*-winnt*) fmt=coff em=pe ;; ppc-*-aix5.[01]) fmt=coff em=aix5 ;; ppc-*-aix[5-9].*) fmt=coff em=aix5 ;; - ppc-*-aix*) fmt=coff ;; + ppc-*-aix*) fmt=coff em=aix ;; ppc-*-beos*) fmt=coff ;; ppc-*-*n*bsd* | ppc-*-elf*) fmt=elf ;; ppc-*-eabi* | ppc-*-sysv4*) fmt=elf ;; @@ -341,10 +393,12 @@ case ${generic_target} in ppc-*-kaos*) fmt=elf ;; ppc-*-lynxos*) fmt=elf em=lynx ;; + riscv*-*-*) fmt=elf endian=little em=linux ;; + s390-*-linux-*) fmt=elf em=linux ;; s390-*-tpf*) fmt=elf ;; - score-*-elf) fmt=elf ;; + score-*-elf) fmt=elf ;; sh*-*-linux*) fmt=elf em=linux case ${cpu} in @@ -353,9 +407,14 @@ case ${generic_target} in esac ;; sh5*-*-netbsd*) fmt=elf em=nbsd ;; sh64*-*-netbsd*) fmt=elf em=nbsd ;; - sh*-*-netbsdelf*) fmt=elf em=nbsd ;; + sh*-*-netbsdelf*) fmt=elf em=nbsd + case ${cpu} in + sh*l*) endian=little ;; + *) endian=big ;; + esac ;; sh*-*-symbianelf*) fmt=elf endian=little ;; - sh-*-elf* | sh-*-uclinux* | sh[12]-*-uclinux*) fmt=elf ;; + sh-*-elf*) fmt=elf ;; + sh-*-uclinux* | sh[12]-*-uclinux*) fmt=elf em=uclinux ;; sh-*-coff*) fmt=coff ;; sh-*-nto*) fmt=elf ;; sh-*-pe*) fmt=coff em=pe bfd_gas=yes endian=little ;; @@ -365,6 +424,7 @@ case ${generic_target} in shle*-*-kaos*) fmt=elf ;; sh64-*-elf*) fmt=elf ;; + sparc64-*-rtems*) fmt=elf ;; sparc-*-rtems*) fmt=elf ;; sparc-*-sunos4*) fmt=aout em=sun3 ;; sparc-*-aout) fmt=aout em=sparcaout ;; @@ -395,18 +455,20 @@ case ${generic_target} in tic30-*-*coff*) fmt=coff bfd_gas=yes ;; tic4x-*-* | c4x-*-*) fmt=coff bfd_gas=yes ;; tic54x-*-* | c54x*-*-*) fmt=coff bfd_gas=yes need_libm=yes;; + tic6x-*-*) fmt=elf ;; + + tilepro-*-* | tilegx*-*-*) fmt=elf ;; - v850-*-*) fmt=elf ;; - v850e-*-*) fmt=elf ;; - v850ea-*-*) fmt=elf ;; + v850*-*-*) fmt=elf ;; vax-*-netbsdelf*) fmt=elf em=nbsd ;; vax-*-linux-*) fmt=elf em=linux ;; - xscale-*-coff) fmt=coff ;; - xscale-*-elf) fmt=elf ;; + visium-*-elf) fmt=elf ;; xstormy16-*-*) fmt=elf ;; + + xgate-*-*) fmt=elf ;; xtensa*-*-*) fmt=elf ;; @@ -415,6 +477,8 @@ case ${generic_target} in z8k-*-coff | z8k-*-sim) fmt=coff ;; *-*-aout | *-*-scout) fmt=aout ;; + *-*-cloudabi*) fmt=elf ;; + *-*-dragonfly*) fmt=elf em=dragonfly ;; *-*-freebsd* | *-*-kfreebsd*-gnu) fmt=elf em=freebsd ;; *-*-bsd*) fmt=aout em=sun3 ;; *-*-generic) fmt=generic ;; @@ -428,7 +492,7 @@ case ${generic_target} in esac case ${cpu_type} in - alpha | arm | i386 | ia64 | microblaze | mips | ns32k | pdp11 | ppc | sparc | z80 | z8k) + aarch64 | alpha | arm | i386 | ia64 | microblaze | mips | ns32k | or1k | or1knd | pdp11 | ppc | riscv | sparc | z80 | z8k) bfd_gas=yes ;; esac @@ -442,3 +506,12 @@ if test $bfd_gas != yes; then echo This target is no longer supported in gas exit 1 fi + +case ${cpu_type}-${fmt}-${os} in +i386-elf-linux*) + # Default to compress DWARF debug sections for Linux/x86. + if test ${ac_default_compressed_debug_sections} = unset; then + ac_default_compressed_debug_sections=yes + fi + ;; +esac