gcc/gcc/config.gcc

3272 lines
97 KiB
Plaintext
Raw Normal View History

# GCC target-specific configuration file.
# Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
# 2008, 2009 Free Software Foundation, Inc.
Makefile.in, [...]: replace "GNU CC" with "GCC". * Makefile.in, alias.c, basic-block.h, bb-reorder.c, bitmap.c, bitmap.h, builtin-types.def, builtins.c, builtins.def, c-aux-info.c, c-common.c, c-common.def, c-common.h, c-convert.c, c-decl.c, c-dump.c, c-dump.h, c-errors.c, c-format.c, c-lang.c, c-lex.c, c-lex.h, c-parse.in, c-pragma.c, c-pragma.h, c-semantics.c, c-tree.h, c-typeck.c, caller-save.c, calls.c, collect2.c, collect2.h, combine.c, conditions.h, config.gcc, configure.frag, configure.in, conflict.c, convert.c, convert.h, cppspec.c, crtstuff.c, cse.c, cselib.c, cselib.h, dbxout.c, dbxout.h, defaults.h, dependence.c, df.c, df.h, diagnostic.c, diagnostic.h, doloop.c, dominance.c, dwarf.h, dwarf2.h, dwarf2asm.c, dwarf2asm.h, dwarf2out.c, dwarf2out.h, dwarfout.c, emit-rtl.c, errors.c, errors.h, except.c, except.h, exgettext, explow.c, expmed.c, expr.c, expr.h, final.c, fixproto, flags.h, flow.c, fold-const.c, fp-test.c, function.c, function.h, gbl-ctors.h, gcc.c, gcc.h, gcc.hlp, gccspec.c, gcov-io.h, gcse.c, genattr.c, genattrtab.c, gencheck.c, gencodes.c, genconfig.c, genemit.c, genextract.c, genflags.c, gengenrtl.c, genmultilib, genopinit.c, genoutput.c, genpeep.c, genrecog.c, gensupport.c, gensupport.h, ggc-callbacks.c, ggc-common.c, ggc-none.c, ggc-page.c, ggc-simple.c, ggc.h, global.c, graph.c, graph.h, gthr-aix.h, gthr-dce.h, gthr-posix.h, gthr-rtems.h, gthr-single.h, gthr-solaris.h, gthr-vxworks.h, gthr-win32.h, gthr.h, haifa-sched.c, halfpic.c, halfpic.h, hard-reg-set.h, hwint.h, ifcvt.c, input.h, insn-addr.h, integrate.c, integrate.h, jump.c, lcm.c, libgcc2.c, libgcc2.h, lists.c, local-alloc.c, loop.c, loop.h, machmode.def, machmode.h, main.c, mbchar.c, mbchar.h, mips-tdump.c, mips-tfile.c, mklibgcc.in, mkmap-flat.awk, mkmap-symver.awk, optabs.c, output.h, params.c, params.def, params.h, predict.c, predict.def, predict.h, prefix.c, prefix.h, print-rtl.c, print-tree.c, profile.c, protoize.c, read-rtl.c, real.c, real.h, recog.c, recog.h, reg-stack.c, regclass.c, regmove.c, regrename.c, regs.h, reload.c, reload.h, reload1.c, reorg.c, resource.c, resource.h, rtl.c, rtl.def, rtl.h, rtlanal.c, sbitmap.c, sbitmap.h, sched-deps.c, sched-ebb.c, sched-int.h, sched-rgn.c, sched-vis.c, sdbout.c, sdbout.h, sibcall.c, simplify-rtx.c, ssa-ccp.c, ssa-dce.c, ssa.c, ssa.h, stmt.c, stor-layout.c, stringpool.c, system.h, timevar.c, timevar.def, timevar.h, tlink.c, toplev.c, toplev.h, tree.c, tree.def, tree.h, tsystem.h, unroll.c, unwind-dw2-fde.c, unwind-dw2-fde.h, unwind-dw2.c, unwind-pe.h, unwind-sjlj.c, unwind.h, unwind.inc, varasm.c, varray.c, varray.h, xcoffout.c, xcoffout.h: replace "GNU CC" with "GCC". From-SVN: r45105
2001-08-22 16:35:51 +02:00
#This file is part of GCC.
Makefile.in, [...]: replace "GNU CC" with "GCC". * Makefile.in, alias.c, basic-block.h, bb-reorder.c, bitmap.c, bitmap.h, builtin-types.def, builtins.c, builtins.def, c-aux-info.c, c-common.c, c-common.def, c-common.h, c-convert.c, c-decl.c, c-dump.c, c-dump.h, c-errors.c, c-format.c, c-lang.c, c-lex.c, c-lex.h, c-parse.in, c-pragma.c, c-pragma.h, c-semantics.c, c-tree.h, c-typeck.c, caller-save.c, calls.c, collect2.c, collect2.h, combine.c, conditions.h, config.gcc, configure.frag, configure.in, conflict.c, convert.c, convert.h, cppspec.c, crtstuff.c, cse.c, cselib.c, cselib.h, dbxout.c, dbxout.h, defaults.h, dependence.c, df.c, df.h, diagnostic.c, diagnostic.h, doloop.c, dominance.c, dwarf.h, dwarf2.h, dwarf2asm.c, dwarf2asm.h, dwarf2out.c, dwarf2out.h, dwarfout.c, emit-rtl.c, errors.c, errors.h, except.c, except.h, exgettext, explow.c, expmed.c, expr.c, expr.h, final.c, fixproto, flags.h, flow.c, fold-const.c, fp-test.c, function.c, function.h, gbl-ctors.h, gcc.c, gcc.h, gcc.hlp, gccspec.c, gcov-io.h, gcse.c, genattr.c, genattrtab.c, gencheck.c, gencodes.c, genconfig.c, genemit.c, genextract.c, genflags.c, gengenrtl.c, genmultilib, genopinit.c, genoutput.c, genpeep.c, genrecog.c, gensupport.c, gensupport.h, ggc-callbacks.c, ggc-common.c, ggc-none.c, ggc-page.c, ggc-simple.c, ggc.h, global.c, graph.c, graph.h, gthr-aix.h, gthr-dce.h, gthr-posix.h, gthr-rtems.h, gthr-single.h, gthr-solaris.h, gthr-vxworks.h, gthr-win32.h, gthr.h, haifa-sched.c, halfpic.c, halfpic.h, hard-reg-set.h, hwint.h, ifcvt.c, input.h, insn-addr.h, integrate.c, integrate.h, jump.c, lcm.c, libgcc2.c, libgcc2.h, lists.c, local-alloc.c, loop.c, loop.h, machmode.def, machmode.h, main.c, mbchar.c, mbchar.h, mips-tdump.c, mips-tfile.c, mklibgcc.in, mkmap-flat.awk, mkmap-symver.awk, optabs.c, output.h, params.c, params.def, params.h, predict.c, predict.def, predict.h, prefix.c, prefix.h, print-rtl.c, print-tree.c, profile.c, protoize.c, read-rtl.c, real.c, real.h, recog.c, recog.h, reg-stack.c, regclass.c, regmove.c, regrename.c, regs.h, reload.c, reload.h, reload1.c, reorg.c, resource.c, resource.h, rtl.c, rtl.def, rtl.h, rtlanal.c, sbitmap.c, sbitmap.h, sched-deps.c, sched-ebb.c, sched-int.h, sched-rgn.c, sched-vis.c, sdbout.c, sdbout.h, sibcall.c, simplify-rtx.c, ssa-ccp.c, ssa-dce.c, ssa.c, ssa.h, stmt.c, stor-layout.c, stringpool.c, system.h, timevar.c, timevar.def, timevar.h, tlink.c, toplev.c, toplev.h, tree.c, tree.def, tree.h, tsystem.h, unroll.c, unwind-dw2-fde.c, unwind-dw2-fde.h, unwind-dw2.c, unwind-pe.h, unwind-sjlj.c, unwind.h, unwind.inc, varasm.c, varray.c, varray.h, xcoffout.c, xcoffout.h: replace "GNU CC" with "GCC". From-SVN: r45105
2001-08-22 16:35:51 +02:00
#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
Makefile.in, [...]: replace "GNU CC" with "GCC". * Makefile.in, alias.c, basic-block.h, bb-reorder.c, bitmap.c, bitmap.h, builtin-types.def, builtins.c, builtins.def, c-aux-info.c, c-common.c, c-common.def, c-common.h, c-convert.c, c-decl.c, c-dump.c, c-dump.h, c-errors.c, c-format.c, c-lang.c, c-lex.c, c-lex.h, c-parse.in, c-pragma.c, c-pragma.h, c-semantics.c, c-tree.h, c-typeck.c, caller-save.c, calls.c, collect2.c, collect2.h, combine.c, conditions.h, config.gcc, configure.frag, configure.in, conflict.c, convert.c, convert.h, cppspec.c, crtstuff.c, cse.c, cselib.c, cselib.h, dbxout.c, dbxout.h, defaults.h, dependence.c, df.c, df.h, diagnostic.c, diagnostic.h, doloop.c, dominance.c, dwarf.h, dwarf2.h, dwarf2asm.c, dwarf2asm.h, dwarf2out.c, dwarf2out.h, dwarfout.c, emit-rtl.c, errors.c, errors.h, except.c, except.h, exgettext, explow.c, expmed.c, expr.c, expr.h, final.c, fixproto, flags.h, flow.c, fold-const.c, fp-test.c, function.c, function.h, gbl-ctors.h, gcc.c, gcc.h, gcc.hlp, gccspec.c, gcov-io.h, gcse.c, genattr.c, genattrtab.c, gencheck.c, gencodes.c, genconfig.c, genemit.c, genextract.c, genflags.c, gengenrtl.c, genmultilib, genopinit.c, genoutput.c, genpeep.c, genrecog.c, gensupport.c, gensupport.h, ggc-callbacks.c, ggc-common.c, ggc-none.c, ggc-page.c, ggc-simple.c, ggc.h, global.c, graph.c, graph.h, gthr-aix.h, gthr-dce.h, gthr-posix.h, gthr-rtems.h, gthr-single.h, gthr-solaris.h, gthr-vxworks.h, gthr-win32.h, gthr.h, haifa-sched.c, halfpic.c, halfpic.h, hard-reg-set.h, hwint.h, ifcvt.c, input.h, insn-addr.h, integrate.c, integrate.h, jump.c, lcm.c, libgcc2.c, libgcc2.h, lists.c, local-alloc.c, loop.c, loop.h, machmode.def, machmode.h, main.c, mbchar.c, mbchar.h, mips-tdump.c, mips-tfile.c, mklibgcc.in, mkmap-flat.awk, mkmap-symver.awk, optabs.c, output.h, params.c, params.def, params.h, predict.c, predict.def, predict.h, prefix.c, prefix.h, print-rtl.c, print-tree.c, profile.c, protoize.c, read-rtl.c, real.c, real.h, recog.c, recog.h, reg-stack.c, regclass.c, regmove.c, regrename.c, regs.h, reload.c, reload.h, reload1.c, reorg.c, resource.c, resource.h, rtl.c, rtl.def, rtl.h, rtlanal.c, sbitmap.c, sbitmap.h, sched-deps.c, sched-ebb.c, sched-int.h, sched-rgn.c, sched-vis.c, sdbout.c, sdbout.h, sibcall.c, simplify-rtx.c, ssa-ccp.c, ssa-dce.c, ssa.c, ssa.h, stmt.c, stor-layout.c, stringpool.c, system.h, timevar.c, timevar.def, timevar.h, tlink.c, toplev.c, toplev.h, tree.c, tree.def, tree.h, tsystem.h, unroll.c, unwind-dw2-fde.c, unwind-dw2-fde.h, unwind-dw2.c, unwind-pe.h, unwind-sjlj.c, unwind.h, unwind.inc, varasm.c, varray.c, varray.h, xcoffout.c, xcoffout.h: replace "GNU CC" with "GCC". From-SVN: r45105
2001-08-22 16:35:51 +02:00
#version.
Makefile.in, [...]: replace "GNU CC" with "GCC". * Makefile.in, alias.c, basic-block.h, bb-reorder.c, bitmap.c, bitmap.h, builtin-types.def, builtins.c, builtins.def, c-aux-info.c, c-common.c, c-common.def, c-common.h, c-convert.c, c-decl.c, c-dump.c, c-dump.h, c-errors.c, c-format.c, c-lang.c, c-lex.c, c-lex.h, c-parse.in, c-pragma.c, c-pragma.h, c-semantics.c, c-tree.h, c-typeck.c, caller-save.c, calls.c, collect2.c, collect2.h, combine.c, conditions.h, config.gcc, configure.frag, configure.in, conflict.c, convert.c, convert.h, cppspec.c, crtstuff.c, cse.c, cselib.c, cselib.h, dbxout.c, dbxout.h, defaults.h, dependence.c, df.c, df.h, diagnostic.c, diagnostic.h, doloop.c, dominance.c, dwarf.h, dwarf2.h, dwarf2asm.c, dwarf2asm.h, dwarf2out.c, dwarf2out.h, dwarfout.c, emit-rtl.c, errors.c, errors.h, except.c, except.h, exgettext, explow.c, expmed.c, expr.c, expr.h, final.c, fixproto, flags.h, flow.c, fold-const.c, fp-test.c, function.c, function.h, gbl-ctors.h, gcc.c, gcc.h, gcc.hlp, gccspec.c, gcov-io.h, gcse.c, genattr.c, genattrtab.c, gencheck.c, gencodes.c, genconfig.c, genemit.c, genextract.c, genflags.c, gengenrtl.c, genmultilib, genopinit.c, genoutput.c, genpeep.c, genrecog.c, gensupport.c, gensupport.h, ggc-callbacks.c, ggc-common.c, ggc-none.c, ggc-page.c, ggc-simple.c, ggc.h, global.c, graph.c, graph.h, gthr-aix.h, gthr-dce.h, gthr-posix.h, gthr-rtems.h, gthr-single.h, gthr-solaris.h, gthr-vxworks.h, gthr-win32.h, gthr.h, haifa-sched.c, halfpic.c, halfpic.h, hard-reg-set.h, hwint.h, ifcvt.c, input.h, insn-addr.h, integrate.c, integrate.h, jump.c, lcm.c, libgcc2.c, libgcc2.h, lists.c, local-alloc.c, loop.c, loop.h, machmode.def, machmode.h, main.c, mbchar.c, mbchar.h, mips-tdump.c, mips-tfile.c, mklibgcc.in, mkmap-flat.awk, mkmap-symver.awk, optabs.c, output.h, params.c, params.def, params.h, predict.c, predict.def, predict.h, prefix.c, prefix.h, print-rtl.c, print-tree.c, profile.c, protoize.c, read-rtl.c, real.c, real.h, recog.c, recog.h, reg-stack.c, regclass.c, regmove.c, regrename.c, regs.h, reload.c, reload.h, reload1.c, reorg.c, resource.c, resource.h, rtl.c, rtl.def, rtl.h, rtlanal.c, sbitmap.c, sbitmap.h, sched-deps.c, sched-ebb.c, sched-int.h, sched-rgn.c, sched-vis.c, sdbout.c, sdbout.h, sibcall.c, simplify-rtx.c, ssa-ccp.c, ssa-dce.c, ssa.c, ssa.h, stmt.c, stor-layout.c, stringpool.c, system.h, timevar.c, timevar.def, timevar.h, tlink.c, toplev.c, toplev.h, tree.c, tree.def, tree.h, tsystem.h, unroll.c, unwind-dw2-fde.c, unwind-dw2-fde.h, unwind-dw2.c, unwind-pe.h, unwind-sjlj.c, unwind.h, unwind.inc, varasm.c, varray.c, varray.h, xcoffout.c, xcoffout.h: replace "GNU CC" with "GCC". From-SVN: r45105
2001-08-22 16:35:51 +02:00
#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
#<http://www.gnu.org/licenses/>.
# This is the GCC target-specific configuration file
# where a configuration type is mapped to different system-specific
# definitions and files. This is invoked by the autoconf-generated
# configure script. Putting it in a separate shell file lets us skip
# running autoconf when modifying target-specific information.
Makefile.def (target_modules): Add libgcc. ./ * Makefile.def (target_modules): Add libgcc. (lang_env_dependencies): Remove default items. Use no_c and no_gcc. * Makefile.tpl (clean-target-libgcc): Delete. (configure-target-[+module+]): Emit --disable-bootstrap dependencies on gcc even for bootstrapped modules. Rewrite handling of lang_env_dependencies to loop over target_modules. * configure.in (target_libraries): Add target-libgcc. * Makefile.in, configure: Regenerated. gcc/ * config.gcc: Mention libgcc/config.host. * Makefile.in: Update comments mentioning libgcc. (LIBGCC, INSTALL_LIBGCC, GCC_PARTS, mklibgcc): Delete. (all.cross, start.encap, rest.encap, rest.cross): Update dependencies for libgcc move. (libgcc.mk, LIBGCC_DEPS, libgcov.a, libgcc.a, stmp-multilib) (clean-target, clean-target-libgcc): Delete. (srcdirify, GCC_EXTRA_PARTS): New macros. (libgcc-support, libgcc.mvars): New rules. (distclean): Remove mention of mklibgcc. (install): Don't reference INSTALL_LIBGCC. (install-common): Don't reference EXTRA_PARTS. (install-libgcc, install-multilib): Delete rules. * mklibgcc.in: Delete file. * doc/configfiles.texi: Don't mention mklibgcc. * config/i386/t-darwin (SHLIB_VERPFX): Delete (moved to libgcc). * config/i386/t-darwin64 (SHLIB_VERPFX): Likewise. * config/rs6000/t-darwin (SHLIB_VERPFX): Likewise. * config/rs6000/t-ppccomm (TARGET_LIBGCC2_CFLAGS, SHLIB_MAPFILES) (mklibgcc, ldblspecs): Likewise. * config/i386/t-nwld (libgcc.def, libc.def, libpcre.def) (posixpre.def): Use $(T). (SHLIB_EXT, SHLIB_NAME, SHLIB_SLIBDIR_QUAL, SHLIB_DEF, SHLIB_MAP) (SHLIB_SRC, SHLIB_INSTALL): Delete. (SHLIB_LINK): Make dummy. * config/t-slibgcc-darwin: Delete contents except for dummy SHLIB_LINK. * config/frv/t-linux (EXTRA_MULTILIB_PARTS): Clear. * config/alpha/t-crtfm: Use $(T) in rules for EXTRA_PARTS. * config/alpha/t-vms, config/alpha/t-vms64, config/fr30/t-fr30, config/i386/t-rtems-i386, config/ia64/t-ia64, config/rs6000/t-beos, config/rs6000/t-newas, config/sparc/t-elf: Likewise. * configure.ac (all_outputs): Remove mklibgcc. * configure: Regenerated. libgcc/ * Makefile.in, config/i386/t-darwin, config/i386/t-darwin64, config/i386/t-nwld, config/rs6000/t-darwin, config/rs6000/t-ldbl128, config/i386/t-crtfm, config/alpha/t-crtfm, config/ia64/t-ia64, config/sparc/t-crtfm, config/t-slibgcc-darwin, config/rs6000/t-ppccomm, config.host, configure.ac, empty.mk, shared-object.mk, siditi-object.mk, static-object.mk: New files. * configure: Generated. Co-Authored-By: Paolo Bonzini <bonzini@gnu.org> From-SVN: r120429
2007-01-04 05:22:37 +01:00
# 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:
#
# with_* Various variables as set by configure.
#
# enable_threads Either the name, yes or no depending on whether
# threads support was requested.
#
# default_use_cxa_atexit
# The default value for the $enable___cxa_atexit
# variable. enable___cxa_atexit needs to be set to
# "yes" for the correct operation of C++ destructors
# but it relies upon the presence of a non-standard C
# library function called __cxa_atexit.
# Since not all C libraries provide __cxa_atexit the
# default value of $default_use_cxa_atexit is set to
# "no" except for targets which are known to be OK.
#
# gas_flag Either yes or no depending on whether GNU as was
# requested.
#
# gnu_ld_flag Either yes or no depending on whether GNU ld was
# requested.
# This file sets the following shell variables for use by the
# autoconf-generated configure script:
#
# cpu_type The name of the cpu, if different from the first
# chunk of the canonical target name.
#
# tm_defines List of target macros to define for all compilations.
#
# tm_file A list of target macro files, if different from
config.gcc (i[34567]86-*-gnu*, [...]): Delete superflous ${cpu_type} setting. 2001-10-19 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> * config.gcc (i[34567]86-*-gnu*, arc-*-elf*, d30v-*, fr30-*-elf, hppa*64*-*-linux*, parisc*64*-*-linux*, hppa*-*-linux*, parisc*-*-linux*, i370-*-linux*, i[34567]86-*-chorusos*, i[34567]86-*-elf*, i[34567]86-ncr-sysv4*, i[34567]86-*-netware, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-freebsd*, i[34567]86-*-netbsdelf*, i[34567]86-*-linux*libc1, i[34567]86-*-linux*, i[34567]86-moss-msdos*, i[34567]86-*-moss*, i[34567]86-go32-rtems*, i[34567]86-*-rtems*, i[34567]86-*-rtemself*, i[34567]86-*-solaris2*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-udk*, i[34567]86-*-osf1*, i[34567]86-dg-dgux*, i860-alliant-*, i860-*-sysv4*, ia64*-*-aix*, ia64*-*-linux*, ia64*-*-hpux*, m32r-*-elf*, m88k-dg-dgux*, m88k-*-sysv4*, mcore-*-elf, mips*-*-linux*, mn10200-*-*, mn10300-*-*, pj*-linux*, pjl-*, powerpc64-*-linux*, powerpc-*-sysv*, powerpc-*-netbsd*, powerpc-*-chorusos*, powerpc-*-eabiaix*, powerpc-*-eabisim*, powerpc-*-elf*, powerpc-*-eabi*, powerpc-*-rtems*, powerpc-*-linux*libc1, powerpc-*-linux*, powerpc-wrs-vxworks*, powerpcle-wrs-vxworks*, powerpcle-*-sysv*, powerpcle-*-elf*, powerpcle-*-eabisim*, powerpcle-*-eabi*, powerpcle-*-solaris2*, rs6000-*-mach*, s390-*-linux*, s390x-*-linux*, sh-*-elf*, sh-*-rtemself*, sh-*-rtems*, sh-*-linux*, stormy16-*-elf, v850-*-rtems*, v850-*-*, x86_64-*-linux*), cris-*-aout, cris-*-elf, cris-*-none, cris-*-linux*: Update ${tmfile} list. (c4x-*-rtems*, c4x-*, i[34567]86-go32-rtems*, i[34567]86-*-rtemscoff*, i[34567]86-*-rtems*, i[34567]86-*-rtemself*, i[34567]86-*-osf1*, mn10200-*-*, mn10300-*-*, powerpc-*-beos*, powerpc-*-darwin*, powerpc-wrs-vxworks*, powerpcle-wrs-vxworks*, v850-*-rtems*, v850-*-*): Delete superflous ${cpu_type} setting. * config/linux.h: Delete svr4.h include. (SET_ASM_OP): Delete. * config/netware.h (INT_ASM_OP): Undef before define. * config/ptx4.h: Delete elfos.h include. (PREFERRED_DEBUGGING_TYPE): Undef instead of wrapping. * config/svr4.h: Delete elfos.h include. Update commentary. * config/arc/arc.h, config/d30v/d30v.h, config/fr30/fr30.h, config/m32r/m32r.h, config/m88k/sysv4.h, config/mn10200/mn10200.h, config/mn10200/mn10300.h, config/stormy16/stormy16.h, config/v850/v850.h: Delete svr4.h include. * config/i370/linux.h, config/i386/osf1elf.h, config/m68k/linux.h, config/m68k/m68kv4.h, config/m88k/sysv4.h, config/sparc/sysv4.h: Update includes. * config/i386/beos-elf.h, config/i386/netware.h, config/i386/ptx4-i.h, config/i386/rtemself.h, config/i386/sol2.h, config/i386/sysv4.h, config/i386/sysv5.h, config/i386/udk.h, config/ia64/linux.h, config/m88k/dguxbcs.h: Delete includes. * config/i386/dgux.h, config/i386/osf1elfgdb.h: Delete include. (PREFERRED_DEBUGGING_TYPE): Undef before defining it. * config/i860/fx2800.h (ASM_OUTPUT_SOURCE_LINE): Undef before defining it. * config/m88k/dgux.h: Delete include. (SDB_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE): Undef before defining it. * config/pj/pj.h (ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL, ASM_OUTPUT_SKIP): Undef before defining it. * config/sh/elf.h: Update include. (SDB_DEBUGGING_INFO, DWARF2_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE, DWARF2_ASM_LINE_DEBUG_INFO): Move behind includes. From-SVN: r46366
2001-10-20 00:27:41 +02:00
# "$cpu_type/$cpu_type.h". Usually it's constructed
# per target in a way like this:
# tm_file="${tm_file} dbxelf.h elfos.h svr4.h ${cpu_type.h}/elf.h"
config.gcc (i[34567]86-*-gnu*, [...]): Delete superflous ${cpu_type} setting. 2001-10-19 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> * config.gcc (i[34567]86-*-gnu*, arc-*-elf*, d30v-*, fr30-*-elf, hppa*64*-*-linux*, parisc*64*-*-linux*, hppa*-*-linux*, parisc*-*-linux*, i370-*-linux*, i[34567]86-*-chorusos*, i[34567]86-*-elf*, i[34567]86-ncr-sysv4*, i[34567]86-*-netware, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-freebsd*, i[34567]86-*-netbsdelf*, i[34567]86-*-linux*libc1, i[34567]86-*-linux*, i[34567]86-moss-msdos*, i[34567]86-*-moss*, i[34567]86-go32-rtems*, i[34567]86-*-rtems*, i[34567]86-*-rtemself*, i[34567]86-*-solaris2*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-udk*, i[34567]86-*-osf1*, i[34567]86-dg-dgux*, i860-alliant-*, i860-*-sysv4*, ia64*-*-aix*, ia64*-*-linux*, ia64*-*-hpux*, m32r-*-elf*, m88k-dg-dgux*, m88k-*-sysv4*, mcore-*-elf, mips*-*-linux*, mn10200-*-*, mn10300-*-*, pj*-linux*, pjl-*, powerpc64-*-linux*, powerpc-*-sysv*, powerpc-*-netbsd*, powerpc-*-chorusos*, powerpc-*-eabiaix*, powerpc-*-eabisim*, powerpc-*-elf*, powerpc-*-eabi*, powerpc-*-rtems*, powerpc-*-linux*libc1, powerpc-*-linux*, powerpc-wrs-vxworks*, powerpcle-wrs-vxworks*, powerpcle-*-sysv*, powerpcle-*-elf*, powerpcle-*-eabisim*, powerpcle-*-eabi*, powerpcle-*-solaris2*, rs6000-*-mach*, s390-*-linux*, s390x-*-linux*, sh-*-elf*, sh-*-rtemself*, sh-*-rtems*, sh-*-linux*, stormy16-*-elf, v850-*-rtems*, v850-*-*, x86_64-*-linux*), cris-*-aout, cris-*-elf, cris-*-none, cris-*-linux*: Update ${tmfile} list. (c4x-*-rtems*, c4x-*, i[34567]86-go32-rtems*, i[34567]86-*-rtemscoff*, i[34567]86-*-rtems*, i[34567]86-*-rtemself*, i[34567]86-*-osf1*, mn10200-*-*, mn10300-*-*, powerpc-*-beos*, powerpc-*-darwin*, powerpc-wrs-vxworks*, powerpcle-wrs-vxworks*, v850-*-rtems*, v850-*-*): Delete superflous ${cpu_type} setting. * config/linux.h: Delete svr4.h include. (SET_ASM_OP): Delete. * config/netware.h (INT_ASM_OP): Undef before define. * config/ptx4.h: Delete elfos.h include. (PREFERRED_DEBUGGING_TYPE): Undef instead of wrapping. * config/svr4.h: Delete elfos.h include. Update commentary. * config/arc/arc.h, config/d30v/d30v.h, config/fr30/fr30.h, config/m32r/m32r.h, config/m88k/sysv4.h, config/mn10200/mn10200.h, config/mn10200/mn10300.h, config/stormy16/stormy16.h, config/v850/v850.h: Delete svr4.h include. * config/i370/linux.h, config/i386/osf1elf.h, config/m68k/linux.h, config/m68k/m68kv4.h, config/m88k/sysv4.h, config/sparc/sysv4.h: Update includes. * config/i386/beos-elf.h, config/i386/netware.h, config/i386/ptx4-i.h, config/i386/rtemself.h, config/i386/sol2.h, config/i386/sysv4.h, config/i386/sysv5.h, config/i386/udk.h, config/ia64/linux.h, config/m88k/dguxbcs.h: Delete includes. * config/i386/dgux.h, config/i386/osf1elfgdb.h: Delete include. (PREFERRED_DEBUGGING_TYPE): Undef before defining it. * config/i860/fx2800.h (ASM_OUTPUT_SOURCE_LINE): Undef before defining it. * config/m88k/dgux.h: Delete include. (SDB_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE): Undef before defining it. * config/pj/pj.h (ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL, ASM_OUTPUT_SKIP): Undef before defining it. * config/sh/elf.h: Update include. (SDB_DEBUGGING_INFO, DWARF2_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE, DWARF2_ASM_LINE_DEBUG_INFO): Move behind includes. From-SVN: r46366
2001-10-20 00:27:41 +02:00
# Note that the preferred order is:
# - specific target header "${cpu_type}/${cpu_type.h}"
config.gcc: Remove obsolete ports and configurations. gcc/ * config.gcc: Remove obsolete ports and configurations. * config/linux-aout.h, config/netware.h, config/t-linux-gnulibc1, config/d30v/abi, config/d30v/d30v-protos.h, config/d30v/d30v.c, config/d30v/d30v.h, config/d30v/d30v.md, config/d30v/libgcc1.asm, config/d30v/t-d30v, config/dsp16xx/dsp16xx-modes.def, config/dsp16xx/dsp16xx-protos.h, config/dsp16xx/dsp16xx.c, config/dsp16xx/dsp16xx.h, config/dsp16xx/dsp16xx.md, config/i370/README, config/i370/i370-c.c, config/i370/i370-protos.h, config/i370/i370.c, config/i370/i370.h, config/i370/i370.md, config/i370/linux.h, config/i370/mvs.h, config/i370/oe.h, config/i370/t-i370, config/i386/freebsd-aout.h, config/i386/linux-aout.h, config/i386/moss.h, config/i386/netware.h, config/i386/svr3.ifile, config/i386/svr3dbx.h, config/i386/svr3gas.h, config/i386/svr3z.ifile, config/i386/t-udk, config/i386/udk.h, config/i386/vsta.h, config/i960/i960-c.c, config/i960/i960-coff.h, config/i960/i960-modes.def, config/i960/i960-protos.h, config/i960/i960.c, config/i960/i960.h, config/i960/i960.md, config/i960/rtems.h, config/i960/t-960bare, config/m68k/hp310.h, config/m68k/hp320.h, config/m68k/hp320base.h, config/m68k/m68kv4.h, config/m68k/netbsd.h, config/m68k/sgs.h, config/m68k/t-hp320: Remove. * doc/extend.texi, doc/install.texi, doc/invoke.texi, doc/md.texi: Remove mentions of obsolete ports. testsuite/ * gcc.dg/20020312-2.c, gcc.dg/builtin-inf-1.c, gcc.dg/sibcall-3.c, gcc.dg/sibcall-4.c, gcc.dg/cpp/assert4.c: Remove mentions of obsolete ports. From-SVN: r77216
2004-02-04 06:13:43 +01:00
# - generic headers like dbxelf.h elfos.h, etc.
config.gcc (i[34567]86-*-gnu*, [...]): Delete superflous ${cpu_type} setting. 2001-10-19 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> * config.gcc (i[34567]86-*-gnu*, arc-*-elf*, d30v-*, fr30-*-elf, hppa*64*-*-linux*, parisc*64*-*-linux*, hppa*-*-linux*, parisc*-*-linux*, i370-*-linux*, i[34567]86-*-chorusos*, i[34567]86-*-elf*, i[34567]86-ncr-sysv4*, i[34567]86-*-netware, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-freebsd*, i[34567]86-*-netbsdelf*, i[34567]86-*-linux*libc1, i[34567]86-*-linux*, i[34567]86-moss-msdos*, i[34567]86-*-moss*, i[34567]86-go32-rtems*, i[34567]86-*-rtems*, i[34567]86-*-rtemself*, i[34567]86-*-solaris2*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-udk*, i[34567]86-*-osf1*, i[34567]86-dg-dgux*, i860-alliant-*, i860-*-sysv4*, ia64*-*-aix*, ia64*-*-linux*, ia64*-*-hpux*, m32r-*-elf*, m88k-dg-dgux*, m88k-*-sysv4*, mcore-*-elf, mips*-*-linux*, mn10200-*-*, mn10300-*-*, pj*-linux*, pjl-*, powerpc64-*-linux*, powerpc-*-sysv*, powerpc-*-netbsd*, powerpc-*-chorusos*, powerpc-*-eabiaix*, powerpc-*-eabisim*, powerpc-*-elf*, powerpc-*-eabi*, powerpc-*-rtems*, powerpc-*-linux*libc1, powerpc-*-linux*, powerpc-wrs-vxworks*, powerpcle-wrs-vxworks*, powerpcle-*-sysv*, powerpcle-*-elf*, powerpcle-*-eabisim*, powerpcle-*-eabi*, powerpcle-*-solaris2*, rs6000-*-mach*, s390-*-linux*, s390x-*-linux*, sh-*-elf*, sh-*-rtemself*, sh-*-rtems*, sh-*-linux*, stormy16-*-elf, v850-*-rtems*, v850-*-*, x86_64-*-linux*), cris-*-aout, cris-*-elf, cris-*-none, cris-*-linux*: Update ${tmfile} list. (c4x-*-rtems*, c4x-*, i[34567]86-go32-rtems*, i[34567]86-*-rtemscoff*, i[34567]86-*-rtems*, i[34567]86-*-rtemself*, i[34567]86-*-osf1*, mn10200-*-*, mn10300-*-*, powerpc-*-beos*, powerpc-*-darwin*, powerpc-wrs-vxworks*, powerpcle-wrs-vxworks*, v850-*-rtems*, v850-*-*): Delete superflous ${cpu_type} setting. * config/linux.h: Delete svr4.h include. (SET_ASM_OP): Delete. * config/netware.h (INT_ASM_OP): Undef before define. * config/ptx4.h: Delete elfos.h include. (PREFERRED_DEBUGGING_TYPE): Undef instead of wrapping. * config/svr4.h: Delete elfos.h include. Update commentary. * config/arc/arc.h, config/d30v/d30v.h, config/fr30/fr30.h, config/m32r/m32r.h, config/m88k/sysv4.h, config/mn10200/mn10200.h, config/mn10200/mn10300.h, config/stormy16/stormy16.h, config/v850/v850.h: Delete svr4.h include. * config/i370/linux.h, config/i386/osf1elf.h, config/m68k/linux.h, config/m68k/m68kv4.h, config/m88k/sysv4.h, config/sparc/sysv4.h: Update includes. * config/i386/beos-elf.h, config/i386/netware.h, config/i386/ptx4-i.h, config/i386/rtemself.h, config/i386/sol2.h, config/i386/sysv4.h, config/i386/sysv5.h, config/i386/udk.h, config/ia64/linux.h, config/m88k/dguxbcs.h: Delete includes. * config/i386/dgux.h, config/i386/osf1elfgdb.h: Delete include. (PREFERRED_DEBUGGING_TYPE): Undef before defining it. * config/i860/fx2800.h (ASM_OUTPUT_SOURCE_LINE): Undef before defining it. * config/m88k/dgux.h: Delete include. (SDB_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE): Undef before defining it. * config/pj/pj.h (ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL, ASM_OUTPUT_SKIP): Undef before defining it. * config/sh/elf.h: Update include. (SDB_DEBUGGING_INFO, DWARF2_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE, DWARF2_ASM_LINE_DEBUG_INFO): Move behind includes. From-SVN: r46366
2001-10-20 00:27:41 +02:00
# - specializing target headers like ${cpu_type.h}/elf.h
# This helps to keep OS specific stuff out of the CPU
# defining header ${cpu_type}/${cpu_type.h}.
#
# It is possible to include automatically-generated
# build-directory files by prefixing them with "./".
# All other files should relative to $srcdir/config.
#
# tm_p_file Location of file with declarations for functions
# in $out_file.
#
# out_file The name of the machine description C support
# file, if different from "$cpu_type/$cpu_type.c".
#
# md_file The name of the machine-description file, if
# different from "$cpu_type/$cpu_type.md".
#
# tmake_file A list of machine-description-specific
# makefile-fragments, if different from
# "$cpu_type/t-$cpu_type".
#
# extra_modes The name of the file containing a list of extra
# machine modes, if necessary and different from
# "$cpu_type/$cpu_type-modes.def".
#
# extra_objs List of extra objects that should be linked into
# the compiler proper (cc1, cc1obj, cc1plus)
# depending on target.
#
# extra_gcc_objs List of extra objects that should be linked into
# the compiler driver (gcc) depending on target.
#
# 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.
#
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
# use_gcc_stdint If "wrap", install a version of stdint.h that
# wraps the system's copy for hosted compilations;
# if "provide", provide a version of systems without
# such a system header; otherwise "none", do not
# provide such a header at all.
#
# 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.
#
config.gcc (extra_options): New variable for listing option files. * config.gcc (extra_options): New variable for listing option files. Add ${cpu_type}/${cpu_type}.opt to it if that file exists. * configure.ac (extra_opt_files): New AC_SUBST variable. (tm_file_list, tm_include_list): Include options.h first. * configure: Regenerate. * Makefile.in (extra_opt_files, ALL_OPT_FILES): New variables. (s-options): Use $(ALL_OPT_FILES) instead of $(lang_opt_files) (s-options-h): New rule. (options.h): Depend on it. (TEXI_GCCINT_FILES): Add options.texi. * hooks.h (hook_bool_size_t_constcharptr_int_true): Declare. * hooks.c (hook_bool_size_t_constcharptr_int_true): New function. * target.h (gcc_target): Add default_target_flags and handle_option. * target-def.h (TARGET_DEFAULT_TARGET_FLAGS) (TARGET_HANDLE_OPTION): New macros. (TARGET_INITIALIZER): Include them. * opt-functions.awk (opt_args, nth_arg): New functions. (switch_flags): Handle the "Target" flag. (var_args): Delete. (var_name): Use opt_args and nth_arg. (var_set, var_ref): Likewise. Handle "Mask" and "InverseMask". * opth-gen.awk: Declare target_flags. Declare MASK_* and TARGET_* macros for the "Mask" and "InverseMask" options. * opts.h (cl_var_cond): New enum. (cl_option): Replace the "has_set_value" and "set_value" fields with "var_cond" and "var_value". (CL_TARGET): New macro. (option_enabled, print_filtered_help): Declare. (decode_options): Move definition. * opts.c (handle_option): Search for the original option before removing any "no-" prefix. Handle CL_TARGET. Adjust for the new var_cond and var_value fields. Use targetm.handle_option to handle target options. (decode_options): Set target_flags to targetm.default_target_flags. (print_filtered_help): Make global. Handle CL_TARGET. (option_enabled): New function. * toplev.c (target_switches): Guard with #ifdef TARGET_SWITCHES. (display_target_options, set_target_switch, print_switch_values) (default_pch_valid_p): Guard uses of target_switches with #ifdef TARGET_SWITCHES. Also... (display_target_options): Display the CL_TARGET entries in cl_options. (set_target_option): Don't complain about the "" option when TARGET_SWITCHES is undefined. (print_switch_values): Use option_enabled. (default_pch_valid_p): Check cl_options[] when looking for something that has changed the value of target_flags. * c.opt: Remove documentation from top of file. * doc/gccint.texi: Add an "Options" chapter. Include options.texi. * doc/sourecebuild.texi: Refer to the new options documentation instead of c.opt. Document machine-specific .opt files. * doc/tm.texi (target_flags): Say that this variable is declared by options.h. (TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Document. (TARGET_SWITCHES, TARGET_OPTIONS): Refer to the option files as an alternative. * doc/options.texi: New file. From-SVN: r96448
2005-03-14 21:18:43 +01:00
# extra_options List of target-dependent .opt files.
#
# c_target_objs List of extra target-dependent objects that be
# linked into the C compiler only.
mips.md: Add unspec #2. 2001-09-15 Eric Christopher <echristo@redhat.com> * config/mips/mips.md: Add unspec #2. (reload_indi): Use. (reload_outdi): Ditto. (reload_outsi): Ditto. (HILO_delay): New. 2001-09-15 Eric Christopher <echristo@redhat.com> Jason Eckhardt <jle@redhat.com> * config.gcc: Add mipsisa32 target and mipsisa32-linux target. * config/mips/isa32-linux.h: New file. * config/mips/isa3264.h: Ditto. * config/mips/mips-protos.h: Add mips_hard_regno_nregs. * config/mips/mips.c (mips_hard_regno_nregs): Move here from mips.h. (output_block_mode): Support MEABI. (function_arg): Ditto. Fix floating point arg passing. (mips_va_start): Ditto. (override_options): Add isas 32 and 64, meabi, mips32 and mips64 processors. (mips_asm_file_start): Add new section to pass abi to gdb. (function_arg_pass_by_reference): Support MEABI. (mips_parse_cpu): Support mips32 and mips64 processors. * config/mips/mips.h: Support ABI_MEABI, TARGET_MIPS4KC, TARGET_MIPS5KC. Support isa32 and isa64. (processor_type): Add r4kc, r5kc, r20kc. (GENERATE_MULT3_SI): New. (GENERATE_MULT3_DI): Ditto. (GENERATE_MULT3): Remove. (ISA_HAS_64BIT_REGS): Add isa == 64. (ISA_HAS_8CC): Add mips_isa = 32 and 64. (ISA_HAS_MADD_MSUB): New. (ISA_HAS_CLZ_CLO): Ditto. (ISA_HAS_DCLZ_DCLO): Ditto. (ABI_GAS_ASM_SPEC): New. (GAS_ASM_SPEC): Use. Add support for mips32, mips64. (ASM_SPEC): Ditto. (LINK_SPEC): Ditto. (SUBTARGET_CC1_SPEC): Ditto. (SUBTARGET_CPP_SIZE_SPEC): Ditto. (PAD_VARARGS_DOWN): Support MEABI. (HARD_REGNO_NREGS): Move to mips.c. (ASM_OUTPUT_IDENT): Add #undef. * config/mips/mips.md: Add r4kc, r5kc, r20kc. (mulsi3): Use GENERATE_MULT3_SI. (mulsi3_mult3): Ditto. Support mips32, mips64. (mul_acc_si): Use ISA_HAS_MADD_MSUB. (mul_sub_si): New pattern. (unnamed splitters): New. (muldi3): Use GENERATE_MULT3_DI. (muldi3_internal2): Ditto. (movdicc): Support mips32. * config/mips/t-isa3264: New file. From-SVN: r45623
2001-09-15 04:03:14 +02:00
#
# cxx_target_objs List of extra target-dependent objects that be
# linked into the C++ compiler only.
mips.md: Add unspec #2. 2001-09-15 Eric Christopher <echristo@redhat.com> * config/mips/mips.md: Add unspec #2. (reload_indi): Use. (reload_outdi): Ditto. (reload_outsi): Ditto. (HILO_delay): New. 2001-09-15 Eric Christopher <echristo@redhat.com> Jason Eckhardt <jle@redhat.com> * config.gcc: Add mipsisa32 target and mipsisa32-linux target. * config/mips/isa32-linux.h: New file. * config/mips/isa3264.h: Ditto. * config/mips/mips-protos.h: Add mips_hard_regno_nregs. * config/mips/mips.c (mips_hard_regno_nregs): Move here from mips.h. (output_block_mode): Support MEABI. (function_arg): Ditto. Fix floating point arg passing. (mips_va_start): Ditto. (override_options): Add isas 32 and 64, meabi, mips32 and mips64 processors. (mips_asm_file_start): Add new section to pass abi to gdb. (function_arg_pass_by_reference): Support MEABI. (mips_parse_cpu): Support mips32 and mips64 processors. * config/mips/mips.h: Support ABI_MEABI, TARGET_MIPS4KC, TARGET_MIPS5KC. Support isa32 and isa64. (processor_type): Add r4kc, r5kc, r20kc. (GENERATE_MULT3_SI): New. (GENERATE_MULT3_DI): Ditto. (GENERATE_MULT3): Remove. (ISA_HAS_64BIT_REGS): Add isa == 64. (ISA_HAS_8CC): Add mips_isa = 32 and 64. (ISA_HAS_MADD_MSUB): New. (ISA_HAS_CLZ_CLO): Ditto. (ISA_HAS_DCLZ_DCLO): Ditto. (ABI_GAS_ASM_SPEC): New. (GAS_ASM_SPEC): Use. Add support for mips32, mips64. (ASM_SPEC): Ditto. (LINK_SPEC): Ditto. (SUBTARGET_CC1_SPEC): Ditto. (SUBTARGET_CPP_SIZE_SPEC): Ditto. (PAD_VARARGS_DOWN): Support MEABI. (HARD_REGNO_NREGS): Move to mips.c. (ASM_OUTPUT_IDENT): Add #undef. * config/mips/mips.md: Add r4kc, r5kc, r20kc. (mulsi3): Use GENERATE_MULT3_SI. (mulsi3_mult3): Ditto. Support mips32, mips64. (mul_acc_si): Use ISA_HAS_MADD_MSUB. (mul_sub_si): New pattern. (unnamed splitters): New. (muldi3): Use GENERATE_MULT3_DI. (muldi3_internal2): Ditto. (movdicc): Support mips32. * config/mips/t-isa3264: New file. From-SVN: r45623
2001-09-15 04:03:14 +02:00
#
# fortran_target_objs List of extra target-dependent objects that be
# linked into the fortran compiler only.
#
# target_gtfiles List of extra source files with type information.
#
# xm_defines List of macros to define when compiling for the
# target machine.
#
# xm_file List of files to include when compiling for the
# target machine.
#
# use_collect2 Set to yes or no, depending on whether collect2
# will be used.
#
# target_cpu_default Set to override the default target model.
#
# gdb_needs_out_file_path
# Set to yes if gdb needs a dir command with
# `dirname $out_file`.
#
# thread_file Set to control which thread package to use.
#
# gas Set to yes or no depending on whether the target
# system normally uses GNU as.
#
# need_64bit_hwint Set to yes if HOST_WIDE_INT must be 64 bits wide
# for this target. This is true if this target
# supports "long" or "wchar_t" wider than 32 bits,
# or BITS_PER_WORD is wider than 32 bits.
# The setting made here must match the one made in
# other locations such as libcpp/configure.ac
#
# configure_default_options
# Set to an initializer for configure_default_options
# in configargs.h, based on --with-cpu et cetera.
# The following variables are used in each case-construct to build up the
# outgoing variables:
#
# gnu_ld Set to yes or no depending on whether the target
# system normally uses GNU ld.
out_file=
tmake_file=
extra_headers=
use_gcc_tgmath=yes
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=none
extra_passes=
extra_parts=
extra_programs=
extra_objs=
extra_gcc_objs=
config.gcc (extra_options): New variable for listing option files. * config.gcc (extra_options): New variable for listing option files. Add ${cpu_type}/${cpu_type}.opt to it if that file exists. * configure.ac (extra_opt_files): New AC_SUBST variable. (tm_file_list, tm_include_list): Include options.h first. * configure: Regenerate. * Makefile.in (extra_opt_files, ALL_OPT_FILES): New variables. (s-options): Use $(ALL_OPT_FILES) instead of $(lang_opt_files) (s-options-h): New rule. (options.h): Depend on it. (TEXI_GCCINT_FILES): Add options.texi. * hooks.h (hook_bool_size_t_constcharptr_int_true): Declare. * hooks.c (hook_bool_size_t_constcharptr_int_true): New function. * target.h (gcc_target): Add default_target_flags and handle_option. * target-def.h (TARGET_DEFAULT_TARGET_FLAGS) (TARGET_HANDLE_OPTION): New macros. (TARGET_INITIALIZER): Include them. * opt-functions.awk (opt_args, nth_arg): New functions. (switch_flags): Handle the "Target" flag. (var_args): Delete. (var_name): Use opt_args and nth_arg. (var_set, var_ref): Likewise. Handle "Mask" and "InverseMask". * opth-gen.awk: Declare target_flags. Declare MASK_* and TARGET_* macros for the "Mask" and "InverseMask" options. * opts.h (cl_var_cond): New enum. (cl_option): Replace the "has_set_value" and "set_value" fields with "var_cond" and "var_value". (CL_TARGET): New macro. (option_enabled, print_filtered_help): Declare. (decode_options): Move definition. * opts.c (handle_option): Search for the original option before removing any "no-" prefix. Handle CL_TARGET. Adjust for the new var_cond and var_value fields. Use targetm.handle_option to handle target options. (decode_options): Set target_flags to targetm.default_target_flags. (print_filtered_help): Make global. Handle CL_TARGET. (option_enabled): New function. * toplev.c (target_switches): Guard with #ifdef TARGET_SWITCHES. (display_target_options, set_target_switch, print_switch_values) (default_pch_valid_p): Guard uses of target_switches with #ifdef TARGET_SWITCHES. Also... (display_target_options): Display the CL_TARGET entries in cl_options. (set_target_option): Don't complain about the "" option when TARGET_SWITCHES is undefined. (print_switch_values): Use option_enabled. (default_pch_valid_p): Check cl_options[] when looking for something that has changed the value of target_flags. * c.opt: Remove documentation from top of file. * doc/gccint.texi: Add an "Options" chapter. Include options.texi. * doc/sourecebuild.texi: Refer to the new options documentation instead of c.opt. Document machine-specific .opt files. * doc/tm.texi (target_flags): Say that this variable is declared by options.h. (TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Document. (TARGET_SWITCHES, TARGET_OPTIONS): Refer to the option files as an alternative. * doc/options.texi: New file. From-SVN: r96448
2005-03-14 21:18:43 +01:00
extra_options=
c_target_objs=
cxx_target_objs=
fortran_target_objs=
tm_defines=
xm_defines=
# Set this to force installation and use of collect2.
use_collect2=
# Set this to override the default target model.
target_cpu_default=
# Set this if gdb needs a dir command with `dirname $out_file`
gdb_needs_out_file_path=
# Set this to control which thread package will be used.
thread_file=
# Reinitialize these from the flag values every loop pass, since some
# configure entries modify them.
gas="$gas_flag"
gnu_ld="$gnu_ld_flag"
default_use_cxa_atexit=no
target_gtfiles=
need_64bit_hwint=
# Don't carry these over build->host->target. Please.
xm_file=
md_file=
# Obsolete configurations.
inclhack.def (aix_syswait, [...]): Remove. fixincludes: * inclhack.def (aix_syswait, exception_structure, pthread_page_size): Remove. (math_exception): Remove mention of fixproto in comment. * fixincl.x: Regenerate. * mkheaders.in: Do not handle STMP_FIXPROTO. gcc: * config/arm/t-arm-coff, config/h8300/coff.h, config/i386/i386-aout.h, config/i386/i386-coff.h, config/libgloss.h, config/m68k/coff.h, config/m68k/m68k-aout.h, config/pdp11/2bsd.h, config/rs6000/aix41.h, config/rs6000/aix41.opt, config/rs6000/t-newas, config/sh/coff.h, fix-header.c, fixproto, gen-protos.c, protoize.c, scan-decls.c, scan-types.sh, scan.c, scan.h, sort-protos, sys-protos.h, sys-types.h: Remove. * Makefile.in: Remove protoize and fixproto support and references in comments. (SYSCALLS.c.X-warn, TARGET_GETGROUPS_T, STMP_FIXPROTO, PROTOIZE_INSTALL_NAME, UNPROTOIZE_INSTALL_NAME, FIXPROTO_DEFINES): Remove. (ALL_HOST_OBJS): Remove $(PROTO_OBJS). (MOSTLYCLEANFILES): Remove protoize$(exeext) and unprotoize$(exeext). (rest.encap): Don't depend on $(STMP_FIXPROTO) (.PHONY): Don't depend on proto. (libgcc-support): Don't depend on $(STMP_FIXPROTO). (proto, PROTO_OBJS, protoize$(exeext), unprotoize$(exeext), protoize.o, unprotoize.o, SYSCALLS.c.X, test-protoize-simple, deduced.h, GEN_PROTOS_OBJS, build/gen-protos$(build_exeext), build/gen-protos.o, build/scan.o, xsys-protos.h, build/fix-header$(build_exeext), build/fix-header.o, build/scan-decls.o, fixhdr.ready, stmp-fixproto, stmp-install-fixproto): Remove. (mostlyclean): Don't remove xsys-protos.hT, SYSCALLS.c.X, SYSCALLS.c or fixproto files. (install-common): Don't install protoize. (install-headers-tar, install-headers-cpio, install-headers-cp): Don't depend on $(STMP_FIXPROTO). (install-mkheaders): Don't depend on $(STMP_FIXPROTO). Don't install fixproto files or write out fixproto settings. (uninstall): Don't uninstall protoize. * config.gcc (use_fixproto): Remove. (arm-*-coff*, armel-*-coff*, h8300-*-*, i[34567]86-*-aout*, i[34567]86-*-coff*, m68k-*-aout*, m68k-*-coff*, pdp11-*-bsd, rs6000-ibm-aix4.[12]*, powerpc-ibm-aix4.[12]*, sh-*-*): Remove. * config/m32r/t-linux (STMP_FIXPROTO): Remove. * config/m68k/m68k.c: Remove M68K_TARGET_COFF-conditional code. * config/mips/t-iris (FIXPROTO_DEFINES): Remove. * config/pa/t-pa-hpux (FIXPROTO_DEFINES): Remove. * config/pdp11/pdp11.c: Remove TWO_BSD-conditional code. * config/t-svr4 (FIXPROTO_DEFINES): Remove. * config/t-vxworks (STMP_FIXPROTO): Remove. * configure.ac (AC_TYPE_GETGROUPS, TARGET_GETGROUPS_T, STMP_FIXPROTO): Remove. * config.in, configure: Regenerate. * crtstuff.c (gid_t, uid_t): Don't undefine. * doc/install.texi: Change m68k-coff to m68k-elf in example. (arm-*-coff, arm-*-aout: Remove target entries. (*-ibm-aix*): Mention removal of support for AIX 4.2 and older. Remove mention of AIX 4.1. (m68k-*-*): Remove mention of m68k-*-aout and m68k-*-coff*. * doc/invoke.texi (Running Protoize): Remove. * doc/trouble.texi (Actual Bugs): Remove mention of fixproto. (Protoize Caveats): Remove. * tsystem.h: Update comments on headers assumed to exist. gcc/po: * EXCLUDES (fix-header.c, gen-protos.c, scan-decls.c, scan.c, scan.h): Remove. gcc/testsuite: * g++.old-deja/g++.ext/attrib5.C, g++.old-deja/g++.jason/thunk3.C, gcc.c-torture/compile/981006-1.c: Don't XFAIL or add special options for removed targets. libgcc: * config.host (arm-*-coff*, armel-*-coff*, arm-semi-aof, armel-semi-aof, h8300-*-*, i[34567]86-*-aout*, i[34567]86-*-coff*, m68k-*-aout*, m68k-*-coff*, pdp11-*-bsd, rs6000-ibm-aix4.[12]*, powerpc-ibm-aix4.[12]*, sh-*-*): Remove. From-SVN: r145158
2009-03-28 07:51:09 +01:00
#case ${target} in
# )
# if test "x$enable_obsolete" != xyes; then
# echo "*** Configuration ${target} is obsolete." >&2
# echo "*** Specify --enable-obsolete to build it anyway." >&2
# echo "*** Support will be REMOVED in the next major release of GCC," >&2
# echo "*** unless a maintainer comes forward." >&2
# exit 1
# fi;;
#esac
config.gcc: Purge all targets obsoleted in GCC 3.3. * config.gcc: Purge all targets obsoleted in GCC 3.3. Also remove hppa*-*-mpeix* which could not be built, and prune files from tmake_file= or tm_file= lists that don't exist. * config/alpha/alpha-interix.h, config/alpha/alpha32.h * config/alpha/t-interix, config/arm/conix-elf.h * config/arm/t-arm-aout, config/arm/t-strongarm-coff * config/arm/unknown-elf-oabi.h, config/i386/win32.h * config/m68k/3b1.h, config/m68k/3b1g.h, config/m68k/amix.h * config/m68k/atari.h, config/m68k/ccur-GAS.h, config/m68k/crds.h * config/m68k/hp2bsd.h, config/m68k/hp3bsd.h * config/m68k/hp3bsd44.h, config/m68k/linux-aout.h * config/m68k/m68k-psos.h, config/m68k/mot3300.h * config/m68k/pbb.h, config/m68k/plexus.h, config/m68k/sun2.h * config/m68k/sun2o4.h, config/m68k/sun3.h, config/m68k/sun3mach.h * config/m68k/sun3n.h, config/m68k/sun3n3.h, config/m68k/sun3o3.h * config/m68k/t-mot3300, config/m68k/t-mot3300-gald * config/m68k/t-mot3300-gas, config/m68k/t-mot3300-gld * config/m68k/tower-as.h, config/m68k/tower.h * config/m88k/aout-dbx.h, config/m88k/m88k-aout.h * config/m88k/m88k-modes.def, config/m88k/m88k-move.sh * config/m88k/m88k-protos.h, config/m88k/m88k.c * config/m88k/m88k.h, config/m88k/m88k.md, config/m88k/openbsd.h * config/m88k/sysv4.h, config/m88k/t-luna, config/m88k/t-luna-gas * config/m88k/t-m88k, config/m88k/t-sysv4, config/mcore/gfloat.h * config/mips/rtems64.h, config/mips/sni-gas.h * config/mips/sni-svr4.h, config/mips/t-ecoff * config/mn10200/lib1funcs.asm, config/mn10200/mn10200-protos.h * config/mn10200/mn10200.c, config/mn10200/mn10200.h * config/mn10200/mn10200.md, config/mn10200/t-mn10200 * config/pa/pa-hiux.h, config/pa/pa-hpux7.h, config/pa/pa-hpux9.h * config/pa/pa-oldas.h, config/pa/t-mpeix, config/psos.h * config/romp/romp-protos.h, config/romp/romp.c * config/romp/romp.h, config/romp/romp.md, config/rs6000/aix31.h * config/rs6000/aix3newas.h, config/rs6000/mach.h * config/sparc/bsd.h, config/sparc/hal.h * config/sparc/linux-aout.h, config/sparc/lynx-ng.h * config/sparc/lynx.h, config/sparc/netbsd.h * config/sparc/sp86x-aout.h, config/sparc/splet.h * config/sparc/sun4gas.h, config/sparc/sun4o3.h * config/sparc/sunos4.h, config/sparc/t-chorus-elf * config/sparc/t-halos, config/sparc/t-sparcbare * config/sparc/t-splet, config/sparc/t-sunos41 * config/v850/rtems.h: Delete file. From-SVN: r66842
2003-05-15 23:47:36 +02:00
# Unsupported targets list. Do not put an entry in this list unless
# it would otherwise be caught by a more permissive pattern. The list
# should be in alphabetical order.
case ${target} in
MAINTAINERS (mt port): Remove. * MAINTAINERS (mt port): Remove. (sco5, unixware, sco udk): Remove. (Kean Johnston): Add to Write After Approval. fixincludes: * inclhack.def (AAB_svr4_replace_byteorder, AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory, libc1_G_va_list, libc1_ifdefd_memx, nested_motorola, ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime, solaris_mutex_init_1, solaris_socket, solaris_unistd, solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param, ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale, ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc, ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings, ultrix_strings2, ultrix_sys_time, ultrix_unistd, unicosmk_restrict, uw7_byteorder_fix, windiss_math1, windiss_math2, windiss_valist): Remove. * fixincl.x: Regenerate. * mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*, i370-*-openedition, i?86-*-moss*, i?86-*-uwin*, powerpc-*-eabiaix*): Remove. * tests/base/math.h: Update. * tests/base/pthread.h: Update. * tests/base/stdio.h: Update. * tests/base/stdlib.h: Update. * tests/base/string.h: Update. * tests/base/strings.h: Update. * tests/base/sys/file.h: Update. * tests/base/sys/limits.h: Update. * tests/base/sys/socket.h: Update. * tests/base/sys/stat.h: Update. * tests/base/sys/time.h: Update. * tests/base/testing.h: Update. * tests/base/unistd.h: Update. * tests/base/_G_config.h: Remove. * tests/base/arpa: Remove directory. * tests/base/fs: Remove directory. * tests/base/locale.h: Remove. * tests/base/machine: Remove directory. * tests/base/rpc/svc.h: Remove. * tests/base/sys/ioctl.h: Remove. * tests/base/sys/regset.h: Remove. * tests/base/sys/times.h: Remove. * tests/base/sys/utsname.h: Remove. * tests/base/widec.h: Remove. gcc: * config.gcc (Obsolete configurations): Remove list of configurations. (Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*, *-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*. Remove other targets matched by those patterns. (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff, i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove. Make code for Solaris 7 and greater unconditional for Solaris. (ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*): Remove --with-* handling. * config/rs6000/sysv4.h (-mwindiss): Remove from all specs. (LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC, ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC, LINK_OS_WINDISS_SPEC): Remove. * config/rs6000/sysv4.opt (mwindiss): Remove. * configure.ac (strongarm*-*-*, xscale*-*-*): Remove. * configure: Regenerate. * doc/cpp.texi: Don't mention BeOS. * doc/extend.texi (interrupt): Don't mention MS1. * doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv, m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv, alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout, i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4, powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix): Remove. * doc/invoke.texi (MT Options): Remove. (-mwindiss): Remove. (CRIS Options): Remove cris-axis-aout references. (HPPA Options): Don't mention hppa1.1-*-pro. * doc/md.texi: (MorphoTech family): Remove. * libgcc2.c: Don't handle UWIN. * config/alpha/t-unicosmk: Remove. * config/alpha/unicosmk.h: Remove. * config/arm/kaos-arm.h: Remove. * config/arm/kaos-strongarm.h: Remove. * config/arm/strongarm-coff.h: Remove. * config/arm/strongarm-elf.h: Remove. * config/arm/strongarm-pe.h: Remove. * config/arm/t-strongarm-pe: Remove. * config/arm/t-xscale-coff: Remove. * config/arm/t-xscale-elf: Remove. * config/arm/xscale-coff.h: Remove. * config/arm/xscale-elf.h: Remove. * config/chorus.h: Remove. * config/cris/aout.h: Remove. * config/cris/aout.opt: Remove. * config/cris/t-aout: Remove. * config/i386/beos-elf.h: Remove. * config/i386/kaos-i386.h: Remove. * config/i386/ptx4-i.h: Remove. * config/i386/sco5.h: Remove. * config/i386/sco5.opt: Remove. * config/i386/sysv4-cpp.h: Remove. * config/i386/sysv5.h: Remove. * config/i386/t-beos: Remove. * config/i386/t-sco5: Remove. * config/i386/t-uwin: Remove. * config/i386/uwin.asm: Remove. * config/i386/uwin.h: Remove. * config/kaos.h: Remove. * config/mips/windiss.h: Remove. * config/mt: Remove directory. * config/pa/pa-osf.h: Remove. * config/pa/pa-pro-end.h: Remove. * config/pa/t-pro: Remove. * config/ptx4.h: Remove. * config/rs6000/beos.h: Remove. * config/rs6000/kaos-ppc.h: Remove. * config/rs6000/t-beos: Remove. * config/rs6000/windiss.h: Remove. * config/sh/kaos-sh.h: Remove. * config/sol2-6.h: Remove. * config/sparc/sol26-sld.h: Remove. * config/sparc/sysv4-only.h: Remove. * config/vax/bsd.h: Remove. * config/vax/t-memfuncs: Remove. * config/vax/ultrix.h: Remove. * config/vax/vaxv.h: Remove. * config/windiss.h: Remove. gcc/testsuite: * g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*. * g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*. * g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris 7. * gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*, strongarm*-*-* and cris-*-aout*. * gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20030909-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20031108-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20040813-1.c: Don't handle *-*-sysv5*. * gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*. * gcc.dg/arm-scd42-1.c: Use target arm*-*-*. * gcc.dg/arm-scd42-3.c: Use target arm*-*-*. * gcc.dg/cpp/assert4.c: Don't handle BeOS. * gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*. * gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and xscale*-*-elf*. * gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*. * gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1. * gcc.misc-tests/arm-isr.exp: Use target arm*-*-*. * gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-stackalign-1.c: Don't handle powerpc-*-sysv*. * gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*. * lib/target-supports.exp: Don't handle strongarm*-*-elf, xscale*-*-elf and *-*-windiss. * obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*. * gcc.dg/mt-loopi1.c: Remove. gnattools: * configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove. * configure: Regenerate. libcpp: * configure.ac (parisc*64*-*-*): Remove. * configure: Regenerate. libffi: * configure.ac (parisc*-*-linux*, powerpc-*-sysv*, powerpc-*-beos*): Remove. * configure: Regenerate. libgcc: * config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove. libjava: * configure.host (strongarm*-elf, xscale*-elf): Remove. libstdc++-v3: * configure.host (xscale, ep9312, m680[246]0, solaris2.5, solaris2.5.[0-9], solaris2.6, windiss*): Remove. * crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove. * configure: Regenerate. * config/os/solaris/solaris2.5: Remove directory. * config/os/solaris/solaris2.6: Remove directory. * config/os/windiss: Remove directory. From-SVN: r136534
2008-06-07 20:00:15 +02:00
i[34567]86-go32-* \
config.gcc: Purge all targets obsoleted in GCC 3.3. * config.gcc: Purge all targets obsoleted in GCC 3.3. Also remove hppa*-*-mpeix* which could not be built, and prune files from tmake_file= or tm_file= lists that don't exist. * config/alpha/alpha-interix.h, config/alpha/alpha32.h * config/alpha/t-interix, config/arm/conix-elf.h * config/arm/t-arm-aout, config/arm/t-strongarm-coff * config/arm/unknown-elf-oabi.h, config/i386/win32.h * config/m68k/3b1.h, config/m68k/3b1g.h, config/m68k/amix.h * config/m68k/atari.h, config/m68k/ccur-GAS.h, config/m68k/crds.h * config/m68k/hp2bsd.h, config/m68k/hp3bsd.h * config/m68k/hp3bsd44.h, config/m68k/linux-aout.h * config/m68k/m68k-psos.h, config/m68k/mot3300.h * config/m68k/pbb.h, config/m68k/plexus.h, config/m68k/sun2.h * config/m68k/sun2o4.h, config/m68k/sun3.h, config/m68k/sun3mach.h * config/m68k/sun3n.h, config/m68k/sun3n3.h, config/m68k/sun3o3.h * config/m68k/t-mot3300, config/m68k/t-mot3300-gald * config/m68k/t-mot3300-gas, config/m68k/t-mot3300-gld * config/m68k/tower-as.h, config/m68k/tower.h * config/m88k/aout-dbx.h, config/m88k/m88k-aout.h * config/m88k/m88k-modes.def, config/m88k/m88k-move.sh * config/m88k/m88k-protos.h, config/m88k/m88k.c * config/m88k/m88k.h, config/m88k/m88k.md, config/m88k/openbsd.h * config/m88k/sysv4.h, config/m88k/t-luna, config/m88k/t-luna-gas * config/m88k/t-m88k, config/m88k/t-sysv4, config/mcore/gfloat.h * config/mips/rtems64.h, config/mips/sni-gas.h * config/mips/sni-svr4.h, config/mips/t-ecoff * config/mn10200/lib1funcs.asm, config/mn10200/mn10200-protos.h * config/mn10200/mn10200.c, config/mn10200/mn10200.h * config/mn10200/mn10200.md, config/mn10200/t-mn10200 * config/pa/pa-hiux.h, config/pa/pa-hpux7.h, config/pa/pa-hpux9.h * config/pa/pa-oldas.h, config/pa/t-mpeix, config/psos.h * config/romp/romp-protos.h, config/romp/romp.c * config/romp/romp.h, config/romp/romp.md, config/rs6000/aix31.h * config/rs6000/aix3newas.h, config/rs6000/mach.h * config/sparc/bsd.h, config/sparc/hal.h * config/sparc/linux-aout.h, config/sparc/lynx-ng.h * config/sparc/lynx.h, config/sparc/netbsd.h * config/sparc/sp86x-aout.h, config/sparc/splet.h * config/sparc/sun4gas.h, config/sparc/sun4o3.h * config/sparc/sunos4.h, config/sparc/t-chorus-elf * config/sparc/t-halos, config/sparc/t-sparcbare * config/sparc/t-splet, config/sparc/t-sunos41 * config/v850/rtems.h: Delete file. From-SVN: r66842
2003-05-15 23:47:36 +02:00
| i[34567]86-*-go32* \
| mips64orion*-*-rtems* \
inclhack.def (aix_syswait, [...]): Remove. fixincludes: * inclhack.def (aix_syswait, exception_structure, pthread_page_size): Remove. (math_exception): Remove mention of fixproto in comment. * fixincl.x: Regenerate. * mkheaders.in: Do not handle STMP_FIXPROTO. gcc: * config/arm/t-arm-coff, config/h8300/coff.h, config/i386/i386-aout.h, config/i386/i386-coff.h, config/libgloss.h, config/m68k/coff.h, config/m68k/m68k-aout.h, config/pdp11/2bsd.h, config/rs6000/aix41.h, config/rs6000/aix41.opt, config/rs6000/t-newas, config/sh/coff.h, fix-header.c, fixproto, gen-protos.c, protoize.c, scan-decls.c, scan-types.sh, scan.c, scan.h, sort-protos, sys-protos.h, sys-types.h: Remove. * Makefile.in: Remove protoize and fixproto support and references in comments. (SYSCALLS.c.X-warn, TARGET_GETGROUPS_T, STMP_FIXPROTO, PROTOIZE_INSTALL_NAME, UNPROTOIZE_INSTALL_NAME, FIXPROTO_DEFINES): Remove. (ALL_HOST_OBJS): Remove $(PROTO_OBJS). (MOSTLYCLEANFILES): Remove protoize$(exeext) and unprotoize$(exeext). (rest.encap): Don't depend on $(STMP_FIXPROTO) (.PHONY): Don't depend on proto. (libgcc-support): Don't depend on $(STMP_FIXPROTO). (proto, PROTO_OBJS, protoize$(exeext), unprotoize$(exeext), protoize.o, unprotoize.o, SYSCALLS.c.X, test-protoize-simple, deduced.h, GEN_PROTOS_OBJS, build/gen-protos$(build_exeext), build/gen-protos.o, build/scan.o, xsys-protos.h, build/fix-header$(build_exeext), build/fix-header.o, build/scan-decls.o, fixhdr.ready, stmp-fixproto, stmp-install-fixproto): Remove. (mostlyclean): Don't remove xsys-protos.hT, SYSCALLS.c.X, SYSCALLS.c or fixproto files. (install-common): Don't install protoize. (install-headers-tar, install-headers-cpio, install-headers-cp): Don't depend on $(STMP_FIXPROTO). (install-mkheaders): Don't depend on $(STMP_FIXPROTO). Don't install fixproto files or write out fixproto settings. (uninstall): Don't uninstall protoize. * config.gcc (use_fixproto): Remove. (arm-*-coff*, armel-*-coff*, h8300-*-*, i[34567]86-*-aout*, i[34567]86-*-coff*, m68k-*-aout*, m68k-*-coff*, pdp11-*-bsd, rs6000-ibm-aix4.[12]*, powerpc-ibm-aix4.[12]*, sh-*-*): Remove. * config/m32r/t-linux (STMP_FIXPROTO): Remove. * config/m68k/m68k.c: Remove M68K_TARGET_COFF-conditional code. * config/mips/t-iris (FIXPROTO_DEFINES): Remove. * config/pa/t-pa-hpux (FIXPROTO_DEFINES): Remove. * config/pdp11/pdp11.c: Remove TWO_BSD-conditional code. * config/t-svr4 (FIXPROTO_DEFINES): Remove. * config/t-vxworks (STMP_FIXPROTO): Remove. * configure.ac (AC_TYPE_GETGROUPS, TARGET_GETGROUPS_T, STMP_FIXPROTO): Remove. * config.in, configure: Regenerate. * crtstuff.c (gid_t, uid_t): Don't undefine. * doc/install.texi: Change m68k-coff to m68k-elf in example. (arm-*-coff, arm-*-aout: Remove target entries. (*-ibm-aix*): Mention removal of support for AIX 4.2 and older. Remove mention of AIX 4.1. (m68k-*-*): Remove mention of m68k-*-aout and m68k-*-coff*. * doc/invoke.texi (Running Protoize): Remove. * doc/trouble.texi (Actual Bugs): Remove mention of fixproto. (Protoize Caveats): Remove. * tsystem.h: Update comments on headers assumed to exist. gcc/po: * EXCLUDES (fix-header.c, gen-protos.c, scan-decls.c, scan.c, scan.h): Remove. gcc/testsuite: * g++.old-deja/g++.ext/attrib5.C, g++.old-deja/g++.jason/thunk3.C, gcc.c-torture/compile/981006-1.c: Don't XFAIL or add special options for removed targets. libgcc: * config.host (arm-*-coff*, armel-*-coff*, arm-semi-aof, armel-semi-aof, h8300-*-*, i[34567]86-*-aout*, i[34567]86-*-coff*, m68k-*-aout*, m68k-*-coff*, pdp11-*-bsd, rs6000-ibm-aix4.[12]*, powerpc-ibm-aix4.[12]*, sh-*-*): Remove. From-SVN: r145158
2009-03-28 07:51:09 +01:00
| pdp11-*-bsd \
config.gcc: Purge all targets obsoleted in GCC 3.3. * config.gcc: Purge all targets obsoleted in GCC 3.3. Also remove hppa*-*-mpeix* which could not be built, and prune files from tmake_file= or tm_file= lists that don't exist. * config/alpha/alpha-interix.h, config/alpha/alpha32.h * config/alpha/t-interix, config/arm/conix-elf.h * config/arm/t-arm-aout, config/arm/t-strongarm-coff * config/arm/unknown-elf-oabi.h, config/i386/win32.h * config/m68k/3b1.h, config/m68k/3b1g.h, config/m68k/amix.h * config/m68k/atari.h, config/m68k/ccur-GAS.h, config/m68k/crds.h * config/m68k/hp2bsd.h, config/m68k/hp3bsd.h * config/m68k/hp3bsd44.h, config/m68k/linux-aout.h * config/m68k/m68k-psos.h, config/m68k/mot3300.h * config/m68k/pbb.h, config/m68k/plexus.h, config/m68k/sun2.h * config/m68k/sun2o4.h, config/m68k/sun3.h, config/m68k/sun3mach.h * config/m68k/sun3n.h, config/m68k/sun3n3.h, config/m68k/sun3o3.h * config/m68k/t-mot3300, config/m68k/t-mot3300-gald * config/m68k/t-mot3300-gas, config/m68k/t-mot3300-gld * config/m68k/tower-as.h, config/m68k/tower.h * config/m88k/aout-dbx.h, config/m88k/m88k-aout.h * config/m88k/m88k-modes.def, config/m88k/m88k-move.sh * config/m88k/m88k-protos.h, config/m88k/m88k.c * config/m88k/m88k.h, config/m88k/m88k.md, config/m88k/openbsd.h * config/m88k/sysv4.h, config/m88k/t-luna, config/m88k/t-luna-gas * config/m88k/t-m88k, config/m88k/t-sysv4, config/mcore/gfloat.h * config/mips/rtems64.h, config/mips/sni-gas.h * config/mips/sni-svr4.h, config/mips/t-ecoff * config/mn10200/lib1funcs.asm, config/mn10200/mn10200-protos.h * config/mn10200/mn10200.c, config/mn10200/mn10200.h * config/mn10200/mn10200.md, config/mn10200/t-mn10200 * config/pa/pa-hiux.h, config/pa/pa-hpux7.h, config/pa/pa-hpux9.h * config/pa/pa-oldas.h, config/pa/t-mpeix, config/psos.h * config/romp/romp-protos.h, config/romp/romp.c * config/romp/romp.h, config/romp/romp.md, config/rs6000/aix31.h * config/rs6000/aix3newas.h, config/rs6000/mach.h * config/sparc/bsd.h, config/sparc/hal.h * config/sparc/linux-aout.h, config/sparc/lynx-ng.h * config/sparc/lynx.h, config/sparc/netbsd.h * config/sparc/sp86x-aout.h, config/sparc/splet.h * config/sparc/sun4gas.h, config/sparc/sun4o3.h * config/sparc/sunos4.h, config/sparc/t-chorus-elf * config/sparc/t-halos, config/sparc/t-sparcbare * config/sparc/t-splet, config/sparc/t-sunos41 * config/v850/rtems.h: Delete file. From-SVN: r66842
2003-05-15 23:47:36 +02:00
| sparc-hal-solaris2* \
| thumb-*-* \
MAINTAINERS (mt port): Remove. * MAINTAINERS (mt port): Remove. (sco5, unixware, sco udk): Remove. (Kean Johnston): Add to Write After Approval. fixincludes: * inclhack.def (AAB_svr4_replace_byteorder, AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory, libc1_G_va_list, libc1_ifdefd_memx, nested_motorola, ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime, solaris_mutex_init_1, solaris_socket, solaris_unistd, solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param, ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale, ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc, ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings, ultrix_strings2, ultrix_sys_time, ultrix_unistd, unicosmk_restrict, uw7_byteorder_fix, windiss_math1, windiss_math2, windiss_valist): Remove. * fixincl.x: Regenerate. * mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*, i370-*-openedition, i?86-*-moss*, i?86-*-uwin*, powerpc-*-eabiaix*): Remove. * tests/base/math.h: Update. * tests/base/pthread.h: Update. * tests/base/stdio.h: Update. * tests/base/stdlib.h: Update. * tests/base/string.h: Update. * tests/base/strings.h: Update. * tests/base/sys/file.h: Update. * tests/base/sys/limits.h: Update. * tests/base/sys/socket.h: Update. * tests/base/sys/stat.h: Update. * tests/base/sys/time.h: Update. * tests/base/testing.h: Update. * tests/base/unistd.h: Update. * tests/base/_G_config.h: Remove. * tests/base/arpa: Remove directory. * tests/base/fs: Remove directory. * tests/base/locale.h: Remove. * tests/base/machine: Remove directory. * tests/base/rpc/svc.h: Remove. * tests/base/sys/ioctl.h: Remove. * tests/base/sys/regset.h: Remove. * tests/base/sys/times.h: Remove. * tests/base/sys/utsname.h: Remove. * tests/base/widec.h: Remove. gcc: * config.gcc (Obsolete configurations): Remove list of configurations. (Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*, *-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*. Remove other targets matched by those patterns. (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff, i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove. Make code for Solaris 7 and greater unconditional for Solaris. (ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*): Remove --with-* handling. * config/rs6000/sysv4.h (-mwindiss): Remove from all specs. (LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC, ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC, LINK_OS_WINDISS_SPEC): Remove. * config/rs6000/sysv4.opt (mwindiss): Remove. * configure.ac (strongarm*-*-*, xscale*-*-*): Remove. * configure: Regenerate. * doc/cpp.texi: Don't mention BeOS. * doc/extend.texi (interrupt): Don't mention MS1. * doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv, m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv, alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout, i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4, powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix): Remove. * doc/invoke.texi (MT Options): Remove. (-mwindiss): Remove. (CRIS Options): Remove cris-axis-aout references. (HPPA Options): Don't mention hppa1.1-*-pro. * doc/md.texi: (MorphoTech family): Remove. * libgcc2.c: Don't handle UWIN. * config/alpha/t-unicosmk: Remove. * config/alpha/unicosmk.h: Remove. * config/arm/kaos-arm.h: Remove. * config/arm/kaos-strongarm.h: Remove. * config/arm/strongarm-coff.h: Remove. * config/arm/strongarm-elf.h: Remove. * config/arm/strongarm-pe.h: Remove. * config/arm/t-strongarm-pe: Remove. * config/arm/t-xscale-coff: Remove. * config/arm/t-xscale-elf: Remove. * config/arm/xscale-coff.h: Remove. * config/arm/xscale-elf.h: Remove. * config/chorus.h: Remove. * config/cris/aout.h: Remove. * config/cris/aout.opt: Remove. * config/cris/t-aout: Remove. * config/i386/beos-elf.h: Remove. * config/i386/kaos-i386.h: Remove. * config/i386/ptx4-i.h: Remove. * config/i386/sco5.h: Remove. * config/i386/sco5.opt: Remove. * config/i386/sysv4-cpp.h: Remove. * config/i386/sysv5.h: Remove. * config/i386/t-beos: Remove. * config/i386/t-sco5: Remove. * config/i386/t-uwin: Remove. * config/i386/uwin.asm: Remove. * config/i386/uwin.h: Remove. * config/kaos.h: Remove. * config/mips/windiss.h: Remove. * config/mt: Remove directory. * config/pa/pa-osf.h: Remove. * config/pa/pa-pro-end.h: Remove. * config/pa/t-pro: Remove. * config/ptx4.h: Remove. * config/rs6000/beos.h: Remove. * config/rs6000/kaos-ppc.h: Remove. * config/rs6000/t-beos: Remove. * config/rs6000/windiss.h: Remove. * config/sh/kaos-sh.h: Remove. * config/sol2-6.h: Remove. * config/sparc/sol26-sld.h: Remove. * config/sparc/sysv4-only.h: Remove. * config/vax/bsd.h: Remove. * config/vax/t-memfuncs: Remove. * config/vax/ultrix.h: Remove. * config/vax/vaxv.h: Remove. * config/windiss.h: Remove. gcc/testsuite: * g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*. * g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*. * g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris 7. * gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*, strongarm*-*-* and cris-*-aout*. * gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20030909-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20031108-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20040813-1.c: Don't handle *-*-sysv5*. * gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*. * gcc.dg/arm-scd42-1.c: Use target arm*-*-*. * gcc.dg/arm-scd42-3.c: Use target arm*-*-*. * gcc.dg/cpp/assert4.c: Don't handle BeOS. * gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*. * gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and xscale*-*-elf*. * gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*. * gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1. * gcc.misc-tests/arm-isr.exp: Use target arm*-*-*. * gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-stackalign-1.c: Don't handle powerpc-*-sysv*. * gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*. * lib/target-supports.exp: Don't handle strongarm*-*-elf, xscale*-*-elf and *-*-windiss. * obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*. * gcc.dg/mt-loopi1.c: Remove. gnattools: * configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove. * configure: Regenerate. libcpp: * configure.ac (parisc*64*-*-*): Remove. * configure: Regenerate. libffi: * configure.ac (parisc*-*-linux*, powerpc-*-sysv*, powerpc-*-beos*): Remove. * configure: Regenerate. libgcc: * config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove. libjava: * configure.host (strongarm*-elf, xscale*-elf): Remove. libstdc++-v3: * configure.host (xscale, ep9312, m680[246]0, solaris2.5, solaris2.5.[0-9], solaris2.6, windiss*): Remove. * crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove. * configure: Regenerate. * config/os/solaris/solaris2.5: Remove directory. * config/os/solaris/solaris2.6: Remove directory. * config/os/windiss: Remove directory. From-SVN: r136534
2008-06-07 20:00:15 +02:00
| *-*-linux*aout* \
config.gcc: Purge all targets obsoleted in GCC 3.3. * config.gcc: Purge all targets obsoleted in GCC 3.3. Also remove hppa*-*-mpeix* which could not be built, and prune files from tmake_file= or tm_file= lists that don't exist. * config/alpha/alpha-interix.h, config/alpha/alpha32.h * config/alpha/t-interix, config/arm/conix-elf.h * config/arm/t-arm-aout, config/arm/t-strongarm-coff * config/arm/unknown-elf-oabi.h, config/i386/win32.h * config/m68k/3b1.h, config/m68k/3b1g.h, config/m68k/amix.h * config/m68k/atari.h, config/m68k/ccur-GAS.h, config/m68k/crds.h * config/m68k/hp2bsd.h, config/m68k/hp3bsd.h * config/m68k/hp3bsd44.h, config/m68k/linux-aout.h * config/m68k/m68k-psos.h, config/m68k/mot3300.h * config/m68k/pbb.h, config/m68k/plexus.h, config/m68k/sun2.h * config/m68k/sun2o4.h, config/m68k/sun3.h, config/m68k/sun3mach.h * config/m68k/sun3n.h, config/m68k/sun3n3.h, config/m68k/sun3o3.h * config/m68k/t-mot3300, config/m68k/t-mot3300-gald * config/m68k/t-mot3300-gas, config/m68k/t-mot3300-gld * config/m68k/tower-as.h, config/m68k/tower.h * config/m88k/aout-dbx.h, config/m88k/m88k-aout.h * config/m88k/m88k-modes.def, config/m88k/m88k-move.sh * config/m88k/m88k-protos.h, config/m88k/m88k.c * config/m88k/m88k.h, config/m88k/m88k.md, config/m88k/openbsd.h * config/m88k/sysv4.h, config/m88k/t-luna, config/m88k/t-luna-gas * config/m88k/t-m88k, config/m88k/t-sysv4, config/mcore/gfloat.h * config/mips/rtems64.h, config/mips/sni-gas.h * config/mips/sni-svr4.h, config/mips/t-ecoff * config/mn10200/lib1funcs.asm, config/mn10200/mn10200-protos.h * config/mn10200/mn10200.c, config/mn10200/mn10200.h * config/mn10200/mn10200.md, config/mn10200/t-mn10200 * config/pa/pa-hiux.h, config/pa/pa-hpux7.h, config/pa/pa-hpux9.h * config/pa/pa-oldas.h, config/pa/t-mpeix, config/psos.h * config/romp/romp-protos.h, config/romp/romp.c * config/romp/romp.h, config/romp/romp.md, config/rs6000/aix31.h * config/rs6000/aix3newas.h, config/rs6000/mach.h * config/sparc/bsd.h, config/sparc/hal.h * config/sparc/linux-aout.h, config/sparc/lynx-ng.h * config/sparc/lynx.h, config/sparc/netbsd.h * config/sparc/sp86x-aout.h, config/sparc/splet.h * config/sparc/sun4gas.h, config/sparc/sun4o3.h * config/sparc/sunos4.h, config/sparc/t-chorus-elf * config/sparc/t-halos, config/sparc/t-sparcbare * config/sparc/t-splet, config/sparc/t-sunos41 * config/v850/rtems.h: Delete file. From-SVN: r66842
2003-05-15 23:47:36 +02:00
| *-*-linux*coff* \
MAINTAINERS (mt port): Remove. * MAINTAINERS (mt port): Remove. (sco5, unixware, sco udk): Remove. (Kean Johnston): Add to Write After Approval. fixincludes: * inclhack.def (AAB_svr4_replace_byteorder, AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory, libc1_G_va_list, libc1_ifdefd_memx, nested_motorola, ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime, solaris_mutex_init_1, solaris_socket, solaris_unistd, solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param, ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale, ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc, ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings, ultrix_strings2, ultrix_sys_time, ultrix_unistd, unicosmk_restrict, uw7_byteorder_fix, windiss_math1, windiss_math2, windiss_valist): Remove. * fixincl.x: Regenerate. * mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*, i370-*-openedition, i?86-*-moss*, i?86-*-uwin*, powerpc-*-eabiaix*): Remove. * tests/base/math.h: Update. * tests/base/pthread.h: Update. * tests/base/stdio.h: Update. * tests/base/stdlib.h: Update. * tests/base/string.h: Update. * tests/base/strings.h: Update. * tests/base/sys/file.h: Update. * tests/base/sys/limits.h: Update. * tests/base/sys/socket.h: Update. * tests/base/sys/stat.h: Update. * tests/base/sys/time.h: Update. * tests/base/testing.h: Update. * tests/base/unistd.h: Update. * tests/base/_G_config.h: Remove. * tests/base/arpa: Remove directory. * tests/base/fs: Remove directory. * tests/base/locale.h: Remove. * tests/base/machine: Remove directory. * tests/base/rpc/svc.h: Remove. * tests/base/sys/ioctl.h: Remove. * tests/base/sys/regset.h: Remove. * tests/base/sys/times.h: Remove. * tests/base/sys/utsname.h: Remove. * tests/base/widec.h: Remove. gcc: * config.gcc (Obsolete configurations): Remove list of configurations. (Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*, *-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*. Remove other targets matched by those patterns. (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff, i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove. Make code for Solaris 7 and greater unconditional for Solaris. (ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*): Remove --with-* handling. * config/rs6000/sysv4.h (-mwindiss): Remove from all specs. (LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC, ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC, LINK_OS_WINDISS_SPEC): Remove. * config/rs6000/sysv4.opt (mwindiss): Remove. * configure.ac (strongarm*-*-*, xscale*-*-*): Remove. * configure: Regenerate. * doc/cpp.texi: Don't mention BeOS. * doc/extend.texi (interrupt): Don't mention MS1. * doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv, m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv, alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout, i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4, powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix): Remove. * doc/invoke.texi (MT Options): Remove. (-mwindiss): Remove. (CRIS Options): Remove cris-axis-aout references. (HPPA Options): Don't mention hppa1.1-*-pro. * doc/md.texi: (MorphoTech family): Remove. * libgcc2.c: Don't handle UWIN. * config/alpha/t-unicosmk: Remove. * config/alpha/unicosmk.h: Remove. * config/arm/kaos-arm.h: Remove. * config/arm/kaos-strongarm.h: Remove. * config/arm/strongarm-coff.h: Remove. * config/arm/strongarm-elf.h: Remove. * config/arm/strongarm-pe.h: Remove. * config/arm/t-strongarm-pe: Remove. * config/arm/t-xscale-coff: Remove. * config/arm/t-xscale-elf: Remove. * config/arm/xscale-coff.h: Remove. * config/arm/xscale-elf.h: Remove. * config/chorus.h: Remove. * config/cris/aout.h: Remove. * config/cris/aout.opt: Remove. * config/cris/t-aout: Remove. * config/i386/beos-elf.h: Remove. * config/i386/kaos-i386.h: Remove. * config/i386/ptx4-i.h: Remove. * config/i386/sco5.h: Remove. * config/i386/sco5.opt: Remove. * config/i386/sysv4-cpp.h: Remove. * config/i386/sysv5.h: Remove. * config/i386/t-beos: Remove. * config/i386/t-sco5: Remove. * config/i386/t-uwin: Remove. * config/i386/uwin.asm: Remove. * config/i386/uwin.h: Remove. * config/kaos.h: Remove. * config/mips/windiss.h: Remove. * config/mt: Remove directory. * config/pa/pa-osf.h: Remove. * config/pa/pa-pro-end.h: Remove. * config/pa/t-pro: Remove. * config/ptx4.h: Remove. * config/rs6000/beos.h: Remove. * config/rs6000/kaos-ppc.h: Remove. * config/rs6000/t-beos: Remove. * config/rs6000/windiss.h: Remove. * config/sh/kaos-sh.h: Remove. * config/sol2-6.h: Remove. * config/sparc/sol26-sld.h: Remove. * config/sparc/sysv4-only.h: Remove. * config/vax/bsd.h: Remove. * config/vax/t-memfuncs: Remove. * config/vax/ultrix.h: Remove. * config/vax/vaxv.h: Remove. * config/windiss.h: Remove. gcc/testsuite: * g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*. * g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*. * g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris 7. * gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*, strongarm*-*-* and cris-*-aout*. * gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20030909-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20031108-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20040813-1.c: Don't handle *-*-sysv5*. * gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*. * gcc.dg/arm-scd42-1.c: Use target arm*-*-*. * gcc.dg/arm-scd42-3.c: Use target arm*-*-*. * gcc.dg/cpp/assert4.c: Don't handle BeOS. * gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*. * gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and xscale*-*-elf*. * gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*. * gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1. * gcc.misc-tests/arm-isr.exp: Use target arm*-*-*. * gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-stackalign-1.c: Don't handle powerpc-*-sysv*. * gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*. * lib/target-supports.exp: Don't handle strongarm*-*-elf, xscale*-*-elf and *-*-windiss. * obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*. * gcc.dg/mt-loopi1.c: Remove. gnattools: * configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove. * configure: Regenerate. libcpp: * configure.ac (parisc*64*-*-*): Remove. * configure: Regenerate. libffi: * configure.ac (parisc*-*-linux*, powerpc-*-sysv*, powerpc-*-beos*): Remove. * configure: Regenerate. libgcc: * config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove. libjava: * configure.host (strongarm*-elf, xscale*-elf): Remove. libstdc++-v3: * configure.host (xscale, ep9312, m680[246]0, solaris2.5, solaris2.5.[0-9], solaris2.6, windiss*): Remove. * crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove. * configure: Regenerate. * config/os/solaris/solaris2.5: Remove directory. * config/os/solaris/solaris2.6: Remove directory. * config/os/windiss: Remove directory. From-SVN: r136534
2008-06-07 20:00:15 +02:00
| *-*-linux*libc1* \
config.gcc: Purge all targets obsoleted in GCC 3.3. * config.gcc: Purge all targets obsoleted in GCC 3.3. Also remove hppa*-*-mpeix* which could not be built, and prune files from tmake_file= or tm_file= lists that don't exist. * config/alpha/alpha-interix.h, config/alpha/alpha32.h * config/alpha/t-interix, config/arm/conix-elf.h * config/arm/t-arm-aout, config/arm/t-strongarm-coff * config/arm/unknown-elf-oabi.h, config/i386/win32.h * config/m68k/3b1.h, config/m68k/3b1g.h, config/m68k/amix.h * config/m68k/atari.h, config/m68k/ccur-GAS.h, config/m68k/crds.h * config/m68k/hp2bsd.h, config/m68k/hp3bsd.h * config/m68k/hp3bsd44.h, config/m68k/linux-aout.h * config/m68k/m68k-psos.h, config/m68k/mot3300.h * config/m68k/pbb.h, config/m68k/plexus.h, config/m68k/sun2.h * config/m68k/sun2o4.h, config/m68k/sun3.h, config/m68k/sun3mach.h * config/m68k/sun3n.h, config/m68k/sun3n3.h, config/m68k/sun3o3.h * config/m68k/t-mot3300, config/m68k/t-mot3300-gald * config/m68k/t-mot3300-gas, config/m68k/t-mot3300-gld * config/m68k/tower-as.h, config/m68k/tower.h * config/m88k/aout-dbx.h, config/m88k/m88k-aout.h * config/m88k/m88k-modes.def, config/m88k/m88k-move.sh * config/m88k/m88k-protos.h, config/m88k/m88k.c * config/m88k/m88k.h, config/m88k/m88k.md, config/m88k/openbsd.h * config/m88k/sysv4.h, config/m88k/t-luna, config/m88k/t-luna-gas * config/m88k/t-m88k, config/m88k/t-sysv4, config/mcore/gfloat.h * config/mips/rtems64.h, config/mips/sni-gas.h * config/mips/sni-svr4.h, config/mips/t-ecoff * config/mn10200/lib1funcs.asm, config/mn10200/mn10200-protos.h * config/mn10200/mn10200.c, config/mn10200/mn10200.h * config/mn10200/mn10200.md, config/mn10200/t-mn10200 * config/pa/pa-hiux.h, config/pa/pa-hpux7.h, config/pa/pa-hpux9.h * config/pa/pa-oldas.h, config/pa/t-mpeix, config/psos.h * config/romp/romp-protos.h, config/romp/romp.c * config/romp/romp.h, config/romp/romp.md, config/rs6000/aix31.h * config/rs6000/aix3newas.h, config/rs6000/mach.h * config/sparc/bsd.h, config/sparc/hal.h * config/sparc/linux-aout.h, config/sparc/lynx-ng.h * config/sparc/lynx.h, config/sparc/netbsd.h * config/sparc/sp86x-aout.h, config/sparc/splet.h * config/sparc/sun4gas.h, config/sparc/sun4o3.h * config/sparc/sunos4.h, config/sparc/t-chorus-elf * config/sparc/t-halos, config/sparc/t-sparcbare * config/sparc/t-splet, config/sparc/t-sunos41 * config/v850/rtems.h: Delete file. From-SVN: r66842
2003-05-15 23:47:36 +02:00
| *-*-linux*oldld* \
| *-*-rtemsaout* \
| *-*-rtemscoff* \
MAINTAINERS (mt port): Remove. * MAINTAINERS (mt port): Remove. (sco5, unixware, sco udk): Remove. (Kean Johnston): Add to Write After Approval. fixincludes: * inclhack.def (AAB_svr4_replace_byteorder, AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory, libc1_G_va_list, libc1_ifdefd_memx, nested_motorola, ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime, solaris_mutex_init_1, solaris_socket, solaris_unistd, solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param, ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale, ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc, ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings, ultrix_strings2, ultrix_sys_time, ultrix_unistd, unicosmk_restrict, uw7_byteorder_fix, windiss_math1, windiss_math2, windiss_valist): Remove. * fixincl.x: Regenerate. * mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*, i370-*-openedition, i?86-*-moss*, i?86-*-uwin*, powerpc-*-eabiaix*): Remove. * tests/base/math.h: Update. * tests/base/pthread.h: Update. * tests/base/stdio.h: Update. * tests/base/stdlib.h: Update. * tests/base/string.h: Update. * tests/base/strings.h: Update. * tests/base/sys/file.h: Update. * tests/base/sys/limits.h: Update. * tests/base/sys/socket.h: Update. * tests/base/sys/stat.h: Update. * tests/base/sys/time.h: Update. * tests/base/testing.h: Update. * tests/base/unistd.h: Update. * tests/base/_G_config.h: Remove. * tests/base/arpa: Remove directory. * tests/base/fs: Remove directory. * tests/base/locale.h: Remove. * tests/base/machine: Remove directory. * tests/base/rpc/svc.h: Remove. * tests/base/sys/ioctl.h: Remove. * tests/base/sys/regset.h: Remove. * tests/base/sys/times.h: Remove. * tests/base/sys/utsname.h: Remove. * tests/base/widec.h: Remove. gcc: * config.gcc (Obsolete configurations): Remove list of configurations. (Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*, *-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*. Remove other targets matched by those patterns. (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff, i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove. Make code for Solaris 7 and greater unconditional for Solaris. (ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*): Remove --with-* handling. * config/rs6000/sysv4.h (-mwindiss): Remove from all specs. (LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC, ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC, LINK_OS_WINDISS_SPEC): Remove. * config/rs6000/sysv4.opt (mwindiss): Remove. * configure.ac (strongarm*-*-*, xscale*-*-*): Remove. * configure: Regenerate. * doc/cpp.texi: Don't mention BeOS. * doc/extend.texi (interrupt): Don't mention MS1. * doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv, m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv, alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout, i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4, powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix): Remove. * doc/invoke.texi (MT Options): Remove. (-mwindiss): Remove. (CRIS Options): Remove cris-axis-aout references. (HPPA Options): Don't mention hppa1.1-*-pro. * doc/md.texi: (MorphoTech family): Remove. * libgcc2.c: Don't handle UWIN. * config/alpha/t-unicosmk: Remove. * config/alpha/unicosmk.h: Remove. * config/arm/kaos-arm.h: Remove. * config/arm/kaos-strongarm.h: Remove. * config/arm/strongarm-coff.h: Remove. * config/arm/strongarm-elf.h: Remove. * config/arm/strongarm-pe.h: Remove. * config/arm/t-strongarm-pe: Remove. * config/arm/t-xscale-coff: Remove. * config/arm/t-xscale-elf: Remove. * config/arm/xscale-coff.h: Remove. * config/arm/xscale-elf.h: Remove. * config/chorus.h: Remove. * config/cris/aout.h: Remove. * config/cris/aout.opt: Remove. * config/cris/t-aout: Remove. * config/i386/beos-elf.h: Remove. * config/i386/kaos-i386.h: Remove. * config/i386/ptx4-i.h: Remove. * config/i386/sco5.h: Remove. * config/i386/sco5.opt: Remove. * config/i386/sysv4-cpp.h: Remove. * config/i386/sysv5.h: Remove. * config/i386/t-beos: Remove. * config/i386/t-sco5: Remove. * config/i386/t-uwin: Remove. * config/i386/uwin.asm: Remove. * config/i386/uwin.h: Remove. * config/kaos.h: Remove. * config/mips/windiss.h: Remove. * config/mt: Remove directory. * config/pa/pa-osf.h: Remove. * config/pa/pa-pro-end.h: Remove. * config/pa/t-pro: Remove. * config/ptx4.h: Remove. * config/rs6000/beos.h: Remove. * config/rs6000/kaos-ppc.h: Remove. * config/rs6000/t-beos: Remove. * config/rs6000/windiss.h: Remove. * config/sh/kaos-sh.h: Remove. * config/sol2-6.h: Remove. * config/sparc/sol26-sld.h: Remove. * config/sparc/sysv4-only.h: Remove. * config/vax/bsd.h: Remove. * config/vax/t-memfuncs: Remove. * config/vax/ultrix.h: Remove. * config/vax/vaxv.h: Remove. * config/windiss.h: Remove. gcc/testsuite: * g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*. * g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*. * g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris 7. * gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*, strongarm*-*-* and cris-*-aout*. * gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20030909-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20031108-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20040813-1.c: Don't handle *-*-sysv5*. * gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*. * gcc.dg/arm-scd42-1.c: Use target arm*-*-*. * gcc.dg/arm-scd42-3.c: Use target arm*-*-*. * gcc.dg/cpp/assert4.c: Don't handle BeOS. * gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*. * gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and xscale*-*-elf*. * gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*. * gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1. * gcc.misc-tests/arm-isr.exp: Use target arm*-*-*. * gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-stackalign-1.c: Don't handle powerpc-*-sysv*. * gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*. * lib/target-supports.exp: Don't handle strongarm*-*-elf, xscale*-*-elf and *-*-windiss. * obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*. * gcc.dg/mt-loopi1.c: Remove. gnattools: * configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove. * configure: Regenerate. libcpp: * configure.ac (parisc*64*-*-*): Remove. * configure: Regenerate. libffi: * configure.ac (parisc*-*-linux*, powerpc-*-sysv*, powerpc-*-beos*): Remove. * configure: Regenerate. libgcc: * config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove. libjava: * configure.host (strongarm*-elf, xscale*-elf): Remove. libstdc++-v3: * configure.host (xscale, ep9312, m680[246]0, solaris2.5, solaris2.5.[0-9], solaris2.6, windiss*): Remove. * crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove. * configure: Regenerate. * config/os/solaris/solaris2.5: Remove directory. * config/os/solaris/solaris2.6: Remove directory. * config/os/windiss: Remove directory. From-SVN: r136534
2008-06-07 20:00:15 +02:00
| *-*-solaris2.[0-6] \
| *-*-solaris2.[0-6].* \
| *-*-sysv* \
| vax-*-vms* \
config.gcc: Purge all targets obsoleted in GCC 3.3. * config.gcc: Purge all targets obsoleted in GCC 3.3. Also remove hppa*-*-mpeix* which could not be built, and prune files from tmake_file= or tm_file= lists that don't exist. * config/alpha/alpha-interix.h, config/alpha/alpha32.h * config/alpha/t-interix, config/arm/conix-elf.h * config/arm/t-arm-aout, config/arm/t-strongarm-coff * config/arm/unknown-elf-oabi.h, config/i386/win32.h * config/m68k/3b1.h, config/m68k/3b1g.h, config/m68k/amix.h * config/m68k/atari.h, config/m68k/ccur-GAS.h, config/m68k/crds.h * config/m68k/hp2bsd.h, config/m68k/hp3bsd.h * config/m68k/hp3bsd44.h, config/m68k/linux-aout.h * config/m68k/m68k-psos.h, config/m68k/mot3300.h * config/m68k/pbb.h, config/m68k/plexus.h, config/m68k/sun2.h * config/m68k/sun2o4.h, config/m68k/sun3.h, config/m68k/sun3mach.h * config/m68k/sun3n.h, config/m68k/sun3n3.h, config/m68k/sun3o3.h * config/m68k/t-mot3300, config/m68k/t-mot3300-gald * config/m68k/t-mot3300-gas, config/m68k/t-mot3300-gld * config/m68k/tower-as.h, config/m68k/tower.h * config/m88k/aout-dbx.h, config/m88k/m88k-aout.h * config/m88k/m88k-modes.def, config/m88k/m88k-move.sh * config/m88k/m88k-protos.h, config/m88k/m88k.c * config/m88k/m88k.h, config/m88k/m88k.md, config/m88k/openbsd.h * config/m88k/sysv4.h, config/m88k/t-luna, config/m88k/t-luna-gas * config/m88k/t-m88k, config/m88k/t-sysv4, config/mcore/gfloat.h * config/mips/rtems64.h, config/mips/sni-gas.h * config/mips/sni-svr4.h, config/mips/t-ecoff * config/mn10200/lib1funcs.asm, config/mn10200/mn10200-protos.h * config/mn10200/mn10200.c, config/mn10200/mn10200.h * config/mn10200/mn10200.md, config/mn10200/t-mn10200 * config/pa/pa-hiux.h, config/pa/pa-hpux7.h, config/pa/pa-hpux9.h * config/pa/pa-oldas.h, config/pa/t-mpeix, config/psos.h * config/romp/romp-protos.h, config/romp/romp.c * config/romp/romp.h, config/romp/romp.md, config/rs6000/aix31.h * config/rs6000/aix3newas.h, config/rs6000/mach.h * config/sparc/bsd.h, config/sparc/hal.h * config/sparc/linux-aout.h, config/sparc/lynx-ng.h * config/sparc/lynx.h, config/sparc/netbsd.h * config/sparc/sp86x-aout.h, config/sparc/splet.h * config/sparc/sun4gas.h, config/sparc/sun4o3.h * config/sparc/sunos4.h, config/sparc/t-chorus-elf * config/sparc/t-halos, config/sparc/t-sparcbare * config/sparc/t-splet, config/sparc/t-sunos41 * config/v850/rtems.h: Delete file. From-SVN: r66842
2003-05-15 23:47:36 +02:00
)
echo "*** Configuration ${target} not supported" 1>&2
config.gcc: Purge all targets obsoleted in GCC 3.3. * config.gcc: Purge all targets obsoleted in GCC 3.3. Also remove hppa*-*-mpeix* which could not be built, and prune files from tmake_file= or tm_file= lists that don't exist. * config/alpha/alpha-interix.h, config/alpha/alpha32.h * config/alpha/t-interix, config/arm/conix-elf.h * config/arm/t-arm-aout, config/arm/t-strongarm-coff * config/arm/unknown-elf-oabi.h, config/i386/win32.h * config/m68k/3b1.h, config/m68k/3b1g.h, config/m68k/amix.h * config/m68k/atari.h, config/m68k/ccur-GAS.h, config/m68k/crds.h * config/m68k/hp2bsd.h, config/m68k/hp3bsd.h * config/m68k/hp3bsd44.h, config/m68k/linux-aout.h * config/m68k/m68k-psos.h, config/m68k/mot3300.h * config/m68k/pbb.h, config/m68k/plexus.h, config/m68k/sun2.h * config/m68k/sun2o4.h, config/m68k/sun3.h, config/m68k/sun3mach.h * config/m68k/sun3n.h, config/m68k/sun3n3.h, config/m68k/sun3o3.h * config/m68k/t-mot3300, config/m68k/t-mot3300-gald * config/m68k/t-mot3300-gas, config/m68k/t-mot3300-gld * config/m68k/tower-as.h, config/m68k/tower.h * config/m88k/aout-dbx.h, config/m88k/m88k-aout.h * config/m88k/m88k-modes.def, config/m88k/m88k-move.sh * config/m88k/m88k-protos.h, config/m88k/m88k.c * config/m88k/m88k.h, config/m88k/m88k.md, config/m88k/openbsd.h * config/m88k/sysv4.h, config/m88k/t-luna, config/m88k/t-luna-gas * config/m88k/t-m88k, config/m88k/t-sysv4, config/mcore/gfloat.h * config/mips/rtems64.h, config/mips/sni-gas.h * config/mips/sni-svr4.h, config/mips/t-ecoff * config/mn10200/lib1funcs.asm, config/mn10200/mn10200-protos.h * config/mn10200/mn10200.c, config/mn10200/mn10200.h * config/mn10200/mn10200.md, config/mn10200/t-mn10200 * config/pa/pa-hiux.h, config/pa/pa-hpux7.h, config/pa/pa-hpux9.h * config/pa/pa-oldas.h, config/pa/t-mpeix, config/psos.h * config/romp/romp-protos.h, config/romp/romp.c * config/romp/romp.h, config/romp/romp.md, config/rs6000/aix31.h * config/rs6000/aix3newas.h, config/rs6000/mach.h * config/sparc/bsd.h, config/sparc/hal.h * config/sparc/linux-aout.h, config/sparc/lynx-ng.h * config/sparc/lynx.h, config/sparc/netbsd.h * config/sparc/sp86x-aout.h, config/sparc/splet.h * config/sparc/sun4gas.h, config/sparc/sun4o3.h * config/sparc/sunos4.h, config/sparc/t-chorus-elf * config/sparc/t-halos, config/sparc/t-sparcbare * config/sparc/t-splet, config/sparc/t-sunos41 * config/v850/rtems.h: Delete file. From-SVN: r66842
2003-05-15 23:47:36 +02:00
exit 1
;;
esac
# Set default cpu_type, tm_file, tm_p_file and xm_file so it can be
# updated in each machine entry. Also set default extra_headers for some
# machines.
tm_p_file=
cpu_type=`echo ${target} | sed 's/-.*$//'`
cpu_is_64bit=
case ${target} in
m32c*-*-*)
cpu_type=m32c
tmake_file=m32c/t-m32c
;;
alpha*-*-*)
cpu_type=alpha
need_64bit_hwint=yes
;;
am33_2.0-*-linux*)
cpu_type=mn10300
;;
arm*-*-*)
cpu_type=arm
Makefile.in (TEXI_GCC_FILES): Add arm-neon-intrinsics.texi. gcc/ * Makefile.in (TEXI_GCC_FILES): Add arm-neon-intrinsics.texi. * config.gcc (arm*-*-*): Add arm_neon.h to extra headers. (with_fpu): Allow --with-fpu=neon. * config/arm/aof.h (ADDITIONAL_REGISTER_NAMES): Add Q0-Q15. * config/arm/aout.h (ADDITIONAL_REGISTER_NAMES): Add Q0-Q15. * config/arm/arm-modes.def (EI, OI, CI, XI): New modes. * config/arm/arm-protos.h (neon_immediate_valid_for_move) (neon_immediate_valid_for_logic, neon_output_logic_immediate) (neon_pairwise_reduce, neon_expand_vector_init, neon_reinterpret) (neon_emit_pair_result_insn, neon_disambiguate_copy) (neon_vector_mem_operand, neon_struct_mem_operand, output_move_quad) (output_move_neon): Add prototypes. * config/arm/arm.c (FL_NEON): New flag for NEON processor capability. (all_fpus): Add FPUTYPE_NEON. (fp_model_for_fpu): Add NEON field. (arm_return_in_memory): Return vectors <= 16 bytes in ARM registers. (arm_arg_partial_bytes): Allow NEON vectors to be passed partially in registers. (arm_legitimate_address_p): Don't support fancy addressing for NEON structure moves. (thumb2_legitimate_address_p): Likewise. (neon_valid_immediate): Recognize and prepare constants suitable for NEON instructions. (neon_immediate_valid_for_move): New function. Recognize and prepare immediates for NEON move instructions. (neon_immediate_valid_for_logic): New function. Recognize and prepare immediates for NEON logic instructions. (neon_output_logic_immediate): New function. Create asm string suitable for outputting immediate logic instructions. (neon_pairwise_reduce): New function. Implement reduction using pairwise operations. (neon_expand_vector_init): New function. Expand a (possibly non-constant) vector initialization. (neon_vector_mem_operand): New function. Memory operands supported for quad-word loads/stores to/from ARM or NEON registers. Don't allow base+offset addressing for core regs. (neon_struct_mem_operand): New function. Valid mems for NEON structure moves. (coproc_secondary_reload_class): Enable NEON registers to be loaded from neon_vector_mem_operand addresses without a secondary register. (add_minipool_forward_ref): Handle >8-byte minipool entries. (add_minipool_backward_ref): Likewise. (dump_minipool): Likewise. (push_minipool_fix): Likewise. (output_move_quad): New function. Output quad-word moves, loads and stores using ARM registers. (output_move_vfp): Add support for vectors in VFP (NEON) D registers. (output_move_neon): Output a NEON load/store to/from a quadword register. (arm_print_operand): Implement new codes: - 'c' for unadorned integers (without a # sign). - 'J', 'K' for reg+2/reg+3, reg+3/reg+2 in little/big-endian mode. - 'e', 'f' for the low and high D parts of a NEON Q register. - 'q' outputs a NEON Q register. - 'h' outputs ranges of D registers for VLDM/VSTM etc. - 'T' prints NEON opcode features from a coded bitmask. - 'F' is similar to T, but signed/unsigned codes both print as 'i'. - 't' is similar to T, but 'u' is printed instead of 'p'. - 'O' prints 'r' if NEON instruction should perform rounding (as specified by bitmask), else prints nothing. - '#' is a punctuation character to stop operand numbers from running together with following digits in the assembler strings for instructions (when using mode attributes). (arm_assemble_integer): Handle extra NEON vector modes. Permute constant vectors in big-endian mode, where necessary. (arm_hard_regno_mode_ok): Allow vectors in VFP/NEON registers. Handle EI, OI, CI, XI modes. (ashlv4hi3, ashlv2si3, lshrv4hi3, lshrv2si3, ashrv4hi3) (ashrv2si3): Rename IWMMXT2_BUILTINs to... (ashlv4hi3_iwmmxt, ashlv2si3_iwmmxt, lshrv4hi3_iwmmxt) (lshrv2si3_iwmmxt, ashrv4hi3_iwmmxt, ashrv2si3_iwmmxt): New names. (neon_builtin_type_bits): Add enumeration, one bit for each vector type. (v8qi_UP, v4hi_UP, v2si_UP, v2sf_UP, di_UP, v16qi_UP, v8hi_UP) (v4si_UP, v4sf_UP, v2di_UP, ti_UP, ei_UP, oi_UP, UP): Define macros to turn v8qi, etc. into bits defined above. (neon_itype): New enumeration. Classifications of NEON builtins. (neon_builtin_datum): Define struct. Contains information about a single builtin (with multiple modes). (CF): Define helper macro for... (VAR1...VAR10): Define builtins with a type, name and 1-10 different modes. (neon_builtin_data): New array. Define information about builtins for use during initialization/expansion. (arm_init_neon_builtins): New function. (arm_init_builtins): Call arm_init_neon_builtins if TARGET_NEON is true. (neon_builtin_compare): New function. (locate_neon_builtin_icode): New function. Find an insn code for a builtin given a function code for that builtin. Also return type of builtin (NEON_BINOP, NEON_UNOP etc.). (builtin_arg): New enumeration. Types of arguments for builtins. (arm_expand_neon_args): New function. Expand a generic NEON builtin. Takes a variable argument list of builtin_arg types, terminated by NEON_ARG_STOP. (arm_expand_neon_builtin): New function. Expand a NEON builtin. (neon_reinterpret): New function. Expand NEON reinterpret intrinsic. (neon_emit_pair_result_insn): New function. Support returning pairs of vectors via a pointer. (neon_disambiguate_copy): New function. Set up operands for a multi-word copy such that registers do not get clobbered. (arm_expand_builtin): Call arm_expand_neon_builtin if fcode >= ARM_BUILTIN_NEON_BASE. (arm_file_start): Set float-abi attribute for NEON. (arm_vector_mode_supported_p): Enable NEON vector modes. (arm_mangle_map_entry): New. (arm_mangle_map): New. (arm_mangle_vector_type): New. * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __ARM_NEON__ when appropriate. (TARGET_NEON): New macro. Target supports NEON. (fputype): Add FPUTYPE_NEON. (UNITS_PER_SIMD_WORD): Define. Allow quad-word registers to be used for vectorization based on command-line arg. (NEON_REGNO_OK_FOR_NREGS): Define. (VALID_NEON_DREG_MODE, VALID_NEON_QREG_MODE) (VALID_NEON_STRUCT_MODE): Define. (PRINT_OPERAND_PUNCT_VALID_P): '#' is valid punctuation. (arm_builtins): Add ARM_BUILTIN_NEON_BASE. * config/arm/arm.md (VUNSPEC_POOL_16): Insert constant for unspec. (consttable_16): Add pattern for outputting 16-byte minipool entries. (movv2si, movv4hi, movv8qi): Remove blank expanders (redefined in vec-common.md). (vec-common.md, neon.md): Include md files. * config/arm/arm.opt (mvectorize-with-neon-quad): Add option. * config/arm/constraints.md (constraint "Dn", "Dl", "DL"): Define. (memory_constraint "Ut", "Un", "Us"): Define. * config/arm/iwmmxt.md (VMMX, VSHFT): New mode macros. (MMX_char): New mode attribute. (addv8qi3, addv4hi3, addv2si3): Remove. Replace with... (*add<mode>3_iwmmxt): New insn pattern. (subv8qi3, subv4hi3, subv2si3): Remove. Replace with... (*sub<mode>3_iwmmxt): New insn pattern. (mulv4hi3): Rename to... (*mulv4hi3_iwmmxt): This. (smaxv8qi3, smaxv4hi3, smaxv2si3, umaxv8qi3, umaxv4hi3) (umaxv2si3, sminv8qi3, sminv4hi3, sminv2si3, uminv8qi3) (uminv4hi3, uminv2si3): Remove. Replace with... (*smax<mode>3_iwmmxt, *umax<mode>3_iwmmxt, *smin<mode>3_iwmmxt) (*umin<mode>3_iwmmxt): These. (ashrv4hi3, ashrv2si3, ashrdi3_iwmmxt): Replace with... (ashr<mode>3_iwmmxt): This new pattern. (lshrv4hi3, lshrv2si3, lshrdi3_iwmmxt): Replace with... (lshr<mode>3_iwmmxt): This new pattern. (ashlv4hi3, ashlv2si3, ashldi3_iwmmxt): Replace with... (ashl<mode>3_iwmmxt): This new pattern. * config/arm/neon-docgen.ml: New file. Generate documentation for intrinsics. * config/arm/neon-gen.ml: New file. Generate arm_neon.h header. * config/arm/arm_neon.h: New (autogenerated). * config/arm/neon-testgen.ml: New file. Generate NEON tests automatically. * config/arm/neon.md: New file. Define NEON instructions. * config/arm/neon.ml: New file. Abstract description of NEON instructions, used to generate arm_neon.h header, documentation and tests. * config/arm/t-arm (MD_INCLUDES): Add vec-common.md, neon.md. * vec-common.md: New file. Shared parts for iWMMXt and NEON vector support. * doc/extend.texi (ARM Built-in Functions): Rename and remove extraneous comma. (ARM NEON Intrinsics): New subsection. * doc/arm-neon-intrinsics.texi: New (autogenerated). gcc/testsuite/ * gcc.dg/vect/vect.exp: Check is-effective-target arm_neon_hw. * gcc.dg/vect/tree-vect.h: Check for NEON SIMD support. * lib/gcc-dg.exp (cleanup-saved-temps): Fix comment. * lib/target-supports.exp (check_effective_target_arm_neon_ok) (check_effective_target_arm_neon_hw): New. * gcc.target/arm/neon/neon.exp: New file. * gcc.target/arm/neon/polytypes.c: New file. * gcc.target/arm/neon/v*.c (1870 files): New (autogenerated). Co-Authored-By: Joseph Myers <joseph@codesourcery.com> Co-Authored-By: Mark Shinwell <shinwell@codesourcery.com> Co-Authored-By: Paul Brook <paul@codesourcery.com> From-SVN: r126911
2007-07-25 14:28:31 +02:00
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
;;
frv*) cpu_type=frv
;;
2009-06-10 07:23:39 +02:00
moxie*) cpu_type=moxie
;;
fido-*-*)
cpu_type=m68k
extra_headers=math-68881.h
;;
i[34567]86-*-*)
cpu_type=i386
c_target_objs="i386-c.o"
cxx_target_objs="i386-c.o"
cpuid.h: New file. * gcc/config/i386/cpuid.h: New file. * gcc/config/i386/driver-i386.c: Include cpuid.h. (describe_cache): Shrink size and line strings to 100 bytes. (detect_caches_amd): Return "" for unsupported max_ext_level. Use __cpuid function. (detect_caches_intel): Return "" for unsupported max_level. Use __cpuid function. (host_detect_local_cpu): Change feature flag variables to unsigned int. Initialize only extended feature flag variables. Use __get_cpuid_max to determine max supported cpuid level. Use __cpuid function to determine supported features. Fix calculation of family id. Remove is_amd and check signature directly. Check for Geode signature. Handle family 4 id. [PROCESSOR_GENERIC32]: New default for unknown family id. Move cpu discovery code to other part of the function. [PROCESSOR_PENTIUM, PROCESSOR_K6, PROCESSOR_ATHLON]: Do not tune for sub-architecture. [PROCESSOR_PENTIUMPRO]: Simplify cpu discovery code. [PROCESSOR_K8]: Add k8-sse3 architecture. [PROCESSOR_GENERIC64]: Remove. * gcc/config/i386/x-i386 (driver-i386.o): Depend on cpuid.h. * gcc/config/i386/crtfastmath.c: Include cpuid.h. Use __get_cpuid to check for SSE and FXSAVE support. * gcc/config/i386/t-crtfm (crtfastmath.o): Depend on cpuid.h. Add -minline-all-stringops. * gcc/config.gcc (i[34567]86-*-*): Add cpuid.h to extra_headers. (x86_64-*-*): Ditto. testsuite/ChangeLog: * gcc.dg/i386-cpuid.h: Remove. * gcc.target/i386/mmx-check.h: Include cpuid.h. Use __get_cpuid. * gcc.target/i386/sse-check.h: Ditto. * gcc.target/i386/sse2-check.h: Ditto. * gcc.target/i386/sse3-check.h: Ditto. * gcc.target/i386/ssse3-check.h: Ditto. * gcc.target/i386/sse4_1-check.h: Ditto. * gcc.target/i386/sse4_2-check.h: Ditto. * gcc.target/i386/sse4a-check.h: Ditto. * gcc.dg/torture/pr16104-1.c: Ditto. * gcc.target/i386/mmx-4.c: Do not use NOINLINE. * gcc.target/i386/sse-6.c: Ditto. * gcc.target/i386/sse-7.c: Ditto. * g++.dg/other/i386-1.C: Include cpuid.h. (main): New function. Use __get_cpuid to check target fetaures. libgomp/ChangeLog: * testsuite/libgomp.c/atomic-1.c: Include cpuid.h for i386 targets. (main): Use __get_cpuid to get i386 target fetaures. * testsuite/libgomp.c/atomic-2.c: Include cpuid.h for x86_64 targets. (main): Use __get_cpuid to get x86_64 target fetaures. From-SVN: r128141
2007-09-05 19:43:01 +02:00
extra_headers="cpuid.h mmintrin.h mm3dnow.h xmmintrin.h emmintrin.h
config.gcc (i[34567]86-*-*): Add nmmintrin.h to extra_headers. 2007-05-31 H.J. Lu <hongjiu.lu@intel.com> * config.gcc (i[34567]86-*-*): Add nmmintrin.h to extra_headers. (x86_64-*-*): Likewise. * config/i386/i386.c (OPTION_MASK_ISA_MMX_UNSET): New. (OPTION_MASK_ISA_3DNOW_UNSET): Likewise. (OPTION_MASK_ISA_SSE_UNSET): Likewise. (OPTION_MASK_ISA_SSE2_UNSET): Likewise. (OPTION_MASK_ISA_SSE3_UNSET): Likewise. (OPTION_MASK_ISA_SSSE3_UNSET): Likewise. (OPTION_MASK_ISA_SSE4_1_UNSET): Likewise. (OPTION_MASK_ISA_SSE4_2_UNSET): Likewise. (OPTION_MASK_ISA_SSE4): Likewise. (OPTION_MASK_ISA_SSE4_UNSET): Likewise. (OPTION_MASK_ISA_SSE4A_UNSET): Likewise. (ix86_handle_option): Use OPTION_MASK_ISA_*_UNSET. Handle SSE4.2. (override_options): Support SSE4.2. (ix86_build_const_vector): Support SImode and DImode. (ix86_build_signbit_mask): Likewise. (ix86_expand_int_vcond): Support V2DImode. (IX86_BUILTIN_CRC32QI): New for SSE4.2. (IX86_BUILTIN_CRC32HI): Likewise. (IX86_BUILTIN_CRC32SI): Likewise. (IX86_BUILTIN_CRC32DI): Likewise. (IX86_BUILTIN_PCMPGTQ): Likewise. (bdesc_crc32): Likewise. (bdesc_sse_3arg): Likewise. (ix86_expand_crc32): Likewise. (ix86_init_mmx_sse_builtins): Support SSE4.2. (ix86_expand_builtin): Likewise. * config/i386/i386.h (TARGET_CPU_CPP_BUILTINS): Define __SSE4_2__ for -msse4.2. * config/i386/i386.md (UNSPEC_CRC32): New for SSE4.2. (CRC32MODE): Likewise. (crc32modesuffix): Likewise. (crc32modeconstraint): Likewise. (sse4_2_crc32<mode>): Likewise. (sse4_2_crc32di): Likewise. * config/i386/i386.opt (msse4.2): New for SSE4.2. (msse4): Likewise. * config/i386/nmmintrin.h: New. The dummy SSE4.2 intrinsic header file. * config/i386/smmintrin.h: Add SSE4.2 intrinsics. * config/i386/sse.md (sse4_2_gtv2di3): New pattern for SSE4.2. (vcond<mode>): Use SSEMODEI instead of SSEMODE124. (vcondu<mode>): Likewise. * doc/extend.texi: Document SSE4.2 built-in functions. * doc/invoke.texi: Document -msse4.2/-msse4. From-SVN: r125236
2007-05-31 21:52:24 +02:00
pmmintrin.h tmmintrin.h ammintrin.h smmintrin.h
config.gcc (extra_headers): Add wmmintrin.h for x86 and x86-64. gcc/ 2008-04-04 H.J. Lu <hongjiu.lu@intel.com> * config.gcc (extra_headers): Add wmmintrin.h for x86 and x86-64. * config/i386/cpuid.h (bit_AES): New. (bit_PCLMUL): Likewise. * config/i386/i386.c (pta_flags): Add PTA_AES and PTA_PCLMUL. (override_options): Handle PTA_AES and PTA_PCLMUL. Enable SSE2 if AES or PCLMUL is enabled. (ix86_builtins): Add IX86_BUILTIN_AESENC128, IX86_BUILTIN_AESENCLAST128, IX86_BUILTIN_AESDEC128, IX86_BUILTIN_AESDECLAST128, IX86_BUILTIN_AESIMC128, IX86_BUILTIN_AESKEYGENASSIST128 and IX86_BUILTIN_PCLMULQDQ128. (bdesc_sse_3arg): Add IX86_BUILTIN_PCLMULQDQ128. (bdesc_2arg): Add IX86_BUILTIN_AESENC128, IX86_BUILTIN_AESENCLAST128, IX86_BUILTIN_AESDEC128, IX86_BUILTIN_AESDECLAST128 and IX86_BUILTIN_AESKEYGENASSIST128. (bdesc_1arg): Add IX86_BUILTIN_AESIMC128. (ix86_init_mmx_sse_builtins): Define __builtin_ia32_aesenc128, __builtin_ia32_aesenclast128, __builtin_ia32_aesdec128, __builtin_ia32_aesdeclast128,__builtin_ia32_aesimc128, __builtin_ia32_aeskeygenassist128 and __builtin_ia32_pclmulqdq128. * config/i386/i386.c (ix86_expand_binop_imm_builtin): New. (ix86_expand_builtin): Use it for IX86_BUILTIN_PSLLDQI128 and IX86_BUILTIN_PSRLDQI128. Handle IX86_BUILTIN_AESKEYGENASSIST128. * config/i386/i386.h (TARGET_AES): New. (TARGET_PCLMUL): Likewise. (TARGET_CPU_CPP_BUILTINS): Handle TARGET_AES and TARGET_PCLMUL. * config/i386/i386.md (UNSPEC_AESENC): New. (UNSPEC_AESENCLAST): Likewise. (UNSPEC_AESDEC): Likewise. (UNSPEC_AESDECLAST): Likewise. (UNSPEC_AESIMC): Likewise. (UNSPEC_AESKEYGENASSIST): Likewise. (UNSPEC_PCLMULQDQ): Likewise. * config/i386/i386.opt (maes): New. (mpclmul): Likewise. * config/i386/sse.md (aesenc): New pattern. (aesenclast): Likewise. (aesdec): Likewise. (aesdeclast): Likewise. (aesimc): Likewise. (aeskeygenassist): Likewise. (pclmulqdq): Likewise. * config/i386/wmmintrin.h: New. * doc/extend.texi: Document AES and PCLMUL built-in function. * doc/invoke.texi: Document -maes and -mpclmul. gcc/testsuite/ 2008-04-04 H.J. Lu <hongjiu.lu@intel.com> * g++.dg/other/i386-2.C: Include <wmmintrin.h>. * g++.dg/other/i386-3.C: Likewise. * gcc.target/i386/sse-13.c: Likewise. * gcc.target/i386/sse-14.c: Likewise. * gcc.target/i386/aes-check.h: New. * gcc.target/i386/aesdec.c: Likewise. * gcc.target/i386/aesdeclast.c: Likewise. * gcc.target/i386/aesenc.c: Likewise. * gcc.target/i386/aesenclast.c: Likewise. * gcc.target/i386/aesimc.c: Likewise. * gcc.target/i386/aeskeygenassist.c: Likewise. * gcc.target/i386/pclmulqdq.c: Likewise. * gcc.target/i386/pclmul-check.h: Likewise. * gcc.target/i386/i386.exp (check_effective_target_aes): New. (check_effective_target_pclmul): Likewise. From-SVN: r133902
2008-04-04 18:10:52 +02:00
nmmintrin.h bmmintrin.h mmintrin-common.h
wmmintrin.h immintrin.h x86intrin.h avxintrin.h
config.gcc (extra_headers): Add ia32intrin.h for x86. 2009-06-16 H.J. Lu <hongjiu.lu@intel.com> * config.gcc (extra_headers): Add ia32intrin.h for x86. * config/i386/i386.c (ix86_builtins): Add IX86_BUILTIN_BSRSI, IX86_BUILTIN_BSRDI. IX86_BUILTIN_RDPMC, IX86_BUILTIN_RDTSC. IX86_BUILTIN_RDTSCP. IX86_BUILTIN_ROLQI, IX86_BUILTIN_ROLHI, IX86_BUILTIN_RORQI and IX86_BUILTIN_RORHI. (ix86_special_builtin_type): Add UINT64_FTYPE_VOID, UINT64_FTYPE_PINT, INT_FTYPE_INT, UINT64_FTYPE_INT, INT64_FTYPE_INT64, UINT16_FTYPE_UINT16_INT and UINT8_FTYPE_UINT8_INT (bdesc_special_args): Add __builtin_ia32_rdtsc and __builtin_ia32_rdtscp. (bdesc_args): Add __builtin_ia32_bsrsi, __builtin_ia32_bsrdi, __builtin_ia32_rolqi, __builtin_ia32_rolhi, __builtin_ia32_rorqi and __builtin_ia32_rorhi, (ix86_init_mmx_sse_builtins): Handle UINT64_FTYPE_VOID, UINT64_FTYPE_PINT, INT_FTYPE_INT, UINT64_FTYPE_INT, INT64_FTYPE_INT64, UINT16_FTYPE_UINT16_INT and UINT8_FTYPE_UINT8_INT. (ix86_expand_args_builtin): Likewise. (ix86_expand_special_args_builtin): Likewise. * config/i386/i386.md (UNSPECV_RDTSCP): New. (UNSPECV_RDTSC): Likewise. (UNSPECV_RDPMC): Likewise. (*bsr): Removed to ... (bsr): This (*bsr_rex64): Removed to ... (bsr_rex64): This. (rdpmc): New. (*rdpmc): Likewise. (*rdpmc_rex64): Likewise. (rdtsc): Likewise. (*rdtsc): Likewise. (*rdtsc_rex64): Likewise. (rdtscp): Likewise. (*rdtscp): Likewise. (*rdtscp_rex64): Likewise. * config/i386/ia32intrin.h: New. * config/i386/x86intrin.h: Include <ia32intrin.h>. From-SVN: r148554
2009-06-16 23:17:31 +02:00
ia32intrin.h cross-stdarg.h"
;;
x86_64-*-*)
cpu_type=i386
c_target_objs="i386-c.o"
cxx_target_objs="i386-c.o"
cpuid.h: New file. * gcc/config/i386/cpuid.h: New file. * gcc/config/i386/driver-i386.c: Include cpuid.h. (describe_cache): Shrink size and line strings to 100 bytes. (detect_caches_amd): Return "" for unsupported max_ext_level. Use __cpuid function. (detect_caches_intel): Return "" for unsupported max_level. Use __cpuid function. (host_detect_local_cpu): Change feature flag variables to unsigned int. Initialize only extended feature flag variables. Use __get_cpuid_max to determine max supported cpuid level. Use __cpuid function to determine supported features. Fix calculation of family id. Remove is_amd and check signature directly. Check for Geode signature. Handle family 4 id. [PROCESSOR_GENERIC32]: New default for unknown family id. Move cpu discovery code to other part of the function. [PROCESSOR_PENTIUM, PROCESSOR_K6, PROCESSOR_ATHLON]: Do not tune for sub-architecture. [PROCESSOR_PENTIUMPRO]: Simplify cpu discovery code. [PROCESSOR_K8]: Add k8-sse3 architecture. [PROCESSOR_GENERIC64]: Remove. * gcc/config/i386/x-i386 (driver-i386.o): Depend on cpuid.h. * gcc/config/i386/crtfastmath.c: Include cpuid.h. Use __get_cpuid to check for SSE and FXSAVE support. * gcc/config/i386/t-crtfm (crtfastmath.o): Depend on cpuid.h. Add -minline-all-stringops. * gcc/config.gcc (i[34567]86-*-*): Add cpuid.h to extra_headers. (x86_64-*-*): Ditto. testsuite/ChangeLog: * gcc.dg/i386-cpuid.h: Remove. * gcc.target/i386/mmx-check.h: Include cpuid.h. Use __get_cpuid. * gcc.target/i386/sse-check.h: Ditto. * gcc.target/i386/sse2-check.h: Ditto. * gcc.target/i386/sse3-check.h: Ditto. * gcc.target/i386/ssse3-check.h: Ditto. * gcc.target/i386/sse4_1-check.h: Ditto. * gcc.target/i386/sse4_2-check.h: Ditto. * gcc.target/i386/sse4a-check.h: Ditto. * gcc.dg/torture/pr16104-1.c: Ditto. * gcc.target/i386/mmx-4.c: Do not use NOINLINE. * gcc.target/i386/sse-6.c: Ditto. * gcc.target/i386/sse-7.c: Ditto. * g++.dg/other/i386-1.C: Include cpuid.h. (main): New function. Use __get_cpuid to check target fetaures. libgomp/ChangeLog: * testsuite/libgomp.c/atomic-1.c: Include cpuid.h for i386 targets. (main): Use __get_cpuid to get i386 target fetaures. * testsuite/libgomp.c/atomic-2.c: Include cpuid.h for x86_64 targets. (main): Use __get_cpuid to get x86_64 target fetaures. From-SVN: r128141
2007-09-05 19:43:01 +02:00
extra_headers="cpuid.h mmintrin.h mm3dnow.h xmmintrin.h emmintrin.h
config.gcc (i[34567]86-*-*): Add nmmintrin.h to extra_headers. 2007-05-31 H.J. Lu <hongjiu.lu@intel.com> * config.gcc (i[34567]86-*-*): Add nmmintrin.h to extra_headers. (x86_64-*-*): Likewise. * config/i386/i386.c (OPTION_MASK_ISA_MMX_UNSET): New. (OPTION_MASK_ISA_3DNOW_UNSET): Likewise. (OPTION_MASK_ISA_SSE_UNSET): Likewise. (OPTION_MASK_ISA_SSE2_UNSET): Likewise. (OPTION_MASK_ISA_SSE3_UNSET): Likewise. (OPTION_MASK_ISA_SSSE3_UNSET): Likewise. (OPTION_MASK_ISA_SSE4_1_UNSET): Likewise. (OPTION_MASK_ISA_SSE4_2_UNSET): Likewise. (OPTION_MASK_ISA_SSE4): Likewise. (OPTION_MASK_ISA_SSE4_UNSET): Likewise. (OPTION_MASK_ISA_SSE4A_UNSET): Likewise. (ix86_handle_option): Use OPTION_MASK_ISA_*_UNSET. Handle SSE4.2. (override_options): Support SSE4.2. (ix86_build_const_vector): Support SImode and DImode. (ix86_build_signbit_mask): Likewise. (ix86_expand_int_vcond): Support V2DImode. (IX86_BUILTIN_CRC32QI): New for SSE4.2. (IX86_BUILTIN_CRC32HI): Likewise. (IX86_BUILTIN_CRC32SI): Likewise. (IX86_BUILTIN_CRC32DI): Likewise. (IX86_BUILTIN_PCMPGTQ): Likewise. (bdesc_crc32): Likewise. (bdesc_sse_3arg): Likewise. (ix86_expand_crc32): Likewise. (ix86_init_mmx_sse_builtins): Support SSE4.2. (ix86_expand_builtin): Likewise. * config/i386/i386.h (TARGET_CPU_CPP_BUILTINS): Define __SSE4_2__ for -msse4.2. * config/i386/i386.md (UNSPEC_CRC32): New for SSE4.2. (CRC32MODE): Likewise. (crc32modesuffix): Likewise. (crc32modeconstraint): Likewise. (sse4_2_crc32<mode>): Likewise. (sse4_2_crc32di): Likewise. * config/i386/i386.opt (msse4.2): New for SSE4.2. (msse4): Likewise. * config/i386/nmmintrin.h: New. The dummy SSE4.2 intrinsic header file. * config/i386/smmintrin.h: Add SSE4.2 intrinsics. * config/i386/sse.md (sse4_2_gtv2di3): New pattern for SSE4.2. (vcond<mode>): Use SSEMODEI instead of SSEMODE124. (vcondu<mode>): Likewise. * doc/extend.texi: Document SSE4.2 built-in functions. * doc/invoke.texi: Document -msse4.2/-msse4. From-SVN: r125236
2007-05-31 21:52:24 +02:00
pmmintrin.h tmmintrin.h ammintrin.h smmintrin.h
config.gcc (extra_headers): Add wmmintrin.h for x86 and x86-64. gcc/ 2008-04-04 H.J. Lu <hongjiu.lu@intel.com> * config.gcc (extra_headers): Add wmmintrin.h for x86 and x86-64. * config/i386/cpuid.h (bit_AES): New. (bit_PCLMUL): Likewise. * config/i386/i386.c (pta_flags): Add PTA_AES and PTA_PCLMUL. (override_options): Handle PTA_AES and PTA_PCLMUL. Enable SSE2 if AES or PCLMUL is enabled. (ix86_builtins): Add IX86_BUILTIN_AESENC128, IX86_BUILTIN_AESENCLAST128, IX86_BUILTIN_AESDEC128, IX86_BUILTIN_AESDECLAST128, IX86_BUILTIN_AESIMC128, IX86_BUILTIN_AESKEYGENASSIST128 and IX86_BUILTIN_PCLMULQDQ128. (bdesc_sse_3arg): Add IX86_BUILTIN_PCLMULQDQ128. (bdesc_2arg): Add IX86_BUILTIN_AESENC128, IX86_BUILTIN_AESENCLAST128, IX86_BUILTIN_AESDEC128, IX86_BUILTIN_AESDECLAST128 and IX86_BUILTIN_AESKEYGENASSIST128. (bdesc_1arg): Add IX86_BUILTIN_AESIMC128. (ix86_init_mmx_sse_builtins): Define __builtin_ia32_aesenc128, __builtin_ia32_aesenclast128, __builtin_ia32_aesdec128, __builtin_ia32_aesdeclast128,__builtin_ia32_aesimc128, __builtin_ia32_aeskeygenassist128 and __builtin_ia32_pclmulqdq128. * config/i386/i386.c (ix86_expand_binop_imm_builtin): New. (ix86_expand_builtin): Use it for IX86_BUILTIN_PSLLDQI128 and IX86_BUILTIN_PSRLDQI128. Handle IX86_BUILTIN_AESKEYGENASSIST128. * config/i386/i386.h (TARGET_AES): New. (TARGET_PCLMUL): Likewise. (TARGET_CPU_CPP_BUILTINS): Handle TARGET_AES and TARGET_PCLMUL. * config/i386/i386.md (UNSPEC_AESENC): New. (UNSPEC_AESENCLAST): Likewise. (UNSPEC_AESDEC): Likewise. (UNSPEC_AESDECLAST): Likewise. (UNSPEC_AESIMC): Likewise. (UNSPEC_AESKEYGENASSIST): Likewise. (UNSPEC_PCLMULQDQ): Likewise. * config/i386/i386.opt (maes): New. (mpclmul): Likewise. * config/i386/sse.md (aesenc): New pattern. (aesenclast): Likewise. (aesdec): Likewise. (aesdeclast): Likewise. (aesimc): Likewise. (aeskeygenassist): Likewise. (pclmulqdq): Likewise. * config/i386/wmmintrin.h: New. * doc/extend.texi: Document AES and PCLMUL built-in function. * doc/invoke.texi: Document -maes and -mpclmul. gcc/testsuite/ 2008-04-04 H.J. Lu <hongjiu.lu@intel.com> * g++.dg/other/i386-2.C: Include <wmmintrin.h>. * g++.dg/other/i386-3.C: Likewise. * gcc.target/i386/sse-13.c: Likewise. * gcc.target/i386/sse-14.c: Likewise. * gcc.target/i386/aes-check.h: New. * gcc.target/i386/aesdec.c: Likewise. * gcc.target/i386/aesdeclast.c: Likewise. * gcc.target/i386/aesenc.c: Likewise. * gcc.target/i386/aesenclast.c: Likewise. * gcc.target/i386/aesimc.c: Likewise. * gcc.target/i386/aeskeygenassist.c: Likewise. * gcc.target/i386/pclmulqdq.c: Likewise. * gcc.target/i386/pclmul-check.h: Likewise. * gcc.target/i386/i386.exp (check_effective_target_aes): New. (check_effective_target_pclmul): Likewise. From-SVN: r133902
2008-04-04 18:10:52 +02:00
nmmintrin.h bmmintrin.h mmintrin-common.h
wmmintrin.h immintrin.h x86intrin.h avxintrin.h
config.gcc (extra_headers): Add ia32intrin.h for x86. 2009-06-16 H.J. Lu <hongjiu.lu@intel.com> * config.gcc (extra_headers): Add ia32intrin.h for x86. * config/i386/i386.c (ix86_builtins): Add IX86_BUILTIN_BSRSI, IX86_BUILTIN_BSRDI. IX86_BUILTIN_RDPMC, IX86_BUILTIN_RDTSC. IX86_BUILTIN_RDTSCP. IX86_BUILTIN_ROLQI, IX86_BUILTIN_ROLHI, IX86_BUILTIN_RORQI and IX86_BUILTIN_RORHI. (ix86_special_builtin_type): Add UINT64_FTYPE_VOID, UINT64_FTYPE_PINT, INT_FTYPE_INT, UINT64_FTYPE_INT, INT64_FTYPE_INT64, UINT16_FTYPE_UINT16_INT and UINT8_FTYPE_UINT8_INT (bdesc_special_args): Add __builtin_ia32_rdtsc and __builtin_ia32_rdtscp. (bdesc_args): Add __builtin_ia32_bsrsi, __builtin_ia32_bsrdi, __builtin_ia32_rolqi, __builtin_ia32_rolhi, __builtin_ia32_rorqi and __builtin_ia32_rorhi, (ix86_init_mmx_sse_builtins): Handle UINT64_FTYPE_VOID, UINT64_FTYPE_PINT, INT_FTYPE_INT, UINT64_FTYPE_INT, INT64_FTYPE_INT64, UINT16_FTYPE_UINT16_INT and UINT8_FTYPE_UINT8_INT. (ix86_expand_args_builtin): Likewise. (ix86_expand_special_args_builtin): Likewise. * config/i386/i386.md (UNSPECV_RDTSCP): New. (UNSPECV_RDTSC): Likewise. (UNSPECV_RDPMC): Likewise. (*bsr): Removed to ... (bsr): This (*bsr_rex64): Removed to ... (bsr_rex64): This. (rdpmc): New. (*rdpmc): Likewise. (*rdpmc_rex64): Likewise. (rdtsc): Likewise. (*rdtsc): Likewise. (*rdtsc_rex64): Likewise. (rdtscp): Likewise. (*rdtscp): Likewise. (*rdtscp_rex64): Likewise. * config/i386/ia32intrin.h: New. * config/i386/x86intrin.h: Include <ia32intrin.h>. From-SVN: r148554
2009-06-16 23:17:31 +02:00
ia32intrin.h cross-stdarg.h"
need_64bit_hwint=yes
;;
ia64-*-*)
extra_headers=ia64intrin.h
need_64bit_hwint=yes
;;
MAINTAINERS (mt port): Remove. * MAINTAINERS (mt port): Remove. (sco5, unixware, sco udk): Remove. (Kean Johnston): Add to Write After Approval. fixincludes: * inclhack.def (AAB_svr4_replace_byteorder, AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory, libc1_G_va_list, libc1_ifdefd_memx, nested_motorola, ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime, solaris_mutex_init_1, solaris_socket, solaris_unistd, solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param, ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale, ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc, ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings, ultrix_strings2, ultrix_sys_time, ultrix_unistd, unicosmk_restrict, uw7_byteorder_fix, windiss_math1, windiss_math2, windiss_valist): Remove. * fixincl.x: Regenerate. * mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*, i370-*-openedition, i?86-*-moss*, i?86-*-uwin*, powerpc-*-eabiaix*): Remove. * tests/base/math.h: Update. * tests/base/pthread.h: Update. * tests/base/stdio.h: Update. * tests/base/stdlib.h: Update. * tests/base/string.h: Update. * tests/base/strings.h: Update. * tests/base/sys/file.h: Update. * tests/base/sys/limits.h: Update. * tests/base/sys/socket.h: Update. * tests/base/sys/stat.h: Update. * tests/base/sys/time.h: Update. * tests/base/testing.h: Update. * tests/base/unistd.h: Update. * tests/base/_G_config.h: Remove. * tests/base/arpa: Remove directory. * tests/base/fs: Remove directory. * tests/base/locale.h: Remove. * tests/base/machine: Remove directory. * tests/base/rpc/svc.h: Remove. * tests/base/sys/ioctl.h: Remove. * tests/base/sys/regset.h: Remove. * tests/base/sys/times.h: Remove. * tests/base/sys/utsname.h: Remove. * tests/base/widec.h: Remove. gcc: * config.gcc (Obsolete configurations): Remove list of configurations. (Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*, *-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*. Remove other targets matched by those patterns. (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff, i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove. Make code for Solaris 7 and greater unconditional for Solaris. (ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*): Remove --with-* handling. * config/rs6000/sysv4.h (-mwindiss): Remove from all specs. (LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC, ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC, LINK_OS_WINDISS_SPEC): Remove. * config/rs6000/sysv4.opt (mwindiss): Remove. * configure.ac (strongarm*-*-*, xscale*-*-*): Remove. * configure: Regenerate. * doc/cpp.texi: Don't mention BeOS. * doc/extend.texi (interrupt): Don't mention MS1. * doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv, m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv, alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout, i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4, powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix): Remove. * doc/invoke.texi (MT Options): Remove. (-mwindiss): Remove. (CRIS Options): Remove cris-axis-aout references. (HPPA Options): Don't mention hppa1.1-*-pro. * doc/md.texi: (MorphoTech family): Remove. * libgcc2.c: Don't handle UWIN. * config/alpha/t-unicosmk: Remove. * config/alpha/unicosmk.h: Remove. * config/arm/kaos-arm.h: Remove. * config/arm/kaos-strongarm.h: Remove. * config/arm/strongarm-coff.h: Remove. * config/arm/strongarm-elf.h: Remove. * config/arm/strongarm-pe.h: Remove. * config/arm/t-strongarm-pe: Remove. * config/arm/t-xscale-coff: Remove. * config/arm/t-xscale-elf: Remove. * config/arm/xscale-coff.h: Remove. * config/arm/xscale-elf.h: Remove. * config/chorus.h: Remove. * config/cris/aout.h: Remove. * config/cris/aout.opt: Remove. * config/cris/t-aout: Remove. * config/i386/beos-elf.h: Remove. * config/i386/kaos-i386.h: Remove. * config/i386/ptx4-i.h: Remove. * config/i386/sco5.h: Remove. * config/i386/sco5.opt: Remove. * config/i386/sysv4-cpp.h: Remove. * config/i386/sysv5.h: Remove. * config/i386/t-beos: Remove. * config/i386/t-sco5: Remove. * config/i386/t-uwin: Remove. * config/i386/uwin.asm: Remove. * config/i386/uwin.h: Remove. * config/kaos.h: Remove. * config/mips/windiss.h: Remove. * config/mt: Remove directory. * config/pa/pa-osf.h: Remove. * config/pa/pa-pro-end.h: Remove. * config/pa/t-pro: Remove. * config/ptx4.h: Remove. * config/rs6000/beos.h: Remove. * config/rs6000/kaos-ppc.h: Remove. * config/rs6000/t-beos: Remove. * config/rs6000/windiss.h: Remove. * config/sh/kaos-sh.h: Remove. * config/sol2-6.h: Remove. * config/sparc/sol26-sld.h: Remove. * config/sparc/sysv4-only.h: Remove. * config/vax/bsd.h: Remove. * config/vax/t-memfuncs: Remove. * config/vax/ultrix.h: Remove. * config/vax/vaxv.h: Remove. * config/windiss.h: Remove. gcc/testsuite: * g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*. * g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*. * g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris 7. * gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*, strongarm*-*-* and cris-*-aout*. * gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20030909-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20031108-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20040813-1.c: Don't handle *-*-sysv5*. * gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*. * gcc.dg/arm-scd42-1.c: Use target arm*-*-*. * gcc.dg/arm-scd42-3.c: Use target arm*-*-*. * gcc.dg/cpp/assert4.c: Don't handle BeOS. * gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*. * gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and xscale*-*-elf*. * gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*. * gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1. * gcc.misc-tests/arm-isr.exp: Use target arm*-*-*. * gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-stackalign-1.c: Don't handle powerpc-*-sysv*. * gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*. * lib/target-supports.exp: Don't handle strongarm*-*-elf, xscale*-*-elf and *-*-windiss. * obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*. * gcc.dg/mt-loopi1.c: Remove. gnattools: * configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove. * configure: Regenerate. libcpp: * configure.ac (parisc*64*-*-*): Remove. * configure: Regenerate. libffi: * configure.ac (parisc*-*-linux*, powerpc-*-sysv*, powerpc-*-beos*): Remove. * configure: Regenerate. libgcc: * config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove. libjava: * configure.host (strongarm*-elf, xscale*-elf): Remove. libstdc++-v3: * configure.host (xscale, ep9312, m680[246]0, solaris2.5, solaris2.5.[0-9], solaris2.6, windiss*): Remove. * crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove. * configure: Regenerate. * config/os/solaris/solaris2.5: Remove directory. * config/os/solaris/solaris2.6: Remove directory. * config/os/windiss: Remove directory. From-SVN: r136534
2008-06-07 20:00:15 +02:00
hppa*-*-*)
cpu_type=pa
;;
m32r*-*-*)
cpu_type=m32r
;;
m68k-*-*)
extra_headers=math-68881.h
;;
mips*-*-*)
cpu_type=mips
need_64bit_hwint=yes
mips-modes.def: Add V8QI, V4HI and V2SI modes. 2008-06-15 Mark Shinwell <shinwell@codesourcery.com> Nathan Sidwell <nathan@codesourcery.com> Maxim Kuvyrkov <maxim@codesourcery.com> Richard Sandiford <rdsandiford@googlemail.com> * config/mips/mips-modes.def: Add V8QI, V4HI and V2SI modes. * config/mips/mips-protos.h (mips_expand_vector_init): New. * config/mips/mips-ftypes.def: Add function types for Loongson-2E/2F builtins. * config/mips/mips.c (mips_split_doubleword_move): Handle new modes. (mips_hard_regno_mode_ok_p): Allow 64-bit vector modes for Loongson. (mips_vector_mode_supported_p): Add V2SImode, V4HImode and V8QImode cases. (LOONGSON_BUILTIN, LOONGSON_BUILTIN_ALIAS): New. (CODE_FOR_loongson_packsswh, CODE_FOR_loongson_packsshb, (CODE_FOR_loongson_packushb, CODE_FOR_loongson_paddw, (CODE_FOR_loongson_paddh, CODE_FOR_loongson_paddb, (CODE_FOR_loongson_paddsh, CODE_FOR_loongson_paddsb) (CODE_FOR_loongson_paddush, CODE_FOR_loongson_paddusb) (CODE_FOR_loongson_pmaxsh, CODE_FOR_loongson_pmaxub) (CODE_FOR_loongson_pminsh, CODE_FOR_loongson_pminub) (CODE_FOR_loongson_pmulhuh, CODE_FOR_loongson_pmulhh) (CODE_FOR_loongson_biadd, CODE_FOR_loongson_psubw) (CODE_FOR_loongson_psubh, CODE_FOR_loongson_psubb) (CODE_FOR_loongson_psubsh, CODE_FOR_loongson_psubsb) (CODE_FOR_loongson_psubush, CODE_FOR_loongson_psubusb) (CODE_FOR_loongson_punpckhbh, CODE_FOR_loongson_punpckhhw) (CODE_FOR_loongson_punpckhwd, CODE_FOR_loongson_punpcklbh) (CODE_FOR_loongson_punpcklhw, CODE_FOR_loongson_punpcklwd): New. (mips_builtins): Add Loongson builtins. (mips_loongson_2ef_bdesc): New. (mips_bdesc_arrays): Add mips_loongson_2ef_bdesc. (mips_builtin_vector_type): Handle unsigned versions of vector modes. (MIPS_ATYPE_UQI, MIPS_ATYPE_UDI, MIPS_ATYPE_V2SI, MIPS_ATYPE_UV2SI) (MIPS_ATYPE_V4HI, MIPS_ATYPE_UV4HI, MIPS_ATYPE_V8QI, MIPS_ATYPE_UV8QI): New. (mips_expand_vector_init): New. * config/mips/mips.h (HAVE_LOONGSON_VECTOR_MODES): New. (TARGET_CPU_CPP_BUILTINS): Define __mips_loongson_vector_rev if appropriate. * config/mips/mips.md: Add unspec numbers for Loongson builtins. Include loongson.md. (MOVE64): Include Loongson vector modes. (SPLITF): Include Loongson vector modes. (HALFMODE): Handle Loongson vector modes. * config/mips/loongson.md: New. * config/mips/loongson.h: New. * config.gcc: Add loongson.h header for mips*-*-* targets. * doc/extend.texi (MIPS Loongson Built-in Functions): New. 2008-06-15 Mark Shinwell <shinwell@codesourcery.com> * lib/target-supports.exp (check_effective_target_mips_loongson): New. * gcc.target/mips/loongson-simd.c: New. Co-Authored-By: Maxim Kuvyrkov <maxim@codesourcery.com> Co-Authored-By: Nathan Sidwell <nathan@codesourcery.com> Co-Authored-By: Richard Sandiford <rdsandiford@googlemail.com> From-SVN: r136800
2008-06-15 08:29:06 +02:00
extra_headers="loongson.h"
;;
picochip-*-*)
cpu_type=picochip
;;
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[34567]|xpower6x|xrs64a|xcell)
cpu_is_64bit=yes
;;
esac
;;
rs6000*-*-*)
need_64bit_hwint=yes
;;
score*-*-*)
cpu_type=score
;;
sparc*-*-*)
cpu_type=sparc
need_64bit_hwint=yes
;;
spu*-*-*)
cpu_type=spu
need_64bit_hwint=yes
;;
s390*-*-*)
cpu_type=s390
need_64bit_hwint=yes
;;
# Note the 'l'; we need to be able to match e.g. "shle" or "shl".
sh[123456789lbe]*-*-* | sh-*-*)
Contribute sh64-elf. 2002-02-09 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (TARGET_CANNOT_MODIFY_JUMPS_P): Define to... (sh_cannot_modify_jumps_p): New function. 2002-02-05 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (TARGET_MS_BITFIELD_LAYOUT_P): Define to... (sh_ms_bitfield_layout_p): New function. 2002-02-04 Alexandre Oliva <aoliva@redhat.com> Zack Weinberg <zack@codesourcery.com> * config/sh/sh.h (TRAMPOLINE_ADJUST_ADDRESS): Use expand_simple_binop instead of expand_binop. 2002-02-03 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (OVERRIDE_OPTIONS) [! TARGET_SH5]: Disable use of .quad and .uaquad. * config/sh/sh.c (TARGET_ASM_UNALIGNED_DI_OP, TARGET_ASM_ALIGNED_DI_OP): Add comment pointing to the above. 2002-01-24 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (movdi_const, movdi_const_32bit, movdi_const_16bit): Make sure all CONSTs have modes. (sym2PIC): Ditto, but by adjusting all callers. * config/sh/sh.c (calc_live_regs) [TARGET_SHCOMPACT]: Set pr_live if the prologue calls the SHmedia argument decoder or register saver. 2002-01-24 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (TARGET_ASM_UNALIGNED_DI_OP): Define. (TARGET_ASM_ALIGNED_DI_OP): Likewise. (sh_expand_epilogue): Don't emit USE of return target register. (prepare_move_operands): Legitimize DImode PIC addresses. (sh_media_register_for_return): Skip tr0, used to initialize the PIC register. (sh_expand_prologue): Remove explicit USE of return register. (nonpic_symbol_mentioned_p): PC is non-PIC. Don't recurse in CONST_DOUBLEs. UNSPEC_GOTPLT is PIC. * config/sh/sh.h (ASM_OUTPUT_DOUBLE_INT): Removed, obsolete. (OVERRIDE_OPTIONS): Don't disable PIC on SH5. (EXTRA_CONSTRAINT_S): Use MOVI_SHORI_BASE_OPERAND_P instead of EXTRA_CONSTRAINT_T. (GOT_ENTRY_P, GOTPLT_ENTRY_P, GOTOFF_P, PIC_ADDR_P): New. (MOVI_SHORI_BASE_OPERAND_P): New. (NON_PIC_REFERENCE_P, PIC_REFERENCE_P): New. (EXTRA_CONSTRAINT_T): Define in terms of them. (OUTPUT_ADDR_CONST_EXTRA): Handle UNSPEC_GOTPLT. * config/sh/sh.md (movsi_media, movsi_media_nofpu, movdi_media, movdi_media_nofpu): Add SIBCALL_REGS class to alternatives supporting TARGET_REGS. (UNSPEC_GOTPLT): New constant. (movdi split): Move incrementing of LABEL_NUSES... (movdi_const, movdi_const_32bit): Here. Use MOVI_SHORI_BASE_OPERAND_P instead of EXTRA_CONSTRAINT_T. (movdi_const_16bit): New. (call, call_value) [flag_pic]: Use GOTPLT. (call_pop, call_value_pop): New expands. (call_pop_compact, call_pop_rettramp): New insns. (call_value_pop_compact, call_value_pop_rettramp): New insns. (sibcall) [flag_pic]: Use GOT. (builtint_setjmp_receiver): Remove bogus, unused expand. (GOTaddr2picreg): Implement for SHcompact and SHmedia. (*pt, *ptb, ptrel): New insns. (sym2GOT): Handle DImode GOT. (sym2GOTPLT, symGOTPLT2reg): New expands. (sym2PIC): New expand. (shcompact_return_tramp): Use GOTPLT to return trampoline. (shcompact_return_tramp_i): Use return register explicitly. * config/sh/sh.h (OVERRIDE_OPTIONS) [TARGET_SHMEDIA]: Don't disable flag_reorder_blocks. 2002-01-19 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (sibcall_compact): Reorder return, uses and clobbers, for clarity. (sibcall_epilogue) [TARGET_SHCOMPACT]: Mark saving and restoring of r0 in macl as MAYBE_DEAD. 2002-01-18 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (LONG_DOUBLE_TYPE_SIZE): Define. * config/sh/sh.md (movv4sf_i, movv16sf_i): Fix uses of alter_subreg all over. (jump) [TARGET_SHMEDIA]: FAIL to create new jumps after reload, instead of emitting instructions that would require reloading. (casesi_load_media): Add missing modes. 2001-11-09 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (sh_expand_prologue): Mark the PIC register as used if the argument decoder is called. 2001-08-28 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (udivsi3, divsi3): Load libcall symbol name in Pmode, then extend it to DImode if necessary. 2001-08-28 Stephen Clarke <Stephen.Clarke@st.com> * config/sh/sh.h (LEGITIMATE_CONSTANT_P): Don't accept DFmode constants in FPU-enabled SHmedia, let them be loaded from memory. 2001-08-28 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (cmpeqdi_media, cmpgtdi_media, cmpgtudi_media): Adjust whitespace in assembly output templates. 2001-08-28 Stephen Clarke <Stephen.Clarke@st.com> * config/sh/sh.md (movdicc_false, movdicc_true, movdicc): Adjust mode of if_then_else. 2001-08-04 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh64.h (CPP_DEFAULT_CPU_SPEC): Override definition in sh.h. 2001-07-26 Andrew Haley <aph@cambridge.redhat.com> Joern Rennecke <amylaar@redhat.com> * config/sh/sh64.h (CPP_DEFAULT_CPU_SPEC): New. (SUBTARGET_CPP_PTR_SPEC): New. (SUBTARGET_CPP_SPEC): Remove. 2001-07-06 Chandrakala Chavva <cchavva@redhat.com> * config/sh/sh.md (movsf_media_nofpu+1, movdf_media_nofpu+1): Fix typo in previous checkin. 2001-07-11 Chandrakala Chavva <cchavva@redhat.com> * config/sh/sh.h (MODES_TIEABLE_P): Fix redact indentations. 2001-07-10 Chandrakala Chavva <cchavva@cygnus.com> Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (MODES_TIEABLE_P): Don't tie modes wider than what single FP register can hold for SHmedia target. 2001-07-06 Chandrakala Chavva <cchavva@redhat.com> Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (movsf_media_nofpu+1, movdf_media_nofpu+1): Do not split into SUBREG. 2001-06-14 Alexandre Oliva <aoliva@redhat.com> * config/sh/ushmedia.h, config/sh/sshmedia.h: Updated signatures and added new functions as specified in SH5 ABI r9. 2001-06-04 Alexandre Oliva <aoliva@redhat.com> * config/sh/lib1funcs.asm (GCC_nested_trampoline): Align to an 8-byte boundary. 2001-06-03 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (dump_table): Add const0_rtx in calls of gen_consttable_4 and gen_consttable_8. Emit multiple labels and consttable_window_ends. 2001-06-03 Graham Stott <grahams@redhat,com> * config/sh/sh.md (movdi split): Remove unused variable last_insn. 2001-05-16 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (print_operand): Handle floating-point pair, vector and matrix registers. * config/sh/sh.h (REGISTER_MOVE_COST): Take floating-pointer vector modes into account. * config/sh/sh.md (movv2sf): Split move between registers into movdf. (movv4sf, movv16sf): Introduce insns that get split only after reload. * config/sh/shmedia.h: Fix Copyright dates. * config/sh/ushmedia.h: Likewise. Move loop counter declarations into conditionals that uses them. (sh_media_FVADD_S, sh_media_FVSUB_S): Fix off-by-one error in loop boundary. * config/sh/sshmedia.h: Fix Copyright dates. (sh_media_PUTCFG): Fix constraints. 2001-05-12 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (TARGET_PTRMEMFUNC_VBIT_LOCATION): Define to ptrmemfunc_vbit_in_delta for SH5. 2001-05-08 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (TARGET_SWITCHES): Document -m5-*. * invoke.texi: Likewise. 2001-04-14 Alexandre Oliva <aoliva@redhat.com> * config/sh/lib1funcs.asm (GCC_push_shmedia_regs, GCC_push_shmedia_regs_nofpu, GCC_pop_shmedia_regs, GCC_pop_shmedia_regs_nofpu): New global symbols. * config/sh/t-sh64 (LIB1ASMFUNCS): Add them. * config/sh/sh.h (SHMEDIA_REGS_STACK_ADJUST): New macro. * config/sh/sh.c (calc_live_regs): Account for PR's saving in compact function with nonlocal labels. (sh_expand_prologue) [SHcompact]: Push SHmedia regs if needed. (sh_expand_epilogue) [SHcompact]: Pop them when appropriate. (initial_elimination_offset): Account for their stack space. * config/sh/sh.md (shmedia_save_restore_regs_compact): New insn. * config/sh/sh.md (movsi_media, movsi_media_nofpu, movqi_media, movhi_media, movdi_media, movdi_media_nofpu, movdf_media, movdf_media_nofpu, movsf_media, movsf_media_nofpu): Require at least one of the operands to be a register. (movv2sf): Likewise. Renamed to movv2sf_i. (movdi, movdf, movv2sf, movv4sf, movv16sf, movsf): prepare_move_operands() before emitting SHmedia insns. 2001-04-03 Alexandre Oliva <aoliva@redhat.com> * config/sh/crti.asm (init, fini) [__SH5__ && ! __SHMEDIA__]: Don't save nor initialize r12. Don't mis-align the stack. Pad the code with a nop. * config/sh/crti.asm: Don't restore r12. Don't mis-align the stack. 2001-03-13 Alexandre Oliva <aoliva@redhat.com> * gcc/longlong.h (__umulsidi3, count_leading_zeros) [__SHMEDIA__]: Implement. 2001-03-11 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md: Set latency of `pt' closer to reality. (movsi_media, movsi_media_nofpu, movdi_media, movdi_media_nofpu, movdf_media, movdf_media_nofpu, movsf_media, movsf_media_nofpu): Set move, load and store type attributes. * config/sh/sh.c (sh_loop_align) [TARGET_SH5]: Set to 3. * config/sh/sh.h (OVERRIDE_OPTIONS) [TARGET_SH5]: Disable profiling. * config/sh/sh.h (PROMOTE_MODE): Sign-extend SImode to DImode. * config/sh/sh-protos.h (sh_media_register_for_return): Declare. * config/sh/sh.c (sh_media_register_for_return): New function. (sh_expand_prologue) [TARGET_SHMEDIA]: Copy r18 to an available branch-target register. (sh_expand_epilogue) [TARGET_SHMEDIA]: Explicitly USE it. * config/sh/sh.md (return_media_i): Use any call-clobbered branch-target register. (return_media): If r18 wasn't copied in the prologue, copy it here. * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE) [TARGET_SHMEDIA]: Clear class FP0_REGS. * config/sh/sh64.h (LINK_SPEC): Removed incorrect default copied from elf.h. 2001-03-08 DJ Delorie <dj@redhat.com> * config/sh/sh.h (OVERRIDE_OPTIONS): Disable relaxing for SHMEDIA. 2001-02-09 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (sibcall_compact): Set fp_mode to single. 2001-02-07 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (INT_ASM_OP) [SHMEDIA64]: Use `.quad'. 2001-02-03 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (INIT_CUMULATIVE_ARGS): Compute size of BLKmode return value correctly for call_cookie. 2001-02-01 Alexandre Oliva <aoliva@redhat.com> * config/sh/crt1.asm (start): Modified so as to call ___setup_argv_and_call_main. 2001-01-26 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (FUNCTION_ARG_ADVANCE): Don't count stack_regs in SHmedia mode. 2001-01-20 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (STRIP_DATALABEL_ENCODING): New macro. (STRIP_NAME_ENCODING): Use it. (ASM_OUTPUT_LABELREF): Likewise. Don't call assemble_name(). 2001-01-19 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (sgeu) [! SHMEDIA]: Fix invocation of prepare_scc_operands(). * config/sh/sh.h (SH_DATALABEL_ENCODING): Change to "#"... (DATALABEL_SYMNAME_P): ... so that we don't need memcmp here. 2001-01-17 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (STRIP_NAME_ENCODING): Strip leading `*'. 2001-01-13 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (shcompact_incoming_args): Use R0_REG. * config/sh/sh.md (R7_REG, R8_REG, R9_REG): Define as constants, used in shcompact_incoming_args. * config/sh/sh.c (sh_expand_epilogue): Fix thinko in previous change. * config/sh/crt1.asm (start) [SH5]: Switch to single-precision mode. * config/sh/lib1funcs.asm (sdivsi3_i4, udivsi3_i4, set_fpscr): Adjust accordingly. * config/sh/sh.c (sh_expand_prologue, sh_expand_epilogue): Simplify. Adjust. Add sanity check. * config/sh/sh.h (TARGET_SWITCHES) [5-compact]: Set FPU_SINGLE_BIT. * config/sh/sh.md (udivsi3_i4_single, divsi3_i4_single): Match TARGET_SHCOMPACT. (udivsi3, divsi3): Use them. (force_mode_for_call): New insn. (call, call_value, sibcall_value): Emit it before SHcompact calls. 2001-01-11 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (call, call_value, sibcall): Make sure the call cookie is non-NULL before taking its value. 2001-01-10 Alexandre Oliva <aoliva@redhat.com> * config.gcc (sh64): Set target_requires_64bit_host_wide_int. 2001-01-09 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (shcompact_incoming_args): Set argument memory block. * config/sh/sh.h (STATIC_CHAIN_REGNUM) [SH5]: Use r1. * config/sh/sh.c (sh_expand_prologue) [SH5]: Use r0 as temporary for stack adjusts. Use MACL and MACH to pass arguments to shcompact_incoming_args. * config/sh/sh.md (shcompact_incoming_args): Adjust. Don't clobber r1. * config/sh/lib1funcs.asm (shcompact_incoming_args): Likewise. (nested_trampoline): Load static chain address into r1. * config/sh/sh.md (movdi_media splits): Fix sign-extension. 2001-01-07 Alexandre Oliva <aoliva@redhat.com * config/sh/sh.c (fpul_operand) [SHMEDIA]: Just call fp_arith_reg_operand(). 2001-01-06 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (casesi): Sign-extend the first two operands, and use signed compares for them. * config/sh/sh.c (dump_table): Don't emit 8-byte constants after 4-byte ones. Instead, inter-leave them, maintaining the 8-byte ones properly aligned. (find_barrier): Account for extra alignment needed for 8-byte wide constants. (machine_dependent_reorg): Require a label for the second 4-byte constant after an 8-byte one. * config/sh/lib1funcs.asm (sdivsi3): Fix typo in yesterday's change. 2001-01-05 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (machine_dependent_reorg) [SHCOMPACT]: Reset last_float when switching float modes. * config/sh/sh.md (movdf) [SH5]: Don't use stack-pointer auto-increment for general-purpose registers. * config/sh/lib1funcs.asm (sdivsi3) [SHMEDIA]: Sign-extend the result. * config/sh/sh.c (sh_expand_prologue) [SH5]: Use r1 as temporary for stack adjust. * config/sh/sh.c (sh_builtin_saveregs): Support using all registers for varargs. 2001-01-01 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (FUNCTION_ARG_ADVANCE): Simplify. * config/sh/sh.h (CALL_COOKIE_STACKSEQ, CALL_COOKIE_STACKSEQ_SHIFT, CALL_COOKIE_STACKSEQ_GET): New macros. (CALL_COOKIE_INT_REG_SHIFT): Adjust. (FUNCTION_ARG_ADVANCE): Use SHCOMPACT_FORCE_ON_STACK. Adjust call_cookie accordingly. (FUNCTION_ARG): Test SHCOMPACT_FORCE_ON_STACK. (SHCOMPACT_BYREF): Likewise. (SHCOMPACT_FORCE_ON_STACK): New macro. * config/sh/sh.c (sh_expand_prologue): Use new call_cookie format. (sh_builtin_saveregs): Likewise. * config/sh/lib1funcs.asm (shcompact_call_trampoline, shcompact_incoming_args): Use new shift values. Support sequences of consecutive and non-consecutive pushes/pops. * config/sh/sh.md (return): Don't explicitly use PR_REG. 2001-01-05 Hans-Peter Nilsson <hpn@cygnus.com> * config/sh/sh.h (TEXT_SECTION): Define. * config/sh/elf.h (ASM_FILE_START): Output TEXT_SECTION_ASM_OP. 2001-01-05 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (INIT_CUMULATIVE_LIBCALL_ARGS): New macro. * config/sh/sh.h (BASE_RETURN_VALUE_REG): Use FP regs for return values on FPU-enabled SHmedia. (FUNCTION_VALUE_REGNO_P): Mark FIRST_FP_RET_REG as used on FPU-enabled SHmedia. (INIT_CUMULATIVE_ARGS): Set up return trampoline only if value is returned in a non-FP reg and is not returned by reference. * config/sh/sh.md (shcompact_return_tramp_i): Change type to jump_ind. 2000-01-04 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (SH_MIN_ALIGN_FOR_CALLEE_COPY): New. (FUNCTION_ARG_CALLEE_COPIES): Require argument to be quad-aligned to be passed by callee-copy reference. 2001-01-03 Alexandre Oliva <aoliva@redhat.com> * config/sh/elf.h (MAX_WCHAR_TYPE_SIZE): Define. * config/sh/sh64.h (MAX_WCHAR_TYPE_SIZE): Undefine. 2001-01-02 Alexandre Oliva <aoliva@redhat.com> * config/sh/lib1funcs.asm (shcompact_call_trampoline): Fix error in copying low-numbered FP regs to r7 and r8. * config/sh/sh.h (FUNCTION_ARG_ADVANCE): Don't request copying of FP regs to general-purpose regs only if the copy was passed on the stack. * config/sh/lib1funcs.asm (shcompact_call_trampoline): Fix typo in copying FP reg to r9. * config/sh/sh.h (FUNCTION_ARG_ADVANCE): Use trampoline to copy FP regs to general-purpose regs only in outgoing calls. * config/sh/sh.md (movdf_media, movsf_media): Revert incorrect change from 2000-10-30. Adjust for 64-bit (or 32-bit) HOST_WIDE_INT. * config/sh/sh.h (struct sh_args): Document all fields. (FUNCTION_OK_FOR_SIBCALL): Functions that receive arguments passed partially on the stack should not consider making sibcalls. * config/sh/sh.h (FUNCTION_ARG_ADVANCE): Add byref regs to stack_regs only for incoming calls. When passing FP args, make sure there are FP regs available before modifying call_cookie. (SHCOMPACT_BYREF): Pass double args in general-purpose registers by reference. 2000-12-30 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (FUNCTION_OK_FOR_SIBCALL) [SHCOMPACT]: Don't attempt to generate sibcalls if the caller got any arguments by reference. * config/sh/lib1funcs.asm (set_fpscr) [SH5]: Default to double. * config/sh/sh.c (dump_table) [SHCOMPACT]: Align DImode and DFmode to 8-byte boundaries. * config/sh/sh.md (shcompact_preserve_incoming_args): New insn. * config/sh/sh.h (CALL_COOKIE_INT_REG_GET): New macro. * config/sh/sh.c (sh_expand_prologue): Preserve args that will be stored in the stack. * config/sh/lib1funcs.asm (ct_main_table, ia_main_table): Arrange for the offsets to have the ISA bit set. (shcompact_call_trampoline): Document. Swap r0 and r1, to match invocation. Use beq instead of bgt to mark end of sequence of loads. (shcompact_incoming_args): Fix store of r2. Use beq instead of bgt to mark end of sequence of stores. * config/sh/sh.c (arith_operand): Don't check whether CONST_OK_FOR_J for now. * config/sh/sh.md (movdf_media, movsf_media): Use HOST_WIDE_INT instead of long for conversion. 2000-12-29 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (print_operand_address): Convert INTVAL to int before passing it to fprintf. 2000-12-28 Alexandre Oliva <aoliva@redhat.com> * config/sh/crt1.asm (start): Reset SR.FD, to enable the FP unit. Call set_fpscr before reading/writing SR. * config/sh/crt1.asm (start): Set SR.SZ and SR.PR, but not SR.FR. Call set_fpscr. * config/sh/lib1funcs.asm: Add `.align 2' directives before SHmedia code. (FMOVD_WORKS): Define on SH5 with FPU. (set_fpscr): Define on SH5. Remove separate _fpscr_values setting. * config/sh/t-sh64 (LIB1ASMFUNCS): Add _set_fpscr instead of _fpscr_values. 2000-12-28 Hans-Peter Nilsson <hpn@cygnus.com> * config/sh/lib1funcs.asm (ct_main_table): Align contents to even address. (ia_main_table): Ditto. 2000-12-27 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (MAX_WCHAR_TYPE_SIZE): Don't define. * config/sh/sh64.h (WCHAR_TYPE, WCHAR_TYPE_SIZE): Reinstate the definitions from sh.h. * config/sh/sh.h (PTRDIFF_TYPE): Define as conditional on TARGET_SH5. (SUBTARGET_CPP_SPEC): Arrange for __PTRDIFF_TYPE__ to be defined. * config/sh/elf.h (PTRDIFF_TYPE): Likewise. * config/sh/sh64.h (SUBTARGET_CPP_SPEC): Likewise. 2000-12-26 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (movdi_media split): Don't add REG_LABEL notes. Increment LABEL_NUSES. From-SVN: r49630
2002-02-09 04:08:08 +01:00
cpu_type=sh
need_64bit_hwint=yes
Contribute sh64-elf. 2002-02-09 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (TARGET_CANNOT_MODIFY_JUMPS_P): Define to... (sh_cannot_modify_jumps_p): New function. 2002-02-05 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (TARGET_MS_BITFIELD_LAYOUT_P): Define to... (sh_ms_bitfield_layout_p): New function. 2002-02-04 Alexandre Oliva <aoliva@redhat.com> Zack Weinberg <zack@codesourcery.com> * config/sh/sh.h (TRAMPOLINE_ADJUST_ADDRESS): Use expand_simple_binop instead of expand_binop. 2002-02-03 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (OVERRIDE_OPTIONS) [! TARGET_SH5]: Disable use of .quad and .uaquad. * config/sh/sh.c (TARGET_ASM_UNALIGNED_DI_OP, TARGET_ASM_ALIGNED_DI_OP): Add comment pointing to the above. 2002-01-24 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (movdi_const, movdi_const_32bit, movdi_const_16bit): Make sure all CONSTs have modes. (sym2PIC): Ditto, but by adjusting all callers. * config/sh/sh.c (calc_live_regs) [TARGET_SHCOMPACT]: Set pr_live if the prologue calls the SHmedia argument decoder or register saver. 2002-01-24 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (TARGET_ASM_UNALIGNED_DI_OP): Define. (TARGET_ASM_ALIGNED_DI_OP): Likewise. (sh_expand_epilogue): Don't emit USE of return target register. (prepare_move_operands): Legitimize DImode PIC addresses. (sh_media_register_for_return): Skip tr0, used to initialize the PIC register. (sh_expand_prologue): Remove explicit USE of return register. (nonpic_symbol_mentioned_p): PC is non-PIC. Don't recurse in CONST_DOUBLEs. UNSPEC_GOTPLT is PIC. * config/sh/sh.h (ASM_OUTPUT_DOUBLE_INT): Removed, obsolete. (OVERRIDE_OPTIONS): Don't disable PIC on SH5. (EXTRA_CONSTRAINT_S): Use MOVI_SHORI_BASE_OPERAND_P instead of EXTRA_CONSTRAINT_T. (GOT_ENTRY_P, GOTPLT_ENTRY_P, GOTOFF_P, PIC_ADDR_P): New. (MOVI_SHORI_BASE_OPERAND_P): New. (NON_PIC_REFERENCE_P, PIC_REFERENCE_P): New. (EXTRA_CONSTRAINT_T): Define in terms of them. (OUTPUT_ADDR_CONST_EXTRA): Handle UNSPEC_GOTPLT. * config/sh/sh.md (movsi_media, movsi_media_nofpu, movdi_media, movdi_media_nofpu): Add SIBCALL_REGS class to alternatives supporting TARGET_REGS. (UNSPEC_GOTPLT): New constant. (movdi split): Move incrementing of LABEL_NUSES... (movdi_const, movdi_const_32bit): Here. Use MOVI_SHORI_BASE_OPERAND_P instead of EXTRA_CONSTRAINT_T. (movdi_const_16bit): New. (call, call_value) [flag_pic]: Use GOTPLT. (call_pop, call_value_pop): New expands. (call_pop_compact, call_pop_rettramp): New insns. (call_value_pop_compact, call_value_pop_rettramp): New insns. (sibcall) [flag_pic]: Use GOT. (builtint_setjmp_receiver): Remove bogus, unused expand. (GOTaddr2picreg): Implement for SHcompact and SHmedia. (*pt, *ptb, ptrel): New insns. (sym2GOT): Handle DImode GOT. (sym2GOTPLT, symGOTPLT2reg): New expands. (sym2PIC): New expand. (shcompact_return_tramp): Use GOTPLT to return trampoline. (shcompact_return_tramp_i): Use return register explicitly. * config/sh/sh.h (OVERRIDE_OPTIONS) [TARGET_SHMEDIA]: Don't disable flag_reorder_blocks. 2002-01-19 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (sibcall_compact): Reorder return, uses and clobbers, for clarity. (sibcall_epilogue) [TARGET_SHCOMPACT]: Mark saving and restoring of r0 in macl as MAYBE_DEAD. 2002-01-18 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (LONG_DOUBLE_TYPE_SIZE): Define. * config/sh/sh.md (movv4sf_i, movv16sf_i): Fix uses of alter_subreg all over. (jump) [TARGET_SHMEDIA]: FAIL to create new jumps after reload, instead of emitting instructions that would require reloading. (casesi_load_media): Add missing modes. 2001-11-09 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (sh_expand_prologue): Mark the PIC register as used if the argument decoder is called. 2001-08-28 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (udivsi3, divsi3): Load libcall symbol name in Pmode, then extend it to DImode if necessary. 2001-08-28 Stephen Clarke <Stephen.Clarke@st.com> * config/sh/sh.h (LEGITIMATE_CONSTANT_P): Don't accept DFmode constants in FPU-enabled SHmedia, let them be loaded from memory. 2001-08-28 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (cmpeqdi_media, cmpgtdi_media, cmpgtudi_media): Adjust whitespace in assembly output templates. 2001-08-28 Stephen Clarke <Stephen.Clarke@st.com> * config/sh/sh.md (movdicc_false, movdicc_true, movdicc): Adjust mode of if_then_else. 2001-08-04 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh64.h (CPP_DEFAULT_CPU_SPEC): Override definition in sh.h. 2001-07-26 Andrew Haley <aph@cambridge.redhat.com> Joern Rennecke <amylaar@redhat.com> * config/sh/sh64.h (CPP_DEFAULT_CPU_SPEC): New. (SUBTARGET_CPP_PTR_SPEC): New. (SUBTARGET_CPP_SPEC): Remove. 2001-07-06 Chandrakala Chavva <cchavva@redhat.com> * config/sh/sh.md (movsf_media_nofpu+1, movdf_media_nofpu+1): Fix typo in previous checkin. 2001-07-11 Chandrakala Chavva <cchavva@redhat.com> * config/sh/sh.h (MODES_TIEABLE_P): Fix redact indentations. 2001-07-10 Chandrakala Chavva <cchavva@cygnus.com> Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (MODES_TIEABLE_P): Don't tie modes wider than what single FP register can hold for SHmedia target. 2001-07-06 Chandrakala Chavva <cchavva@redhat.com> Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (movsf_media_nofpu+1, movdf_media_nofpu+1): Do not split into SUBREG. 2001-06-14 Alexandre Oliva <aoliva@redhat.com> * config/sh/ushmedia.h, config/sh/sshmedia.h: Updated signatures and added new functions as specified in SH5 ABI r9. 2001-06-04 Alexandre Oliva <aoliva@redhat.com> * config/sh/lib1funcs.asm (GCC_nested_trampoline): Align to an 8-byte boundary. 2001-06-03 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (dump_table): Add const0_rtx in calls of gen_consttable_4 and gen_consttable_8. Emit multiple labels and consttable_window_ends. 2001-06-03 Graham Stott <grahams@redhat,com> * config/sh/sh.md (movdi split): Remove unused variable last_insn. 2001-05-16 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (print_operand): Handle floating-point pair, vector and matrix registers. * config/sh/sh.h (REGISTER_MOVE_COST): Take floating-pointer vector modes into account. * config/sh/sh.md (movv2sf): Split move between registers into movdf. (movv4sf, movv16sf): Introduce insns that get split only after reload. * config/sh/shmedia.h: Fix Copyright dates. * config/sh/ushmedia.h: Likewise. Move loop counter declarations into conditionals that uses them. (sh_media_FVADD_S, sh_media_FVSUB_S): Fix off-by-one error in loop boundary. * config/sh/sshmedia.h: Fix Copyright dates. (sh_media_PUTCFG): Fix constraints. 2001-05-12 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (TARGET_PTRMEMFUNC_VBIT_LOCATION): Define to ptrmemfunc_vbit_in_delta for SH5. 2001-05-08 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (TARGET_SWITCHES): Document -m5-*. * invoke.texi: Likewise. 2001-04-14 Alexandre Oliva <aoliva@redhat.com> * config/sh/lib1funcs.asm (GCC_push_shmedia_regs, GCC_push_shmedia_regs_nofpu, GCC_pop_shmedia_regs, GCC_pop_shmedia_regs_nofpu): New global symbols. * config/sh/t-sh64 (LIB1ASMFUNCS): Add them. * config/sh/sh.h (SHMEDIA_REGS_STACK_ADJUST): New macro. * config/sh/sh.c (calc_live_regs): Account for PR's saving in compact function with nonlocal labels. (sh_expand_prologue) [SHcompact]: Push SHmedia regs if needed. (sh_expand_epilogue) [SHcompact]: Pop them when appropriate. (initial_elimination_offset): Account for their stack space. * config/sh/sh.md (shmedia_save_restore_regs_compact): New insn. * config/sh/sh.md (movsi_media, movsi_media_nofpu, movqi_media, movhi_media, movdi_media, movdi_media_nofpu, movdf_media, movdf_media_nofpu, movsf_media, movsf_media_nofpu): Require at least one of the operands to be a register. (movv2sf): Likewise. Renamed to movv2sf_i. (movdi, movdf, movv2sf, movv4sf, movv16sf, movsf): prepare_move_operands() before emitting SHmedia insns. 2001-04-03 Alexandre Oliva <aoliva@redhat.com> * config/sh/crti.asm (init, fini) [__SH5__ && ! __SHMEDIA__]: Don't save nor initialize r12. Don't mis-align the stack. Pad the code with a nop. * config/sh/crti.asm: Don't restore r12. Don't mis-align the stack. 2001-03-13 Alexandre Oliva <aoliva@redhat.com> * gcc/longlong.h (__umulsidi3, count_leading_zeros) [__SHMEDIA__]: Implement. 2001-03-11 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md: Set latency of `pt' closer to reality. (movsi_media, movsi_media_nofpu, movdi_media, movdi_media_nofpu, movdf_media, movdf_media_nofpu, movsf_media, movsf_media_nofpu): Set move, load and store type attributes. * config/sh/sh.c (sh_loop_align) [TARGET_SH5]: Set to 3. * config/sh/sh.h (OVERRIDE_OPTIONS) [TARGET_SH5]: Disable profiling. * config/sh/sh.h (PROMOTE_MODE): Sign-extend SImode to DImode. * config/sh/sh-protos.h (sh_media_register_for_return): Declare. * config/sh/sh.c (sh_media_register_for_return): New function. (sh_expand_prologue) [TARGET_SHMEDIA]: Copy r18 to an available branch-target register. (sh_expand_epilogue) [TARGET_SHMEDIA]: Explicitly USE it. * config/sh/sh.md (return_media_i): Use any call-clobbered branch-target register. (return_media): If r18 wasn't copied in the prologue, copy it here. * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE) [TARGET_SHMEDIA]: Clear class FP0_REGS. * config/sh/sh64.h (LINK_SPEC): Removed incorrect default copied from elf.h. 2001-03-08 DJ Delorie <dj@redhat.com> * config/sh/sh.h (OVERRIDE_OPTIONS): Disable relaxing for SHMEDIA. 2001-02-09 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (sibcall_compact): Set fp_mode to single. 2001-02-07 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (INT_ASM_OP) [SHMEDIA64]: Use `.quad'. 2001-02-03 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (INIT_CUMULATIVE_ARGS): Compute size of BLKmode return value correctly for call_cookie. 2001-02-01 Alexandre Oliva <aoliva@redhat.com> * config/sh/crt1.asm (start): Modified so as to call ___setup_argv_and_call_main. 2001-01-26 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (FUNCTION_ARG_ADVANCE): Don't count stack_regs in SHmedia mode. 2001-01-20 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (STRIP_DATALABEL_ENCODING): New macro. (STRIP_NAME_ENCODING): Use it. (ASM_OUTPUT_LABELREF): Likewise. Don't call assemble_name(). 2001-01-19 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (sgeu) [! SHMEDIA]: Fix invocation of prepare_scc_operands(). * config/sh/sh.h (SH_DATALABEL_ENCODING): Change to "#"... (DATALABEL_SYMNAME_P): ... so that we don't need memcmp here. 2001-01-17 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (STRIP_NAME_ENCODING): Strip leading `*'. 2001-01-13 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (shcompact_incoming_args): Use R0_REG. * config/sh/sh.md (R7_REG, R8_REG, R9_REG): Define as constants, used in shcompact_incoming_args. * config/sh/sh.c (sh_expand_epilogue): Fix thinko in previous change. * config/sh/crt1.asm (start) [SH5]: Switch to single-precision mode. * config/sh/lib1funcs.asm (sdivsi3_i4, udivsi3_i4, set_fpscr): Adjust accordingly. * config/sh/sh.c (sh_expand_prologue, sh_expand_epilogue): Simplify. Adjust. Add sanity check. * config/sh/sh.h (TARGET_SWITCHES) [5-compact]: Set FPU_SINGLE_BIT. * config/sh/sh.md (udivsi3_i4_single, divsi3_i4_single): Match TARGET_SHCOMPACT. (udivsi3, divsi3): Use them. (force_mode_for_call): New insn. (call, call_value, sibcall_value): Emit it before SHcompact calls. 2001-01-11 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (call, call_value, sibcall): Make sure the call cookie is non-NULL before taking its value. 2001-01-10 Alexandre Oliva <aoliva@redhat.com> * config.gcc (sh64): Set target_requires_64bit_host_wide_int. 2001-01-09 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (shcompact_incoming_args): Set argument memory block. * config/sh/sh.h (STATIC_CHAIN_REGNUM) [SH5]: Use r1. * config/sh/sh.c (sh_expand_prologue) [SH5]: Use r0 as temporary for stack adjusts. Use MACL and MACH to pass arguments to shcompact_incoming_args. * config/sh/sh.md (shcompact_incoming_args): Adjust. Don't clobber r1. * config/sh/lib1funcs.asm (shcompact_incoming_args): Likewise. (nested_trampoline): Load static chain address into r1. * config/sh/sh.md (movdi_media splits): Fix sign-extension. 2001-01-07 Alexandre Oliva <aoliva@redhat.com * config/sh/sh.c (fpul_operand) [SHMEDIA]: Just call fp_arith_reg_operand(). 2001-01-06 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (casesi): Sign-extend the first two operands, and use signed compares for them. * config/sh/sh.c (dump_table): Don't emit 8-byte constants after 4-byte ones. Instead, inter-leave them, maintaining the 8-byte ones properly aligned. (find_barrier): Account for extra alignment needed for 8-byte wide constants. (machine_dependent_reorg): Require a label for the second 4-byte constant after an 8-byte one. * config/sh/lib1funcs.asm (sdivsi3): Fix typo in yesterday's change. 2001-01-05 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (machine_dependent_reorg) [SHCOMPACT]: Reset last_float when switching float modes. * config/sh/sh.md (movdf) [SH5]: Don't use stack-pointer auto-increment for general-purpose registers. * config/sh/lib1funcs.asm (sdivsi3) [SHMEDIA]: Sign-extend the result. * config/sh/sh.c (sh_expand_prologue) [SH5]: Use r1 as temporary for stack adjust. * config/sh/sh.c (sh_builtin_saveregs): Support using all registers for varargs. 2001-01-01 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (FUNCTION_ARG_ADVANCE): Simplify. * config/sh/sh.h (CALL_COOKIE_STACKSEQ, CALL_COOKIE_STACKSEQ_SHIFT, CALL_COOKIE_STACKSEQ_GET): New macros. (CALL_COOKIE_INT_REG_SHIFT): Adjust. (FUNCTION_ARG_ADVANCE): Use SHCOMPACT_FORCE_ON_STACK. Adjust call_cookie accordingly. (FUNCTION_ARG): Test SHCOMPACT_FORCE_ON_STACK. (SHCOMPACT_BYREF): Likewise. (SHCOMPACT_FORCE_ON_STACK): New macro. * config/sh/sh.c (sh_expand_prologue): Use new call_cookie format. (sh_builtin_saveregs): Likewise. * config/sh/lib1funcs.asm (shcompact_call_trampoline, shcompact_incoming_args): Use new shift values. Support sequences of consecutive and non-consecutive pushes/pops. * config/sh/sh.md (return): Don't explicitly use PR_REG. 2001-01-05 Hans-Peter Nilsson <hpn@cygnus.com> * config/sh/sh.h (TEXT_SECTION): Define. * config/sh/elf.h (ASM_FILE_START): Output TEXT_SECTION_ASM_OP. 2001-01-05 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (INIT_CUMULATIVE_LIBCALL_ARGS): New macro. * config/sh/sh.h (BASE_RETURN_VALUE_REG): Use FP regs for return values on FPU-enabled SHmedia. (FUNCTION_VALUE_REGNO_P): Mark FIRST_FP_RET_REG as used on FPU-enabled SHmedia. (INIT_CUMULATIVE_ARGS): Set up return trampoline only if value is returned in a non-FP reg and is not returned by reference. * config/sh/sh.md (shcompact_return_tramp_i): Change type to jump_ind. 2000-01-04 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (SH_MIN_ALIGN_FOR_CALLEE_COPY): New. (FUNCTION_ARG_CALLEE_COPIES): Require argument to be quad-aligned to be passed by callee-copy reference. 2001-01-03 Alexandre Oliva <aoliva@redhat.com> * config/sh/elf.h (MAX_WCHAR_TYPE_SIZE): Define. * config/sh/sh64.h (MAX_WCHAR_TYPE_SIZE): Undefine. 2001-01-02 Alexandre Oliva <aoliva@redhat.com> * config/sh/lib1funcs.asm (shcompact_call_trampoline): Fix error in copying low-numbered FP regs to r7 and r8. * config/sh/sh.h (FUNCTION_ARG_ADVANCE): Don't request copying of FP regs to general-purpose regs only if the copy was passed on the stack. * config/sh/lib1funcs.asm (shcompact_call_trampoline): Fix typo in copying FP reg to r9. * config/sh/sh.h (FUNCTION_ARG_ADVANCE): Use trampoline to copy FP regs to general-purpose regs only in outgoing calls. * config/sh/sh.md (movdf_media, movsf_media): Revert incorrect change from 2000-10-30. Adjust for 64-bit (or 32-bit) HOST_WIDE_INT. * config/sh/sh.h (struct sh_args): Document all fields. (FUNCTION_OK_FOR_SIBCALL): Functions that receive arguments passed partially on the stack should not consider making sibcalls. * config/sh/sh.h (FUNCTION_ARG_ADVANCE): Add byref regs to stack_regs only for incoming calls. When passing FP args, make sure there are FP regs available before modifying call_cookie. (SHCOMPACT_BYREF): Pass double args in general-purpose registers by reference. 2000-12-30 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (FUNCTION_OK_FOR_SIBCALL) [SHCOMPACT]: Don't attempt to generate sibcalls if the caller got any arguments by reference. * config/sh/lib1funcs.asm (set_fpscr) [SH5]: Default to double. * config/sh/sh.c (dump_table) [SHCOMPACT]: Align DImode and DFmode to 8-byte boundaries. * config/sh/sh.md (shcompact_preserve_incoming_args): New insn. * config/sh/sh.h (CALL_COOKIE_INT_REG_GET): New macro. * config/sh/sh.c (sh_expand_prologue): Preserve args that will be stored in the stack. * config/sh/lib1funcs.asm (ct_main_table, ia_main_table): Arrange for the offsets to have the ISA bit set. (shcompact_call_trampoline): Document. Swap r0 and r1, to match invocation. Use beq instead of bgt to mark end of sequence of loads. (shcompact_incoming_args): Fix store of r2. Use beq instead of bgt to mark end of sequence of stores. * config/sh/sh.c (arith_operand): Don't check whether CONST_OK_FOR_J for now. * config/sh/sh.md (movdf_media, movsf_media): Use HOST_WIDE_INT instead of long for conversion. 2000-12-29 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (print_operand_address): Convert INTVAL to int before passing it to fprintf. 2000-12-28 Alexandre Oliva <aoliva@redhat.com> * config/sh/crt1.asm (start): Reset SR.FD, to enable the FP unit. Call set_fpscr before reading/writing SR. * config/sh/crt1.asm (start): Set SR.SZ and SR.PR, but not SR.FR. Call set_fpscr. * config/sh/lib1funcs.asm: Add `.align 2' directives before SHmedia code. (FMOVD_WORKS): Define on SH5 with FPU. (set_fpscr): Define on SH5. Remove separate _fpscr_values setting. * config/sh/t-sh64 (LIB1ASMFUNCS): Add _set_fpscr instead of _fpscr_values. 2000-12-28 Hans-Peter Nilsson <hpn@cygnus.com> * config/sh/lib1funcs.asm (ct_main_table): Align contents to even address. (ia_main_table): Ditto. 2000-12-27 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (MAX_WCHAR_TYPE_SIZE): Don't define. * config/sh/sh64.h (WCHAR_TYPE, WCHAR_TYPE_SIZE): Reinstate the definitions from sh.h. * config/sh/sh.h (PTRDIFF_TYPE): Define as conditional on TARGET_SH5. (SUBTARGET_CPP_SPEC): Arrange for __PTRDIFF_TYPE__ to be defined. * config/sh/elf.h (PTRDIFF_TYPE): Likewise. * config/sh/sh64.h (SUBTARGET_CPP_SPEC): Likewise. 2000-12-26 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (movdi_media split): Don't add REG_LABEL notes. Increment LABEL_NUSES. From-SVN: r49630
2002-02-09 04:08:08 +01:00
;;
esac
tm_file=${cpu_type}/${cpu_type}.h
config.gcc: Set default for xmake_file at top, not bottom. * config.gcc: Set default for xmake_file at top, not bottom. Change places that set xmake_file to "none" to set to the empty string instead, or remove them entirely if there is no default xmake_file for this cpu_type. Remove references to deleted files. * config/x-lynx, config/convex/x-convex, config/elxsi/x-elxsi, config/i386/x-isc, config/i386/x-isc3, config/i386/x-ncr3000, config/i386/x-next, config/i386/x-sco, config/i386/x-sysv3, config/i386/x-vsta, config/i860/x-sysv4, config/m68k/x-amix, config/m68k/x-apollo68, config/m68k/x-ccur, config/m68k/x-crds, config/m68k/x-hp2bsd, config/m68k/x-mot3300, config/m68k/x-mot3300-gas, config/m68k/x-tower, config/m88k/x-sysv4, config/mips/x-dec-osf1, config/mips/x-sni-svr4, config/mips/x-ultrix, config/romp/x-mach, config/romp/x-romp, config/rs6000/x-beos, config/rs6000/x-lynx, config/rs6000/x-mach, config/rs6000/x-sysv4, config/sparc/x-sysv4: Delete. * config/a29k/x-unix, config/i386/x-aix, config/i386/x-osf1elf, config/i386/x-osfrose, config/m68k/x-dpx2, config/mips/x-iris3, config/mips/x-mips, config/mips/x-osfrose, config/mips/x-sony, config/mips/x-sysv, config/rs6000/x-aix31: Just set CLIB to -lld or -lmld, as appropriate. * config/arm/x-riscix, config/i370/x-oe, config/i386/x-dgux, config/i386/x-sco4, config/i386/x-sco5, config/m68k/x-hp320, config/m68k/x-hp320g, config/m68k/x-next, config/m88k/x-dgux, config/mips/x-iris, config/pa/x-pa: Just set (some of) FIXPROTO_DEFINES, STMP_FIXPROTO, OTHER_FIXINCLUDES_DIRS. * config/i386/x-djgpp: Don't set LN or LN_S. * config/m88k/x-dolph: Don't define __m88k__. * config/m88k/x-tekXD88: Don't set AR_FLAGS. * config/pa/x-pa-mpeix: Just set up quadlib.asm. * config/i860/fx2800.h: No need to #undef SVR4. 38 x-host fragments remain, 2 x-cpu. From-SVN: r41181
2001-04-07 22:44:56 +02:00
if test -f ${srcdir}/config/${cpu_type}/${cpu_type}-protos.h
then
config.gcc: Set default for xmake_file at top, not bottom. * config.gcc: Set default for xmake_file at top, not bottom. Change places that set xmake_file to "none" to set to the empty string instead, or remove them entirely if there is no default xmake_file for this cpu_type. Remove references to deleted files. * config/x-lynx, config/convex/x-convex, config/elxsi/x-elxsi, config/i386/x-isc, config/i386/x-isc3, config/i386/x-ncr3000, config/i386/x-next, config/i386/x-sco, config/i386/x-sysv3, config/i386/x-vsta, config/i860/x-sysv4, config/m68k/x-amix, config/m68k/x-apollo68, config/m68k/x-ccur, config/m68k/x-crds, config/m68k/x-hp2bsd, config/m68k/x-mot3300, config/m68k/x-mot3300-gas, config/m68k/x-tower, config/m88k/x-sysv4, config/mips/x-dec-osf1, config/mips/x-sni-svr4, config/mips/x-ultrix, config/romp/x-mach, config/romp/x-romp, config/rs6000/x-beos, config/rs6000/x-lynx, config/rs6000/x-mach, config/rs6000/x-sysv4, config/sparc/x-sysv4: Delete. * config/a29k/x-unix, config/i386/x-aix, config/i386/x-osf1elf, config/i386/x-osfrose, config/m68k/x-dpx2, config/mips/x-iris3, config/mips/x-mips, config/mips/x-osfrose, config/mips/x-sony, config/mips/x-sysv, config/rs6000/x-aix31: Just set CLIB to -lld or -lmld, as appropriate. * config/arm/x-riscix, config/i370/x-oe, config/i386/x-dgux, config/i386/x-sco4, config/i386/x-sco5, config/m68k/x-hp320, config/m68k/x-hp320g, config/m68k/x-next, config/m88k/x-dgux, config/mips/x-iris, config/pa/x-pa: Just set (some of) FIXPROTO_DEFINES, STMP_FIXPROTO, OTHER_FIXINCLUDES_DIRS. * config/i386/x-djgpp: Don't set LN or LN_S. * config/m88k/x-dolph: Don't define __m88k__. * config/m88k/x-tekXD88: Don't set AR_FLAGS. * config/pa/x-pa-mpeix: Just set up quadlib.asm. * config/i860/fx2800.h: No need to #undef SVR4. 38 x-host fragments remain, 2 x-cpu. From-SVN: r41181
2001-04-07 22:44:56 +02:00
tm_p_file=${cpu_type}/${cpu_type}-protos.h
fi
extra_modes=
if test -f ${srcdir}/config/${cpu_type}/${cpu_type}-modes.def
then
extra_modes=${cpu_type}/${cpu_type}-modes.def
fi
config.gcc (extra_options): New variable for listing option files. * config.gcc (extra_options): New variable for listing option files. Add ${cpu_type}/${cpu_type}.opt to it if that file exists. * configure.ac (extra_opt_files): New AC_SUBST variable. (tm_file_list, tm_include_list): Include options.h first. * configure: Regenerate. * Makefile.in (extra_opt_files, ALL_OPT_FILES): New variables. (s-options): Use $(ALL_OPT_FILES) instead of $(lang_opt_files) (s-options-h): New rule. (options.h): Depend on it. (TEXI_GCCINT_FILES): Add options.texi. * hooks.h (hook_bool_size_t_constcharptr_int_true): Declare. * hooks.c (hook_bool_size_t_constcharptr_int_true): New function. * target.h (gcc_target): Add default_target_flags and handle_option. * target-def.h (TARGET_DEFAULT_TARGET_FLAGS) (TARGET_HANDLE_OPTION): New macros. (TARGET_INITIALIZER): Include them. * opt-functions.awk (opt_args, nth_arg): New functions. (switch_flags): Handle the "Target" flag. (var_args): Delete. (var_name): Use opt_args and nth_arg. (var_set, var_ref): Likewise. Handle "Mask" and "InverseMask". * opth-gen.awk: Declare target_flags. Declare MASK_* and TARGET_* macros for the "Mask" and "InverseMask" options. * opts.h (cl_var_cond): New enum. (cl_option): Replace the "has_set_value" and "set_value" fields with "var_cond" and "var_value". (CL_TARGET): New macro. (option_enabled, print_filtered_help): Declare. (decode_options): Move definition. * opts.c (handle_option): Search for the original option before removing any "no-" prefix. Handle CL_TARGET. Adjust for the new var_cond and var_value fields. Use targetm.handle_option to handle target options. (decode_options): Set target_flags to targetm.default_target_flags. (print_filtered_help): Make global. Handle CL_TARGET. (option_enabled): New function. * toplev.c (target_switches): Guard with #ifdef TARGET_SWITCHES. (display_target_options, set_target_switch, print_switch_values) (default_pch_valid_p): Guard uses of target_switches with #ifdef TARGET_SWITCHES. Also... (display_target_options): Display the CL_TARGET entries in cl_options. (set_target_option): Don't complain about the "" option when TARGET_SWITCHES is undefined. (print_switch_values): Use option_enabled. (default_pch_valid_p): Check cl_options[] when looking for something that has changed the value of target_flags. * c.opt: Remove documentation from top of file. * doc/gccint.texi: Add an "Options" chapter. Include options.texi. * doc/sourecebuild.texi: Refer to the new options documentation instead of c.opt. Document machine-specific .opt files. * doc/tm.texi (target_flags): Say that this variable is declared by options.h. (TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Document. (TARGET_SWITCHES, TARGET_OPTIONS): Refer to the option files as an alternative. * doc/options.texi: New file. From-SVN: r96448
2005-03-14 21:18:43 +01:00
if test -f ${srcdir}/config/${cpu_type}/${cpu_type}.opt
then
extra_options="${extra_options} ${cpu_type}/${cpu_type}.opt"
fi
case ${target} in
i[34567]86-w64-*)
tm_file="i386/biarch32.h ${tm_file}"
;;
esac
case ${target} in
i[34567]86-*-*)
if test "x$enable_cld" = xyes; then
tm_defines="${tm_defines} USE_IX86_CLD=1"
fi
tm_file="vxworks-dummy.h ${tm_file}"
;;
x86_64-*-*)
tm_file="i386/biarch64.h ${tm_file}"
if test "x$enable_cld" = xyes; then
tm_defines="${tm_defines} USE_IX86_CLD=1"
fi
tm_file="vxworks-dummy.h ${tm_file}"
;;
esac
# On a.out targets, we need to use collect2.
case ${target} in
*-*-*aout*)
use_collect2=yes
;;
mips.md: Add unspec #2. 2001-09-15 Eric Christopher <echristo@redhat.com> * config/mips/mips.md: Add unspec #2. (reload_indi): Use. (reload_outdi): Ditto. (reload_outsi): Ditto. (HILO_delay): New. 2001-09-15 Eric Christopher <echristo@redhat.com> Jason Eckhardt <jle@redhat.com> * config.gcc: Add mipsisa32 target and mipsisa32-linux target. * config/mips/isa32-linux.h: New file. * config/mips/isa3264.h: Ditto. * config/mips/mips-protos.h: Add mips_hard_regno_nregs. * config/mips/mips.c (mips_hard_regno_nregs): Move here from mips.h. (output_block_mode): Support MEABI. (function_arg): Ditto. Fix floating point arg passing. (mips_va_start): Ditto. (override_options): Add isas 32 and 64, meabi, mips32 and mips64 processors. (mips_asm_file_start): Add new section to pass abi to gdb. (function_arg_pass_by_reference): Support MEABI. (mips_parse_cpu): Support mips32 and mips64 processors. * config/mips/mips.h: Support ABI_MEABI, TARGET_MIPS4KC, TARGET_MIPS5KC. Support isa32 and isa64. (processor_type): Add r4kc, r5kc, r20kc. (GENERATE_MULT3_SI): New. (GENERATE_MULT3_DI): Ditto. (GENERATE_MULT3): Remove. (ISA_HAS_64BIT_REGS): Add isa == 64. (ISA_HAS_8CC): Add mips_isa = 32 and 64. (ISA_HAS_MADD_MSUB): New. (ISA_HAS_CLZ_CLO): Ditto. (ISA_HAS_DCLZ_DCLO): Ditto. (ABI_GAS_ASM_SPEC): New. (GAS_ASM_SPEC): Use. Add support for mips32, mips64. (ASM_SPEC): Ditto. (LINK_SPEC): Ditto. (SUBTARGET_CC1_SPEC): Ditto. (SUBTARGET_CPP_SIZE_SPEC): Ditto. (PAD_VARARGS_DOWN): Support MEABI. (HARD_REGNO_NREGS): Move to mips.c. (ASM_OUTPUT_IDENT): Add #undef. * config/mips/mips.md: Add r4kc, r5kc, r20kc. (mulsi3): Use GENERATE_MULT3_SI. (mulsi3_mult3): Ditto. Support mips32, mips64. (mul_acc_si): Use ISA_HAS_MADD_MSUB. (mul_sub_si): New pattern. (unnamed splitters): New. (muldi3): Use GENERATE_MULT3_DI. (muldi3_internal2): Ditto. (movdicc): Support mips32. * config/mips/t-isa3264: New file. From-SVN: r45623
2001-09-15 04:03:14 +02:00
esac
# Common parts for widely ported systems.
case ${target} in
*-*-darwin*)
tm_file="${tm_file} darwin.h"
case ${target} in
*-*-darwin[912]*)
tm_file="${tm_file} darwin9.h"
;;
esac
tm_file="${tm_file} ${cpu_type}/darwin.h"
tm_p_file="${tm_p_file} darwin-protos.h"
Index: ChangeLog 2005-09-28 Geoffrey Keating <geoffk@apple.com> * Makefile.tpl (BASE_TARGET_EXPORTS): Add LIPO, STRIP. (LIPO_FOR_TARGET): New. (CONFIGURED_LIPO_FOR_TARGET): New. (USUAL_LIPO_FOR_TARGET): New. (STRIP_FOR_TARGET): New. (CONFIGURED_STRIP_FOR_TARGET): New. (USUAL_STRIP_FOR_TARGET): New. * Makefile.def (flags_to_pass): Add LIPO_FOR_TARGET and STRIP_FOR_TARGET. * configure.in: Set LIPO_FOR_TARGET, STRIP_FOR_TARGET, CONFIGURED_LIPO_FOR_TARGET, CONFIGURED_STRIP_FOR_TARGET. * Makefile.in: Regenerate. * configure.in: Regenerate. Index: gcc/ChangeLog 2005-09-28 Geoffrey Keating <geoffk@apple.com> * Makefile.in: Export LIPO_FOR_TARGET, STRIP_FOR_TARGET. (stage1-start): Delete old libgcc and libunwind before moving anything into the stage directory. (stage2-start): Likewise. (stage3-start): Likewise. (stage4-start): Likewise. (stageprofile-start): Likewise. (stagefeedback-start): Likewise. * config.gcc (*-*-darwin*): Automatically use CPU-specific darwin.h header in tm_file and CPU-specific t-darwin in tmake_file. (i[34567]86-*-darwin*): Don't change tm_file. (powerpc-*-darwin*): Don't change tm_file or tmake_file. * config/darwin.h (REAL_LIBGCC_SPEC): Rewrite to use proper libgcc shared library stub for target OS version. * config/t-slibgcc-darwin (SHLIB_SOLINK): Delete. (SHLIB_LINK): Don't make SHLIB_SOLINK. (SHLIB_INSTALL): Don't install SHLIB_SOLINK. (libgcc_s.%.dylib): New. (LIBGCC): Define. (install-darwin-libgcc-stubs): New. (INSTALL_LIBGCC): New append. * config/i386/darwin-libgcc.10.4.ver: New. * config/i386/darwin-libgcc.10.5.ver: New. * config/i386/t-darwin: New. * config/rs6000/darwin-libgcc.10.4.ver: New. * config/rs6000/darwin-libgcc.10.5.ver: New. * config/rs6000/darwin.h (REAL_LIBGCC_SPEC): Delete. * config/rs6000/t-darwin (SHLIB_VERPFX): Define. From-SVN: r104747
2005-09-29 01:50:06 +02:00
tmake_file="t-darwin ${cpu_type}/t-darwin t-slibgcc-darwin"
target_gtfiles="\$(srcdir)/config/darwin.c"
config.gcc (*-*-darwin*): Add darwin.opt to $extra_options. * config.gcc (*-*-darwin*): Add darwin.opt to $extra_options. (i[34567]86-pc-msdosdjgpp*): Likewise i386/djgpp.opt. (i[34567]86-*-lynxos*, powerpc-*-lynxos*): Likewise lynx.opt. (i[34567]86-*-sco3.2v5*): Likewise i386/sco5.opt. (i[34567]86-*-pe, i[34567]86-*-cygwin*, i[34567]86-*-mingw32*) (i[34567]86-*-uwin*): Likewise i386/cygming.opt. * config/darwin.h (darwin_one_byte_bool, darwin_fix_and_continue) (darwin_fix_and_continue_switch, SUBTARGET_OPTIONS): Delete. * config/darwin.c (darwin_one_byte_bool, darwin_fix_and_continue) (darwin_fix_and_continue_switch): Delete. * config/lynx.h (SUBTARGET_OS_LYNX_SWITCHES): Delete. (SUBTARGET_SWITCHES): Delete. * config/i386/i386.h (target_flags, MASK_80387, MASK_RTD) (MASK_ALIGN_DOUBLE, MASK_SVR3_SHLIB, MASK_IEEE_FP, MASK_FLOAT_RETURNS) (MASK_NO_FANCY_MATH_387, MASK_OMIT_LEAF_FRAME_POINTER) (MASK_STACK_PROBE, MASK_NO_ALIGN_STROPS, MASK_INLINE_ALL_STROPS) (MASK_NO_PUSH_ARGS, MASK_ACCUMULATE_OUTGOING_ARGS, MASK_MMX) (MASK_SSE, MASK_SSE2, MASK_SSE3, MASK_3DNOW, MASK_3DNOW_A) (MASK_128BIT_LONG_DOUBLE, MASK_64BIT, MASK_MS_BITFIELD_LAYOUT) (MASK_TLS_DIRECT_SEG_REFS, MASK_NO_RED_ZONE, TARGET_80387) (TARGET_RTD, TARGET_ALIGN_DOUBLE, TARGET_PUSH_ARGS) (TARGET_ACCUMULATE_OUTGOING_ARGS, TARGET_SVR3_SHLIB, TARGET_IEEE_FP) (TARGET_128BIT_LONG_DOUBLE, TARGET_NO_FANCY_MATH_387) (TARGET_USE_FANCY_MATH_387, TARGET_OMIT_LEAF_FRAME_POINTER) (TARGET_DEBUG_ADDR, TARGET_DEBUG_ARG): Delete. (TARGET_FLOAT_RETURNS_IN_80387): Make an alias of TARGET_FLOAT_RETURNS. (TARGET_64BIT): Undef before redefining. (TARGET_TLS_DIRECT_SEG_REFS, TARGET_STACK_PROBE) (TARGET_ALIGN_STRINGOPS, TARGET_INLINE_ALL_STRINGOPS, TARGET_SSE) (TARGET_SSE2, TARGET_SSE3, TARGET_MMX, TARGET_3DNOW, TARGET_3DNOW_A) (TARGET_RED_ZONE, TARGET_USE_MS_BITFIELD_LAYOUT, TARGET_SWITCHES) (TARGET_OPTIONS, SUBTARGET_SWITCHES, SUBTARGET_OPTIONS) (ix86_fpmath_string, ix86_tls_dialect_string, ix86_cmodel_string) (ix86_asm_string, ix86_regparm, ix86_regparm_string) (ix86_preferred_stack_boundary_string, ix86_branch_cost_string) (ix86_debug_arg_string, ix86_debug_addr_string) (ix86_align_loops_string, ix86_align_jumps_string) (ix86_align_funcs_string): Delete. * config/i386/cygming.h (MASK_NOP_FUN_DLLIMPORT) (TARGET_NOP_FUN_DLLIMPORT, SUBTARGET_SWITCHES): Delete. * config/i386/djgpp.h (MASK_BNU210, SUBTARGET_SWITCHES): Delete. (SUBTARGET_OVERRIDE_OPTIONS): Check TARGET_BNU210. * config/i386/lynx.h (SUBTARGET_SWITCHES): Delete. * config/i386/sco5.h (MASK_COFF, TARGET_ELF) (SUBTARGET_SWITCHES): Delete. * config/i386/i386.c (ix86_debug_arg_string): Delete. (ix86_debug_addr_string): Delete. (ix86_cmodel_string, ix86_asm_string, ix86_tls_dialect_string) (ix86_fpmath_string, ix86_regparm_string, ix86_regparm) (ix86_align_loops_string, ix86_align_jumps_string) (ix86_preferred_stack_boundary_string, ix86_branch_cost_string) (ix86_align_funcs_string): Make static. (TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Override defaults. (ix86_handle_option): New function. (TARGET_USE_MS_BITFIELD_LAYOUT): Delete. (ix86_ms_bitfield_layout_p): Check TARGET_MS_BITFIELD_LAYOUT. * config/rs6000/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): Remove handling of darwin_fix_and_continue_switch. (darwin_one_byte_bool): Delete. * config/rs6000/lynx.h (EXTRA_SUBTARGET_SWITCHES): Delete. * config/rs6000/rs6000.c (rs6000_override_options): Update assignment to darwin_one_byte_bool. * config/darwin.opt, config/lynx.opt, config/i386/cygming.opt, * config/i386/djgpp.opt, config/i386/i386.opt, * config/i386/sco5.opt: New files. From-SVN: r98495
2005-04-21 09:35:09 +02:00
extra_options="${extra_options} darwin.opt"
c_target_objs="${c_target_objs} darwin-c.o"
cxx_target_objs="${cxx_target_objs} darwin-c.o"
fortran_target_objs="darwin-f.o"
extra_objs="darwin.o"
extra_gcc_objs="darwin-driver.o"
default_use_cxa_atexit=yes
use_gcc_stdint=wrap
case ${enable_threads} in
"" | yes | posix) thread_file='posix' ;;
esac
;;
*-*-freebsd[12] | *-*-freebsd[12].* | *-*-freebsd*aout*)
# This is the place-holder for the generic a.out configuration
# of FreeBSD. No actual configuration resides here since
# there was only ever a bare-bones ix86 configuration for
# a.out and it exists solely in the machine-specific section.
# This place-holder must exist to avoid dropping into
# the generic ELF configuration of FreeBSD (i.e. it must be
# ordered before that section).
;;
*-*-freebsd*)
# This is the generic ELF configuration of FreeBSD. Later
# machine-specific sections may refine and add to this
# configuration.
#
# Due to tm_file entry ordering issues that vary between cpu
# architectures, we only define fbsd_tm_file to allow the
# machine-specific section to dictate the final order of all
# entries of tm_file with the minor exception that components
# of the tm_file set here will always be of the form:
#
# freebsd<version_number>.h [freebsd-<conf_option>.h ...] freebsd-spec.h freebsd.h
#
# The machine-specific section should not tamper with this
# ordering but may order all other entries of tm_file as it
# 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"
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
;;
config.gcc (i?86-*-darwin): Add 64-bit HWI support. 2006-09-08 Eric Christopher <echristo@apple.com> * config.gcc (i?86-*-darwin): Add 64-bit HWI support. * config/t-slibgcc-darwin: Support x86_64 multilib. * config/i386/i386.h (JUMP_TABLES_IN_TEXT_SECTION): Return 1 for x86_64-darwin. * config/i386/t-darwin: Add m64 multilib. (LIB2_SIDITI_CONV_FUNCS): Use. (LIB2FUNCS_EXTRA): Ditto. * config/i386/darwin.h: Support x86_64. * config/i386/i386.c (override_options): Turn on flag_pic for x86_64-darwin. Disable flag_omit_pointer. (get_pc_thunk_name): Assert !TARGET_64BIT. (legitimate_address_p): Disable machopic addressing for x86_64. (legitimize_pic_address): Ditto. (ix86_expand_move): Ditto. (ix86_expand_call): Ditto. (machopic_output_stub): Ditto. * config/darwin.c (machopic_select_section): Support literal16. (machopic_select_rtx_section): Ditto. * config/darwin-sections.def: Ditto. * config/darwin-64.c: New. 2006-09-08 Eric Christopher <echristo@apple.com> * gcc.target/i386/20060512-3.c: Run test on ilp32 only. * gcc.target/i386/memcpy-1.c: Ditto. * gcc.target/i386/asm-1.c: Ditto. * gcc.target/i386/20060512-4.c: Ditto. * gcc.target/i386/compress-float-387.c: Ditto. * gcc.target/i386/20060512-1.c: Ditto. * gcc.target/i386/compress-float-sse.c: Ditto. * gcc.target/i386/20060512-2.c: Ditto. * gcc.target/i386/compress-float-sse-pic.c: Ditto. * gcc.target/i386/stack-prot-kernel.c: Ditto. * gcc.target/i386/compress-float-387-pic.c: Ditto. * gcc.dg/pr26449.c: Ditto. * gcc.dg/attr-ms_struct-2.c: Ditto. * gcc.dg/attr-ms_struct-1.c: Ditto. * gcc.misc-tests/linkage.exp: Fix 64-bit darwin support. 2006-09-08 Eric Christopher <echristo@apple.com> * configure.ac: Add 64-bit HWI support for i?86-darwin. From-SVN: r116795
2006-09-09 02:27:47 +02:00
*)
echo 'Unknown thread configuration for FreeBSD'
exit 1
;;
esac
fbsd_tm_file="${fbsd_tm_file} freebsd-spec.h freebsd.h freebsd-stdint.h"
use_gcc_stdint=wrap
;;
*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu | *-*-gnu* | *-*-kopensolaris*-gnu)
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"
case $target in
*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu | *-*-kopensolaris*-gnu)
:;;
*-*-gnu*)
tmake_file="$tmake_file t-gnu";;
esac
# glibc / uclibc switch. uclibc isn'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 OPTION_GLIBC=1";;
esac
case ${target} in
*-*-*uclibc*)
re PR target/24837 (move dynamic linker names out of LINK_SPEC and into new DYNAMIC_LINKER) PR target/24837 * config.gcc: Define UCLIBC_DEFAULT to 0 or 1. * opth-gen.awk: Handle Var and InverseMask together. * config/linux.opt (muclibc, mglibc): Use Var(linux_uclibc). * config/linux.h: Use #if not #ifdef for testing UCLIBC_DEFAULT. (TARGET_C99_FUNCTIONS): Test OPTION_GLIBC not TARGET_GLIBC. (CHOOSE_DYNAMIC_LINKER): Give an error for -mglibc and -muclibc used together. (UCLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER64, LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64): Define. * config/alpha/linux-elf.h (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER, CHOOSE_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER): Define. (ELF_DYNAMIC_LINKER): Define to LINUX_DYNAMIC_LINKER. * config/alpha/linux.h (TARGET_C99_FUNCTIONS): Define to TARGET_GLIBC. * config/cris/linux.h (GLIBC_DYNAMIC_LINKER): Define. (CRIS_LINK_SUBTARGET_SPEC): Pass a -dynamic-linker option. * config/frv/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. (TARGET_C99_FUNCTIONS): Don't define. * config/i386/linux.h (DYNAMIC_LINKER): Rename to GLIBC_DYNAMIC_LINKER. (SUBTARGET_EXTRA_SPECS): Use LINUX_DYNAMIC_LINKER. * config/i386/linux64.h (GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER32 and LINUX_DYNAMIC_LINKER64. * config/ia64/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/m32r/linux.h (GLIBC_DYNAMIC_LINKE): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/m68k/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/mips/linux64.h (GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64, GLIBC_DYNAMIC_LINKERN32, UCLIBC_DYNAMIC_LINKERN32, LINUX_DYNAMIC_LINKERN32): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKERN32, LINUX_DYNAMIC_LINKER64 and LINUX_DYNAMIC_LINKER32. * config/mn10300/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/pa/pa-linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/rs6000/linux.h (TARGET_C99_FUNCTIONS): Define to TARGET_GLIBC. * config/rs6000/linux64.h (TARGET_C99_FUNCTIONS): Likewise. (GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64, UCLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER64, CHOOSE_DYNAMIC_LINKER, CHOOSE_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64): Define. (LINK_OS_LINUX_SPEC32): Use LINUX_DYNAMIC_LINKER32. (LINK_OS_LINUX_SPEC64): Use LINUX_DYNAMIC_LINKER64. * config/rs6000/sysv4.h (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER, CHOOSE_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER): Define. (LINK_OS_LINUX_SPEC): Use LINUX_DYNAMIC_LINKE. * config/s390/linux.h (GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER32 and LINUX_DYNAMIC_LINKER64. * config/sh/linux.h (GLIBC_DYNAMIC_LINKER): Define. (SUBTARGET_LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/sparc/linux.h (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER, CHOOSE_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. (TARGET_C99_FUNCTIONS): Define to TARGET_GLIBC. * config/sparc/linux64.h (GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64, UCLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER64, CHOOSE_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64): Define. (LINK_ARCH32_SPEC): Use LINUX_DYNAMIC_LINKER32. (LINK_ARCH64_SPEC, LINK_SPEC): Use LINUX_DYNAMIC_LINKER64. (TARGET_C99_FUNCTIONS): Define to TARGET_GLIBC. * config/xtensa/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * doc/invoke.texi (-muclibc): Remove caveat about supported targets. testsuite: * gcc.dg/glibc-uclibc-1.c, gcc.dg/glibc-uclibc-2.c: New tests. From-SVN: r111235
2006-02-18 12:12:51 +01:00
tm_defines="${tm_defines} UCLIBC_DEFAULT=1"
;;
*)
tm_defines="${tm_defines} UCLIBC_DEFAULT=0"
;;
esac
# Assume that glibc or uClibc are being used and so __cxa_atexit is provided.
default_use_cxa_atexit=yes
use_gcc_tgmath=no
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
;;
netbsd.h (TARGET_HAS_F_SETLKW): define. * config/netbsd.h (TARGET_HAS_F_SETLKW): define. Split a.out-specific bits into... * config/netbsd-aout.h: ...this. * config/netbsd-elf.h: New file. * config/alpha/netbsd-elf.h: Remove. * config/alpha/netbsd.h: Rewrite for a NetBSD/alpha ELF target. * config/i386/netbsd-elf.h (LIB_SPEC): Remove. (STARTFILE_SPEC): Remove redundant definition. (ENDFILE_SPEC): Likewise. (LINK_SPEC): Likewise. (CPP_SPEC): Likewise. (ASM_SPEC): Likewise. (LIB_SPEC): Likewise. (SWITCH_TAKES_ARG): Likewise. (TARGET_MEM_FUNCTIONS): Likewise. (CPP_PREDEFINES): Redefine. (ASM_FINAL_SPEC): Remove redefinition. (ASM_COMMENT_START): Redefine. (FUNCTION_PROFILER): Define. (TARGET_VERSION): Redefine. Comment and formatting cleanup. * config/i386/netbsd.h: Include <netbsd-aout.h>. * config/m68k/netbsd.h: Include <netbsd-aout.h>. * config/mips/netbsd.h: Rewrite for NetBSD/mips ELF target, big- or little-endian. * config/ns32k/netbsd.h: Include <netbsd-aout.h>. * config.gcc (*-*-netbsd*): Add definitions common to all NetBSD configs. (alpha*-*-netbsd*): Remove redundant xm_defines, gas, and gnu_ld definitions. Add netbsd-elf.h to and remove alpha/netbsd-elf.h from tm_file. Remove alpha/t-crtfm from tmake_file, and don't lose previous tmake_file contents. (arm*-*-netbsd*): Add netbsd-aout.h to tm_file. (i[34567]86-*-netbsdelf*): Remove redundant xm_defines, gas, and gnu_ld definitions. Add netbsd-elf.h to tm_file. (mips-dec-netbsd*): Remove as alias for mipsel-*-netbsd*. (mipsel-*-netbsd*): Rename this to... (mips*-*-netbsd*): ...this. Add elfos.h to tm_file. Add mips/little.h to tm_file for mips*el-*. (powerpc-*-netbsd*): Remove redundant xm_defines definition. (sparc-*-netbsd*): Add netbsd-aout.h to tm_file. (vax-*-netbsd*): Add netbsd-aout.h to tm_file. From-SVN: r49064
2002-01-22 05:23:07 +01:00
*-*-netbsd*)
tmake_file="t-slibgcc-elf-ver t-libc-ok t-netbsd t-libgcc-pic"
gas=yes
gnu_ld=yes
# NetBSD 2.0 and later get POSIX threads enabled by default.
# Allow them to be explicitly enabled on any other version.
case ${enable_threads} in
"")
case ${target} in
*-*-netbsd[2-9]* | *-*-netbsdelf[2-9]*)
thread_file='posix'
tm_defines="${tm_defines} NETBSD_ENABLE_PTHREADS"
;;
esac
;;
yes | posix)
thread_file='posix'
tm_defines="${tm_defines} NETBSD_ENABLE_PTHREADS"
;;
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
*-*-netbsd[2-9]* | *-*-netbsdelf[2-9]*)
default_use_cxa_atexit=yes
;;
esac
;;
*-*-openbsd*)
tmake_file="t-libc-ok t-openbsd t-libgcc-pic"
case ${enable_threads} in
yes)
thread_file='posix'
tmake_file="${tmake_file} t-openbsd-thread"
;;
esac
case ${target} in
*-*-openbsd2.*|*-*-openbsd3.[012])
tm_defines="${tm_defines} HAS_LIBC_R=1" ;;
esac
;;
*-*-rtems*)
case ${enable_threads} in
yes) thread_file='rtems' ;;
esac
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
;;
*-*-uclinux*)
use_gcc_stdint=wrap
;;
*-*-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' ;;
*) echo 'Unknown thread configuration for VxWorks'; exit 1 ;;
esac
;;
*-*-elf)
# Assume that newlib is being used and so __cxa_atexit is provided.
default_use_cxa_atexit=yes
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
;;
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*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h glibc-stdint.h"
target_cpu_default="MASK_GAS"
tmake_file="${tmake_file} alpha/t-crtfm alpha/t-alpha alpha/t-ieee alpha/t-linux"
;;
alpha*-*-gnu*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="$tm_file alpha/elf.h alpha/linux.h alpha/linux-elf.h gnu.h glibc-stdint.h alpha/gnu.h"
target_cpu_default="MASK_GAS"
tmake_file="${tmake_file} alpha/t-crtfm alpha/t-alpha alpha/t-ieee"
;;
alpha*-*-freebsd*)
tm_file="${tm_file} ${fbsd_tm_file} alpha/elf.h alpha/freebsd.h"
target_cpu_default="MASK_GAS"
2002-01-27 05:18:12 +01:00
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*)
netbsd.h (TARGET_HAS_F_SETLKW): define. * config/netbsd.h (TARGET_HAS_F_SETLKW): define. Split a.out-specific bits into... * config/netbsd-aout.h: ...this. * config/netbsd-elf.h: New file. * config/alpha/netbsd-elf.h: Remove. * config/alpha/netbsd.h: Rewrite for a NetBSD/alpha ELF target. * config/i386/netbsd-elf.h (LIB_SPEC): Remove. (STARTFILE_SPEC): Remove redundant definition. (ENDFILE_SPEC): Likewise. (LINK_SPEC): Likewise. (CPP_SPEC): Likewise. (ASM_SPEC): Likewise. (LIB_SPEC): Likewise. (SWITCH_TAKES_ARG): Likewise. (TARGET_MEM_FUNCTIONS): Likewise. (CPP_PREDEFINES): Redefine. (ASM_FINAL_SPEC): Remove redefinition. (ASM_COMMENT_START): Redefine. (FUNCTION_PROFILER): Define. (TARGET_VERSION): Redefine. Comment and formatting cleanup. * config/i386/netbsd.h: Include <netbsd-aout.h>. * config/m68k/netbsd.h: Include <netbsd-aout.h>. * config/mips/netbsd.h: Rewrite for NetBSD/mips ELF target, big- or little-endian. * config/ns32k/netbsd.h: Include <netbsd-aout.h>. * config.gcc (*-*-netbsd*): Add definitions common to all NetBSD configs. (alpha*-*-netbsd*): Remove redundant xm_defines, gas, and gnu_ld definitions. Add netbsd-elf.h to and remove alpha/netbsd-elf.h from tm_file. Remove alpha/t-crtfm from tmake_file, and don't lose previous tmake_file contents. (arm*-*-netbsd*): Add netbsd-aout.h to tm_file. (i[34567]86-*-netbsdelf*): Remove redundant xm_defines, gas, and gnu_ld definitions. Add netbsd-elf.h to tm_file. (mips-dec-netbsd*): Remove as alias for mipsel-*-netbsd*. (mipsel-*-netbsd*): Rename this to... (mips*-*-netbsd*): ...this. Add elfos.h to tm_file. Add mips/little.h to tm_file for mips*el-*. (powerpc-*-netbsd*): Remove redundant xm_defines definition. (sparc-*-netbsd*): Add netbsd-aout.h to tm_file. (vax-*-netbsd*): Add netbsd-aout.h to tm_file. From-SVN: r49064
2002-01-22 05:23:07 +01:00
tm_file="${tm_file} netbsd.h alpha/elf.h netbsd-elf.h alpha/netbsd.h"
target_cpu_default="MASK_GAS"
2002-01-27 05:18:12 +01:00
tmake_file="${tmake_file} alpha/t-alpha alpha/t-ieee"
;;
alpha*-*-openbsd*)
tm_defines="${tm_defines} OBSD_NO_DYNAMIC_LIBRARIES OBSD_HAS_DECLARE_FUNCTION_NAME OBSD_HAS_DECLARE_FUNCTION_SIZE OBSD_HAS_DECLARE_OBJECT"
Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * config.gcc (*-*-openbsd): Don't set tm_file. (alpha*-*-openbsd, arm*-*-coff*, arm*-wince-pe*, arm-*-pe*, avr-*-*, h8300-*-rtems*, h8300-*-elf*, h8300-*-*, hppa*-*-osf*, hppa*-*-bsd*, hppa*-*-hpux*, i370-*-opened*, i370-*-mvs*, i370-*-linux*, i?86-*-openbsd*, i?86-*-lynxos, i?86-*-nto-qnx*, iq2000*-*-elf*, m68000-hp-hpux*, m68k-hp-hpux*, m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*, m68k*-*-netbsd*, m68k*-*-openbsd*, m68k-*-sysv4*, m68k-*-linux*, m68k-*-rtems*, mcore-*-pe*, mips*-*-netbsd*, mips*-*-openbsd*, rs6000-*-lynxos*, sh*-*-elf*, sh*-*-ka, sh-*-rtemself, sparc-*-openbsd*, strongarm-*-pe, vax-*-openbsd*, xscale-*-coff): Use explicit and complete lists of target headers to include. Move definitions to tm_defines where appropriate. (hppa*-*-openbsd*, powerpc-*-openbsd*): Comment out stanza for not-yet-contributed configuration. * config/lynx.h, config/alpha/openbsd.h, config/arm/coff.h * config/avr/avr.h, config/frv/frv.h, config/h8300/elf.h * config/i370/linux.h, config/i370/mvs.h, config/i370/oe.h * config/i386/nto.h, config/iq2000/iq2000.h, * config/m68k/coff.h, config/m68k/hp310.h, config/m68k/hp320.h * config/m68k/linux.h, config/m68k/m68k-aout.h * config/m68k/m68k-none.h, config/m68k/m68kv4.h * config/m68k/netbsd.h, config/m68k/openbsd.h * config/m68k/sgs.h, config/mcore/mcore-pe.h, * config/mips/netbsd.h, config/mips/openbsd.h, config/pa/pa.h, * config/rs6000/lynx.h, config/sh/embed-elf.h, config/sparc/openbsd.h: Remove includes of other target config headers, and definitions of macros moved to tm_defines lists. Add #undefs where now necessary to prevent redefinition warnings. * config/h8300/coff.h: New file split out of... * config/h8300/elf.h: ...here. * config/m68k/hp320base.h: New file split out of... * config/m68k/hp320.h: ...here. * config/rs6000/lynxbase.h: New file split out of... * config/rs6000/lynx.h: ...here. * config/m68k/hp310g.h, config/m68k/hp320g.h, config/m68k/hpux7.h * config/m68k/m68k-coff.h, config/mips/openbsd-be.h: Delete file. * config/sol2.h: Remove #if 0-ed #include of sys/mman.h. * config/m68k/m68kelf.h: Remove commented out #include of m68k/sgs.h. * config/mcore/mcore.h: Don't include hwint.h nor machmode.h. Remove unnecessary #ifndef. * config/s390/s390.h: Prefix #include of s390/fixdfdi.h [under IN_LIBGCC2] with config/. From-SVN: r70651
2003-08-21 19:27:29 +02:00
tm_file="alpha/alpha.h openbsd.h alpha/openbsd.h"
# default x-alpha is only appropriate for dec-osf.
target_cpu_default="MASK_GAS"
tmake_file="alpha/t-alpha alpha/t-ieee"
;;
config.gcc: Remove all stanzas for previously obsoleted systems. * config.gcc: Remove all stanzas for previously obsoleted systems. Where necessary, add explicit error stanzas to prevent removed systems from being misidentified as something else. Begin a fresh obsoletions list, with the systems that were reprieved last round. * doc/install.texi: Remove all mention of dead targets. * fixinc/mkfixinc.sh: Likewise. * config/arm/arm.h: Bit 31 of target_flags is no longer reserved. * config/1750a/1750a-protos.h, config/1750a/1750a.c, config/1750a/1750a.h, config/1750a/1750a.md, config/1750a/ms1750.inc, config/a29k/a29k-protos.h, config/a29k/a29k.c, config/a29k/a29k.h, config/a29k/a29k.md, config/a29k/rtems.h, config/a29k/t-a29kbare, config/a29k/t-vx29k, config/a29k/unix.h, config/a29k/vx29k.h, config/alpha/osf12.h, config/alpha/osf2or3.h, config/arm/arm-wince-pe.h, config/arm/arm.h, config/arm/riscix.h, config/arm/riscix1-1.h, config/arm/rix-gas.h, config/arm/t-riscix, config/clipper/clipper-protos.h, config/clipper/clipper.c, config/clipper/clipper.h, config/clipper/clipper.md, config/clipper/clix.h, config/convex/convex-protos.h, config/convex/convex.c, config/convex/convex.h, config/convex/convex.md, config/convex/fixinc.convex, config/convex/proto.h, config/elxsi/elxsi-protos.h, config/elxsi/elxsi.c, config/elxsi/elxsi.h, config/elxsi/elxsi.md, config/i386/386bsd.h, config/i386/aix386.h, config/i386/aix386ng.h, config/i386/bsd386.h, config/i386/dgux.h, config/i386/djgpp-rtems.h, config/i386/isc.h, config/i386/iscdbx.h, config/i386/linux-oldld.h, config/i386/next.h, config/i386/osf1-ci.asm, config/i386/osf1-cn.asm, config/i386/osf1elf.h, config/i386/osf1elfgdb.h, config/i386/osfelf.h, config/i386/osfrose.h, config/i386/rtems.h, config/i386/seq-gas.h, config/i386/seq-sysv3.h, config/i386/seq2-sysv3.h, config/i386/sequent.h, config/i386/sun.h, config/i386/sun386.h, config/i386/t-dgux, config/i386/t-next, config/i386/t-osf, config/i386/t-osf1elf, config/i860/bsd-gas.h, config/i860/bsd.h, config/i860/fx2800.h, config/i860/i860-protos.h, config/i860/i860.c, config/i860/i860.h, config/i860/i860.md, config/i860/mach.h, config/i860/paragon.h, config/i860/sysv3.h, config/i860/sysv4.h, config/i860/t-fx2800, config/i860/varargs.asm, config/m68k/a-ux.h, config/m68k/altos3068.h, config/m68k/apollo68.h, config/m68k/aux-crt1.c, config/m68k/aux-crt2.asm, config/m68k/aux-crtn.asm, config/m68k/aux-exit.c, config/m68k/aux-low.gld, config/m68k/aux-mcount.c, config/m68k/auxas.h, config/m68k/auxgas.h, config/m68k/auxgld.h, config/m68k/auxld.h, config/m68k/ctix.h, config/m68k/dpx2.h, config/m68k/dpx2.ifile, config/m68k/dpx2cdbx.h, config/m68k/dpx2g.h, config/m68k/isi-nfp.h, config/m68k/isi.h, config/m68k/lynx-ng.h, config/m68k/lynx.h, config/m68k/math-3300.h, config/m68k/news.h, config/m68k/news3.h, config/m68k/news3gas.h, config/m68k/newsgas.h, config/m68k/next.h, config/m68k/next21.h, config/m68k/rtems.h, config/m68k/t-aux, config/m68k/t-lynx, config/m68k/t-next, config/m68k/x-next, config/m88k/dgux.h, config/m88k/dgux.ld, config/m88k/dguxbcs.h, config/m88k/dolph.h, config/m88k/dolphin.ld, config/m88k/luna.h, config/m88k/m88k-coff.h, config/m88k/sysv3.h, config/m88k/t-bug, config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs, config/m88k/t-dolph, config/m88k/t-m88k-gas, config/m88k/t-tekXD88, config/m88k/tekXD88.h, config/m88k/tekXD88.ld, config/mips/bsd-4.h, config/mips/bsd-5.h, config/mips/dec-bsd.h, config/mips/dec-osf1.h, config/mips/elflorion.h, config/mips/iris4loser.h, config/mips/mips-5.h, config/mips/news4.h, config/mips/news5.h, config/mips/nws3250v4.h, config/mips/osfrose.h, config/mips/svr3-4.h, config/mips/svr3-5.h, config/mips/svr4-4.h, config/mips/svr4-5.h, config/mips/svr4-t.h, config/mips/t-bsd, config/mips/t-bsd-gas, config/mips/t-svr3, config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas, config/mips/t-ultrix, config/mips/ultrix.h, config/nextstep-protos.h, config/nextstep.c, config/nextstep.h, config/nextstep21.h, config/ns32k/encore.h, config/ns32k/merlin.h, config/ns32k/pc532-mach.h, config/ns32k/pc532-min.h, config/ns32k/pc532.h, config/ns32k/sequent.h, config/ns32k/tek6000.h, config/ns32k/tek6100.h, config/ns32k/tek6200.h, config/pj/lib1funcs.S, config/pj/linux.h, config/pj/pj-protos.h, config/pj/pj.c, config/pj/pj.h, config/pj/pj.md, config/pj/pjl.h, config/pj/t-pj, config/sparc/rtems.h, config/we32k/we32k-protos.h, config/we32k/we32k.c, config/we32k/we32k.h, config/we32k/we32k.md: Delete file. From-SVN: r53862
2002-05-25 04:10:46 +02:00
alpha*-dec-osf[45]*)
if test x$stabs = xyes
then
tm_file="${tm_file} dbx.h"
fi
if test x$gas != xyes
then
extra_passes="mips-tfile mips-tdump"
fi
use_collect2=yes
config.gcc: Remove all stanzas for previously obsoleted systems. * config.gcc: Remove all stanzas for previously obsoleted systems. Where necessary, add explicit error stanzas to prevent removed systems from being misidentified as something else. Begin a fresh obsoletions list, with the systems that were reprieved last round. * doc/install.texi: Remove all mention of dead targets. * fixinc/mkfixinc.sh: Likewise. * config/arm/arm.h: Bit 31 of target_flags is no longer reserved. * config/1750a/1750a-protos.h, config/1750a/1750a.c, config/1750a/1750a.h, config/1750a/1750a.md, config/1750a/ms1750.inc, config/a29k/a29k-protos.h, config/a29k/a29k.c, config/a29k/a29k.h, config/a29k/a29k.md, config/a29k/rtems.h, config/a29k/t-a29kbare, config/a29k/t-vx29k, config/a29k/unix.h, config/a29k/vx29k.h, config/alpha/osf12.h, config/alpha/osf2or3.h, config/arm/arm-wince-pe.h, config/arm/arm.h, config/arm/riscix.h, config/arm/riscix1-1.h, config/arm/rix-gas.h, config/arm/t-riscix, config/clipper/clipper-protos.h, config/clipper/clipper.c, config/clipper/clipper.h, config/clipper/clipper.md, config/clipper/clix.h, config/convex/convex-protos.h, config/convex/convex.c, config/convex/convex.h, config/convex/convex.md, config/convex/fixinc.convex, config/convex/proto.h, config/elxsi/elxsi-protos.h, config/elxsi/elxsi.c, config/elxsi/elxsi.h, config/elxsi/elxsi.md, config/i386/386bsd.h, config/i386/aix386.h, config/i386/aix386ng.h, config/i386/bsd386.h, config/i386/dgux.h, config/i386/djgpp-rtems.h, config/i386/isc.h, config/i386/iscdbx.h, config/i386/linux-oldld.h, config/i386/next.h, config/i386/osf1-ci.asm, config/i386/osf1-cn.asm, config/i386/osf1elf.h, config/i386/osf1elfgdb.h, config/i386/osfelf.h, config/i386/osfrose.h, config/i386/rtems.h, config/i386/seq-gas.h, config/i386/seq-sysv3.h, config/i386/seq2-sysv3.h, config/i386/sequent.h, config/i386/sun.h, config/i386/sun386.h, config/i386/t-dgux, config/i386/t-next, config/i386/t-osf, config/i386/t-osf1elf, config/i860/bsd-gas.h, config/i860/bsd.h, config/i860/fx2800.h, config/i860/i860-protos.h, config/i860/i860.c, config/i860/i860.h, config/i860/i860.md, config/i860/mach.h, config/i860/paragon.h, config/i860/sysv3.h, config/i860/sysv4.h, config/i860/t-fx2800, config/i860/varargs.asm, config/m68k/a-ux.h, config/m68k/altos3068.h, config/m68k/apollo68.h, config/m68k/aux-crt1.c, config/m68k/aux-crt2.asm, config/m68k/aux-crtn.asm, config/m68k/aux-exit.c, config/m68k/aux-low.gld, config/m68k/aux-mcount.c, config/m68k/auxas.h, config/m68k/auxgas.h, config/m68k/auxgld.h, config/m68k/auxld.h, config/m68k/ctix.h, config/m68k/dpx2.h, config/m68k/dpx2.ifile, config/m68k/dpx2cdbx.h, config/m68k/dpx2g.h, config/m68k/isi-nfp.h, config/m68k/isi.h, config/m68k/lynx-ng.h, config/m68k/lynx.h, config/m68k/math-3300.h, config/m68k/news.h, config/m68k/news3.h, config/m68k/news3gas.h, config/m68k/newsgas.h, config/m68k/next.h, config/m68k/next21.h, config/m68k/rtems.h, config/m68k/t-aux, config/m68k/t-lynx, config/m68k/t-next, config/m68k/x-next, config/m88k/dgux.h, config/m88k/dgux.ld, config/m88k/dguxbcs.h, config/m88k/dolph.h, config/m88k/dolphin.ld, config/m88k/luna.h, config/m88k/m88k-coff.h, config/m88k/sysv3.h, config/m88k/t-bug, config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs, config/m88k/t-dolph, config/m88k/t-m88k-gas, config/m88k/t-tekXD88, config/m88k/tekXD88.h, config/m88k/tekXD88.ld, config/mips/bsd-4.h, config/mips/bsd-5.h, config/mips/dec-bsd.h, config/mips/dec-osf1.h, config/mips/elflorion.h, config/mips/iris4loser.h, config/mips/mips-5.h, config/mips/news4.h, config/mips/news5.h, config/mips/nws3250v4.h, config/mips/osfrose.h, config/mips/svr3-4.h, config/mips/svr3-5.h, config/mips/svr4-4.h, config/mips/svr4-5.h, config/mips/svr4-t.h, config/mips/t-bsd, config/mips/t-bsd-gas, config/mips/t-svr3, config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas, config/mips/t-ultrix, config/mips/ultrix.h, config/nextstep-protos.h, config/nextstep.c, config/nextstep.h, config/nextstep21.h, config/ns32k/encore.h, config/ns32k/merlin.h, config/ns32k/pc532-mach.h, config/ns32k/pc532-min.h, config/ns32k/pc532.h, config/ns32k/sequent.h, config/ns32k/tek6000.h, config/ns32k/tek6100.h, config/ns32k/tek6200.h, config/pj/lib1funcs.S, config/pj/linux.h, config/pj/pj-protos.h, config/pj/pj.c, config/pj/pj.h, config/pj/pj.md, config/pj/pjl.h, config/pj/t-pj, config/sparc/rtems.h, config/we32k/we32k-protos.h, config/we32k/we32k.c, config/we32k/we32k.h, config/we32k/we32k.md: Delete file. From-SVN: r53862
2002-05-25 04:10:46 +02:00
tmake_file="alpha/t-alpha alpha/t-ieee alpha/t-crtfm alpha/t-osf4"
tm_file="${tm_file} alpha/osf.h"
extra_headers=va_list.h
case ${target} in
*-*-osf4*)
# Define TARGET_SUPPORT_ARCH except on 4.0a.
case ${target} in
config.gcc: Remove all stanzas for previously obsoleted systems. * config.gcc: Remove all stanzas for previously obsoleted systems. Where necessary, add explicit error stanzas to prevent removed systems from being misidentified as something else. Begin a fresh obsoletions list, with the systems that were reprieved last round. * doc/install.texi: Remove all mention of dead targets. * fixinc/mkfixinc.sh: Likewise. * config/arm/arm.h: Bit 31 of target_flags is no longer reserved. * config/1750a/1750a-protos.h, config/1750a/1750a.c, config/1750a/1750a.h, config/1750a/1750a.md, config/1750a/ms1750.inc, config/a29k/a29k-protos.h, config/a29k/a29k.c, config/a29k/a29k.h, config/a29k/a29k.md, config/a29k/rtems.h, config/a29k/t-a29kbare, config/a29k/t-vx29k, config/a29k/unix.h, config/a29k/vx29k.h, config/alpha/osf12.h, config/alpha/osf2or3.h, config/arm/arm-wince-pe.h, config/arm/arm.h, config/arm/riscix.h, config/arm/riscix1-1.h, config/arm/rix-gas.h, config/arm/t-riscix, config/clipper/clipper-protos.h, config/clipper/clipper.c, config/clipper/clipper.h, config/clipper/clipper.md, config/clipper/clix.h, config/convex/convex-protos.h, config/convex/convex.c, config/convex/convex.h, config/convex/convex.md, config/convex/fixinc.convex, config/convex/proto.h, config/elxsi/elxsi-protos.h, config/elxsi/elxsi.c, config/elxsi/elxsi.h, config/elxsi/elxsi.md, config/i386/386bsd.h, config/i386/aix386.h, config/i386/aix386ng.h, config/i386/bsd386.h, config/i386/dgux.h, config/i386/djgpp-rtems.h, config/i386/isc.h, config/i386/iscdbx.h, config/i386/linux-oldld.h, config/i386/next.h, config/i386/osf1-ci.asm, config/i386/osf1-cn.asm, config/i386/osf1elf.h, config/i386/osf1elfgdb.h, config/i386/osfelf.h, config/i386/osfrose.h, config/i386/rtems.h, config/i386/seq-gas.h, config/i386/seq-sysv3.h, config/i386/seq2-sysv3.h, config/i386/sequent.h, config/i386/sun.h, config/i386/sun386.h, config/i386/t-dgux, config/i386/t-next, config/i386/t-osf, config/i386/t-osf1elf, config/i860/bsd-gas.h, config/i860/bsd.h, config/i860/fx2800.h, config/i860/i860-protos.h, config/i860/i860.c, config/i860/i860.h, config/i860/i860.md, config/i860/mach.h, config/i860/paragon.h, config/i860/sysv3.h, config/i860/sysv4.h, config/i860/t-fx2800, config/i860/varargs.asm, config/m68k/a-ux.h, config/m68k/altos3068.h, config/m68k/apollo68.h, config/m68k/aux-crt1.c, config/m68k/aux-crt2.asm, config/m68k/aux-crtn.asm, config/m68k/aux-exit.c, config/m68k/aux-low.gld, config/m68k/aux-mcount.c, config/m68k/auxas.h, config/m68k/auxgas.h, config/m68k/auxgld.h, config/m68k/auxld.h, config/m68k/ctix.h, config/m68k/dpx2.h, config/m68k/dpx2.ifile, config/m68k/dpx2cdbx.h, config/m68k/dpx2g.h, config/m68k/isi-nfp.h, config/m68k/isi.h, config/m68k/lynx-ng.h, config/m68k/lynx.h, config/m68k/math-3300.h, config/m68k/news.h, config/m68k/news3.h, config/m68k/news3gas.h, config/m68k/newsgas.h, config/m68k/next.h, config/m68k/next21.h, config/m68k/rtems.h, config/m68k/t-aux, config/m68k/t-lynx, config/m68k/t-next, config/m68k/x-next, config/m88k/dgux.h, config/m88k/dgux.ld, config/m88k/dguxbcs.h, config/m88k/dolph.h, config/m88k/dolphin.ld, config/m88k/luna.h, config/m88k/m88k-coff.h, config/m88k/sysv3.h, config/m88k/t-bug, config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs, config/m88k/t-dolph, config/m88k/t-m88k-gas, config/m88k/t-tekXD88, config/m88k/tekXD88.h, config/m88k/tekXD88.ld, config/mips/bsd-4.h, config/mips/bsd-5.h, config/mips/dec-bsd.h, config/mips/dec-osf1.h, config/mips/elflorion.h, config/mips/iris4loser.h, config/mips/mips-5.h, config/mips/news4.h, config/mips/news5.h, config/mips/nws3250v4.h, config/mips/osfrose.h, config/mips/svr3-4.h, config/mips/svr3-5.h, config/mips/svr4-4.h, config/mips/svr4-5.h, config/mips/svr4-t.h, config/mips/t-bsd, config/mips/t-bsd-gas, config/mips/t-svr3, config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas, config/mips/t-ultrix, config/mips/ultrix.h, config/nextstep-protos.h, config/nextstep.c, config/nextstep.h, config/nextstep21.h, config/ns32k/encore.h, config/ns32k/merlin.h, config/ns32k/pc532-mach.h, config/ns32k/pc532-min.h, config/ns32k/pc532.h, config/ns32k/sequent.h, config/ns32k/tek6000.h, config/ns32k/tek6100.h, config/ns32k/tek6200.h, config/pj/lib1funcs.S, config/pj/linux.h, config/pj/pj-protos.h, config/pj/pj.c, config/pj/pj.h, config/pj/pj.md, config/pj/pjl.h, config/pj/t-pj, config/sparc/rtems.h, config/we32k/we32k-protos.h, config/we32k/we32k.c, config/we32k/we32k.h, config/we32k/we32k.md: Delete file. From-SVN: r53862
2002-05-25 04:10:46 +02:00
*-*-osf4.0a) ;;
*) tm_defines="${tm_defines} TARGET_SUPPORT_ARCH=1"
config.gcc: Remove all stanzas for previously obsoleted systems. * config.gcc: Remove all stanzas for previously obsoleted systems. Where necessary, add explicit error stanzas to prevent removed systems from being misidentified as something else. Begin a fresh obsoletions list, with the systems that were reprieved last round. * doc/install.texi: Remove all mention of dead targets. * fixinc/mkfixinc.sh: Likewise. * config/arm/arm.h: Bit 31 of target_flags is no longer reserved. * config/1750a/1750a-protos.h, config/1750a/1750a.c, config/1750a/1750a.h, config/1750a/1750a.md, config/1750a/ms1750.inc, config/a29k/a29k-protos.h, config/a29k/a29k.c, config/a29k/a29k.h, config/a29k/a29k.md, config/a29k/rtems.h, config/a29k/t-a29kbare, config/a29k/t-vx29k, config/a29k/unix.h, config/a29k/vx29k.h, config/alpha/osf12.h, config/alpha/osf2or3.h, config/arm/arm-wince-pe.h, config/arm/arm.h, config/arm/riscix.h, config/arm/riscix1-1.h, config/arm/rix-gas.h, config/arm/t-riscix, config/clipper/clipper-protos.h, config/clipper/clipper.c, config/clipper/clipper.h, config/clipper/clipper.md, config/clipper/clix.h, config/convex/convex-protos.h, config/convex/convex.c, config/convex/convex.h, config/convex/convex.md, config/convex/fixinc.convex, config/convex/proto.h, config/elxsi/elxsi-protos.h, config/elxsi/elxsi.c, config/elxsi/elxsi.h, config/elxsi/elxsi.md, config/i386/386bsd.h, config/i386/aix386.h, config/i386/aix386ng.h, config/i386/bsd386.h, config/i386/dgux.h, config/i386/djgpp-rtems.h, config/i386/isc.h, config/i386/iscdbx.h, config/i386/linux-oldld.h, config/i386/next.h, config/i386/osf1-ci.asm, config/i386/osf1-cn.asm, config/i386/osf1elf.h, config/i386/osf1elfgdb.h, config/i386/osfelf.h, config/i386/osfrose.h, config/i386/rtems.h, config/i386/seq-gas.h, config/i386/seq-sysv3.h, config/i386/seq2-sysv3.h, config/i386/sequent.h, config/i386/sun.h, config/i386/sun386.h, config/i386/t-dgux, config/i386/t-next, config/i386/t-osf, config/i386/t-osf1elf, config/i860/bsd-gas.h, config/i860/bsd.h, config/i860/fx2800.h, config/i860/i860-protos.h, config/i860/i860.c, config/i860/i860.h, config/i860/i860.md, config/i860/mach.h, config/i860/paragon.h, config/i860/sysv3.h, config/i860/sysv4.h, config/i860/t-fx2800, config/i860/varargs.asm, config/m68k/a-ux.h, config/m68k/altos3068.h, config/m68k/apollo68.h, config/m68k/aux-crt1.c, config/m68k/aux-crt2.asm, config/m68k/aux-crtn.asm, config/m68k/aux-exit.c, config/m68k/aux-low.gld, config/m68k/aux-mcount.c, config/m68k/auxas.h, config/m68k/auxgas.h, config/m68k/auxgld.h, config/m68k/auxld.h, config/m68k/ctix.h, config/m68k/dpx2.h, config/m68k/dpx2.ifile, config/m68k/dpx2cdbx.h, config/m68k/dpx2g.h, config/m68k/isi-nfp.h, config/m68k/isi.h, config/m68k/lynx-ng.h, config/m68k/lynx.h, config/m68k/math-3300.h, config/m68k/news.h, config/m68k/news3.h, config/m68k/news3gas.h, config/m68k/newsgas.h, config/m68k/next.h, config/m68k/next21.h, config/m68k/rtems.h, config/m68k/t-aux, config/m68k/t-lynx, config/m68k/t-next, config/m68k/x-next, config/m88k/dgux.h, config/m88k/dgux.ld, config/m88k/dguxbcs.h, config/m88k/dolph.h, config/m88k/dolphin.ld, config/m88k/luna.h, config/m88k/m88k-coff.h, config/m88k/sysv3.h, config/m88k/t-bug, config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs, config/m88k/t-dolph, config/m88k/t-m88k-gas, config/m88k/t-tekXD88, config/m88k/tekXD88.h, config/m88k/tekXD88.ld, config/mips/bsd-4.h, config/mips/bsd-5.h, config/mips/dec-bsd.h, config/mips/dec-osf1.h, config/mips/elflorion.h, config/mips/iris4loser.h, config/mips/mips-5.h, config/mips/news4.h, config/mips/news5.h, config/mips/nws3250v4.h, config/mips/osfrose.h, config/mips/svr3-4.h, config/mips/svr3-5.h, config/mips/svr4-4.h, config/mips/svr4-5.h, config/mips/svr4-t.h, config/mips/t-bsd, config/mips/t-bsd-gas, config/mips/t-svr3, config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas, config/mips/t-ultrix, config/mips/ultrix.h, config/nextstep-protos.h, config/nextstep.c, config/nextstep.h, config/nextstep21.h, config/ns32k/encore.h, config/ns32k/merlin.h, config/ns32k/pc532-mach.h, config/ns32k/pc532-min.h, config/ns32k/pc532.h, config/ns32k/sequent.h, config/ns32k/tek6000.h, config/ns32k/tek6100.h, config/ns32k/tek6200.h, config/pj/lib1funcs.S, config/pj/linux.h, config/pj/pj-protos.h, config/pj/pj.c, config/pj/pj.h, config/pj/pj.md, config/pj/pjl.h, config/pj/t-pj, config/sparc/rtems.h, config/we32k/we32k-protos.h, config/we32k/we32k.c, config/we32k/we32k.h, config/we32k/we32k.md: Delete file. From-SVN: r53862
2002-05-25 04:10:46 +02:00
esac
;;
*-*-osf5*)
config.gcc: Remove all stanzas for previously obsoleted systems. * config.gcc: Remove all stanzas for previously obsoleted systems. Where necessary, add explicit error stanzas to prevent removed systems from being misidentified as something else. Begin a fresh obsoletions list, with the systems that were reprieved last round. * doc/install.texi: Remove all mention of dead targets. * fixinc/mkfixinc.sh: Likewise. * config/arm/arm.h: Bit 31 of target_flags is no longer reserved. * config/1750a/1750a-protos.h, config/1750a/1750a.c, config/1750a/1750a.h, config/1750a/1750a.md, config/1750a/ms1750.inc, config/a29k/a29k-protos.h, config/a29k/a29k.c, config/a29k/a29k.h, config/a29k/a29k.md, config/a29k/rtems.h, config/a29k/t-a29kbare, config/a29k/t-vx29k, config/a29k/unix.h, config/a29k/vx29k.h, config/alpha/osf12.h, config/alpha/osf2or3.h, config/arm/arm-wince-pe.h, config/arm/arm.h, config/arm/riscix.h, config/arm/riscix1-1.h, config/arm/rix-gas.h, config/arm/t-riscix, config/clipper/clipper-protos.h, config/clipper/clipper.c, config/clipper/clipper.h, config/clipper/clipper.md, config/clipper/clix.h, config/convex/convex-protos.h, config/convex/convex.c, config/convex/convex.h, config/convex/convex.md, config/convex/fixinc.convex, config/convex/proto.h, config/elxsi/elxsi-protos.h, config/elxsi/elxsi.c, config/elxsi/elxsi.h, config/elxsi/elxsi.md, config/i386/386bsd.h, config/i386/aix386.h, config/i386/aix386ng.h, config/i386/bsd386.h, config/i386/dgux.h, config/i386/djgpp-rtems.h, config/i386/isc.h, config/i386/iscdbx.h, config/i386/linux-oldld.h, config/i386/next.h, config/i386/osf1-ci.asm, config/i386/osf1-cn.asm, config/i386/osf1elf.h, config/i386/osf1elfgdb.h, config/i386/osfelf.h, config/i386/osfrose.h, config/i386/rtems.h, config/i386/seq-gas.h, config/i386/seq-sysv3.h, config/i386/seq2-sysv3.h, config/i386/sequent.h, config/i386/sun.h, config/i386/sun386.h, config/i386/t-dgux, config/i386/t-next, config/i386/t-osf, config/i386/t-osf1elf, config/i860/bsd-gas.h, config/i860/bsd.h, config/i860/fx2800.h, config/i860/i860-protos.h, config/i860/i860.c, config/i860/i860.h, config/i860/i860.md, config/i860/mach.h, config/i860/paragon.h, config/i860/sysv3.h, config/i860/sysv4.h, config/i860/t-fx2800, config/i860/varargs.asm, config/m68k/a-ux.h, config/m68k/altos3068.h, config/m68k/apollo68.h, config/m68k/aux-crt1.c, config/m68k/aux-crt2.asm, config/m68k/aux-crtn.asm, config/m68k/aux-exit.c, config/m68k/aux-low.gld, config/m68k/aux-mcount.c, config/m68k/auxas.h, config/m68k/auxgas.h, config/m68k/auxgld.h, config/m68k/auxld.h, config/m68k/ctix.h, config/m68k/dpx2.h, config/m68k/dpx2.ifile, config/m68k/dpx2cdbx.h, config/m68k/dpx2g.h, config/m68k/isi-nfp.h, config/m68k/isi.h, config/m68k/lynx-ng.h, config/m68k/lynx.h, config/m68k/math-3300.h, config/m68k/news.h, config/m68k/news3.h, config/m68k/news3gas.h, config/m68k/newsgas.h, config/m68k/next.h, config/m68k/next21.h, config/m68k/rtems.h, config/m68k/t-aux, config/m68k/t-lynx, config/m68k/t-next, config/m68k/x-next, config/m88k/dgux.h, config/m88k/dgux.ld, config/m88k/dguxbcs.h, config/m88k/dolph.h, config/m88k/dolphin.ld, config/m88k/luna.h, config/m88k/m88k-coff.h, config/m88k/sysv3.h, config/m88k/t-bug, config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs, config/m88k/t-dolph, config/m88k/t-m88k-gas, config/m88k/t-tekXD88, config/m88k/tekXD88.h, config/m88k/tekXD88.ld, config/mips/bsd-4.h, config/mips/bsd-5.h, config/mips/dec-bsd.h, config/mips/dec-osf1.h, config/mips/elflorion.h, config/mips/iris4loser.h, config/mips/mips-5.h, config/mips/news4.h, config/mips/news5.h, config/mips/nws3250v4.h, config/mips/osfrose.h, config/mips/svr3-4.h, config/mips/svr3-5.h, config/mips/svr4-4.h, config/mips/svr4-5.h, config/mips/svr4-t.h, config/mips/t-bsd, config/mips/t-bsd-gas, config/mips/t-svr3, config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas, config/mips/t-ultrix, config/mips/ultrix.h, config/nextstep-protos.h, config/nextstep.c, config/nextstep.h, config/nextstep21.h, config/ns32k/encore.h, config/ns32k/merlin.h, config/ns32k/pc532-mach.h, config/ns32k/pc532-min.h, config/ns32k/pc532.h, config/ns32k/sequent.h, config/ns32k/tek6000.h, config/ns32k/tek6100.h, config/ns32k/tek6200.h, config/pj/lib1funcs.S, config/pj/linux.h, config/pj/pj-protos.h, config/pj/pj.c, config/pj/pj.h, config/pj/pj.md, config/pj/pjl.h, config/pj/t-pj, config/sparc/rtems.h, config/we32k/we32k-protos.h, config/we32k/we32k.c, config/we32k/we32k.h, config/we32k/we32k.md: Delete file. From-SVN: r53862
2002-05-25 04:10:46 +02:00
tm_file="${tm_file} alpha/osf5.h"
tm_defines="${tm_defines} TARGET_SUPPORT_ARCH=1"
;;
esac
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"
xm_file="alpha/xm-vms.h"
tmake_file="alpha/t-alpha alpha/t-vms alpha/t-vms64 alpha/t-ieee"
prefix=/gnu
local_prefix=/gnu
;;
alpha*-dec-*vms*)
tm_file="${tm_file} alpha/vms.h"
xm_file=alpha/xm-vms.h
tmake_file="alpha/t-alpha alpha/t-vms alpha/t-ieee"
prefix=/gnu
local_prefix=/gnu
;;
arc-*-elf*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h svr4.h newlib-stdint.h ${tm_file}"
extra_parts="crtinit.o crtfini.o"
;;
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"
;;
MAINTAINERS (mt port): Remove. * MAINTAINERS (mt port): Remove. (sco5, unixware, sco udk): Remove. (Kean Johnston): Add to Write After Approval. fixincludes: * inclhack.def (AAB_svr4_replace_byteorder, AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory, libc1_G_va_list, libc1_ifdefd_memx, nested_motorola, ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime, solaris_mutex_init_1, solaris_socket, solaris_unistd, solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param, ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale, ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc, ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings, ultrix_strings2, ultrix_sys_time, ultrix_unistd, unicosmk_restrict, uw7_byteorder_fix, windiss_math1, windiss_math2, windiss_valist): Remove. * fixincl.x: Regenerate. * mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*, i370-*-openedition, i?86-*-moss*, i?86-*-uwin*, powerpc-*-eabiaix*): Remove. * tests/base/math.h: Update. * tests/base/pthread.h: Update. * tests/base/stdio.h: Update. * tests/base/stdlib.h: Update. * tests/base/string.h: Update. * tests/base/strings.h: Update. * tests/base/sys/file.h: Update. * tests/base/sys/limits.h: Update. * tests/base/sys/socket.h: Update. * tests/base/sys/stat.h: Update. * tests/base/sys/time.h: Update. * tests/base/testing.h: Update. * tests/base/unistd.h: Update. * tests/base/_G_config.h: Remove. * tests/base/arpa: Remove directory. * tests/base/fs: Remove directory. * tests/base/locale.h: Remove. * tests/base/machine: Remove directory. * tests/base/rpc/svc.h: Remove. * tests/base/sys/ioctl.h: Remove. * tests/base/sys/regset.h: Remove. * tests/base/sys/times.h: Remove. * tests/base/sys/utsname.h: Remove. * tests/base/widec.h: Remove. gcc: * config.gcc (Obsolete configurations): Remove list of configurations. (Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*, *-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*. Remove other targets matched by those patterns. (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff, i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove. Make code for Solaris 7 and greater unconditional for Solaris. (ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*): Remove --with-* handling. * config/rs6000/sysv4.h (-mwindiss): Remove from all specs. (LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC, ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC, LINK_OS_WINDISS_SPEC): Remove. * config/rs6000/sysv4.opt (mwindiss): Remove. * configure.ac (strongarm*-*-*, xscale*-*-*): Remove. * configure: Regenerate. * doc/cpp.texi: Don't mention BeOS. * doc/extend.texi (interrupt): Don't mention MS1. * doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv, m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv, alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout, i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4, powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix): Remove. * doc/invoke.texi (MT Options): Remove. (-mwindiss): Remove. (CRIS Options): Remove cris-axis-aout references. (HPPA Options): Don't mention hppa1.1-*-pro. * doc/md.texi: (MorphoTech family): Remove. * libgcc2.c: Don't handle UWIN. * config/alpha/t-unicosmk: Remove. * config/alpha/unicosmk.h: Remove. * config/arm/kaos-arm.h: Remove. * config/arm/kaos-strongarm.h: Remove. * config/arm/strongarm-coff.h: Remove. * config/arm/strongarm-elf.h: Remove. * config/arm/strongarm-pe.h: Remove. * config/arm/t-strongarm-pe: Remove. * config/arm/t-xscale-coff: Remove. * config/arm/t-xscale-elf: Remove. * config/arm/xscale-coff.h: Remove. * config/arm/xscale-elf.h: Remove. * config/chorus.h: Remove. * config/cris/aout.h: Remove. * config/cris/aout.opt: Remove. * config/cris/t-aout: Remove. * config/i386/beos-elf.h: Remove. * config/i386/kaos-i386.h: Remove. * config/i386/ptx4-i.h: Remove. * config/i386/sco5.h: Remove. * config/i386/sco5.opt: Remove. * config/i386/sysv4-cpp.h: Remove. * config/i386/sysv5.h: Remove. * config/i386/t-beos: Remove. * config/i386/t-sco5: Remove. * config/i386/t-uwin: Remove. * config/i386/uwin.asm: Remove. * config/i386/uwin.h: Remove. * config/kaos.h: Remove. * config/mips/windiss.h: Remove. * config/mt: Remove directory. * config/pa/pa-osf.h: Remove. * config/pa/pa-pro-end.h: Remove. * config/pa/t-pro: Remove. * config/ptx4.h: Remove. * config/rs6000/beos.h: Remove. * config/rs6000/kaos-ppc.h: Remove. * config/rs6000/t-beos: Remove. * config/rs6000/windiss.h: Remove. * config/sh/kaos-sh.h: Remove. * config/sol2-6.h: Remove. * config/sparc/sol26-sld.h: Remove. * config/sparc/sysv4-only.h: Remove. * config/vax/bsd.h: Remove. * config/vax/t-memfuncs: Remove. * config/vax/ultrix.h: Remove. * config/vax/vaxv.h: Remove. * config/windiss.h: Remove. gcc/testsuite: * g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*. * g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*. * g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris 7. * gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*, strongarm*-*-* and cris-*-aout*. * gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20030909-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20031108-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20040813-1.c: Don't handle *-*-sysv5*. * gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*. * gcc.dg/arm-scd42-1.c: Use target arm*-*-*. * gcc.dg/arm-scd42-3.c: Use target arm*-*-*. * gcc.dg/cpp/assert4.c: Don't handle BeOS. * gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*. * gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and xscale*-*-elf*. * gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*. * gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1. * gcc.misc-tests/arm-isr.exp: Use target arm*-*-*. * gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-stackalign-1.c: Don't handle powerpc-*-sysv*. * gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*. * lib/target-supports.exp: Don't handle strongarm*-*-elf, xscale*-*-elf and *-*-windiss. * obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*. * gcc.dg/mt-loopi1.c: Remove. gnattools: * configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove. * configure: Regenerate. libcpp: * configure.ac (parisc*64*-*-*): Remove. * configure: Regenerate. libffi: * configure.ac (parisc*-*-linux*, powerpc-*-sysv*, powerpc-*-beos*): Remove. * configure: Regenerate. libgcc: * config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove. libjava: * configure.host (strongarm*-elf, xscale*-elf): Remove. libstdc++-v3: * configure.host (xscale, ep9312, m680[246]0, solaris2.5, solaris2.5.[0-9], solaris2.6, windiss*): Remove. * crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove. * configure: Regenerate. * config/os/solaris/solaris2.5: Remove directory. * config/os/solaris/solaris2.6: Remove directory. * config/os/windiss: Remove directory. From-SVN: r136534
2008-06-07 20:00:15 +02:00
arm*-*-freebsd*)
tm_file="dbxelf.h elfos.h ${fbsd_tm_file} arm/elf.h arm/aout.h arm/freebsd.h arm/arm.h"
tmake_file="${tmake_file} arm/t-arm arm/t-strongarm-elf"
;;
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"
tmake_file="${tmake_file} arm/t-arm arm/t-netbsd"
;;
arm*-*-netbsd*)
netbsd.h (TARGET_HAS_F_SETLKW): define. * config/netbsd.h (TARGET_HAS_F_SETLKW): define. Split a.out-specific bits into... * config/netbsd-aout.h: ...this. * config/netbsd-elf.h: New file. * config/alpha/netbsd-elf.h: Remove. * config/alpha/netbsd.h: Rewrite for a NetBSD/alpha ELF target. * config/i386/netbsd-elf.h (LIB_SPEC): Remove. (STARTFILE_SPEC): Remove redundant definition. (ENDFILE_SPEC): Likewise. (LINK_SPEC): Likewise. (CPP_SPEC): Likewise. (ASM_SPEC): Likewise. (LIB_SPEC): Likewise. (SWITCH_TAKES_ARG): Likewise. (TARGET_MEM_FUNCTIONS): Likewise. (CPP_PREDEFINES): Redefine. (ASM_FINAL_SPEC): Remove redefinition. (ASM_COMMENT_START): Redefine. (FUNCTION_PROFILER): Define. (TARGET_VERSION): Redefine. Comment and formatting cleanup. * config/i386/netbsd.h: Include <netbsd-aout.h>. * config/m68k/netbsd.h: Include <netbsd-aout.h>. * config/mips/netbsd.h: Rewrite for NetBSD/mips ELF target, big- or little-endian. * config/ns32k/netbsd.h: Include <netbsd-aout.h>. * config.gcc (*-*-netbsd*): Add definitions common to all NetBSD configs. (alpha*-*-netbsd*): Remove redundant xm_defines, gas, and gnu_ld definitions. Add netbsd-elf.h to and remove alpha/netbsd-elf.h from tm_file. Remove alpha/t-crtfm from tmake_file, and don't lose previous tmake_file contents. (arm*-*-netbsd*): Add netbsd-aout.h to tm_file. (i[34567]86-*-netbsdelf*): Remove redundant xm_defines, gas, and gnu_ld definitions. Add netbsd-elf.h to tm_file. (mips-dec-netbsd*): Remove as alias for mipsel-*-netbsd*. (mipsel-*-netbsd*): Rename this to... (mips*-*-netbsd*): ...this. Add elfos.h to tm_file. Add mips/little.h to tm_file for mips*el-*. (powerpc-*-netbsd*): Remove redundant xm_defines definition. (sparc-*-netbsd*): Add netbsd-aout.h to tm_file. (vax-*-netbsd*): Add netbsd-aout.h to tm_file. From-SVN: r49064
2002-01-22 05:23:07 +01:00
tm_file="arm/aout.h arm/arm.h netbsd.h netbsd-aout.h arm/netbsd.h"
tmake_file="t-netbsd arm/t-arm arm/t-netbsd"
extra_parts=""
use_collect2=yes
;;
arm*-*-linux*) # ARM GNU/Linux with ELF
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h linux.h glibc-stdint.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
configure.in (arm-*-linux-gnueabi): Add to noconfigdirs target-libffi... / * configure.in (arm-*-linux-gnueabi): Add to noconfigdirs target-libffi, target-qthreads, target-libjava, and targetlibobjc. * configure: Regenerate. gcc/ Merge from csl-arm-branch: 2005-09-07 Paul Brook <paul@codesourcery.com> * config/arm/linux-eabi.h (SUBTARGET_EXTRA_LINK_SPEC): Prepend a space to string. 2005-04-30 Paul Brook <paul@codesourcery.com> * config/arm/bpabi.h (TARGET_DEFAULT): Define. * config/arm/linux-eabi.h (SUBTARGET_CPU_DEFAULT): Define. 2005-03-07 Daniel Jacobowitz <dan@codesourcery.com> * config/arm/arm.c (arm_all_abis): Add aapcs-linux. (arm_override_options): Use TARGET_AAPCS_BASED. * config/arm/arm.h (enum arm_abi_type): Add ARM_ABI_AAPCS_LINUX. (PTRDIFF_TYPE): Use int for AAPCS. (DEFAULT_SHORT_ENUMS): Use false for aapcs-linux. * config/arm/linux-eabi.h (ARM_DEFAULT_ABI, WCHAR_TYPE): Define. (DEFAULT_SHORT_ENUMS): Delete. * doc/invoke.texi (ARM Options): Document -mabi=aapcs-linux. 2004-12-15 Daniel Jacobowitz <dan@codesourcery.com> * config/arm/arm.h (DEFAULT_SHORT_ENUMS): Wrap in #ifndef. * config/arm/linux-eabi.h (DEFAULT_SHORT_ENUMS): Define to 0. * config/arm/t-linux-eabi (TARGET_LIBGCC2_CFLAGS): Set to -fPIC. 2004-12-03 Mark Mitchell <mark@codesourcery.com> * config/arm/linux-eabi.h (LIBGCC_SPEC): Do not define. 2004-11-22 Mark Mitchell <mark@codesourcery.com> * config.gcc (arm*-*-linux-gnueabi): Use __cxa_atexit. 2004-11-19 Mark Mitchell <mark@codesourcery.com> * config.gcc (arm*-*-linux-gnueabi): Add it. * config/arm/bpabi.h (FPUTYPE_DEFAULT): Undefine it before redefining it. (TARGET_OS_CPP_BUILTINS): Likeiwse. * config/arm/linux-eabi.h: New file. * config/arm/linux-elf.h (LINUX_TARGET_INTERPRETER): New macro. (LINUX_TARET_LINK_SPEC): Likewise. (LINK_SPEC): Use it. * config/arm/t-linux-eabi: New file. libcpp/ * configure.ac: Require 64-bit int for arm*-*-*eabi*. * configure: Regenerate. libstdc++/ Merge from csl-arm-branch: 2004-12-15 Daniel Jacobowitz <dan@codesourcery.com> * libstdc++-v3/config/linker-map.gnu: Add ARM EABI symbols. From-SVN: r105121
2005-10-08 20:17:20 +02:00
tmake_file="${tmake_file} t-linux arm/t-arm"
case ${target} in
arm*-*-linux-*eabi)
configure.in (arm-*-linux-gnueabi): Add to noconfigdirs target-libffi... / * configure.in (arm-*-linux-gnueabi): Add to noconfigdirs target-libffi, target-qthreads, target-libjava, and targetlibobjc. * configure: Regenerate. gcc/ Merge from csl-arm-branch: 2005-09-07 Paul Brook <paul@codesourcery.com> * config/arm/linux-eabi.h (SUBTARGET_EXTRA_LINK_SPEC): Prepend a space to string. 2005-04-30 Paul Brook <paul@codesourcery.com> * config/arm/bpabi.h (TARGET_DEFAULT): Define. * config/arm/linux-eabi.h (SUBTARGET_CPU_DEFAULT): Define. 2005-03-07 Daniel Jacobowitz <dan@codesourcery.com> * config/arm/arm.c (arm_all_abis): Add aapcs-linux. (arm_override_options): Use TARGET_AAPCS_BASED. * config/arm/arm.h (enum arm_abi_type): Add ARM_ABI_AAPCS_LINUX. (PTRDIFF_TYPE): Use int for AAPCS. (DEFAULT_SHORT_ENUMS): Use false for aapcs-linux. * config/arm/linux-eabi.h (ARM_DEFAULT_ABI, WCHAR_TYPE): Define. (DEFAULT_SHORT_ENUMS): Delete. * doc/invoke.texi (ARM Options): Document -mabi=aapcs-linux. 2004-12-15 Daniel Jacobowitz <dan@codesourcery.com> * config/arm/arm.h (DEFAULT_SHORT_ENUMS): Wrap in #ifndef. * config/arm/linux-eabi.h (DEFAULT_SHORT_ENUMS): Define to 0. * config/arm/t-linux-eabi (TARGET_LIBGCC2_CFLAGS): Set to -fPIC. 2004-12-03 Mark Mitchell <mark@codesourcery.com> * config/arm/linux-eabi.h (LIBGCC_SPEC): Do not define. 2004-11-22 Mark Mitchell <mark@codesourcery.com> * config.gcc (arm*-*-linux-gnueabi): Use __cxa_atexit. 2004-11-19 Mark Mitchell <mark@codesourcery.com> * config.gcc (arm*-*-linux-gnueabi): Add it. * config/arm/bpabi.h (FPUTYPE_DEFAULT): Undefine it before redefining it. (TARGET_OS_CPP_BUILTINS): Likeiwse. * config/arm/linux-eabi.h: New file. * config/arm/linux-elf.h (LINUX_TARGET_INTERPRETER): New macro. (LINUX_TARET_LINK_SPEC): Likewise. (LINK_SPEC): Use it. * config/arm/t-linux-eabi: New file. libcpp/ * configure.ac: Require 64-bit int for arm*-*-*eabi*. * configure: Regenerate. libstdc++/ Merge from csl-arm-branch: 2004-12-15 Daniel Jacobowitz <dan@codesourcery.com> * libstdc++-v3/config/linker-map.gnu: Add ARM EABI symbols. From-SVN: r105121
2005-10-08 20:17:20 +02:00
tm_file="$tm_file arm/bpabi.h arm/linux-eabi.h"
tmake_file="$tmake_file arm/t-arm-elf arm/t-bpabi arm/t-linux-eabi"
config.gcc (i?86-*-darwin): Add 64-bit HWI support. 2006-09-08 Eric Christopher <echristo@apple.com> * config.gcc (i?86-*-darwin): Add 64-bit HWI support. * config/t-slibgcc-darwin: Support x86_64 multilib. * config/i386/i386.h (JUMP_TABLES_IN_TEXT_SECTION): Return 1 for x86_64-darwin. * config/i386/t-darwin: Add m64 multilib. (LIB2_SIDITI_CONV_FUNCS): Use. (LIB2FUNCS_EXTRA): Ditto. * config/i386/darwin.h: Support x86_64. * config/i386/i386.c (override_options): Turn on flag_pic for x86_64-darwin. Disable flag_omit_pointer. (get_pc_thunk_name): Assert !TARGET_64BIT. (legitimate_address_p): Disable machopic addressing for x86_64. (legitimize_pic_address): Ditto. (ix86_expand_move): Ditto. (ix86_expand_call): Ditto. (machopic_output_stub): Ditto. * config/darwin.c (machopic_select_section): Support literal16. (machopic_select_rtx_section): Ditto. * config/darwin-sections.def: Ditto. * config/darwin-64.c: New. 2006-09-08 Eric Christopher <echristo@apple.com> * gcc.target/i386/20060512-3.c: Run test on ilp32 only. * gcc.target/i386/memcpy-1.c: Ditto. * gcc.target/i386/asm-1.c: Ditto. * gcc.target/i386/20060512-4.c: Ditto. * gcc.target/i386/compress-float-387.c: Ditto. * gcc.target/i386/20060512-1.c: Ditto. * gcc.target/i386/compress-float-sse.c: Ditto. * gcc.target/i386/20060512-2.c: Ditto. * gcc.target/i386/compress-float-sse-pic.c: Ditto. * gcc.target/i386/stack-prot-kernel.c: Ditto. * gcc.target/i386/compress-float-387-pic.c: Ditto. * gcc.dg/pr26449.c: Ditto. * gcc.dg/attr-ms_struct-2.c: Ditto. * gcc.dg/attr-ms_struct-1.c: Ditto. * gcc.misc-tests/linkage.exp: Fix 64-bit darwin support. 2006-09-08 Eric Christopher <echristo@apple.com> * configure.ac: Add 64-bit HWI support for i?86-darwin. From-SVN: r116795
2006-09-09 02:27:47 +02:00
# The BPABI long long divmod functions return a 128-bit value in
configure.in (arm-*-linux-gnueabi): Add to noconfigdirs target-libffi... / * configure.in (arm-*-linux-gnueabi): Add to noconfigdirs target-libffi, target-qthreads, target-libjava, and targetlibobjc. * configure: Regenerate. gcc/ Merge from csl-arm-branch: 2005-09-07 Paul Brook <paul@codesourcery.com> * config/arm/linux-eabi.h (SUBTARGET_EXTRA_LINK_SPEC): Prepend a space to string. 2005-04-30 Paul Brook <paul@codesourcery.com> * config/arm/bpabi.h (TARGET_DEFAULT): Define. * config/arm/linux-eabi.h (SUBTARGET_CPU_DEFAULT): Define. 2005-03-07 Daniel Jacobowitz <dan@codesourcery.com> * config/arm/arm.c (arm_all_abis): Add aapcs-linux. (arm_override_options): Use TARGET_AAPCS_BASED. * config/arm/arm.h (enum arm_abi_type): Add ARM_ABI_AAPCS_LINUX. (PTRDIFF_TYPE): Use int for AAPCS. (DEFAULT_SHORT_ENUMS): Use false for aapcs-linux. * config/arm/linux-eabi.h (ARM_DEFAULT_ABI, WCHAR_TYPE): Define. (DEFAULT_SHORT_ENUMS): Delete. * doc/invoke.texi (ARM Options): Document -mabi=aapcs-linux. 2004-12-15 Daniel Jacobowitz <dan@codesourcery.com> * config/arm/arm.h (DEFAULT_SHORT_ENUMS): Wrap in #ifndef. * config/arm/linux-eabi.h (DEFAULT_SHORT_ENUMS): Define to 0. * config/arm/t-linux-eabi (TARGET_LIBGCC2_CFLAGS): Set to -fPIC. 2004-12-03 Mark Mitchell <mark@codesourcery.com> * config/arm/linux-eabi.h (LIBGCC_SPEC): Do not define. 2004-11-22 Mark Mitchell <mark@codesourcery.com> * config.gcc (arm*-*-linux-gnueabi): Use __cxa_atexit. 2004-11-19 Mark Mitchell <mark@codesourcery.com> * config.gcc (arm*-*-linux-gnueabi): Add it. * config/arm/bpabi.h (FPUTYPE_DEFAULT): Undefine it before redefining it. (TARGET_OS_CPP_BUILTINS): Likeiwse. * config/arm/linux-eabi.h: New file. * config/arm/linux-elf.h (LINUX_TARGET_INTERPRETER): New macro. (LINUX_TARET_LINK_SPEC): Likewise. (LINK_SPEC): Use it. * config/arm/t-linux-eabi: New file. libcpp/ * configure.ac: Require 64-bit int for arm*-*-*eabi*. * configure: Regenerate. libstdc++/ Merge from csl-arm-branch: 2004-12-15 Daniel Jacobowitz <dan@codesourcery.com> * libstdc++-v3/config/linker-map.gnu: Add ARM EABI symbols. From-SVN: r105121
2005-10-08 20:17:20 +02:00
# 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
;;
*)
tmake_file="$tmake_file arm/t-linux"
;;
esac
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
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/linux-gas.h arm/uclinux-elf.h glibc-stdint.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"
tmake_file="${tmake_file} arm/t-arm-softfp soft-fp/t-softfp"
;;
arm*-*-ecos-elf)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
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"
mips.md: Add unspec #2. 2001-09-15 Eric Christopher <echristo@redhat.com> * config/mips/mips.md: Add unspec #2. (reload_indi): Use. (reload_outdi): Ditto. (reload_outsi): Ditto. (HILO_delay): New. 2001-09-15 Eric Christopher <echristo@redhat.com> Jason Eckhardt <jle@redhat.com> * config.gcc: Add mipsisa32 target and mipsisa32-linux target. * config/mips/isa32-linux.h: New file. * config/mips/isa3264.h: Ditto. * config/mips/mips-protos.h: Add mips_hard_regno_nregs. * config/mips/mips.c (mips_hard_regno_nregs): Move here from mips.h. (output_block_mode): Support MEABI. (function_arg): Ditto. Fix floating point arg passing. (mips_va_start): Ditto. (override_options): Add isas 32 and 64, meabi, mips32 and mips64 processors. (mips_asm_file_start): Add new section to pass abi to gdb. (function_arg_pass_by_reference): Support MEABI. (mips_parse_cpu): Support mips32 and mips64 processors. * config/mips/mips.h: Support ABI_MEABI, TARGET_MIPS4KC, TARGET_MIPS5KC. Support isa32 and isa64. (processor_type): Add r4kc, r5kc, r20kc. (GENERATE_MULT3_SI): New. (GENERATE_MULT3_DI): Ditto. (GENERATE_MULT3): Remove. (ISA_HAS_64BIT_REGS): Add isa == 64. (ISA_HAS_8CC): Add mips_isa = 32 and 64. (ISA_HAS_MADD_MSUB): New. (ISA_HAS_CLZ_CLO): Ditto. (ISA_HAS_DCLZ_DCLO): Ditto. (ABI_GAS_ASM_SPEC): New. (GAS_ASM_SPEC): Use. Add support for mips32, mips64. (ASM_SPEC): Ditto. (LINK_SPEC): Ditto. (SUBTARGET_CC1_SPEC): Ditto. (SUBTARGET_CPP_SIZE_SPEC): Ditto. (PAD_VARARGS_DOWN): Support MEABI. (HARD_REGNO_NREGS): Move to mips.c. (ASM_OUTPUT_IDENT): Add #undef. * config/mips/mips.md: Add r4kc, r5kc, r20kc. (mulsi3): Use GENERATE_MULT3_SI. (mulsi3_mult3): Ditto. Support mips32, mips64. (mul_acc_si): Use ISA_HAS_MADD_MSUB. (mul_sub_si): New pattern. (unnamed splitters): New. (muldi3): Use GENERATE_MULT3_DI. (muldi3_internal2): Ditto. (movdicc): Support mips32. * config/mips/t-isa3264: New file. From-SVN: r45623
2001-09-15 04:03:14 +02:00
;;
configure.in (arm*-*-eabi*): New target. * configure.in (arm*-*-eabi*): New target. * configure: Regenerate. * configure.ac (arm*-*-eabi*): New target. (arm*-*-symbianelf*): Likewise. * configure: Regenerated. * config.gcc (arm*-*-eabi*): New target. * defaults.h (TARGET_LIBGCC_FUNCS): New macro. (TARGET_LIB_INT_CMP_BIASED): Likewise. * expmed.c (expand_divmod): Try a two-valued divmod function as a last resort. * gthr.h: Remove bogus tokens at end of #pragma. * optabs.c (expand_twoval_binop_libfunc): New function. (prepare_cmp_insn): Handle the !TARGET_LIB_INT_CMP_BIASED case. (prepare_float_lib_cmp): Try reversing the condition. (debug_optab_libfuncs): New function. * optabs.h (expand_twoval_binop_libfunc): Declare. * config/arm/arm.c (arm_init_libfuncs): New function. (arm_compute_initial_eliminatino_offset): Return HOST_WIDE_INT. (TARGET_INIT_LIBFUNCS): Define it. * config/arm/arm.h (TARGET_BPABI): New macro. * config/arm/arm-protos.h (arm_compute_initial_elimination_offset): Return HOST_WIDE_INT. * config/arm/bpabi.S: New file. * config/arm/bpabi.c: Likewise. * config/arm/bpabi.h: Likewise. * config/arm/ieee754-df.S (__aeabi_dneg): New function or alias. (__aeabi_drsub): Likewise. (__aeabi_dsub): Likewise. (__aeabi_dadd): Likewise. (__aeabi_ui2d): Likewise. (__aeabi_i2d): Likewise. (__aeabi_f2d): Likewise. (__aeabi_dmul): Likewise. (__aeabi_ddiv): Likewise. (__aeabi_cdrcmple): Likewise. (__aeabi_cdcmpeq): Likewise. (__aeabi_cdcmple): Likewise. (__aeabi_dcmpeq): Likewise. (__aeabi_dcmplt): Likewise. (__aeabi_dcmple): Likewise. (__aeabi_dcmpge): Likewise. (__aeabi_dcmpgt): Likewise. (__aeabi_dcmpun): Likewise. (__aeabi_d2iz): Likewise. (__aeabi_d2uiz): Likewise. (__aeabi_d2f): Likewise. * config/arm/ieee754-sf.S (__aeabi_fneg): New function or alias. (__aeabi_frsub): Likewise. (__aeabi_fsub): Likewise. (__aeabi_fadd): Likewise. (__aeabi_ui2f): Likewise. (__aeabi_i2f): Likewise. (__aeabi_fmul): Likewise. (__aeabi_fdiv): Likewise. (__aeabi_cfrcmple): Likewise. (__aeabi_cfcmpeq): Likewise. (__aeabi_cfcmple): Likewise. (__aeabi_fcmpeq): Likewise. (__aeabi_fcmplt): Likewise. (__aeabi_fcmple): Likewise. (__aeabi_fcmpge): Likewise. (__aeabi_fcmpgt): Likewise. (__aeabi_fcmpun): Likewise. (__aeabi_f2iz): Likewise. (__aeabi_f2uiz): Likewise. * config/arm/lib1funcs.asm (ARM_CALL): New macro. (__aeabi_uidivmod): New function or alias. (__aeabi_idivmod): Likewise. (__aeabi_idiv0): Likewise. (__aeabi_ldiv0): Likewise. (__aeabi_llsr): Likewise. (__aeabi_lasr): Likewise. (__aeabi_llsl): Likewise. (bpabi.S): Include it. * config/arm/libgcc-bpabi.ver: New file. * config/arm/symbian.h (ARM_DEFAULT_ABI): Remove. (LINK_SPEC): Remove. * config/arm/t-arm-elf (LIB1ASMFUNCS): Add __aeabi_lcmp and __aeabi_ulcmp. * config/arm/t-bpabi: New file. * doc/tm.texi (TARGET_LIBGCC_FUNCS): New entry. (TARGET_LIB_INT_CMP_BIASED): Likewise. * gcc.dg/testsuite/gcc.dg/arm-eabi1.c: New test. * gcc.dg/dll-2.c: Fix dg-require syntax. * gcc.misc-tests/arm-isr.c (abort): Declare. (exit): Likewise. From-SVN: r85788
2004-08-11 04:50:14 +02:00
arm*-*-eabi* | arm*-*-symbianelf* )
config.gcc (i?86-*-darwin): Add 64-bit HWI support. 2006-09-08 Eric Christopher <echristo@apple.com> * config.gcc (i?86-*-darwin): Add 64-bit HWI support. * config/t-slibgcc-darwin: Support x86_64 multilib. * config/i386/i386.h (JUMP_TABLES_IN_TEXT_SECTION): Return 1 for x86_64-darwin. * config/i386/t-darwin: Add m64 multilib. (LIB2_SIDITI_CONV_FUNCS): Use. (LIB2FUNCS_EXTRA): Ditto. * config/i386/darwin.h: Support x86_64. * config/i386/i386.c (override_options): Turn on flag_pic for x86_64-darwin. Disable flag_omit_pointer. (get_pc_thunk_name): Assert !TARGET_64BIT. (legitimate_address_p): Disable machopic addressing for x86_64. (legitimize_pic_address): Ditto. (ix86_expand_move): Ditto. (ix86_expand_call): Ditto. (machopic_output_stub): Ditto. * config/darwin.c (machopic_select_section): Support literal16. (machopic_select_rtx_section): Ditto. * config/darwin-sections.def: Ditto. * config/darwin-64.c: New. 2006-09-08 Eric Christopher <echristo@apple.com> * gcc.target/i386/20060512-3.c: Run test on ilp32 only. * gcc.target/i386/memcpy-1.c: Ditto. * gcc.target/i386/asm-1.c: Ditto. * gcc.target/i386/20060512-4.c: Ditto. * gcc.target/i386/compress-float-387.c: Ditto. * gcc.target/i386/20060512-1.c: Ditto. * gcc.target/i386/compress-float-sse.c: Ditto. * gcc.target/i386/20060512-2.c: Ditto. * gcc.target/i386/compress-float-sse-pic.c: Ditto. * gcc.target/i386/stack-prot-kernel.c: Ditto. * gcc.target/i386/compress-float-387-pic.c: Ditto. * gcc.dg/pr26449.c: Ditto. * gcc.dg/attr-ms_struct-2.c: Ditto. * gcc.dg/attr-ms_struct-1.c: Ditto. * gcc.misc-tests/linkage.exp: Fix 64-bit darwin support. 2006-09-08 Eric Christopher <echristo@apple.com> * configure.ac: Add 64-bit HWI support for i?86-darwin. From-SVN: r116795
2006-09-09 02:27:47 +02:00
# The BPABI long long divmod functions return a 128-bit value in
configure.in (arm*-*-eabi*): New target. * configure.in (arm*-*-eabi*): New target. * configure: Regenerate. * configure.ac (arm*-*-eabi*): New target. (arm*-*-symbianelf*): Likewise. * configure: Regenerated. * config.gcc (arm*-*-eabi*): New target. * defaults.h (TARGET_LIBGCC_FUNCS): New macro. (TARGET_LIB_INT_CMP_BIASED): Likewise. * expmed.c (expand_divmod): Try a two-valued divmod function as a last resort. * gthr.h: Remove bogus tokens at end of #pragma. * optabs.c (expand_twoval_binop_libfunc): New function. (prepare_cmp_insn): Handle the !TARGET_LIB_INT_CMP_BIASED case. (prepare_float_lib_cmp): Try reversing the condition. (debug_optab_libfuncs): New function. * optabs.h (expand_twoval_binop_libfunc): Declare. * config/arm/arm.c (arm_init_libfuncs): New function. (arm_compute_initial_eliminatino_offset): Return HOST_WIDE_INT. (TARGET_INIT_LIBFUNCS): Define it. * config/arm/arm.h (TARGET_BPABI): New macro. * config/arm/arm-protos.h (arm_compute_initial_elimination_offset): Return HOST_WIDE_INT. * config/arm/bpabi.S: New file. * config/arm/bpabi.c: Likewise. * config/arm/bpabi.h: Likewise. * config/arm/ieee754-df.S (__aeabi_dneg): New function or alias. (__aeabi_drsub): Likewise. (__aeabi_dsub): Likewise. (__aeabi_dadd): Likewise. (__aeabi_ui2d): Likewise. (__aeabi_i2d): Likewise. (__aeabi_f2d): Likewise. (__aeabi_dmul): Likewise. (__aeabi_ddiv): Likewise. (__aeabi_cdrcmple): Likewise. (__aeabi_cdcmpeq): Likewise. (__aeabi_cdcmple): Likewise. (__aeabi_dcmpeq): Likewise. (__aeabi_dcmplt): Likewise. (__aeabi_dcmple): Likewise. (__aeabi_dcmpge): Likewise. (__aeabi_dcmpgt): Likewise. (__aeabi_dcmpun): Likewise. (__aeabi_d2iz): Likewise. (__aeabi_d2uiz): Likewise. (__aeabi_d2f): Likewise. * config/arm/ieee754-sf.S (__aeabi_fneg): New function or alias. (__aeabi_frsub): Likewise. (__aeabi_fsub): Likewise. (__aeabi_fadd): Likewise. (__aeabi_ui2f): Likewise. (__aeabi_i2f): Likewise. (__aeabi_fmul): Likewise. (__aeabi_fdiv): Likewise. (__aeabi_cfrcmple): Likewise. (__aeabi_cfcmpeq): Likewise. (__aeabi_cfcmple): Likewise. (__aeabi_fcmpeq): Likewise. (__aeabi_fcmplt): Likewise. (__aeabi_fcmple): Likewise. (__aeabi_fcmpge): Likewise. (__aeabi_fcmpgt): Likewise. (__aeabi_fcmpun): Likewise. (__aeabi_f2iz): Likewise. (__aeabi_f2uiz): Likewise. * config/arm/lib1funcs.asm (ARM_CALL): New macro. (__aeabi_uidivmod): New function or alias. (__aeabi_idivmod): Likewise. (__aeabi_idiv0): Likewise. (__aeabi_ldiv0): Likewise. (__aeabi_llsr): Likewise. (__aeabi_lasr): Likewise. (__aeabi_llsl): Likewise. (bpabi.S): Include it. * config/arm/libgcc-bpabi.ver: New file. * config/arm/symbian.h (ARM_DEFAULT_ABI): Remove. (LINK_SPEC): Remove. * config/arm/t-arm-elf (LIB1ASMFUNCS): Add __aeabi_lcmp and __aeabi_ulcmp. * config/arm/t-bpabi: New file. * doc/tm.texi (TARGET_LIBGCC_FUNCS): New entry. (TARGET_LIB_INT_CMP_BIASED): Likewise. * gcc.dg/testsuite/gcc.dg/arm-eabi1.c: New test. * gcc.dg/dll-2.c: Fix dg-require syntax. * gcc.misc-tests/arm-isr.c (abort): Declare. (exit): Likewise. From-SVN: r85788
2004-08-11 04:50:14 +02:00
# registers r0-r3. Correctly modeling that requires the use of
# TImode.
need_64bit_hwint=yes
default_use_cxa_atexit=yes
configure.in (arm*-*-eabi*): New target. * configure.in (arm*-*-eabi*): New target. * configure: Regenerate. * configure.ac (arm*-*-eabi*): New target. (arm*-*-symbianelf*): Likewise. * configure: Regenerated. * config.gcc (arm*-*-eabi*): New target. * defaults.h (TARGET_LIBGCC_FUNCS): New macro. (TARGET_LIB_INT_CMP_BIASED): Likewise. * expmed.c (expand_divmod): Try a two-valued divmod function as a last resort. * gthr.h: Remove bogus tokens at end of #pragma. * optabs.c (expand_twoval_binop_libfunc): New function. (prepare_cmp_insn): Handle the !TARGET_LIB_INT_CMP_BIASED case. (prepare_float_lib_cmp): Try reversing the condition. (debug_optab_libfuncs): New function. * optabs.h (expand_twoval_binop_libfunc): Declare. * config/arm/arm.c (arm_init_libfuncs): New function. (arm_compute_initial_eliminatino_offset): Return HOST_WIDE_INT. (TARGET_INIT_LIBFUNCS): Define it. * config/arm/arm.h (TARGET_BPABI): New macro. * config/arm/arm-protos.h (arm_compute_initial_elimination_offset): Return HOST_WIDE_INT. * config/arm/bpabi.S: New file. * config/arm/bpabi.c: Likewise. * config/arm/bpabi.h: Likewise. * config/arm/ieee754-df.S (__aeabi_dneg): New function or alias. (__aeabi_drsub): Likewise. (__aeabi_dsub): Likewise. (__aeabi_dadd): Likewise. (__aeabi_ui2d): Likewise. (__aeabi_i2d): Likewise. (__aeabi_f2d): Likewise. (__aeabi_dmul): Likewise. (__aeabi_ddiv): Likewise. (__aeabi_cdrcmple): Likewise. (__aeabi_cdcmpeq): Likewise. (__aeabi_cdcmple): Likewise. (__aeabi_dcmpeq): Likewise. (__aeabi_dcmplt): Likewise. (__aeabi_dcmple): Likewise. (__aeabi_dcmpge): Likewise. (__aeabi_dcmpgt): Likewise. (__aeabi_dcmpun): Likewise. (__aeabi_d2iz): Likewise. (__aeabi_d2uiz): Likewise. (__aeabi_d2f): Likewise. * config/arm/ieee754-sf.S (__aeabi_fneg): New function or alias. (__aeabi_frsub): Likewise. (__aeabi_fsub): Likewise. (__aeabi_fadd): Likewise. (__aeabi_ui2f): Likewise. (__aeabi_i2f): Likewise. (__aeabi_fmul): Likewise. (__aeabi_fdiv): Likewise. (__aeabi_cfrcmple): Likewise. (__aeabi_cfcmpeq): Likewise. (__aeabi_cfcmple): Likewise. (__aeabi_fcmpeq): Likewise. (__aeabi_fcmplt): Likewise. (__aeabi_fcmple): Likewise. (__aeabi_fcmpge): Likewise. (__aeabi_fcmpgt): Likewise. (__aeabi_fcmpun): Likewise. (__aeabi_f2iz): Likewise. (__aeabi_f2uiz): Likewise. * config/arm/lib1funcs.asm (ARM_CALL): New macro. (__aeabi_uidivmod): New function or alias. (__aeabi_idivmod): Likewise. (__aeabi_idiv0): Likewise. (__aeabi_ldiv0): Likewise. (__aeabi_llsr): Likewise. (__aeabi_lasr): Likewise. (__aeabi_llsl): Likewise. (bpabi.S): Include it. * config/arm/libgcc-bpabi.ver: New file. * config/arm/symbian.h (ARM_DEFAULT_ABI): Remove. (LINK_SPEC): Remove. * config/arm/t-arm-elf (LIB1ASMFUNCS): Add __aeabi_lcmp and __aeabi_ulcmp. * config/arm/t-bpabi: New file. * doc/tm.texi (TARGET_LIBGCC_FUNCS): New entry. (TARGET_LIB_INT_CMP_BIASED): Likewise. * gcc.dg/testsuite/gcc.dg/arm-eabi1.c: New test. * gcc.dg/dll-2.c: Fix dg-require syntax. * gcc.misc-tests/arm-isr.c (abort): Declare. (exit): Likewise. From-SVN: r85788
2004-08-11 04:50:14 +02:00
tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/bpabi.h"
tmake_file="arm/t-arm arm/t-arm-elf"
configure.in (arm*-*-eabi*): New target. * configure.in (arm*-*-eabi*): New target. * configure: Regenerate. * configure.ac (arm*-*-eabi*): New target. (arm*-*-symbianelf*): Likewise. * configure: Regenerated. * config.gcc (arm*-*-eabi*): New target. * defaults.h (TARGET_LIBGCC_FUNCS): New macro. (TARGET_LIB_INT_CMP_BIASED): Likewise. * expmed.c (expand_divmod): Try a two-valued divmod function as a last resort. * gthr.h: Remove bogus tokens at end of #pragma. * optabs.c (expand_twoval_binop_libfunc): New function. (prepare_cmp_insn): Handle the !TARGET_LIB_INT_CMP_BIASED case. (prepare_float_lib_cmp): Try reversing the condition. (debug_optab_libfuncs): New function. * optabs.h (expand_twoval_binop_libfunc): Declare. * config/arm/arm.c (arm_init_libfuncs): New function. (arm_compute_initial_eliminatino_offset): Return HOST_WIDE_INT. (TARGET_INIT_LIBFUNCS): Define it. * config/arm/arm.h (TARGET_BPABI): New macro. * config/arm/arm-protos.h (arm_compute_initial_elimination_offset): Return HOST_WIDE_INT. * config/arm/bpabi.S: New file. * config/arm/bpabi.c: Likewise. * config/arm/bpabi.h: Likewise. * config/arm/ieee754-df.S (__aeabi_dneg): New function or alias. (__aeabi_drsub): Likewise. (__aeabi_dsub): Likewise. (__aeabi_dadd): Likewise. (__aeabi_ui2d): Likewise. (__aeabi_i2d): Likewise. (__aeabi_f2d): Likewise. (__aeabi_dmul): Likewise. (__aeabi_ddiv): Likewise. (__aeabi_cdrcmple): Likewise. (__aeabi_cdcmpeq): Likewise. (__aeabi_cdcmple): Likewise. (__aeabi_dcmpeq): Likewise. (__aeabi_dcmplt): Likewise. (__aeabi_dcmple): Likewise. (__aeabi_dcmpge): Likewise. (__aeabi_dcmpgt): Likewise. (__aeabi_dcmpun): Likewise. (__aeabi_d2iz): Likewise. (__aeabi_d2uiz): Likewise. (__aeabi_d2f): Likewise. * config/arm/ieee754-sf.S (__aeabi_fneg): New function or alias. (__aeabi_frsub): Likewise. (__aeabi_fsub): Likewise. (__aeabi_fadd): Likewise. (__aeabi_ui2f): Likewise. (__aeabi_i2f): Likewise. (__aeabi_fmul): Likewise. (__aeabi_fdiv): Likewise. (__aeabi_cfrcmple): Likewise. (__aeabi_cfcmpeq): Likewise. (__aeabi_cfcmple): Likewise. (__aeabi_fcmpeq): Likewise. (__aeabi_fcmplt): Likewise. (__aeabi_fcmple): Likewise. (__aeabi_fcmpge): Likewise. (__aeabi_fcmpgt): Likewise. (__aeabi_fcmpun): Likewise. (__aeabi_f2iz): Likewise. (__aeabi_f2uiz): Likewise. * config/arm/lib1funcs.asm (ARM_CALL): New macro. (__aeabi_uidivmod): New function or alias. (__aeabi_idivmod): Likewise. (__aeabi_idiv0): Likewise. (__aeabi_ldiv0): Likewise. (__aeabi_llsr): Likewise. (__aeabi_lasr): Likewise. (__aeabi_llsl): Likewise. (bpabi.S): Include it. * config/arm/libgcc-bpabi.ver: New file. * config/arm/symbian.h (ARM_DEFAULT_ABI): Remove. (LINK_SPEC): Remove. * config/arm/t-arm-elf (LIB1ASMFUNCS): Add __aeabi_lcmp and __aeabi_ulcmp. * config/arm/t-bpabi: New file. * doc/tm.texi (TARGET_LIBGCC_FUNCS): New entry. (TARGET_LIB_INT_CMP_BIASED): Likewise. * gcc.dg/testsuite/gcc.dg/arm-eabi1.c: New test. * gcc.dg/dll-2.c: Fix dg-require syntax. * gcc.misc-tests/arm-isr.c (abort): Declare. (exit): Likewise. From-SVN: r85788
2004-08-11 04:50:14 +02:00
case ${target} in
arm*-*-eabi*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="$tm_file arm/eabi.h newlib-stdint.h"
tmake_file="${tmake_file} arm/t-bpabi"
extra_options="${extra_options} arm/eabi.opt"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
;;
configure.in (arm*-*-eabi*): New target. * configure.in (arm*-*-eabi*): New target. * configure: Regenerate. * configure.ac (arm*-*-eabi*): New target. (arm*-*-symbianelf*): Likewise. * configure: Regenerated. * config.gcc (arm*-*-eabi*): New target. * defaults.h (TARGET_LIBGCC_FUNCS): New macro. (TARGET_LIB_INT_CMP_BIASED): Likewise. * expmed.c (expand_divmod): Try a two-valued divmod function as a last resort. * gthr.h: Remove bogus tokens at end of #pragma. * optabs.c (expand_twoval_binop_libfunc): New function. (prepare_cmp_insn): Handle the !TARGET_LIB_INT_CMP_BIASED case. (prepare_float_lib_cmp): Try reversing the condition. (debug_optab_libfuncs): New function. * optabs.h (expand_twoval_binop_libfunc): Declare. * config/arm/arm.c (arm_init_libfuncs): New function. (arm_compute_initial_eliminatino_offset): Return HOST_WIDE_INT. (TARGET_INIT_LIBFUNCS): Define it. * config/arm/arm.h (TARGET_BPABI): New macro. * config/arm/arm-protos.h (arm_compute_initial_elimination_offset): Return HOST_WIDE_INT. * config/arm/bpabi.S: New file. * config/arm/bpabi.c: Likewise. * config/arm/bpabi.h: Likewise. * config/arm/ieee754-df.S (__aeabi_dneg): New function or alias. (__aeabi_drsub): Likewise. (__aeabi_dsub): Likewise. (__aeabi_dadd): Likewise. (__aeabi_ui2d): Likewise. (__aeabi_i2d): Likewise. (__aeabi_f2d): Likewise. (__aeabi_dmul): Likewise. (__aeabi_ddiv): Likewise. (__aeabi_cdrcmple): Likewise. (__aeabi_cdcmpeq): Likewise. (__aeabi_cdcmple): Likewise. (__aeabi_dcmpeq): Likewise. (__aeabi_dcmplt): Likewise. (__aeabi_dcmple): Likewise. (__aeabi_dcmpge): Likewise. (__aeabi_dcmpgt): Likewise. (__aeabi_dcmpun): Likewise. (__aeabi_d2iz): Likewise. (__aeabi_d2uiz): Likewise. (__aeabi_d2f): Likewise. * config/arm/ieee754-sf.S (__aeabi_fneg): New function or alias. (__aeabi_frsub): Likewise. (__aeabi_fsub): Likewise. (__aeabi_fadd): Likewise. (__aeabi_ui2f): Likewise. (__aeabi_i2f): Likewise. (__aeabi_fmul): Likewise. (__aeabi_fdiv): Likewise. (__aeabi_cfrcmple): Likewise. (__aeabi_cfcmpeq): Likewise. (__aeabi_cfcmple): Likewise. (__aeabi_fcmpeq): Likewise. (__aeabi_fcmplt): Likewise. (__aeabi_fcmple): Likewise. (__aeabi_fcmpge): Likewise. (__aeabi_fcmpgt): Likewise. (__aeabi_fcmpun): Likewise. (__aeabi_f2iz): Likewise. (__aeabi_f2uiz): Likewise. * config/arm/lib1funcs.asm (ARM_CALL): New macro. (__aeabi_uidivmod): New function or alias. (__aeabi_idivmod): Likewise. (__aeabi_idiv0): Likewise. (__aeabi_ldiv0): Likewise. (__aeabi_llsr): Likewise. (__aeabi_lasr): Likewise. (__aeabi_llsl): Likewise. (bpabi.S): Include it. * config/arm/libgcc-bpabi.ver: New file. * config/arm/symbian.h (ARM_DEFAULT_ABI): Remove. (LINK_SPEC): Remove. * config/arm/t-arm-elf (LIB1ASMFUNCS): Add __aeabi_lcmp and __aeabi_ulcmp. * config/arm/t-bpabi: New file. * doc/tm.texi (TARGET_LIBGCC_FUNCS): New entry. (TARGET_LIB_INT_CMP_BIASED): Likewise. * gcc.dg/testsuite/gcc.dg/arm-eabi1.c: New test. * gcc.dg/dll-2.c: Fix dg-require syntax. * gcc.misc-tests/arm-isr.c (abort): Declare. (exit): Likewise. From-SVN: r85788
2004-08-11 04:50:14 +02:00
arm*-*-symbianelf*)
tm_file="${tm_file} arm/symbian.h"
# We do not include t-bpabi for Symbian OS because the system
# provides its own implementation of the BPABI functions.
tmake_file="${tmake_file} arm/t-symbian"
configure.in (arm*-*-eabi*): New target. * configure.in (arm*-*-eabi*): New target. * configure: Regenerate. * configure.ac (arm*-*-eabi*): New target. (arm*-*-symbianelf*): Likewise. * configure: Regenerated. * config.gcc (arm*-*-eabi*): New target. * defaults.h (TARGET_LIBGCC_FUNCS): New macro. (TARGET_LIB_INT_CMP_BIASED): Likewise. * expmed.c (expand_divmod): Try a two-valued divmod function as a last resort. * gthr.h: Remove bogus tokens at end of #pragma. * optabs.c (expand_twoval_binop_libfunc): New function. (prepare_cmp_insn): Handle the !TARGET_LIB_INT_CMP_BIASED case. (prepare_float_lib_cmp): Try reversing the condition. (debug_optab_libfuncs): New function. * optabs.h (expand_twoval_binop_libfunc): Declare. * config/arm/arm.c (arm_init_libfuncs): New function. (arm_compute_initial_eliminatino_offset): Return HOST_WIDE_INT. (TARGET_INIT_LIBFUNCS): Define it. * config/arm/arm.h (TARGET_BPABI): New macro. * config/arm/arm-protos.h (arm_compute_initial_elimination_offset): Return HOST_WIDE_INT. * config/arm/bpabi.S: New file. * config/arm/bpabi.c: Likewise. * config/arm/bpabi.h: Likewise. * config/arm/ieee754-df.S (__aeabi_dneg): New function or alias. (__aeabi_drsub): Likewise. (__aeabi_dsub): Likewise. (__aeabi_dadd): Likewise. (__aeabi_ui2d): Likewise. (__aeabi_i2d): Likewise. (__aeabi_f2d): Likewise. (__aeabi_dmul): Likewise. (__aeabi_ddiv): Likewise. (__aeabi_cdrcmple): Likewise. (__aeabi_cdcmpeq): Likewise. (__aeabi_cdcmple): Likewise. (__aeabi_dcmpeq): Likewise. (__aeabi_dcmplt): Likewise. (__aeabi_dcmple): Likewise. (__aeabi_dcmpge): Likewise. (__aeabi_dcmpgt): Likewise. (__aeabi_dcmpun): Likewise. (__aeabi_d2iz): Likewise. (__aeabi_d2uiz): Likewise. (__aeabi_d2f): Likewise. * config/arm/ieee754-sf.S (__aeabi_fneg): New function or alias. (__aeabi_frsub): Likewise. (__aeabi_fsub): Likewise. (__aeabi_fadd): Likewise. (__aeabi_ui2f): Likewise. (__aeabi_i2f): Likewise. (__aeabi_fmul): Likewise. (__aeabi_fdiv): Likewise. (__aeabi_cfrcmple): Likewise. (__aeabi_cfcmpeq): Likewise. (__aeabi_cfcmple): Likewise. (__aeabi_fcmpeq): Likewise. (__aeabi_fcmplt): Likewise. (__aeabi_fcmple): Likewise. (__aeabi_fcmpge): Likewise. (__aeabi_fcmpgt): Likewise. (__aeabi_fcmpun): Likewise. (__aeabi_f2iz): Likewise. (__aeabi_f2uiz): Likewise. * config/arm/lib1funcs.asm (ARM_CALL): New macro. (__aeabi_uidivmod): New function or alias. (__aeabi_idivmod): Likewise. (__aeabi_idiv0): Likewise. (__aeabi_ldiv0): Likewise. (__aeabi_llsr): Likewise. (__aeabi_lasr): Likewise. (__aeabi_llsl): Likewise. (bpabi.S): Include it. * config/arm/libgcc-bpabi.ver: New file. * config/arm/symbian.h (ARM_DEFAULT_ABI): Remove. (LINK_SPEC): Remove. * config/arm/t-arm-elf (LIB1ASMFUNCS): Add __aeabi_lcmp and __aeabi_ulcmp. * config/arm/t-bpabi: New file. * doc/tm.texi (TARGET_LIBGCC_FUNCS): New entry. (TARGET_LIB_INT_CMP_BIASED): Likewise. * gcc.dg/testsuite/gcc.dg/arm-eabi1.c: New test. * gcc.dg/dll-2.c: Fix dg-require syntax. * gcc.misc-tests/arm-isr.c (abort): Declare. (exit): Likewise. From-SVN: r85788
2004-08-11 04:50:14 +02:00
;;
esac
tm_file="${tm_file} arm/aout.h arm/arm.h"
tmake_file="${tmake_file} arm/t-arm-softfp soft-fp/t-softfp"
;;
config.gcc (a29k-*-rtems): General cleanup across all RTEMS targets... 2002-02-13 Joel Sherrill <joel@OARcorp.com> * config.gcc (a29k-*-rtems), config/a29k/rtems.h: General cleanup across all RTEMS targets including removal of #includes from config/*/rtems*.h file and adding them to tm_file setting. Added xm_defines=POSIX to many targets. * config.gcc (c4x-*-rtems), config/c4x/rtems.h: Ditto. * config.gcc (h8300-*-rtems), config/h8300/rtems.h: Ditto. * config.gcc (hppa1.1-*-rtems), config/pa/rtems.h: Ditto. * config.gcc (i960-*-rtems), config/i960/rtems.h: Ditto. * config.gcc (m68k-*-rtems*), config/m68k/rtems.h, config/m68k/rtemself.h: Ditto. * config.gcc (mips*-*-rtems*), config/mips/rtems.h, config/mips/rtems64.h: Ditto. * config.gcc (powerpc-*-rtems*), config/rs6000/rtems.h: Ditto. * config.gcc (sh-*-rtems*), config/sh/rtems.h, config/sh/rtemself.h: Ditto. * config.gcc (sparc-*-rtems*), config/sparc/rtems.h, config/sparc/rtemself.h: Ditto. * config.gcc (v850-*-rtems*), config/v850/rtems.h: Ditto. * config.gcc (arm-rtems), config/arm/rtems-elf.h: Ditto plus moved arm-rtems stanza closer to other arm-elf targets and made arm-rtems more like arm-elf. * config.gcc (i[34567]86-*-rtems*), config/i386/djgpp-rtems.h, config/i386/rtems.h, config/i386/rtemself.h: Ditto plus i386-rtemself target made more similar to i386-elf. * config/i386/t-rtems-i386: Added soft float support and multilibs. * config/m68k/t-m68kbare: Add 68040 and 68060 as multilib alternatives to be similar to config/m68k/t-m68kelf. * gthr-rtems.h: Encapsulate with extern "C" for C++. From-SVN: r49749
2002-02-13 23:49:03 +01:00
arm*-*-rtems*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
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"
config.gcc (a29k-*-rtems): General cleanup across all RTEMS targets... 2002-02-13 Joel Sherrill <joel@OARcorp.com> * config.gcc (a29k-*-rtems), config/a29k/rtems.h: General cleanup across all RTEMS targets including removal of #includes from config/*/rtems*.h file and adding them to tm_file setting. Added xm_defines=POSIX to many targets. * config.gcc (c4x-*-rtems), config/c4x/rtems.h: Ditto. * config.gcc (h8300-*-rtems), config/h8300/rtems.h: Ditto. * config.gcc (hppa1.1-*-rtems), config/pa/rtems.h: Ditto. * config.gcc (i960-*-rtems), config/i960/rtems.h: Ditto. * config.gcc (m68k-*-rtems*), config/m68k/rtems.h, config/m68k/rtemself.h: Ditto. * config.gcc (mips*-*-rtems*), config/mips/rtems.h, config/mips/rtems64.h: Ditto. * config.gcc (powerpc-*-rtems*), config/rs6000/rtems.h: Ditto. * config.gcc (sh-*-rtems*), config/sh/rtems.h, config/sh/rtemself.h: Ditto. * config.gcc (sparc-*-rtems*), config/sparc/rtems.h, config/sparc/rtemself.h: Ditto. * config.gcc (v850-*-rtems*), config/v850/rtems.h: Ditto. * config.gcc (arm-rtems), config/arm/rtems-elf.h: Ditto plus moved arm-rtems stanza closer to other arm-elf targets and made arm-rtems more like arm-elf. * config.gcc (i[34567]86-*-rtems*), config/i386/djgpp-rtems.h, config/i386/rtems.h, config/i386/rtemself.h: Ditto plus i386-rtemself target made more similar to i386-elf. * config/i386/t-rtems-i386: Added soft float support and multilibs. * config/m68k/t-m68kbare: Add 68040 and 68060 as multilib alternatives to be similar to config/m68k/t-m68kelf. * gthr-rtems.h: Encapsulate with extern "C" for C++. From-SVN: r49749
2002-02-13 23:49:03 +01:00
;;
MAINTAINERS (mt port): Remove. * MAINTAINERS (mt port): Remove. (sco5, unixware, sco udk): Remove. (Kean Johnston): Add to Write After Approval. fixincludes: * inclhack.def (AAB_svr4_replace_byteorder, AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory, libc1_G_va_list, libc1_ifdefd_memx, nested_motorola, ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime, solaris_mutex_init_1, solaris_socket, solaris_unistd, solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param, ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale, ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc, ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings, ultrix_strings2, ultrix_sys_time, ultrix_unistd, unicosmk_restrict, uw7_byteorder_fix, windiss_math1, windiss_math2, windiss_valist): Remove. * fixincl.x: Regenerate. * mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*, i370-*-openedition, i?86-*-moss*, i?86-*-uwin*, powerpc-*-eabiaix*): Remove. * tests/base/math.h: Update. * tests/base/pthread.h: Update. * tests/base/stdio.h: Update. * tests/base/stdlib.h: Update. * tests/base/string.h: Update. * tests/base/strings.h: Update. * tests/base/sys/file.h: Update. * tests/base/sys/limits.h: Update. * tests/base/sys/socket.h: Update. * tests/base/sys/stat.h: Update. * tests/base/sys/time.h: Update. * tests/base/testing.h: Update. * tests/base/unistd.h: Update. * tests/base/_G_config.h: Remove. * tests/base/arpa: Remove directory. * tests/base/fs: Remove directory. * tests/base/locale.h: Remove. * tests/base/machine: Remove directory. * tests/base/rpc/svc.h: Remove. * tests/base/sys/ioctl.h: Remove. * tests/base/sys/regset.h: Remove. * tests/base/sys/times.h: Remove. * tests/base/sys/utsname.h: Remove. * tests/base/widec.h: Remove. gcc: * config.gcc (Obsolete configurations): Remove list of configurations. (Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*, *-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*. Remove other targets matched by those patterns. (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff, i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove. Make code for Solaris 7 and greater unconditional for Solaris. (ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*): Remove --with-* handling. * config/rs6000/sysv4.h (-mwindiss): Remove from all specs. (LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC, ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC, LINK_OS_WINDISS_SPEC): Remove. * config/rs6000/sysv4.opt (mwindiss): Remove. * configure.ac (strongarm*-*-*, xscale*-*-*): Remove. * configure: Regenerate. * doc/cpp.texi: Don't mention BeOS. * doc/extend.texi (interrupt): Don't mention MS1. * doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv, m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv, alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout, i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4, powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix): Remove. * doc/invoke.texi (MT Options): Remove. (-mwindiss): Remove. (CRIS Options): Remove cris-axis-aout references. (HPPA Options): Don't mention hppa1.1-*-pro. * doc/md.texi: (MorphoTech family): Remove. * libgcc2.c: Don't handle UWIN. * config/alpha/t-unicosmk: Remove. * config/alpha/unicosmk.h: Remove. * config/arm/kaos-arm.h: Remove. * config/arm/kaos-strongarm.h: Remove. * config/arm/strongarm-coff.h: Remove. * config/arm/strongarm-elf.h: Remove. * config/arm/strongarm-pe.h: Remove. * config/arm/t-strongarm-pe: Remove. * config/arm/t-xscale-coff: Remove. * config/arm/t-xscale-elf: Remove. * config/arm/xscale-coff.h: Remove. * config/arm/xscale-elf.h: Remove. * config/chorus.h: Remove. * config/cris/aout.h: Remove. * config/cris/aout.opt: Remove. * config/cris/t-aout: Remove. * config/i386/beos-elf.h: Remove. * config/i386/kaos-i386.h: Remove. * config/i386/ptx4-i.h: Remove. * config/i386/sco5.h: Remove. * config/i386/sco5.opt: Remove. * config/i386/sysv4-cpp.h: Remove. * config/i386/sysv5.h: Remove. * config/i386/t-beos: Remove. * config/i386/t-sco5: Remove. * config/i386/t-uwin: Remove. * config/i386/uwin.asm: Remove. * config/i386/uwin.h: Remove. * config/kaos.h: Remove. * config/mips/windiss.h: Remove. * config/mt: Remove directory. * config/pa/pa-osf.h: Remove. * config/pa/pa-pro-end.h: Remove. * config/pa/t-pro: Remove. * config/ptx4.h: Remove. * config/rs6000/beos.h: Remove. * config/rs6000/kaos-ppc.h: Remove. * config/rs6000/t-beos: Remove. * config/rs6000/windiss.h: Remove. * config/sh/kaos-sh.h: Remove. * config/sol2-6.h: Remove. * config/sparc/sol26-sld.h: Remove. * config/sparc/sysv4-only.h: Remove. * config/vax/bsd.h: Remove. * config/vax/t-memfuncs: Remove. * config/vax/ultrix.h: Remove. * config/vax/vaxv.h: Remove. * config/windiss.h: Remove. gcc/testsuite: * g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*. * g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*. * g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris 7. * gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*, strongarm*-*-* and cris-*-aout*. * gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20030909-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20031108-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20040813-1.c: Don't handle *-*-sysv5*. * gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*. * gcc.dg/arm-scd42-1.c: Use target arm*-*-*. * gcc.dg/arm-scd42-3.c: Use target arm*-*-*. * gcc.dg/cpp/assert4.c: Don't handle BeOS. * gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*. * gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and xscale*-*-elf*. * gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*. * gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1. * gcc.misc-tests/arm-isr.exp: Use target arm*-*-*. * gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-stackalign-1.c: Don't handle powerpc-*-sysv*. * gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*. * lib/target-supports.exp: Don't handle strongarm*-*-elf, xscale*-*-elf and *-*-windiss. * obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*. * gcc.dg/mt-loopi1.c: Remove. gnattools: * configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove. * configure: Regenerate. libcpp: * configure.ac (parisc*64*-*-*): Remove. * configure: Regenerate. libffi: * configure.ac (parisc*-*-linux*, powerpc-*-sysv*, powerpc-*-beos*): Remove. * configure: Regenerate. libgcc: * config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove. libjava: * configure.host (strongarm*-elf, xscale*-elf): Remove. libstdc++-v3: * configure.host (xscale, ep9312, m680[246]0, solaris2.5, solaris2.5.[0-9], solaris2.6, windiss*): Remove. * crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove. * configure: Regenerate. * config/os/solaris/solaris2.5: Remove directory. * config/os/solaris/solaris2.6: Remove directory. * config/os/windiss: Remove directory. From-SVN: r136534
2008-06-07 20:00:15 +02:00
arm*-*-elf)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
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*)
Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * config.gcc (*-*-openbsd): Don't set tm_file. (alpha*-*-openbsd, arm*-*-coff*, arm*-wince-pe*, arm-*-pe*, avr-*-*, h8300-*-rtems*, h8300-*-elf*, h8300-*-*, hppa*-*-osf*, hppa*-*-bsd*, hppa*-*-hpux*, i370-*-opened*, i370-*-mvs*, i370-*-linux*, i?86-*-openbsd*, i?86-*-lynxos, i?86-*-nto-qnx*, iq2000*-*-elf*, m68000-hp-hpux*, m68k-hp-hpux*, m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*, m68k*-*-netbsd*, m68k*-*-openbsd*, m68k-*-sysv4*, m68k-*-linux*, m68k-*-rtems*, mcore-*-pe*, mips*-*-netbsd*, mips*-*-openbsd*, rs6000-*-lynxos*, sh*-*-elf*, sh*-*-ka, sh-*-rtemself, sparc-*-openbsd*, strongarm-*-pe, vax-*-openbsd*, xscale-*-coff): Use explicit and complete lists of target headers to include. Move definitions to tm_defines where appropriate. (hppa*-*-openbsd*, powerpc-*-openbsd*): Comment out stanza for not-yet-contributed configuration. * config/lynx.h, config/alpha/openbsd.h, config/arm/coff.h * config/avr/avr.h, config/frv/frv.h, config/h8300/elf.h * config/i370/linux.h, config/i370/mvs.h, config/i370/oe.h * config/i386/nto.h, config/iq2000/iq2000.h, * config/m68k/coff.h, config/m68k/hp310.h, config/m68k/hp320.h * config/m68k/linux.h, config/m68k/m68k-aout.h * config/m68k/m68k-none.h, config/m68k/m68kv4.h * config/m68k/netbsd.h, config/m68k/openbsd.h * config/m68k/sgs.h, config/mcore/mcore-pe.h, * config/mips/netbsd.h, config/mips/openbsd.h, config/pa/pa.h, * config/rs6000/lynx.h, config/sh/embed-elf.h, config/sparc/openbsd.h: Remove includes of other target config headers, and definitions of macros moved to tm_defines lists. Add #undefs where now necessary to prevent redefinition warnings. * config/h8300/coff.h: New file split out of... * config/h8300/elf.h: ...here. * config/m68k/hp320base.h: New file split out of... * config/m68k/hp320.h: ...here. * config/rs6000/lynxbase.h: New file split out of... * config/rs6000/lynx.h: ...here. * config/m68k/hp310g.h, config/m68k/hp320g.h, config/m68k/hpux7.h * config/m68k/m68k-coff.h, config/mips/openbsd-be.h: Delete file. * config/sol2.h: Remove #if 0-ed #include of sys/mman.h. * config/m68k/m68kelf.h: Remove commented out #include of m68k/sgs.h. * config/mcore/mcore.h: Don't include hwint.h nor machmode.h. Remove unnecessary #ifndef. * config/s390/s390.h: Prefix #include of s390/fixdfdi.h [under IN_LIBGCC2] with config/. From-SVN: r70651
2003-08-21 19:27:29 +02:00
tm_file="arm/semi.h arm/aout.h arm/arm.h arm/coff.h dbxcoff.h arm/pe.h arm/wince-pe.h"
tmake_file="arm/t-arm arm/t-wince-pe"
config.gcc (arm*-wince-pe*, [...]): Add arm/pe.opt to $extra_options. * config.gcc (arm*-wince-pe*, arm-*-pe*, strongarm-*-pe): Add arm/pe.opt to $extra_options. * config/arm/arm.h (target_flags, target_fpu_name, target_fpe_name) (target_float_abi_name, target_float_switch, target_abi_name) (ARM_FLAG_APCS_FRAME, ARM_FLAG_POKE, ARM_FLAG_FPE, ARM_FLAG_APCS_STACK) (ARM_FLAG_APCS_FLOAT, ARM_FLAG_APCS_REENT, ARM_FLAG_BIG_END) (ARM_FLAG_INTERWORK, ARM_FLAG_LITTLE_WORDS, ARM_FLAG_NO_SCHED_PRO) (ARM_FLAG_ABORT_NORETURN, ARM_FLAG_SINGLE_PIC_BASE) (ARM_FLAG_LONG_CALLS, ARM_FLAG_THUMB, THUMB_FLAG_BACKTRACE) (THUMB_FLAG_LEAF_BACKTRACE, THUMB_FLAG_CALLEE_SUPER_INTERWORKING) (THUMB_FLAG_CALLER_SUPER_INTERWORKING, CIRRUS_FIX_INVALID_INSNS) (TARGET_APCS_FRAME, TARGET_POKE_FUNCTION_NAME, TARGET_FPE) (TARGET_APCS_STACK, TARGET_APCS_FLOAT, TARGET_APCS_REENT) (TARGET_BIG_END, TARGET_INTERWORK, TARGET_LITTLE_WORDS) (TARGET_NO_SCHED_PRO, TARGET_ABORT_NORETURN, TARGET_SINGLE_PIC_BASE) (TARGET_LONG_CALLS, TARGET_THUMB, TARGET_CALLER_INTERWORKING) (TARGET_CIRRUS_FIX_INVALID_INSNS, SUBTARGET_SWITCHES, TARGET_SWITCHES) (TARGET_OPTIONS, arm_cpu_select, arm_select, structure_size_string) (arm_pic_register_string): Delete. (TARGET_BACKTRACE): Redefine using TARGET_TPCS_LEAF_FRAME and TARGET_TPCS_FRAME. (TARGET_DEFAULT, CONDITIONAL_REGISTER_USAGE): Update mask names. * config/arm/coff.h (TARGET_DEFAULT): Likewise. * config/arm/elf.h (TARGET_DEFAULT): Likewise. * config/arm/netbsd-elf.h (TARGET_DEFAULT): Likewise. * config/arm/netbsd.h (TARGET_DEFAULT): Likewise. * config/arm/semi.h (TARGET_DEFAULT): Likewise. * config/arm/uclinux-elf.h (TARGET_DEFAULT): Likewise. * config/arm/wince-pe.h (TARGET_DEFAULT): Likewise. * config/arm/pe.h (TARGET_DEFAULT): Likewise. (TARGET_FLAG_NOP_FUN, TARGET_NOP_FUN_DLLIMPORT): Delete. (SUBTARGET_SWITCHES): Delete. * config/arm/arm.c (target_float_switch): Delete. (arm_cpu_select): Moved from config/arm/arm.h. (target_fpu_name, target_fpe_name, target_float_abi_name) (target_abi_name, structure_size_string, arm_pic_register_string) (arm_select): Make static. (TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Override defaults. (arm_handle_option): New function. (arm_override_options): Update target_flags checks for new mask names. Remove target_float_switch code. (arm_expand_prologue, thumb_expand_prologue): Check !TARGET_SCHED_PROLOG instead of TARGET_NO_SCHED_PRO. * config/arm/arm.opt, config/arm/pe.opt: New files. From-SVN: r99265
2005-05-05 14:09:00 +02:00
extra_options="${extra_options} arm/pe.opt"
extra_objs="pe.o"
;;
arm-*-pe*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="arm/semi.h arm/aout.h arm/arm.h arm/coff.h dbxcoff.h arm/pe.h newlib-stdint.h"
tmake_file="arm/t-arm arm/t-pe"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
config.gcc (arm*-wince-pe*, [...]): Add arm/pe.opt to $extra_options. * config.gcc (arm*-wince-pe*, arm-*-pe*, strongarm-*-pe): Add arm/pe.opt to $extra_options. * config/arm/arm.h (target_flags, target_fpu_name, target_fpe_name) (target_float_abi_name, target_float_switch, target_abi_name) (ARM_FLAG_APCS_FRAME, ARM_FLAG_POKE, ARM_FLAG_FPE, ARM_FLAG_APCS_STACK) (ARM_FLAG_APCS_FLOAT, ARM_FLAG_APCS_REENT, ARM_FLAG_BIG_END) (ARM_FLAG_INTERWORK, ARM_FLAG_LITTLE_WORDS, ARM_FLAG_NO_SCHED_PRO) (ARM_FLAG_ABORT_NORETURN, ARM_FLAG_SINGLE_PIC_BASE) (ARM_FLAG_LONG_CALLS, ARM_FLAG_THUMB, THUMB_FLAG_BACKTRACE) (THUMB_FLAG_LEAF_BACKTRACE, THUMB_FLAG_CALLEE_SUPER_INTERWORKING) (THUMB_FLAG_CALLER_SUPER_INTERWORKING, CIRRUS_FIX_INVALID_INSNS) (TARGET_APCS_FRAME, TARGET_POKE_FUNCTION_NAME, TARGET_FPE) (TARGET_APCS_STACK, TARGET_APCS_FLOAT, TARGET_APCS_REENT) (TARGET_BIG_END, TARGET_INTERWORK, TARGET_LITTLE_WORDS) (TARGET_NO_SCHED_PRO, TARGET_ABORT_NORETURN, TARGET_SINGLE_PIC_BASE) (TARGET_LONG_CALLS, TARGET_THUMB, TARGET_CALLER_INTERWORKING) (TARGET_CIRRUS_FIX_INVALID_INSNS, SUBTARGET_SWITCHES, TARGET_SWITCHES) (TARGET_OPTIONS, arm_cpu_select, arm_select, structure_size_string) (arm_pic_register_string): Delete. (TARGET_BACKTRACE): Redefine using TARGET_TPCS_LEAF_FRAME and TARGET_TPCS_FRAME. (TARGET_DEFAULT, CONDITIONAL_REGISTER_USAGE): Update mask names. * config/arm/coff.h (TARGET_DEFAULT): Likewise. * config/arm/elf.h (TARGET_DEFAULT): Likewise. * config/arm/netbsd-elf.h (TARGET_DEFAULT): Likewise. * config/arm/netbsd.h (TARGET_DEFAULT): Likewise. * config/arm/semi.h (TARGET_DEFAULT): Likewise. * config/arm/uclinux-elf.h (TARGET_DEFAULT): Likewise. * config/arm/wince-pe.h (TARGET_DEFAULT): Likewise. * config/arm/pe.h (TARGET_DEFAULT): Likewise. (TARGET_FLAG_NOP_FUN, TARGET_NOP_FUN_DLLIMPORT): Delete. (SUBTARGET_SWITCHES): Delete. * config/arm/arm.c (target_float_switch): Delete. (arm_cpu_select): Moved from config/arm/arm.h. (target_fpu_name, target_fpe_name, target_float_abi_name) (target_abi_name, structure_size_string, arm_pic_register_string) (arm_select): Make static. (TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Override defaults. (arm_handle_option): New function. (arm_override_options): Update target_flags checks for new mask names. Remove target_float_switch code. (arm_expand_prologue, thumb_expand_prologue): Check !TARGET_SCHED_PROLOG instead of TARGET_NO_SCHED_PRO. * config/arm/arm.opt, config/arm/pe.opt: New files. From-SVN: r99265
2005-05-05 14:09:00 +02:00
extra_options="${extra_options} arm/pe.opt"
extra_objs="pe.o"
;;
avr-*-rtems*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
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"
extra_gcc_objs="driver-avr.o avr-devices.o"
extra_objs="avr-devices.o"
;;
avr-*-*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="avr/avr.h dbxelf.h newlib-stdint.h"
use_gcc_stdint=wrap
extra_gcc_objs="driver-avr.o avr-devices.o"
extra_objs="avr-devices.o"
;;
bfin*-elf*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h newlib-stdint.h bfin/elf.h"
tmake_file=bfin/t-bfin-elf
use_collect2=no
;;
bfin*-uclinux*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h linux.h glibc-stdint.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*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.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"
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*-*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h newlib-stdint.h bfin/elf.h"
tmake_file=bfin/t-bfin
use_collect2=no
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
;;
crisv32-*-elf | crisv32-*-none)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}"
tmake_file="cris/t-cris"
target_cpu_default=32
gas=yes
extra_options="${extra_options} cris/elf.opt"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
;;
cris-*-elf | cris-*-none)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file}"
tmake_file="cris/t-cris cris/t-elfmulti"
gas=yes
config.gcc: Specify .opt files. * config.gcc <cris-*>: Specify .opt files. * config/cris/cris.opt, config/cris/elf.opt, config/cris/aout.opt, config/cris/linux.opt: New files. * config/cris/aout.h (CRIS_SUBTARGET_SWITCHES) (CRIS_SUBTARGET_LONG_OPTIONS): Don't define. (TARGET_ELF): Override to 0. (CRIS_SUBTARGET_HANDLE_OPTION): Override to handle -melinux and -melinux-stacksize=N. * config/cris/cris.c: (cris_handle_option): New function. (TARGET_DEFAULT_TARGET_FLAGS): Override. (TARGET_HANDLE_OPTION): Override to cris_handle_option. (cris_override_options): Use MASK_*, not TARGET_MASK_*. * config/cris/cris.h (TARGET_MASK_SVINTO, TARGET_SVINTO, (TARGET_MASK_CCINIT, TARGET_CCINIT, TARGET_MASK_PDEBUG) (TARGET_PDEBUG, TARGET_MASK_SIDE_EFFECT_PREFIXES) (TARGET_SIDE_EFFECT_PREFIXES, TARGET_MASK_EXPAND_MUL) (TARGET_EXPAND_MUL, TARGET_MASK_STACK_ALIGN, TARGET_STACK_ALIGN) (TARGET_MASK_CONST_ALIGN, TARGET_CONST_ALIGN) (TARGET_MASK_DATA_ALIGN, TARGET_DATA_ALIGN) (TARGET_MASK_PROLOGUE_EPILOGUE, TARGET_PROLOGUE_EPILOGUE) (TARGET_MASK_ETRAX4_ADD, TARGET_ETRAX4_ADD) (TARGET_MASK_ALIGN_BY_32, TARGET_ALIGN_BY_32, TARGET_MASK_ELF) (TARGET_ELF, TARGET_MASK_LINUX, TARGET_LINUX) (TARGET_MASK_AVOID_GOTPLT, TARGET_AVOID_GOTPLT) (TARGET_MASK_MUL_BUG, TARGET_MUL_BUG, TARGET_SWITCHES) (CRIS_SUBTARGET_SWITCHES, TARGET_OPTIONS) (CRIS_SUBTARGET_LONG_OPTIONS): Don't define. (TARGET_LINUX): Define 0. (TARGET_DEFAULT): Use MASK_*, not TARGET_MASK_*. (CRIS_SUBTARGET_DEFAULT): Define to 0, not TARGET_MASK_ELF. (CRIS_SUBTARGET_DEFAULT): New empty default macro. * config/cris/linux.h (CRIS_SUBTARGET_SWITCHES): Don't define. (TARGET_LINUX): Override to 1. (CRIS_SUBTARGET_DEFAULT): Use MASK_*, not TARGET_MASK_*. From-SVN: r98611
2005-04-23 16:03:53 +02:00
extra_options="${extra_options} cris/elf.opt"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
;;
crisv32-*-linux* | cris-*-linux*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h svr4.h ${tm_file} 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"
config.gcc: Specify .opt files. * config.gcc <cris-*>: Specify .opt files. * config/cris/cris.opt, config/cris/elf.opt, config/cris/aout.opt, config/cris/linux.opt: New files. * config/cris/aout.h (CRIS_SUBTARGET_SWITCHES) (CRIS_SUBTARGET_LONG_OPTIONS): Don't define. (TARGET_ELF): Override to 0. (CRIS_SUBTARGET_HANDLE_OPTION): Override to handle -melinux and -melinux-stacksize=N. * config/cris/cris.c: (cris_handle_option): New function. (TARGET_DEFAULT_TARGET_FLAGS): Override. (TARGET_HANDLE_OPTION): Override to cris_handle_option. (cris_override_options): Use MASK_*, not TARGET_MASK_*. * config/cris/cris.h (TARGET_MASK_SVINTO, TARGET_SVINTO, (TARGET_MASK_CCINIT, TARGET_CCINIT, TARGET_MASK_PDEBUG) (TARGET_PDEBUG, TARGET_MASK_SIDE_EFFECT_PREFIXES) (TARGET_SIDE_EFFECT_PREFIXES, TARGET_MASK_EXPAND_MUL) (TARGET_EXPAND_MUL, TARGET_MASK_STACK_ALIGN, TARGET_STACK_ALIGN) (TARGET_MASK_CONST_ALIGN, TARGET_CONST_ALIGN) (TARGET_MASK_DATA_ALIGN, TARGET_DATA_ALIGN) (TARGET_MASK_PROLOGUE_EPILOGUE, TARGET_PROLOGUE_EPILOGUE) (TARGET_MASK_ETRAX4_ADD, TARGET_ETRAX4_ADD) (TARGET_MASK_ALIGN_BY_32, TARGET_ALIGN_BY_32, TARGET_MASK_ELF) (TARGET_ELF, TARGET_MASK_LINUX, TARGET_LINUX) (TARGET_MASK_AVOID_GOTPLT, TARGET_AVOID_GOTPLT) (TARGET_MASK_MUL_BUG, TARGET_MUL_BUG, TARGET_SWITCHES) (CRIS_SUBTARGET_SWITCHES, TARGET_OPTIONS) (CRIS_SUBTARGET_LONG_OPTIONS): Don't define. (TARGET_LINUX): Define 0. (TARGET_DEFAULT): Use MASK_*, not TARGET_MASK_*. (CRIS_SUBTARGET_DEFAULT): Define to 0, not TARGET_MASK_ELF. (CRIS_SUBTARGET_DEFAULT): New empty default macro. * config/cris/linux.h (CRIS_SUBTARGET_SWITCHES): Don't define. (TARGET_LINUX): Override to 1. (CRIS_SUBTARGET_DEFAULT): Use MASK_*, not TARGET_MASK_*. From-SVN: r98611
2005-04-23 16:03:53 +02:00
extra_options="${extra_options} cris/linux.opt"
case $target in
cris-*-*)
target_cpu_default=10
;;
crisv32-*-*)
target_cpu_default=32
;;
esac
;;
crx-*-elf)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="elfos.h newlib-stdint.h ${tm_file}"
extra_parts="crtbegin.o crtend.o"
use_collect2=no
;;
fr30-*-elf)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h svr4.h newlib-stdint.h ${tm_file}"
tmake_file=fr30/t-fr30
extra_parts="crti.o crtn.o crtbegin.o crtend.o"
;;
2002-08-04 21:37:03 +02:00
frv-*-elf)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h svr4.h newlib-stdint.h ${tm_file} frv/frv-abi.h"
2002-08-04 21:37:03 +02:00
tmake_file=frv/t-frv
;;
Implement FR-V FDPIC ABI support for frv-uclinux and frv-linux. 2004-02-05 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_emit_movsi): Use GOT relocations for symbols in sections named by the user. 2004-01-30 Alexandre Oliva <aoliva@redhat.com> * config/frv/linux.h (TARGET_OS_CPP_BUILTINS): New. 2004-01-27 Alexandre Oliva <aoliva@redhat.com> * config.gcc (frv-*-*linux*): Handle like *-*-linux*. * config/frv/t-linux (EXTRA_MULTILIB_PARTS): Remove, obviated by the above. 2004-01-20 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.md (symGOT2reg_hilo, symGOTOFF2reg_hilo): Add one more pseudo to further improve code generation. 2004-01-19 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.md (movdi_ldd): Introduce explicit indirection inside UNSPEC. 2004-01-16 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_legitimate_address_p): Added allow_double_reg_p argument. Adjust all callers. Use it to decide whether to enable double-register indirect addressing. (frv_funcdesc_alias_set): Remove. (frv_expand_fdpic_call): Force non-SYMBOL_REF operand into register. Emit movdi_ldd. (ldd_address_operand): New. * config/frv/frv-protos.h (frv_legitimate_address_p): Adjust. * config/frv/frv.h (GO_IF_LEGITIMATE_ADDRESS): Likewise. (PREDICATE_CODES): Add ldd_address_operand. * config/frv/frv.md (movdi_ldd): New. (symGOT2reg_hilo, symGOTOFF2reg_hilo): Use separate pseudo for intermediate computations if possible. (symGOTOFF2reg_i): Fix harmless typo. 2003-12-18 Alexandre Oliva <aoliva@redhat.com> * unwind-dw2-fde-glibc.c (_Unwind_IteratePhdrCallback): Cast relocated p_vaddr to vaddr type. * config/frv/frv-protos.h (frv_expand_fdpic_call): Return void. * config/frv/frv.c (frv_get_funcdesc_alias_set): New. (frv_expand_fdpic_call): Propagate incoming MEM's expr to funcdesc MEM, or use a funcdesc alias set. Use regular move instead of ldd. (dbl_memory_one_insn_operand): Recognize function descriptors by type or by alias set, and don't split them. * config/frv/frv.md (call, call_value): Never use call_internal for fdpic. (call_internal, call_value_internal): Never match for FDPIC. (call_fdpicdi, call_fdpicsi, call_value_fdpicdi, call_value_fdpicsi): Require FDPIC. (ldd): Removed. 2003-12-17 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.h (CRT_GET_RFIB_DATA): Define for __FRV_FDPIC__. * unwind-dw2-fde-glibc.c: Don't include elf-fdpic.h any more. (_Unwind_IteratePhdrCallback): Adjust type of load_base for FRV FDPIC. Compute data base address. * config/frv/linux.h (SUBTARGET_DRIVER_SELF_SPECS): Enable -mfdpic before the other self-specs are processed. * config/frv/t-linux (CRTSTUFF_T_CFLAGS, TARGET_LIBGCC2_CFLAGS): Build with -fPIC. 2003-12-15 Alexandre Oliva <aoliva@redhat.com> * unwind-dw2-fde-glibc.c: Don't include bits/elf-fdpic.h if inhibit_libc is defined. 2003-12-12 Alexandre Oliva <aoliva@redhat.com> * unwind-dw2-fde-glibc.c: Include bits/elf-fdpic.h for __FRV_FDPIC__. (__RELOC_POINTER): Define. (_Unwind_IteratePhdrCallback): Use it. * config/frv/frv.h (Twrite): Define. (TRANSFER_FROM_TRAMPOLINE): Use it. * config/frv/linux.h (INVOKE__main): Undefine. (Twrite): Override. 2003-12-05 Richard Sandiford <rsandifo@redhat.com> * doc/invoke.texi (-mlong-calls, -mlinked-fp): Document FRV options. (-mlibrary-pic): Emphasize that this option generates EABI code. (-mcpu): Add fr550. (-mpack): Remove. 2003-11-30 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (int_2word_operand): Reject LABELs, SYMBOL_REFs and CONSTs in FDPIC mode. * gcc/config.gcc (with_cpu): Default to fr400 on frv-*-*linux*. 2003-11-29 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv.c (move_source_operand): Don't accept symbolic constants. * config/frv/frv.md (*movhi_internal, *movsi_internal): Use an 'n' rather than 'i' constraint for the 2-instruction alternative. (*movsi_2word): New, incorporating existing int_2word_operand splitter. 2003-11-29 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv.h (EXTRA_CONSTRAINT_FOR_Q): Renamed from EXTRA_CONSTRAINT_FOR_Y. (EXTRA_CONSTRAINT): Remove handling of 'Y'. * config/frv/frv.md (*movsi_internal): Remove 'Q' constraint. (addsi3): Change 'Y' constraint to 'Q'. 2003-11-27 Richard Sandiford <rsandifo@redhat.com> * reload.c (CONST_POOL_OK_P): New macro. (find_reloads): Use it to decide whether a constant can be forced into memory. * config/frv/frv.h (LEGITIMATE_PIC_OPERAND_P): Return true if the constant satisfies got12_operand. (frv_cannot_force_const_mem): Always return true for TARGET_FDPIC. (frv_legitimate_address_p): Check for valid unspec offsets using got12_operand rather than frv_legitimate_fdpic_operand_p. (frv_legitimate_fdpic_operand_p): Delete. (frv_emit_movsi): Abort if we try to use the FDPIC register during or after reload. (frv_legitimate_constant_p): Return LEGITIMATE_PIC_OPERAND_P if TARGET_FDPIC. * config/frv/frv.md (*movdf_double): Add alternatives for CONST_DOUBLE. 2003-11-19 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv-protos.h (fdpic_operand, fdpic_got12_operand) (frv_fdpic_fptr_operand): Don't declare here. * config/frv/frv.h (EXTRA_CONSTRAINT_FOR_Y): Call got12_operand rather than fdpic_got12_operand. (PREDICATE_CODES): Remove symbolic_operand entry. Add entries for got12_operand and const_unspec_operand. * config/frv/frv.c (got12_operand): Renamed from fdpic_got12_operand. (gpr_or_int12_operand, dbl_memory_one_insn_operand): Update calls. (symbolic_operand): Remove. (const_unspec_operand): New predicate. * config/frv/frv.md (*movsi_got): Use got12_operand. (*movsi_high_got, *movsi_lo_sum_got): Use const_unspec_operand. 2003-11-18 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv-protos.h (frv_output_addr_const_extra): Remove. * config/frv/frv.h (OUTPUT_ADDR_CONST_EXTRA): Remove definition. * config/frv/frv.c (frv_unspec): New structure. (frv_small_data_reloc_p, frv_const_unspec_p): New functions. (frv_print_operand_memory_reference): Use frv_const_unspec_p to validate CONST indices. Use frv_output_const_unspec to print them. (frv_print_operand): Update call to unspec_got_name. Use frv_output_const_unspec to print constant unspecs. (frv_legitimate_fdpic_operand_p): Return true if frv_const_unspec_p. Reject UNSPECs otherwise. (unspec_got_name): Take the relocation number as argument, not an rtx containing it. (frv_output_addr_const_extra): Remove, replacing with... (frv_output_const_unspec): ...this new function. (frv_find_base_term): Use frv_const_unspec_p & frv_small_data_reloc_p. (gpr_or_int12_operand): Use fdpic_got12_operand. (dbl_memory_one_insn_operand): Likewise. (fdpic_got12_operand): Use frv_const_unspec_p. (frv_emit_movsi): Use frv_const_unspec_p to check for CONSTs that are already legitimate. Use frv_small_data_reloc_p when deciding whether to use HIGH/LO_SUM for R_FRV_GOTOFF12 and R_FRV_GPREL12. 2003-11-18 Alexandre Oliva <aoliva@redhat.com> * config/frv/t-linux (SHLIB_MAPFILES): Override so as to export... * config/frv/libgcc-frv.ver: ... frv-specific symbols. New file. * config/frv/frv-abi.h (CREATE_DOUBLE_SHIFT): Use branch to local label, for real this time. * config/frv/frv.c (frv_local_funcdesc_p): Update to new representation of visibility. (fdpic_got12_operand, symbolic_operand): Mark unused arguments as such. 2003-11-17 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv.h (MASK_LINKED_FP, TARGET_LINKED_FP): New macros. (TARGET_SWITCHES): Add -mlinked-fp and -mno-linked-fp. * config/frv/frv.c (frv_override_options): Set MASK_LINKED_FP unless it was explicitly disabled. (frv_stack_info): There is no need to save the link register in every frame unless TARGET_LINKED_FP is true. (frv_frame_pointer_required): If !TARGET_LINKED_FP, only require a frame pointer if the stack pointer might change value. (frv_return_addr_rtx): Check and process "count" argument. 2003-11-14 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv-protos.h (frv_legitimize_address): Remove. (frv_find_base_term): Declare. * config/frv/frv.h (LEGITIMIZE_ADDRESS): Do nothing. (FIND_BASE_TERM): Define. (PREDICATE_CODES): Remove pic_register_operand, pic_symbolic_operand, small_data_register_operand, small_data_symbolic_operand. Add symbolic_operand. * config/frv/frv.c (const_small_data_p, plus_small_data_p): Delete. (frv_print_operand_memory_reference, output_move_single): Remove special handling for unlegitimized sdata addresses. (frv_legitimate_address_p): Don't allow sums of SDA_BASE_REG and symbolic addresses. (frv_legitimize_address, frv_legitimize_fdpic_address): Delete. (frv_find_base_term): New function. (int_2word_operand): Check specifically for symbolic address constants. (pic_register_operand, pic_symbolic_operand): Delete. (small_data_register_operand, small_data_symbolic_operand): Delete. (dbl_memory_one_insn_operand): Don't call plus_small_data_p. Allow UNSPEC_GOT constants if !TARGET_FDPIC. (move_source_operand): Only accept CONSTs if they're a two-insn symbolic constant. (fdpic_got12_operand): Don't require TARGET_FDPIC. (frv_emit_movsi): Legitimize sdata and -mlibrary-pic addresses using gen_symGOTOFF2reg*. (frv_ifcvt_rewrite_mem): Remove (plus gr16 ...) special cases. (frv_rtx_costs): Give all MEM addresses a cost of 0. Give MEMs themselves a cost of 3 insns. * config/mips/mips.md (*movsi_got): Allow for !TARGET_FDPIC too. Change predicate to symbolic_operand. (*movsi_high_got, *movsi_lo_sum_got): Likewise. (*movsi_lda_sdata): Delete. (*movsi_pic, movsi_high_pic, movsi_lo_sum_pic): Delete. 2003-11-05 Alexandre Oliva <aoliva@redhat.com> * config.gcc: Add t-slibgcc-elf-ver and support --with-cpu for frv-*-*linux*. * config/frv/frv-abi.h (CREATE_DOUBLE_SHIFT): Use branch to local label. * config/frv/frv.h (DRIVER_SELF_SPECS): Add blank before -multilib-library-pic. (LINK_SPEC): Add -z text for -mfdpic. * config/frv/frvbegin.c (__ROFIXUP_LIST__): Don't define on FDPIC. * config/frv/frvend.c (__ROFIXUP_END__): Likewise. * config/frv/linux.h (STARTFILE_SPEC, ENDFILE_SPEC, LINK_SPEC): Override. (OPTION_DEFAULT_SPECS, HAS_INIT_SECTION, INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, CRT_CALL_STATIC_FUNCTION): Define. * config/frv/t-linux (EXTRA_MULTILIB_PARTS): Use crtstuff-generated files. 2003-10-31 Alexandre Oliva <aoliva@redhat.com> * config.gcc: Add frv-*-*linux*. * config/frv/linux.h, config/frv/t-linux: New. 2003-10-06 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.h (LINK_SPEC): Pass -melf32frvfd to the linker when -mfdpic even if a linker script is explicitly listed. 2003-10-02 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_override_options): Clear asm_out unaligned_op for SImode on FDPIC. (frv_emit_movsi): Use compute_reloc_for_constant to compute the argument passed to decl_readonly_section. (frv_assemble_integer): Revert 2003-09-30's change, but make the whole block run with FDPIC even with -fno-PIC. 2003-10-02 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_cannot_force_const_mem): Don't force symbol or label plus offset to memory. (frv_emit_movsi): Emit GPREL only if -mgprel-ro. Emit 32-bit GOTOFF and GPREL for LABEL_REF. * config/frv/frv.h (DRIVER_SELF_SPECS): Add -mgprel-ro with -mfdpic unless -mno-gprel-ro, -fpic or -fpie. (MASK_GPREL_RO, TARGET_GPREL_RO): New. (TARGET_SWITCHES): Added gprel-ro and no-gprel-ro. * doc/invoke.texi: Document them. 2003-09-30 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv-protos.h (frv_gen_GPsym2reg): Declare. (frv_splittable_got_operand): Removed. * config/frv/frv.c (frv_cannot_force_const_mem): Reject HIGH and LO_SUM. Add comments. (frv_override_options): Moved enabling of FDPIC to DRIVER_SELF_SPECS. Don't enable MASK_DWORD. (frv_local_funcdesc_p): Remove unnecessary heck for flag_pie. (frv_legitimize_fdpic_address): Don't duplicate logic in frv_emit_movsi. (frv_gen_GPsym2reg): New. (unspec_got_name): Added gprel. (frv_expand_fdpic_call): Add support for inlining PLTs. (fdpic_fptr_operand): Renamed from frv_fdpic_fptr_operand. (gpr_or_int12_operand): Added GPREL12. (pic_symbolic_operand): Match even if !flag_pic for FDPIC. (small_data_symbolic_operand): Fail if FDPIC. (fdpic_splittable_got_operand): Removed. (fdpic_got12_operand): Added GPREL12. (frv_emit_movsi): Reorganize to avoid duplication. Emit GPREL when appropriate. Fix sdata GOTOFF. (frv_legitimate_constant_p): Require legitimate PIC operand for FDPIC with pic, but only a legitimate fdpic operand for non-pic. (frv_assemble_integer): Move FDPIC funcdesc handling out of flag_pic case. (frv_asm_out_constructor, frv_asm_out_destructor): Abort if frv_assemble_integer fails. * config/frv/frv.h (DRIVER_SELF_SPECS): New. (SUBTARGET_DRIVER_SELF_SPECS): New. (ASM_SPEC): Don't pass -mno-fdpic. (LINK_SPEC): Pass -melf32frvfd for FDPIC. (MASK_INLINE_PLT, TARGET_INLINE_PLT): New. (TARGET_SWITCHES): Add -minline-plt, -mno-inline-plt and -multilib-library-pic. (PREDICATE_CODES): Added fdpic_operand, fdpic_fptr_operand, condexec_si_media_operator, condexec_sf_add_operator and condexec_sf_conv_operator. Removed condexec_sf_binary_operator and condexec_sf_unary_operator. * config/frv/frv.md (R_FRV_GPREL12, R_FRV_GPRELHI, R_FRV_GPRELLO): New. (movsi_got, movsi_high_got, movsi_lo_sum_got): Move before movsi_internal. Give them internal names. movsi_got has type int. (fdpic got splitters): Remove. (symGPREL2reg, symGPREL2reg_hilo): New. * config/frv/t-frv (MULTILIB_MATCHES): Don't map -fpic and -fPIC to -mlibrary-pic. Map -multilib-library-pic to it. * doc/invoke.texi: -mfdpic, -minline-plt, -multilib-library-pic: Document. 2003-09-28 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_function_symbol_referenced_p): Declare. (TARGET_CANNOT_FORCE_CONST_MEM): Define to... (frv_cannot_force_const_mem): New function. (const_small_data_p, plus_small_data_p): Update comments on sdata on FDPIC. (frv_override_options): Set flag_pie for FDPIC too. (frv_conditional_register_usage): Mark gr16 and gr17 as non-fixed, call-saved registers on FDPIC. (frv_stack_info): Don't preserve the PIC register on FDPIC, and don't force LR to be preserved. (frv_expand_prologue): Likewise. (frv_asm_output_mi_thunk): Use 12-bit funcdesc gotoff for -fpic. (frv_frame_pointer_required): Don't force it just because the FDPIC register is used. (frv_legitimate_address_p) <CONST>: Accept a legitimate FDPIC operand only if !condexec_p. (frv_legitimize_address): Return the FDPIC-legitimized address. Don't match small data here on FDPIC. (frv_legitimate_fdpic_operand_p): Don't accept unadorned function symbols. Use TRUE/FALSE instead of 1/0. (frv_local_funcdesc_p): New. (frv_legitimize_fdpic_address): Rewrite to use GOTOFF and 12-bit immediates when possible. (pic_symbolic_operand): Accept SYMBOL_REFs and CONSTs in FDPIC. (dbl_memory_one_insn_operand): Accept addresses that add a REG and an UNSPEC_GOT. (frv_emit_movsi): Handle FDPIC before small data. Use GOTOFF and 12-bit immediates when possible. (frv_legitimate_constant_p): In FDPIC, reject SImode operands that are not legitimate pic operands. (frv_in_small_data_p): Re-enable for FDPIC. * config/frv/frv.h (SDA_BASE_REG): Remove comment about FDPIC. (FRV_GLOBAL_P): Removed. * config/frv/frv.md: Add modes to CONSTs. (movsi_got): New. (movsi_lo_sum_got): Use separate matches instead of match_dup. (movsi_high_pic, movsi_lo_sum_pic): Match on non-FDPIC only. (fdpic splittable operations): Match on flag_pic != 1. 2003-09-22 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_asm_out_constructor, frv_asm_out_destructor): Pass to frv_assemble_integer the size in bytes, not bits. 2003-09-19 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_assemble_integer): Reject complex expressions referencing function SYMBOL_REFs. * config/frv/frv.c (frv_function_symbol_referenced_p): New. (move_source_operand): Reject CONSTs that reference function SYMBOL_REFs on FDPIC. (frv_emit_movsi): If we get such a CONST, break it up. * config/frv/frv.h (CPP_SPEC): Define __FRV_FDPIC__ for -mfdpic. (TRANSFER_FROM_TRAMPOLINE): Use different definitions for FDPIC. * config/frv/frv.c (frv_print_operand) <I>: Recognize PLUS without MEM. (frv_assemble_integer): Don't use funcdesc for LABEL_REFs. (frv_trampoline_size): Increase for FDPIC. * config/frv/frv.h (TRAMPOLINE_ALIGNMENT): Bump to 64 for FDPIC. (TRANSFER_FROM_TRAMPOLINE): Handle FDPIC trampolines. * config/frv/frv.c (frv_legitimize_fdpic_address, frv_emit_movsi): Disable use of GOTOFF for now. (const_small_data_p, plus_small_data_p, frv_in_small_data_p): Disable use of small data in FDPIC for now. (frv_asm_output_mi_thunk): Implement for FDPIC. * config/frv/frv.h (SDA_BASE_REG): Set to -1 with FDPIC. * config/frv/frv.c (frv_asm_out_constructor): Use frv_assemble_integer for FDPIC pointers. (frv_asm_out_destructor): Likewise. * config/frv/frv.md (ldd): Fix order of operands. Use address_operand for input. 2003-09-18 DJ Delorie <dj@redhat.com> * config/frv/frv.c (frv_legitimate_fdpic_operand_p): Remove UNSPEC_PIC. (unspec_got_name): Correct typo. (frv_emit_movsi): Pre-expand splittable GOTs. (frv_expand_fdpic_call): Rename gen_lddi to gen_ldd. * config/frv/frv.md (lddi): Fix syntax error, rename to ldd. (symGOT2reg_hilo, symGOTOFF2reg_hilo): New. * config/frv/t-frv: Add -mfdpic multilibs. * config/frv/frv.h (ASM_SPEC): Pass -mfdpic/-mno-fdpic. (TARGET_SWITCHES): Add -mno-fdpic, fix documentation. * config/frv/frv.c (frv_override_options): -mfdpic assumes flag_pic, default to 32-bit pics, require DWORD ops. (frv_override_options): Add W and Z constraints. (frv_expand_prologue): No pic prologue for -mfdpic. (frv_asm_output_mi_thunk): Support -mfdpic (soon). (frv_print_operand_memory_reference): Handle GOT constants. (frv_legitimate_address_p): Allow GOT constants. (frv_legitimize_address): Handle GOT addresses too. (frv_legitimate_fdpic_operand_p): New. (frv_legitimize_fdpic_address): New. (unspec_got_name): New. (frv_output_addr_const_extra): New. (frv_expand_fdpic_call): New. (frv_fdpic_fptr_operand): New. (gpr_or_int12_operand): Handle GOT operands. (int_2word_operand): Handle GOT operands. (fdpic_operand): New. (fdpic_splittable_got_operand): New. (fdpic_got12_operand): New. (frv_emit_movsi): Handle GOT operands. (frv_assemble_integer): -mfdpic doesn't use rofixups. (frv_print_operand): Support 'g' code for GOT operands. * config/frv/frv-protos.h: Add prototypes as needed. * config/frv/frv.md (R_FRV_GOT12, R_FRV_GOTHI, R_FRV_GOTLO, R_FRV_FUNCDESC, R_FRV_FUNCDESC_GOT12, R_FRV_FUNCDESC_GOTHI, R_FRV_FUNCDESC_GOTLO, R_FRV_FUNCDESC_VALUE, R_FRV_FUNCDESC_GOTOFF12, R_FRV_FUNCDESC_GOTOFFHI, R_FRV_FUNCDESC_GOTOFFLO, R_FRV_GOTOFF12, R_FRV_GOTOFFHI, R_FRV_GOTOFFLO): New. (movsi_high_got, movsi_lo_sum_got): New. (*movsi_pic): Don't use this splitter for -mfdpic. (addsi3): Allow GOT references also. (call, call_value): Handle -mfdpic separately. (call_fdpicdi, call_fdpicsi, lddi, call_value_fdpicdi, call_value_fdpicsi): New. (symGOT2reg, symGOT2reg_i, got splitters, symGOTOFF2reg, symGOTOFF2reg_i): New. * config/frv/frv.h (MASK_FDPIC): New. (TARGET_FDPIC): New. (TARGET_SWITCHES): Add -mfdpic. (FDPIC_FPTR_REGNO): New. (FDPIC_REGNO): New. (OUR_FDPIC_REG): New. (enum reg_class): Add FDPIC_REGS, FDPIC_FPTR_REGS, and FDPIC_CALL_REGS. (REG_CLASS_NAMES): Likewise. (REG_CLASS_CONTENTS): Likewise. (EXTRA_CONSTRAINT_FOR_Y): New, for 12-bit GOTs. (EXTRA_CONSTRAINT): Add it here. (FRV_GLOBAL_P): New. (OUTPUT_ADDR_CONST_EXTRA): New. From-SVN: r78373
2004-02-24 17:58:39 +01:00
frv-*-*linux*)
tm_file="dbxelf.h elfos.h svr4.h ${tm_file} \
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
linux.h glibc-stdint.h frv/linux.h frv/frv-abi.h"
tmake_file="${tmake_file} frv/t-frv frv/t-linux"
Implement FR-V FDPIC ABI support for frv-uclinux and frv-linux. 2004-02-05 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_emit_movsi): Use GOT relocations for symbols in sections named by the user. 2004-01-30 Alexandre Oliva <aoliva@redhat.com> * config/frv/linux.h (TARGET_OS_CPP_BUILTINS): New. 2004-01-27 Alexandre Oliva <aoliva@redhat.com> * config.gcc (frv-*-*linux*): Handle like *-*-linux*. * config/frv/t-linux (EXTRA_MULTILIB_PARTS): Remove, obviated by the above. 2004-01-20 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.md (symGOT2reg_hilo, symGOTOFF2reg_hilo): Add one more pseudo to further improve code generation. 2004-01-19 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.md (movdi_ldd): Introduce explicit indirection inside UNSPEC. 2004-01-16 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_legitimate_address_p): Added allow_double_reg_p argument. Adjust all callers. Use it to decide whether to enable double-register indirect addressing. (frv_funcdesc_alias_set): Remove. (frv_expand_fdpic_call): Force non-SYMBOL_REF operand into register. Emit movdi_ldd. (ldd_address_operand): New. * config/frv/frv-protos.h (frv_legitimate_address_p): Adjust. * config/frv/frv.h (GO_IF_LEGITIMATE_ADDRESS): Likewise. (PREDICATE_CODES): Add ldd_address_operand. * config/frv/frv.md (movdi_ldd): New. (symGOT2reg_hilo, symGOTOFF2reg_hilo): Use separate pseudo for intermediate computations if possible. (symGOTOFF2reg_i): Fix harmless typo. 2003-12-18 Alexandre Oliva <aoliva@redhat.com> * unwind-dw2-fde-glibc.c (_Unwind_IteratePhdrCallback): Cast relocated p_vaddr to vaddr type. * config/frv/frv-protos.h (frv_expand_fdpic_call): Return void. * config/frv/frv.c (frv_get_funcdesc_alias_set): New. (frv_expand_fdpic_call): Propagate incoming MEM's expr to funcdesc MEM, or use a funcdesc alias set. Use regular move instead of ldd. (dbl_memory_one_insn_operand): Recognize function descriptors by type or by alias set, and don't split them. * config/frv/frv.md (call, call_value): Never use call_internal for fdpic. (call_internal, call_value_internal): Never match for FDPIC. (call_fdpicdi, call_fdpicsi, call_value_fdpicdi, call_value_fdpicsi): Require FDPIC. (ldd): Removed. 2003-12-17 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.h (CRT_GET_RFIB_DATA): Define for __FRV_FDPIC__. * unwind-dw2-fde-glibc.c: Don't include elf-fdpic.h any more. (_Unwind_IteratePhdrCallback): Adjust type of load_base for FRV FDPIC. Compute data base address. * config/frv/linux.h (SUBTARGET_DRIVER_SELF_SPECS): Enable -mfdpic before the other self-specs are processed. * config/frv/t-linux (CRTSTUFF_T_CFLAGS, TARGET_LIBGCC2_CFLAGS): Build with -fPIC. 2003-12-15 Alexandre Oliva <aoliva@redhat.com> * unwind-dw2-fde-glibc.c: Don't include bits/elf-fdpic.h if inhibit_libc is defined. 2003-12-12 Alexandre Oliva <aoliva@redhat.com> * unwind-dw2-fde-glibc.c: Include bits/elf-fdpic.h for __FRV_FDPIC__. (__RELOC_POINTER): Define. (_Unwind_IteratePhdrCallback): Use it. * config/frv/frv.h (Twrite): Define. (TRANSFER_FROM_TRAMPOLINE): Use it. * config/frv/linux.h (INVOKE__main): Undefine. (Twrite): Override. 2003-12-05 Richard Sandiford <rsandifo@redhat.com> * doc/invoke.texi (-mlong-calls, -mlinked-fp): Document FRV options. (-mlibrary-pic): Emphasize that this option generates EABI code. (-mcpu): Add fr550. (-mpack): Remove. 2003-11-30 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (int_2word_operand): Reject LABELs, SYMBOL_REFs and CONSTs in FDPIC mode. * gcc/config.gcc (with_cpu): Default to fr400 on frv-*-*linux*. 2003-11-29 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv.c (move_source_operand): Don't accept symbolic constants. * config/frv/frv.md (*movhi_internal, *movsi_internal): Use an 'n' rather than 'i' constraint for the 2-instruction alternative. (*movsi_2word): New, incorporating existing int_2word_operand splitter. 2003-11-29 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv.h (EXTRA_CONSTRAINT_FOR_Q): Renamed from EXTRA_CONSTRAINT_FOR_Y. (EXTRA_CONSTRAINT): Remove handling of 'Y'. * config/frv/frv.md (*movsi_internal): Remove 'Q' constraint. (addsi3): Change 'Y' constraint to 'Q'. 2003-11-27 Richard Sandiford <rsandifo@redhat.com> * reload.c (CONST_POOL_OK_P): New macro. (find_reloads): Use it to decide whether a constant can be forced into memory. * config/frv/frv.h (LEGITIMATE_PIC_OPERAND_P): Return true if the constant satisfies got12_operand. (frv_cannot_force_const_mem): Always return true for TARGET_FDPIC. (frv_legitimate_address_p): Check for valid unspec offsets using got12_operand rather than frv_legitimate_fdpic_operand_p. (frv_legitimate_fdpic_operand_p): Delete. (frv_emit_movsi): Abort if we try to use the FDPIC register during or after reload. (frv_legitimate_constant_p): Return LEGITIMATE_PIC_OPERAND_P if TARGET_FDPIC. * config/frv/frv.md (*movdf_double): Add alternatives for CONST_DOUBLE. 2003-11-19 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv-protos.h (fdpic_operand, fdpic_got12_operand) (frv_fdpic_fptr_operand): Don't declare here. * config/frv/frv.h (EXTRA_CONSTRAINT_FOR_Y): Call got12_operand rather than fdpic_got12_operand. (PREDICATE_CODES): Remove symbolic_operand entry. Add entries for got12_operand and const_unspec_operand. * config/frv/frv.c (got12_operand): Renamed from fdpic_got12_operand. (gpr_or_int12_operand, dbl_memory_one_insn_operand): Update calls. (symbolic_operand): Remove. (const_unspec_operand): New predicate. * config/frv/frv.md (*movsi_got): Use got12_operand. (*movsi_high_got, *movsi_lo_sum_got): Use const_unspec_operand. 2003-11-18 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv-protos.h (frv_output_addr_const_extra): Remove. * config/frv/frv.h (OUTPUT_ADDR_CONST_EXTRA): Remove definition. * config/frv/frv.c (frv_unspec): New structure. (frv_small_data_reloc_p, frv_const_unspec_p): New functions. (frv_print_operand_memory_reference): Use frv_const_unspec_p to validate CONST indices. Use frv_output_const_unspec to print them. (frv_print_operand): Update call to unspec_got_name. Use frv_output_const_unspec to print constant unspecs. (frv_legitimate_fdpic_operand_p): Return true if frv_const_unspec_p. Reject UNSPECs otherwise. (unspec_got_name): Take the relocation number as argument, not an rtx containing it. (frv_output_addr_const_extra): Remove, replacing with... (frv_output_const_unspec): ...this new function. (frv_find_base_term): Use frv_const_unspec_p & frv_small_data_reloc_p. (gpr_or_int12_operand): Use fdpic_got12_operand. (dbl_memory_one_insn_operand): Likewise. (fdpic_got12_operand): Use frv_const_unspec_p. (frv_emit_movsi): Use frv_const_unspec_p to check for CONSTs that are already legitimate. Use frv_small_data_reloc_p when deciding whether to use HIGH/LO_SUM for R_FRV_GOTOFF12 and R_FRV_GPREL12. 2003-11-18 Alexandre Oliva <aoliva@redhat.com> * config/frv/t-linux (SHLIB_MAPFILES): Override so as to export... * config/frv/libgcc-frv.ver: ... frv-specific symbols. New file. * config/frv/frv-abi.h (CREATE_DOUBLE_SHIFT): Use branch to local label, for real this time. * config/frv/frv.c (frv_local_funcdesc_p): Update to new representation of visibility. (fdpic_got12_operand, symbolic_operand): Mark unused arguments as such. 2003-11-17 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv.h (MASK_LINKED_FP, TARGET_LINKED_FP): New macros. (TARGET_SWITCHES): Add -mlinked-fp and -mno-linked-fp. * config/frv/frv.c (frv_override_options): Set MASK_LINKED_FP unless it was explicitly disabled. (frv_stack_info): There is no need to save the link register in every frame unless TARGET_LINKED_FP is true. (frv_frame_pointer_required): If !TARGET_LINKED_FP, only require a frame pointer if the stack pointer might change value. (frv_return_addr_rtx): Check and process "count" argument. 2003-11-14 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv-protos.h (frv_legitimize_address): Remove. (frv_find_base_term): Declare. * config/frv/frv.h (LEGITIMIZE_ADDRESS): Do nothing. (FIND_BASE_TERM): Define. (PREDICATE_CODES): Remove pic_register_operand, pic_symbolic_operand, small_data_register_operand, small_data_symbolic_operand. Add symbolic_operand. * config/frv/frv.c (const_small_data_p, plus_small_data_p): Delete. (frv_print_operand_memory_reference, output_move_single): Remove special handling for unlegitimized sdata addresses. (frv_legitimate_address_p): Don't allow sums of SDA_BASE_REG and symbolic addresses. (frv_legitimize_address, frv_legitimize_fdpic_address): Delete. (frv_find_base_term): New function. (int_2word_operand): Check specifically for symbolic address constants. (pic_register_operand, pic_symbolic_operand): Delete. (small_data_register_operand, small_data_symbolic_operand): Delete. (dbl_memory_one_insn_operand): Don't call plus_small_data_p. Allow UNSPEC_GOT constants if !TARGET_FDPIC. (move_source_operand): Only accept CONSTs if they're a two-insn symbolic constant. (fdpic_got12_operand): Don't require TARGET_FDPIC. (frv_emit_movsi): Legitimize sdata and -mlibrary-pic addresses using gen_symGOTOFF2reg*. (frv_ifcvt_rewrite_mem): Remove (plus gr16 ...) special cases. (frv_rtx_costs): Give all MEM addresses a cost of 0. Give MEMs themselves a cost of 3 insns. * config/mips/mips.md (*movsi_got): Allow for !TARGET_FDPIC too. Change predicate to symbolic_operand. (*movsi_high_got, *movsi_lo_sum_got): Likewise. (*movsi_lda_sdata): Delete. (*movsi_pic, movsi_high_pic, movsi_lo_sum_pic): Delete. 2003-11-05 Alexandre Oliva <aoliva@redhat.com> * config.gcc: Add t-slibgcc-elf-ver and support --with-cpu for frv-*-*linux*. * config/frv/frv-abi.h (CREATE_DOUBLE_SHIFT): Use branch to local label. * config/frv/frv.h (DRIVER_SELF_SPECS): Add blank before -multilib-library-pic. (LINK_SPEC): Add -z text for -mfdpic. * config/frv/frvbegin.c (__ROFIXUP_LIST__): Don't define on FDPIC. * config/frv/frvend.c (__ROFIXUP_END__): Likewise. * config/frv/linux.h (STARTFILE_SPEC, ENDFILE_SPEC, LINK_SPEC): Override. (OPTION_DEFAULT_SPECS, HAS_INIT_SECTION, INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, CRT_CALL_STATIC_FUNCTION): Define. * config/frv/t-linux (EXTRA_MULTILIB_PARTS): Use crtstuff-generated files. 2003-10-31 Alexandre Oliva <aoliva@redhat.com> * config.gcc: Add frv-*-*linux*. * config/frv/linux.h, config/frv/t-linux: New. 2003-10-06 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.h (LINK_SPEC): Pass -melf32frvfd to the linker when -mfdpic even if a linker script is explicitly listed. 2003-10-02 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_override_options): Clear asm_out unaligned_op for SImode on FDPIC. (frv_emit_movsi): Use compute_reloc_for_constant to compute the argument passed to decl_readonly_section. (frv_assemble_integer): Revert 2003-09-30's change, but make the whole block run with FDPIC even with -fno-PIC. 2003-10-02 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_cannot_force_const_mem): Don't force symbol or label plus offset to memory. (frv_emit_movsi): Emit GPREL only if -mgprel-ro. Emit 32-bit GOTOFF and GPREL for LABEL_REF. * config/frv/frv.h (DRIVER_SELF_SPECS): Add -mgprel-ro with -mfdpic unless -mno-gprel-ro, -fpic or -fpie. (MASK_GPREL_RO, TARGET_GPREL_RO): New. (TARGET_SWITCHES): Added gprel-ro and no-gprel-ro. * doc/invoke.texi: Document them. 2003-09-30 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv-protos.h (frv_gen_GPsym2reg): Declare. (frv_splittable_got_operand): Removed. * config/frv/frv.c (frv_cannot_force_const_mem): Reject HIGH and LO_SUM. Add comments. (frv_override_options): Moved enabling of FDPIC to DRIVER_SELF_SPECS. Don't enable MASK_DWORD. (frv_local_funcdesc_p): Remove unnecessary heck for flag_pie. (frv_legitimize_fdpic_address): Don't duplicate logic in frv_emit_movsi. (frv_gen_GPsym2reg): New. (unspec_got_name): Added gprel. (frv_expand_fdpic_call): Add support for inlining PLTs. (fdpic_fptr_operand): Renamed from frv_fdpic_fptr_operand. (gpr_or_int12_operand): Added GPREL12. (pic_symbolic_operand): Match even if !flag_pic for FDPIC. (small_data_symbolic_operand): Fail if FDPIC. (fdpic_splittable_got_operand): Removed. (fdpic_got12_operand): Added GPREL12. (frv_emit_movsi): Reorganize to avoid duplication. Emit GPREL when appropriate. Fix sdata GOTOFF. (frv_legitimate_constant_p): Require legitimate PIC operand for FDPIC with pic, but only a legitimate fdpic operand for non-pic. (frv_assemble_integer): Move FDPIC funcdesc handling out of flag_pic case. (frv_asm_out_constructor, frv_asm_out_destructor): Abort if frv_assemble_integer fails. * config/frv/frv.h (DRIVER_SELF_SPECS): New. (SUBTARGET_DRIVER_SELF_SPECS): New. (ASM_SPEC): Don't pass -mno-fdpic. (LINK_SPEC): Pass -melf32frvfd for FDPIC. (MASK_INLINE_PLT, TARGET_INLINE_PLT): New. (TARGET_SWITCHES): Add -minline-plt, -mno-inline-plt and -multilib-library-pic. (PREDICATE_CODES): Added fdpic_operand, fdpic_fptr_operand, condexec_si_media_operator, condexec_sf_add_operator and condexec_sf_conv_operator. Removed condexec_sf_binary_operator and condexec_sf_unary_operator. * config/frv/frv.md (R_FRV_GPREL12, R_FRV_GPRELHI, R_FRV_GPRELLO): New. (movsi_got, movsi_high_got, movsi_lo_sum_got): Move before movsi_internal. Give them internal names. movsi_got has type int. (fdpic got splitters): Remove. (symGPREL2reg, symGPREL2reg_hilo): New. * config/frv/t-frv (MULTILIB_MATCHES): Don't map -fpic and -fPIC to -mlibrary-pic. Map -multilib-library-pic to it. * doc/invoke.texi: -mfdpic, -minline-plt, -multilib-library-pic: Document. 2003-09-28 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_function_symbol_referenced_p): Declare. (TARGET_CANNOT_FORCE_CONST_MEM): Define to... (frv_cannot_force_const_mem): New function. (const_small_data_p, plus_small_data_p): Update comments on sdata on FDPIC. (frv_override_options): Set flag_pie for FDPIC too. (frv_conditional_register_usage): Mark gr16 and gr17 as non-fixed, call-saved registers on FDPIC. (frv_stack_info): Don't preserve the PIC register on FDPIC, and don't force LR to be preserved. (frv_expand_prologue): Likewise. (frv_asm_output_mi_thunk): Use 12-bit funcdesc gotoff for -fpic. (frv_frame_pointer_required): Don't force it just because the FDPIC register is used. (frv_legitimate_address_p) <CONST>: Accept a legitimate FDPIC operand only if !condexec_p. (frv_legitimize_address): Return the FDPIC-legitimized address. Don't match small data here on FDPIC. (frv_legitimate_fdpic_operand_p): Don't accept unadorned function symbols. Use TRUE/FALSE instead of 1/0. (frv_local_funcdesc_p): New. (frv_legitimize_fdpic_address): Rewrite to use GOTOFF and 12-bit immediates when possible. (pic_symbolic_operand): Accept SYMBOL_REFs and CONSTs in FDPIC. (dbl_memory_one_insn_operand): Accept addresses that add a REG and an UNSPEC_GOT. (frv_emit_movsi): Handle FDPIC before small data. Use GOTOFF and 12-bit immediates when possible. (frv_legitimate_constant_p): In FDPIC, reject SImode operands that are not legitimate pic operands. (frv_in_small_data_p): Re-enable for FDPIC. * config/frv/frv.h (SDA_BASE_REG): Remove comment about FDPIC. (FRV_GLOBAL_P): Removed. * config/frv/frv.md: Add modes to CONSTs. (movsi_got): New. (movsi_lo_sum_got): Use separate matches instead of match_dup. (movsi_high_pic, movsi_lo_sum_pic): Match on non-FDPIC only. (fdpic splittable operations): Match on flag_pic != 1. 2003-09-22 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_asm_out_constructor, frv_asm_out_destructor): Pass to frv_assemble_integer the size in bytes, not bits. 2003-09-19 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_assemble_integer): Reject complex expressions referencing function SYMBOL_REFs. * config/frv/frv.c (frv_function_symbol_referenced_p): New. (move_source_operand): Reject CONSTs that reference function SYMBOL_REFs on FDPIC. (frv_emit_movsi): If we get such a CONST, break it up. * config/frv/frv.h (CPP_SPEC): Define __FRV_FDPIC__ for -mfdpic. (TRANSFER_FROM_TRAMPOLINE): Use different definitions for FDPIC. * config/frv/frv.c (frv_print_operand) <I>: Recognize PLUS without MEM. (frv_assemble_integer): Don't use funcdesc for LABEL_REFs. (frv_trampoline_size): Increase for FDPIC. * config/frv/frv.h (TRAMPOLINE_ALIGNMENT): Bump to 64 for FDPIC. (TRANSFER_FROM_TRAMPOLINE): Handle FDPIC trampolines. * config/frv/frv.c (frv_legitimize_fdpic_address, frv_emit_movsi): Disable use of GOTOFF for now. (const_small_data_p, plus_small_data_p, frv_in_small_data_p): Disable use of small data in FDPIC for now. (frv_asm_output_mi_thunk): Implement for FDPIC. * config/frv/frv.h (SDA_BASE_REG): Set to -1 with FDPIC. * config/frv/frv.c (frv_asm_out_constructor): Use frv_assemble_integer for FDPIC pointers. (frv_asm_out_destructor): Likewise. * config/frv/frv.md (ldd): Fix order of operands. Use address_operand for input. 2003-09-18 DJ Delorie <dj@redhat.com> * config/frv/frv.c (frv_legitimate_fdpic_operand_p): Remove UNSPEC_PIC. (unspec_got_name): Correct typo. (frv_emit_movsi): Pre-expand splittable GOTs. (frv_expand_fdpic_call): Rename gen_lddi to gen_ldd. * config/frv/frv.md (lddi): Fix syntax error, rename to ldd. (symGOT2reg_hilo, symGOTOFF2reg_hilo): New. * config/frv/t-frv: Add -mfdpic multilibs. * config/frv/frv.h (ASM_SPEC): Pass -mfdpic/-mno-fdpic. (TARGET_SWITCHES): Add -mno-fdpic, fix documentation. * config/frv/frv.c (frv_override_options): -mfdpic assumes flag_pic, default to 32-bit pics, require DWORD ops. (frv_override_options): Add W and Z constraints. (frv_expand_prologue): No pic prologue for -mfdpic. (frv_asm_output_mi_thunk): Support -mfdpic (soon). (frv_print_operand_memory_reference): Handle GOT constants. (frv_legitimate_address_p): Allow GOT constants. (frv_legitimize_address): Handle GOT addresses too. (frv_legitimate_fdpic_operand_p): New. (frv_legitimize_fdpic_address): New. (unspec_got_name): New. (frv_output_addr_const_extra): New. (frv_expand_fdpic_call): New. (frv_fdpic_fptr_operand): New. (gpr_or_int12_operand): Handle GOT operands. (int_2word_operand): Handle GOT operands. (fdpic_operand): New. (fdpic_splittable_got_operand): New. (fdpic_got12_operand): New. (frv_emit_movsi): Handle GOT operands. (frv_assemble_integer): -mfdpic doesn't use rofixups. (frv_print_operand): Support 'g' code for GOT operands. * config/frv/frv-protos.h: Add prototypes as needed. * config/frv/frv.md (R_FRV_GOT12, R_FRV_GOTHI, R_FRV_GOTLO, R_FRV_FUNCDESC, R_FRV_FUNCDESC_GOT12, R_FRV_FUNCDESC_GOTHI, R_FRV_FUNCDESC_GOTLO, R_FRV_FUNCDESC_VALUE, R_FRV_FUNCDESC_GOTOFF12, R_FRV_FUNCDESC_GOTOFFHI, R_FRV_FUNCDESC_GOTOFFLO, R_FRV_GOTOFF12, R_FRV_GOTOFFHI, R_FRV_GOTOFFLO): New. (movsi_high_got, movsi_lo_sum_got): New. (*movsi_pic): Don't use this splitter for -mfdpic. (addsi3): Allow GOT references also. (call, call_value): Handle -mfdpic separately. (call_fdpicdi, call_fdpicsi, lddi, call_value_fdpicdi, call_value_fdpicsi): New. (symGOT2reg, symGOT2reg_i, got splitters, symGOTOFF2reg, symGOTOFF2reg_i): New. * config/frv/frv.h (MASK_FDPIC): New. (TARGET_FDPIC): New. (TARGET_SWITCHES): Add -mfdpic. (FDPIC_FPTR_REGNO): New. (FDPIC_REGNO): New. (OUR_FDPIC_REG): New. (enum reg_class): Add FDPIC_REGS, FDPIC_FPTR_REGS, and FDPIC_CALL_REGS. (REG_CLASS_NAMES): Likewise. (REG_CLASS_CONTENTS): Likewise. (EXTRA_CONSTRAINT_FOR_Y): New, for 12-bit GOTs. (EXTRA_CONSTRAINT): Add it here. (FRV_GLOBAL_P): New. (OUTPUT_ADDR_CONST_EXTRA): New. From-SVN: r78373
2004-02-24 17:58:39 +01:00
;;
2009-06-10 07:23:39 +02:00
moxie-*-elf)
gas=yes
gnu_ld=yes
tm_file="dbxelf.h elfos.h svr4.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"
;;
h8300-*-rtems*)
tmake_file="h8300/t-h8300 h8300/t-elf t-rtems h8300/t-rtems"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
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"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="h8300/h8300.h dbxelf.h elfos.h newlib-stdint.h h8300/elf.h"
;;
MAINTAINERS (mt port): Remove. * MAINTAINERS (mt port): Remove. (sco5, unixware, sco udk): Remove. (Kean Johnston): Add to Write After Approval. fixincludes: * inclhack.def (AAB_svr4_replace_byteorder, AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory, libc1_G_va_list, libc1_ifdefd_memx, nested_motorola, ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime, solaris_mutex_init_1, solaris_socket, solaris_unistd, solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param, ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale, ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc, ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings, ultrix_strings2, ultrix_sys_time, ultrix_unistd, unicosmk_restrict, uw7_byteorder_fix, windiss_math1, windiss_math2, windiss_valist): Remove. * fixincl.x: Regenerate. * mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*, i370-*-openedition, i?86-*-moss*, i?86-*-uwin*, powerpc-*-eabiaix*): Remove. * tests/base/math.h: Update. * tests/base/pthread.h: Update. * tests/base/stdio.h: Update. * tests/base/stdlib.h: Update. * tests/base/string.h: Update. * tests/base/strings.h: Update. * tests/base/sys/file.h: Update. * tests/base/sys/limits.h: Update. * tests/base/sys/socket.h: Update. * tests/base/sys/stat.h: Update. * tests/base/sys/time.h: Update. * tests/base/testing.h: Update. * tests/base/unistd.h: Update. * tests/base/_G_config.h: Remove. * tests/base/arpa: Remove directory. * tests/base/fs: Remove directory. * tests/base/locale.h: Remove. * tests/base/machine: Remove directory. * tests/base/rpc/svc.h: Remove. * tests/base/sys/ioctl.h: Remove. * tests/base/sys/regset.h: Remove. * tests/base/sys/times.h: Remove. * tests/base/sys/utsname.h: Remove. * tests/base/widec.h: Remove. gcc: * config.gcc (Obsolete configurations): Remove list of configurations. (Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*, *-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*. Remove other targets matched by those patterns. (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff, i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove. Make code for Solaris 7 and greater unconditional for Solaris. (ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*): Remove --with-* handling. * config/rs6000/sysv4.h (-mwindiss): Remove from all specs. (LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC, ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC, LINK_OS_WINDISS_SPEC): Remove. * config/rs6000/sysv4.opt (mwindiss): Remove. * configure.ac (strongarm*-*-*, xscale*-*-*): Remove. * configure: Regenerate. * doc/cpp.texi: Don't mention BeOS. * doc/extend.texi (interrupt): Don't mention MS1. * doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv, m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv, alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout, i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4, powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix): Remove. * doc/invoke.texi (MT Options): Remove. (-mwindiss): Remove. (CRIS Options): Remove cris-axis-aout references. (HPPA Options): Don't mention hppa1.1-*-pro. * doc/md.texi: (MorphoTech family): Remove. * libgcc2.c: Don't handle UWIN. * config/alpha/t-unicosmk: Remove. * config/alpha/unicosmk.h: Remove. * config/arm/kaos-arm.h: Remove. * config/arm/kaos-strongarm.h: Remove. * config/arm/strongarm-coff.h: Remove. * config/arm/strongarm-elf.h: Remove. * config/arm/strongarm-pe.h: Remove. * config/arm/t-strongarm-pe: Remove. * config/arm/t-xscale-coff: Remove. * config/arm/t-xscale-elf: Remove. * config/arm/xscale-coff.h: Remove. * config/arm/xscale-elf.h: Remove. * config/chorus.h: Remove. * config/cris/aout.h: Remove. * config/cris/aout.opt: Remove. * config/cris/t-aout: Remove. * config/i386/beos-elf.h: Remove. * config/i386/kaos-i386.h: Remove. * config/i386/ptx4-i.h: Remove. * config/i386/sco5.h: Remove. * config/i386/sco5.opt: Remove. * config/i386/sysv4-cpp.h: Remove. * config/i386/sysv5.h: Remove. * config/i386/t-beos: Remove. * config/i386/t-sco5: Remove. * config/i386/t-uwin: Remove. * config/i386/uwin.asm: Remove. * config/i386/uwin.h: Remove. * config/kaos.h: Remove. * config/mips/windiss.h: Remove. * config/mt: Remove directory. * config/pa/pa-osf.h: Remove. * config/pa/pa-pro-end.h: Remove. * config/pa/t-pro: Remove. * config/ptx4.h: Remove. * config/rs6000/beos.h: Remove. * config/rs6000/kaos-ppc.h: Remove. * config/rs6000/t-beos: Remove. * config/rs6000/windiss.h: Remove. * config/sh/kaos-sh.h: Remove. * config/sol2-6.h: Remove. * config/sparc/sol26-sld.h: Remove. * config/sparc/sysv4-only.h: Remove. * config/vax/bsd.h: Remove. * config/vax/t-memfuncs: Remove. * config/vax/ultrix.h: Remove. * config/vax/vaxv.h: Remove. * config/windiss.h: Remove. gcc/testsuite: * g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*. * g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*. * g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris 7. * gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*, strongarm*-*-* and cris-*-aout*. * gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20030909-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20031108-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20040813-1.c: Don't handle *-*-sysv5*. * gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*. * gcc.dg/arm-scd42-1.c: Use target arm*-*-*. * gcc.dg/arm-scd42-3.c: Use target arm*-*-*. * gcc.dg/cpp/assert4.c: Don't handle BeOS. * gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*. * gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and xscale*-*-elf*. * gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*. * gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1. * gcc.misc-tests/arm-isr.exp: Use target arm*-*-*. * gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-stackalign-1.c: Don't handle powerpc-*-sysv*. * gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*. * lib/target-supports.exp: Don't handle strongarm*-*-elf, xscale*-*-elf and *-*-windiss. * obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*. * gcc.dg/mt-loopi1.c: Remove. gnattools: * configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove. * configure: Regenerate. libcpp: * configure.ac (parisc*64*-*-*): Remove. * configure: Regenerate. libffi: * configure.ac (parisc*-*-linux*, powerpc-*-sysv*, powerpc-*-beos*): Remove. * configure: Regenerate. libgcc: * config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove. libjava: * configure.host (strongarm*-elf, xscale*-elf): Remove. libstdc++-v3: * configure.host (xscale, ep9312, m680[246]0, solaris2.5, solaris2.5.[0-9], solaris2.6, windiss*): Remove. * crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove. * configure: Regenerate. * config/os/solaris/solaris2.5: Remove directory. * config/os/solaris/solaris2.6: Remove directory. * config/os/windiss: Remove directory. From-SVN: r136534
2008-06-07 20:00:15 +02:00
hppa*64*-*-linux*)
PR libstdc++/17005 (fix for HP-UX 11.11) PR libstdc++/17005 (fix for HP-UX 11.11) * config.gcc (hppa*-*-*): Move MASK_BIG_SWITCH to target_cpu_default2. (hppa*-*-hpux*): Consolidate hppa1.0-*-* code. Rework handling of tm_file including pa-hpux1010.h or pa-hpux1111.h when appropriate. * config/pa/pa-hpux1010.h, config/pa/pa-hpux1111.h: New files. * config/pa/pa-hpux.h (TARGET_HPUX): Define. (LINK_SPEC): Handle march=1.0 option. * config/pa/pa-hpux10.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. Additionally, predefine _INCLUDE__STDC_A1_SOURCE and _INCLUDE_XOPEN_SOURCE_500 for UNIX 98. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa.c (override_options): Add code to process -munix= option. * config/pa/pa.h (pa_unix_string, flag_pa_unix): Declare. (TARGET_HPUX, TARGET_HPUX_10_10, TARGET_HPUX_11_11): Provide default defines. (TARGET_OPTIONS): Add SUBTARGET_OPTIONS to option list. (SUBTARGET_OPTIONS): Provide default define. * config/pa/pa64-hpux.h (STANDARD_STARTFILE_PREFIX_1, STANDARD_STARTFILE_PREFIX_2): New defines. (STARTFILE_SPEC): Provide unix95.o or unix98.o startfiles as necessary. (ENDFILE_SPEC): Use %O. * doc/install.texi (hppa*-*-hpux*): Reword paragraph on -g and gas. Mention issue caused by changing namespace and runtime to UNIX 95/98. * doc/invoke.texi (HPPA options): Move misplaced text to FRV options. Document -munix=std option. From-SVN: r86561
2004-08-25 19:49:58 +02:00
target_cpu_default="MASK_PA_11|MASK_PA_20"
tm_file="pa/pa64-start.h ${tm_file} dbxelf.h elfos.h svr4.h linux.h \
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
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
;;
MAINTAINERS (mt port): Remove. * MAINTAINERS (mt port): Remove. (sco5, unixware, sco udk): Remove. (Kean Johnston): Add to Write After Approval. fixincludes: * inclhack.def (AAB_svr4_replace_byteorder, AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory, libc1_G_va_list, libc1_ifdefd_memx, nested_motorola, ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime, solaris_mutex_init_1, solaris_socket, solaris_unistd, solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param, ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale, ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc, ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings, ultrix_strings2, ultrix_sys_time, ultrix_unistd, unicosmk_restrict, uw7_byteorder_fix, windiss_math1, windiss_math2, windiss_valist): Remove. * fixincl.x: Regenerate. * mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*, i370-*-openedition, i?86-*-moss*, i?86-*-uwin*, powerpc-*-eabiaix*): Remove. * tests/base/math.h: Update. * tests/base/pthread.h: Update. * tests/base/stdio.h: Update. * tests/base/stdlib.h: Update. * tests/base/string.h: Update. * tests/base/strings.h: Update. * tests/base/sys/file.h: Update. * tests/base/sys/limits.h: Update. * tests/base/sys/socket.h: Update. * tests/base/sys/stat.h: Update. * tests/base/sys/time.h: Update. * tests/base/testing.h: Update. * tests/base/unistd.h: Update. * tests/base/_G_config.h: Remove. * tests/base/arpa: Remove directory. * tests/base/fs: Remove directory. * tests/base/locale.h: Remove. * tests/base/machine: Remove directory. * tests/base/rpc/svc.h: Remove. * tests/base/sys/ioctl.h: Remove. * tests/base/sys/regset.h: Remove. * tests/base/sys/times.h: Remove. * tests/base/sys/utsname.h: Remove. * tests/base/widec.h: Remove. gcc: * config.gcc (Obsolete configurations): Remove list of configurations. (Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*, *-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*. Remove other targets matched by those patterns. (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff, i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove. Make code for Solaris 7 and greater unconditional for Solaris. (ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*): Remove --with-* handling. * config/rs6000/sysv4.h (-mwindiss): Remove from all specs. (LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC, ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC, LINK_OS_WINDISS_SPEC): Remove. * config/rs6000/sysv4.opt (mwindiss): Remove. * configure.ac (strongarm*-*-*, xscale*-*-*): Remove. * configure: Regenerate. * doc/cpp.texi: Don't mention BeOS. * doc/extend.texi (interrupt): Don't mention MS1. * doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv, m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv, alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout, i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4, powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix): Remove. * doc/invoke.texi (MT Options): Remove. (-mwindiss): Remove. (CRIS Options): Remove cris-axis-aout references. (HPPA Options): Don't mention hppa1.1-*-pro. * doc/md.texi: (MorphoTech family): Remove. * libgcc2.c: Don't handle UWIN. * config/alpha/t-unicosmk: Remove. * config/alpha/unicosmk.h: Remove. * config/arm/kaos-arm.h: Remove. * config/arm/kaos-strongarm.h: Remove. * config/arm/strongarm-coff.h: Remove. * config/arm/strongarm-elf.h: Remove. * config/arm/strongarm-pe.h: Remove. * config/arm/t-strongarm-pe: Remove. * config/arm/t-xscale-coff: Remove. * config/arm/t-xscale-elf: Remove. * config/arm/xscale-coff.h: Remove. * config/arm/xscale-elf.h: Remove. * config/chorus.h: Remove. * config/cris/aout.h: Remove. * config/cris/aout.opt: Remove. * config/cris/t-aout: Remove. * config/i386/beos-elf.h: Remove. * config/i386/kaos-i386.h: Remove. * config/i386/ptx4-i.h: Remove. * config/i386/sco5.h: Remove. * config/i386/sco5.opt: Remove. * config/i386/sysv4-cpp.h: Remove. * config/i386/sysv5.h: Remove. * config/i386/t-beos: Remove. * config/i386/t-sco5: Remove. * config/i386/t-uwin: Remove. * config/i386/uwin.asm: Remove. * config/i386/uwin.h: Remove. * config/kaos.h: Remove. * config/mips/windiss.h: Remove. * config/mt: Remove directory. * config/pa/pa-osf.h: Remove. * config/pa/pa-pro-end.h: Remove. * config/pa/t-pro: Remove. * config/ptx4.h: Remove. * config/rs6000/beos.h: Remove. * config/rs6000/kaos-ppc.h: Remove. * config/rs6000/t-beos: Remove. * config/rs6000/windiss.h: Remove. * config/sh/kaos-sh.h: Remove. * config/sol2-6.h: Remove. * config/sparc/sol26-sld.h: Remove. * config/sparc/sysv4-only.h: Remove. * config/vax/bsd.h: Remove. * config/vax/t-memfuncs: Remove. * config/vax/ultrix.h: Remove. * config/vax/vaxv.h: Remove. * config/windiss.h: Remove. gcc/testsuite: * g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*. * g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*. * g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris 7. * gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*, strongarm*-*-* and cris-*-aout*. * gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20030909-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20031108-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20040813-1.c: Don't handle *-*-sysv5*. * gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*. * gcc.dg/arm-scd42-1.c: Use target arm*-*-*. * gcc.dg/arm-scd42-3.c: Use target arm*-*-*. * gcc.dg/cpp/assert4.c: Don't handle BeOS. * gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*. * gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and xscale*-*-elf*. * gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*. * gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1. * gcc.misc-tests/arm-isr.exp: Use target arm*-*-*. * gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-stackalign-1.c: Don't handle powerpc-*-sysv*. * gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*. * lib/target-supports.exp: Don't handle strongarm*-*-elf, xscale*-*-elf and *-*-windiss. * obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*. * gcc.dg/mt-loopi1.c: Remove. gnattools: * configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove. * configure: Regenerate. libcpp: * configure.ac (parisc*64*-*-*): Remove. * configure: Regenerate. libffi: * configure.ac (parisc*-*-linux*, powerpc-*-sysv*, powerpc-*-beos*): Remove. * configure: Regenerate. libgcc: * config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove. libjava: * configure.host (strongarm*-elf, xscale*-elf): Remove. libstdc++-v3: * configure.host (xscale, ep9312, m680[246]0, solaris2.5, solaris2.5.[0-9], solaris2.6, windiss*): Remove. * crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove. * configure: Regenerate. * config/os/solaris/solaris2.5: Remove directory. * config/os/solaris/solaris2.6: Remove directory. * config/os/windiss: Remove directory. From-SVN: r136534
2008-06-07 20:00:15 +02:00
hppa*-*-linux*)
PR libstdc++/17005 (fix for HP-UX 11.11) PR libstdc++/17005 (fix for HP-UX 11.11) * config.gcc (hppa*-*-*): Move MASK_BIG_SWITCH to target_cpu_default2. (hppa*-*-hpux*): Consolidate hppa1.0-*-* code. Rework handling of tm_file including pa-hpux1010.h or pa-hpux1111.h when appropriate. * config/pa/pa-hpux1010.h, config/pa/pa-hpux1111.h: New files. * config/pa/pa-hpux.h (TARGET_HPUX): Define. (LINK_SPEC): Handle march=1.0 option. * config/pa/pa-hpux10.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. Additionally, predefine _INCLUDE__STDC_A1_SOURCE and _INCLUDE_XOPEN_SOURCE_500 for UNIX 98. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa.c (override_options): Add code to process -munix= option. * config/pa/pa.h (pa_unix_string, flag_pa_unix): Declare. (TARGET_HPUX, TARGET_HPUX_10_10, TARGET_HPUX_11_11): Provide default defines. (TARGET_OPTIONS): Add SUBTARGET_OPTIONS to option list. (SUBTARGET_OPTIONS): Provide default define. * config/pa/pa64-hpux.h (STANDARD_STARTFILE_PREFIX_1, STANDARD_STARTFILE_PREFIX_2): New defines. (STARTFILE_SPEC): Provide unix95.o or unix98.o startfiles as necessary. (ENDFILE_SPEC): Use %O. * doc/install.texi (hppa*-*-hpux*): Reword paragraph on -g and gas. Mention issue caused by changing namespace and runtime to UNIX 95/98. * doc/invoke.texi (HPPA options): Move misplaced text to FRV options. Document -munix=std option. From-SVN: r86561
2004-08-25 19:49:58 +02:00
target_cpu_default="MASK_PA_11|MASK_NO_SPACE_REGS"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h svr4.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"
# 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
;;
Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * config.gcc (*-*-openbsd): Don't set tm_file. (alpha*-*-openbsd, arm*-*-coff*, arm*-wince-pe*, arm-*-pe*, avr-*-*, h8300-*-rtems*, h8300-*-elf*, h8300-*-*, hppa*-*-osf*, hppa*-*-bsd*, hppa*-*-hpux*, i370-*-opened*, i370-*-mvs*, i370-*-linux*, i?86-*-openbsd*, i?86-*-lynxos, i?86-*-nto-qnx*, iq2000*-*-elf*, m68000-hp-hpux*, m68k-hp-hpux*, m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*, m68k*-*-netbsd*, m68k*-*-openbsd*, m68k-*-sysv4*, m68k-*-linux*, m68k-*-rtems*, mcore-*-pe*, mips*-*-netbsd*, mips*-*-openbsd*, rs6000-*-lynxos*, sh*-*-elf*, sh*-*-ka, sh-*-rtemself, sparc-*-openbsd*, strongarm-*-pe, vax-*-openbsd*, xscale-*-coff): Use explicit and complete lists of target headers to include. Move definitions to tm_defines where appropriate. (hppa*-*-openbsd*, powerpc-*-openbsd*): Comment out stanza for not-yet-contributed configuration. * config/lynx.h, config/alpha/openbsd.h, config/arm/coff.h * config/avr/avr.h, config/frv/frv.h, config/h8300/elf.h * config/i370/linux.h, config/i370/mvs.h, config/i370/oe.h * config/i386/nto.h, config/iq2000/iq2000.h, * config/m68k/coff.h, config/m68k/hp310.h, config/m68k/hp320.h * config/m68k/linux.h, config/m68k/m68k-aout.h * config/m68k/m68k-none.h, config/m68k/m68kv4.h * config/m68k/netbsd.h, config/m68k/openbsd.h * config/m68k/sgs.h, config/mcore/mcore-pe.h, * config/mips/netbsd.h, config/mips/openbsd.h, config/pa/pa.h, * config/rs6000/lynx.h, config/sh/embed-elf.h, config/sparc/openbsd.h: Remove includes of other target config headers, and definitions of macros moved to tm_defines lists. Add #undefs where now necessary to prevent redefinition warnings. * config/h8300/coff.h: New file split out of... * config/h8300/elf.h: ...here. * config/m68k/hp320base.h: New file split out of... * config/m68k/hp320.h: ...here. * config/rs6000/lynxbase.h: New file split out of... * config/rs6000/lynx.h: ...here. * config/m68k/hp310g.h, config/m68k/hp320g.h, config/m68k/hpux7.h * config/m68k/m68k-coff.h, config/mips/openbsd-be.h: Delete file. * config/sol2.h: Remove #if 0-ed #include of sys/mman.h. * config/m68k/m68kelf.h: Remove commented out #include of m68k/sgs.h. * config/mcore/mcore.h: Don't include hwint.h nor machmode.h. Remove unnecessary #ifndef. * config/s390/s390.h: Prefix #include of s390/fixdfdi.h [under IN_LIBGCC2] with config/. From-SVN: r70651
2003-08-21 19:27:29 +02:00
# port not yet contributed.
#hppa*-*-openbsd*)
PR libstdc++/17005 (fix for HP-UX 11.11) PR libstdc++/17005 (fix for HP-UX 11.11) * config.gcc (hppa*-*-*): Move MASK_BIG_SWITCH to target_cpu_default2. (hppa*-*-hpux*): Consolidate hppa1.0-*-* code. Rework handling of tm_file including pa-hpux1010.h or pa-hpux1111.h when appropriate. * config/pa/pa-hpux1010.h, config/pa/pa-hpux1111.h: New files. * config/pa/pa-hpux.h (TARGET_HPUX): Define. (LINK_SPEC): Handle march=1.0 option. * config/pa/pa-hpux10.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. Additionally, predefine _INCLUDE__STDC_A1_SOURCE and _INCLUDE_XOPEN_SOURCE_500 for UNIX 98. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa.c (override_options): Add code to process -munix= option. * config/pa/pa.h (pa_unix_string, flag_pa_unix): Declare. (TARGET_HPUX, TARGET_HPUX_10_10, TARGET_HPUX_11_11): Provide default defines. (TARGET_OPTIONS): Add SUBTARGET_OPTIONS to option list. (SUBTARGET_OPTIONS): Provide default define. * config/pa/pa64-hpux.h (STANDARD_STARTFILE_PREFIX_1, STANDARD_STARTFILE_PREFIX_2): New defines. (STARTFILE_SPEC): Provide unix95.o or unix98.o startfiles as necessary. (ENDFILE_SPEC): Use %O. * doc/install.texi (hppa*-*-hpux*): Reword paragraph on -g and gas. Mention issue caused by changing namespace and runtime to UNIX 95/98. * doc/invoke.texi (HPPA options): Move misplaced text to FRV options. Document -munix=std option. From-SVN: r86561
2004-08-25 19:49:58 +02:00
# target_cpu_default="MASK_PA_11"
Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * config.gcc (*-*-openbsd): Don't set tm_file. (alpha*-*-openbsd, arm*-*-coff*, arm*-wince-pe*, arm-*-pe*, avr-*-*, h8300-*-rtems*, h8300-*-elf*, h8300-*-*, hppa*-*-osf*, hppa*-*-bsd*, hppa*-*-hpux*, i370-*-opened*, i370-*-mvs*, i370-*-linux*, i?86-*-openbsd*, i?86-*-lynxos, i?86-*-nto-qnx*, iq2000*-*-elf*, m68000-hp-hpux*, m68k-hp-hpux*, m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*, m68k*-*-netbsd*, m68k*-*-openbsd*, m68k-*-sysv4*, m68k-*-linux*, m68k-*-rtems*, mcore-*-pe*, mips*-*-netbsd*, mips*-*-openbsd*, rs6000-*-lynxos*, sh*-*-elf*, sh*-*-ka, sh-*-rtemself, sparc-*-openbsd*, strongarm-*-pe, vax-*-openbsd*, xscale-*-coff): Use explicit and complete lists of target headers to include. Move definitions to tm_defines where appropriate. (hppa*-*-openbsd*, powerpc-*-openbsd*): Comment out stanza for not-yet-contributed configuration. * config/lynx.h, config/alpha/openbsd.h, config/arm/coff.h * config/avr/avr.h, config/frv/frv.h, config/h8300/elf.h * config/i370/linux.h, config/i370/mvs.h, config/i370/oe.h * config/i386/nto.h, config/iq2000/iq2000.h, * config/m68k/coff.h, config/m68k/hp310.h, config/m68k/hp320.h * config/m68k/linux.h, config/m68k/m68k-aout.h * config/m68k/m68k-none.h, config/m68k/m68kv4.h * config/m68k/netbsd.h, config/m68k/openbsd.h * config/m68k/sgs.h, config/mcore/mcore-pe.h, * config/mips/netbsd.h, config/mips/openbsd.h, config/pa/pa.h, * config/rs6000/lynx.h, config/sh/embed-elf.h, config/sparc/openbsd.h: Remove includes of other target config headers, and definitions of macros moved to tm_defines lists. Add #undefs where now necessary to prevent redefinition warnings. * config/h8300/coff.h: New file split out of... * config/h8300/elf.h: ...here. * config/m68k/hp320base.h: New file split out of... * config/m68k/hp320.h: ...here. * config/rs6000/lynxbase.h: New file split out of... * config/rs6000/lynx.h: ...here. * config/m68k/hp310g.h, config/m68k/hp320g.h, config/m68k/hpux7.h * config/m68k/m68k-coff.h, config/mips/openbsd-be.h: Delete file. * config/sol2.h: Remove #if 0-ed #include of sys/mman.h. * config/m68k/m68kelf.h: Remove commented out #include of m68k/sgs.h. * config/mcore/mcore.h: Don't include hwint.h nor machmode.h. Remove unnecessary #ifndef. * config/s390/s390.h: Prefix #include of s390/fixdfdi.h [under IN_LIBGCC2] with config/. From-SVN: r70651
2003-08-21 19:27:29 +02:00
# ;;
PR libstdc++/17005 (fix for HP-UX 11.11) PR libstdc++/17005 (fix for HP-UX 11.11) * config.gcc (hppa*-*-*): Move MASK_BIG_SWITCH to target_cpu_default2. (hppa*-*-hpux*): Consolidate hppa1.0-*-* code. Rework handling of tm_file including pa-hpux1010.h or pa-hpux1111.h when appropriate. * config/pa/pa-hpux1010.h, config/pa/pa-hpux1111.h: New files. * config/pa/pa-hpux.h (TARGET_HPUX): Define. (LINK_SPEC): Handle march=1.0 option. * config/pa/pa-hpux10.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. Additionally, predefine _INCLUDE__STDC_A1_SOURCE and _INCLUDE_XOPEN_SOURCE_500 for UNIX 98. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa.c (override_options): Add code to process -munix= option. * config/pa/pa.h (pa_unix_string, flag_pa_unix): Declare. (TARGET_HPUX, TARGET_HPUX_10_10, TARGET_HPUX_11_11): Provide default defines. (TARGET_OPTIONS): Add SUBTARGET_OPTIONS to option list. (SUBTARGET_OPTIONS): Provide default define. * config/pa/pa64-hpux.h (STANDARD_STARTFILE_PREFIX_1, STANDARD_STARTFILE_PREFIX_2): New defines. (STARTFILE_SPEC): Provide unix95.o or unix98.o startfiles as necessary. (ENDFILE_SPEC): Use %O. * doc/install.texi (hppa*-*-hpux*): Reword paragraph on -g and gas. Mention issue caused by changing namespace and runtime to UNIX 95/98. * doc/invoke.texi (HPPA options): Move misplaced text to FRV options. Document -munix=std option. From-SVN: r86561
2004-08-25 19:49:58 +02:00
hppa[12]*-*-hpux10*)
case ${target} in
hppa1.1-*-* | hppa2*-*-*)
target_cpu_default="MASK_PA_11"
;;
esac
tm_file="${tm_file} pa/pa32-regs.h dbxelf.h pa/som.h \
pa/pa-hpux.h pa/pa-hpux10.h"
config.gcc (hppa[12]*-*-hpux10*): Add pa/pa-hpux.opt to $extra_options. * config.gcc (hppa[12]*-*-hpux10*): Add pa/pa-hpux.opt to $extra_options. Also add pa/pa-hpux1010.opt for hpux10.[1-9]*. (hppa*64*-*-hpux11*): Add pa/pa-hpux1010.h to $tm_file. Add pa/pa-hpux.opt, pa/pa-hpux1010.opt and pa/pa64-hpux.opt to $extra_options. Also add pa/pa-hpux1111.opt for hpux11.[1-9]*. (hppa[12]*-*-hpux11*): Add pa/pa-hpux1010.h to $tm_file. Add pa/pa-hpux.opt to $extra_options. Also add pa/pa-hpux1111.opt for hpux11.[1-9]*. * config/pa/pa.h (architecture_type, rtx_def, pa_arch_string, pa_arch) (pa_fixed_range_string, pa_cpu_string, pa_unix_string, target_flags) (MASK_PA_11, MASK_DISABLE_FPREGS, TARGET_DISABLE_FPREGS) (MASK_NO_SPACE_REGS, TARGET_NO_SPACE_REGS, MASK_JUMP_IN_DELAY) (TARGET_JUMP_IN_DELAY, MASK_DISABLE_INDEXING, TARGET_DISABLE_INDEXING) (MASK_PORTABLE_RUNTIME, TARGET_PORTABLE_RUNTIME, MASK_GAS, TARGET_GAS) (MASK_SOFT_FLOAT, TARGET_SOFT_FLOAT, MASK_LONG_LOAD_STORE) (TARGET_LONG_LOAD_STORE, MASK_FAST_INDIRECT_CALLS) (TARGET_FAST_INDIRECT_CALLS, MASK_BIG_SWITCH, TARGET_BIG_SWITCH) (MASK_PA_20, MASK_SIO, TARGET_SIO, MASK_GNU_LD, TARGET_GNU_LD) (MASK_LONG_CALLS, TARGET_LONG_CALLS, TARGET_PA_11, TARGET_PA_20) (TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS) (SUBTARGET_OPTIONS): Delete. (TARGET_PA_10): Redefine in terms of TARGET_PA_11 and TARGET_PA_20. (TARGET_SCHED_DEFAULT): Define to a PROCESSOR_* enum (PROCESSOR_8000) instead of a string. * config/pa/pa.c (pa_arch, pa_arch_string, pa_fixed_range_string) (pa_cpu_string, pa_unix_string): Delete. (pa_cpu): Initialize to TARGET_SCHED_DEFAULT. (flag_pa_unix): Initialize based on TARGET_HPUX_11_11 and TARGET_HPUX_10_10. (TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Override defaults. (pa_handle_option): New function. (override_options): Remove handling of -march=, -mfixed-range=, -mschedule= and -munix=. * config/pa/pa-hpux.h (SUBTARGET_SWITCHES): Delete. * config/pa/pa-hpux1010.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa-hpux10.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa-hpux1111.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa-hpux11.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa64-hpux.h (SUBTARGET_SWITCHES): Delete. * config/pa/pa64-start.h (TARGET_PA_11, TARGET_PA_20): #undef before redefining. * config/pa/pa.opt: New file. * config/pa/pa-hpux.opt: New file. * config/pa/pa-hpux1010.opt: New file. * config/pa/pa-hpux1111.opt: New file. * config/pa/pa64-hpux.opt: New file. From-SVN: r98605
2005-04-23 09:02:19 +02:00
extra_options="${extra_options} pa/pa-hpux.opt"
PR libstdc++/17005 (fix for HP-UX 11.11) PR libstdc++/17005 (fix for HP-UX 11.11) * config.gcc (hppa*-*-*): Move MASK_BIG_SWITCH to target_cpu_default2. (hppa*-*-hpux*): Consolidate hppa1.0-*-* code. Rework handling of tm_file including pa-hpux1010.h or pa-hpux1111.h when appropriate. * config/pa/pa-hpux1010.h, config/pa/pa-hpux1111.h: New files. * config/pa/pa-hpux.h (TARGET_HPUX): Define. (LINK_SPEC): Handle march=1.0 option. * config/pa/pa-hpux10.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. Additionally, predefine _INCLUDE__STDC_A1_SOURCE and _INCLUDE_XOPEN_SOURCE_500 for UNIX 98. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa.c (override_options): Add code to process -munix= option. * config/pa/pa.h (pa_unix_string, flag_pa_unix): Declare. (TARGET_HPUX, TARGET_HPUX_10_10, TARGET_HPUX_11_11): Provide default defines. (TARGET_OPTIONS): Add SUBTARGET_OPTIONS to option list. (SUBTARGET_OPTIONS): Provide default define. * config/pa/pa64-hpux.h (STANDARD_STARTFILE_PREFIX_1, STANDARD_STARTFILE_PREFIX_2): New defines. (STARTFILE_SPEC): Provide unix95.o or unix98.o startfiles as necessary. (ENDFILE_SPEC): Use %O. * doc/install.texi (hppa*-*-hpux*): Reword paragraph on -g and gas. Mention issue caused by changing namespace and runtime to UNIX 95/98. * doc/invoke.texi (HPPA options): Move misplaced text to FRV options. Document -munix=std option. From-SVN: r86561
2004-08-25 19:49:58 +02:00
case ${target} in
*-*-hpux10.[1-9]*)
tm_file="${tm_file} pa/pa-hpux1010.h"
config.gcc (hppa[12]*-*-hpux10*): Add pa/pa-hpux.opt to $extra_options. * config.gcc (hppa[12]*-*-hpux10*): Add pa/pa-hpux.opt to $extra_options. Also add pa/pa-hpux1010.opt for hpux10.[1-9]*. (hppa*64*-*-hpux11*): Add pa/pa-hpux1010.h to $tm_file. Add pa/pa-hpux.opt, pa/pa-hpux1010.opt and pa/pa64-hpux.opt to $extra_options. Also add pa/pa-hpux1111.opt for hpux11.[1-9]*. (hppa[12]*-*-hpux11*): Add pa/pa-hpux1010.h to $tm_file. Add pa/pa-hpux.opt to $extra_options. Also add pa/pa-hpux1111.opt for hpux11.[1-9]*. * config/pa/pa.h (architecture_type, rtx_def, pa_arch_string, pa_arch) (pa_fixed_range_string, pa_cpu_string, pa_unix_string, target_flags) (MASK_PA_11, MASK_DISABLE_FPREGS, TARGET_DISABLE_FPREGS) (MASK_NO_SPACE_REGS, TARGET_NO_SPACE_REGS, MASK_JUMP_IN_DELAY) (TARGET_JUMP_IN_DELAY, MASK_DISABLE_INDEXING, TARGET_DISABLE_INDEXING) (MASK_PORTABLE_RUNTIME, TARGET_PORTABLE_RUNTIME, MASK_GAS, TARGET_GAS) (MASK_SOFT_FLOAT, TARGET_SOFT_FLOAT, MASK_LONG_LOAD_STORE) (TARGET_LONG_LOAD_STORE, MASK_FAST_INDIRECT_CALLS) (TARGET_FAST_INDIRECT_CALLS, MASK_BIG_SWITCH, TARGET_BIG_SWITCH) (MASK_PA_20, MASK_SIO, TARGET_SIO, MASK_GNU_LD, TARGET_GNU_LD) (MASK_LONG_CALLS, TARGET_LONG_CALLS, TARGET_PA_11, TARGET_PA_20) (TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS) (SUBTARGET_OPTIONS): Delete. (TARGET_PA_10): Redefine in terms of TARGET_PA_11 and TARGET_PA_20. (TARGET_SCHED_DEFAULT): Define to a PROCESSOR_* enum (PROCESSOR_8000) instead of a string. * config/pa/pa.c (pa_arch, pa_arch_string, pa_fixed_range_string) (pa_cpu_string, pa_unix_string): Delete. (pa_cpu): Initialize to TARGET_SCHED_DEFAULT. (flag_pa_unix): Initialize based on TARGET_HPUX_11_11 and TARGET_HPUX_10_10. (TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Override defaults. (pa_handle_option): New function. (override_options): Remove handling of -march=, -mfixed-range=, -mschedule= and -munix=. * config/pa/pa-hpux.h (SUBTARGET_SWITCHES): Delete. * config/pa/pa-hpux1010.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa-hpux10.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa-hpux1111.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa-hpux11.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa64-hpux.h (SUBTARGET_SWITCHES): Delete. * config/pa/pa64-start.h (TARGET_PA_11, TARGET_PA_20): #undef before redefining. * config/pa/pa.opt: New file. * config/pa/pa-hpux.opt: New file. * config/pa/pa-hpux1010.opt: New file. * config/pa/pa-hpux1111.opt: New file. * config/pa/pa64-hpux.opt: New file. From-SVN: r98605
2005-04-23 09:02:19 +02:00
extra_options="${extra_options} pa/pa-hpux1010.opt"
PR libstdc++/17005 (fix for HP-UX 11.11) PR libstdc++/17005 (fix for HP-UX 11.11) * config.gcc (hppa*-*-*): Move MASK_BIG_SWITCH to target_cpu_default2. (hppa*-*-hpux*): Consolidate hppa1.0-*-* code. Rework handling of tm_file including pa-hpux1010.h or pa-hpux1111.h when appropriate. * config/pa/pa-hpux1010.h, config/pa/pa-hpux1111.h: New files. * config/pa/pa-hpux.h (TARGET_HPUX): Define. (LINK_SPEC): Handle march=1.0 option. * config/pa/pa-hpux10.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. Additionally, predefine _INCLUDE__STDC_A1_SOURCE and _INCLUDE_XOPEN_SOURCE_500 for UNIX 98. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa.c (override_options): Add code to process -munix= option. * config/pa/pa.h (pa_unix_string, flag_pa_unix): Declare. (TARGET_HPUX, TARGET_HPUX_10_10, TARGET_HPUX_11_11): Provide default defines. (TARGET_OPTIONS): Add SUBTARGET_OPTIONS to option list. (SUBTARGET_OPTIONS): Provide default define. * config/pa/pa64-hpux.h (STANDARD_STARTFILE_PREFIX_1, STANDARD_STARTFILE_PREFIX_2): New defines. (STARTFILE_SPEC): Provide unix95.o or unix98.o startfiles as necessary. (ENDFILE_SPEC): Use %O. * doc/install.texi (hppa*-*-hpux*): Reword paragraph on -g and gas. Mention issue caused by changing namespace and runtime to UNIX 95/98. * doc/invoke.texi (HPPA options): Move misplaced text to FRV options. Document -munix=std option. From-SVN: r86561
2004-08-25 19:49:58 +02:00
;;
esac
tmake_file="pa/t-pa-hpux10 pa/t-pa-hpux pa/t-hpux-shlib"
case ${enable_threads} in
"")
if test x$have_pthread_h = xyes ; then
tmake_file="${tmake_file} pa/t-dce-thr"
fi
;;
yes | dce)
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
;;
hppa*64*-*-hpux11*)
PR libstdc++/17005 (fix for HP-UX 11.11) PR libstdc++/17005 (fix for HP-UX 11.11) * config.gcc (hppa*-*-*): Move MASK_BIG_SWITCH to target_cpu_default2. (hppa*-*-hpux*): Consolidate hppa1.0-*-* code. Rework handling of tm_file including pa-hpux1010.h or pa-hpux1111.h when appropriate. * config/pa/pa-hpux1010.h, config/pa/pa-hpux1111.h: New files. * config/pa/pa-hpux.h (TARGET_HPUX): Define. (LINK_SPEC): Handle march=1.0 option. * config/pa/pa-hpux10.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. Additionally, predefine _INCLUDE__STDC_A1_SOURCE and _INCLUDE_XOPEN_SOURCE_500 for UNIX 98. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa.c (override_options): Add code to process -munix= option. * config/pa/pa.h (pa_unix_string, flag_pa_unix): Declare. (TARGET_HPUX, TARGET_HPUX_10_10, TARGET_HPUX_11_11): Provide default defines. (TARGET_OPTIONS): Add SUBTARGET_OPTIONS to option list. (SUBTARGET_OPTIONS): Provide default define. * config/pa/pa64-hpux.h (STANDARD_STARTFILE_PREFIX_1, STANDARD_STARTFILE_PREFIX_2): New defines. (STARTFILE_SPEC): Provide unix95.o or unix98.o startfiles as necessary. (ENDFILE_SPEC): Use %O. * doc/install.texi (hppa*-*-hpux*): Reword paragraph on -g and gas. Mention issue caused by changing namespace and runtime to UNIX 95/98. * doc/invoke.texi (HPPA options): Move misplaced text to FRV options. Document -munix=std option. From-SVN: r86561
2004-08-25 19:49:58 +02:00
target_cpu_default="MASK_PA_11|MASK_PA_20"
if test x$gnu_ld = xyes
then
PR libstdc++/17005 (fix for HP-UX 11.11) PR libstdc++/17005 (fix for HP-UX 11.11) * config.gcc (hppa*-*-*): Move MASK_BIG_SWITCH to target_cpu_default2. (hppa*-*-hpux*): Consolidate hppa1.0-*-* code. Rework handling of tm_file including pa-hpux1010.h or pa-hpux1111.h when appropriate. * config/pa/pa-hpux1010.h, config/pa/pa-hpux1111.h: New files. * config/pa/pa-hpux.h (TARGET_HPUX): Define. (LINK_SPEC): Handle march=1.0 option. * config/pa/pa-hpux10.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. Additionally, predefine _INCLUDE__STDC_A1_SOURCE and _INCLUDE_XOPEN_SOURCE_500 for UNIX 98. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa.c (override_options): Add code to process -munix= option. * config/pa/pa.h (pa_unix_string, flag_pa_unix): Declare. (TARGET_HPUX, TARGET_HPUX_10_10, TARGET_HPUX_11_11): Provide default defines. (TARGET_OPTIONS): Add SUBTARGET_OPTIONS to option list. (SUBTARGET_OPTIONS): Provide default define. * config/pa/pa64-hpux.h (STANDARD_STARTFILE_PREFIX_1, STANDARD_STARTFILE_PREFIX_2): New defines. (STARTFILE_SPEC): Provide unix95.o or unix98.o startfiles as necessary. (ENDFILE_SPEC): Use %O. * doc/install.texi (hppa*-*-hpux*): Reword paragraph on -g and gas. Mention issue caused by changing namespace and runtime to UNIX 95/98. * doc/invoke.texi (HPPA options): Move misplaced text to FRV options. Document -munix=std option. From-SVN: r86561
2004-08-25 19:49:58 +02:00
target_cpu_default="${target_cpu_default}|MASK_GNU_LD"
fi
tm_file="pa/pa64-start.h ${tm_file} dbxelf.h elfos.h \
pa/pa64-regs.h pa/pa-hpux.h pa/pa-hpux1010.h \
pa/pa-hpux11.h"
PR libstdc++/17005 (fix for HP-UX 11.11) PR libstdc++/17005 (fix for HP-UX 11.11) * config.gcc (hppa*-*-*): Move MASK_BIG_SWITCH to target_cpu_default2. (hppa*-*-hpux*): Consolidate hppa1.0-*-* code. Rework handling of tm_file including pa-hpux1010.h or pa-hpux1111.h when appropriate. * config/pa/pa-hpux1010.h, config/pa/pa-hpux1111.h: New files. * config/pa/pa-hpux.h (TARGET_HPUX): Define. (LINK_SPEC): Handle march=1.0 option. * config/pa/pa-hpux10.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. Additionally, predefine _INCLUDE__STDC_A1_SOURCE and _INCLUDE_XOPEN_SOURCE_500 for UNIX 98. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa.c (override_options): Add code to process -munix= option. * config/pa/pa.h (pa_unix_string, flag_pa_unix): Declare. (TARGET_HPUX, TARGET_HPUX_10_10, TARGET_HPUX_11_11): Provide default defines. (TARGET_OPTIONS): Add SUBTARGET_OPTIONS to option list. (SUBTARGET_OPTIONS): Provide default define. * config/pa/pa64-hpux.h (STANDARD_STARTFILE_PREFIX_1, STANDARD_STARTFILE_PREFIX_2): New defines. (STARTFILE_SPEC): Provide unix95.o or unix98.o startfiles as necessary. (ENDFILE_SPEC): Use %O. * doc/install.texi (hppa*-*-hpux*): Reword paragraph on -g and gas. Mention issue caused by changing namespace and runtime to UNIX 95/98. * doc/invoke.texi (HPPA options): Move misplaced text to FRV options. Document -munix=std option. From-SVN: r86561
2004-08-25 19:49:58 +02:00
case ${target} in
*-*-hpux11.[1-9]*)
PR libstdc++/17005 (fix for HP-UX 11.11) PR libstdc++/17005 (fix for HP-UX 11.11) * config.gcc (hppa*-*-*): Move MASK_BIG_SWITCH to target_cpu_default2. (hppa*-*-hpux*): Consolidate hppa1.0-*-* code. Rework handling of tm_file including pa-hpux1010.h or pa-hpux1111.h when appropriate. * config/pa/pa-hpux1010.h, config/pa/pa-hpux1111.h: New files. * config/pa/pa-hpux.h (TARGET_HPUX): Define. (LINK_SPEC): Handle march=1.0 option. * config/pa/pa-hpux10.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. Additionally, predefine _INCLUDE__STDC_A1_SOURCE and _INCLUDE_XOPEN_SOURCE_500 for UNIX 98. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa.c (override_options): Add code to process -munix= option. * config/pa/pa.h (pa_unix_string, flag_pa_unix): Declare. (TARGET_HPUX, TARGET_HPUX_10_10, TARGET_HPUX_11_11): Provide default defines. (TARGET_OPTIONS): Add SUBTARGET_OPTIONS to option list. (SUBTARGET_OPTIONS): Provide default define. * config/pa/pa64-hpux.h (STANDARD_STARTFILE_PREFIX_1, STANDARD_STARTFILE_PREFIX_2): New defines. (STARTFILE_SPEC): Provide unix95.o or unix98.o startfiles as necessary. (ENDFILE_SPEC): Use %O. * doc/install.texi (hppa*-*-hpux*): Reword paragraph on -g and gas. Mention issue caused by changing namespace and runtime to UNIX 95/98. * doc/invoke.texi (HPPA options): Move misplaced text to FRV options. Document -munix=std option. From-SVN: r86561
2004-08-25 19:49:58 +02:00
tm_file="${tm_file} pa/pa-hpux1111.h pa/pa-64.h pa/pa64-hpux.h"
config.gcc (hppa[12]*-*-hpux10*): Add pa/pa-hpux.opt to $extra_options. * config.gcc (hppa[12]*-*-hpux10*): Add pa/pa-hpux.opt to $extra_options. Also add pa/pa-hpux1010.opt for hpux10.[1-9]*. (hppa*64*-*-hpux11*): Add pa/pa-hpux1010.h to $tm_file. Add pa/pa-hpux.opt, pa/pa-hpux1010.opt and pa/pa64-hpux.opt to $extra_options. Also add pa/pa-hpux1111.opt for hpux11.[1-9]*. (hppa[12]*-*-hpux11*): Add pa/pa-hpux1010.h to $tm_file. Add pa/pa-hpux.opt to $extra_options. Also add pa/pa-hpux1111.opt for hpux11.[1-9]*. * config/pa/pa.h (architecture_type, rtx_def, pa_arch_string, pa_arch) (pa_fixed_range_string, pa_cpu_string, pa_unix_string, target_flags) (MASK_PA_11, MASK_DISABLE_FPREGS, TARGET_DISABLE_FPREGS) (MASK_NO_SPACE_REGS, TARGET_NO_SPACE_REGS, MASK_JUMP_IN_DELAY) (TARGET_JUMP_IN_DELAY, MASK_DISABLE_INDEXING, TARGET_DISABLE_INDEXING) (MASK_PORTABLE_RUNTIME, TARGET_PORTABLE_RUNTIME, MASK_GAS, TARGET_GAS) (MASK_SOFT_FLOAT, TARGET_SOFT_FLOAT, MASK_LONG_LOAD_STORE) (TARGET_LONG_LOAD_STORE, MASK_FAST_INDIRECT_CALLS) (TARGET_FAST_INDIRECT_CALLS, MASK_BIG_SWITCH, TARGET_BIG_SWITCH) (MASK_PA_20, MASK_SIO, TARGET_SIO, MASK_GNU_LD, TARGET_GNU_LD) (MASK_LONG_CALLS, TARGET_LONG_CALLS, TARGET_PA_11, TARGET_PA_20) (TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS) (SUBTARGET_OPTIONS): Delete. (TARGET_PA_10): Redefine in terms of TARGET_PA_11 and TARGET_PA_20. (TARGET_SCHED_DEFAULT): Define to a PROCESSOR_* enum (PROCESSOR_8000) instead of a string. * config/pa/pa.c (pa_arch, pa_arch_string, pa_fixed_range_string) (pa_cpu_string, pa_unix_string): Delete. (pa_cpu): Initialize to TARGET_SCHED_DEFAULT. (flag_pa_unix): Initialize based on TARGET_HPUX_11_11 and TARGET_HPUX_10_10. (TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Override defaults. (pa_handle_option): New function. (override_options): Remove handling of -march=, -mfixed-range=, -mschedule= and -munix=. * config/pa/pa-hpux.h (SUBTARGET_SWITCHES): Delete. * config/pa/pa-hpux1010.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa-hpux10.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa-hpux1111.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa-hpux11.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa64-hpux.h (SUBTARGET_SWITCHES): Delete. * config/pa/pa64-start.h (TARGET_PA_11, TARGET_PA_20): #undef before redefining. * config/pa/pa.opt: New file. * config/pa/pa-hpux.opt: New file. * config/pa/pa-hpux1010.opt: New file. * config/pa/pa-hpux1111.opt: New file. * config/pa/pa64-hpux.opt: New file. From-SVN: r98605
2005-04-23 09:02:19 +02:00
extra_options="${extra_options} pa/pa-hpux1111.opt"
PR libstdc++/17005 (fix for HP-UX 11.11) PR libstdc++/17005 (fix for HP-UX 11.11) * config.gcc (hppa*-*-*): Move MASK_BIG_SWITCH to target_cpu_default2. (hppa*-*-hpux*): Consolidate hppa1.0-*-* code. Rework handling of tm_file including pa-hpux1010.h or pa-hpux1111.h when appropriate. * config/pa/pa-hpux1010.h, config/pa/pa-hpux1111.h: New files. * config/pa/pa-hpux.h (TARGET_HPUX): Define. (LINK_SPEC): Handle march=1.0 option. * config/pa/pa-hpux10.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. Additionally, predefine _INCLUDE__STDC_A1_SOURCE and _INCLUDE_XOPEN_SOURCE_500 for UNIX 98. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa.c (override_options): Add code to process -munix= option. * config/pa/pa.h (pa_unix_string, flag_pa_unix): Declare. (TARGET_HPUX, TARGET_HPUX_10_10, TARGET_HPUX_11_11): Provide default defines. (TARGET_OPTIONS): Add SUBTARGET_OPTIONS to option list. (SUBTARGET_OPTIONS): Provide default define. * config/pa/pa64-hpux.h (STANDARD_STARTFILE_PREFIX_1, STANDARD_STARTFILE_PREFIX_2): New defines. (STARTFILE_SPEC): Provide unix95.o or unix98.o startfiles as necessary. (ENDFILE_SPEC): Use %O. * doc/install.texi (hppa*-*-hpux*): Reword paragraph on -g and gas. Mention issue caused by changing namespace and runtime to UNIX 95/98. * doc/invoke.texi (HPPA options): Move misplaced text to FRV options. Document -munix=std option. From-SVN: r86561
2004-08-25 19:49:58 +02:00
;;
*)
tm_file="${tm_file} pa/pa-64.h pa/pa64-hpux.h"
;;
esac
config.gcc (hppa[12]*-*-hpux10*): Add pa/pa-hpux.opt to $extra_options. * config.gcc (hppa[12]*-*-hpux10*): Add pa/pa-hpux.opt to $extra_options. Also add pa/pa-hpux1010.opt for hpux10.[1-9]*. (hppa*64*-*-hpux11*): Add pa/pa-hpux1010.h to $tm_file. Add pa/pa-hpux.opt, pa/pa-hpux1010.opt and pa/pa64-hpux.opt to $extra_options. Also add pa/pa-hpux1111.opt for hpux11.[1-9]*. (hppa[12]*-*-hpux11*): Add pa/pa-hpux1010.h to $tm_file. Add pa/pa-hpux.opt to $extra_options. Also add pa/pa-hpux1111.opt for hpux11.[1-9]*. * config/pa/pa.h (architecture_type, rtx_def, pa_arch_string, pa_arch) (pa_fixed_range_string, pa_cpu_string, pa_unix_string, target_flags) (MASK_PA_11, MASK_DISABLE_FPREGS, TARGET_DISABLE_FPREGS) (MASK_NO_SPACE_REGS, TARGET_NO_SPACE_REGS, MASK_JUMP_IN_DELAY) (TARGET_JUMP_IN_DELAY, MASK_DISABLE_INDEXING, TARGET_DISABLE_INDEXING) (MASK_PORTABLE_RUNTIME, TARGET_PORTABLE_RUNTIME, MASK_GAS, TARGET_GAS) (MASK_SOFT_FLOAT, TARGET_SOFT_FLOAT, MASK_LONG_LOAD_STORE) (TARGET_LONG_LOAD_STORE, MASK_FAST_INDIRECT_CALLS) (TARGET_FAST_INDIRECT_CALLS, MASK_BIG_SWITCH, TARGET_BIG_SWITCH) (MASK_PA_20, MASK_SIO, TARGET_SIO, MASK_GNU_LD, TARGET_GNU_LD) (MASK_LONG_CALLS, TARGET_LONG_CALLS, TARGET_PA_11, TARGET_PA_20) (TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS) (SUBTARGET_OPTIONS): Delete. (TARGET_PA_10): Redefine in terms of TARGET_PA_11 and TARGET_PA_20. (TARGET_SCHED_DEFAULT): Define to a PROCESSOR_* enum (PROCESSOR_8000) instead of a string. * config/pa/pa.c (pa_arch, pa_arch_string, pa_fixed_range_string) (pa_cpu_string, pa_unix_string): Delete. (pa_cpu): Initialize to TARGET_SCHED_DEFAULT. (flag_pa_unix): Initialize based on TARGET_HPUX_11_11 and TARGET_HPUX_10_10. (TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Override defaults. (pa_handle_option): New function. (override_options): Remove handling of -march=, -mfixed-range=, -mschedule= and -munix=. * config/pa/pa-hpux.h (SUBTARGET_SWITCHES): Delete. * config/pa/pa-hpux1010.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa-hpux10.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa-hpux1111.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa-hpux11.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa64-hpux.h (SUBTARGET_SWITCHES): Delete. * config/pa/pa64-start.h (TARGET_PA_11, TARGET_PA_20): #undef before redefining. * config/pa/pa.opt: New file. * config/pa/pa-hpux.opt: New file. * config/pa/pa-hpux1010.opt: New file. * config/pa/pa-hpux1111.opt: New file. * config/pa/pa64-hpux.opt: New file. From-SVN: r98605
2005-04-23 09:02:19 +02:00
extra_options="${extra_options} pa/pa-hpux.opt \
pa/pa-hpux1010.opt pa/pa64-hpux.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"
case x${enable_threads} in
x | xyes | xposix )
config.gcc (i?86-*-darwin): Add 64-bit HWI support. 2006-09-08 Eric Christopher <echristo@apple.com> * config.gcc (i?86-*-darwin): Add 64-bit HWI support. * config/t-slibgcc-darwin: Support x86_64 multilib. * config/i386/i386.h (JUMP_TABLES_IN_TEXT_SECTION): Return 1 for x86_64-darwin. * config/i386/t-darwin: Add m64 multilib. (LIB2_SIDITI_CONV_FUNCS): Use. (LIB2FUNCS_EXTRA): Ditto. * config/i386/darwin.h: Support x86_64. * config/i386/i386.c (override_options): Turn on flag_pic for x86_64-darwin. Disable flag_omit_pointer. (get_pc_thunk_name): Assert !TARGET_64BIT. (legitimate_address_p): Disable machopic addressing for x86_64. (legitimize_pic_address): Ditto. (ix86_expand_move): Ditto. (ix86_expand_call): Ditto. (machopic_output_stub): Ditto. * config/darwin.c (machopic_select_section): Support literal16. (machopic_select_rtx_section): Ditto. * config/darwin-sections.def: Ditto. * config/darwin-64.c: New. 2006-09-08 Eric Christopher <echristo@apple.com> * gcc.target/i386/20060512-3.c: Run test on ilp32 only. * gcc.target/i386/memcpy-1.c: Ditto. * gcc.target/i386/asm-1.c: Ditto. * gcc.target/i386/20060512-4.c: Ditto. * gcc.target/i386/compress-float-387.c: Ditto. * gcc.target/i386/20060512-1.c: Ditto. * gcc.target/i386/compress-float-sse.c: Ditto. * gcc.target/i386/20060512-2.c: Ditto. * gcc.target/i386/compress-float-sse-pic.c: Ditto. * gcc.target/i386/stack-prot-kernel.c: Ditto. * gcc.target/i386/compress-float-387-pic.c: Ditto. * gcc.dg/pr26449.c: Ditto. * gcc.dg/attr-ms_struct-2.c: Ditto. * gcc.dg/attr-ms_struct-1.c: Ditto. * gcc.misc-tests/linkage.exp: Fix 64-bit darwin support. 2006-09-08 Eric Christopher <echristo@apple.com> * configure.ac: Add 64-bit HWI support for i?86-darwin. From-SVN: r116795
2006-09-09 02:27:47 +02:00
thread_file=posix
;;
esac
gas=yes
case ${target} in
*-*-hpux11.[01]*)
use_gcc_stdint=provide
tm_file="${tm_file} hpux-stdint.h"
;;
*-*-hpux11.[23]*)
use_gcc_stdint=wrap
tm_file="${tm_file} hpux-stdint.h"
;;
esac
;;
PR libstdc++/17005 (fix for HP-UX 11.11) PR libstdc++/17005 (fix for HP-UX 11.11) * config.gcc (hppa*-*-*): Move MASK_BIG_SWITCH to target_cpu_default2. (hppa*-*-hpux*): Consolidate hppa1.0-*-* code. Rework handling of tm_file including pa-hpux1010.h or pa-hpux1111.h when appropriate. * config/pa/pa-hpux1010.h, config/pa/pa-hpux1111.h: New files. * config/pa/pa-hpux.h (TARGET_HPUX): Define. (LINK_SPEC): Handle march=1.0 option. * config/pa/pa-hpux10.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. Additionally, predefine _INCLUDE__STDC_A1_SOURCE and _INCLUDE_XOPEN_SOURCE_500 for UNIX 98. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa.c (override_options): Add code to process -munix= option. * config/pa/pa.h (pa_unix_string, flag_pa_unix): Declare. (TARGET_HPUX, TARGET_HPUX_10_10, TARGET_HPUX_11_11): Provide default defines. (TARGET_OPTIONS): Add SUBTARGET_OPTIONS to option list. (SUBTARGET_OPTIONS): Provide default define. * config/pa/pa64-hpux.h (STANDARD_STARTFILE_PREFIX_1, STANDARD_STARTFILE_PREFIX_2): New defines. (STARTFILE_SPEC): Provide unix95.o or unix98.o startfiles as necessary. (ENDFILE_SPEC): Use %O. * doc/install.texi (hppa*-*-hpux*): Reword paragraph on -g and gas. Mention issue caused by changing namespace and runtime to UNIX 95/98. * doc/invoke.texi (HPPA options): Move misplaced text to FRV options. Document -munix=std option. From-SVN: r86561
2004-08-25 19:49:58 +02:00
hppa[12]*-*-hpux11*)
case ${target} in
hppa1.1-*-* | hppa2*-*-*)
target_cpu_default="MASK_PA_11"
;;
esac
tm_file="${tm_file} pa/pa32-regs.h dbxelf.h pa/som.h \
config.gcc (hppa[12]*-*-hpux10*): Add pa/pa-hpux.opt to $extra_options. * config.gcc (hppa[12]*-*-hpux10*): Add pa/pa-hpux.opt to $extra_options. Also add pa/pa-hpux1010.opt for hpux10.[1-9]*. (hppa*64*-*-hpux11*): Add pa/pa-hpux1010.h to $tm_file. Add pa/pa-hpux.opt, pa/pa-hpux1010.opt and pa/pa64-hpux.opt to $extra_options. Also add pa/pa-hpux1111.opt for hpux11.[1-9]*. (hppa[12]*-*-hpux11*): Add pa/pa-hpux1010.h to $tm_file. Add pa/pa-hpux.opt to $extra_options. Also add pa/pa-hpux1111.opt for hpux11.[1-9]*. * config/pa/pa.h (architecture_type, rtx_def, pa_arch_string, pa_arch) (pa_fixed_range_string, pa_cpu_string, pa_unix_string, target_flags) (MASK_PA_11, MASK_DISABLE_FPREGS, TARGET_DISABLE_FPREGS) (MASK_NO_SPACE_REGS, TARGET_NO_SPACE_REGS, MASK_JUMP_IN_DELAY) (TARGET_JUMP_IN_DELAY, MASK_DISABLE_INDEXING, TARGET_DISABLE_INDEXING) (MASK_PORTABLE_RUNTIME, TARGET_PORTABLE_RUNTIME, MASK_GAS, TARGET_GAS) (MASK_SOFT_FLOAT, TARGET_SOFT_FLOAT, MASK_LONG_LOAD_STORE) (TARGET_LONG_LOAD_STORE, MASK_FAST_INDIRECT_CALLS) (TARGET_FAST_INDIRECT_CALLS, MASK_BIG_SWITCH, TARGET_BIG_SWITCH) (MASK_PA_20, MASK_SIO, TARGET_SIO, MASK_GNU_LD, TARGET_GNU_LD) (MASK_LONG_CALLS, TARGET_LONG_CALLS, TARGET_PA_11, TARGET_PA_20) (TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS) (SUBTARGET_OPTIONS): Delete. (TARGET_PA_10): Redefine in terms of TARGET_PA_11 and TARGET_PA_20. (TARGET_SCHED_DEFAULT): Define to a PROCESSOR_* enum (PROCESSOR_8000) instead of a string. * config/pa/pa.c (pa_arch, pa_arch_string, pa_fixed_range_string) (pa_cpu_string, pa_unix_string): Delete. (pa_cpu): Initialize to TARGET_SCHED_DEFAULT. (flag_pa_unix): Initialize based on TARGET_HPUX_11_11 and TARGET_HPUX_10_10. (TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Override defaults. (pa_handle_option): New function. (override_options): Remove handling of -march=, -mfixed-range=, -mschedule= and -munix=. * config/pa/pa-hpux.h (SUBTARGET_SWITCHES): Delete. * config/pa/pa-hpux1010.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa-hpux10.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa-hpux1111.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa-hpux11.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa64-hpux.h (SUBTARGET_SWITCHES): Delete. * config/pa/pa64-start.h (TARGET_PA_11, TARGET_PA_20): #undef before redefining. * config/pa/pa.opt: New file. * config/pa/pa-hpux.opt: New file. * config/pa/pa-hpux1010.opt: New file. * config/pa/pa-hpux1111.opt: New file. * config/pa/pa64-hpux.opt: New file. From-SVN: r98605
2005-04-23 09:02:19 +02:00
pa/pa-hpux.h pa/pa-hpux1010.h pa/pa-hpux11.h"
extra_options="${extra_options} pa/pa-hpux.opt pa/pa-hpux1010.opt"
PR libstdc++/17005 (fix for HP-UX 11.11) PR libstdc++/17005 (fix for HP-UX 11.11) * config.gcc (hppa*-*-*): Move MASK_BIG_SWITCH to target_cpu_default2. (hppa*-*-hpux*): Consolidate hppa1.0-*-* code. Rework handling of tm_file including pa-hpux1010.h or pa-hpux1111.h when appropriate. * config/pa/pa-hpux1010.h, config/pa/pa-hpux1111.h: New files. * config/pa/pa-hpux.h (TARGET_HPUX): Define. (LINK_SPEC): Handle march=1.0 option. * config/pa/pa-hpux10.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. Additionally, predefine _INCLUDE__STDC_A1_SOURCE and _INCLUDE_XOPEN_SOURCE_500 for UNIX 98. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa.c (override_options): Add code to process -munix= option. * config/pa/pa.h (pa_unix_string, flag_pa_unix): Declare. (TARGET_HPUX, TARGET_HPUX_10_10, TARGET_HPUX_11_11): Provide default defines. (TARGET_OPTIONS): Add SUBTARGET_OPTIONS to option list. (SUBTARGET_OPTIONS): Provide default define. * config/pa/pa64-hpux.h (STANDARD_STARTFILE_PREFIX_1, STANDARD_STARTFILE_PREFIX_2): New defines. (STARTFILE_SPEC): Provide unix95.o or unix98.o startfiles as necessary. (ENDFILE_SPEC): Use %O. * doc/install.texi (hppa*-*-hpux*): Reword paragraph on -g and gas. Mention issue caused by changing namespace and runtime to UNIX 95/98. * doc/invoke.texi (HPPA options): Move misplaced text to FRV options. Document -munix=std option. From-SVN: r86561
2004-08-25 19:49:58 +02:00
case ${target} in
*-*-hpux11.[1-9]*)
tm_file="${tm_file} pa/pa-hpux1111.h"
config.gcc (hppa[12]*-*-hpux10*): Add pa/pa-hpux.opt to $extra_options. * config.gcc (hppa[12]*-*-hpux10*): Add pa/pa-hpux.opt to $extra_options. Also add pa/pa-hpux1010.opt for hpux10.[1-9]*. (hppa*64*-*-hpux11*): Add pa/pa-hpux1010.h to $tm_file. Add pa/pa-hpux.opt, pa/pa-hpux1010.opt and pa/pa64-hpux.opt to $extra_options. Also add pa/pa-hpux1111.opt for hpux11.[1-9]*. (hppa[12]*-*-hpux11*): Add pa/pa-hpux1010.h to $tm_file. Add pa/pa-hpux.opt to $extra_options. Also add pa/pa-hpux1111.opt for hpux11.[1-9]*. * config/pa/pa.h (architecture_type, rtx_def, pa_arch_string, pa_arch) (pa_fixed_range_string, pa_cpu_string, pa_unix_string, target_flags) (MASK_PA_11, MASK_DISABLE_FPREGS, TARGET_DISABLE_FPREGS) (MASK_NO_SPACE_REGS, TARGET_NO_SPACE_REGS, MASK_JUMP_IN_DELAY) (TARGET_JUMP_IN_DELAY, MASK_DISABLE_INDEXING, TARGET_DISABLE_INDEXING) (MASK_PORTABLE_RUNTIME, TARGET_PORTABLE_RUNTIME, MASK_GAS, TARGET_GAS) (MASK_SOFT_FLOAT, TARGET_SOFT_FLOAT, MASK_LONG_LOAD_STORE) (TARGET_LONG_LOAD_STORE, MASK_FAST_INDIRECT_CALLS) (TARGET_FAST_INDIRECT_CALLS, MASK_BIG_SWITCH, TARGET_BIG_SWITCH) (MASK_PA_20, MASK_SIO, TARGET_SIO, MASK_GNU_LD, TARGET_GNU_LD) (MASK_LONG_CALLS, TARGET_LONG_CALLS, TARGET_PA_11, TARGET_PA_20) (TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS) (SUBTARGET_OPTIONS): Delete. (TARGET_PA_10): Redefine in terms of TARGET_PA_11 and TARGET_PA_20. (TARGET_SCHED_DEFAULT): Define to a PROCESSOR_* enum (PROCESSOR_8000) instead of a string. * config/pa/pa.c (pa_arch, pa_arch_string, pa_fixed_range_string) (pa_cpu_string, pa_unix_string): Delete. (pa_cpu): Initialize to TARGET_SCHED_DEFAULT. (flag_pa_unix): Initialize based on TARGET_HPUX_11_11 and TARGET_HPUX_10_10. (TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Override defaults. (pa_handle_option): New function. (override_options): Remove handling of -march=, -mfixed-range=, -mschedule= and -munix=. * config/pa/pa-hpux.h (SUBTARGET_SWITCHES): Delete. * config/pa/pa-hpux1010.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa-hpux10.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa-hpux1111.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa-hpux11.h (SUBTARGET_OPTIONS): Delete. * config/pa/pa64-hpux.h (SUBTARGET_SWITCHES): Delete. * config/pa/pa64-start.h (TARGET_PA_11, TARGET_PA_20): #undef before redefining. * config/pa/pa.opt: New file. * config/pa/pa-hpux.opt: New file. * config/pa/pa-hpux1010.opt: New file. * config/pa/pa-hpux1111.opt: New file. * config/pa/pa64-hpux.opt: New file. From-SVN: r98605
2005-04-23 09:02:19 +02:00
extra_options="${extra_options} pa/pa-hpux1111.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
case x${enable_threads} in
x | xyes | xposix )
config.gcc (i?86-*-darwin): Add 64-bit HWI support. 2006-09-08 Eric Christopher <echristo@apple.com> * config.gcc (i?86-*-darwin): Add 64-bit HWI support. * config/t-slibgcc-darwin: Support x86_64 multilib. * config/i386/i386.h (JUMP_TABLES_IN_TEXT_SECTION): Return 1 for x86_64-darwin. * config/i386/t-darwin: Add m64 multilib. (LIB2_SIDITI_CONV_FUNCS): Use. (LIB2FUNCS_EXTRA): Ditto. * config/i386/darwin.h: Support x86_64. * config/i386/i386.c (override_options): Turn on flag_pic for x86_64-darwin. Disable flag_omit_pointer. (get_pc_thunk_name): Assert !TARGET_64BIT. (legitimate_address_p): Disable machopic addressing for x86_64. (legitimize_pic_address): Ditto. (ix86_expand_move): Ditto. (ix86_expand_call): Ditto. (machopic_output_stub): Ditto. * config/darwin.c (machopic_select_section): Support literal16. (machopic_select_rtx_section): Ditto. * config/darwin-sections.def: Ditto. * config/darwin-64.c: New. 2006-09-08 Eric Christopher <echristo@apple.com> * gcc.target/i386/20060512-3.c: Run test on ilp32 only. * gcc.target/i386/memcpy-1.c: Ditto. * gcc.target/i386/asm-1.c: Ditto. * gcc.target/i386/20060512-4.c: Ditto. * gcc.target/i386/compress-float-387.c: Ditto. * gcc.target/i386/20060512-1.c: Ditto. * gcc.target/i386/compress-float-sse.c: Ditto. * gcc.target/i386/20060512-2.c: Ditto. * gcc.target/i386/compress-float-sse-pic.c: Ditto. * gcc.target/i386/stack-prot-kernel.c: Ditto. * gcc.target/i386/compress-float-387-pic.c: Ditto. * gcc.dg/pr26449.c: Ditto. * gcc.dg/attr-ms_struct-2.c: Ditto. * gcc.dg/attr-ms_struct-1.c: Ditto. * gcc.misc-tests/linkage.exp: Fix 64-bit darwin support. 2006-09-08 Eric Christopher <echristo@apple.com> * configure.ac: Add 64-bit HWI support for i?86-darwin. From-SVN: r116795
2006-09-09 02:27:47 +02:00
thread_file=posix
;;
esac
use_collect2=yes
gas=yes
case ${target} in
*-*-hpux11.[01]*)
use_gcc_stdint=provide
tm_file="${tm_file} hpux-stdint.h"
;;
*-*-hpux11.[23]*)
use_gcc_stdint=wrap
tm_file="${tm_file} hpux-stdint.h"
;;
esac
;;
i[34567]86-*-darwin*)
config.gcc (i?86-*-darwin): Add 64-bit HWI support. 2006-09-08 Eric Christopher <echristo@apple.com> * config.gcc (i?86-*-darwin): Add 64-bit HWI support. * config/t-slibgcc-darwin: Support x86_64 multilib. * config/i386/i386.h (JUMP_TABLES_IN_TEXT_SECTION): Return 1 for x86_64-darwin. * config/i386/t-darwin: Add m64 multilib. (LIB2_SIDITI_CONV_FUNCS): Use. (LIB2FUNCS_EXTRA): Ditto. * config/i386/darwin.h: Support x86_64. * config/i386/i386.c (override_options): Turn on flag_pic for x86_64-darwin. Disable flag_omit_pointer. (get_pc_thunk_name): Assert !TARGET_64BIT. (legitimate_address_p): Disable machopic addressing for x86_64. (legitimize_pic_address): Ditto. (ix86_expand_move): Ditto. (ix86_expand_call): Ditto. (machopic_output_stub): Ditto. * config/darwin.c (machopic_select_section): Support literal16. (machopic_select_rtx_section): Ditto. * config/darwin-sections.def: Ditto. * config/darwin-64.c: New. 2006-09-08 Eric Christopher <echristo@apple.com> * gcc.target/i386/20060512-3.c: Run test on ilp32 only. * gcc.target/i386/memcpy-1.c: Ditto. * gcc.target/i386/asm-1.c: Ditto. * gcc.target/i386/20060512-4.c: Ditto. * gcc.target/i386/compress-float-387.c: Ditto. * gcc.target/i386/20060512-1.c: Ditto. * gcc.target/i386/compress-float-sse.c: Ditto. * gcc.target/i386/20060512-2.c: Ditto. * gcc.target/i386/compress-float-sse-pic.c: Ditto. * gcc.target/i386/stack-prot-kernel.c: Ditto. * gcc.target/i386/compress-float-387-pic.c: Ditto. * gcc.dg/pr26449.c: Ditto. * gcc.dg/attr-ms_struct-2.c: Ditto. * gcc.dg/attr-ms_struct-1.c: Ditto. * gcc.misc-tests/linkage.exp: Fix 64-bit darwin support. 2006-09-08 Eric Christopher <echristo@apple.com> * configure.ac: Add 64-bit HWI support for i?86-darwin. From-SVN: r116795
2006-09-09 02:27:47 +02:00
need_64bit_hwint=yes
# This is so that '.../configure && make' doesn't fail due to
# 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}
re PR target/36669 (Wrong versioning for __float128) gcc/ 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> PR target/36669 * config/libgcc-glibc.ver: Add %exclude. * config/m32r/libgcc-glibc.ver: Likwise. * config/s390/libgcc-glibc.ver: Likwise. * config/sh/libgcc-glibc.ver: Likwise. * config/sparc/libgcc-sparc-glibc.ver: Likwise. * config/i386/libgcc-glibc.ver: New. * config/i386/libgcc-x86_64-glibc.ver: Removed. 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> * config.gcc: Remove i386/t-fprules-softfp64 soft-fp/t-softfp from tmake_file from i[34567]86-*-darwin*, x86_64-*-darwin*, i[34567]86-*-linux*, x86_64-*-linux*. Add i386/t-fprules-softfp and soft-fp/t-softfp to tmake_file for i[34567]86-*-darwin*, x86_64-*-darwin*, i[34567]86-*-linux*, x86_64-*-linux*. Add i386/t-linux to tmake_file for i[34567]86-*-linux*, x86_64-*-linux*. * libgcc-std.ver: Add empty GCC_4.4.0. * mkmap-symver.awk: Support multiple versions per symbol. * config/i386/i386.c (ix86_init_builtins): Always define __builtin_fabsq and __builtin_copysignq with fallbacks. (ix86_expand_builtin): Emit normal call for __builtin_fabsq and __builtin_copysignq if SSE2 isn't available. * config/i386/linux.h (LIBGCC2_HAS_TF_MODE): Defined. (LIBGCC2_TF_CEXT): Likwise. (TF_SIZE): Likwise. * config/i386/linux64.h (LIBGCC2_HAS_TF_MODE): Defined as 1. * config/i386/sfp-machine.h: Moved to libgcc. * config/i386/sfp-machine.h: New. * config/i386/t-linux: Likwise. * config/i386/t-darwin: Remove softfp_wrap_start and softfp_wrap_end. * config/i386/t-darwin64: Likewise. * config/i386/t-fprules-softfp64: Renamed to ... * config/i386/t-fprules-softfp: This. * config/i386/t-linux64: Remove SHLIB_MAPFILES, softfp_wrap_start and softfp_wrap_end. libgcc/ 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> PR target/36669 * shared-object.mk ($(base)_s$(objext)): Add -DSHARED. * config/i386/64/_divtc3-compat.c: New. * config/i386/64/_multc3-compat.c: Likewise. * config/i386/64/_powitf2-compat.c: Likewise. * config/i386/64/eqtf2.c: Likewise. * config/i386/64/getf2.c: Likewise. * config/i386/64/letf2.c: Likewise. * config/i386/64/t-fprules-softfp: Likewise. 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> * config.host: Add i386/${host_address}/t-fprules-softfp to tmake_file for i[34567]86-*-darwin*, x86_64-*-darwin*, i[34567]86-*-linux*, x86_64-*-linux*. * configure.ac: Set host_address to 64 or 32 for x86. * configure: Regenerated. * Makefile.in (config.status): Also depend on $(srcdir)/config.host. * config/i386/32/t-fprules-softfp: New. * config/i386/32/tf-signs.c: Likewise. * config/i386/64/sfp-machine.h: New. Moved from gcc. 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> Uros Bizjak <ubizjak@gmail.com> * config/i386/32/sfp-machine.h: New. Co-Authored-By: Uros Bizjak <ubizjak@gmail.com> From-SVN: r137369
2008-07-02 17:59:19 +02:00
tmake_file="${tmake_file} i386/t-crtpc i386/t-crtfm"
;;
x86_64-*-darwin*)
with_cpu=${with_cpu:-generic}
tmake_file="${tmake_file} t-darwin ${cpu_type}/t-darwin64 t-slibgcc-darwin i386/t-crtpc i386/t-crtfm"
tm_file="${tm_file} ${cpu_type}/darwin64.h"
;;
i[34567]86-*-elf*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
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*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
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*)
config.gcc (i386-dg-dgux, [...]): Include as many configury headers via tm_file as possible. 2002-04-02 David O'Brien <obrien@FreeBSD.org> * config.gcc (i386-dg-dgux, i386-go32-msdos , i386-go32-rtems, i386-ibm-aix, i386-moss-msdos, i386-ncr-sysv4, i386-next-, i386-pc-msdosdjgpp, i386-sequent-bsd, i386-sequent-ptx1, i386-sequent-ptx2, i386-sequent-ptx4, i386-sun-sunos, i386-wrs-vxworks, i386-*-aout, i386-*-beoself, i386-*-bsd, i386-*-bsdi, i386-*-chorusos, i386-*-coff, i386-*-elf, i386-*-freebsd5, i386-*-freebsd-aout, i386-*-gnu, i386-*-interix, i386-*-interix3, i386-*-isc, i386-*-linux, i386-*-linuxaout, i386-*-linuxoldld, i386-*-lynxos, i386-*-mach, i386-*-mingw32, i386-*-netbsd, i386-*-netbsdelf, i386-*-netware, i386-*-openbsd, i386-*-osf1, i386-*-osfrose, i386-*-pe , i386-*-rtems, i386-*-rtemscoff, i386-*-sco3.2v5, i386-*-solaris2, i386-*-sysv, i386-*-sysv4, i386-*-sysv5, i386-*-udk, i386-*-uwin, i386-*-vsta, i386-*-win32, x86_64-*-freebsd5, x86_64-*-linux, x86_64-*-netbsd): Include as many configury headers via tm_file as possible. This includes among others i386/unix.h, i386/bsd.h, i386/gas.h. * config/openbsd-oldgas.h: New file. * config/i386/386bsd.h, config/i386/aix386ng.h, config/i386/att.h, config/i386/bsd.h, config/i386/djgpp.h, config/i386/freebsd-aout.h, config/i386/gas.h, config/i386/gstabs.h, config/i386/i386-aout.h, config/i386/i386-coff.h, config/i386/i386-interix.h, config/i386/iscdbx.h, config/i386/linux-aout.h, config/i386/linux-oldld.h, config/i386/lynx-ng.h, config/i386/lynx.h, config/i386/mach.h, config/i386/netbsd.h, config/i386/next.h, config/i386/openbsd.h, config/i386/osfelf.h, config/i386/osfrose.h, config/i386/sco5.h, config/i386/seq-gas.h, config/i386/seq-sysv3.h, config/i386/seq2-sysv3.h, config/i386/sequent.h, config/i386/sun.h, config/i386/sun386.h, config/i386/svr3dbx.h, config/i386/svr3gas.h, config/i386/sysv3.h, config/i386/uwin.h, config/i386/vsta.h, config/i386/vxi386.h: Do not directly include configury headers. * config/i386/cygwin.h, config/i386/djgpp.h, config/i386/win32.h: Directly include configury headers that are no longer automatically included by the above headers. * config/i386/att.h, config/i386/bsd.h (TARGET_VERSION): Do not define. * config/i386/386bsd.h, config/i386/aix386ng.h, config/i386/cygwin.h, config/i386/djgpp.h, config/i386/i386-aout.h, config/i386/i386-coff.h, config/i386/lynx-ng.h, config/i386/lynx.h, config/i386/mach.h, config/i386/netbsd.h, config/i386/openbsd.h, config/i386/rtems.h, config/i386/seq-sysv3.h, config/i386/sequent.h, config/i386/svr3gas.h, config/i386/sysv3.h, config/i386/vsta.h, config/i386/vxi386.h (TARGET_VERSION): Define. * config/i386/beos-elf.h, config/i386/freebsd.h, config/i386/i386-interix.h, config/i386/i386elf.h, config/i386/linux.h, config/i386/linux64.h, config/i386/netbsd-elf.h, config/i386/netbsd64.h, config/i386/osfelf.h, config/i386/osfrose.h, config/i386/ptx4-i.h, config/i386/sco5.h, config/i386/sysv4.h (TARGET_VERSION): Do not need to protect. * config/i386/freebsd64.h (TARGET_VERSION): Fix style. * config/i386/386bsd.h, config/i386/cygwin.h, config/i386/djgpp.h, config/i386/freebsd-aout.h, config/i386/i386-aout.h, config/i386/i386-interix.h, config/i386/linux-aout.h, config/i386/linux-oldld.h, config/i386/mach.h, config/i386/netbsd.h, config/i386/openbsd.h, config/i386/vsta.h, config/i386/win32.h (YES_UNDERSCORES): Do not define - not needed. * config/i386/bsd.h, config/i386/gas.h (LPREFIX, ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL, USER_LABEL_PREFIX): Do not handle the "NO_UNDERSCORES" case. * config/i386/i386-coff.h, config/i386/lynx.h, config/i386/lynx-ng.h (LPREFIX, ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL, USER_LABEL_PREFIX): Define. (handles the "NO_UNDERSCORES" case) * config/i386/isc.h: Preserve comment from config/i386/isccoff.h. * config/i386/isccoff.h, config/i386/v3gas.h: Remove. Approved by: Richard Henderson <rth@redhat.com> Message-ID: <20020402190415.D29320@redhat.com> From-SVN: r51791
2002-04-03 05:49:19 +02:00
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/freebsd.h"
;;
x86_64-*-freebsd*)
config.gcc (i386-dg-dgux, [...]): Include as many configury headers via tm_file as possible. 2002-04-02 David O'Brien <obrien@FreeBSD.org> * config.gcc (i386-dg-dgux, i386-go32-msdos , i386-go32-rtems, i386-ibm-aix, i386-moss-msdos, i386-ncr-sysv4, i386-next-, i386-pc-msdosdjgpp, i386-sequent-bsd, i386-sequent-ptx1, i386-sequent-ptx2, i386-sequent-ptx4, i386-sun-sunos, i386-wrs-vxworks, i386-*-aout, i386-*-beoself, i386-*-bsd, i386-*-bsdi, i386-*-chorusos, i386-*-coff, i386-*-elf, i386-*-freebsd5, i386-*-freebsd-aout, i386-*-gnu, i386-*-interix, i386-*-interix3, i386-*-isc, i386-*-linux, i386-*-linuxaout, i386-*-linuxoldld, i386-*-lynxos, i386-*-mach, i386-*-mingw32, i386-*-netbsd, i386-*-netbsdelf, i386-*-netware, i386-*-openbsd, i386-*-osf1, i386-*-osfrose, i386-*-pe , i386-*-rtems, i386-*-rtemscoff, i386-*-sco3.2v5, i386-*-solaris2, i386-*-sysv, i386-*-sysv4, i386-*-sysv5, i386-*-udk, i386-*-uwin, i386-*-vsta, i386-*-win32, x86_64-*-freebsd5, x86_64-*-linux, x86_64-*-netbsd): Include as many configury headers via tm_file as possible. This includes among others i386/unix.h, i386/bsd.h, i386/gas.h. * config/openbsd-oldgas.h: New file. * config/i386/386bsd.h, config/i386/aix386ng.h, config/i386/att.h, config/i386/bsd.h, config/i386/djgpp.h, config/i386/freebsd-aout.h, config/i386/gas.h, config/i386/gstabs.h, config/i386/i386-aout.h, config/i386/i386-coff.h, config/i386/i386-interix.h, config/i386/iscdbx.h, config/i386/linux-aout.h, config/i386/linux-oldld.h, config/i386/lynx-ng.h, config/i386/lynx.h, config/i386/mach.h, config/i386/netbsd.h, config/i386/next.h, config/i386/openbsd.h, config/i386/osfelf.h, config/i386/osfrose.h, config/i386/sco5.h, config/i386/seq-gas.h, config/i386/seq-sysv3.h, config/i386/seq2-sysv3.h, config/i386/sequent.h, config/i386/sun.h, config/i386/sun386.h, config/i386/svr3dbx.h, config/i386/svr3gas.h, config/i386/sysv3.h, config/i386/uwin.h, config/i386/vsta.h, config/i386/vxi386.h: Do not directly include configury headers. * config/i386/cygwin.h, config/i386/djgpp.h, config/i386/win32.h: Directly include configury headers that are no longer automatically included by the above headers. * config/i386/att.h, config/i386/bsd.h (TARGET_VERSION): Do not define. * config/i386/386bsd.h, config/i386/aix386ng.h, config/i386/cygwin.h, config/i386/djgpp.h, config/i386/i386-aout.h, config/i386/i386-coff.h, config/i386/lynx-ng.h, config/i386/lynx.h, config/i386/mach.h, config/i386/netbsd.h, config/i386/openbsd.h, config/i386/rtems.h, config/i386/seq-sysv3.h, config/i386/sequent.h, config/i386/svr3gas.h, config/i386/sysv3.h, config/i386/vsta.h, config/i386/vxi386.h (TARGET_VERSION): Define. * config/i386/beos-elf.h, config/i386/freebsd.h, config/i386/i386-interix.h, config/i386/i386elf.h, config/i386/linux.h, config/i386/linux64.h, config/i386/netbsd-elf.h, config/i386/netbsd64.h, config/i386/osfelf.h, config/i386/osfrose.h, config/i386/ptx4-i.h, config/i386/sco5.h, config/i386/sysv4.h (TARGET_VERSION): Do not need to protect. * config/i386/freebsd64.h (TARGET_VERSION): Fix style. * config/i386/386bsd.h, config/i386/cygwin.h, config/i386/djgpp.h, config/i386/freebsd-aout.h, config/i386/i386-aout.h, config/i386/i386-interix.h, config/i386/linux-aout.h, config/i386/linux-oldld.h, config/i386/mach.h, config/i386/netbsd.h, config/i386/openbsd.h, config/i386/vsta.h, config/i386/win32.h (YES_UNDERSCORES): Do not define - not needed. * config/i386/bsd.h, config/i386/gas.h (LPREFIX, ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL, USER_LABEL_PREFIX): Do not handle the "NO_UNDERSCORES" case. * config/i386/i386-coff.h, config/i386/lynx.h, config/i386/lynx-ng.h (LPREFIX, ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL, USER_LABEL_PREFIX): Define. (handles the "NO_UNDERSCORES" case) * config/i386/isc.h: Preserve comment from config/i386/isccoff.h. * config/i386/isccoff.h, config/i386/v3gas.h: Remove. Approved by: Richard Henderson <rth@redhat.com> Message-ID: <20020402190415.D29320@redhat.com> From-SVN: r51791
2002-04-03 05:49:19 +02:00
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*)
config.gcc (i386-dg-dgux, [...]): Include as many configury headers via tm_file as possible. 2002-04-02 David O'Brien <obrien@FreeBSD.org> * config.gcc (i386-dg-dgux, i386-go32-msdos , i386-go32-rtems, i386-ibm-aix, i386-moss-msdos, i386-ncr-sysv4, i386-next-, i386-pc-msdosdjgpp, i386-sequent-bsd, i386-sequent-ptx1, i386-sequent-ptx2, i386-sequent-ptx4, i386-sun-sunos, i386-wrs-vxworks, i386-*-aout, i386-*-beoself, i386-*-bsd, i386-*-bsdi, i386-*-chorusos, i386-*-coff, i386-*-elf, i386-*-freebsd5, i386-*-freebsd-aout, i386-*-gnu, i386-*-interix, i386-*-interix3, i386-*-isc, i386-*-linux, i386-*-linuxaout, i386-*-linuxoldld, i386-*-lynxos, i386-*-mach, i386-*-mingw32, i386-*-netbsd, i386-*-netbsdelf, i386-*-netware, i386-*-openbsd, i386-*-osf1, i386-*-osfrose, i386-*-pe , i386-*-rtems, i386-*-rtemscoff, i386-*-sco3.2v5, i386-*-solaris2, i386-*-sysv, i386-*-sysv4, i386-*-sysv5, i386-*-udk, i386-*-uwin, i386-*-vsta, i386-*-win32, x86_64-*-freebsd5, x86_64-*-linux, x86_64-*-netbsd): Include as many configury headers via tm_file as possible. This includes among others i386/unix.h, i386/bsd.h, i386/gas.h. * config/openbsd-oldgas.h: New file. * config/i386/386bsd.h, config/i386/aix386ng.h, config/i386/att.h, config/i386/bsd.h, config/i386/djgpp.h, config/i386/freebsd-aout.h, config/i386/gas.h, config/i386/gstabs.h, config/i386/i386-aout.h, config/i386/i386-coff.h, config/i386/i386-interix.h, config/i386/iscdbx.h, config/i386/linux-aout.h, config/i386/linux-oldld.h, config/i386/lynx-ng.h, config/i386/lynx.h, config/i386/mach.h, config/i386/netbsd.h, config/i386/next.h, config/i386/openbsd.h, config/i386/osfelf.h, config/i386/osfrose.h, config/i386/sco5.h, config/i386/seq-gas.h, config/i386/seq-sysv3.h, config/i386/seq2-sysv3.h, config/i386/sequent.h, config/i386/sun.h, config/i386/sun386.h, config/i386/svr3dbx.h, config/i386/svr3gas.h, config/i386/sysv3.h, config/i386/uwin.h, config/i386/vsta.h, config/i386/vxi386.h: Do not directly include configury headers. * config/i386/cygwin.h, config/i386/djgpp.h, config/i386/win32.h: Directly include configury headers that are no longer automatically included by the above headers. * config/i386/att.h, config/i386/bsd.h (TARGET_VERSION): Do not define. * config/i386/386bsd.h, config/i386/aix386ng.h, config/i386/cygwin.h, config/i386/djgpp.h, config/i386/i386-aout.h, config/i386/i386-coff.h, config/i386/lynx-ng.h, config/i386/lynx.h, config/i386/mach.h, config/i386/netbsd.h, config/i386/openbsd.h, config/i386/rtems.h, config/i386/seq-sysv3.h, config/i386/sequent.h, config/i386/svr3gas.h, config/i386/sysv3.h, config/i386/vsta.h, config/i386/vxi386.h (TARGET_VERSION): Define. * config/i386/beos-elf.h, config/i386/freebsd.h, config/i386/i386-interix.h, config/i386/i386elf.h, config/i386/linux.h, config/i386/linux64.h, config/i386/netbsd-elf.h, config/i386/netbsd64.h, config/i386/osfelf.h, config/i386/osfrose.h, config/i386/ptx4-i.h, config/i386/sco5.h, config/i386/sysv4.h (TARGET_VERSION): Do not need to protect. * config/i386/freebsd64.h (TARGET_VERSION): Fix style. * config/i386/386bsd.h, config/i386/cygwin.h, config/i386/djgpp.h, config/i386/freebsd-aout.h, config/i386/i386-aout.h, config/i386/i386-interix.h, config/i386/linux-aout.h, config/i386/linux-oldld.h, config/i386/mach.h, config/i386/netbsd.h, config/i386/openbsd.h, config/i386/vsta.h, config/i386/win32.h (YES_UNDERSCORES): Do not define - not needed. * config/i386/bsd.h, config/i386/gas.h (LPREFIX, ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL, USER_LABEL_PREFIX): Do not handle the "NO_UNDERSCORES" case. * config/i386/i386-coff.h, config/i386/lynx.h, config/i386/lynx-ng.h (LPREFIX, ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL, USER_LABEL_PREFIX): Define. (handles the "NO_UNDERSCORES" case) * config/i386/isc.h: Preserve comment from config/i386/isccoff.h. * config/i386/isccoff.h, config/i386/v3gas.h: Remove. Approved by: Richard Henderson <rth@redhat.com> Message-ID: <20020402190415.D29320@redhat.com> From-SVN: r51791
2002-04-03 05:49:19 +02:00
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-elf.h i386/netbsd-elf.h"
;;
i[34567]86-*-netbsd*)
config.gcc (i386-dg-dgux, [...]): Include as many configury headers via tm_file as possible. 2002-04-02 David O'Brien <obrien@FreeBSD.org> * config.gcc (i386-dg-dgux, i386-go32-msdos , i386-go32-rtems, i386-ibm-aix, i386-moss-msdos, i386-ncr-sysv4, i386-next-, i386-pc-msdosdjgpp, i386-sequent-bsd, i386-sequent-ptx1, i386-sequent-ptx2, i386-sequent-ptx4, i386-sun-sunos, i386-wrs-vxworks, i386-*-aout, i386-*-beoself, i386-*-bsd, i386-*-bsdi, i386-*-chorusos, i386-*-coff, i386-*-elf, i386-*-freebsd5, i386-*-freebsd-aout, i386-*-gnu, i386-*-interix, i386-*-interix3, i386-*-isc, i386-*-linux, i386-*-linuxaout, i386-*-linuxoldld, i386-*-lynxos, i386-*-mach, i386-*-mingw32, i386-*-netbsd, i386-*-netbsdelf, i386-*-netware, i386-*-openbsd, i386-*-osf1, i386-*-osfrose, i386-*-pe , i386-*-rtems, i386-*-rtemscoff, i386-*-sco3.2v5, i386-*-solaris2, i386-*-sysv, i386-*-sysv4, i386-*-sysv5, i386-*-udk, i386-*-uwin, i386-*-vsta, i386-*-win32, x86_64-*-freebsd5, x86_64-*-linux, x86_64-*-netbsd): Include as many configury headers via tm_file as possible. This includes among others i386/unix.h, i386/bsd.h, i386/gas.h. * config/openbsd-oldgas.h: New file. * config/i386/386bsd.h, config/i386/aix386ng.h, config/i386/att.h, config/i386/bsd.h, config/i386/djgpp.h, config/i386/freebsd-aout.h, config/i386/gas.h, config/i386/gstabs.h, config/i386/i386-aout.h, config/i386/i386-coff.h, config/i386/i386-interix.h, config/i386/iscdbx.h, config/i386/linux-aout.h, config/i386/linux-oldld.h, config/i386/lynx-ng.h, config/i386/lynx.h, config/i386/mach.h, config/i386/netbsd.h, config/i386/next.h, config/i386/openbsd.h, config/i386/osfelf.h, config/i386/osfrose.h, config/i386/sco5.h, config/i386/seq-gas.h, config/i386/seq-sysv3.h, config/i386/seq2-sysv3.h, config/i386/sequent.h, config/i386/sun.h, config/i386/sun386.h, config/i386/svr3dbx.h, config/i386/svr3gas.h, config/i386/sysv3.h, config/i386/uwin.h, config/i386/vsta.h, config/i386/vxi386.h: Do not directly include configury headers. * config/i386/cygwin.h, config/i386/djgpp.h, config/i386/win32.h: Directly include configury headers that are no longer automatically included by the above headers. * config/i386/att.h, config/i386/bsd.h (TARGET_VERSION): Do not define. * config/i386/386bsd.h, config/i386/aix386ng.h, config/i386/cygwin.h, config/i386/djgpp.h, config/i386/i386-aout.h, config/i386/i386-coff.h, config/i386/lynx-ng.h, config/i386/lynx.h, config/i386/mach.h, config/i386/netbsd.h, config/i386/openbsd.h, config/i386/rtems.h, config/i386/seq-sysv3.h, config/i386/sequent.h, config/i386/svr3gas.h, config/i386/sysv3.h, config/i386/vsta.h, config/i386/vxi386.h (TARGET_VERSION): Define. * config/i386/beos-elf.h, config/i386/freebsd.h, config/i386/i386-interix.h, config/i386/i386elf.h, config/i386/linux.h, config/i386/linux64.h, config/i386/netbsd-elf.h, config/i386/netbsd64.h, config/i386/osfelf.h, config/i386/osfrose.h, config/i386/ptx4-i.h, config/i386/sco5.h, config/i386/sysv4.h (TARGET_VERSION): Do not need to protect. * config/i386/freebsd64.h (TARGET_VERSION): Fix style. * config/i386/386bsd.h, config/i386/cygwin.h, config/i386/djgpp.h, config/i386/freebsd-aout.h, config/i386/i386-aout.h, config/i386/i386-interix.h, config/i386/linux-aout.h, config/i386/linux-oldld.h, config/i386/mach.h, config/i386/netbsd.h, config/i386/openbsd.h, config/i386/vsta.h, config/i386/win32.h (YES_UNDERSCORES): Do not define - not needed. * config/i386/bsd.h, config/i386/gas.h (LPREFIX, ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL, USER_LABEL_PREFIX): Do not handle the "NO_UNDERSCORES" case. * config/i386/i386-coff.h, config/i386/lynx.h, config/i386/lynx-ng.h (LPREFIX, ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL, USER_LABEL_PREFIX): Define. (handles the "NO_UNDERSCORES" case) * config/i386/isc.h: Preserve comment from config/i386/isccoff.h. * config/i386/isccoff.h, config/i386/v3gas.h: Remove. Approved by: Richard Henderson <rth@redhat.com> Message-ID: <20020402190415.D29320@redhat.com> From-SVN: r51791
2002-04-03 05:49:19 +02:00
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h netbsd.h netbsd-aout.h i386/netbsd.h"
tmake_file="${tmake_file} t-netbsd"
extra_parts=""
use_collect2=yes
;;
x86_64-*-netbsd*)
config.gcc (i386-dg-dgux, [...]): Include as many configury headers via tm_file as possible. 2002-04-02 David O'Brien <obrien@FreeBSD.org> * config.gcc (i386-dg-dgux, i386-go32-msdos , i386-go32-rtems, i386-ibm-aix, i386-moss-msdos, i386-ncr-sysv4, i386-next-, i386-pc-msdosdjgpp, i386-sequent-bsd, i386-sequent-ptx1, i386-sequent-ptx2, i386-sequent-ptx4, i386-sun-sunos, i386-wrs-vxworks, i386-*-aout, i386-*-beoself, i386-*-bsd, i386-*-bsdi, i386-*-chorusos, i386-*-coff, i386-*-elf, i386-*-freebsd5, i386-*-freebsd-aout, i386-*-gnu, i386-*-interix, i386-*-interix3, i386-*-isc, i386-*-linux, i386-*-linuxaout, i386-*-linuxoldld, i386-*-lynxos, i386-*-mach, i386-*-mingw32, i386-*-netbsd, i386-*-netbsdelf, i386-*-netware, i386-*-openbsd, i386-*-osf1, i386-*-osfrose, i386-*-pe , i386-*-rtems, i386-*-rtemscoff, i386-*-sco3.2v5, i386-*-solaris2, i386-*-sysv, i386-*-sysv4, i386-*-sysv5, i386-*-udk, i386-*-uwin, i386-*-vsta, i386-*-win32, x86_64-*-freebsd5, x86_64-*-linux, x86_64-*-netbsd): Include as many configury headers via tm_file as possible. This includes among others i386/unix.h, i386/bsd.h, i386/gas.h. * config/openbsd-oldgas.h: New file. * config/i386/386bsd.h, config/i386/aix386ng.h, config/i386/att.h, config/i386/bsd.h, config/i386/djgpp.h, config/i386/freebsd-aout.h, config/i386/gas.h, config/i386/gstabs.h, config/i386/i386-aout.h, config/i386/i386-coff.h, config/i386/i386-interix.h, config/i386/iscdbx.h, config/i386/linux-aout.h, config/i386/linux-oldld.h, config/i386/lynx-ng.h, config/i386/lynx.h, config/i386/mach.h, config/i386/netbsd.h, config/i386/next.h, config/i386/openbsd.h, config/i386/osfelf.h, config/i386/osfrose.h, config/i386/sco5.h, config/i386/seq-gas.h, config/i386/seq-sysv3.h, config/i386/seq2-sysv3.h, config/i386/sequent.h, config/i386/sun.h, config/i386/sun386.h, config/i386/svr3dbx.h, config/i386/svr3gas.h, config/i386/sysv3.h, config/i386/uwin.h, config/i386/vsta.h, config/i386/vxi386.h: Do not directly include configury headers. * config/i386/cygwin.h, config/i386/djgpp.h, config/i386/win32.h: Directly include configury headers that are no longer automatically included by the above headers. * config/i386/att.h, config/i386/bsd.h (TARGET_VERSION): Do not define. * config/i386/386bsd.h, config/i386/aix386ng.h, config/i386/cygwin.h, config/i386/djgpp.h, config/i386/i386-aout.h, config/i386/i386-coff.h, config/i386/lynx-ng.h, config/i386/lynx.h, config/i386/mach.h, config/i386/netbsd.h, config/i386/openbsd.h, config/i386/rtems.h, config/i386/seq-sysv3.h, config/i386/sequent.h, config/i386/svr3gas.h, config/i386/sysv3.h, config/i386/vsta.h, config/i386/vxi386.h (TARGET_VERSION): Define. * config/i386/beos-elf.h, config/i386/freebsd.h, config/i386/i386-interix.h, config/i386/i386elf.h, config/i386/linux.h, config/i386/linux64.h, config/i386/netbsd-elf.h, config/i386/netbsd64.h, config/i386/osfelf.h, config/i386/osfrose.h, config/i386/ptx4-i.h, config/i386/sco5.h, config/i386/sysv4.h (TARGET_VERSION): Do not need to protect. * config/i386/freebsd64.h (TARGET_VERSION): Fix style. * config/i386/386bsd.h, config/i386/cygwin.h, config/i386/djgpp.h, config/i386/freebsd-aout.h, config/i386/i386-aout.h, config/i386/i386-interix.h, config/i386/linux-aout.h, config/i386/linux-oldld.h, config/i386/mach.h, config/i386/netbsd.h, config/i386/openbsd.h, config/i386/vsta.h, config/i386/win32.h (YES_UNDERSCORES): Do not define - not needed. * config/i386/bsd.h, config/i386/gas.h (LPREFIX, ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL, USER_LABEL_PREFIX): Do not handle the "NO_UNDERSCORES" case. * config/i386/i386-coff.h, config/i386/lynx.h, config/i386/lynx-ng.h (LPREFIX, ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL, USER_LABEL_PREFIX): Define. (handles the "NO_UNDERSCORES" case) * config/i386/isc.h: Preserve comment from config/i386/isccoff.h. * config/i386/isccoff.h, config/i386/v3gas.h: Remove. Approved by: Richard Henderson <rth@redhat.com> Message-ID: <20020402190415.D29320@redhat.com> From-SVN: r51791
2002-04-03 05:49:19 +02:00
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])
Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * config.gcc (*-*-openbsd): Don't set tm_file. (alpha*-*-openbsd, arm*-*-coff*, arm*-wince-pe*, arm-*-pe*, avr-*-*, h8300-*-rtems*, h8300-*-elf*, h8300-*-*, hppa*-*-osf*, hppa*-*-bsd*, hppa*-*-hpux*, i370-*-opened*, i370-*-mvs*, i370-*-linux*, i?86-*-openbsd*, i?86-*-lynxos, i?86-*-nto-qnx*, iq2000*-*-elf*, m68000-hp-hpux*, m68k-hp-hpux*, m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*, m68k*-*-netbsd*, m68k*-*-openbsd*, m68k-*-sysv4*, m68k-*-linux*, m68k-*-rtems*, mcore-*-pe*, mips*-*-netbsd*, mips*-*-openbsd*, rs6000-*-lynxos*, sh*-*-elf*, sh*-*-ka, sh-*-rtemself, sparc-*-openbsd*, strongarm-*-pe, vax-*-openbsd*, xscale-*-coff): Use explicit and complete lists of target headers to include. Move definitions to tm_defines where appropriate. (hppa*-*-openbsd*, powerpc-*-openbsd*): Comment out stanza for not-yet-contributed configuration. * config/lynx.h, config/alpha/openbsd.h, config/arm/coff.h * config/avr/avr.h, config/frv/frv.h, config/h8300/elf.h * config/i370/linux.h, config/i370/mvs.h, config/i370/oe.h * config/i386/nto.h, config/iq2000/iq2000.h, * config/m68k/coff.h, config/m68k/hp310.h, config/m68k/hp320.h * config/m68k/linux.h, config/m68k/m68k-aout.h * config/m68k/m68k-none.h, config/m68k/m68kv4.h * config/m68k/netbsd.h, config/m68k/openbsd.h * config/m68k/sgs.h, config/mcore/mcore-pe.h, * config/mips/netbsd.h, config/mips/openbsd.h, config/pa/pa.h, * config/rs6000/lynx.h, config/sh/embed-elf.h, config/sparc/openbsd.h: Remove includes of other target config headers, and definitions of macros moved to tm_defines lists. Add #undefs where now necessary to prevent redefinition warnings. * config/h8300/coff.h: New file split out of... * config/h8300/elf.h: ...here. * config/m68k/hp320base.h: New file split out of... * config/m68k/hp320.h: ...here. * config/rs6000/lynxbase.h: New file split out of... * config/rs6000/lynx.h: ...here. * config/m68k/hp310g.h, config/m68k/hp320g.h, config/m68k/hpux7.h * config/m68k/m68k-coff.h, config/mips/openbsd-be.h: Delete file. * config/sol2.h: Remove #if 0-ed #include of sys/mman.h. * config/m68k/m68kelf.h: Remove commented out #include of m68k/sgs.h. * config/mcore/mcore.h: Don't include hwint.h nor machmode.h. Remove unnecessary #ifndef. * config/s390/s390.h: Prefix #include of s390/fixdfdi.h [under IN_LIBGCC2] with config/. From-SVN: r70651
2003-08-21 19:27:29 +02:00
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"
# needed to unconfuse gdb
tmake_file="${tmake_file} t-libc-ok t-openbsd i386/t-openbsd"
# we need collect2 until our bug is fixed...
use_collect2=yes
;;
i[34567]86-*-openbsd*)
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h"
tm_file="${tm_file} openbsd.h i386/openbsdelf.h"
gas=yes
gnu_ld=yes
;;
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
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h glibc-stdint.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"
re PR target/36669 (Wrong versioning for __float128) gcc/ 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> PR target/36669 * config/libgcc-glibc.ver: Add %exclude. * config/m32r/libgcc-glibc.ver: Likwise. * config/s390/libgcc-glibc.ver: Likwise. * config/sh/libgcc-glibc.ver: Likwise. * config/sparc/libgcc-sparc-glibc.ver: Likwise. * config/i386/libgcc-glibc.ver: New. * config/i386/libgcc-x86_64-glibc.ver: Removed. 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> * config.gcc: Remove i386/t-fprules-softfp64 soft-fp/t-softfp from tmake_file from i[34567]86-*-darwin*, x86_64-*-darwin*, i[34567]86-*-linux*, x86_64-*-linux*. Add i386/t-fprules-softfp and soft-fp/t-softfp to tmake_file for i[34567]86-*-darwin*, x86_64-*-darwin*, i[34567]86-*-linux*, x86_64-*-linux*. Add i386/t-linux to tmake_file for i[34567]86-*-linux*, x86_64-*-linux*. * libgcc-std.ver: Add empty GCC_4.4.0. * mkmap-symver.awk: Support multiple versions per symbol. * config/i386/i386.c (ix86_init_builtins): Always define __builtin_fabsq and __builtin_copysignq with fallbacks. (ix86_expand_builtin): Emit normal call for __builtin_fabsq and __builtin_copysignq if SSE2 isn't available. * config/i386/linux.h (LIBGCC2_HAS_TF_MODE): Defined. (LIBGCC2_TF_CEXT): Likwise. (TF_SIZE): Likwise. * config/i386/linux64.h (LIBGCC2_HAS_TF_MODE): Defined as 1. * config/i386/sfp-machine.h: Moved to libgcc. * config/i386/sfp-machine.h: New. * config/i386/t-linux: Likwise. * config/i386/t-darwin: Remove softfp_wrap_start and softfp_wrap_end. * config/i386/t-darwin64: Likewise. * config/i386/t-fprules-softfp64: Renamed to ... * config/i386/t-fprules-softfp: This. * config/i386/t-linux64: Remove SHLIB_MAPFILES, softfp_wrap_start and softfp_wrap_end. libgcc/ 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> PR target/36669 * shared-object.mk ($(base)_s$(objext)): Add -DSHARED. * config/i386/64/_divtc3-compat.c: New. * config/i386/64/_multc3-compat.c: Likewise. * config/i386/64/_powitf2-compat.c: Likewise. * config/i386/64/eqtf2.c: Likewise. * config/i386/64/getf2.c: Likewise. * config/i386/64/letf2.c: Likewise. * config/i386/64/t-fprules-softfp: Likewise. 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> * config.host: Add i386/${host_address}/t-fprules-softfp to tmake_file for i[34567]86-*-darwin*, x86_64-*-darwin*, i[34567]86-*-linux*, x86_64-*-linux*. * configure.ac: Set host_address to 64 or 32 for x86. * configure: Regenerated. * Makefile.in (config.status): Also depend on $(srcdir)/config.host. * config/i386/32/t-fprules-softfp: New. * config/i386/32/tf-signs.c: Likewise. * config/i386/64/sfp-machine.h: New. Moved from gcc. 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> Uros Bizjak <ubizjak@gmail.com> * config/i386/32/sfp-machine.h: New. Co-Authored-By: Uros Bizjak <ubizjak@gmail.com> From-SVN: r137369
2008-07-02 17:59:19 +02:00
tmake_file="${tmake_file} i386/t-linux64"
need_64bit_hwint=yes
case X"${with_cpu}" in
Atom pipeline model, tuning and insn selection. 2009-04-06 Joey Ye <joey.ye@intel.com> Xuepeng Guo <xuepeng.guo@intel.com> H.J. Lu <hongjiu.lu@intel.com> Atom pipeline model, tuning and insn selection. * config.gcc (atom): Add atom config options and target. * config/i386/atom.md: New. * config/i386/i386.c (atom_cost): New cost. (m_ATOM): New macro flag. (initial_ix86_tune_features): Set m_ATOM. (x86_accumulate_outgoing_args): Likewise. (x86_arch_always_fancy_math_387): Likewise. (processor_target): Add Atom cost. (cpu_names): Add Atom cpu name. (override_options): Set Atom ISA. (ix86_issue_rate): New case PROCESSOR_ATOM. (ix86_adjust_cost): Likewise. * config/i386/i386.h (TARGET_ATOM): New target macro. (ix86_tune_indices): Add X86_TUNE_OPT_AGU. (TARGET_OPT_AGU): New target option. (target_cpu_default): Add TARGET_CPU_DEFAULT_atom. (processor_type): Add PROCESSOR_ATOM. * config/i386/i386.md (cpu): Add new value "atom". (use_carry, movu): New attr. (atom.md): Include atom.md. (adddi3_carry_rex64): Set attr "use_carry". (addqi3_carry): Likewise. (addhi3_carry): Likewise. (addsi3_carry): Likewise. (*addsi3_carry_zext): Likewise. (subdi3_carry_rex64): Likewise. (subqi3_carry): Likewise. (subhi3_carry): Likewise. (subsi3_carry): Likewise. (x86_movdicc_0_m1_rex64): Likewise. (*x86_movdicc_0_m1_se): Likewise. (x86_movsicc_0_m1): Likewise. (*x86_movsicc_0_m1_se): Likewise. (*adddi_1_rex64): Emit add insn as much as possible. (*addsi_1): Likewise. (return_internal): Set atom_unit. (return_internal_long): Likewise. (return_pop_internal): Likewise. (*rcpsf2_sse): Set atom_sse_attr attr. (*qrt<mode>2_sse): Likewise. (*prefetch_sse): Likewise. * config/i386/i386-c.c (ix86_target_macros_internal): New case PROCESSOR_ATOM. (ix86_target_macros_internal): Likewise. * config/i386/sse.md (cpu): Set attr "atom_sse_attr". (*prefetch_sse_rex): Likewise. (sse_rcpv4sf2): Likewise. (sse_vmrcpv4sf2): Likewise. (sse_sqrtv4sf2): Likewise. (<sse>_vmsqrt<mode>2): Likewise. (sse_ldmxcsr): Likewise. (sse_stmxcsr): Likewise. (*sse_sfence): Likewise. (sse2_clflush): Likewise. (*sse2_mfence): Likewise. (*sse2_lfence): Likewise. (avx_movup<avxmodesuffixf2c><avxmodesuffix>): Set attr "movu". (<sse>_movup<ssemodesuffixf2c>): Likewise. (avx_movdqu<avxmodesuffix>): Likewise. (avx_lddqu<avxmodesuffix>): Likewise. (sse2_movntv2di): Change attr "type" to "ssemov". (sse2_movntsi): Likewise. (rsqrtv8sf2): Change attr "type" to "sseadd". (sse3_addsubv2df3): Set attr "atom_unit". (sse3_h<plusminus_insn>v4sf3): Likewise. (*sse2_pmaddwd): Likewise. (*vec_extractv2di_1_rex64): Likewise. (*vec_extractv2di_1_avx): Likewise. (sse2_psadbw): Likewise. (ssse3_phaddwv8hi3): Likewise. (ssse3_phaddwv4hi3): Likewise. (ssse3_phadddv4si3): Likewise. (ssse3_phadddv2si3): Likewise. (ssse3_phaddswv8hi3): Likewise. (ssse3_phaddswv4hi3): Likewise. (ssse3_phsubwv8hi3): Likewise. (ssse3_phsubwv4hi3): Likewise. (ssse3_phsubdv4si3): Likewise. (ssse3_phsubdv2si3): Likewise. (ssse3_phsubswv8hi3): Likewise. (ssse3_phsubswv4hi3): Likewise. (ssse3_pmaddubsw128): Likewise. (sse3_pmaddubsw: Likewise. (ssse3_palignrti): Likewise. (ssse3_palignrdi): Likewise. Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com> Co-Authored-By: Xuepeng Guo <xuepeng.guo@intel.com> From-SVN: r145624
2009-04-06 22:53:33 +02:00
Xgeneric|Xatom|Xcore2|Xnocona|Xx86-64|Xamdfam10|Xbarcelona|Xk8|Xopteron|Xathlon64|Xathlon-fx)
;;
X)
if test x$with_cpu_64 = x; then
with_cpu_64=generic
fi
;;
*)
echo "Unsupported CPU used in --with-cpu=$with_cpu, supported values:" 1>&2
Atom pipeline model, tuning and insn selection. 2009-04-06 Joey Ye <joey.ye@intel.com> Xuepeng Guo <xuepeng.guo@intel.com> H.J. Lu <hongjiu.lu@intel.com> Atom pipeline model, tuning and insn selection. * config.gcc (atom): Add atom config options and target. * config/i386/atom.md: New. * config/i386/i386.c (atom_cost): New cost. (m_ATOM): New macro flag. (initial_ix86_tune_features): Set m_ATOM. (x86_accumulate_outgoing_args): Likewise. (x86_arch_always_fancy_math_387): Likewise. (processor_target): Add Atom cost. (cpu_names): Add Atom cpu name. (override_options): Set Atom ISA. (ix86_issue_rate): New case PROCESSOR_ATOM. (ix86_adjust_cost): Likewise. * config/i386/i386.h (TARGET_ATOM): New target macro. (ix86_tune_indices): Add X86_TUNE_OPT_AGU. (TARGET_OPT_AGU): New target option. (target_cpu_default): Add TARGET_CPU_DEFAULT_atom. (processor_type): Add PROCESSOR_ATOM. * config/i386/i386.md (cpu): Add new value "atom". (use_carry, movu): New attr. (atom.md): Include atom.md. (adddi3_carry_rex64): Set attr "use_carry". (addqi3_carry): Likewise. (addhi3_carry): Likewise. (addsi3_carry): Likewise. (*addsi3_carry_zext): Likewise. (subdi3_carry_rex64): Likewise. (subqi3_carry): Likewise. (subhi3_carry): Likewise. (subsi3_carry): Likewise. (x86_movdicc_0_m1_rex64): Likewise. (*x86_movdicc_0_m1_se): Likewise. (x86_movsicc_0_m1): Likewise. (*x86_movsicc_0_m1_se): Likewise. (*adddi_1_rex64): Emit add insn as much as possible. (*addsi_1): Likewise. (return_internal): Set atom_unit. (return_internal_long): Likewise. (return_pop_internal): Likewise. (*rcpsf2_sse): Set atom_sse_attr attr. (*qrt<mode>2_sse): Likewise. (*prefetch_sse): Likewise. * config/i386/i386-c.c (ix86_target_macros_internal): New case PROCESSOR_ATOM. (ix86_target_macros_internal): Likewise. * config/i386/sse.md (cpu): Set attr "atom_sse_attr". (*prefetch_sse_rex): Likewise. (sse_rcpv4sf2): Likewise. (sse_vmrcpv4sf2): Likewise. (sse_sqrtv4sf2): Likewise. (<sse>_vmsqrt<mode>2): Likewise. (sse_ldmxcsr): Likewise. (sse_stmxcsr): Likewise. (*sse_sfence): Likewise. (sse2_clflush): Likewise. (*sse2_mfence): Likewise. (*sse2_lfence): Likewise. (avx_movup<avxmodesuffixf2c><avxmodesuffix>): Set attr "movu". (<sse>_movup<ssemodesuffixf2c>): Likewise. (avx_movdqu<avxmodesuffix>): Likewise. (avx_lddqu<avxmodesuffix>): Likewise. (sse2_movntv2di): Change attr "type" to "ssemov". (sse2_movntsi): Likewise. (rsqrtv8sf2): Change attr "type" to "sseadd". (sse3_addsubv2df3): Set attr "atom_unit". (sse3_h<plusminus_insn>v4sf3): Likewise. (*sse2_pmaddwd): Likewise. (*vec_extractv2di_1_rex64): Likewise. (*vec_extractv2di_1_avx): Likewise. (sse2_psadbw): Likewise. (ssse3_phaddwv8hi3): Likewise. (ssse3_phaddwv4hi3): Likewise. (ssse3_phadddv4si3): Likewise. (ssse3_phadddv2si3): Likewise. (ssse3_phaddswv8hi3): Likewise. (ssse3_phaddswv4hi3): Likewise. (ssse3_phsubwv8hi3): Likewise. (ssse3_phsubwv4hi3): Likewise. (ssse3_phsubdv4si3): Likewise. (ssse3_phsubdv2si3): Likewise. (ssse3_phsubswv8hi3): Likewise. (ssse3_phsubswv4hi3): Likewise. (ssse3_pmaddubsw128): Likewise. (sse3_pmaddubsw: Likewise. (ssse3_palignrti): Likewise. (ssse3_palignrdi): Likewise. Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com> Co-Authored-By: Xuepeng Guo <xuepeng.guo@intel.com> From-SVN: r145624
2009-04-06 22:53:33 +02:00
echo "generic atom 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" ;;
i[34567]86-*-kopensolaris*-gnu) tm_file="${tm_file} i386/linux.h kopensolaris-gnu.h i386/kopensolaris-gnu.h" ;;
i[34567]86-*-gnu*) tm_file="$tm_file i386/linux.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)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h glibc-stdint.h \
config.gcc (i[34567]86-*-gnu*, [...]): Delete superflous ${cpu_type} setting. 2001-10-19 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> * config.gcc (i[34567]86-*-gnu*, arc-*-elf*, d30v-*, fr30-*-elf, hppa*64*-*-linux*, parisc*64*-*-linux*, hppa*-*-linux*, parisc*-*-linux*, i370-*-linux*, i[34567]86-*-chorusos*, i[34567]86-*-elf*, i[34567]86-ncr-sysv4*, i[34567]86-*-netware, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-freebsd*, i[34567]86-*-netbsdelf*, i[34567]86-*-linux*libc1, i[34567]86-*-linux*, i[34567]86-moss-msdos*, i[34567]86-*-moss*, i[34567]86-go32-rtems*, i[34567]86-*-rtems*, i[34567]86-*-rtemself*, i[34567]86-*-solaris2*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-udk*, i[34567]86-*-osf1*, i[34567]86-dg-dgux*, i860-alliant-*, i860-*-sysv4*, ia64*-*-aix*, ia64*-*-linux*, ia64*-*-hpux*, m32r-*-elf*, m88k-dg-dgux*, m88k-*-sysv4*, mcore-*-elf, mips*-*-linux*, mn10200-*-*, mn10300-*-*, pj*-linux*, pjl-*, powerpc64-*-linux*, powerpc-*-sysv*, powerpc-*-netbsd*, powerpc-*-chorusos*, powerpc-*-eabiaix*, powerpc-*-eabisim*, powerpc-*-elf*, powerpc-*-eabi*, powerpc-*-rtems*, powerpc-*-linux*libc1, powerpc-*-linux*, powerpc-wrs-vxworks*, powerpcle-wrs-vxworks*, powerpcle-*-sysv*, powerpcle-*-elf*, powerpcle-*-eabisim*, powerpcle-*-eabi*, powerpcle-*-solaris2*, rs6000-*-mach*, s390-*-linux*, s390x-*-linux*, sh-*-elf*, sh-*-rtemself*, sh-*-rtems*, sh-*-linux*, stormy16-*-elf, v850-*-rtems*, v850-*-*, x86_64-*-linux*), cris-*-aout, cris-*-elf, cris-*-none, cris-*-linux*: Update ${tmfile} list. (c4x-*-rtems*, c4x-*, i[34567]86-go32-rtems*, i[34567]86-*-rtemscoff*, i[34567]86-*-rtems*, i[34567]86-*-rtemself*, i[34567]86-*-osf1*, mn10200-*-*, mn10300-*-*, powerpc-*-beos*, powerpc-*-darwin*, powerpc-wrs-vxworks*, powerpcle-wrs-vxworks*, v850-*-rtems*, v850-*-*): Delete superflous ${cpu_type} setting. * config/linux.h: Delete svr4.h include. (SET_ASM_OP): Delete. * config/netware.h (INT_ASM_OP): Undef before define. * config/ptx4.h: Delete elfos.h include. (PREFERRED_DEBUGGING_TYPE): Undef instead of wrapping. * config/svr4.h: Delete elfos.h include. Update commentary. * config/arc/arc.h, config/d30v/d30v.h, config/fr30/fr30.h, config/m32r/m32r.h, config/m88k/sysv4.h, config/mn10200/mn10200.h, config/mn10200/mn10300.h, config/stormy16/stormy16.h, config/v850/v850.h: Delete svr4.h include. * config/i370/linux.h, config/i386/osf1elf.h, config/m68k/linux.h, config/m68k/m68kv4.h, config/m88k/sysv4.h, config/sparc/sysv4.h: Update includes. * config/i386/beos-elf.h, config/i386/netware.h, config/i386/ptx4-i.h, config/i386/rtemself.h, config/i386/sol2.h, config/i386/sysv4.h, config/i386/sysv5.h, config/i386/udk.h, config/ia64/linux.h, config/m88k/dguxbcs.h: Delete includes. * config/i386/dgux.h, config/i386/osf1elfgdb.h: Delete include. (PREFERRED_DEBUGGING_TYPE): Undef before defining it. * config/i860/fx2800.h (ASM_OUTPUT_SOURCE_LINE): Undef before defining it. * config/m88k/dgux.h: Delete include. (SDB_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE): Undef before defining it. * config/pj/pj.h (ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL, ASM_OUTPUT_SKIP): Undef before defining it. * config/sh/elf.h: Update include. (SDB_DEBUGGING_INFO, DWARF2_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE, DWARF2_ASM_LINE_DEBUG_INFO): Move behind includes. From-SVN: r46366
2001-10-20 00:27:41 +02:00
i386/x86-64.h i386/linux64.h"
case ${target} in
x86_64-*-kfreebsd*-gnu) tm_file="${tm_file} kfreebsd-gnu.h" ;;
x86_64-*-knetbsd*-gnu) tm_file="${tm_file} knetbsd-gnu.h" ;;
esac
re PR target/36669 (Wrong versioning for __float128) gcc/ 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> PR target/36669 * config/libgcc-glibc.ver: Add %exclude. * config/m32r/libgcc-glibc.ver: Likwise. * config/s390/libgcc-glibc.ver: Likwise. * config/sh/libgcc-glibc.ver: Likwise. * config/sparc/libgcc-sparc-glibc.ver: Likwise. * config/i386/libgcc-glibc.ver: New. * config/i386/libgcc-x86_64-glibc.ver: Removed. 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> * config.gcc: Remove i386/t-fprules-softfp64 soft-fp/t-softfp from tmake_file from i[34567]86-*-darwin*, x86_64-*-darwin*, i[34567]86-*-linux*, x86_64-*-linux*. Add i386/t-fprules-softfp and soft-fp/t-softfp to tmake_file for i[34567]86-*-darwin*, x86_64-*-darwin*, i[34567]86-*-linux*, x86_64-*-linux*. Add i386/t-linux to tmake_file for i[34567]86-*-linux*, x86_64-*-linux*. * libgcc-std.ver: Add empty GCC_4.4.0. * mkmap-symver.awk: Support multiple versions per symbol. * config/i386/i386.c (ix86_init_builtins): Always define __builtin_fabsq and __builtin_copysignq with fallbacks. (ix86_expand_builtin): Emit normal call for __builtin_fabsq and __builtin_copysignq if SSE2 isn't available. * config/i386/linux.h (LIBGCC2_HAS_TF_MODE): Defined. (LIBGCC2_TF_CEXT): Likwise. (TF_SIZE): Likwise. * config/i386/linux64.h (LIBGCC2_HAS_TF_MODE): Defined as 1. * config/i386/sfp-machine.h: Moved to libgcc. * config/i386/sfp-machine.h: New. * config/i386/t-linux: Likwise. * config/i386/t-darwin: Remove softfp_wrap_start and softfp_wrap_end. * config/i386/t-darwin64: Likewise. * config/i386/t-fprules-softfp64: Renamed to ... * config/i386/t-fprules-softfp: This. * config/i386/t-linux64: Remove SHLIB_MAPFILES, softfp_wrap_start and softfp_wrap_end. libgcc/ 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> PR target/36669 * shared-object.mk ($(base)_s$(objext)): Add -DSHARED. * config/i386/64/_divtc3-compat.c: New. * config/i386/64/_multc3-compat.c: Likewise. * config/i386/64/_powitf2-compat.c: Likewise. * config/i386/64/eqtf2.c: Likewise. * config/i386/64/getf2.c: Likewise. * config/i386/64/letf2.c: Likewise. * config/i386/64/t-fprules-softfp: Likewise. 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> * config.host: Add i386/${host_address}/t-fprules-softfp to tmake_file for i[34567]86-*-darwin*, x86_64-*-darwin*, i[34567]86-*-linux*, x86_64-*-linux*. * configure.ac: Set host_address to 64 or 32 for x86. * configure: Regenerated. * Makefile.in (config.status): Also depend on $(srcdir)/config.host. * config/i386/32/t-fprules-softfp: New. * config/i386/32/tf-signs.c: Likewise. * config/i386/64/sfp-machine.h: New. Moved from gcc. 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> Uros Bizjak <ubizjak@gmail.com> * config/i386/32/sfp-machine.h: New. Co-Authored-By: Uros Bizjak <ubizjak@gmail.com> From-SVN: r137369
2008-07-02 17:59:19 +02:00
tmake_file="${tmake_file} i386/t-linux64 i386/t-crtstuff i386/t-crtpc i386/t-crtfm t-dfprules"
;;
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"
tmake_file="${tmake_file} i386/t-djgpp"
config.gcc (*-*-darwin*): Add darwin.opt to $extra_options. * config.gcc (*-*-darwin*): Add darwin.opt to $extra_options. (i[34567]86-pc-msdosdjgpp*): Likewise i386/djgpp.opt. (i[34567]86-*-lynxos*, powerpc-*-lynxos*): Likewise lynx.opt. (i[34567]86-*-sco3.2v5*): Likewise i386/sco5.opt. (i[34567]86-*-pe, i[34567]86-*-cygwin*, i[34567]86-*-mingw32*) (i[34567]86-*-uwin*): Likewise i386/cygming.opt. * config/darwin.h (darwin_one_byte_bool, darwin_fix_and_continue) (darwin_fix_and_continue_switch, SUBTARGET_OPTIONS): Delete. * config/darwin.c (darwin_one_byte_bool, darwin_fix_and_continue) (darwin_fix_and_continue_switch): Delete. * config/lynx.h (SUBTARGET_OS_LYNX_SWITCHES): Delete. (SUBTARGET_SWITCHES): Delete. * config/i386/i386.h (target_flags, MASK_80387, MASK_RTD) (MASK_ALIGN_DOUBLE, MASK_SVR3_SHLIB, MASK_IEEE_FP, MASK_FLOAT_RETURNS) (MASK_NO_FANCY_MATH_387, MASK_OMIT_LEAF_FRAME_POINTER) (MASK_STACK_PROBE, MASK_NO_ALIGN_STROPS, MASK_INLINE_ALL_STROPS) (MASK_NO_PUSH_ARGS, MASK_ACCUMULATE_OUTGOING_ARGS, MASK_MMX) (MASK_SSE, MASK_SSE2, MASK_SSE3, MASK_3DNOW, MASK_3DNOW_A) (MASK_128BIT_LONG_DOUBLE, MASK_64BIT, MASK_MS_BITFIELD_LAYOUT) (MASK_TLS_DIRECT_SEG_REFS, MASK_NO_RED_ZONE, TARGET_80387) (TARGET_RTD, TARGET_ALIGN_DOUBLE, TARGET_PUSH_ARGS) (TARGET_ACCUMULATE_OUTGOING_ARGS, TARGET_SVR3_SHLIB, TARGET_IEEE_FP) (TARGET_128BIT_LONG_DOUBLE, TARGET_NO_FANCY_MATH_387) (TARGET_USE_FANCY_MATH_387, TARGET_OMIT_LEAF_FRAME_POINTER) (TARGET_DEBUG_ADDR, TARGET_DEBUG_ARG): Delete. (TARGET_FLOAT_RETURNS_IN_80387): Make an alias of TARGET_FLOAT_RETURNS. (TARGET_64BIT): Undef before redefining. (TARGET_TLS_DIRECT_SEG_REFS, TARGET_STACK_PROBE) (TARGET_ALIGN_STRINGOPS, TARGET_INLINE_ALL_STRINGOPS, TARGET_SSE) (TARGET_SSE2, TARGET_SSE3, TARGET_MMX, TARGET_3DNOW, TARGET_3DNOW_A) (TARGET_RED_ZONE, TARGET_USE_MS_BITFIELD_LAYOUT, TARGET_SWITCHES) (TARGET_OPTIONS, SUBTARGET_SWITCHES, SUBTARGET_OPTIONS) (ix86_fpmath_string, ix86_tls_dialect_string, ix86_cmodel_string) (ix86_asm_string, ix86_regparm, ix86_regparm_string) (ix86_preferred_stack_boundary_string, ix86_branch_cost_string) (ix86_debug_arg_string, ix86_debug_addr_string) (ix86_align_loops_string, ix86_align_jumps_string) (ix86_align_funcs_string): Delete. * config/i386/cygming.h (MASK_NOP_FUN_DLLIMPORT) (TARGET_NOP_FUN_DLLIMPORT, SUBTARGET_SWITCHES): Delete. * config/i386/djgpp.h (MASK_BNU210, SUBTARGET_SWITCHES): Delete. (SUBTARGET_OVERRIDE_OPTIONS): Check TARGET_BNU210. * config/i386/lynx.h (SUBTARGET_SWITCHES): Delete. * config/i386/sco5.h (MASK_COFF, TARGET_ELF) (SUBTARGET_SWITCHES): Delete. * config/i386/i386.c (ix86_debug_arg_string): Delete. (ix86_debug_addr_string): Delete. (ix86_cmodel_string, ix86_asm_string, ix86_tls_dialect_string) (ix86_fpmath_string, ix86_regparm_string, ix86_regparm) (ix86_align_loops_string, ix86_align_jumps_string) (ix86_preferred_stack_boundary_string, ix86_branch_cost_string) (ix86_align_funcs_string): Make static. (TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Override defaults. (ix86_handle_option): New function. (TARGET_USE_MS_BITFIELD_LAYOUT): Delete. (ix86_ms_bitfield_layout_p): Check TARGET_MS_BITFIELD_LAYOUT. * config/rs6000/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): Remove handling of darwin_fix_and_continue_switch. (darwin_one_byte_bool): Delete. * config/rs6000/lynx.h (EXTRA_SUBTARGET_SWITCHES): Delete. * config/rs6000/rs6000.c (rs6000_override_options): Update assignment to darwin_one_byte_bool. * config/darwin.opt, config/lynx.opt, config/i386/cygming.opt, * config/i386/djgpp.opt, config/i386/i386.opt, * config/i386/sco5.opt: New files. From-SVN: r98495
2005-04-21 09:35:09 +02:00
extra_options="${extra_options} i386/djgpp.opt"
gnu_ld=yes
gas=yes
;;
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"
config.gcc (*-*-darwin*): Add darwin.opt to $extra_options. * config.gcc (*-*-darwin*): Add darwin.opt to $extra_options. (i[34567]86-pc-msdosdjgpp*): Likewise i386/djgpp.opt. (i[34567]86-*-lynxos*, powerpc-*-lynxos*): Likewise lynx.opt. (i[34567]86-*-sco3.2v5*): Likewise i386/sco5.opt. (i[34567]86-*-pe, i[34567]86-*-cygwin*, i[34567]86-*-mingw32*) (i[34567]86-*-uwin*): Likewise i386/cygming.opt. * config/darwin.h (darwin_one_byte_bool, darwin_fix_and_continue) (darwin_fix_and_continue_switch, SUBTARGET_OPTIONS): Delete. * config/darwin.c (darwin_one_byte_bool, darwin_fix_and_continue) (darwin_fix_and_continue_switch): Delete. * config/lynx.h (SUBTARGET_OS_LYNX_SWITCHES): Delete. (SUBTARGET_SWITCHES): Delete. * config/i386/i386.h (target_flags, MASK_80387, MASK_RTD) (MASK_ALIGN_DOUBLE, MASK_SVR3_SHLIB, MASK_IEEE_FP, MASK_FLOAT_RETURNS) (MASK_NO_FANCY_MATH_387, MASK_OMIT_LEAF_FRAME_POINTER) (MASK_STACK_PROBE, MASK_NO_ALIGN_STROPS, MASK_INLINE_ALL_STROPS) (MASK_NO_PUSH_ARGS, MASK_ACCUMULATE_OUTGOING_ARGS, MASK_MMX) (MASK_SSE, MASK_SSE2, MASK_SSE3, MASK_3DNOW, MASK_3DNOW_A) (MASK_128BIT_LONG_DOUBLE, MASK_64BIT, MASK_MS_BITFIELD_LAYOUT) (MASK_TLS_DIRECT_SEG_REFS, MASK_NO_RED_ZONE, TARGET_80387) (TARGET_RTD, TARGET_ALIGN_DOUBLE, TARGET_PUSH_ARGS) (TARGET_ACCUMULATE_OUTGOING_ARGS, TARGET_SVR3_SHLIB, TARGET_IEEE_FP) (TARGET_128BIT_LONG_DOUBLE, TARGET_NO_FANCY_MATH_387) (TARGET_USE_FANCY_MATH_387, TARGET_OMIT_LEAF_FRAME_POINTER) (TARGET_DEBUG_ADDR, TARGET_DEBUG_ARG): Delete. (TARGET_FLOAT_RETURNS_IN_80387): Make an alias of TARGET_FLOAT_RETURNS. (TARGET_64BIT): Undef before redefining. (TARGET_TLS_DIRECT_SEG_REFS, TARGET_STACK_PROBE) (TARGET_ALIGN_STRINGOPS, TARGET_INLINE_ALL_STRINGOPS, TARGET_SSE) (TARGET_SSE2, TARGET_SSE3, TARGET_MMX, TARGET_3DNOW, TARGET_3DNOW_A) (TARGET_RED_ZONE, TARGET_USE_MS_BITFIELD_LAYOUT, TARGET_SWITCHES) (TARGET_OPTIONS, SUBTARGET_SWITCHES, SUBTARGET_OPTIONS) (ix86_fpmath_string, ix86_tls_dialect_string, ix86_cmodel_string) (ix86_asm_string, ix86_regparm, ix86_regparm_string) (ix86_preferred_stack_boundary_string, ix86_branch_cost_string) (ix86_debug_arg_string, ix86_debug_addr_string) (ix86_align_loops_string, ix86_align_jumps_string) (ix86_align_funcs_string): Delete. * config/i386/cygming.h (MASK_NOP_FUN_DLLIMPORT) (TARGET_NOP_FUN_DLLIMPORT, SUBTARGET_SWITCHES): Delete. * config/i386/djgpp.h (MASK_BNU210, SUBTARGET_SWITCHES): Delete. (SUBTARGET_OVERRIDE_OPTIONS): Check TARGET_BNU210. * config/i386/lynx.h (SUBTARGET_SWITCHES): Delete. * config/i386/sco5.h (MASK_COFF, TARGET_ELF) (SUBTARGET_SWITCHES): Delete. * config/i386/i386.c (ix86_debug_arg_string): Delete. (ix86_debug_addr_string): Delete. (ix86_cmodel_string, ix86_asm_string, ix86_tls_dialect_string) (ix86_fpmath_string, ix86_regparm_string, ix86_regparm) (ix86_align_loops_string, ix86_align_jumps_string) (ix86_preferred_stack_boundary_string, ix86_branch_cost_string) (ix86_align_funcs_string): Make static. (TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Override defaults. (ix86_handle_option): New function. (TARGET_USE_MS_BITFIELD_LAYOUT): Delete. (ix86_ms_bitfield_layout_p): Check TARGET_MS_BITFIELD_LAYOUT. * config/rs6000/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): Remove handling of darwin_fix_and_continue_switch. (darwin_one_byte_bool): Delete. * config/rs6000/lynx.h (EXTRA_SUBTARGET_SWITCHES): Delete. * config/rs6000/rs6000.c (rs6000_override_options): Update assignment to darwin_one_byte_bool. * config/darwin.opt, config/lynx.opt, config/i386/cygming.opt, * config/i386/djgpp.opt, config/i386/i386.opt, * config/i386/sco5.opt: New files. From-SVN: r98495
2005-04-21 09:35:09 +02:00
extra_options="${extra_options} lynx.opt"
thread_file=lynx
gnu_ld=yes
gas=yes
;;
configure.in: Remove target-libstdc++-v3 from noconfigdirs for *-*-netware... / * configure.in: Remove target-libstdc++-v3 from noconfigdirs for *-*-netware, but add target-libmudflap. Consolidate *-*-netware targets (of which really only i?86 exists) into a single entry. * configure: Likewise. gcc/ * config.gcc: Resurrect NetWare as a target. Handle special case of Novell linker to be used (specified through --with-ld=) and threading model of either Posix (default) or NKS. * config/i386/i386.c (ix86_return_pops_args): Conditionalize popping of incoming hidden argument on KEEP_AGGREGATE_RETURN_POINTER. * config/i386/i386.h (KEEP_AGGREGATE_RETURN_POINTER): New. * config/i386/netware.c, config/i386/netware.h: New. * config/i386/nwld.c, config/i386/nwld.h: New. * config/i386/netware-crt0.c: New. * config/i386/netware-libgcc.c: New. * config/i386/netware-libgcc.def: New. * config/i386/netware-libgcc.exp: New. * config/i386/t-netware, config/i386/t-nwld: New. * gthr-nks.h: New. * doc/install.texi: Document NKS threading model. gcc/cp/ * g++spec.c (MATH_LIBRARY_PROFILE): Default to MATH_LIBRARY rather than "-lm". gcc/testsuite/ * g++.dg/abi/bitfield5.C: Use -mno-ms-bitfields. * g++.old-deja/g++.jason/thunk2.C: xfail for NetWare. * g++.old-deja/g++.law/profile1.C: xfail for NetWare. * g++.old-deja/g++.other/store-expr1.C: xfail for NetWare. * gcc.c-torture/compile/20001109-1.c: xfail for NetWare. * gcc.c-torture/compile/20001109-2.c: xfail for NetWare. * gcc.c-torture/execute/multi-ix.c: Use __builtin_bzero rather than the non-portable bzero. * gcc.dg/20010912-1.c: xfail for NetWare. * gcc.dg/20020426-2.c: xfail for NetWare. * gcc.dg/20021014-1.c: xfail for NetWare. * gcc.dg/20021018-1.c: xfail for NetWare. * gcc.dg/20030213-1.c: xfail for NetWare. * gcc.dg/20030225-1.c: xfail for NetWare. * gcc.dg/20030708-1.c: xfail for NetWare. * gcc.dg/builtins-config.h: Also exclude NetWare. * gcc.dg/format/format.h: Define restrict only if not already defined. * gcc.dg/nest.c: xfail for NetWare. * gcc.dg/special/gcsec-1.c: Don't pass -static for NetWare. * lib/target-supports.exp (check_visibility_available): Exclude NetWare. fixincludes/ * inclhack.def: Suppress exception_structure and math_exception for NetWare headers. * fixincl.x: Regenerate. libstdc++-v3/ * crossconfig.m4: Add NetWare as a target. * configure: Regenerate. From-SVN: r87040
2004-09-03 20:10:08 +02:00
i[3456x]86-*-netware*)
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h tm-dwarf2.h i386/netware.h"
tmake_file="${tmake_file} i386/t-netware"
configure.in: Remove target-libstdc++-v3 from noconfigdirs for *-*-netware... / * configure.in: Remove target-libstdc++-v3 from noconfigdirs for *-*-netware, but add target-libmudflap. Consolidate *-*-netware targets (of which really only i?86 exists) into a single entry. * configure: Likewise. gcc/ * config.gcc: Resurrect NetWare as a target. Handle special case of Novell linker to be used (specified through --with-ld=) and threading model of either Posix (default) or NKS. * config/i386/i386.c (ix86_return_pops_args): Conditionalize popping of incoming hidden argument on KEEP_AGGREGATE_RETURN_POINTER. * config/i386/i386.h (KEEP_AGGREGATE_RETURN_POINTER): New. * config/i386/netware.c, config/i386/netware.h: New. * config/i386/nwld.c, config/i386/nwld.h: New. * config/i386/netware-crt0.c: New. * config/i386/netware-libgcc.c: New. * config/i386/netware-libgcc.def: New. * config/i386/netware-libgcc.exp: New. * config/i386/t-netware, config/i386/t-nwld: New. * gthr-nks.h: New. * doc/install.texi: Document NKS threading model. gcc/cp/ * g++spec.c (MATH_LIBRARY_PROFILE): Default to MATH_LIBRARY rather than "-lm". gcc/testsuite/ * g++.dg/abi/bitfield5.C: Use -mno-ms-bitfields. * g++.old-deja/g++.jason/thunk2.C: xfail for NetWare. * g++.old-deja/g++.law/profile1.C: xfail for NetWare. * g++.old-deja/g++.other/store-expr1.C: xfail for NetWare. * gcc.c-torture/compile/20001109-1.c: xfail for NetWare. * gcc.c-torture/compile/20001109-2.c: xfail for NetWare. * gcc.c-torture/execute/multi-ix.c: Use __builtin_bzero rather than the non-portable bzero. * gcc.dg/20010912-1.c: xfail for NetWare. * gcc.dg/20020426-2.c: xfail for NetWare. * gcc.dg/20021014-1.c: xfail for NetWare. * gcc.dg/20021018-1.c: xfail for NetWare. * gcc.dg/20030213-1.c: xfail for NetWare. * gcc.dg/20030225-1.c: xfail for NetWare. * gcc.dg/20030708-1.c: xfail for NetWare. * gcc.dg/builtins-config.h: Also exclude NetWare. * gcc.dg/format/format.h: Define restrict only if not already defined. * gcc.dg/nest.c: xfail for NetWare. * gcc.dg/special/gcsec-1.c: Don't pass -static for NetWare. * lib/target-supports.exp (check_visibility_available): Exclude NetWare. fixincludes/ * inclhack.def: Suppress exception_structure and math_exception for NetWare headers. * fixincl.x: Regenerate. libstdc++-v3/ * crossconfig.m4: Add NetWare as a target. * configure: Regenerate. From-SVN: r87040
2004-09-03 20:10:08 +02:00
extra_objs=netware.o
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*)
Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * config.gcc (*-*-openbsd): Don't set tm_file. (alpha*-*-openbsd, arm*-*-coff*, arm*-wince-pe*, arm-*-pe*, avr-*-*, h8300-*-rtems*, h8300-*-elf*, h8300-*-*, hppa*-*-osf*, hppa*-*-bsd*, hppa*-*-hpux*, i370-*-opened*, i370-*-mvs*, i370-*-linux*, i?86-*-openbsd*, i?86-*-lynxos, i?86-*-nto-qnx*, iq2000*-*-elf*, m68000-hp-hpux*, m68k-hp-hpux*, m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*, m68k*-*-netbsd*, m68k*-*-openbsd*, m68k-*-sysv4*, m68k-*-linux*, m68k-*-rtems*, mcore-*-pe*, mips*-*-netbsd*, mips*-*-openbsd*, rs6000-*-lynxos*, sh*-*-elf*, sh*-*-ka, sh-*-rtemself, sparc-*-openbsd*, strongarm-*-pe, vax-*-openbsd*, xscale-*-coff): Use explicit and complete lists of target headers to include. Move definitions to tm_defines where appropriate. (hppa*-*-openbsd*, powerpc-*-openbsd*): Comment out stanza for not-yet-contributed configuration. * config/lynx.h, config/alpha/openbsd.h, config/arm/coff.h * config/avr/avr.h, config/frv/frv.h, config/h8300/elf.h * config/i370/linux.h, config/i370/mvs.h, config/i370/oe.h * config/i386/nto.h, config/iq2000/iq2000.h, * config/m68k/coff.h, config/m68k/hp310.h, config/m68k/hp320.h * config/m68k/linux.h, config/m68k/m68k-aout.h * config/m68k/m68k-none.h, config/m68k/m68kv4.h * config/m68k/netbsd.h, config/m68k/openbsd.h * config/m68k/sgs.h, config/mcore/mcore-pe.h, * config/mips/netbsd.h, config/mips/openbsd.h, config/pa/pa.h, * config/rs6000/lynx.h, config/sh/embed-elf.h, config/sparc/openbsd.h: Remove includes of other target config headers, and definitions of macros moved to tm_defines lists. Add #undefs where now necessary to prevent redefinition warnings. * config/h8300/coff.h: New file split out of... * config/h8300/elf.h: ...here. * config/m68k/hp320base.h: New file split out of... * config/m68k/hp320.h: ...here. * config/rs6000/lynxbase.h: New file split out of... * config/rs6000/lynx.h: ...here. * config/m68k/hp310g.h, config/m68k/hp320g.h, config/m68k/hpux7.h * config/m68k/m68k-coff.h, config/mips/openbsd-be.h: Delete file. * config/sol2.h: Remove #if 0-ed #include of sys/mman.h. * config/m68k/m68kelf.h: Remove commented out #include of m68k/sgs.h. * config/mcore/mcore.h: Don't include hwint.h nor machmode.h. Remove unnecessary #ifndef. * config/s390/s390.h: Prefix #include of s390/fixdfdi.h [under IN_LIBGCC2] with config/. From-SVN: r70651
2003-08-21 19:27:29 +02:00
tm_file="${tm_file} i386/att.h dbxelf.h tm-dwarf2.h elfos.h svr4.h i386/unix.h i386/nto.h"
tmake_file="${tmake_file} i386/t-nto"
gnu_ld=yes
gas=yes
;;
config.gcc: Remove all stanzas for previously obsoleted systems. * config.gcc: Remove all stanzas for previously obsoleted systems. Where necessary, add explicit error stanzas to prevent removed systems from being misidentified as something else. Begin a fresh obsoletions list, with the systems that were reprieved last round. * doc/install.texi: Remove all mention of dead targets. * fixinc/mkfixinc.sh: Likewise. * config/arm/arm.h: Bit 31 of target_flags is no longer reserved. * config/1750a/1750a-protos.h, config/1750a/1750a.c, config/1750a/1750a.h, config/1750a/1750a.md, config/1750a/ms1750.inc, config/a29k/a29k-protos.h, config/a29k/a29k.c, config/a29k/a29k.h, config/a29k/a29k.md, config/a29k/rtems.h, config/a29k/t-a29kbare, config/a29k/t-vx29k, config/a29k/unix.h, config/a29k/vx29k.h, config/alpha/osf12.h, config/alpha/osf2or3.h, config/arm/arm-wince-pe.h, config/arm/arm.h, config/arm/riscix.h, config/arm/riscix1-1.h, config/arm/rix-gas.h, config/arm/t-riscix, config/clipper/clipper-protos.h, config/clipper/clipper.c, config/clipper/clipper.h, config/clipper/clipper.md, config/clipper/clix.h, config/convex/convex-protos.h, config/convex/convex.c, config/convex/convex.h, config/convex/convex.md, config/convex/fixinc.convex, config/convex/proto.h, config/elxsi/elxsi-protos.h, config/elxsi/elxsi.c, config/elxsi/elxsi.h, config/elxsi/elxsi.md, config/i386/386bsd.h, config/i386/aix386.h, config/i386/aix386ng.h, config/i386/bsd386.h, config/i386/dgux.h, config/i386/djgpp-rtems.h, config/i386/isc.h, config/i386/iscdbx.h, config/i386/linux-oldld.h, config/i386/next.h, config/i386/osf1-ci.asm, config/i386/osf1-cn.asm, config/i386/osf1elf.h, config/i386/osf1elfgdb.h, config/i386/osfelf.h, config/i386/osfrose.h, config/i386/rtems.h, config/i386/seq-gas.h, config/i386/seq-sysv3.h, config/i386/seq2-sysv3.h, config/i386/sequent.h, config/i386/sun.h, config/i386/sun386.h, config/i386/t-dgux, config/i386/t-next, config/i386/t-osf, config/i386/t-osf1elf, config/i860/bsd-gas.h, config/i860/bsd.h, config/i860/fx2800.h, config/i860/i860-protos.h, config/i860/i860.c, config/i860/i860.h, config/i860/i860.md, config/i860/mach.h, config/i860/paragon.h, config/i860/sysv3.h, config/i860/sysv4.h, config/i860/t-fx2800, config/i860/varargs.asm, config/m68k/a-ux.h, config/m68k/altos3068.h, config/m68k/apollo68.h, config/m68k/aux-crt1.c, config/m68k/aux-crt2.asm, config/m68k/aux-crtn.asm, config/m68k/aux-exit.c, config/m68k/aux-low.gld, config/m68k/aux-mcount.c, config/m68k/auxas.h, config/m68k/auxgas.h, config/m68k/auxgld.h, config/m68k/auxld.h, config/m68k/ctix.h, config/m68k/dpx2.h, config/m68k/dpx2.ifile, config/m68k/dpx2cdbx.h, config/m68k/dpx2g.h, config/m68k/isi-nfp.h, config/m68k/isi.h, config/m68k/lynx-ng.h, config/m68k/lynx.h, config/m68k/math-3300.h, config/m68k/news.h, config/m68k/news3.h, config/m68k/news3gas.h, config/m68k/newsgas.h, config/m68k/next.h, config/m68k/next21.h, config/m68k/rtems.h, config/m68k/t-aux, config/m68k/t-lynx, config/m68k/t-next, config/m68k/x-next, config/m88k/dgux.h, config/m88k/dgux.ld, config/m88k/dguxbcs.h, config/m88k/dolph.h, config/m88k/dolphin.ld, config/m88k/luna.h, config/m88k/m88k-coff.h, config/m88k/sysv3.h, config/m88k/t-bug, config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs, config/m88k/t-dolph, config/m88k/t-m88k-gas, config/m88k/t-tekXD88, config/m88k/tekXD88.h, config/m88k/tekXD88.ld, config/mips/bsd-4.h, config/mips/bsd-5.h, config/mips/dec-bsd.h, config/mips/dec-osf1.h, config/mips/elflorion.h, config/mips/iris4loser.h, config/mips/mips-5.h, config/mips/news4.h, config/mips/news5.h, config/mips/nws3250v4.h, config/mips/osfrose.h, config/mips/svr3-4.h, config/mips/svr3-5.h, config/mips/svr4-4.h, config/mips/svr4-5.h, config/mips/svr4-t.h, config/mips/t-bsd, config/mips/t-bsd-gas, config/mips/t-svr3, config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas, config/mips/t-ultrix, config/mips/ultrix.h, config/nextstep-protos.h, config/nextstep.c, config/nextstep.h, config/nextstep21.h, config/ns32k/encore.h, config/ns32k/merlin.h, config/ns32k/pc532-mach.h, config/ns32k/pc532-min.h, config/ns32k/pc532.h, config/ns32k/sequent.h, config/ns32k/tek6000.h, config/ns32k/tek6100.h, config/ns32k/tek6200.h, config/pj/lib1funcs.S, config/pj/linux.h, config/pj/pj-protos.h, config/pj/pj.c, config/pj/pj.h, config/pj/pj.md, config/pj/pjl.h, config/pj/t-pj, config/sparc/rtems.h, config/we32k/we32k-protos.h, config/we32k/we32k.c, config/we32k/we32k.h, config/we32k/we32k.md: Delete file. From-SVN: r53862
2002-05-25 04:10:46 +02:00
i[34567]86-*-rtems*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
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"
;;
i[34567]86-*-solaris2*)
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h sol2.h"
case ${target} in
*-*-solaris2.1[0-9]*)
tm_file="${tm_file} sol2-10.h"
;;
esac
tm_file="${tm_file} i386/sol2.h"
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
MAINTAINERS (mt port): Remove. * MAINTAINERS (mt port): Remove. (sco5, unixware, sco udk): Remove. (Kean Johnston): Add to Write After Approval. fixincludes: * inclhack.def (AAB_svr4_replace_byteorder, AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory, libc1_G_va_list, libc1_ifdefd_memx, nested_motorola, ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime, solaris_mutex_init_1, solaris_socket, solaris_unistd, solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param, ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale, ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc, ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings, ultrix_strings2, ultrix_sys_time, ultrix_unistd, unicosmk_restrict, uw7_byteorder_fix, windiss_math1, windiss_math2, windiss_valist): Remove. * fixincl.x: Regenerate. * mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*, i370-*-openedition, i?86-*-moss*, i?86-*-uwin*, powerpc-*-eabiaix*): Remove. * tests/base/math.h: Update. * tests/base/pthread.h: Update. * tests/base/stdio.h: Update. * tests/base/stdlib.h: Update. * tests/base/string.h: Update. * tests/base/strings.h: Update. * tests/base/sys/file.h: Update. * tests/base/sys/limits.h: Update. * tests/base/sys/socket.h: Update. * tests/base/sys/stat.h: Update. * tests/base/sys/time.h: Update. * tests/base/testing.h: Update. * tests/base/unistd.h: Update. * tests/base/_G_config.h: Remove. * tests/base/arpa: Remove directory. * tests/base/fs: Remove directory. * tests/base/locale.h: Remove. * tests/base/machine: Remove directory. * tests/base/rpc/svc.h: Remove. * tests/base/sys/ioctl.h: Remove. * tests/base/sys/regset.h: Remove. * tests/base/sys/times.h: Remove. * tests/base/sys/utsname.h: Remove. * tests/base/widec.h: Remove. gcc: * config.gcc (Obsolete configurations): Remove list of configurations. (Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*, *-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*. Remove other targets matched by those patterns. (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff, i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove. Make code for Solaris 7 and greater unconditional for Solaris. (ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*): Remove --with-* handling. * config/rs6000/sysv4.h (-mwindiss): Remove from all specs. (LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC, ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC, LINK_OS_WINDISS_SPEC): Remove. * config/rs6000/sysv4.opt (mwindiss): Remove. * configure.ac (strongarm*-*-*, xscale*-*-*): Remove. * configure: Regenerate. * doc/cpp.texi: Don't mention BeOS. * doc/extend.texi (interrupt): Don't mention MS1. * doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv, m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv, alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout, i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4, powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix): Remove. * doc/invoke.texi (MT Options): Remove. (-mwindiss): Remove. (CRIS Options): Remove cris-axis-aout references. (HPPA Options): Don't mention hppa1.1-*-pro. * doc/md.texi: (MorphoTech family): Remove. * libgcc2.c: Don't handle UWIN. * config/alpha/t-unicosmk: Remove. * config/alpha/unicosmk.h: Remove. * config/arm/kaos-arm.h: Remove. * config/arm/kaos-strongarm.h: Remove. * config/arm/strongarm-coff.h: Remove. * config/arm/strongarm-elf.h: Remove. * config/arm/strongarm-pe.h: Remove. * config/arm/t-strongarm-pe: Remove. * config/arm/t-xscale-coff: Remove. * config/arm/t-xscale-elf: Remove. * config/arm/xscale-coff.h: Remove. * config/arm/xscale-elf.h: Remove. * config/chorus.h: Remove. * config/cris/aout.h: Remove. * config/cris/aout.opt: Remove. * config/cris/t-aout: Remove. * config/i386/beos-elf.h: Remove. * config/i386/kaos-i386.h: Remove. * config/i386/ptx4-i.h: Remove. * config/i386/sco5.h: Remove. * config/i386/sco5.opt: Remove. * config/i386/sysv4-cpp.h: Remove. * config/i386/sysv5.h: Remove. * config/i386/t-beos: Remove. * config/i386/t-sco5: Remove. * config/i386/t-uwin: Remove. * config/i386/uwin.asm: Remove. * config/i386/uwin.h: Remove. * config/kaos.h: Remove. * config/mips/windiss.h: Remove. * config/mt: Remove directory. * config/pa/pa-osf.h: Remove. * config/pa/pa-pro-end.h: Remove. * config/pa/t-pro: Remove. * config/ptx4.h: Remove. * config/rs6000/beos.h: Remove. * config/rs6000/kaos-ppc.h: Remove. * config/rs6000/t-beos: Remove. * config/rs6000/windiss.h: Remove. * config/sh/kaos-sh.h: Remove. * config/sol2-6.h: Remove. * config/sparc/sol26-sld.h: Remove. * config/sparc/sysv4-only.h: Remove. * config/vax/bsd.h: Remove. * config/vax/t-memfuncs: Remove. * config/vax/ultrix.h: Remove. * config/vax/vaxv.h: Remove. * config/windiss.h: Remove. gcc/testsuite: * g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*. * g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*. * g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris 7. * gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*, strongarm*-*-* and cris-*-aout*. * gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20030909-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20031108-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20040813-1.c: Don't handle *-*-sysv5*. * gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*. * gcc.dg/arm-scd42-1.c: Use target arm*-*-*. * gcc.dg/arm-scd42-3.c: Use target arm*-*-*. * gcc.dg/cpp/assert4.c: Don't handle BeOS. * gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*. * gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and xscale*-*-elf*. * gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*. * gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1. * gcc.misc-tests/arm-isr.exp: Use target arm*-*-*. * gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-stackalign-1.c: Don't handle powerpc-*-sysv*. * gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*. * lib/target-supports.exp: Don't handle strongarm*-*-elf, xscale*-*-elf and *-*-windiss. * obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*. * gcc.dg/mt-loopi1.c: Remove. gnattools: * configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove. * configure: Regenerate. libcpp: * configure.ac (parisc*64*-*-*): Remove. * configure: Regenerate. libffi: * configure.ac (parisc*-*-linux*, powerpc-*-sysv*, powerpc-*-beos*): Remove. * configure: Regenerate. libgcc: * config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove. libjava: * configure.host (strongarm*-elf, xscale*-elf): Remove. libstdc++-v3: * configure.host (xscale, ep9312, m680[246]0, solaris2.5, solaris2.5.[0-9], solaris2.6, windiss*): Remove. * crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove. * configure: Regenerate. * config/os/solaris/solaris2.5: Remove directory. * config/os/solaris/solaris2.6: Remove directory. * config/os/windiss: Remove directory. From-SVN: r136534
2008-06-07 20:00:15 +02:00
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_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
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
case X"${with_cpu}" in
Atom pipeline model, tuning and insn selection. 2009-04-06 Joey Ye <joey.ye@intel.com> Xuepeng Guo <xuepeng.guo@intel.com> H.J. Lu <hongjiu.lu@intel.com> Atom pipeline model, tuning and insn selection. * config.gcc (atom): Add atom config options and target. * config/i386/atom.md: New. * config/i386/i386.c (atom_cost): New cost. (m_ATOM): New macro flag. (initial_ix86_tune_features): Set m_ATOM. (x86_accumulate_outgoing_args): Likewise. (x86_arch_always_fancy_math_387): Likewise. (processor_target): Add Atom cost. (cpu_names): Add Atom cpu name. (override_options): Set Atom ISA. (ix86_issue_rate): New case PROCESSOR_ATOM. (ix86_adjust_cost): Likewise. * config/i386/i386.h (TARGET_ATOM): New target macro. (ix86_tune_indices): Add X86_TUNE_OPT_AGU. (TARGET_OPT_AGU): New target option. (target_cpu_default): Add TARGET_CPU_DEFAULT_atom. (processor_type): Add PROCESSOR_ATOM. * config/i386/i386.md (cpu): Add new value "atom". (use_carry, movu): New attr. (atom.md): Include atom.md. (adddi3_carry_rex64): Set attr "use_carry". (addqi3_carry): Likewise. (addhi3_carry): Likewise. (addsi3_carry): Likewise. (*addsi3_carry_zext): Likewise. (subdi3_carry_rex64): Likewise. (subqi3_carry): Likewise. (subhi3_carry): Likewise. (subsi3_carry): Likewise. (x86_movdicc_0_m1_rex64): Likewise. (*x86_movdicc_0_m1_se): Likewise. (x86_movsicc_0_m1): Likewise. (*x86_movsicc_0_m1_se): Likewise. (*adddi_1_rex64): Emit add insn as much as possible. (*addsi_1): Likewise. (return_internal): Set atom_unit. (return_internal_long): Likewise. (return_pop_internal): Likewise. (*rcpsf2_sse): Set atom_sse_attr attr. (*qrt<mode>2_sse): Likewise. (*prefetch_sse): Likewise. * config/i386/i386-c.c (ix86_target_macros_internal): New case PROCESSOR_ATOM. (ix86_target_macros_internal): Likewise. * config/i386/sse.md (cpu): Set attr "atom_sse_attr". (*prefetch_sse_rex): Likewise. (sse_rcpv4sf2): Likewise. (sse_vmrcpv4sf2): Likewise. (sse_sqrtv4sf2): Likewise. (<sse>_vmsqrt<mode>2): Likewise. (sse_ldmxcsr): Likewise. (sse_stmxcsr): Likewise. (*sse_sfence): Likewise. (sse2_clflush): Likewise. (*sse2_mfence): Likewise. (*sse2_lfence): Likewise. (avx_movup<avxmodesuffixf2c><avxmodesuffix>): Set attr "movu". (<sse>_movup<ssemodesuffixf2c>): Likewise. (avx_movdqu<avxmodesuffix>): Likewise. (avx_lddqu<avxmodesuffix>): Likewise. (sse2_movntv2di): Change attr "type" to "ssemov". (sse2_movntsi): Likewise. (rsqrtv8sf2): Change attr "type" to "sseadd". (sse3_addsubv2df3): Set attr "atom_unit". (sse3_h<plusminus_insn>v4sf3): Likewise. (*sse2_pmaddwd): Likewise. (*vec_extractv2di_1_rex64): Likewise. (*vec_extractv2di_1_avx): Likewise. (sse2_psadbw): Likewise. (ssse3_phaddwv8hi3): Likewise. (ssse3_phaddwv4hi3): Likewise. (ssse3_phadddv4si3): Likewise. (ssse3_phadddv2si3): Likewise. (ssse3_phaddswv8hi3): Likewise. (ssse3_phaddswv4hi3): Likewise. (ssse3_phsubwv8hi3): Likewise. (ssse3_phsubwv4hi3): Likewise. (ssse3_phsubdv4si3): Likewise. (ssse3_phsubdv2si3): Likewise. (ssse3_phsubswv8hi3): Likewise. (ssse3_phsubswv4hi3): Likewise. (ssse3_pmaddubsw128): Likewise. (sse3_pmaddubsw: Likewise. (ssse3_palignrti): Likewise. (ssse3_palignrdi): Likewise. Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com> Co-Authored-By: Xuepeng Guo <xuepeng.guo@intel.com> From-SVN: r145624
2009-04-06 22:53:33 +02:00
Xgeneric|Xatom|Xcore2|Xnocona|Xx86-64|Xamdfam10|Xbarcelona|Xk8|Xopteron|Xathlon64|Xathlon-fx)
;;
X)
if test x$with_cpu_64 = x; then
with_cpu_64=generic
fi
;;
*)
echo "Unsupported CPU used in --with-cpu=$with_cpu, supported values:" 1>&2
Atom pipeline model, tuning and insn selection. 2009-04-06 Joey Ye <joey.ye@intel.com> Xuepeng Guo <xuepeng.guo@intel.com> H.J. Lu <hongjiu.lu@intel.com> Atom pipeline model, tuning and insn selection. * config.gcc (atom): Add atom config options and target. * config/i386/atom.md: New. * config/i386/i386.c (atom_cost): New cost. (m_ATOM): New macro flag. (initial_ix86_tune_features): Set m_ATOM. (x86_accumulate_outgoing_args): Likewise. (x86_arch_always_fancy_math_387): Likewise. (processor_target): Add Atom cost. (cpu_names): Add Atom cpu name. (override_options): Set Atom ISA. (ix86_issue_rate): New case PROCESSOR_ATOM. (ix86_adjust_cost): Likewise. * config/i386/i386.h (TARGET_ATOM): New target macro. (ix86_tune_indices): Add X86_TUNE_OPT_AGU. (TARGET_OPT_AGU): New target option. (target_cpu_default): Add TARGET_CPU_DEFAULT_atom. (processor_type): Add PROCESSOR_ATOM. * config/i386/i386.md (cpu): Add new value "atom". (use_carry, movu): New attr. (atom.md): Include atom.md. (adddi3_carry_rex64): Set attr "use_carry". (addqi3_carry): Likewise. (addhi3_carry): Likewise. (addsi3_carry): Likewise. (*addsi3_carry_zext): Likewise. (subdi3_carry_rex64): Likewise. (subqi3_carry): Likewise. (subhi3_carry): Likewise. (subsi3_carry): Likewise. (x86_movdicc_0_m1_rex64): Likewise. (*x86_movdicc_0_m1_se): Likewise. (x86_movsicc_0_m1): Likewise. (*x86_movsicc_0_m1_se): Likewise. (*adddi_1_rex64): Emit add insn as much as possible. (*addsi_1): Likewise. (return_internal): Set atom_unit. (return_internal_long): Likewise. (return_pop_internal): Likewise. (*rcpsf2_sse): Set atom_sse_attr attr. (*qrt<mode>2_sse): Likewise. (*prefetch_sse): Likewise. * config/i386/i386-c.c (ix86_target_macros_internal): New case PROCESSOR_ATOM. (ix86_target_macros_internal): Likewise. * config/i386/sse.md (cpu): Set attr "atom_sse_attr". (*prefetch_sse_rex): Likewise. (sse_rcpv4sf2): Likewise. (sse_vmrcpv4sf2): Likewise. (sse_sqrtv4sf2): Likewise. (<sse>_vmsqrt<mode>2): Likewise. (sse_ldmxcsr): Likewise. (sse_stmxcsr): Likewise. (*sse_sfence): Likewise. (sse2_clflush): Likewise. (*sse2_mfence): Likewise. (*sse2_lfence): Likewise. (avx_movup<avxmodesuffixf2c><avxmodesuffix>): Set attr "movu". (<sse>_movup<ssemodesuffixf2c>): Likewise. (avx_movdqu<avxmodesuffix>): Likewise. (avx_lddqu<avxmodesuffix>): Likewise. (sse2_movntv2di): Change attr "type" to "ssemov". (sse2_movntsi): Likewise. (rsqrtv8sf2): Change attr "type" to "sseadd". (sse3_addsubv2df3): Set attr "atom_unit". (sse3_h<plusminus_insn>v4sf3): Likewise. (*sse2_pmaddwd): Likewise. (*vec_extractv2di_1_rex64): Likewise. (*vec_extractv2di_1_avx): Likewise. (sse2_psadbw): Likewise. (ssse3_phaddwv8hi3): Likewise. (ssse3_phaddwv4hi3): Likewise. (ssse3_phadddv4si3): Likewise. (ssse3_phadddv2si3): Likewise. (ssse3_phaddswv8hi3): Likewise. (ssse3_phaddswv4hi3): Likewise. (ssse3_phsubwv8hi3): Likewise. (ssse3_phsubwv4hi3): Likewise. (ssse3_phsubdv4si3): Likewise. (ssse3_phsubdv2si3): Likewise. (ssse3_phsubswv8hi3): Likewise. (ssse3_phsubswv4hi3): Likewise. (ssse3_pmaddubsw128): Likewise. (sse3_pmaddubsw: Likewise. (ssse3_palignrti): Likewise. (ssse3_palignrdi): Likewise. Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com> Co-Authored-By: Xuepeng Guo <xuepeng.guo@intel.com> From-SVN: r145624
2009-04-06 22:53:33 +02:00
echo "generic atom core2 nocona x86-64 amdfam10 barcelona k8 opteron athlon64 athlon-fx" 1>&2
exit 1
;;
esac
;;
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
*)
use_gcc_stdint=provide
;;
esac
case ${enable_threads}:${have_pthread_h}:${have_thread_h} in
"":yes:* | yes:yes:* )
MAINTAINERS (mt port): Remove. * MAINTAINERS (mt port): Remove. (sco5, unixware, sco udk): Remove. (Kean Johnston): Add to Write After Approval. fixincludes: * inclhack.def (AAB_svr4_replace_byteorder, AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory, libc1_G_va_list, libc1_ifdefd_memx, nested_motorola, ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime, solaris_mutex_init_1, solaris_socket, solaris_unistd, solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param, ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale, ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc, ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings, ultrix_strings2, ultrix_sys_time, ultrix_unistd, unicosmk_restrict, uw7_byteorder_fix, windiss_math1, windiss_math2, windiss_valist): Remove. * fixincl.x: Regenerate. * mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*, i370-*-openedition, i?86-*-moss*, i?86-*-uwin*, powerpc-*-eabiaix*): Remove. * tests/base/math.h: Update. * tests/base/pthread.h: Update. * tests/base/stdio.h: Update. * tests/base/stdlib.h: Update. * tests/base/string.h: Update. * tests/base/strings.h: Update. * tests/base/sys/file.h: Update. * tests/base/sys/limits.h: Update. * tests/base/sys/socket.h: Update. * tests/base/sys/stat.h: Update. * tests/base/sys/time.h: Update. * tests/base/testing.h: Update. * tests/base/unistd.h: Update. * tests/base/_G_config.h: Remove. * tests/base/arpa: Remove directory. * tests/base/fs: Remove directory. * tests/base/locale.h: Remove. * tests/base/machine: Remove directory. * tests/base/rpc/svc.h: Remove. * tests/base/sys/ioctl.h: Remove. * tests/base/sys/regset.h: Remove. * tests/base/sys/times.h: Remove. * tests/base/sys/utsname.h: Remove. * tests/base/widec.h: Remove. gcc: * config.gcc (Obsolete configurations): Remove list of configurations. (Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*, *-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*. Remove other targets matched by those patterns. (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff, i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove. Make code for Solaris 7 and greater unconditional for Solaris. (ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*): Remove --with-* handling. * config/rs6000/sysv4.h (-mwindiss): Remove from all specs. (LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC, ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC, LINK_OS_WINDISS_SPEC): Remove. * config/rs6000/sysv4.opt (mwindiss): Remove. * configure.ac (strongarm*-*-*, xscale*-*-*): Remove. * configure: Regenerate. * doc/cpp.texi: Don't mention BeOS. * doc/extend.texi (interrupt): Don't mention MS1. * doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv, m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv, alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout, i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4, powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix): Remove. * doc/invoke.texi (MT Options): Remove. (-mwindiss): Remove. (CRIS Options): Remove cris-axis-aout references. (HPPA Options): Don't mention hppa1.1-*-pro. * doc/md.texi: (MorphoTech family): Remove. * libgcc2.c: Don't handle UWIN. * config/alpha/t-unicosmk: Remove. * config/alpha/unicosmk.h: Remove. * config/arm/kaos-arm.h: Remove. * config/arm/kaos-strongarm.h: Remove. * config/arm/strongarm-coff.h: Remove. * config/arm/strongarm-elf.h: Remove. * config/arm/strongarm-pe.h: Remove. * config/arm/t-strongarm-pe: Remove. * config/arm/t-xscale-coff: Remove. * config/arm/t-xscale-elf: Remove. * config/arm/xscale-coff.h: Remove. * config/arm/xscale-elf.h: Remove. * config/chorus.h: Remove. * config/cris/aout.h: Remove. * config/cris/aout.opt: Remove. * config/cris/t-aout: Remove. * config/i386/beos-elf.h: Remove. * config/i386/kaos-i386.h: Remove. * config/i386/ptx4-i.h: Remove. * config/i386/sco5.h: Remove. * config/i386/sco5.opt: Remove. * config/i386/sysv4-cpp.h: Remove. * config/i386/sysv5.h: Remove. * config/i386/t-beos: Remove. * config/i386/t-sco5: Remove. * config/i386/t-uwin: Remove. * config/i386/uwin.asm: Remove. * config/i386/uwin.h: Remove. * config/kaos.h: Remove. * config/mips/windiss.h: Remove. * config/mt: Remove directory. * config/pa/pa-osf.h: Remove. * config/pa/pa-pro-end.h: Remove. * config/pa/t-pro: Remove. * config/ptx4.h: Remove. * config/rs6000/beos.h: Remove. * config/rs6000/kaos-ppc.h: Remove. * config/rs6000/t-beos: Remove. * config/rs6000/windiss.h: Remove. * config/sh/kaos-sh.h: Remove. * config/sol2-6.h: Remove. * config/sparc/sol26-sld.h: Remove. * config/sparc/sysv4-only.h: Remove. * config/vax/bsd.h: Remove. * config/vax/t-memfuncs: Remove. * config/vax/ultrix.h: Remove. * config/vax/vaxv.h: Remove. * config/windiss.h: Remove. gcc/testsuite: * g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*. * g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*. * g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris 7. * gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*, strongarm*-*-* and cris-*-aout*. * gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20030909-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20031108-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20040813-1.c: Don't handle *-*-sysv5*. * gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*. * gcc.dg/arm-scd42-1.c: Use target arm*-*-*. * gcc.dg/arm-scd42-3.c: Use target arm*-*-*. * gcc.dg/cpp/assert4.c: Don't handle BeOS. * gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*. * gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and xscale*-*-elf*. * gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*. * gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1. * gcc.misc-tests/arm-isr.exp: Use target arm*-*-*. * gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-stackalign-1.c: Don't handle powerpc-*-sysv*. * gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*. * lib/target-supports.exp: Don't handle strongarm*-*-elf, xscale*-*-elf and *-*-windiss. * obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*. * gcc.dg/mt-loopi1.c: Remove. gnattools: * configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove. * configure: Regenerate. libcpp: * configure.ac (parisc*64*-*-*): Remove. * configure: Regenerate. libffi: * configure.ac (parisc*-*-linux*, powerpc-*-sysv*, powerpc-*-beos*): Remove. * configure: Regenerate. libgcc: * config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove. libjava: * configure.host (strongarm*-elf, xscale*-elf): Remove. libstdc++-v3: * configure.host (xscale, ep9312, m680[246]0, solaris2.5, solaris2.5.[0-9], solaris2.6, windiss*): Remove. * crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove. * configure: Regenerate. * config/os/solaris/solaris2.5: Remove directory. * config/os/solaris/solaris2.6: Remove directory. * config/os/windiss: Remove directory. From-SVN: r136534
2008-06-07 20:00:15 +02:00
thread_file=posix
;;
"":*:yes | yes:*:yes )
thread_file=solaris
;;
esac
;;
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
;;
i[34567]86-*-pe | 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
tmake_file="${tmake_file} ${tmake_eh_file} i386/t-cygming i386/t-cygwin"
target_gtfiles="\$(srcdir)/config/i386/winnt.c"
config.gcc (*-*-darwin*): Add darwin.opt to $extra_options. * config.gcc (*-*-darwin*): Add darwin.opt to $extra_options. (i[34567]86-pc-msdosdjgpp*): Likewise i386/djgpp.opt. (i[34567]86-*-lynxos*, powerpc-*-lynxos*): Likewise lynx.opt. (i[34567]86-*-sco3.2v5*): Likewise i386/sco5.opt. (i[34567]86-*-pe, i[34567]86-*-cygwin*, i[34567]86-*-mingw32*) (i[34567]86-*-uwin*): Likewise i386/cygming.opt. * config/darwin.h (darwin_one_byte_bool, darwin_fix_and_continue) (darwin_fix_and_continue_switch, SUBTARGET_OPTIONS): Delete. * config/darwin.c (darwin_one_byte_bool, darwin_fix_and_continue) (darwin_fix_and_continue_switch): Delete. * config/lynx.h (SUBTARGET_OS_LYNX_SWITCHES): Delete. (SUBTARGET_SWITCHES): Delete. * config/i386/i386.h (target_flags, MASK_80387, MASK_RTD) (MASK_ALIGN_DOUBLE, MASK_SVR3_SHLIB, MASK_IEEE_FP, MASK_FLOAT_RETURNS) (MASK_NO_FANCY_MATH_387, MASK_OMIT_LEAF_FRAME_POINTER) (MASK_STACK_PROBE, MASK_NO_ALIGN_STROPS, MASK_INLINE_ALL_STROPS) (MASK_NO_PUSH_ARGS, MASK_ACCUMULATE_OUTGOING_ARGS, MASK_MMX) (MASK_SSE, MASK_SSE2, MASK_SSE3, MASK_3DNOW, MASK_3DNOW_A) (MASK_128BIT_LONG_DOUBLE, MASK_64BIT, MASK_MS_BITFIELD_LAYOUT) (MASK_TLS_DIRECT_SEG_REFS, MASK_NO_RED_ZONE, TARGET_80387) (TARGET_RTD, TARGET_ALIGN_DOUBLE, TARGET_PUSH_ARGS) (TARGET_ACCUMULATE_OUTGOING_ARGS, TARGET_SVR3_SHLIB, TARGET_IEEE_FP) (TARGET_128BIT_LONG_DOUBLE, TARGET_NO_FANCY_MATH_387) (TARGET_USE_FANCY_MATH_387, TARGET_OMIT_LEAF_FRAME_POINTER) (TARGET_DEBUG_ADDR, TARGET_DEBUG_ARG): Delete. (TARGET_FLOAT_RETURNS_IN_80387): Make an alias of TARGET_FLOAT_RETURNS. (TARGET_64BIT): Undef before redefining. (TARGET_TLS_DIRECT_SEG_REFS, TARGET_STACK_PROBE) (TARGET_ALIGN_STRINGOPS, TARGET_INLINE_ALL_STRINGOPS, TARGET_SSE) (TARGET_SSE2, TARGET_SSE3, TARGET_MMX, TARGET_3DNOW, TARGET_3DNOW_A) (TARGET_RED_ZONE, TARGET_USE_MS_BITFIELD_LAYOUT, TARGET_SWITCHES) (TARGET_OPTIONS, SUBTARGET_SWITCHES, SUBTARGET_OPTIONS) (ix86_fpmath_string, ix86_tls_dialect_string, ix86_cmodel_string) (ix86_asm_string, ix86_regparm, ix86_regparm_string) (ix86_preferred_stack_boundary_string, ix86_branch_cost_string) (ix86_debug_arg_string, ix86_debug_addr_string) (ix86_align_loops_string, ix86_align_jumps_string) (ix86_align_funcs_string): Delete. * config/i386/cygming.h (MASK_NOP_FUN_DLLIMPORT) (TARGET_NOP_FUN_DLLIMPORT, SUBTARGET_SWITCHES): Delete. * config/i386/djgpp.h (MASK_BNU210, SUBTARGET_SWITCHES): Delete. (SUBTARGET_OVERRIDE_OPTIONS): Check TARGET_BNU210. * config/i386/lynx.h (SUBTARGET_SWITCHES): Delete. * config/i386/sco5.h (MASK_COFF, TARGET_ELF) (SUBTARGET_SWITCHES): Delete. * config/i386/i386.c (ix86_debug_arg_string): Delete. (ix86_debug_addr_string): Delete. (ix86_cmodel_string, ix86_asm_string, ix86_tls_dialect_string) (ix86_fpmath_string, ix86_regparm_string, ix86_regparm) (ix86_align_loops_string, ix86_align_jumps_string) (ix86_preferred_stack_boundary_string, ix86_branch_cost_string) (ix86_align_funcs_string): Make static. (TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Override defaults. (ix86_handle_option): New function. (TARGET_USE_MS_BITFIELD_LAYOUT): Delete. (ix86_ms_bitfield_layout_p): Check TARGET_MS_BITFIELD_LAYOUT. * config/rs6000/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): Remove handling of darwin_fix_and_continue_switch. (darwin_one_byte_bool): Delete. * config/rs6000/lynx.h (EXTRA_SUBTARGET_SWITCHES): Delete. * config/rs6000/rs6000.c (rs6000_override_options): Update assignment to darwin_one_byte_bool. * config/darwin.opt, config/lynx.opt, config/i386/cygming.opt, * config/i386/djgpp.opt, config/i386/i386.opt, * config/i386/sco5.opt: New files. From-SVN: r98495
2005-04-21 09:35:09 +02:00
extra_options="${extra_options} i386/cygming.opt"
re PR target/21275 (gcc 4.0.0 crash with mingw when using stdout in global var) PR middle-end/21275 PR middle-end/21766 * target.h (struct gcc_target): Add valid_dllimport_attribute_p target hook. (struct cxx): Add adjust_class_at_definition target hook. * target-def.h: (TARGET_VALID_DLLIMPORT_ATTRIBUTE_P): New define, defaulting to hook_bool_tree_true. Add to TARGET_INITIALIZER (TARGET_CXX_ADJUST_CLASS_AT_DEFINITION): New define, defaulting to hook_void_tree. Add to TARGET_CXX. * tree.h (struct decl_with_vis): Rename non_addr_const_p field to dllimport_flag. (DECL_NON_ADDR_CONSTANT_P): Replace with DECL_DLLIMPORT_P macro. * tree.c (merge_dllimport_decl_attributes): Check DECL_DLLIMPORT_P instead of attribute. Check for dllexport override. Warn if inconsistent dll linkage. Don't lose old dllimport if decl has had address referenced. Tweak lookup of dllimport atribute. (handle_dll_attribute): Check targetm.valid_dllimport_attribute_p for target specific rules. Don't add dllimport attribute if DECL_DECLARED_INLINE_P. Set DECL_DLLIMPORT_P when adding dllimport attribute. (staticp): Replace DECL_NON_ADDR_CONSTANT_P with DECL_DLLIMPORT_P. * varasm.c (initializer_constant_valid_p): Replace DECL_NON_ADDR_CONSTANT_P with DECL_DLLIMPORT_P PR target/21801 PR target/23589 * config.gcc (i[34567]86-*-cygwin*): Add winnt-cxx.o to 'cxx_target_objs', winnt-stubs,o to 'extra_objs'. (i[34567]86-*-mingw32*): Likewise. * doc/tm.texi (TARGET_CXX_ADJUST_CLASS_AT_DEFINITION): Document. (TARGET_VALID_DLLIMPORT_ATTRIBUTE_P): Document. * config/i386/winnt.c (i386_pe_dllimport_p): Factor out C++-specific code. Change return value to bool. (i386_pe_dllimport_p): Likewise. (associated_type): Simplify and make language-independent (i386_pe_encode_section_info): Replace override of ambiguous dllimport symbol refs with a gcc_assert. (i386_pe_valid_dllimport_attribute_p): Define. * config/i386/winnt-cxx.c: New file. Define C++ versions of i386_pe_type_dllimport_p, i386_pe_type_dllexport_p, i386_pe_adjust_class_at_definition. * config/i386/winnt-stubs.c: New file. Define stub versions of lang-specific functions. * config/i386/i386-protos.h: Declare winnt-[cxx|stubs].c functions i386_pe_type_dllimport_p, i386_pe_type_dllexport_p, i386_pe_adjust_class_at_definition. (i386_pe_valid_dllimport_attribute_p): Declare. * config/i386/cygming.h (TARGET_VALID_DLLIMPORT_ATTRIBUTE_P): Define. (TARGET_CXX_ADJUST_CLASS_AT_DEFINITION): Define. * config/i386/t-cygming: Add rules for winnt-cxx.o, winnt-stubs.o. PR target/19704 * config/i386/i386.c (ix86_function_ok_for_sibcall): Replace test for dllimport attribute with test of DECL_DLLIMPORT_P. cp PR target/21801 PR target/23589 * class.c (finish_struct_1): Call targetm.cxx.adjust_class_at_definition. testsuite * gcc.dg/dll-2.c: Add tests for warnings. * gcc.dg/dll-3.c: Likewise. * gcc.dg/dll-4.c: Likewise. * g++.dg/ext/dllimport1.C: Adjust tests for warnings. * g++.dg/ext/dllimport2.C: Likewise. * g++.dg/ext/dllimport3.C: Likewise. * g++.dg/ext/dllimport7.C: Likewise. * g++.dg/ext/dllimport8.C: Likewise. * g++.dg/ext/dllimport9.C: Likewise. From-SVN: r105332
2005-10-12 22:54:50 +02:00
extra_objs="winnt.o winnt-stubs.o"
c_target_objs="${c_target_objs} cygwin2.o msformat-c.o"
cxx_target_objs="${cxx_target_objs} cygwin2.o winnt-cxx.o msformat-c.o"
extra_gcc_objs=cygwin1.o
if test x$enable_threads = xyes; then
config.gcc (i[34567]86-*-cygwin*): Use new common makefile stub t-cygming. 2003-03-21 Christopher Faylor <cgf@redhat.com> * config.gcc (i[34567]86-*-cygwin*): Use new common makefile stub t-cygming. Use common target header cygming.h. Add extra c_target_obj and cxx_target_obj file. Default cygwin to posix threading. Enforce i386 as float format. (i[34567]86-*-mingw*): Use new common makefile stub t-cygming. Remove cygwin.h as target header. Use common target header cygming.h Enforce i386 as float format. Correct typo. * config/i386/cygming.h: New file, containing definitions common to mingw32 and cygwin. * config/i386/cygwin.h: Remove definitions common to cygwin and mingw. Simplify special spec logic. Define "wrappers" around certain include path defines to accommodate -mno-cygwin. Remove some #if 0'ed code. (STANDARD_INCLUDE_DIR) Always define when not cross-compiling. (LINK_SPEC): Don't use cyg search prefix when -mno-cygwin. (GCC_DRIVER_HOST_INITIALIZATION): Define as call to mingw_scan. * config/i386/mingw32.h: Remove definitions common to cygwin and mingw. (EXTRA_OS_CPP_BUILTINS): Adjust. (TARGET_VERSION): Define. * config/i386/crtdll.h (EXTRA_OS_CPP_BUILTINS): Override mingw32.h definitions. (LIBGCC_SPEC): Add libmingwex.a as in mingw32.h. * config/i386/t-cygwin (EXTRA_GCC_OBJS): Define as cygwin1.o. Add compilation rules for cygwin1.o cygwin2.o. * config/i386/cygwin1.c: New file. * config/i386/cygwin2.c: New file. * config/i386/t-cygming: New makefile stub. From-SVN: r64643
2003-03-21 04:57:09 +01:00
thread_file='posix'
fi
use_gcc_stdint=wrap
;;
i[34567]86-*-mingw* | x86_64-*-mingw*)
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
# This makes the logic if mingw's or the w64 feature set has to be used
case ${target} in
*-w64-*)
tm_file="${tm_file} i386/mingw-w64.h"
tmake_file="${tmake_file} i386/t-mingw-w64"
;;
*)
tmake_file="${tmake_file} i386/t-mingw32"
;;
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
tmake_file="${tmake_file} ${tmake_eh_file} i386/t-cygming"
target_gtfiles="\$(srcdir)/config/i386/winnt.c"
extra_options="${extra_options} i386/cygming.opt i386/mingw.opt"
case ${target} in
*-w64-*)
extra_options="${extra_options} i386/mingw-w64.opt"
;;
*)
;;
esac
re PR target/21275 (gcc 4.0.0 crash with mingw when using stdout in global var) PR middle-end/21275 PR middle-end/21766 * target.h (struct gcc_target): Add valid_dllimport_attribute_p target hook. (struct cxx): Add adjust_class_at_definition target hook. * target-def.h: (TARGET_VALID_DLLIMPORT_ATTRIBUTE_P): New define, defaulting to hook_bool_tree_true. Add to TARGET_INITIALIZER (TARGET_CXX_ADJUST_CLASS_AT_DEFINITION): New define, defaulting to hook_void_tree. Add to TARGET_CXX. * tree.h (struct decl_with_vis): Rename non_addr_const_p field to dllimport_flag. (DECL_NON_ADDR_CONSTANT_P): Replace with DECL_DLLIMPORT_P macro. * tree.c (merge_dllimport_decl_attributes): Check DECL_DLLIMPORT_P instead of attribute. Check for dllexport override. Warn if inconsistent dll linkage. Don't lose old dllimport if decl has had address referenced. Tweak lookup of dllimport atribute. (handle_dll_attribute): Check targetm.valid_dllimport_attribute_p for target specific rules. Don't add dllimport attribute if DECL_DECLARED_INLINE_P. Set DECL_DLLIMPORT_P when adding dllimport attribute. (staticp): Replace DECL_NON_ADDR_CONSTANT_P with DECL_DLLIMPORT_P. * varasm.c (initializer_constant_valid_p): Replace DECL_NON_ADDR_CONSTANT_P with DECL_DLLIMPORT_P PR target/21801 PR target/23589 * config.gcc (i[34567]86-*-cygwin*): Add winnt-cxx.o to 'cxx_target_objs', winnt-stubs,o to 'extra_objs'. (i[34567]86-*-mingw32*): Likewise. * doc/tm.texi (TARGET_CXX_ADJUST_CLASS_AT_DEFINITION): Document. (TARGET_VALID_DLLIMPORT_ATTRIBUTE_P): Document. * config/i386/winnt.c (i386_pe_dllimport_p): Factor out C++-specific code. Change return value to bool. (i386_pe_dllimport_p): Likewise. (associated_type): Simplify and make language-independent (i386_pe_encode_section_info): Replace override of ambiguous dllimport symbol refs with a gcc_assert. (i386_pe_valid_dllimport_attribute_p): Define. * config/i386/winnt-cxx.c: New file. Define C++ versions of i386_pe_type_dllimport_p, i386_pe_type_dllexport_p, i386_pe_adjust_class_at_definition. * config/i386/winnt-stubs.c: New file. Define stub versions of lang-specific functions. * config/i386/i386-protos.h: Declare winnt-[cxx|stubs].c functions i386_pe_type_dllimport_p, i386_pe_type_dllexport_p, i386_pe_adjust_class_at_definition. (i386_pe_valid_dllimport_attribute_p): Declare. * config/i386/cygming.h (TARGET_VALID_DLLIMPORT_ATTRIBUTE_P): Define. (TARGET_CXX_ADJUST_CLASS_AT_DEFINITION): Define. * config/i386/t-cygming: Add rules for winnt-cxx.o, winnt-stubs.o. PR target/19704 * config/i386/i386.c (ix86_function_ok_for_sibcall): Replace test for dllimport attribute with test of DECL_DLLIMPORT_P. cp PR target/21801 PR target/23589 * class.c (finish_struct_1): Call targetm.cxx.adjust_class_at_definition. testsuite * gcc.dg/dll-2.c: Add tests for warnings. * gcc.dg/dll-3.c: Likewise. * gcc.dg/dll-4.c: Likewise. * g++.dg/ext/dllimport1.C: Adjust tests for warnings. * g++.dg/ext/dllimport2.C: Likewise. * g++.dg/ext/dllimport3.C: Likewise. * g++.dg/ext/dllimport7.C: Likewise. * g++.dg/ext/dllimport8.C: Likewise. * g++.dg/ext/dllimport9.C: Likewise. From-SVN: r105332
2005-10-12 22:54:50 +02:00
extra_objs="winnt.o winnt-stubs.o"
c_target_objs="${c_target_objs} msformat-c.o"
cxx_target_objs="${cxx_target_objs} winnt-cxx.o msformat-c.o"
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"
;;
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"
;;
*mingw32msv* | *mingw*)
;;
esac
;;
i[34567]86-*-interix3*)
config.gcc (i386-dg-dgux, [...]): Include as many configury headers via tm_file as possible. 2002-04-02 David O'Brien <obrien@FreeBSD.org> * config.gcc (i386-dg-dgux, i386-go32-msdos , i386-go32-rtems, i386-ibm-aix, i386-moss-msdos, i386-ncr-sysv4, i386-next-, i386-pc-msdosdjgpp, i386-sequent-bsd, i386-sequent-ptx1, i386-sequent-ptx2, i386-sequent-ptx4, i386-sun-sunos, i386-wrs-vxworks, i386-*-aout, i386-*-beoself, i386-*-bsd, i386-*-bsdi, i386-*-chorusos, i386-*-coff, i386-*-elf, i386-*-freebsd5, i386-*-freebsd-aout, i386-*-gnu, i386-*-interix, i386-*-interix3, i386-*-isc, i386-*-linux, i386-*-linuxaout, i386-*-linuxoldld, i386-*-lynxos, i386-*-mach, i386-*-mingw32, i386-*-netbsd, i386-*-netbsdelf, i386-*-netware, i386-*-openbsd, i386-*-osf1, i386-*-osfrose, i386-*-pe , i386-*-rtems, i386-*-rtemscoff, i386-*-sco3.2v5, i386-*-solaris2, i386-*-sysv, i386-*-sysv4, i386-*-sysv5, i386-*-udk, i386-*-uwin, i386-*-vsta, i386-*-win32, x86_64-*-freebsd5, x86_64-*-linux, x86_64-*-netbsd): Include as many configury headers via tm_file as possible. This includes among others i386/unix.h, i386/bsd.h, i386/gas.h. * config/openbsd-oldgas.h: New file. * config/i386/386bsd.h, config/i386/aix386ng.h, config/i386/att.h, config/i386/bsd.h, config/i386/djgpp.h, config/i386/freebsd-aout.h, config/i386/gas.h, config/i386/gstabs.h, config/i386/i386-aout.h, config/i386/i386-coff.h, config/i386/i386-interix.h, config/i386/iscdbx.h, config/i386/linux-aout.h, config/i386/linux-oldld.h, config/i386/lynx-ng.h, config/i386/lynx.h, config/i386/mach.h, config/i386/netbsd.h, config/i386/next.h, config/i386/openbsd.h, config/i386/osfelf.h, config/i386/osfrose.h, config/i386/sco5.h, config/i386/seq-gas.h, config/i386/seq-sysv3.h, config/i386/seq2-sysv3.h, config/i386/sequent.h, config/i386/sun.h, config/i386/sun386.h, config/i386/svr3dbx.h, config/i386/svr3gas.h, config/i386/sysv3.h, config/i386/uwin.h, config/i386/vsta.h, config/i386/vxi386.h: Do not directly include configury headers. * config/i386/cygwin.h, config/i386/djgpp.h, config/i386/win32.h: Directly include configury headers that are no longer automatically included by the above headers. * config/i386/att.h, config/i386/bsd.h (TARGET_VERSION): Do not define. * config/i386/386bsd.h, config/i386/aix386ng.h, config/i386/cygwin.h, config/i386/djgpp.h, config/i386/i386-aout.h, config/i386/i386-coff.h, config/i386/lynx-ng.h, config/i386/lynx.h, config/i386/mach.h, config/i386/netbsd.h, config/i386/openbsd.h, config/i386/rtems.h, config/i386/seq-sysv3.h, config/i386/sequent.h, config/i386/svr3gas.h, config/i386/sysv3.h, config/i386/vsta.h, config/i386/vxi386.h (TARGET_VERSION): Define. * config/i386/beos-elf.h, config/i386/freebsd.h, config/i386/i386-interix.h, config/i386/i386elf.h, config/i386/linux.h, config/i386/linux64.h, config/i386/netbsd-elf.h, config/i386/netbsd64.h, config/i386/osfelf.h, config/i386/osfrose.h, config/i386/ptx4-i.h, config/i386/sco5.h, config/i386/sysv4.h (TARGET_VERSION): Do not need to protect. * config/i386/freebsd64.h (TARGET_VERSION): Fix style. * config/i386/386bsd.h, config/i386/cygwin.h, config/i386/djgpp.h, config/i386/freebsd-aout.h, config/i386/i386-aout.h, config/i386/i386-interix.h, config/i386/linux-aout.h, config/i386/linux-oldld.h, config/i386/mach.h, config/i386/netbsd.h, config/i386/openbsd.h, config/i386/vsta.h, config/i386/win32.h (YES_UNDERSCORES): Do not define - not needed. * config/i386/bsd.h, config/i386/gas.h (LPREFIX, ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL, USER_LABEL_PREFIX): Do not handle the "NO_UNDERSCORES" case. * config/i386/i386-coff.h, config/i386/lynx.h, config/i386/lynx-ng.h (LPREFIX, ASM_GENERATE_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL, USER_LABEL_PREFIX): Define. (handles the "NO_UNDERSCORES" case) * config/i386/isc.h: Preserve comment from config/i386/isccoff.h. * config/i386/isccoff.h, config/i386/v3gas.h: Remove. Approved by: Richard Henderson <rth@redhat.com> Message-ID: <20020402190415.D29320@redhat.com> From-SVN: r51791
2002-04-03 05:49:19 +02:00
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"
tmake_file="${tmake_file} i386/t-interix"
extra_objs=winnt.o
target_gtfiles="\$(srcdir)/config/i386/winnt.c"
if test x$enable_threads = xyes ; then
thread_file='posix'
fi
if test x$stabs = xyes ; then
tm_file="${tm_file} dbxcoff.h"
fi
;;
ia64*-*-elf*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h newlib-stdint.h ia64/sysv4.h ia64/elf.h"
tmake_file="ia64/t-ia64"
target_cpu_default="0"
if test x$gas = xyes
then
target_cpu_default="${target_cpu_default}|MASK_GNU_AS"
fi
if test x$gnu_ld = xyes
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*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h svr4.h linux.h glibc-stdint.h ia64/sysv4.h ia64/linux.h"
re PR target/14925 (libunwind enabled gcc generates incompatible libgcc_s.so.1) 2004-09-03 H.J. Lu <hongjiu.lu@intel.com> PR target/14925: Makefile.in (LIB2ADDEHSTATIC): New. (LIB2ADDEHSHARED): New. (LIBUNWIND): New. (LIBUNWINDDEP): New. (SHLIBUNWIND_LINK): New. (SHLIBUNWIND_INSTALL): New. (libgcc.mk): Pass LIB2ADDEHSTATIC, LIB2ADDEHSHARED, LIBUNWIND, LIBUNWINDDEP, SHLIBUNWIND_LINK and SHLIBUNWIND_INSTALL. (clean): Remove libunwind* (stage1-start): Remove and copy stage1/libunwind*. (stage2-start): Remove and copy stage2/libunwind*. (stage3-start): Remove and copy stage3/libunwind*. (stage4-start): Remove and copy stage4/libunwind*. (stageprofile-start): Remove and copy stageprofile/libunwind*. (stagefeedback-start): Remove and copy stagefeedback/libunwind*. * config.gcc (ia64*-*-linux*): Always add t-libunwind to tmake_file. Add t-libunwind-elf and ia64/t-glibc-libunwind to tmake_file if --with-system-libunwind isn't used. * config/ia64/t-glibc-libunwind: New file. * config/t-libunwind-elf: Likewise. * unwind-compat.c: Likewise. * unwind-compat.h: Likewise. * unwind-dw2-fde-compat.c: Likewise. * config/ia64/t-glibc (LIB2ADDEH): Updated. * config/ia64/t-hpux (T_CFLAGS): Add -DUSE_LIBUNWIND_EXCEPTIONS. * config/ia64/unwind-ia64.c: Include "unwind-compat.h". Define aliases if needed. * unwind-dw2-fde-glibc.c: Likewise. * unwind-dw2.c: Likewise. * config/t-libunwind (LIB2ADDEH): Updated. (LIB2ADDEHSTATIC): New. (T_CFLAGS): Add -DUSE_LIBUNWIND_EXCEPTIONS. (TARGET_LIBGCC2_CFLAGS): Set to -DUSE_GAS_SYMVER. * configure.ac: Change --enable-libunwind-exceptions to --with-system-libunwind. Don't define USE_LIBUNWIND_EXCEPTIONS. * configure: Regenerated. * config.in: Updated. * doc/install.texi (ia64-*-linux): Require libunwind 0.98 or above and mention --with-system-libunwind. (ia64-*-hpux*): Mention --enable-libunwind-exceptions is removed in gcc 3.4.3 and later. * gcc.c (init_spec): Add -lunwind to -lgcc_s if USE_LIBUNWIND_EXCEPTIONS is defined. * mklibgcc.in: Support libunwind. From-SVN: r87066
2004-09-04 02:15:42 +02:00
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
target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtfastmath.o"
;;
ia64*-*-hpux*)
target.h (init_libfuncs): New hook. * target.h (init_libfuncs): New hook. * target-def.h: Default TARGET_INIT_BUILTINS and TARGET_INIT_LIBFUNCS to hook_void_void. Add TARGET_INIT_LIBFUNCS to TARGET_INITIALIZER. * builtins.c (default_init_builtins): Delete. * expr.h (default_init_builtins): Delete prototype. * doc/tm.texi: Document TARGET_INIT_LIBFUNCS and US_SOFTWARE_GOFAST. Tweak documentation of TARGET_FLOAT_LIB_COMPARE_RETURNS_BOOL. Remove documentation of INIT_TARGET_OPTABS, MULSI3_LIBCALL, DIVSI3_LIBCALL, UDIVSI3_LIBCALL, MODSI3_LIBCALL, UMODSI3_LIBCALL, MULDI3_LIBCALL, DIVDI3_LIBCALL, UDIVDI3_LIBCALL, MODDI3_LIBCALL, and UMODDI3_LIBCALL, * Makefile.in (optabs.o): Depends on target.h. * defaults.h: Provide default for FLOAT_LIB_COMPARE_RETURNS_BOOL. * optabs.c: Include target.h. (prepare_float_lib_cmp): No need for #ifdef around use of FLOAT_LIB_COMPARE_RETURNS_BOOL. (set_optab_libfunc): New function. (init_optabs): Delete use of all *_LIBCALL defines. Call targetm.init_libfuncs not INIT_TARGET_OPTABS. * optabs.h: Prototype set_optab_libfunc. * config.gcc: Remove all references to pa/long_double.h, ia64/hpux_longdouble.h, and gofast.h. (mips-*-*): When --enable-gofast, just add US_SOFTWARE_GOFAST to tm_defines; don't set INIT_SUBTARGET_OPTABS or change tm_file. * config/alpha/alpha.c, config/c4x/c4x.c, config/cris/cris.c * config/frv/frv.c, config/h8300/h8300.c, config/i860/i860.c * config/ia64/ia64.c, config/ip2k/ip2k.c, config/m68hc11/m68hc11.c * config/mips/mips.c, config/pa/pa.c, config/rs6000/rs6000.c * config/sparc/sparc.c, config/vax/vax.c: Provide a definition for TARGET_INIT_LIBFUNCS. Where necessary, include optabs.h, libfuncs.h, and/or config/gofast.h. * config/alpha/unicosmk.h, config/alpha/vms.h, config/c4x/c4x.h * config/avr/avr.h, config/cris/cris.h, config/frv/frv.h * config/h8300/h8300.h, config/i860/i860.h, config/ip2k/ip2k.h * config/iq2000/iq2000.h, config/m68hc11/m68hc11.h, config/mips/mips.h * config/rs6000/aix.h, config/rs6000/sysv4.h, config/sparc/elf.h * config/sparc/lite.h, config/sparc/netbsd-elf.h, config/sparc/sol2.h * config/sparc/sparc.h, config/v850/v850.h, config/vax/vax.h * config/vax/elf.h: Don't define or use INIT_TARGET_OPTABS, INIT_SUBTARGET_OPTABS, or any *_LIBCALL macros. * config/ia64/hpux.h: Redefine INTEL_EXTENDED_IEEE_FORMAT to 0. Set TARGET_INIT_LIBFUNCS and FLOAT_LIB_COMPARE_RETURNS_BOOL here. * config/pa/pa-hpux.h: Define LONG_DOUBLE_TYPE_SIZE, HPUX_LONG_DOUBLE_LIBRARY, and FLOAT_LIB_COMPARE_RETURNS_BOOL here. * config/ia64/hpux_longdouble.h, config/pa/long_double.h: Delete. * config/rs6000/xcoff.h: Don't define RS6000_ITRUNC nor RS6000_UITRUNC. * config/sparc/sparc.h: Default SUN_CONVERSION_LIBFUNCS and SUN_INTEGER_MULTIPLY_64 to 0. * config/sparc/sol2.h: Redefine SUN_CONVERSION_LIBFUNCS and SUN_INTEGER_MULTIPLY_64 to 1. * config/sparc/elf.h: Redefine SUN_CONVERSION_LIBFUNCS and SUN_INTEGER_MULTIPLY_64 to 0. * config/sparc/lite.h, config/sparc/liteelf.h, config/sparc/sp86x-elf.h: Define US_SOFTWARE_GOFAST. * config/vax/vax.h: Default TARGET_ELF to 0. * config/vax/elf.h: Redefine TARGET_ELF to 1. * config/gofast.h: Don't define any macros here. Provide one static function, gofast_maybe_init_libfuncs, which does what INIT_GOFAST_LIBFUNCS used to do but only if US_SOFTWARE_GOFAST is already defined. Do not clear negation libfuncs. Do not mess with HFmode, XFmode, or TFmode libfuncs. * config/avr/avr.c (avr_init_once): #if 0 out; mark FIXME. From-SVN: r72009
2003-10-02 02:44:29 +02:00
tm_file="${tm_file} dbxelf.h elfos.h svr4.h ia64/sysv4.h ia64/hpux.h"
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
use_collect2=no
c_target_objs="ia64-c.o"
cxx_target_objs="ia64-c.o"
config.gcc (ia64*-*-hpux*): Add extra_options. * config.gcc (ia64*-*-hpux*): Add extra_options. * config/ia64/hpux.h (SUBTARGET_SWITCHES): Remove. (TARGET_DEFAULT): Remove MASK_INLINE_FLOAT_DIV_THR. * config/ia64/ia64.c (ia64_fixed_range_string): Remove. (ia64_tls_size_string, ia64_tune_string): Remove. (ia64_tune): Init to PROCESSOR_ITANIUM2. (TARGET_DEFAULT_TARGET_FLAGS): New. (TARGET_HANDLE_OPTION): New. (ia64_override_options): Move options parsing ... (ia64_handle_option): ... here. New. * config/ia64/ia64.h (target_flags, MASK_BIG_ENDIAN, MASK_GNU_AS, MASK_GNU_LD, MASK_NO_PIC, MASK_VOL_ASM_STOP, MASK_ILP32, MASK_REG_NAMES, MASK_NO_SDATA, MASK_CONST_GP, MASK_AUTO_PIC, MASK_INLINE_FLOAT_DIV_LAT, MASK_INLINE_FLOAT_DIV_THR, MASK_INLINE_INT_DIV_LAT, MASK_INLINE_INT_DIV_THR, MASK_INLINE_SQRT_LAT, MASK_INLINE_SQRT_THR, MASK_DWARF2_ASM, MASK_EARLY_STOP_BITS, TARGET_BIG_ENDIAN, TARGET_GNU_AS, TARGET_GNU_LD, TARGET_NO_PIC, TARGET_VOL_ASM_STOP, TARGET_ILP32, TARGET_REG_NAMES, TARGET_NO_SDATA, TARGET_CONST_GP, TARGET_AUTO_PIC, TARGET_INLINE_FLOAT_DIV_LAT, TARGET_INLINE_FLOAT_DIV_THR, TARGET_INLINE_INT_DIV_LAT, TARGET_INLINE_INT_DIV_THR, TARGET_INLINE_FLOAT_DIV, TARGET_INLINE_INT_DIV, TARGET_INLINE_SQRT_LAT, TARGET_INLINE_SQRT_THR, TARGET_INLINE_SQRT, TARGET_DWARF2_ASM, TARGET_EARLY_STOP_BITS): Remove. (TARGET_ILP32): Default false. (TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS): Remove. (enum ia64_inline_type): New. (TARGET_DEFAULT): Remove MASK_INLINE_FLOAT_DIV_THR. * config/ia64/ia64.md: Update for new definitions of TARGET_INLINE_INT_DIV, TARGET_INLINE_FLOAT_DIV, TARGET_INLINE_SQRT. * config/ia64/ia64.opt: New file. * config/ia64/ilp32.opt: New file. From-SVN: r96621
2005-03-17 18:35:16 +01:00
extra_options="${extra_options} ia64/ilp32.opt"
use_gcc_stdint=wrap
tm_file="${tm_file} hpux-stdint.h"
;;
iq2000*-*-elf*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="svr4.h elfos.h newlib-stdint.h iq2000/iq2000.h"
tmake_file=iq2000/t-iq2000
out_file=iq2000/iq2000.c
md_file=iq2000/iq2000.md
;;
m32r-*-elf*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h svr4.h newlib-stdint.h ${tm_file}"
extra_parts="crtinit.o crtfini.o"
;;
m32rle-*-elf*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h svr4.h newlib-stdint.h m32r/little.h ${tm_file}"
extra_parts="crtinit.o crtfini.o m32rx/crtinit.o m32rx/crtfini.o"
;;
m32r-*-rtems*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h svr4.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*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h svr4.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"
gnu_ld=yes
if test x$enable_threads = xyes; then
thread_file='posix'
fi
;;
m32rle-*-linux*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h svr4.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"
gnu_ld=yes
if test x$enable_threads = xyes; then
thread_file='posix'
fi
;;
# m68hc11 and m68hc12 share the same machine description.
m68hc11-*-*|m6811-*-*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h usegas.h newlib-stdint.h m68hc11/m68hc11.h"
tm_p_file="m68hc11/m68hc11-protos.h"
md_file="m68hc11/m68hc11.md"
out_file="m68hc11/m68hc11.c"
tmake_file="m68hc11/t-m68hc11"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
;;
m68hc12-*-*|m6812-*-*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="m68hc11/m68hc12.h dbxelf.h elfos.h usegas.h newlib-stdint.h m68hc11/m68hc11.h"
tm_p_file="m68hc11/m68hc11-protos.h"
md_file="m68hc11/m68hc11.md"
out_file="m68hc11/m68hc11.c"
tmake_file="m68hc11/t-m68hc11"
extra_options="${extra_options} m68hc11/m68hc11.opt"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
;;
MAINTAINERS (mt port): Remove. * MAINTAINERS (mt port): Remove. (sco5, unixware, sco udk): Remove. (Kean Johnston): Add to Write After Approval. fixincludes: * inclhack.def (AAB_svr4_replace_byteorder, AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory, libc1_G_va_list, libc1_ifdefd_memx, nested_motorola, ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime, solaris_mutex_init_1, solaris_socket, solaris_unistd, solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param, ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale, ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc, ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings, ultrix_strings2, ultrix_sys_time, ultrix_unistd, unicosmk_restrict, uw7_byteorder_fix, windiss_math1, windiss_math2, windiss_valist): Remove. * fixincl.x: Regenerate. * mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*, i370-*-openedition, i?86-*-moss*, i?86-*-uwin*, powerpc-*-eabiaix*): Remove. * tests/base/math.h: Update. * tests/base/pthread.h: Update. * tests/base/stdio.h: Update. * tests/base/stdlib.h: Update. * tests/base/string.h: Update. * tests/base/strings.h: Update. * tests/base/sys/file.h: Update. * tests/base/sys/limits.h: Update. * tests/base/sys/socket.h: Update. * tests/base/sys/stat.h: Update. * tests/base/sys/time.h: Update. * tests/base/testing.h: Update. * tests/base/unistd.h: Update. * tests/base/_G_config.h: Remove. * tests/base/arpa: Remove directory. * tests/base/fs: Remove directory. * tests/base/locale.h: Remove. * tests/base/machine: Remove directory. * tests/base/rpc/svc.h: Remove. * tests/base/sys/ioctl.h: Remove. * tests/base/sys/regset.h: Remove. * tests/base/sys/times.h: Remove. * tests/base/sys/utsname.h: Remove. * tests/base/widec.h: Remove. gcc: * config.gcc (Obsolete configurations): Remove list of configurations. (Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*, *-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*. Remove other targets matched by those patterns. (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff, i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove. Make code for Solaris 7 and greater unconditional for Solaris. (ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*): Remove --with-* handling. * config/rs6000/sysv4.h (-mwindiss): Remove from all specs. (LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC, ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC, LINK_OS_WINDISS_SPEC): Remove. * config/rs6000/sysv4.opt (mwindiss): Remove. * configure.ac (strongarm*-*-*, xscale*-*-*): Remove. * configure: Regenerate. * doc/cpp.texi: Don't mention BeOS. * doc/extend.texi (interrupt): Don't mention MS1. * doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv, m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv, alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout, i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4, powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix): Remove. * doc/invoke.texi (MT Options): Remove. (-mwindiss): Remove. (CRIS Options): Remove cris-axis-aout references. (HPPA Options): Don't mention hppa1.1-*-pro. * doc/md.texi: (MorphoTech family): Remove. * libgcc2.c: Don't handle UWIN. * config/alpha/t-unicosmk: Remove. * config/alpha/unicosmk.h: Remove. * config/arm/kaos-arm.h: Remove. * config/arm/kaos-strongarm.h: Remove. * config/arm/strongarm-coff.h: Remove. * config/arm/strongarm-elf.h: Remove. * config/arm/strongarm-pe.h: Remove. * config/arm/t-strongarm-pe: Remove. * config/arm/t-xscale-coff: Remove. * config/arm/t-xscale-elf: Remove. * config/arm/xscale-coff.h: Remove. * config/arm/xscale-elf.h: Remove. * config/chorus.h: Remove. * config/cris/aout.h: Remove. * config/cris/aout.opt: Remove. * config/cris/t-aout: Remove. * config/i386/beos-elf.h: Remove. * config/i386/kaos-i386.h: Remove. * config/i386/ptx4-i.h: Remove. * config/i386/sco5.h: Remove. * config/i386/sco5.opt: Remove. * config/i386/sysv4-cpp.h: Remove. * config/i386/sysv5.h: Remove. * config/i386/t-beos: Remove. * config/i386/t-sco5: Remove. * config/i386/t-uwin: Remove. * config/i386/uwin.asm: Remove. * config/i386/uwin.h: Remove. * config/kaos.h: Remove. * config/mips/windiss.h: Remove. * config/mt: Remove directory. * config/pa/pa-osf.h: Remove. * config/pa/pa-pro-end.h: Remove. * config/pa/t-pro: Remove. * config/ptx4.h: Remove. * config/rs6000/beos.h: Remove. * config/rs6000/kaos-ppc.h: Remove. * config/rs6000/t-beos: Remove. * config/rs6000/windiss.h: Remove. * config/sh/kaos-sh.h: Remove. * config/sol2-6.h: Remove. * config/sparc/sol26-sld.h: Remove. * config/sparc/sysv4-only.h: Remove. * config/vax/bsd.h: Remove. * config/vax/t-memfuncs: Remove. * config/vax/ultrix.h: Remove. * config/vax/vaxv.h: Remove. * config/windiss.h: Remove. gcc/testsuite: * g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*. * g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*. * g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris 7. * gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*, strongarm*-*-* and cris-*-aout*. * gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20030909-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20031108-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20040813-1.c: Don't handle *-*-sysv5*. * gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*. * gcc.dg/arm-scd42-1.c: Use target arm*-*-*. * gcc.dg/arm-scd42-3.c: Use target arm*-*-*. * gcc.dg/cpp/assert4.c: Don't handle BeOS. * gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*. * gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and xscale*-*-elf*. * gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*. * gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1. * gcc.misc-tests/arm-isr.exp: Use target arm*-*-*. * gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-stackalign-1.c: Don't handle powerpc-*-sysv*. * gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*. * lib/target-supports.exp: Don't handle strongarm*-*-elf, xscale*-*-elf and *-*-windiss. * obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*. * gcc.dg/mt-loopi1.c: Remove. gnattools: * configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove. * configure: Regenerate. libcpp: * configure.ac (parisc*64*-*-*): Remove. * configure: Regenerate. libffi: * configure.ac (parisc*-*-linux*, powerpc-*-sysv*, powerpc-*-beos*): Remove. * configure: Regenerate. libgcc: * config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove. libjava: * configure.host (strongarm*-elf, xscale*-elf): Remove. libstdc++-v3: * configure.host (xscale, ep9312, m680[246]0, solaris2.5, solaris2.5.[0-9], solaris2.6, windiss*): Remove. * crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove. * configure: Regenerate. * config/os/solaris/solaris2.5: Remove directory. * config/os/solaris/solaris2.6: Remove directory. * config/os/windiss: Remove directory. From-SVN: r136534
2008-06-07 20:00:15 +02:00
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
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} m68k/m68k-none.h m68k/m68kelf.h dbxelf.h elfos.h newlib-stdint.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"
;;
MAINTAINERS (mt port): Remove. * MAINTAINERS (mt port): Remove. (sco5, unixware, sco udk): Remove. (Kean Johnston): Add to Write After Approval. fixincludes: * inclhack.def (AAB_svr4_replace_byteorder, AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory, libc1_G_va_list, libc1_ifdefd_memx, nested_motorola, ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime, solaris_mutex_init_1, solaris_socket, solaris_unistd, solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param, ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale, ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc, ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings, ultrix_strings2, ultrix_sys_time, ultrix_unistd, unicosmk_restrict, uw7_byteorder_fix, windiss_math1, windiss_math2, windiss_valist): Remove. * fixincl.x: Regenerate. * mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*, i370-*-openedition, i?86-*-moss*, i?86-*-uwin*, powerpc-*-eabiaix*): Remove. * tests/base/math.h: Update. * tests/base/pthread.h: Update. * tests/base/stdio.h: Update. * tests/base/stdlib.h: Update. * tests/base/string.h: Update. * tests/base/strings.h: Update. * tests/base/sys/file.h: Update. * tests/base/sys/limits.h: Update. * tests/base/sys/socket.h: Update. * tests/base/sys/stat.h: Update. * tests/base/sys/time.h: Update. * tests/base/testing.h: Update. * tests/base/unistd.h: Update. * tests/base/_G_config.h: Remove. * tests/base/arpa: Remove directory. * tests/base/fs: Remove directory. * tests/base/locale.h: Remove. * tests/base/machine: Remove directory. * tests/base/rpc/svc.h: Remove. * tests/base/sys/ioctl.h: Remove. * tests/base/sys/regset.h: Remove. * tests/base/sys/times.h: Remove. * tests/base/sys/utsname.h: Remove. * tests/base/widec.h: Remove. gcc: * config.gcc (Obsolete configurations): Remove list of configurations. (Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*, *-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*. Remove other targets matched by those patterns. (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff, i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove. Make code for Solaris 7 and greater unconditional for Solaris. (ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*): Remove --with-* handling. * config/rs6000/sysv4.h (-mwindiss): Remove from all specs. (LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC, ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC, LINK_OS_WINDISS_SPEC): Remove. * config/rs6000/sysv4.opt (mwindiss): Remove. * configure.ac (strongarm*-*-*, xscale*-*-*): Remove. * configure: Regenerate. * doc/cpp.texi: Don't mention BeOS. * doc/extend.texi (interrupt): Don't mention MS1. * doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv, m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv, alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout, i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4, powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix): Remove. * doc/invoke.texi (MT Options): Remove. (-mwindiss): Remove. (CRIS Options): Remove cris-axis-aout references. (HPPA Options): Don't mention hppa1.1-*-pro. * doc/md.texi: (MorphoTech family): Remove. * libgcc2.c: Don't handle UWIN. * config/alpha/t-unicosmk: Remove. * config/alpha/unicosmk.h: Remove. * config/arm/kaos-arm.h: Remove. * config/arm/kaos-strongarm.h: Remove. * config/arm/strongarm-coff.h: Remove. * config/arm/strongarm-elf.h: Remove. * config/arm/strongarm-pe.h: Remove. * config/arm/t-strongarm-pe: Remove. * config/arm/t-xscale-coff: Remove. * config/arm/t-xscale-elf: Remove. * config/arm/xscale-coff.h: Remove. * config/arm/xscale-elf.h: Remove. * config/chorus.h: Remove. * config/cris/aout.h: Remove. * config/cris/aout.opt: Remove. * config/cris/t-aout: Remove. * config/i386/beos-elf.h: Remove. * config/i386/kaos-i386.h: Remove. * config/i386/ptx4-i.h: Remove. * config/i386/sco5.h: Remove. * config/i386/sco5.opt: Remove. * config/i386/sysv4-cpp.h: Remove. * config/i386/sysv5.h: Remove. * config/i386/t-beos: Remove. * config/i386/t-sco5: Remove. * config/i386/t-uwin: Remove. * config/i386/uwin.asm: Remove. * config/i386/uwin.h: Remove. * config/kaos.h: Remove. * config/mips/windiss.h: Remove. * config/mt: Remove directory. * config/pa/pa-osf.h: Remove. * config/pa/pa-pro-end.h: Remove. * config/pa/t-pro: Remove. * config/ptx4.h: Remove. * config/rs6000/beos.h: Remove. * config/rs6000/kaos-ppc.h: Remove. * config/rs6000/t-beos: Remove. * config/rs6000/windiss.h: Remove. * config/sh/kaos-sh.h: Remove. * config/sol2-6.h: Remove. * config/sparc/sol26-sld.h: Remove. * config/sparc/sysv4-only.h: Remove. * config/vax/bsd.h: Remove. * config/vax/t-memfuncs: Remove. * config/vax/ultrix.h: Remove. * config/vax/vaxv.h: Remove. * config/windiss.h: Remove. gcc/testsuite: * g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*. * g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*. * g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris 7. * gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*, strongarm*-*-* and cris-*-aout*. * gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20030909-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20031108-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20040813-1.c: Don't handle *-*-sysv5*. * gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*. * gcc.dg/arm-scd42-1.c: Use target arm*-*-*. * gcc.dg/arm-scd42-3.c: Use target arm*-*-*. * gcc.dg/cpp/assert4.c: Don't handle BeOS. * gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*. * gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and xscale*-*-elf*. * gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*. * gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1. * gcc.misc-tests/arm-isr.exp: Use target arm*-*-*. * gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-stackalign-1.c: Don't handle powerpc-*-sysv*. * gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*. * lib/target-supports.exp: Don't handle strongarm*-*-elf, xscale*-*-elf and *-*-windiss. * obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*. * gcc.dg/mt-loopi1.c: Remove. gnattools: * configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove. * configure: Regenerate. libcpp: * configure.ac (parisc*64*-*-*): Remove. * configure: Regenerate. libffi: * configure.ac (parisc*-*-linux*, powerpc-*-sysv*, powerpc-*-beos*): Remove. * configure: Regenerate. libgcc: * config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove. libjava: * configure.host (strongarm*-elf, xscale*-elf): Remove. libstdc++-v3: * configure.host (xscale, ep9312, m680[246]0, solaris2.5, solaris2.5.[0-9], solaris2.6, windiss*): Remove. * crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove. * configure: Regenerate. * config/os/solaris/solaris2.5: Remove directory. * config/os/solaris/solaris2.6: Remove directory. * config/os/windiss: Remove directory. From-SVN: r136534
2008-06-07 20:00:15 +02:00
m68k*-*-netbsdelf*)
200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford... gcc/ 200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> Julian Brown <julian@codesourcery.com> * config.gcc (m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*) (m68k-*-uclinux*, m68k-*-linux*, m68k-*-rtems*): Set default_m68k_cpu to the configuration's default CPU. (m68010-*-netbsdelf*, m68k*-*-netbsdelf*, m68k*-*-openbsd*): Likewise. Remove default masks. (m680[012]0-*-*): Set the default with_cpu to the first part of the target name. (m68k*-*-*): Set the default with_cpu to m$default_m68k_cpu. (m68k*-*-linux): Extend the --with-cpu handling to... (m680[012]0-*-*, m68k*-*-*): ...these configurations. Allow m68000 and m68010. Don't set target_cpu_default2. * doc/install.texi: Document --with-cpu for m68k. * config/m68k/m68k.h (OPTION_DEFAULT_SPECS): Define. * config/m68k/m68k-none.h (TARGET_CPU_DEFAULT, M68K_CPU_m68k) (M68K_CPU_m68000, M68K_CPU_m68010, M68K_CPU_m68020, M68K_CPU_m68030) (M68K_CPU_m68040, M68K_CPU_m68302, M68K_CPU_m68332, TARGET_DEFAULT) (ASM_CPU_DEFAULT_SPEC, CC1_CPU_DEFAULT_SPEC): Delete. (ASM_SPEC): Remove use of %(asm_cpu_default). (EXTRA_SPECS, SUBTARGET_EXTRA_SPECS, MULTILIB_DEFAULTS): Delete. * config/m68k/linux.h (TARGET_DEFAULT): Delete. (CPP_SPEC): Merge definitions. Do not handle __HAVE_68881__ here. * config/m68k/netbsd-elf.h (TARGET_OS_CPP_BUILTINS): Define __HAVE_FPU__ if TARGET_HARD_FLOAT. (TARGET_DEFAULT): Delete. (EXTRA_SPECS): Delete cpp_cpu_default_spec, cpp_cpu_spec, cpp_fpu_spec, asm_default_spec and netbsd_cpp_spec. (CPP_CPU_SPEC): Delete. (TARGET_VERSION): Merge definitions, using TARGET_68010 to pick the appropriate string. (CPP_CPU_DEFAULT_SPEC, ASM_DEFAULT_SPEC, CPP_FPU_SPEC): Delete. (CPP_SPEC): Define to NETBSD_CPP_SPEC. (ASM_SPEC): Don't use %(asm_default_spec). * config/m68k/m68k.c (TARGET_DEFAULT_TARGET_FLAGS): Remove TARGET_DEFAULT and add MASK_68881. * config/m68k/m68k.md: Remove mention of TARGET_DEFAULT from comments. Co-Authored-By: Julian Brown <julian@codesourcery.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r120711
2007-01-12 10:28:34 +01:00
default_m68k_cpu=68020
200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> gcc/ 200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (m68010-*-netbsdelf*, m68k*-*-netbsdelf*) (m68k*-*-openbsd*, m68k-*-linux*): Set default_cf_cpu. (m68k-*-aout*, m68k-*-coff*, m68k-*-uclinux*, m68k-*-rtems*): Add m68k/t-mlib to tmake_file. (m68020-*-elf*, m68k-*-elf*): Likewise. Add t-m68kbare as well. (m68k*-*-*): Use --with-arch to pick a default for --with-cpu. (m680[012]0-*-*, m68k*-*-*): Add support for --with-arch. Allow it to be cf or m68k. Set m68k_arch_family. If that variable is not empty, add t-$m68k_arch_family to tmake_file. Add t-mlibs to tmake_file. * doc/install.texi: Document --with-arch=m68k and --with-arch=cf. * config/m68k/t-cf: New file. * config/m68k/t-m68k: Likewise. * config/m68k/t-mlibs: Likewise. * config/m68k/t-m68kbare (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_DIRNAMES, M68K_MLIB_OPTIONS): Define. * config/m68k/t-m68kelf (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS, LIBGCC, INSTALL_LIBGCC): Delete. * config/m68k/t-openbsd (MULTILIB_OPTIONS, LIBGCC): Delete. (INSTALL_LIBGCC): Delete. (M68K_MLIB_DIRNAMES, M68K_MLIB_OPTIONS): Define. * config/m68k/t-rtems (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_CPU): Define. * config/m68k/t-uclinux (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_CPU, M68K_MLIB_OPTIONS, M68K_MLIB_DIRNAMES): Define. Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r121743
2007-02-09 14:47:25 +01:00
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*)
200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford... gcc/ 200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> Julian Brown <julian@codesourcery.com> * config.gcc (m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*) (m68k-*-uclinux*, m68k-*-linux*, m68k-*-rtems*): Set default_m68k_cpu to the configuration's default CPU. (m68010-*-netbsdelf*, m68k*-*-netbsdelf*, m68k*-*-openbsd*): Likewise. Remove default masks. (m680[012]0-*-*): Set the default with_cpu to the first part of the target name. (m68k*-*-*): Set the default with_cpu to m$default_m68k_cpu. (m68k*-*-linux): Extend the --with-cpu handling to... (m680[012]0-*-*, m68k*-*-*): ...these configurations. Allow m68000 and m68010. Don't set target_cpu_default2. * doc/install.texi: Document --with-cpu for m68k. * config/m68k/m68k.h (OPTION_DEFAULT_SPECS): Define. * config/m68k/m68k-none.h (TARGET_CPU_DEFAULT, M68K_CPU_m68k) (M68K_CPU_m68000, M68K_CPU_m68010, M68K_CPU_m68020, M68K_CPU_m68030) (M68K_CPU_m68040, M68K_CPU_m68302, M68K_CPU_m68332, TARGET_DEFAULT) (ASM_CPU_DEFAULT_SPEC, CC1_CPU_DEFAULT_SPEC): Delete. (ASM_SPEC): Remove use of %(asm_cpu_default). (EXTRA_SPECS, SUBTARGET_EXTRA_SPECS, MULTILIB_DEFAULTS): Delete. * config/m68k/linux.h (TARGET_DEFAULT): Delete. (CPP_SPEC): Merge definitions. Do not handle __HAVE_68881__ here. * config/m68k/netbsd-elf.h (TARGET_OS_CPP_BUILTINS): Define __HAVE_FPU__ if TARGET_HARD_FLOAT. (TARGET_DEFAULT): Delete. (EXTRA_SPECS): Delete cpp_cpu_default_spec, cpp_cpu_spec, cpp_fpu_spec, asm_default_spec and netbsd_cpp_spec. (CPP_CPU_SPEC): Delete. (TARGET_VERSION): Merge definitions, using TARGET_68010 to pick the appropriate string. (CPP_CPU_DEFAULT_SPEC, ASM_DEFAULT_SPEC, CPP_FPU_SPEC): Delete. (CPP_SPEC): Define to NETBSD_CPP_SPEC. (ASM_SPEC): Don't use %(asm_default_spec). * config/m68k/m68k.c (TARGET_DEFAULT_TARGET_FLAGS): Remove TARGET_DEFAULT and add MASK_68881. * config/m68k/m68k.md: Remove mention of TARGET_DEFAULT from comments. Co-Authored-By: Julian Brown <julian@codesourcery.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r120711
2007-01-12 10:28:34 +01:00
default_m68k_cpu=68020
200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> gcc/ 200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (m68010-*-netbsdelf*, m68k*-*-netbsdelf*) (m68k*-*-openbsd*, m68k-*-linux*): Set default_cf_cpu. (m68k-*-aout*, m68k-*-coff*, m68k-*-uclinux*, m68k-*-rtems*): Add m68k/t-mlib to tmake_file. (m68020-*-elf*, m68k-*-elf*): Likewise. Add t-m68kbare as well. (m68k*-*-*): Use --with-arch to pick a default for --with-cpu. (m680[012]0-*-*, m68k*-*-*): Add support for --with-arch. Allow it to be cf or m68k. Set m68k_arch_family. If that variable is not empty, add t-$m68k_arch_family to tmake_file. Add t-mlibs to tmake_file. * doc/install.texi: Document --with-arch=m68k and --with-arch=cf. * config/m68k/t-cf: New file. * config/m68k/t-m68k: Likewise. * config/m68k/t-mlibs: Likewise. * config/m68k/t-m68kbare (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_DIRNAMES, M68K_MLIB_OPTIONS): Define. * config/m68k/t-m68kelf (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS, LIBGCC, INSTALL_LIBGCC): Delete. * config/m68k/t-openbsd (MULTILIB_OPTIONS, LIBGCC): Delete. (INSTALL_LIBGCC): Delete. (M68K_MLIB_DIRNAMES, M68K_MLIB_OPTIONS): Define. * config/m68k/t-rtems (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_CPU): Define. * config/m68k/t-uclinux (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_CPU, M68K_MLIB_OPTIONS, M68K_MLIB_DIRNAMES): Define. Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r121743
2007-02-09 14:47:25 +01:00
default_cf_cpu=5475
# needed to unconfuse gdb
200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford... gcc/ 200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> Julian Brown <julian@codesourcery.com> * config.gcc (m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*) (m68k-*-uclinux*, m68k-*-linux*, m68k-*-rtems*): Set default_m68k_cpu to the configuration's default CPU. (m68010-*-netbsdelf*, m68k*-*-netbsdelf*, m68k*-*-openbsd*): Likewise. Remove default masks. (m680[012]0-*-*): Set the default with_cpu to the first part of the target name. (m68k*-*-*): Set the default with_cpu to m$default_m68k_cpu. (m68k*-*-linux): Extend the --with-cpu handling to... (m680[012]0-*-*, m68k*-*-*): ...these configurations. Allow m68000 and m68010. Don't set target_cpu_default2. * doc/install.texi: Document --with-cpu for m68k. * config/m68k/m68k.h (OPTION_DEFAULT_SPECS): Define. * config/m68k/m68k-none.h (TARGET_CPU_DEFAULT, M68K_CPU_m68k) (M68K_CPU_m68000, M68K_CPU_m68010, M68K_CPU_m68020, M68K_CPU_m68030) (M68K_CPU_m68040, M68K_CPU_m68302, M68K_CPU_m68332, TARGET_DEFAULT) (ASM_CPU_DEFAULT_SPEC, CC1_CPU_DEFAULT_SPEC): Delete. (ASM_SPEC): Remove use of %(asm_cpu_default). (EXTRA_SPECS, SUBTARGET_EXTRA_SPECS, MULTILIB_DEFAULTS): Delete. * config/m68k/linux.h (TARGET_DEFAULT): Delete. (CPP_SPEC): Merge definitions. Do not handle __HAVE_68881__ here. * config/m68k/netbsd-elf.h (TARGET_OS_CPP_BUILTINS): Define __HAVE_FPU__ if TARGET_HARD_FLOAT. (TARGET_DEFAULT): Delete. (EXTRA_SPECS): Delete cpp_cpu_default_spec, cpp_cpu_spec, cpp_fpu_spec, asm_default_spec and netbsd_cpp_spec. (CPP_CPU_SPEC): Delete. (TARGET_VERSION): Merge definitions, using TARGET_68010 to pick the appropriate string. (CPP_CPU_DEFAULT_SPEC, ASM_DEFAULT_SPEC, CPP_FPU_SPEC): Delete. (CPP_SPEC): Define to NETBSD_CPP_SPEC. (ASM_SPEC): Don't use %(asm_default_spec). * config/m68k/m68k.c (TARGET_DEFAULT_TARGET_FLAGS): Remove TARGET_DEFAULT and add MASK_68881. * config/m68k/m68k.md: Remove mention of TARGET_DEFAULT from comments. Co-Authored-By: Julian Brown <julian@codesourcery.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r120711
2007-01-12 10:28:34 +01:00
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
200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> gcc/ 200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (m68010-*-netbsdelf*, m68k*-*-netbsdelf*) (m68k*-*-openbsd*, m68k-*-linux*): Set default_cf_cpu. (m68k-*-aout*, m68k-*-coff*, m68k-*-uclinux*, m68k-*-rtems*): Add m68k/t-mlib to tmake_file. (m68020-*-elf*, m68k-*-elf*): Likewise. Add t-m68kbare as well. (m68k*-*-*): Use --with-arch to pick a default for --with-cpu. (m680[012]0-*-*, m68k*-*-*): Add support for --with-arch. Allow it to be cf or m68k. Set m68k_arch_family. If that variable is not empty, add t-$m68k_arch_family to tmake_file. Add t-mlibs to tmake_file. * doc/install.texi: Document --with-arch=m68k and --with-arch=cf. * config/m68k/t-cf: New file. * config/m68k/t-m68k: Likewise. * config/m68k/t-mlibs: Likewise. * config/m68k/t-m68kbare (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_DIRNAMES, M68K_MLIB_OPTIONS): Define. * config/m68k/t-m68kelf (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS, LIBGCC, INSTALL_LIBGCC): Delete. * config/m68k/t-openbsd (MULTILIB_OPTIONS, LIBGCC): Delete. (INSTALL_LIBGCC): Delete. (M68K_MLIB_DIRNAMES, M68K_MLIB_OPTIONS): Define. * config/m68k/t-rtems (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_CPU): Define. * config/m68k/t-uclinux (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_CPU, M68K_MLIB_OPTIONS, M68K_MLIB_DIRNAMES): Define. Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r121743
2007-02-09 14:47:25 +01:00
default_cf_cpu=5206
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} m68k/m68k-none.h m68k/m68kelf.h dbxelf.h elfos.h m68k/uclinux-oldabi.h glibc-stdint.h"
tm_defines="${tm_defines} MOTOROLA=1"
tmake_file="m68k/t-floatlib m68k/t-uclinux"
;;
m68k-*-uclinux*) # Motorola m68k/ColdFire running uClinux
# with uClibc, using the new GNU/Linux-style
# ABI.
200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford... gcc/ 200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> Julian Brown <julian@codesourcery.com> * config.gcc (m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*) (m68k-*-uclinux*, m68k-*-linux*, m68k-*-rtems*): Set default_m68k_cpu to the configuration's default CPU. (m68010-*-netbsdelf*, m68k*-*-netbsdelf*, m68k*-*-openbsd*): Likewise. Remove default masks. (m680[012]0-*-*): Set the default with_cpu to the first part of the target name. (m68k*-*-*): Set the default with_cpu to m$default_m68k_cpu. (m68k*-*-linux): Extend the --with-cpu handling to... (m680[012]0-*-*, m68k*-*-*): ...these configurations. Allow m68000 and m68010. Don't set target_cpu_default2. * doc/install.texi: Document --with-cpu for m68k. * config/m68k/m68k.h (OPTION_DEFAULT_SPECS): Define. * config/m68k/m68k-none.h (TARGET_CPU_DEFAULT, M68K_CPU_m68k) (M68K_CPU_m68000, M68K_CPU_m68010, M68K_CPU_m68020, M68K_CPU_m68030) (M68K_CPU_m68040, M68K_CPU_m68302, M68K_CPU_m68332, TARGET_DEFAULT) (ASM_CPU_DEFAULT_SPEC, CC1_CPU_DEFAULT_SPEC): Delete. (ASM_SPEC): Remove use of %(asm_cpu_default). (EXTRA_SPECS, SUBTARGET_EXTRA_SPECS, MULTILIB_DEFAULTS): Delete. * config/m68k/linux.h (TARGET_DEFAULT): Delete. (CPP_SPEC): Merge definitions. Do not handle __HAVE_68881__ here. * config/m68k/netbsd-elf.h (TARGET_OS_CPP_BUILTINS): Define __HAVE_FPU__ if TARGET_HARD_FLOAT. (TARGET_DEFAULT): Delete. (EXTRA_SPECS): Delete cpp_cpu_default_spec, cpp_cpu_spec, cpp_fpu_spec, asm_default_spec and netbsd_cpp_spec. (CPP_CPU_SPEC): Delete. (TARGET_VERSION): Merge definitions, using TARGET_68010 to pick the appropriate string. (CPP_CPU_DEFAULT_SPEC, ASM_DEFAULT_SPEC, CPP_FPU_SPEC): Delete. (CPP_SPEC): Define to NETBSD_CPP_SPEC. (ASM_SPEC): Don't use %(asm_default_spec). * config/m68k/m68k.c (TARGET_DEFAULT_TARGET_FLAGS): Remove TARGET_DEFAULT and add MASK_68881. * config/m68k/m68k.md: Remove mention of TARGET_DEFAULT from comments. Co-Authored-By: Julian Brown <julian@codesourcery.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r120711
2007-01-12 10:28:34 +01:00
default_m68k_cpu=68020
200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> gcc/ 200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (m68010-*-netbsdelf*, m68k*-*-netbsdelf*) (m68k*-*-openbsd*, m68k-*-linux*): Set default_cf_cpu. (m68k-*-aout*, m68k-*-coff*, m68k-*-uclinux*, m68k-*-rtems*): Add m68k/t-mlib to tmake_file. (m68020-*-elf*, m68k-*-elf*): Likewise. Add t-m68kbare as well. (m68k*-*-*): Use --with-arch to pick a default for --with-cpu. (m680[012]0-*-*, m68k*-*-*): Add support for --with-arch. Allow it to be cf or m68k. Set m68k_arch_family. If that variable is not empty, add t-$m68k_arch_family to tmake_file. Add t-mlibs to tmake_file. * doc/install.texi: Document --with-arch=m68k and --with-arch=cf. * config/m68k/t-cf: New file. * config/m68k/t-m68k: Likewise. * config/m68k/t-mlibs: Likewise. * config/m68k/t-m68kbare (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_DIRNAMES, M68K_MLIB_OPTIONS): Define. * config/m68k/t-m68kelf (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS, LIBGCC, INSTALL_LIBGCC): Delete. * config/m68k/t-openbsd (MULTILIB_OPTIONS, LIBGCC): Delete. (INSTALL_LIBGCC): Delete. (M68K_MLIB_DIRNAMES, M68K_MLIB_OPTIONS): Define. * config/m68k/t-rtems (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_CPU): Define. * config/m68k/t-uclinux (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_CPU, M68K_MLIB_OPTIONS, M68K_MLIB_DIRNAMES): Define. Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r121743
2007-02-09 14:47:25 +01:00
default_cf_cpu=5206
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h svr4.h linux.h glibc-stdint.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"
200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> gcc/ 200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (m68010-*-netbsdelf*, m68k*-*-netbsdelf*) (m68k*-*-openbsd*, m68k-*-linux*): Set default_cf_cpu. (m68k-*-aout*, m68k-*-coff*, m68k-*-uclinux*, m68k-*-rtems*): Add m68k/t-mlib to tmake_file. (m68020-*-elf*, m68k-*-elf*): Likewise. Add t-m68kbare as well. (m68k*-*-*): Use --with-arch to pick a default for --with-cpu. (m680[012]0-*-*, m68k*-*-*): Add support for --with-arch. Allow it to be cf or m68k. Set m68k_arch_family. If that variable is not empty, add t-$m68k_arch_family to tmake_file. Add t-mlibs to tmake_file. * doc/install.texi: Document --with-arch=m68k and --with-arch=cf. * config/m68k/t-cf: New file. * config/m68k/t-m68k: Likewise. * config/m68k/t-mlibs: Likewise. * config/m68k/t-m68kbare (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_DIRNAMES, M68K_MLIB_OPTIONS): Define. * config/m68k/t-m68kelf (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS, LIBGCC, INSTALL_LIBGCC): Delete. * config/m68k/t-openbsd (MULTILIB_OPTIONS, LIBGCC): Delete. (INSTALL_LIBGCC): Delete. (M68K_MLIB_DIRNAMES, M68K_MLIB_OPTIONS): Define. * config/m68k/t-rtems (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_CPU): Define. * config/m68k/t-uclinux (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_CPU, M68K_MLIB_OPTIONS, M68K_MLIB_DIRNAMES): Define. Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r121743
2007-02-09 14:47:25 +01:00
tmake_file="m68k/t-floatlib m68k/t-uclinux m68k/t-mlibs"
;;
m68k-*-linux*) # Motorola m68k's running GNU/Linux
# with ELF format using glibc 2
# aka the GNU/Linux C library 6.
200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford... gcc/ 200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> Julian Brown <julian@codesourcery.com> * config.gcc (m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*) (m68k-*-uclinux*, m68k-*-linux*, m68k-*-rtems*): Set default_m68k_cpu to the configuration's default CPU. (m68010-*-netbsdelf*, m68k*-*-netbsdelf*, m68k*-*-openbsd*): Likewise. Remove default masks. (m680[012]0-*-*): Set the default with_cpu to the first part of the target name. (m68k*-*-*): Set the default with_cpu to m$default_m68k_cpu. (m68k*-*-linux): Extend the --with-cpu handling to... (m680[012]0-*-*, m68k*-*-*): ...these configurations. Allow m68000 and m68010. Don't set target_cpu_default2. * doc/install.texi: Document --with-cpu for m68k. * config/m68k/m68k.h (OPTION_DEFAULT_SPECS): Define. * config/m68k/m68k-none.h (TARGET_CPU_DEFAULT, M68K_CPU_m68k) (M68K_CPU_m68000, M68K_CPU_m68010, M68K_CPU_m68020, M68K_CPU_m68030) (M68K_CPU_m68040, M68K_CPU_m68302, M68K_CPU_m68332, TARGET_DEFAULT) (ASM_CPU_DEFAULT_SPEC, CC1_CPU_DEFAULT_SPEC): Delete. (ASM_SPEC): Remove use of %(asm_cpu_default). (EXTRA_SPECS, SUBTARGET_EXTRA_SPECS, MULTILIB_DEFAULTS): Delete. * config/m68k/linux.h (TARGET_DEFAULT): Delete. (CPP_SPEC): Merge definitions. Do not handle __HAVE_68881__ here. * config/m68k/netbsd-elf.h (TARGET_OS_CPP_BUILTINS): Define __HAVE_FPU__ if TARGET_HARD_FLOAT. (TARGET_DEFAULT): Delete. (EXTRA_SPECS): Delete cpp_cpu_default_spec, cpp_cpu_spec, cpp_fpu_spec, asm_default_spec and netbsd_cpp_spec. (CPP_CPU_SPEC): Delete. (TARGET_VERSION): Merge definitions, using TARGET_68010 to pick the appropriate string. (CPP_CPU_DEFAULT_SPEC, ASM_DEFAULT_SPEC, CPP_FPU_SPEC): Delete. (CPP_SPEC): Define to NETBSD_CPP_SPEC. (ASM_SPEC): Don't use %(asm_default_spec). * config/m68k/m68k.c (TARGET_DEFAULT_TARGET_FLAGS): Remove TARGET_DEFAULT and add MASK_68881. * config/m68k/m68k.md: Remove mention of TARGET_DEFAULT from comments. Co-Authored-By: Julian Brown <julian@codesourcery.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r120711
2007-01-12 10:28:34 +01:00
default_m68k_cpu=68020
200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> gcc/ 200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (m68010-*-netbsdelf*, m68k*-*-netbsdelf*) (m68k*-*-openbsd*, m68k-*-linux*): Set default_cf_cpu. (m68k-*-aout*, m68k-*-coff*, m68k-*-uclinux*, m68k-*-rtems*): Add m68k/t-mlib to tmake_file. (m68020-*-elf*, m68k-*-elf*): Likewise. Add t-m68kbare as well. (m68k*-*-*): Use --with-arch to pick a default for --with-cpu. (m680[012]0-*-*, m68k*-*-*): Add support for --with-arch. Allow it to be cf or m68k. Set m68k_arch_family. If that variable is not empty, add t-$m68k_arch_family to tmake_file. Add t-mlibs to tmake_file. * doc/install.texi: Document --with-arch=m68k and --with-arch=cf. * config/m68k/t-cf: New file. * config/m68k/t-m68k: Likewise. * config/m68k/t-mlibs: Likewise. * config/m68k/t-m68kbare (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_DIRNAMES, M68K_MLIB_OPTIONS): Define. * config/m68k/t-m68kelf (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS, LIBGCC, INSTALL_LIBGCC): Delete. * config/m68k/t-openbsd (MULTILIB_OPTIONS, LIBGCC): Delete. (INSTALL_LIBGCC): Delete. (M68K_MLIB_DIRNAMES, M68K_MLIB_OPTIONS): Define. * config/m68k/t-rtems (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_CPU): Define. * config/m68k/t-uclinux (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_CPU, M68K_MLIB_OPTIONS, M68K_MLIB_DIRNAMES): Define. Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r121743
2007-02-09 14:47:25 +01:00
default_cf_cpu=5475
with_arch=${with_arch:-m68k}
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h svr4.h linux.h glibc-stdint.h m68k/linux.h ./sysroot-suffix.h"
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
;;
config.gcc: Remove all stanzas for previously obsoleted systems. * config.gcc: Remove all stanzas for previously obsoleted systems. Where necessary, add explicit error stanzas to prevent removed systems from being misidentified as something else. Begin a fresh obsoletions list, with the systems that were reprieved last round. * doc/install.texi: Remove all mention of dead targets. * fixinc/mkfixinc.sh: Likewise. * config/arm/arm.h: Bit 31 of target_flags is no longer reserved. * config/1750a/1750a-protos.h, config/1750a/1750a.c, config/1750a/1750a.h, config/1750a/1750a.md, config/1750a/ms1750.inc, config/a29k/a29k-protos.h, config/a29k/a29k.c, config/a29k/a29k.h, config/a29k/a29k.md, config/a29k/rtems.h, config/a29k/t-a29kbare, config/a29k/t-vx29k, config/a29k/unix.h, config/a29k/vx29k.h, config/alpha/osf12.h, config/alpha/osf2or3.h, config/arm/arm-wince-pe.h, config/arm/arm.h, config/arm/riscix.h, config/arm/riscix1-1.h, config/arm/rix-gas.h, config/arm/t-riscix, config/clipper/clipper-protos.h, config/clipper/clipper.c, config/clipper/clipper.h, config/clipper/clipper.md, config/clipper/clix.h, config/convex/convex-protos.h, config/convex/convex.c, config/convex/convex.h, config/convex/convex.md, config/convex/fixinc.convex, config/convex/proto.h, config/elxsi/elxsi-protos.h, config/elxsi/elxsi.c, config/elxsi/elxsi.h, config/elxsi/elxsi.md, config/i386/386bsd.h, config/i386/aix386.h, config/i386/aix386ng.h, config/i386/bsd386.h, config/i386/dgux.h, config/i386/djgpp-rtems.h, config/i386/isc.h, config/i386/iscdbx.h, config/i386/linux-oldld.h, config/i386/next.h, config/i386/osf1-ci.asm, config/i386/osf1-cn.asm, config/i386/osf1elf.h, config/i386/osf1elfgdb.h, config/i386/osfelf.h, config/i386/osfrose.h, config/i386/rtems.h, config/i386/seq-gas.h, config/i386/seq-sysv3.h, config/i386/seq2-sysv3.h, config/i386/sequent.h, config/i386/sun.h, config/i386/sun386.h, config/i386/t-dgux, config/i386/t-next, config/i386/t-osf, config/i386/t-osf1elf, config/i860/bsd-gas.h, config/i860/bsd.h, config/i860/fx2800.h, config/i860/i860-protos.h, config/i860/i860.c, config/i860/i860.h, config/i860/i860.md, config/i860/mach.h, config/i860/paragon.h, config/i860/sysv3.h, config/i860/sysv4.h, config/i860/t-fx2800, config/i860/varargs.asm, config/m68k/a-ux.h, config/m68k/altos3068.h, config/m68k/apollo68.h, config/m68k/aux-crt1.c, config/m68k/aux-crt2.asm, config/m68k/aux-crtn.asm, config/m68k/aux-exit.c, config/m68k/aux-low.gld, config/m68k/aux-mcount.c, config/m68k/auxas.h, config/m68k/auxgas.h, config/m68k/auxgld.h, config/m68k/auxld.h, config/m68k/ctix.h, config/m68k/dpx2.h, config/m68k/dpx2.ifile, config/m68k/dpx2cdbx.h, config/m68k/dpx2g.h, config/m68k/isi-nfp.h, config/m68k/isi.h, config/m68k/lynx-ng.h, config/m68k/lynx.h, config/m68k/math-3300.h, config/m68k/news.h, config/m68k/news3.h, config/m68k/news3gas.h, config/m68k/newsgas.h, config/m68k/next.h, config/m68k/next21.h, config/m68k/rtems.h, config/m68k/t-aux, config/m68k/t-lynx, config/m68k/t-next, config/m68k/x-next, config/m88k/dgux.h, config/m88k/dgux.ld, config/m88k/dguxbcs.h, config/m88k/dolph.h, config/m88k/dolphin.ld, config/m88k/luna.h, config/m88k/m88k-coff.h, config/m88k/sysv3.h, config/m88k/t-bug, config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs, config/m88k/t-dolph, config/m88k/t-m88k-gas, config/m88k/t-tekXD88, config/m88k/tekXD88.h, config/m88k/tekXD88.ld, config/mips/bsd-4.h, config/mips/bsd-5.h, config/mips/dec-bsd.h, config/mips/dec-osf1.h, config/mips/elflorion.h, config/mips/iris4loser.h, config/mips/mips-5.h, config/mips/news4.h, config/mips/news5.h, config/mips/nws3250v4.h, config/mips/osfrose.h, config/mips/svr3-4.h, config/mips/svr3-5.h, config/mips/svr4-4.h, config/mips/svr4-5.h, config/mips/svr4-t.h, config/mips/t-bsd, config/mips/t-bsd-gas, config/mips/t-svr3, config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas, config/mips/t-ultrix, config/mips/ultrix.h, config/nextstep-protos.h, config/nextstep.c, config/nextstep.h, config/nextstep21.h, config/ns32k/encore.h, config/ns32k/merlin.h, config/ns32k/pc532-mach.h, config/ns32k/pc532-min.h, config/ns32k/pc532.h, config/ns32k/sequent.h, config/ns32k/tek6000.h, config/ns32k/tek6100.h, config/ns32k/tek6200.h, config/pj/lib1funcs.S, config/pj/linux.h, config/pj/pj-protos.h, config/pj/pj.c, config/pj/pj.h, config/pj/pj.md, config/pj/pjl.h, config/pj/t-pj, config/sparc/rtems.h, config/we32k/we32k-protos.h, config/we32k/we32k.c, config/we32k/we32k.h, config/we32k/we32k.md: Delete file. From-SVN: r53862
2002-05-25 04:10:46 +02:00
m68k-*-rtems*)
200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford... gcc/ 200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> Julian Brown <julian@codesourcery.com> * config.gcc (m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*) (m68k-*-uclinux*, m68k-*-linux*, m68k-*-rtems*): Set default_m68k_cpu to the configuration's default CPU. (m68010-*-netbsdelf*, m68k*-*-netbsdelf*, m68k*-*-openbsd*): Likewise. Remove default masks. (m680[012]0-*-*): Set the default with_cpu to the first part of the target name. (m68k*-*-*): Set the default with_cpu to m$default_m68k_cpu. (m68k*-*-linux): Extend the --with-cpu handling to... (m680[012]0-*-*, m68k*-*-*): ...these configurations. Allow m68000 and m68010. Don't set target_cpu_default2. * doc/install.texi: Document --with-cpu for m68k. * config/m68k/m68k.h (OPTION_DEFAULT_SPECS): Define. * config/m68k/m68k-none.h (TARGET_CPU_DEFAULT, M68K_CPU_m68k) (M68K_CPU_m68000, M68K_CPU_m68010, M68K_CPU_m68020, M68K_CPU_m68030) (M68K_CPU_m68040, M68K_CPU_m68302, M68K_CPU_m68332, TARGET_DEFAULT) (ASM_CPU_DEFAULT_SPEC, CC1_CPU_DEFAULT_SPEC): Delete. (ASM_SPEC): Remove use of %(asm_cpu_default). (EXTRA_SPECS, SUBTARGET_EXTRA_SPECS, MULTILIB_DEFAULTS): Delete. * config/m68k/linux.h (TARGET_DEFAULT): Delete. (CPP_SPEC): Merge definitions. Do not handle __HAVE_68881__ here. * config/m68k/netbsd-elf.h (TARGET_OS_CPP_BUILTINS): Define __HAVE_FPU__ if TARGET_HARD_FLOAT. (TARGET_DEFAULT): Delete. (EXTRA_SPECS): Delete cpp_cpu_default_spec, cpp_cpu_spec, cpp_fpu_spec, asm_default_spec and netbsd_cpp_spec. (CPP_CPU_SPEC): Delete. (TARGET_VERSION): Merge definitions, using TARGET_68010 to pick the appropriate string. (CPP_CPU_DEFAULT_SPEC, ASM_DEFAULT_SPEC, CPP_FPU_SPEC): Delete. (CPP_SPEC): Define to NETBSD_CPP_SPEC. (ASM_SPEC): Don't use %(asm_default_spec). * config/m68k/m68k.c (TARGET_DEFAULT_TARGET_FLAGS): Remove TARGET_DEFAULT and add MASK_68881. * config/m68k/m68k.md: Remove mention of TARGET_DEFAULT from comments. Co-Authored-By: Julian Brown <julian@codesourcery.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r120711
2007-01-12 10:28:34 +01:00
default_m68k_cpu=68020
200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> gcc/ 200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (m68010-*-netbsdelf*, m68k*-*-netbsdelf*) (m68k*-*-openbsd*, m68k-*-linux*): Set default_cf_cpu. (m68k-*-aout*, m68k-*-coff*, m68k-*-uclinux*, m68k-*-rtems*): Add m68k/t-mlib to tmake_file. (m68020-*-elf*, m68k-*-elf*): Likewise. Add t-m68kbare as well. (m68k*-*-*): Use --with-arch to pick a default for --with-cpu. (m680[012]0-*-*, m68k*-*-*): Add support for --with-arch. Allow it to be cf or m68k. Set m68k_arch_family. If that variable is not empty, add t-$m68k_arch_family to tmake_file. Add t-mlibs to tmake_file. * doc/install.texi: Document --with-arch=m68k and --with-arch=cf. * config/m68k/t-cf: New file. * config/m68k/t-m68k: Likewise. * config/m68k/t-mlibs: Likewise. * config/m68k/t-m68kbare (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_DIRNAMES, M68K_MLIB_OPTIONS): Define. * config/m68k/t-m68kelf (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS, LIBGCC, INSTALL_LIBGCC): Delete. * config/m68k/t-openbsd (MULTILIB_OPTIONS, LIBGCC): Delete. (INSTALL_LIBGCC): Delete. (M68K_MLIB_DIRNAMES, M68K_MLIB_OPTIONS): Define. * config/m68k/t-rtems (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_CPU): Define. * config/m68k/t-uclinux (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_CPU, M68K_MLIB_OPTIONS, M68K_MLIB_DIRNAMES): Define. Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r121743
2007-02-09 14:47:25 +01:00
default_cf_cpu=5206
tmake_file="m68k/t-floatlib m68k/t-m68kbare m68k/t-crtstuff t-rtems m68k/t-rtems m68k/t-mlibs"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
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)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h svr4.h newlib-stdint.h ${tm_file} mcore/mcore-elf.h"
tmake_file=mcore/t-mcore
inhibit_libc=true
;;
mcore-*-pe*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="svr3.h dbxcoff.h newlib-stdint.h ${tm_file} mcore/mcore-pe.h"
tmake_file=mcore/t-mcore-pe
inhibit_libc=true
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
;;
mep-*-*)
tm_file="dbxelf.h elfos.h svr4.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" &&
test "x$with_headers" = x; then
with_headers=yes
fi
use_gcc_stdint=wrap
;;
configure.ac (mips*-*-*): Print an error if not using GAS. * configure.ac (mips*-*-*): Print an error if not using GAS. * configure: Regenerated. * doc/install.texi: Remove irix5 bullet from --with-gnu-as. Remove comments about buggy MIPSpro assemblers. * config.gcc (mips-sgi-irix[56]*): Combine stanzas. Include elfos.h before mips.h and iris.h after it. Use t-iris and t-slibgcc-irix. Use iris5.h only for IRIX 5 configs. Use iris6.h and t-iris6 for IRIX 6 configs. Define IRIX_USING_GNU_LD if using GNU ld. * config/mips/iris5.h (TARGET_IRIX, SWITCHES_NEED_SPACES) (DEFAULT_SIGNED_CHAR, WORD_SWITCH_TAKES_ARG, SUBTARGET_CC1_SPEC) (NO_IMPLICIT_EXTERN_C, MIPS_DEFAULT_GVALUE) (TARGET_ASM_EXTERNAL_LIBCALL): Move to iris.h. (WCHAR_TYPE, WCHAR_TYPE_SIZE, TARGET_OS_CPP_BUILTINS): Delete in favor of more general IRIX 6 definitions. (OBJECT_FORMAT_ELF, ASM_OUTPUT_ASCII, ASM_WEAKEN_LABEL) (HANDLE_SYSV_PRAGMA): Delete in favor of elfos.h definitions. (TARGET_IRIX5, ABICALLS_ASM_OP, BSS_SECTION_ASM_OP, HAS_INIT_SECTION) (LD_INIT_SWITCH, LD_FINI_SWITCH, SUBTARGET_ASM_OPTIMIZING_SPEC) (ASM_FINAL_SPEC, DBX_DEBUGGING_INFO, MIPS_DEBUGGING_INFO) (PREFERRED_DEBUGGING_TYPE, DWARF2_UNWIND_INFO, SET_FILE_NUMBER) (LABEL_AFTER_LOC, DOLLARS_IN_IDENTIFIERS, NO_DOLLAR_IN_LABEL) (TARGET_ASM_NAMED_SECTION, EXTRA_SECTION_FUNCTIONS) (ASM_DECLARE_FUNCTION_SIZE, ASM_OUTPUT_WEAK_ALIAS) (SUBTARGET_EXTRA_SPECS): Delete definitions or undefs. (LINK_SPEC): Move most of definition to iris.h. (SUBTARGET_LINK_SPEC): New macro. (IRIX_STARTFILE_SPEC): Fold into... (STARTFILE_SPEC): ...here. (IRIX_ENDFILE_SPEC): Fold into... (ENDFILE_SPEC): ...here. * config/mips/iris6.h (TARGET_IRIX5): Remove override. (WCHAR_TYPE, WCHAR_TYPE_SIZE, WINT_TYPE, WINT_TYPE_SIZE) (DWARF_OFFSET_SIZE, DWARF_INITIAL_LENGTH_SIZE, SET_ASM_OP) (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES, ASM_DECLARE_OBJECT_NAME) (ASM_FINISH_DECLARE_OBJECT, LOCAL_LABEL_PREFIX): Move to iris.h. (TARGET_OS_CPP_BUILTINS): Likewise. Guard IRIX6-specific bits. (DWARF2_UNWIND_INFO, DWARF2_GENERATE_TEXT_SECTION_LABEL) (SUBTARGET_CPP_SPEC, DWARF2_DEBUGGING_INFO, MIPS_DEBUGGING_INFO) (PREFERRED_DEBUGGING_TYPE, DWARF2_FRAME_INFO, MD_EXEC_PREFIX) (ASM_DECLARE_FUNCTION_NAME, ASM_DECLARE_FUNCTION_SIZE) (FUNCTION_NAME_ALREADY_DECLARED, SUPPORTS_INIT_PRIORITY) (POPSECTION_ASM_OP, SUBTARGET_ASM_SPEC, SUBTARGET_MIPS_AS_ASM_SPEC) (SUBTARGET_ASM_DEBUGGING_SPEC, SUBTARGET_ASM_OPTIMIZING_SPEC) (BSS_SECTION_ASM_OP*, READONLY_DATA_SECTION_ASM_OP*) (EH_FRAME_SECTION_NAME, MUST_USE_SJLJ_EXCEPTIONS, CTORS_SECTION_ASM_OP) (DTORS_SECTION_ASM_OP, TARGET_ASM_NAMED_SECTION, EH_FRAME_SECTION_NAME) (ASM_OUTPUT_ALIGN, ASM_OUTPUT_FILENAME, ASM_OUTPUT_ALIGNED_LOCAL) (ASM_OUTPUT_ALIGNED_BSS): Remove definitions or undefs. (TARGET_IRIX6): Define to 1. (DRIVER_SELF_SPECS): Define. (DWARF2_FRAME_INFO): Define to 1 rather than !TARGET_SGI_O32_AS. (SUBTARGET_CC1_SPEC): Remove in favor of DRIVER_SELF_SPECS. (SUBTARGET_LINK_SPEC): New macro. (IRIX_STARTFILE_SPEC): Fold into... (STARTFILE_SPEC): ...here. Remove !mabi=* case. (SUBTARGET_{,DONT_}WARN_UNUSED_SPEC): New macros. (LIB_SPEC, LIBGCC_SPEC): Use them. (LIB_SPEC): Remove !mabi=* case. (IRIX_ENDFILE_SPEC): Fold into... (ENDFILE_SPEC): ...here. Remove !mabi=* case. * config/mips/mips-protos.h (irix_output_external_libcall): Delete. * config/mips/mips.h (TARGET_IRIX5, TARGET_SGI_O32_AS): Delete. (TARGET_IRIX6): New macro. (ASM_ABI_DEFAULT_SPEC): Remove !ELF definition. (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX, SET_FILE_NUMBER) (LABEL_AFTER_LOC): Delete. * config/mips/mips.c (TARGET_ASM_FILE_START, TARGET_ASM_FILE_END) (TARGET_SECTION_TYPE_FLAGS): Remove TARGET_IRIX versions. (mips_build_builtin_va_list): Check TARGET_IRIX6. (override_options): Remove TARGET_SGI_O32_AS-related code. (irix_output_external_libcall): Make static. (mips_output_filename): Avoid use of SET_FILE_NUMBER and LABEL_AFTER_LOC. (mips_file_start): Tidy guard for ABI sections. Remove use of ABICALLS_ASM_OP; use .abicalls instead. (mips_output_aligned_decl_common, mips_declare_object_name) (mips_finish_declare_object): Remove use of TARGET_SGI_O32_AS. (mips_output_function_prologue): Set TREE_ASM_WRITTEN if emitting .globl foo .text directives. (irix_asm_named_section_1, irix_asm_named_section) (irix_section_align_entry, irix_section_align_htab) (irix_orig_asm_out_file, irix_section_align_entry_eq) (irix_section_align_entry_hash, irix_asm_output_align) (irix_file_start, irix_section_align_1, copy_file_data) (irix_file_end, irix_section_type_flags): Delete. * config/mips/irix-crti.asm (__gcc_init): Move to .gcc_init section. Use standard section syntax. Remove protective "jr $31". (__gcc_fini): Likewise .gcc_fini. * config/mips/irix-crtn.asm: Adjust sections accordingly. * config/mips/sdb.h (PUT_SDB_SIZE, PUT_SDB_TYPE): Moved from iris5gas.h. * config/mips/t-iris (irix-crti.o, irix-crtn.o): New rules, moved from t-irix-gld. (EXTRA_MULTILIB_PARTS): Define. * config/mips/t-iris6: Remove bogus comment. (EXTRA_MULTILIB_PARTS, CRTSTUFF_T_CFLAGS): Delete. * config/mips/iris5gas.h, config/mips/iris5gld.h, config/mips/iris6gas.h, config/mips/iris6gld.h, config/mips/t-iris5-as, config/mips/t-iris5-gas config/mips/t-irix-gld: Delete. * config/mips/iris.h: New file. * config/mips/t-slibgcc-irix: Renamed from t-iris5-6. From-SVN: r86309
2004-08-20 12:21:02 +02:00
mips-sgi-irix[56]*)
tm_file="elfos.h ${tm_file} mips/iris.h"
tmake_file="mips/t-iris mips/t-slibgcc-irix"
config.gcc (mips-*-*): Remove definitions of MASK_GAS and OBJECT_FORMAT_ELF. * config.gcc (mips-*-*): Remove definitions of MASK_GAS and OBJECT_FORMAT_ELF. Set MASK_SPLIT_ADDR by default if using GNU ld. * config/mips/mips.h (MASK_GAS): Delete. Shuffle later masks down. (TARGET_GAS, TARGET_MIPS_AS): Delete. (TARGET_GPWORD): Define to true for n32 on IRIX. (TARGET_SWITCHES): Remove -mmips-as. Turn -mgas into a no-op. (MIPS_AS_ASM_SPEC, SUBTARGET_MIPS_AS_ASM_SPEC): Delete. (GAS_ASM_SPEC): Delete, folding into ASM_SPEC. (ASM_ABI_DEFAULT_SPEC, TARGET_ASM_SPEC): Delete. (MDEBUG_ASM_SPEC): Delete, folding into... (SUBTARGET_ASM_DEBUGGING_SPEC): ...here. (ASM_SPEC): Inline old GAS_ASM_SPEC. Use GNU names for ABI switches. (EXTRA_SPECS): Remove mips_as_asm_spec, gas_asm_spec, target_asm_spec, subtarget_mips_as_asm_spec, mdebug_asm_spec. Use MULTILIB_ABI_DEFAULT to define asm_abi_default_spec. (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP): Delete. (TARGET_ASM_SELECT_SECTION): Delete. * config/mips/mips.c (MIPS_MAX_FIRST_STACK_STEP): Define to 0x7ff0 for non-mips16 code, removing previous workaround for SGI assemblers. (TARGET_ASM_INTEGER, mips_assemble_integer): Delete. (TARGET_ASM_ALIGNED_DI_OP): Define this instead. (override_options): Remove !TARGET_GAS and !have_named_sections code. (print_operand): Fold TARGET_GAS conditionals into asm strings. (mips_output_filename): Remove !TARGET_GAS code. Replace use of ASM_STABS_OP and ASM_STABN_OP. (mips_file_start): Remove TARGET_MIPS_AS/TARGET_GAS checks. (mips_output_aligned_decl_common): Remove mention of SGI o32 assembler. (mips_output_function_prologue): Remove !TARGET_GAS code. (mips_select_rtx_section): Remove !have_named_sections code. (mips_select_section): Delete. * config/mips/mips.md (trap): Remove !TARGET_GAS check. * config/mips/linux.h (TARGET_DEFAULT): Remove use of MASK_GAS. * config/mips/sdb.h (PUT_SDB_DEF, PUT_SDB_PLAIN_DEF): Delete. (PUT_SDB_BLOCK_START, PUT_SDB_BLOCK_END): Fold TARGET_GAS conditional. * config/mips/vxworks.h (ASM_SPEC): As for mips.h. * config/mips/windiss.h (ASM_SPEC): Likewise. testsuite/ * gcc.dg/special/mips-abi.exp: Expect gcc to pass the GNU ABI flags to the assembler. Simplify test accordingly. (asm_abi_flags): Use GNU names. (check_mips_abi, default_abi): Use string matches against "-mabi=*" to check for ABI flags. From-SVN: r86405
2004-08-23 08:53:46 +02:00
target_cpu_default="MASK_ABICALLS"
configure.ac (mips*-*-*): Print an error if not using GAS. * configure.ac (mips*-*-*): Print an error if not using GAS. * configure: Regenerated. * doc/install.texi: Remove irix5 bullet from --with-gnu-as. Remove comments about buggy MIPSpro assemblers. * config.gcc (mips-sgi-irix[56]*): Combine stanzas. Include elfos.h before mips.h and iris.h after it. Use t-iris and t-slibgcc-irix. Use iris5.h only for IRIX 5 configs. Use iris6.h and t-iris6 for IRIX 6 configs. Define IRIX_USING_GNU_LD if using GNU ld. * config/mips/iris5.h (TARGET_IRIX, SWITCHES_NEED_SPACES) (DEFAULT_SIGNED_CHAR, WORD_SWITCH_TAKES_ARG, SUBTARGET_CC1_SPEC) (NO_IMPLICIT_EXTERN_C, MIPS_DEFAULT_GVALUE) (TARGET_ASM_EXTERNAL_LIBCALL): Move to iris.h. (WCHAR_TYPE, WCHAR_TYPE_SIZE, TARGET_OS_CPP_BUILTINS): Delete in favor of more general IRIX 6 definitions. (OBJECT_FORMAT_ELF, ASM_OUTPUT_ASCII, ASM_WEAKEN_LABEL) (HANDLE_SYSV_PRAGMA): Delete in favor of elfos.h definitions. (TARGET_IRIX5, ABICALLS_ASM_OP, BSS_SECTION_ASM_OP, HAS_INIT_SECTION) (LD_INIT_SWITCH, LD_FINI_SWITCH, SUBTARGET_ASM_OPTIMIZING_SPEC) (ASM_FINAL_SPEC, DBX_DEBUGGING_INFO, MIPS_DEBUGGING_INFO) (PREFERRED_DEBUGGING_TYPE, DWARF2_UNWIND_INFO, SET_FILE_NUMBER) (LABEL_AFTER_LOC, DOLLARS_IN_IDENTIFIERS, NO_DOLLAR_IN_LABEL) (TARGET_ASM_NAMED_SECTION, EXTRA_SECTION_FUNCTIONS) (ASM_DECLARE_FUNCTION_SIZE, ASM_OUTPUT_WEAK_ALIAS) (SUBTARGET_EXTRA_SPECS): Delete definitions or undefs. (LINK_SPEC): Move most of definition to iris.h. (SUBTARGET_LINK_SPEC): New macro. (IRIX_STARTFILE_SPEC): Fold into... (STARTFILE_SPEC): ...here. (IRIX_ENDFILE_SPEC): Fold into... (ENDFILE_SPEC): ...here. * config/mips/iris6.h (TARGET_IRIX5): Remove override. (WCHAR_TYPE, WCHAR_TYPE_SIZE, WINT_TYPE, WINT_TYPE_SIZE) (DWARF_OFFSET_SIZE, DWARF_INITIAL_LENGTH_SIZE, SET_ASM_OP) (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES, ASM_DECLARE_OBJECT_NAME) (ASM_FINISH_DECLARE_OBJECT, LOCAL_LABEL_PREFIX): Move to iris.h. (TARGET_OS_CPP_BUILTINS): Likewise. Guard IRIX6-specific bits. (DWARF2_UNWIND_INFO, DWARF2_GENERATE_TEXT_SECTION_LABEL) (SUBTARGET_CPP_SPEC, DWARF2_DEBUGGING_INFO, MIPS_DEBUGGING_INFO) (PREFERRED_DEBUGGING_TYPE, DWARF2_FRAME_INFO, MD_EXEC_PREFIX) (ASM_DECLARE_FUNCTION_NAME, ASM_DECLARE_FUNCTION_SIZE) (FUNCTION_NAME_ALREADY_DECLARED, SUPPORTS_INIT_PRIORITY) (POPSECTION_ASM_OP, SUBTARGET_ASM_SPEC, SUBTARGET_MIPS_AS_ASM_SPEC) (SUBTARGET_ASM_DEBUGGING_SPEC, SUBTARGET_ASM_OPTIMIZING_SPEC) (BSS_SECTION_ASM_OP*, READONLY_DATA_SECTION_ASM_OP*) (EH_FRAME_SECTION_NAME, MUST_USE_SJLJ_EXCEPTIONS, CTORS_SECTION_ASM_OP) (DTORS_SECTION_ASM_OP, TARGET_ASM_NAMED_SECTION, EH_FRAME_SECTION_NAME) (ASM_OUTPUT_ALIGN, ASM_OUTPUT_FILENAME, ASM_OUTPUT_ALIGNED_LOCAL) (ASM_OUTPUT_ALIGNED_BSS): Remove definitions or undefs. (TARGET_IRIX6): Define to 1. (DRIVER_SELF_SPECS): Define. (DWARF2_FRAME_INFO): Define to 1 rather than !TARGET_SGI_O32_AS. (SUBTARGET_CC1_SPEC): Remove in favor of DRIVER_SELF_SPECS. (SUBTARGET_LINK_SPEC): New macro. (IRIX_STARTFILE_SPEC): Fold into... (STARTFILE_SPEC): ...here. Remove !mabi=* case. (SUBTARGET_{,DONT_}WARN_UNUSED_SPEC): New macros. (LIB_SPEC, LIBGCC_SPEC): Use them. (LIB_SPEC): Remove !mabi=* case. (IRIX_ENDFILE_SPEC): Fold into... (ENDFILE_SPEC): ...here. Remove !mabi=* case. * config/mips/mips-protos.h (irix_output_external_libcall): Delete. * config/mips/mips.h (TARGET_IRIX5, TARGET_SGI_O32_AS): Delete. (TARGET_IRIX6): New macro. (ASM_ABI_DEFAULT_SPEC): Remove !ELF definition. (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX, SET_FILE_NUMBER) (LABEL_AFTER_LOC): Delete. * config/mips/mips.c (TARGET_ASM_FILE_START, TARGET_ASM_FILE_END) (TARGET_SECTION_TYPE_FLAGS): Remove TARGET_IRIX versions. (mips_build_builtin_va_list): Check TARGET_IRIX6. (override_options): Remove TARGET_SGI_O32_AS-related code. (irix_output_external_libcall): Make static. (mips_output_filename): Avoid use of SET_FILE_NUMBER and LABEL_AFTER_LOC. (mips_file_start): Tidy guard for ABI sections. Remove use of ABICALLS_ASM_OP; use .abicalls instead. (mips_output_aligned_decl_common, mips_declare_object_name) (mips_finish_declare_object): Remove use of TARGET_SGI_O32_AS. (mips_output_function_prologue): Set TREE_ASM_WRITTEN if emitting .globl foo .text directives. (irix_asm_named_section_1, irix_asm_named_section) (irix_section_align_entry, irix_section_align_htab) (irix_orig_asm_out_file, irix_section_align_entry_eq) (irix_section_align_entry_hash, irix_asm_output_align) (irix_file_start, irix_section_align_1, copy_file_data) (irix_file_end, irix_section_type_flags): Delete. * config/mips/irix-crti.asm (__gcc_init): Move to .gcc_init section. Use standard section syntax. Remove protective "jr $31". (__gcc_fini): Likewise .gcc_fini. * config/mips/irix-crtn.asm: Adjust sections accordingly. * config/mips/sdb.h (PUT_SDB_SIZE, PUT_SDB_TYPE): Moved from iris5gas.h. * config/mips/t-iris (irix-crti.o, irix-crtn.o): New rules, moved from t-irix-gld. (EXTRA_MULTILIB_PARTS): Define. * config/mips/t-iris6: Remove bogus comment. (EXTRA_MULTILIB_PARTS, CRTSTUFF_T_CFLAGS): Delete. * config/mips/iris5gas.h, config/mips/iris5gld.h, config/mips/iris6gas.h, config/mips/iris6gld.h, config/mips/t-iris5-as, config/mips/t-iris5-gas config/mips/t-irix-gld: Delete. * config/mips/iris.h: New file. * config/mips/t-slibgcc-irix: Renamed from t-iris5-6. From-SVN: r86309
2004-08-20 12:21:02 +02:00
case ${target} in
*-*-irix5*)
tm_file="${tm_file} mips/iris5.h"
;;
*-*-irix6*)
tm_file="${tm_file} mips/iris6.h"
tmake_file="${tmake_file} mips/t-iris6"
tm_defines="${tm_defines} MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_N32"
configure.ac (mips*-*-*): Print an error if not using GAS. * configure.ac (mips*-*-*): Print an error if not using GAS. * configure: Regenerated. * doc/install.texi: Remove irix5 bullet from --with-gnu-as. Remove comments about buggy MIPSpro assemblers. * config.gcc (mips-sgi-irix[56]*): Combine stanzas. Include elfos.h before mips.h and iris.h after it. Use t-iris and t-slibgcc-irix. Use iris5.h only for IRIX 5 configs. Use iris6.h and t-iris6 for IRIX 6 configs. Define IRIX_USING_GNU_LD if using GNU ld. * config/mips/iris5.h (TARGET_IRIX, SWITCHES_NEED_SPACES) (DEFAULT_SIGNED_CHAR, WORD_SWITCH_TAKES_ARG, SUBTARGET_CC1_SPEC) (NO_IMPLICIT_EXTERN_C, MIPS_DEFAULT_GVALUE) (TARGET_ASM_EXTERNAL_LIBCALL): Move to iris.h. (WCHAR_TYPE, WCHAR_TYPE_SIZE, TARGET_OS_CPP_BUILTINS): Delete in favor of more general IRIX 6 definitions. (OBJECT_FORMAT_ELF, ASM_OUTPUT_ASCII, ASM_WEAKEN_LABEL) (HANDLE_SYSV_PRAGMA): Delete in favor of elfos.h definitions. (TARGET_IRIX5, ABICALLS_ASM_OP, BSS_SECTION_ASM_OP, HAS_INIT_SECTION) (LD_INIT_SWITCH, LD_FINI_SWITCH, SUBTARGET_ASM_OPTIMIZING_SPEC) (ASM_FINAL_SPEC, DBX_DEBUGGING_INFO, MIPS_DEBUGGING_INFO) (PREFERRED_DEBUGGING_TYPE, DWARF2_UNWIND_INFO, SET_FILE_NUMBER) (LABEL_AFTER_LOC, DOLLARS_IN_IDENTIFIERS, NO_DOLLAR_IN_LABEL) (TARGET_ASM_NAMED_SECTION, EXTRA_SECTION_FUNCTIONS) (ASM_DECLARE_FUNCTION_SIZE, ASM_OUTPUT_WEAK_ALIAS) (SUBTARGET_EXTRA_SPECS): Delete definitions or undefs. (LINK_SPEC): Move most of definition to iris.h. (SUBTARGET_LINK_SPEC): New macro. (IRIX_STARTFILE_SPEC): Fold into... (STARTFILE_SPEC): ...here. (IRIX_ENDFILE_SPEC): Fold into... (ENDFILE_SPEC): ...here. * config/mips/iris6.h (TARGET_IRIX5): Remove override. (WCHAR_TYPE, WCHAR_TYPE_SIZE, WINT_TYPE, WINT_TYPE_SIZE) (DWARF_OFFSET_SIZE, DWARF_INITIAL_LENGTH_SIZE, SET_ASM_OP) (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES, ASM_DECLARE_OBJECT_NAME) (ASM_FINISH_DECLARE_OBJECT, LOCAL_LABEL_PREFIX): Move to iris.h. (TARGET_OS_CPP_BUILTINS): Likewise. Guard IRIX6-specific bits. (DWARF2_UNWIND_INFO, DWARF2_GENERATE_TEXT_SECTION_LABEL) (SUBTARGET_CPP_SPEC, DWARF2_DEBUGGING_INFO, MIPS_DEBUGGING_INFO) (PREFERRED_DEBUGGING_TYPE, DWARF2_FRAME_INFO, MD_EXEC_PREFIX) (ASM_DECLARE_FUNCTION_NAME, ASM_DECLARE_FUNCTION_SIZE) (FUNCTION_NAME_ALREADY_DECLARED, SUPPORTS_INIT_PRIORITY) (POPSECTION_ASM_OP, SUBTARGET_ASM_SPEC, SUBTARGET_MIPS_AS_ASM_SPEC) (SUBTARGET_ASM_DEBUGGING_SPEC, SUBTARGET_ASM_OPTIMIZING_SPEC) (BSS_SECTION_ASM_OP*, READONLY_DATA_SECTION_ASM_OP*) (EH_FRAME_SECTION_NAME, MUST_USE_SJLJ_EXCEPTIONS, CTORS_SECTION_ASM_OP) (DTORS_SECTION_ASM_OP, TARGET_ASM_NAMED_SECTION, EH_FRAME_SECTION_NAME) (ASM_OUTPUT_ALIGN, ASM_OUTPUT_FILENAME, ASM_OUTPUT_ALIGNED_LOCAL) (ASM_OUTPUT_ALIGNED_BSS): Remove definitions or undefs. (TARGET_IRIX6): Define to 1. (DRIVER_SELF_SPECS): Define. (DWARF2_FRAME_INFO): Define to 1 rather than !TARGET_SGI_O32_AS. (SUBTARGET_CC1_SPEC): Remove in favor of DRIVER_SELF_SPECS. (SUBTARGET_LINK_SPEC): New macro. (IRIX_STARTFILE_SPEC): Fold into... (STARTFILE_SPEC): ...here. Remove !mabi=* case. (SUBTARGET_{,DONT_}WARN_UNUSED_SPEC): New macros. (LIB_SPEC, LIBGCC_SPEC): Use them. (LIB_SPEC): Remove !mabi=* case. (IRIX_ENDFILE_SPEC): Fold into... (ENDFILE_SPEC): ...here. Remove !mabi=* case. * config/mips/mips-protos.h (irix_output_external_libcall): Delete. * config/mips/mips.h (TARGET_IRIX5, TARGET_SGI_O32_AS): Delete. (TARGET_IRIX6): New macro. (ASM_ABI_DEFAULT_SPEC): Remove !ELF definition. (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX, SET_FILE_NUMBER) (LABEL_AFTER_LOC): Delete. * config/mips/mips.c (TARGET_ASM_FILE_START, TARGET_ASM_FILE_END) (TARGET_SECTION_TYPE_FLAGS): Remove TARGET_IRIX versions. (mips_build_builtin_va_list): Check TARGET_IRIX6. (override_options): Remove TARGET_SGI_O32_AS-related code. (irix_output_external_libcall): Make static. (mips_output_filename): Avoid use of SET_FILE_NUMBER and LABEL_AFTER_LOC. (mips_file_start): Tidy guard for ABI sections. Remove use of ABICALLS_ASM_OP; use .abicalls instead. (mips_output_aligned_decl_common, mips_declare_object_name) (mips_finish_declare_object): Remove use of TARGET_SGI_O32_AS. (mips_output_function_prologue): Set TREE_ASM_WRITTEN if emitting .globl foo .text directives. (irix_asm_named_section_1, irix_asm_named_section) (irix_section_align_entry, irix_section_align_htab) (irix_orig_asm_out_file, irix_section_align_entry_eq) (irix_section_align_entry_hash, irix_asm_output_align) (irix_file_start, irix_section_align_1, copy_file_data) (irix_file_end, irix_section_type_flags): Delete. * config/mips/irix-crti.asm (__gcc_init): Move to .gcc_init section. Use standard section syntax. Remove protective "jr $31". (__gcc_fini): Likewise .gcc_fini. * config/mips/irix-crtn.asm: Adjust sections accordingly. * config/mips/sdb.h (PUT_SDB_SIZE, PUT_SDB_TYPE): Moved from iris5gas.h. * config/mips/t-iris (irix-crti.o, irix-crtn.o): New rules, moved from t-irix-gld. (EXTRA_MULTILIB_PARTS): Define. * config/mips/t-iris6: Remove bogus comment. (EXTRA_MULTILIB_PARTS, CRTSTUFF_T_CFLAGS): Delete. * config/mips/iris5gas.h, config/mips/iris5gld.h, config/mips/iris6gas.h, config/mips/iris6gld.h, config/mips/t-iris5-as, config/mips/t-iris5-gas config/mips/t-irix-gld: Delete. * config/mips/iris.h: New file. * config/mips/t-slibgcc-irix: Renamed from t-iris5-6. From-SVN: r86309
2004-08-20 12:21:02 +02:00
;;
esac
if test "x$stabs" = xyes
then
configure.ac (mips*-*-*): Print an error if not using GAS. * configure.ac (mips*-*-*): Print an error if not using GAS. * configure: Regenerated. * doc/install.texi: Remove irix5 bullet from --with-gnu-as. Remove comments about buggy MIPSpro assemblers. * config.gcc (mips-sgi-irix[56]*): Combine stanzas. Include elfos.h before mips.h and iris.h after it. Use t-iris and t-slibgcc-irix. Use iris5.h only for IRIX 5 configs. Use iris6.h and t-iris6 for IRIX 6 configs. Define IRIX_USING_GNU_LD if using GNU ld. * config/mips/iris5.h (TARGET_IRIX, SWITCHES_NEED_SPACES) (DEFAULT_SIGNED_CHAR, WORD_SWITCH_TAKES_ARG, SUBTARGET_CC1_SPEC) (NO_IMPLICIT_EXTERN_C, MIPS_DEFAULT_GVALUE) (TARGET_ASM_EXTERNAL_LIBCALL): Move to iris.h. (WCHAR_TYPE, WCHAR_TYPE_SIZE, TARGET_OS_CPP_BUILTINS): Delete in favor of more general IRIX 6 definitions. (OBJECT_FORMAT_ELF, ASM_OUTPUT_ASCII, ASM_WEAKEN_LABEL) (HANDLE_SYSV_PRAGMA): Delete in favor of elfos.h definitions. (TARGET_IRIX5, ABICALLS_ASM_OP, BSS_SECTION_ASM_OP, HAS_INIT_SECTION) (LD_INIT_SWITCH, LD_FINI_SWITCH, SUBTARGET_ASM_OPTIMIZING_SPEC) (ASM_FINAL_SPEC, DBX_DEBUGGING_INFO, MIPS_DEBUGGING_INFO) (PREFERRED_DEBUGGING_TYPE, DWARF2_UNWIND_INFO, SET_FILE_NUMBER) (LABEL_AFTER_LOC, DOLLARS_IN_IDENTIFIERS, NO_DOLLAR_IN_LABEL) (TARGET_ASM_NAMED_SECTION, EXTRA_SECTION_FUNCTIONS) (ASM_DECLARE_FUNCTION_SIZE, ASM_OUTPUT_WEAK_ALIAS) (SUBTARGET_EXTRA_SPECS): Delete definitions or undefs. (LINK_SPEC): Move most of definition to iris.h. (SUBTARGET_LINK_SPEC): New macro. (IRIX_STARTFILE_SPEC): Fold into... (STARTFILE_SPEC): ...here. (IRIX_ENDFILE_SPEC): Fold into... (ENDFILE_SPEC): ...here. * config/mips/iris6.h (TARGET_IRIX5): Remove override. (WCHAR_TYPE, WCHAR_TYPE_SIZE, WINT_TYPE, WINT_TYPE_SIZE) (DWARF_OFFSET_SIZE, DWARF_INITIAL_LENGTH_SIZE, SET_ASM_OP) (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES, ASM_DECLARE_OBJECT_NAME) (ASM_FINISH_DECLARE_OBJECT, LOCAL_LABEL_PREFIX): Move to iris.h. (TARGET_OS_CPP_BUILTINS): Likewise. Guard IRIX6-specific bits. (DWARF2_UNWIND_INFO, DWARF2_GENERATE_TEXT_SECTION_LABEL) (SUBTARGET_CPP_SPEC, DWARF2_DEBUGGING_INFO, MIPS_DEBUGGING_INFO) (PREFERRED_DEBUGGING_TYPE, DWARF2_FRAME_INFO, MD_EXEC_PREFIX) (ASM_DECLARE_FUNCTION_NAME, ASM_DECLARE_FUNCTION_SIZE) (FUNCTION_NAME_ALREADY_DECLARED, SUPPORTS_INIT_PRIORITY) (POPSECTION_ASM_OP, SUBTARGET_ASM_SPEC, SUBTARGET_MIPS_AS_ASM_SPEC) (SUBTARGET_ASM_DEBUGGING_SPEC, SUBTARGET_ASM_OPTIMIZING_SPEC) (BSS_SECTION_ASM_OP*, READONLY_DATA_SECTION_ASM_OP*) (EH_FRAME_SECTION_NAME, MUST_USE_SJLJ_EXCEPTIONS, CTORS_SECTION_ASM_OP) (DTORS_SECTION_ASM_OP, TARGET_ASM_NAMED_SECTION, EH_FRAME_SECTION_NAME) (ASM_OUTPUT_ALIGN, ASM_OUTPUT_FILENAME, ASM_OUTPUT_ALIGNED_LOCAL) (ASM_OUTPUT_ALIGNED_BSS): Remove definitions or undefs. (TARGET_IRIX6): Define to 1. (DRIVER_SELF_SPECS): Define. (DWARF2_FRAME_INFO): Define to 1 rather than !TARGET_SGI_O32_AS. (SUBTARGET_CC1_SPEC): Remove in favor of DRIVER_SELF_SPECS. (SUBTARGET_LINK_SPEC): New macro. (IRIX_STARTFILE_SPEC): Fold into... (STARTFILE_SPEC): ...here. Remove !mabi=* case. (SUBTARGET_{,DONT_}WARN_UNUSED_SPEC): New macros. (LIB_SPEC, LIBGCC_SPEC): Use them. (LIB_SPEC): Remove !mabi=* case. (IRIX_ENDFILE_SPEC): Fold into... (ENDFILE_SPEC): ...here. Remove !mabi=* case. * config/mips/mips-protos.h (irix_output_external_libcall): Delete. * config/mips/mips.h (TARGET_IRIX5, TARGET_SGI_O32_AS): Delete. (TARGET_IRIX6): New macro. (ASM_ABI_DEFAULT_SPEC): Remove !ELF definition. (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX, SET_FILE_NUMBER) (LABEL_AFTER_LOC): Delete. * config/mips/mips.c (TARGET_ASM_FILE_START, TARGET_ASM_FILE_END) (TARGET_SECTION_TYPE_FLAGS): Remove TARGET_IRIX versions. (mips_build_builtin_va_list): Check TARGET_IRIX6. (override_options): Remove TARGET_SGI_O32_AS-related code. (irix_output_external_libcall): Make static. (mips_output_filename): Avoid use of SET_FILE_NUMBER and LABEL_AFTER_LOC. (mips_file_start): Tidy guard for ABI sections. Remove use of ABICALLS_ASM_OP; use .abicalls instead. (mips_output_aligned_decl_common, mips_declare_object_name) (mips_finish_declare_object): Remove use of TARGET_SGI_O32_AS. (mips_output_function_prologue): Set TREE_ASM_WRITTEN if emitting .globl foo .text directives. (irix_asm_named_section_1, irix_asm_named_section) (irix_section_align_entry, irix_section_align_htab) (irix_orig_asm_out_file, irix_section_align_entry_eq) (irix_section_align_entry_hash, irix_asm_output_align) (irix_file_start, irix_section_align_1, copy_file_data) (irix_file_end, irix_section_type_flags): Delete. * config/mips/irix-crti.asm (__gcc_init): Move to .gcc_init section. Use standard section syntax. Remove protective "jr $31". (__gcc_fini): Likewise .gcc_fini. * config/mips/irix-crtn.asm: Adjust sections accordingly. * config/mips/sdb.h (PUT_SDB_SIZE, PUT_SDB_TYPE): Moved from iris5gas.h. * config/mips/t-iris (irix-crti.o, irix-crtn.o): New rules, moved from t-irix-gld. (EXTRA_MULTILIB_PARTS): Define. * config/mips/t-iris6: Remove bogus comment. (EXTRA_MULTILIB_PARTS, CRTSTUFF_T_CFLAGS): Delete. * config/mips/iris5gas.h, config/mips/iris5gld.h, config/mips/iris6gas.h, config/mips/iris6gld.h, config/mips/t-iris5-as, config/mips/t-iris5-gas config/mips/t-irix-gld: Delete. * config/mips/iris.h: New file. * config/mips/t-slibgcc-irix: Renamed from t-iris5-6. From-SVN: r86309
2004-08-20 12:21:02 +02:00
tm_file="${tm_file} dbx.h mips/dbxmdebug.h"
fi
if test "x$gnu_ld" = xyes
then
configure.ac (mips*-*-*): Print an error if not using GAS. * configure.ac (mips*-*-*): Print an error if not using GAS. * configure: Regenerated. * doc/install.texi: Remove irix5 bullet from --with-gnu-as. Remove comments about buggy MIPSpro assemblers. * config.gcc (mips-sgi-irix[56]*): Combine stanzas. Include elfos.h before mips.h and iris.h after it. Use t-iris and t-slibgcc-irix. Use iris5.h only for IRIX 5 configs. Use iris6.h and t-iris6 for IRIX 6 configs. Define IRIX_USING_GNU_LD if using GNU ld. * config/mips/iris5.h (TARGET_IRIX, SWITCHES_NEED_SPACES) (DEFAULT_SIGNED_CHAR, WORD_SWITCH_TAKES_ARG, SUBTARGET_CC1_SPEC) (NO_IMPLICIT_EXTERN_C, MIPS_DEFAULT_GVALUE) (TARGET_ASM_EXTERNAL_LIBCALL): Move to iris.h. (WCHAR_TYPE, WCHAR_TYPE_SIZE, TARGET_OS_CPP_BUILTINS): Delete in favor of more general IRIX 6 definitions. (OBJECT_FORMAT_ELF, ASM_OUTPUT_ASCII, ASM_WEAKEN_LABEL) (HANDLE_SYSV_PRAGMA): Delete in favor of elfos.h definitions. (TARGET_IRIX5, ABICALLS_ASM_OP, BSS_SECTION_ASM_OP, HAS_INIT_SECTION) (LD_INIT_SWITCH, LD_FINI_SWITCH, SUBTARGET_ASM_OPTIMIZING_SPEC) (ASM_FINAL_SPEC, DBX_DEBUGGING_INFO, MIPS_DEBUGGING_INFO) (PREFERRED_DEBUGGING_TYPE, DWARF2_UNWIND_INFO, SET_FILE_NUMBER) (LABEL_AFTER_LOC, DOLLARS_IN_IDENTIFIERS, NO_DOLLAR_IN_LABEL) (TARGET_ASM_NAMED_SECTION, EXTRA_SECTION_FUNCTIONS) (ASM_DECLARE_FUNCTION_SIZE, ASM_OUTPUT_WEAK_ALIAS) (SUBTARGET_EXTRA_SPECS): Delete definitions or undefs. (LINK_SPEC): Move most of definition to iris.h. (SUBTARGET_LINK_SPEC): New macro. (IRIX_STARTFILE_SPEC): Fold into... (STARTFILE_SPEC): ...here. (IRIX_ENDFILE_SPEC): Fold into... (ENDFILE_SPEC): ...here. * config/mips/iris6.h (TARGET_IRIX5): Remove override. (WCHAR_TYPE, WCHAR_TYPE_SIZE, WINT_TYPE, WINT_TYPE_SIZE) (DWARF_OFFSET_SIZE, DWARF_INITIAL_LENGTH_SIZE, SET_ASM_OP) (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES, ASM_DECLARE_OBJECT_NAME) (ASM_FINISH_DECLARE_OBJECT, LOCAL_LABEL_PREFIX): Move to iris.h. (TARGET_OS_CPP_BUILTINS): Likewise. Guard IRIX6-specific bits. (DWARF2_UNWIND_INFO, DWARF2_GENERATE_TEXT_SECTION_LABEL) (SUBTARGET_CPP_SPEC, DWARF2_DEBUGGING_INFO, MIPS_DEBUGGING_INFO) (PREFERRED_DEBUGGING_TYPE, DWARF2_FRAME_INFO, MD_EXEC_PREFIX) (ASM_DECLARE_FUNCTION_NAME, ASM_DECLARE_FUNCTION_SIZE) (FUNCTION_NAME_ALREADY_DECLARED, SUPPORTS_INIT_PRIORITY) (POPSECTION_ASM_OP, SUBTARGET_ASM_SPEC, SUBTARGET_MIPS_AS_ASM_SPEC) (SUBTARGET_ASM_DEBUGGING_SPEC, SUBTARGET_ASM_OPTIMIZING_SPEC) (BSS_SECTION_ASM_OP*, READONLY_DATA_SECTION_ASM_OP*) (EH_FRAME_SECTION_NAME, MUST_USE_SJLJ_EXCEPTIONS, CTORS_SECTION_ASM_OP) (DTORS_SECTION_ASM_OP, TARGET_ASM_NAMED_SECTION, EH_FRAME_SECTION_NAME) (ASM_OUTPUT_ALIGN, ASM_OUTPUT_FILENAME, ASM_OUTPUT_ALIGNED_LOCAL) (ASM_OUTPUT_ALIGNED_BSS): Remove definitions or undefs. (TARGET_IRIX6): Define to 1. (DRIVER_SELF_SPECS): Define. (DWARF2_FRAME_INFO): Define to 1 rather than !TARGET_SGI_O32_AS. (SUBTARGET_CC1_SPEC): Remove in favor of DRIVER_SELF_SPECS. (SUBTARGET_LINK_SPEC): New macro. (IRIX_STARTFILE_SPEC): Fold into... (STARTFILE_SPEC): ...here. Remove !mabi=* case. (SUBTARGET_{,DONT_}WARN_UNUSED_SPEC): New macros. (LIB_SPEC, LIBGCC_SPEC): Use them. (LIB_SPEC): Remove !mabi=* case. (IRIX_ENDFILE_SPEC): Fold into... (ENDFILE_SPEC): ...here. Remove !mabi=* case. * config/mips/mips-protos.h (irix_output_external_libcall): Delete. * config/mips/mips.h (TARGET_IRIX5, TARGET_SGI_O32_AS): Delete. (TARGET_IRIX6): New macro. (ASM_ABI_DEFAULT_SPEC): Remove !ELF definition. (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX, SET_FILE_NUMBER) (LABEL_AFTER_LOC): Delete. * config/mips/mips.c (TARGET_ASM_FILE_START, TARGET_ASM_FILE_END) (TARGET_SECTION_TYPE_FLAGS): Remove TARGET_IRIX versions. (mips_build_builtin_va_list): Check TARGET_IRIX6. (override_options): Remove TARGET_SGI_O32_AS-related code. (irix_output_external_libcall): Make static. (mips_output_filename): Avoid use of SET_FILE_NUMBER and LABEL_AFTER_LOC. (mips_file_start): Tidy guard for ABI sections. Remove use of ABICALLS_ASM_OP; use .abicalls instead. (mips_output_aligned_decl_common, mips_declare_object_name) (mips_finish_declare_object): Remove use of TARGET_SGI_O32_AS. (mips_output_function_prologue): Set TREE_ASM_WRITTEN if emitting .globl foo .text directives. (irix_asm_named_section_1, irix_asm_named_section) (irix_section_align_entry, irix_section_align_htab) (irix_orig_asm_out_file, irix_section_align_entry_eq) (irix_section_align_entry_hash, irix_asm_output_align) (irix_file_start, irix_section_align_1, copy_file_data) (irix_file_end, irix_section_type_flags): Delete. * config/mips/irix-crti.asm (__gcc_init): Move to .gcc_init section. Use standard section syntax. Remove protective "jr $31". (__gcc_fini): Likewise .gcc_fini. * config/mips/irix-crtn.asm: Adjust sections accordingly. * config/mips/sdb.h (PUT_SDB_SIZE, PUT_SDB_TYPE): Moved from iris5gas.h. * config/mips/t-iris (irix-crti.o, irix-crtn.o): New rules, moved from t-irix-gld. (EXTRA_MULTILIB_PARTS): Define. * config/mips/t-iris6: Remove bogus comment. (EXTRA_MULTILIB_PARTS, CRTSTUFF_T_CFLAGS): Delete. * config/mips/iris5gas.h, config/mips/iris5gld.h, config/mips/iris6gas.h, config/mips/iris6gld.h, config/mips/t-iris5-as, config/mips/t-iris5-gas config/mips/t-irix-gld: Delete. * config/mips/iris.h: New file. * config/mips/t-slibgcc-irix: Renamed from t-iris5-6. From-SVN: r86309
2004-08-20 12:21:02 +02:00
tm_defines="${tm_defines} IRIX_USING_GNU_LD"
fi
case ${enable_threads}:${have_pthread_h} in
"":yes | yes:yes ) thread_file=posix ;;
esac
;;
netbsd.h (TARGET_HAS_F_SETLKW): define. * config/netbsd.h (TARGET_HAS_F_SETLKW): define. Split a.out-specific bits into... * config/netbsd-aout.h: ...this. * config/netbsd-elf.h: New file. * config/alpha/netbsd-elf.h: Remove. * config/alpha/netbsd.h: Rewrite for a NetBSD/alpha ELF target. * config/i386/netbsd-elf.h (LIB_SPEC): Remove. (STARTFILE_SPEC): Remove redundant definition. (ENDFILE_SPEC): Likewise. (LINK_SPEC): Likewise. (CPP_SPEC): Likewise. (ASM_SPEC): Likewise. (LIB_SPEC): Likewise. (SWITCH_TAKES_ARG): Likewise. (TARGET_MEM_FUNCTIONS): Likewise. (CPP_PREDEFINES): Redefine. (ASM_FINAL_SPEC): Remove redefinition. (ASM_COMMENT_START): Redefine. (FUNCTION_PROFILER): Define. (TARGET_VERSION): Redefine. Comment and formatting cleanup. * config/i386/netbsd.h: Include <netbsd-aout.h>. * config/m68k/netbsd.h: Include <netbsd-aout.h>. * config/mips/netbsd.h: Rewrite for NetBSD/mips ELF target, big- or little-endian. * config/ns32k/netbsd.h: Include <netbsd-aout.h>. * config.gcc (*-*-netbsd*): Add definitions common to all NetBSD configs. (alpha*-*-netbsd*): Remove redundant xm_defines, gas, and gnu_ld definitions. Add netbsd-elf.h to and remove alpha/netbsd-elf.h from tm_file. Remove alpha/t-crtfm from tmake_file, and don't lose previous tmake_file contents. (arm*-*-netbsd*): Add netbsd-aout.h to tm_file. (i[34567]86-*-netbsdelf*): Remove redundant xm_defines, gas, and gnu_ld definitions. Add netbsd-elf.h to tm_file. (mips-dec-netbsd*): Remove as alias for mipsel-*-netbsd*. (mipsel-*-netbsd*): Rename this to... (mips*-*-netbsd*): ...this. Add elfos.h to tm_file. Add mips/little.h to tm_file for mips*el-*. (powerpc-*-netbsd*): Remove redundant xm_defines definition. (sparc-*-netbsd*): Add netbsd-aout.h to tm_file. (vax-*-netbsd*): Add netbsd-aout.h to tm_file. From-SVN: r49064
2002-01-22 05:23:07 +01:00
mips*-*-netbsd*) # NetBSD/mips, either endian.
config.gcc (mips-*-*): Remove definitions of MASK_GAS and OBJECT_FORMAT_ELF. * config.gcc (mips-*-*): Remove definitions of MASK_GAS and OBJECT_FORMAT_ELF. Set MASK_SPLIT_ADDR by default if using GNU ld. * config/mips/mips.h (MASK_GAS): Delete. Shuffle later masks down. (TARGET_GAS, TARGET_MIPS_AS): Delete. (TARGET_GPWORD): Define to true for n32 on IRIX. (TARGET_SWITCHES): Remove -mmips-as. Turn -mgas into a no-op. (MIPS_AS_ASM_SPEC, SUBTARGET_MIPS_AS_ASM_SPEC): Delete. (GAS_ASM_SPEC): Delete, folding into ASM_SPEC. (ASM_ABI_DEFAULT_SPEC, TARGET_ASM_SPEC): Delete. (MDEBUG_ASM_SPEC): Delete, folding into... (SUBTARGET_ASM_DEBUGGING_SPEC): ...here. (ASM_SPEC): Inline old GAS_ASM_SPEC. Use GNU names for ABI switches. (EXTRA_SPECS): Remove mips_as_asm_spec, gas_asm_spec, target_asm_spec, subtarget_mips_as_asm_spec, mdebug_asm_spec. Use MULTILIB_ABI_DEFAULT to define asm_abi_default_spec. (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP): Delete. (TARGET_ASM_SELECT_SECTION): Delete. * config/mips/mips.c (MIPS_MAX_FIRST_STACK_STEP): Define to 0x7ff0 for non-mips16 code, removing previous workaround for SGI assemblers. (TARGET_ASM_INTEGER, mips_assemble_integer): Delete. (TARGET_ASM_ALIGNED_DI_OP): Define this instead. (override_options): Remove !TARGET_GAS and !have_named_sections code. (print_operand): Fold TARGET_GAS conditionals into asm strings. (mips_output_filename): Remove !TARGET_GAS code. Replace use of ASM_STABS_OP and ASM_STABN_OP. (mips_file_start): Remove TARGET_MIPS_AS/TARGET_GAS checks. (mips_output_aligned_decl_common): Remove mention of SGI o32 assembler. (mips_output_function_prologue): Remove !TARGET_GAS code. (mips_select_rtx_section): Remove !have_named_sections code. (mips_select_section): Delete. * config/mips/mips.md (trap): Remove !TARGET_GAS check. * config/mips/linux.h (TARGET_DEFAULT): Remove use of MASK_GAS. * config/mips/sdb.h (PUT_SDB_DEF, PUT_SDB_PLAIN_DEF): Delete. (PUT_SDB_BLOCK_START, PUT_SDB_BLOCK_END): Fold TARGET_GAS conditional. * config/mips/vxworks.h (ASM_SPEC): As for mips.h. * config/mips/windiss.h (ASM_SPEC): Likewise. testsuite/ * gcc.dg/special/mips-abi.exp: Expect gcc to pass the GNU ABI flags to the assembler. Simplify test accordingly. (asm_abi_flags): Use GNU names. (check_mips_abi, default_abi): Use string matches against "-mabi=*" to check for ABI flags. From-SVN: r86405
2004-08-23 08:53:46 +02:00
target_cpu_default="MASK_ABICALLS"
Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * config.gcc (*-*-openbsd): Don't set tm_file. (alpha*-*-openbsd, arm*-*-coff*, arm*-wince-pe*, arm-*-pe*, avr-*-*, h8300-*-rtems*, h8300-*-elf*, h8300-*-*, hppa*-*-osf*, hppa*-*-bsd*, hppa*-*-hpux*, i370-*-opened*, i370-*-mvs*, i370-*-linux*, i?86-*-openbsd*, i?86-*-lynxos, i?86-*-nto-qnx*, iq2000*-*-elf*, m68000-hp-hpux*, m68k-hp-hpux*, m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*, m68k*-*-netbsd*, m68k*-*-openbsd*, m68k-*-sysv4*, m68k-*-linux*, m68k-*-rtems*, mcore-*-pe*, mips*-*-netbsd*, mips*-*-openbsd*, rs6000-*-lynxos*, sh*-*-elf*, sh*-*-ka, sh-*-rtemself, sparc-*-openbsd*, strongarm-*-pe, vax-*-openbsd*, xscale-*-coff): Use explicit and complete lists of target headers to include. Move definitions to tm_defines where appropriate. (hppa*-*-openbsd*, powerpc-*-openbsd*): Comment out stanza for not-yet-contributed configuration. * config/lynx.h, config/alpha/openbsd.h, config/arm/coff.h * config/avr/avr.h, config/frv/frv.h, config/h8300/elf.h * config/i370/linux.h, config/i370/mvs.h, config/i370/oe.h * config/i386/nto.h, config/iq2000/iq2000.h, * config/m68k/coff.h, config/m68k/hp310.h, config/m68k/hp320.h * config/m68k/linux.h, config/m68k/m68k-aout.h * config/m68k/m68k-none.h, config/m68k/m68kv4.h * config/m68k/netbsd.h, config/m68k/openbsd.h * config/m68k/sgs.h, config/mcore/mcore-pe.h, * config/mips/netbsd.h, config/mips/openbsd.h, config/pa/pa.h, * config/rs6000/lynx.h, config/sh/embed-elf.h, config/sparc/openbsd.h: Remove includes of other target config headers, and definitions of macros moved to tm_defines lists. Add #undefs where now necessary to prevent redefinition warnings. * config/h8300/coff.h: New file split out of... * config/h8300/elf.h: ...here. * config/m68k/hp320base.h: New file split out of... * config/m68k/hp320.h: ...here. * config/rs6000/lynxbase.h: New file split out of... * config/rs6000/lynx.h: ...here. * config/m68k/hp310g.h, config/m68k/hp320g.h, config/m68k/hpux7.h * config/m68k/m68k-coff.h, config/mips/openbsd-be.h: Delete file. * config/sol2.h: Remove #if 0-ed #include of sys/mman.h. * config/m68k/m68kelf.h: Remove commented out #include of m68k/sgs.h. * config/mcore/mcore.h: Don't include hwint.h nor machmode.h. Remove unnecessary #ifndef. * config/s390/s390.h: Prefix #include of s390/fixdfdi.h [under IN_LIBGCC2] with config/. From-SVN: r70651
2003-08-21 19:27:29 +02:00
tm_file="elfos.h ${tm_file} mips/elf.h netbsd.h netbsd-elf.h mips/netbsd.h"
;;
mips64*-*-linux* | mipsisa64*-*-linux*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h svr4.h linux.h glibc-stdint.h ${tm_file} mips/linux.h mips/linux64.h"
configure.ac (mips*-*-*linux*, [...]): Use mt-mips-gnu. * configure.ac (mips*-*-*linux*, mips*-*-gnu*): Use mt-mips-gnu. * configure: Regenerate. config/ * mt-mips16-compat: New file, taken from mt-mips-elfoabi. * mt-mips-elfoabi: Include mt-mips16-compat. * mt-mips-gnu: New file. gcc/ * config.gcc (mips*-*-linux*, mips64*-*-linux*): Add mips/t-libgcc-mips16 to tmake_file. * config/mips/mips-protos.h (mips_call_type): New enum. (mips_pic_base_register, mips_got_load): Declare. (mips_restore_gp): Take an rtx argument. (mips_use_pic_fn_addr_reg_p): Declare. (mips_expand_call): Replace the sibcall_p argument with a mips_call_type argument. Add a lazy_p parameter. (mips_split_call): Declare. * config/mips/mips.h (MIPS16_PIC_TEMP_REGNUM): New macro. (MIPS16_PIC_TEMP): Likewise. (reg_class): Delete M16_NA_REGS. (REG_CLASS_NAMES, REG_CLASS_CONTENTS): Update accordingly. (SYMBOL_FLAG_BIND_NOW, SYMBOL_REF_BIND_NOW_P): New macros. (mips_split_hi_p): Declare. * config/mips/mips.c (mips_split_hi_p): New array. (mips_regno_to_class): Change M16_NA_REGS entries to M16_REGS. (mips_got_symbol_type_p): New function. (mips_global_symbol_p): Check SYMBOL_REF_EXTERNAL_P. (mips16_stub_function_p): New function. (mips16_local_function_p): Likewise. (mips_use_pic_fn_addr_reg_p): Likewise. (mips_cannot_force_const_mem): Return false for HIGHs. Extend CONST_INT and symbolic handling to MIPS16, using mips_symbol_insns to check that the base symbol type is a legitimate constant. Reject GOT-based constants if TARGET_MIPS16_PCREL_LOADS. (mips_const_insns): Check targetm.cannot_force_const_mem when decomposing a symbolic base and a large offset. (mips_emit_call_insn): Add ORIG_ADDR and ADDR parameters. When calling a function that needs $25 from MIPS16 code, move the target address into $25 separately and add a USE to the call insn. (mips16_gp_pseudo_reg): Insert the initializer immediately before the first real insn. (mips_pic_base_register, mips_got_load): New functions. (mips_split_symbol): Generalize the name of the LO_SUM_OUT parameter to LOW_OUT. Say that it can be any valid SET_SRC when splitting a load-address operation. Split SYMBOL_GOT_DISP constants and highs of SYMBOL_GOT_PAGE_OFST constants. (mips_call_tls_get_addr): Update the call to mips_expand_call, also passing NULL_RTX rather than const0_rtx as the aux argument. (mips_rewrite_small_data_p): Check mips_lo_relocs and mips_split_p instead of TARGET_EXPLICIT_RELOCS. (mips_ok_for_lazy_binding_p): Check SYMBOL_REF_BIND_NOW_P. (mips_load_call_address): Replace the sibcall_p argument with a mips_call_type argument. Use mips_got_load. (mips16_local_alias): New structure. (mips16_local_aliases): New variable. (mips16_local_aliases_hash): New function. (mips16_local_aliases_eq): Likewise. (mips16_local_alias): Likewise. (mips16_stub_function): Likewise. (mips16_build_function_stub): Create a local alias for the target function. Handle TARGET_ABICALLS. For PIC abicalls, emit a .cpload directive and an R_MIPS_NONE relocation for the target function, then load the alias rather than the function itself. Wrap the non-PIC abicalls version in ".option pic0/.option pic2". (mips16_copy_fpr_return_value): Use mips16_stub_function and mips_expand_call. Set SYMBOL_REF_BIND_NOW on the symbol. (mips16_build_call_stub): Replace the FN parameter with an FN_PTR parameter. Force the address into a register if it isn't a call_insn_operand; don't rely on the caller to do this. If a call to a locally-defined and locally-binding MIPS16 function must be made indirectly, redirect the call to the function's local alias. Use mips16_stub_function_p, mips16_stub_function, mips_expand_call and use_reg. Set SYMBOL_FLAG_BIND_NOW on __mips_call_* symbols. Use explicit %hi and %lo accesses where possible. Use MIPS_CALL to generate the correct code form of a jal instruction. Add clobbers of $18 instead of uses. Update the call to mips_emit_call_insn. (mips_expand_call): Replace the SIBCALL_P argument with a mips_call_type argument and handle the new MIPS_CALL_EPILOGUE value. Take a LAZY_P parameter. Call mips16_build_call_stub first, allowing it to modify the call address. Update the calls to mips_load_call_address and mips_emit_call_insn. (mips_split_call): New function. (mips_init_relocs): Clear mips_split_hi_p. Only use %gp_rel if !TARGET_MIPS16. Split SYMBOL_GOT_DISP, and the high parts of SYMBOL_GOT_PAGE_OFST, for MIPS16 code. (mips_global_pointer): Check mips16_cfun_returns_in_fpr_p. (mips_extra_live_on_entry): Include MIPS16_PIC_TEMP_REGNUM if TARGET_MIPS16. (mips_cprestore_slot): New function. (mips_restore_gp): Take a TEMP parameter. Handle TARGET_MIPS16 and use mips_cprestore_slot. (mips_output_function_prologue): Handle TARGET_MIPS16 for LOADGP_OLDABI. (mips_emit_loadgp): Move into MIPS16_PIC_TEMP for MIPS16, then use a copygp_mips16 instruction to set up $28. (mips_expand_prologue): Initialize the cprestore slot for MIPS16 too. (mips16_lay_out_constants): Call split_all_insns_noflow. (mips_reorg_process_insns): Explicitly set all_noreorder_p to false if TARGET_MIPS16. (mips_reorg): Don't call vr4130_align_insns if TARGET_MIPS16. (mips_output_mi_thunk): Use mips_got_symbol_type_p. Use the mips_dangerous_for_la25_p approach for MIPS16 PIC calls too. (mips_set_mips16_mode): Always set MASK_EXPLICIT_RELOCS for MIPS16 code. Allow MIPS16 o32 PIC. (mips_override_options): Allow MIPS16 o32 PIC. * config/mips/mips.md: Lower CONST_GP_P moves into register moves after reload if TARGET_USE_GOT. (UNSPEC_COPYGP): New constant. (length): Use a default length of 8 for MIPS16 GOT loads. (*got_disp<mode>): Check mips_split_p instead of TARGET_XGOT. (*got_page<mode>): Check mips_split_hi_p. (*got_disp<mode>, *got_page<mode>): Use mips_got_load. (unspec_got<mode>, unspec_call<mode>): New expanders. (load_got<mode>, load_call<mode>): Remove the length attributes. Use a got attribute instead of a type attribute. (copygp_mips16): New insn. (restore_gp): Add a scratch clobber and pass it to mips_restore_gp. (load_call<mode>): Use a "d" constraint instead of an "r" constraint. (sibcall, sibcall_value, call, call_value): Update the calls to mips_expand_call. (call_internal, call_value_internal): Use mips_split_call. (call_value_multiple_internal): Likewise. (call_split): Move after call_internal (the insn it is split from). (call_internal_direct, call_value_internal_direct): Turn into define_insn_and_splits. Split if TARGET_SPLIT_CALLS. (call_direct_split, call_value_direct_split): New patterns. * config/mips/constraints.md (c): Handle TARGET_MIPS16 first and use M16_REGS instead of M16_NA_REGS. * config/mips/predicates.md (const_call_insn_operand): Replace the TARGET_ABSOLUTE_ABICALLS-based check with a more general mips_use_pic_fn_addr_reg_p check. (move_operand): Reject HIGHs if mips_split_hi_p. * config/mips/mips16.S: Assembly as empty if the ABI is not suitable. (__mips16_floatunsisf): Inline __mips16_floatsisf. (CALL_STUB_NO_RET, CALL_STUB_REG): Copy the target register to $25. * config/mips/libgcc-mips16.ver: New file. * config/mips/t-libgcc-mips16 (SHLIB_MAPFILES): Add $(srcdir)/config/mips/libgcc-mips16.ver. gcc/testsuite/ * lib/target-supports.exp (check_profiling_available): Return false for -p and -pg on MIPS16 targets. From-SVN: r138912
2008-08-09 21:08:15 +02:00
tmake_file="${tmake_file} mips/t-linux64 mips/t-libgcc-mips16"
tm_defines="${tm_defines} MIPS_ABI_DEFAULT=ABI_N32"
case ${target} in
mips64el-st-linux-gnu)
tm_file="${tm_file} mips/st.h"
tmake_file="${tmake_file} mips/t-st"
;;
mips64octeon*-*-linux*)
tm_defines="${tm_defines} MIPS_CPU_STRING_DEFAULT=\\\"octeon\\\""
target_cpu_default=MASK_SOFT_FLOAT_ABI
;;
mipsisa64r2*-*-linux*)
tm_defines="${tm_defines} MIPS_ISA_DEFAULT=65"
;;
esac
gnu_ld=yes
gas=yes
test x$with_llsc != x || with_llsc=yes
;;
mips*-*-linux*) # Linux MIPS, either endian.
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h svr4.h linux.h glibc-stdint.h ${tm_file} mips/linux.h"
configure.ac (mips*-*-*linux*, [...]): Use mt-mips-gnu. * configure.ac (mips*-*-*linux*, mips*-*-gnu*): Use mt-mips-gnu. * configure: Regenerate. config/ * mt-mips16-compat: New file, taken from mt-mips-elfoabi. * mt-mips-elfoabi: Include mt-mips16-compat. * mt-mips-gnu: New file. gcc/ * config.gcc (mips*-*-linux*, mips64*-*-linux*): Add mips/t-libgcc-mips16 to tmake_file. * config/mips/mips-protos.h (mips_call_type): New enum. (mips_pic_base_register, mips_got_load): Declare. (mips_restore_gp): Take an rtx argument. (mips_use_pic_fn_addr_reg_p): Declare. (mips_expand_call): Replace the sibcall_p argument with a mips_call_type argument. Add a lazy_p parameter. (mips_split_call): Declare. * config/mips/mips.h (MIPS16_PIC_TEMP_REGNUM): New macro. (MIPS16_PIC_TEMP): Likewise. (reg_class): Delete M16_NA_REGS. (REG_CLASS_NAMES, REG_CLASS_CONTENTS): Update accordingly. (SYMBOL_FLAG_BIND_NOW, SYMBOL_REF_BIND_NOW_P): New macros. (mips_split_hi_p): Declare. * config/mips/mips.c (mips_split_hi_p): New array. (mips_regno_to_class): Change M16_NA_REGS entries to M16_REGS. (mips_got_symbol_type_p): New function. (mips_global_symbol_p): Check SYMBOL_REF_EXTERNAL_P. (mips16_stub_function_p): New function. (mips16_local_function_p): Likewise. (mips_use_pic_fn_addr_reg_p): Likewise. (mips_cannot_force_const_mem): Return false for HIGHs. Extend CONST_INT and symbolic handling to MIPS16, using mips_symbol_insns to check that the base symbol type is a legitimate constant. Reject GOT-based constants if TARGET_MIPS16_PCREL_LOADS. (mips_const_insns): Check targetm.cannot_force_const_mem when decomposing a symbolic base and a large offset. (mips_emit_call_insn): Add ORIG_ADDR and ADDR parameters. When calling a function that needs $25 from MIPS16 code, move the target address into $25 separately and add a USE to the call insn. (mips16_gp_pseudo_reg): Insert the initializer immediately before the first real insn. (mips_pic_base_register, mips_got_load): New functions. (mips_split_symbol): Generalize the name of the LO_SUM_OUT parameter to LOW_OUT. Say that it can be any valid SET_SRC when splitting a load-address operation. Split SYMBOL_GOT_DISP constants and highs of SYMBOL_GOT_PAGE_OFST constants. (mips_call_tls_get_addr): Update the call to mips_expand_call, also passing NULL_RTX rather than const0_rtx as the aux argument. (mips_rewrite_small_data_p): Check mips_lo_relocs and mips_split_p instead of TARGET_EXPLICIT_RELOCS. (mips_ok_for_lazy_binding_p): Check SYMBOL_REF_BIND_NOW_P. (mips_load_call_address): Replace the sibcall_p argument with a mips_call_type argument. Use mips_got_load. (mips16_local_alias): New structure. (mips16_local_aliases): New variable. (mips16_local_aliases_hash): New function. (mips16_local_aliases_eq): Likewise. (mips16_local_alias): Likewise. (mips16_stub_function): Likewise. (mips16_build_function_stub): Create a local alias for the target function. Handle TARGET_ABICALLS. For PIC abicalls, emit a .cpload directive and an R_MIPS_NONE relocation for the target function, then load the alias rather than the function itself. Wrap the non-PIC abicalls version in ".option pic0/.option pic2". (mips16_copy_fpr_return_value): Use mips16_stub_function and mips_expand_call. Set SYMBOL_REF_BIND_NOW on the symbol. (mips16_build_call_stub): Replace the FN parameter with an FN_PTR parameter. Force the address into a register if it isn't a call_insn_operand; don't rely on the caller to do this. If a call to a locally-defined and locally-binding MIPS16 function must be made indirectly, redirect the call to the function's local alias. Use mips16_stub_function_p, mips16_stub_function, mips_expand_call and use_reg. Set SYMBOL_FLAG_BIND_NOW on __mips_call_* symbols. Use explicit %hi and %lo accesses where possible. Use MIPS_CALL to generate the correct code form of a jal instruction. Add clobbers of $18 instead of uses. Update the call to mips_emit_call_insn. (mips_expand_call): Replace the SIBCALL_P argument with a mips_call_type argument and handle the new MIPS_CALL_EPILOGUE value. Take a LAZY_P parameter. Call mips16_build_call_stub first, allowing it to modify the call address. Update the calls to mips_load_call_address and mips_emit_call_insn. (mips_split_call): New function. (mips_init_relocs): Clear mips_split_hi_p. Only use %gp_rel if !TARGET_MIPS16. Split SYMBOL_GOT_DISP, and the high parts of SYMBOL_GOT_PAGE_OFST, for MIPS16 code. (mips_global_pointer): Check mips16_cfun_returns_in_fpr_p. (mips_extra_live_on_entry): Include MIPS16_PIC_TEMP_REGNUM if TARGET_MIPS16. (mips_cprestore_slot): New function. (mips_restore_gp): Take a TEMP parameter. Handle TARGET_MIPS16 and use mips_cprestore_slot. (mips_output_function_prologue): Handle TARGET_MIPS16 for LOADGP_OLDABI. (mips_emit_loadgp): Move into MIPS16_PIC_TEMP for MIPS16, then use a copygp_mips16 instruction to set up $28. (mips_expand_prologue): Initialize the cprestore slot for MIPS16 too. (mips16_lay_out_constants): Call split_all_insns_noflow. (mips_reorg_process_insns): Explicitly set all_noreorder_p to false if TARGET_MIPS16. (mips_reorg): Don't call vr4130_align_insns if TARGET_MIPS16. (mips_output_mi_thunk): Use mips_got_symbol_type_p. Use the mips_dangerous_for_la25_p approach for MIPS16 PIC calls too. (mips_set_mips16_mode): Always set MASK_EXPLICIT_RELOCS for MIPS16 code. Allow MIPS16 o32 PIC. (mips_override_options): Allow MIPS16 o32 PIC. * config/mips/mips.md: Lower CONST_GP_P moves into register moves after reload if TARGET_USE_GOT. (UNSPEC_COPYGP): New constant. (length): Use a default length of 8 for MIPS16 GOT loads. (*got_disp<mode>): Check mips_split_p instead of TARGET_XGOT. (*got_page<mode>): Check mips_split_hi_p. (*got_disp<mode>, *got_page<mode>): Use mips_got_load. (unspec_got<mode>, unspec_call<mode>): New expanders. (load_got<mode>, load_call<mode>): Remove the length attributes. Use a got attribute instead of a type attribute. (copygp_mips16): New insn. (restore_gp): Add a scratch clobber and pass it to mips_restore_gp. (load_call<mode>): Use a "d" constraint instead of an "r" constraint. (sibcall, sibcall_value, call, call_value): Update the calls to mips_expand_call. (call_internal, call_value_internal): Use mips_split_call. (call_value_multiple_internal): Likewise. (call_split): Move after call_internal (the insn it is split from). (call_internal_direct, call_value_internal_direct): Turn into define_insn_and_splits. Split if TARGET_SPLIT_CALLS. (call_direct_split, call_value_direct_split): New patterns. * config/mips/constraints.md (c): Handle TARGET_MIPS16 first and use M16_REGS instead of M16_NA_REGS. * config/mips/predicates.md (const_call_insn_operand): Replace the TARGET_ABSOLUTE_ABICALLS-based check with a more general mips_use_pic_fn_addr_reg_p check. (move_operand): Reject HIGHs if mips_split_hi_p. * config/mips/mips16.S: Assembly as empty if the ABI is not suitable. (__mips16_floatunsisf): Inline __mips16_floatsisf. (CALL_STUB_NO_RET, CALL_STUB_REG): Copy the target register to $25. * config/mips/libgcc-mips16.ver: New file. * config/mips/t-libgcc-mips16 (SHLIB_MAPFILES): Add $(srcdir)/config/mips/libgcc-mips16.ver. gcc/testsuite/ * lib/target-supports.exp (check_profiling_available): Return false for -p and -pg on MIPS16 targets. From-SVN: r138912
2008-08-09 21:08:15 +02:00
tmake_file="${tmake_file} 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"
esac
test x$with_llsc != x || with_llsc=yes
;;
Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * config.gcc (*-*-openbsd): Don't set tm_file. (alpha*-*-openbsd, arm*-*-coff*, arm*-wince-pe*, arm-*-pe*, avr-*-*, h8300-*-rtems*, h8300-*-elf*, h8300-*-*, hppa*-*-osf*, hppa*-*-bsd*, hppa*-*-hpux*, i370-*-opened*, i370-*-mvs*, i370-*-linux*, i?86-*-openbsd*, i?86-*-lynxos, i?86-*-nto-qnx*, iq2000*-*-elf*, m68000-hp-hpux*, m68k-hp-hpux*, m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*, m68k*-*-netbsd*, m68k*-*-openbsd*, m68k-*-sysv4*, m68k-*-linux*, m68k-*-rtems*, mcore-*-pe*, mips*-*-netbsd*, mips*-*-openbsd*, rs6000-*-lynxos*, sh*-*-elf*, sh*-*-ka, sh-*-rtemself, sparc-*-openbsd*, strongarm-*-pe, vax-*-openbsd*, xscale-*-coff): Use explicit and complete lists of target headers to include. Move definitions to tm_defines where appropriate. (hppa*-*-openbsd*, powerpc-*-openbsd*): Comment out stanza for not-yet-contributed configuration. * config/lynx.h, config/alpha/openbsd.h, config/arm/coff.h * config/avr/avr.h, config/frv/frv.h, config/h8300/elf.h * config/i370/linux.h, config/i370/mvs.h, config/i370/oe.h * config/i386/nto.h, config/iq2000/iq2000.h, * config/m68k/coff.h, config/m68k/hp310.h, config/m68k/hp320.h * config/m68k/linux.h, config/m68k/m68k-aout.h * config/m68k/m68k-none.h, config/m68k/m68kv4.h * config/m68k/netbsd.h, config/m68k/openbsd.h * config/m68k/sgs.h, config/mcore/mcore-pe.h, * config/mips/netbsd.h, config/mips/openbsd.h, config/pa/pa.h, * config/rs6000/lynx.h, config/sh/embed-elf.h, config/sparc/openbsd.h: Remove includes of other target config headers, and definitions of macros moved to tm_defines lists. Add #undefs where now necessary to prevent redefinition warnings. * config/h8300/coff.h: New file split out of... * config/h8300/elf.h: ...here. * config/m68k/hp320base.h: New file split out of... * config/m68k/hp320.h: ...here. * config/rs6000/lynxbase.h: New file split out of... * config/rs6000/lynx.h: ...here. * config/m68k/hp310g.h, config/m68k/hp320g.h, config/m68k/hpux7.h * config/m68k/m68k-coff.h, config/mips/openbsd-be.h: Delete file. * config/sol2.h: Remove #if 0-ed #include of sys/mman.h. * config/m68k/m68kelf.h: Remove commented out #include of m68k/sgs.h. * config/mcore/mcore.h: Don't include hwint.h nor machmode.h. Remove unnecessary #ifndef. * config/s390/s390.h: Prefix #include of s390/fixdfdi.h [under IN_LIBGCC2] with config/. From-SVN: r70651
2003-08-21 19:27:29 +02:00
mips*-*-openbsd*)
tm_defines="${tm_defines} OBSD_HAS_DECLARE_FUNCTION_NAME OBSD_HAS_DECLARE_OBJECT OBSD_HAS_CORRECT_SPECS"
config.gcc (mips-*-*): Remove definitions of MASK_GAS and OBJECT_FORMAT_ELF. * config.gcc (mips-*-*): Remove definitions of MASK_GAS and OBJECT_FORMAT_ELF. Set MASK_SPLIT_ADDR by default if using GNU ld. * config/mips/mips.h (MASK_GAS): Delete. Shuffle later masks down. (TARGET_GAS, TARGET_MIPS_AS): Delete. (TARGET_GPWORD): Define to true for n32 on IRIX. (TARGET_SWITCHES): Remove -mmips-as. Turn -mgas into a no-op. (MIPS_AS_ASM_SPEC, SUBTARGET_MIPS_AS_ASM_SPEC): Delete. (GAS_ASM_SPEC): Delete, folding into ASM_SPEC. (ASM_ABI_DEFAULT_SPEC, TARGET_ASM_SPEC): Delete. (MDEBUG_ASM_SPEC): Delete, folding into... (SUBTARGET_ASM_DEBUGGING_SPEC): ...here. (ASM_SPEC): Inline old GAS_ASM_SPEC. Use GNU names for ABI switches. (EXTRA_SPECS): Remove mips_as_asm_spec, gas_asm_spec, target_asm_spec, subtarget_mips_as_asm_spec, mdebug_asm_spec. Use MULTILIB_ABI_DEFAULT to define asm_abi_default_spec. (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP): Delete. (TARGET_ASM_SELECT_SECTION): Delete. * config/mips/mips.c (MIPS_MAX_FIRST_STACK_STEP): Define to 0x7ff0 for non-mips16 code, removing previous workaround for SGI assemblers. (TARGET_ASM_INTEGER, mips_assemble_integer): Delete. (TARGET_ASM_ALIGNED_DI_OP): Define this instead. (override_options): Remove !TARGET_GAS and !have_named_sections code. (print_operand): Fold TARGET_GAS conditionals into asm strings. (mips_output_filename): Remove !TARGET_GAS code. Replace use of ASM_STABS_OP and ASM_STABN_OP. (mips_file_start): Remove TARGET_MIPS_AS/TARGET_GAS checks. (mips_output_aligned_decl_common): Remove mention of SGI o32 assembler. (mips_output_function_prologue): Remove !TARGET_GAS code. (mips_select_rtx_section): Remove !have_named_sections code. (mips_select_section): Delete. * config/mips/mips.md (trap): Remove !TARGET_GAS check. * config/mips/linux.h (TARGET_DEFAULT): Remove use of MASK_GAS. * config/mips/sdb.h (PUT_SDB_DEF, PUT_SDB_PLAIN_DEF): Delete. (PUT_SDB_BLOCK_START, PUT_SDB_BLOCK_END): Fold TARGET_GAS conditional. * config/mips/vxworks.h (ASM_SPEC): As for mips.h. * config/mips/windiss.h (ASM_SPEC): Likewise. testsuite/ * gcc.dg/special/mips-abi.exp: Expect gcc to pass the GNU ABI flags to the assembler. Simplify test accordingly. (asm_abi_flags): Use GNU names. (check_mips_abi, default_abi): Use string matches against "-mabi=*" to check for ABI flags. From-SVN: r86405
2004-08-23 08:53:46 +02:00
target_cpu_default="MASK_ABICALLS"
Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * config.gcc (*-*-openbsd): Don't set tm_file. (alpha*-*-openbsd, arm*-*-coff*, arm*-wince-pe*, arm-*-pe*, avr-*-*, h8300-*-rtems*, h8300-*-elf*, h8300-*-*, hppa*-*-osf*, hppa*-*-bsd*, hppa*-*-hpux*, i370-*-opened*, i370-*-mvs*, i370-*-linux*, i?86-*-openbsd*, i?86-*-lynxos, i?86-*-nto-qnx*, iq2000*-*-elf*, m68000-hp-hpux*, m68k-hp-hpux*, m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*, m68k*-*-netbsd*, m68k*-*-openbsd*, m68k-*-sysv4*, m68k-*-linux*, m68k-*-rtems*, mcore-*-pe*, mips*-*-netbsd*, mips*-*-openbsd*, rs6000-*-lynxos*, sh*-*-elf*, sh*-*-ka, sh-*-rtemself, sparc-*-openbsd*, strongarm-*-pe, vax-*-openbsd*, xscale-*-coff): Use explicit and complete lists of target headers to include. Move definitions to tm_defines where appropriate. (hppa*-*-openbsd*, powerpc-*-openbsd*): Comment out stanza for not-yet-contributed configuration. * config/lynx.h, config/alpha/openbsd.h, config/arm/coff.h * config/avr/avr.h, config/frv/frv.h, config/h8300/elf.h * config/i370/linux.h, config/i370/mvs.h, config/i370/oe.h * config/i386/nto.h, config/iq2000/iq2000.h, * config/m68k/coff.h, config/m68k/hp310.h, config/m68k/hp320.h * config/m68k/linux.h, config/m68k/m68k-aout.h * config/m68k/m68k-none.h, config/m68k/m68kv4.h * config/m68k/netbsd.h, config/m68k/openbsd.h * config/m68k/sgs.h, config/mcore/mcore-pe.h, * config/mips/netbsd.h, config/mips/openbsd.h, config/pa/pa.h, * config/rs6000/lynx.h, config/sh/embed-elf.h, config/sparc/openbsd.h: Remove includes of other target config headers, and definitions of macros moved to tm_defines lists. Add #undefs where now necessary to prevent redefinition warnings. * config/h8300/coff.h: New file split out of... * config/h8300/elf.h: ...here. * config/m68k/hp320base.h: New file split out of... * config/m68k/hp320.h: ...here. * config/rs6000/lynxbase.h: New file split out of... * config/rs6000/lynx.h: ...here. * config/m68k/hp310g.h, config/m68k/hp320g.h, config/m68k/hpux7.h * config/m68k/m68k-coff.h, config/mips/openbsd-be.h: Delete file. * config/sol2.h: Remove #if 0-ed #include of sys/mman.h. * config/m68k/m68kelf.h: Remove commented out #include of m68k/sgs.h. * config/mcore/mcore.h: Don't include hwint.h nor machmode.h. Remove unnecessary #ifndef. * config/s390/s390.h: Prefix #include of s390/fixdfdi.h [under IN_LIBGCC2] with config/. From-SVN: r70651
2003-08-21 19:27:29 +02:00
tm_file="mips/mips.h openbsd.h mips/openbsd.h mips/sdb.h"
case ${target} in
config.gcc (i?86-*-darwin): Add 64-bit HWI support. 2006-09-08 Eric Christopher <echristo@apple.com> * config.gcc (i?86-*-darwin): Add 64-bit HWI support. * config/t-slibgcc-darwin: Support x86_64 multilib. * config/i386/i386.h (JUMP_TABLES_IN_TEXT_SECTION): Return 1 for x86_64-darwin. * config/i386/t-darwin: Add m64 multilib. (LIB2_SIDITI_CONV_FUNCS): Use. (LIB2FUNCS_EXTRA): Ditto. * config/i386/darwin.h: Support x86_64. * config/i386/i386.c (override_options): Turn on flag_pic for x86_64-darwin. Disable flag_omit_pointer. (get_pc_thunk_name): Assert !TARGET_64BIT. (legitimate_address_p): Disable machopic addressing for x86_64. (legitimize_pic_address): Ditto. (ix86_expand_move): Ditto. (ix86_expand_call): Ditto. (machopic_output_stub): Ditto. * config/darwin.c (machopic_select_section): Support literal16. (machopic_select_rtx_section): Ditto. * config/darwin-sections.def: Ditto. * config/darwin-64.c: New. 2006-09-08 Eric Christopher <echristo@apple.com> * gcc.target/i386/20060512-3.c: Run test on ilp32 only. * gcc.target/i386/memcpy-1.c: Ditto. * gcc.target/i386/asm-1.c: Ditto. * gcc.target/i386/20060512-4.c: Ditto. * gcc.target/i386/compress-float-387.c: Ditto. * gcc.target/i386/20060512-1.c: Ditto. * gcc.target/i386/compress-float-sse.c: Ditto. * gcc.target/i386/20060512-2.c: Ditto. * gcc.target/i386/compress-float-sse-pic.c: Ditto. * gcc.target/i386/stack-prot-kernel.c: Ditto. * gcc.target/i386/compress-float-387-pic.c: Ditto. * gcc.dg/pr26449.c: Ditto. * gcc.dg/attr-ms_struct-2.c: Ditto. * gcc.dg/attr-ms_struct-1.c: Ditto. * gcc.misc-tests/linkage.exp: Fix 64-bit darwin support. 2006-09-08 Eric Christopher <echristo@apple.com> * configure.ac: Add 64-bit HWI support for i?86-darwin. From-SVN: r116795
2006-09-09 02:27:47 +02:00
mips*el-*-openbsd*)
Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * config.gcc (*-*-openbsd): Don't set tm_file. (alpha*-*-openbsd, arm*-*-coff*, arm*-wince-pe*, arm-*-pe*, avr-*-*, h8300-*-rtems*, h8300-*-elf*, h8300-*-*, hppa*-*-osf*, hppa*-*-bsd*, hppa*-*-hpux*, i370-*-opened*, i370-*-mvs*, i370-*-linux*, i?86-*-openbsd*, i?86-*-lynxos, i?86-*-nto-qnx*, iq2000*-*-elf*, m68000-hp-hpux*, m68k-hp-hpux*, m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*, m68k*-*-netbsd*, m68k*-*-openbsd*, m68k-*-sysv4*, m68k-*-linux*, m68k-*-rtems*, mcore-*-pe*, mips*-*-netbsd*, mips*-*-openbsd*, rs6000-*-lynxos*, sh*-*-elf*, sh*-*-ka, sh-*-rtemself, sparc-*-openbsd*, strongarm-*-pe, vax-*-openbsd*, xscale-*-coff): Use explicit and complete lists of target headers to include. Move definitions to tm_defines where appropriate. (hppa*-*-openbsd*, powerpc-*-openbsd*): Comment out stanza for not-yet-contributed configuration. * config/lynx.h, config/alpha/openbsd.h, config/arm/coff.h * config/avr/avr.h, config/frv/frv.h, config/h8300/elf.h * config/i370/linux.h, config/i370/mvs.h, config/i370/oe.h * config/i386/nto.h, config/iq2000/iq2000.h, * config/m68k/coff.h, config/m68k/hp310.h, config/m68k/hp320.h * config/m68k/linux.h, config/m68k/m68k-aout.h * config/m68k/m68k-none.h, config/m68k/m68kv4.h * config/m68k/netbsd.h, config/m68k/openbsd.h * config/m68k/sgs.h, config/mcore/mcore-pe.h, * config/mips/netbsd.h, config/mips/openbsd.h, config/pa/pa.h, * config/rs6000/lynx.h, config/sh/embed-elf.h, config/sparc/openbsd.h: Remove includes of other target config headers, and definitions of macros moved to tm_defines lists. Add #undefs where now necessary to prevent redefinition warnings. * config/h8300/coff.h: New file split out of... * config/h8300/elf.h: ...here. * config/m68k/hp320base.h: New file split out of... * config/m68k/hp320.h: ...here. * config/rs6000/lynxbase.h: New file split out of... * config/rs6000/lynx.h: ...here. * config/m68k/hp310g.h, config/m68k/hp320g.h, config/m68k/hpux7.h * config/m68k/m68k-coff.h, config/mips/openbsd-be.h: Delete file. * config/sol2.h: Remove #if 0-ed #include of sys/mman.h. * config/m68k/m68kelf.h: Remove commented out #include of m68k/sgs.h. * config/mcore/mcore.h: Don't include hwint.h nor machmode.h. Remove unnecessary #ifndef. * config/s390/s390.h: Prefix #include of s390/fixdfdi.h [under IN_LIBGCC2] with config/. From-SVN: r70651
2003-08-21 19:27:29 +02:00
tm_defines="${tm_defines} TARGET_ENDIAN_DEFAULT=0";;
*) tm_defines="${tm_defines} TARGET_ENDIAN_DEFAULT=MASK_BIG_ENDIAN";;
esac
;;
2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo... gcc/ 2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo Seufer <ths@mips.com> Chris Dearman <chris@mips.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (mips*-sde-elf*): New stanza. (mipsisa32-*-elf*, mipsisa32el-*-elf*, mipsisa32r2-*-elf*) (mipsisa32r2el-*-elf*, mipsisa64-*-elf*, mipsisa64el-*-elf*) (mipsisa64sb1-*-elf*, mipsisa64sb1el-*-elf*, mips-*-elf*) (mipsel-*-elf*, mips64-*-elf*, mips64el-*-elf*, mips64orion-*-elf*) (mips64orionel-*-elf*, mips*-*-rtems*, mips-wrs-windiss) (mipstx39-*-elf*, mipstx39el-*-elf*): Add mips/t-libgcc-mips16 to tmake_file. * config/mips/sde.h: New file. * config/mips/t-libgcc-mips16: Likewise. * config/mips/t-sde: Likewise. * config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Remove settings of _ABIN32, _ABI64, _ABIO32, _MIPS_SIM, _MIPS_SZLONG, _MIPS_SZPTR, _MIPS_FPSET and _MIPS_SZINT. * config/mips/iris.h (TARGET_OS_CPP_BUILTINS): Likewise. * config/mips/elfoabi.h (DRIVER_SELF_SPECS): Remove separate insertion of a default -mips option. Use MIPS_32BIT_OPTION_SPEC. * config/mips/t-isa3264 (LIB1ASMSRC, LIB1ASMFUNCS): Delete. * config/mips/t-r3900 (LIB1ASMSRC, LIB1ASMFUNCS): Likewise. * config/mips/t-elf (LIB1ASMSRC, LIB1ASMFUNCS): Likewise. * config/mips/mips.h (TARGET_CPU_CPP_BUITINS): Define _ABIO32, _ABIN32, _ABI64, _ABIO64, _MIPS_SIM, _MIPS_SZINT, _MIPS_SZLONG, _MIPS_SZPTR and _MIPS_FPSET. (MIPS_ISA_LEVEL_SPEC): Inject the default -mips option if no architecture is specified. (MIPS_32BIT_OPTION_SPEC): New macro. Co-Authored-By: Chris Dearman <chris@mips.com> Co-Authored-By: David Ung <davidu@mips.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> Co-Authored-By: Thiemo Seufer <ths@mips.com> From-SVN: r127113
2007-08-01 08:21:43 +02:00
mips*-sde-elf*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h mips/sde.h"
2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo... gcc/ 2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo Seufer <ths@mips.com> Chris Dearman <chris@mips.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (mips*-sde-elf*): New stanza. (mipsisa32-*-elf*, mipsisa32el-*-elf*, mipsisa32r2-*-elf*) (mipsisa32r2el-*-elf*, mipsisa64-*-elf*, mipsisa64el-*-elf*) (mipsisa64sb1-*-elf*, mipsisa64sb1el-*-elf*, mips-*-elf*) (mipsel-*-elf*, mips64-*-elf*, mips64el-*-elf*, mips64orion-*-elf*) (mips64orionel-*-elf*, mips*-*-rtems*, mips-wrs-windiss) (mipstx39-*-elf*, mipstx39el-*-elf*): Add mips/t-libgcc-mips16 to tmake_file. * config/mips/sde.h: New file. * config/mips/t-libgcc-mips16: Likewise. * config/mips/t-sde: Likewise. * config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Remove settings of _ABIN32, _ABI64, _ABIO32, _MIPS_SIM, _MIPS_SZLONG, _MIPS_SZPTR, _MIPS_FPSET and _MIPS_SZINT. * config/mips/iris.h (TARGET_OS_CPP_BUILTINS): Likewise. * config/mips/elfoabi.h (DRIVER_SELF_SPECS): Remove separate insertion of a default -mips option. Use MIPS_32BIT_OPTION_SPEC. * config/mips/t-isa3264 (LIB1ASMSRC, LIB1ASMFUNCS): Delete. * config/mips/t-r3900 (LIB1ASMSRC, LIB1ASMFUNCS): Likewise. * config/mips/t-elf (LIB1ASMSRC, LIB1ASMFUNCS): Likewise. * config/mips/mips.h (TARGET_CPU_CPP_BUITINS): Define _ABIO32, _ABIN32, _ABI64, _ABIO64, _MIPS_SIM, _MIPS_SZINT, _MIPS_SZLONG, _MIPS_SZPTR and _MIPS_FPSET. (MIPS_ISA_LEVEL_SPEC): Inject the default -mips option if no architecture is specified. (MIPS_32BIT_OPTION_SPEC): New macro. Co-Authored-By: Chris Dearman <chris@mips.com> Co-Authored-By: David Ung <davidu@mips.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> Co-Authored-By: Thiemo Seufer <ths@mips.com> From-SVN: r127113
2007-08-01 08:21:43 +02:00
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
2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo... gcc/ 2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo Seufer <ths@mips.com> Chris Dearman <chris@mips.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (mips*-sde-elf*): New stanza. (mipsisa32-*-elf*, mipsisa32el-*-elf*, mipsisa32r2-*-elf*) (mipsisa32r2el-*-elf*, mipsisa64-*-elf*, mipsisa64el-*-elf*) (mipsisa64sb1-*-elf*, mipsisa64sb1el-*-elf*, mips-*-elf*) (mipsel-*-elf*, mips64-*-elf*, mips64el-*-elf*, mips64orion-*-elf*) (mips64orionel-*-elf*, mips*-*-rtems*, mips-wrs-windiss) (mipstx39-*-elf*, mipstx39el-*-elf*): Add mips/t-libgcc-mips16 to tmake_file. * config/mips/sde.h: New file. * config/mips/t-libgcc-mips16: Likewise. * config/mips/t-sde: Likewise. * config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Remove settings of _ABIN32, _ABI64, _ABIO32, _MIPS_SIM, _MIPS_SZLONG, _MIPS_SZPTR, _MIPS_FPSET and _MIPS_SZINT. * config/mips/iris.h (TARGET_OS_CPP_BUILTINS): Likewise. * config/mips/elfoabi.h (DRIVER_SELF_SPECS): Remove separate insertion of a default -mips option. Use MIPS_32BIT_OPTION_SPEC. * config/mips/t-isa3264 (LIB1ASMSRC, LIB1ASMFUNCS): Delete. * config/mips/t-r3900 (LIB1ASMSRC, LIB1ASMFUNCS): Likewise. * config/mips/t-elf (LIB1ASMSRC, LIB1ASMFUNCS): Likewise. * config/mips/mips.h (TARGET_CPU_CPP_BUITINS): Define _ABIO32, _ABIN32, _ABI64, _ABIO64, _MIPS_SIM, _MIPS_SZINT, _MIPS_SZLONG, _MIPS_SZPTR and _MIPS_FPSET. (MIPS_ISA_LEVEL_SPEC): Inject the default -mips option if no architecture is specified. (MIPS_32BIT_OPTION_SPEC): New macro. Co-Authored-By: Chris Dearman <chris@mips.com> Co-Authored-By: David Ung <davidu@mips.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> Co-Authored-By: Thiemo Seufer <ths@mips.com> From-SVN: r127113
2007-08-01 08:21:43 +02:00
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"
;;
mipsisa64r2*)
tm_defines="MIPS_ISA_DEFAULT=65 MIPS_ABI_DEFAULT=ABI_N32"
;;
2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo... gcc/ 2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo Seufer <ths@mips.com> Chris Dearman <chris@mips.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (mips*-sde-elf*): New stanza. (mipsisa32-*-elf*, mipsisa32el-*-elf*, mipsisa32r2-*-elf*) (mipsisa32r2el-*-elf*, mipsisa64-*-elf*, mipsisa64el-*-elf*) (mipsisa64sb1-*-elf*, mipsisa64sb1el-*-elf*, mips-*-elf*) (mipsel-*-elf*, mips64-*-elf*, mips64el-*-elf*, mips64orion-*-elf*) (mips64orionel-*-elf*, mips*-*-rtems*, mips-wrs-windiss) (mipstx39-*-elf*, mipstx39el-*-elf*): Add mips/t-libgcc-mips16 to tmake_file. * config/mips/sde.h: New file. * config/mips/t-libgcc-mips16: Likewise. * config/mips/t-sde: Likewise. * config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Remove settings of _ABIN32, _ABI64, _ABIO32, _MIPS_SIM, _MIPS_SZLONG, _MIPS_SZPTR, _MIPS_FPSET and _MIPS_SZINT. * config/mips/iris.h (TARGET_OS_CPP_BUILTINS): Likewise. * config/mips/elfoabi.h (DRIVER_SELF_SPECS): Remove separate insertion of a default -mips option. Use MIPS_32BIT_OPTION_SPEC. * config/mips/t-isa3264 (LIB1ASMSRC, LIB1ASMFUNCS): Delete. * config/mips/t-r3900 (LIB1ASMSRC, LIB1ASMFUNCS): Likewise. * config/mips/t-elf (LIB1ASMSRC, LIB1ASMFUNCS): Likewise. * config/mips/mips.h (TARGET_CPU_CPP_BUITINS): Define _ABIO32, _ABIN32, _ABI64, _ABIO64, _MIPS_SIM, _MIPS_SZINT, _MIPS_SZLONG, _MIPS_SZPTR and _MIPS_FPSET. (MIPS_ISA_LEVEL_SPEC): Inject the default -mips option if no architecture is specified. (MIPS_32BIT_OPTION_SPEC): New macro. Co-Authored-By: Chris Dearman <chris@mips.com> Co-Authored-By: David Ung <davidu@mips.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> Co-Authored-By: Thiemo Seufer <ths@mips.com> From-SVN: r127113
2007-08-01 08:21:43 +02:00
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* | \
mipsisa64r2-*-elf* | mipsisa64r2el-*-elf*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h"
2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo... gcc/ 2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo Seufer <ths@mips.com> Chris Dearman <chris@mips.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (mips*-sde-elf*): New stanza. (mipsisa32-*-elf*, mipsisa32el-*-elf*, mipsisa32r2-*-elf*) (mipsisa32r2el-*-elf*, mipsisa64-*-elf*, mipsisa64el-*-elf*) (mipsisa64sb1-*-elf*, mipsisa64sb1el-*-elf*, mips-*-elf*) (mipsel-*-elf*, mips64-*-elf*, mips64el-*-elf*, mips64orion-*-elf*) (mips64orionel-*-elf*, mips*-*-rtems*, mips-wrs-windiss) (mipstx39-*-elf*, mipstx39el-*-elf*): Add mips/t-libgcc-mips16 to tmake_file. * config/mips/sde.h: New file. * config/mips/t-libgcc-mips16: Likewise. * config/mips/t-sde: Likewise. * config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Remove settings of _ABIN32, _ABI64, _ABIO32, _MIPS_SIM, _MIPS_SZLONG, _MIPS_SZPTR, _MIPS_FPSET and _MIPS_SZINT. * config/mips/iris.h (TARGET_OS_CPP_BUILTINS): Likewise. * config/mips/elfoabi.h (DRIVER_SELF_SPECS): Remove separate insertion of a default -mips option. Use MIPS_32BIT_OPTION_SPEC. * config/mips/t-isa3264 (LIB1ASMSRC, LIB1ASMFUNCS): Delete. * config/mips/t-r3900 (LIB1ASMSRC, LIB1ASMFUNCS): Likewise. * config/mips/t-elf (LIB1ASMSRC, LIB1ASMFUNCS): Likewise. * config/mips/mips.h (TARGET_CPU_CPP_BUITINS): Define _ABIO32, _ABIN32, _ABI64, _ABIO64, _MIPS_SIM, _MIPS_SZINT, _MIPS_SZLONG, _MIPS_SZPTR and _MIPS_FPSET. (MIPS_ISA_LEVEL_SPEC): Inject the default -mips option if no architecture is specified. (MIPS_32BIT_OPTION_SPEC): New macro. Co-Authored-By: Chris Dearman <chris@mips.com> Co-Authored-By: David Ung <davidu@mips.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> Co-Authored-By: Thiemo Seufer <ths@mips.com> From-SVN: r127113
2007-08-01 08:21:43 +02:00
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"
;;
mipsisa64r2*)
tm_defines="${tm_defines} MIPS_ISA_DEFAULT=65"
;;
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
;;
config.sub: Import from master repository. 2002-08-15 Eric Christopher <echristo@redhat.com> * config.sub: Import from master repository. * config.guess: Ditto. 2002-08-15 Eric Christopher <echristo@redhat.com> Jeff Knaggs <jknaggs@redhat.com> * config.gcc (mipsisa64sr71k-elf): New target. * config/mips/sr71k.md: New file. * config/mips/mips.md: Use it. (rot*): Add sr71k specifics. * config/mips/t-sr71k: New file. * config/mips/mips.h (sr71k): New cpu. (TARGET_SR71K): Use it. (TUNE_SR71K): Ditto. (GENERATE_BRANCHLIKELY): Ditto. (ISA_HAS_MULHI, ISA_HAS_MULS, ISA_HAS_MSAC, ISA_HAS_MACC, ISA_HAS_ROTR_SIISA_HAS_ROTR_DI): Ditto. * config/mips/mips.c (sr71k): New cpu. (mips_use_dfa_pipeline_interface): Use. 2002-08-15 Eric Christopher <echristo@redhat.com> Richard Sandiford <rsandifo@redhat.com> Aldy Hernandez <aldyh@redhat.com> Graham Stott <grahams@redhat.com> Michael Meissner <meissner@redhat.com> Gavin Romig-Koch <gavin@redhat.com> Ken Raeburn <raeburn@cygnus.com> Alexandre Oliva <aoliva@redhat.com> * config.gcc (mips64vr-elf): New target. * config/mips/5400.md: New file. * config/mips/5500.md: Ditto. * config/mips/mips.md: Use them. (frsqrt): New. * config/mips/mips.c (vr4111, vr4121, vr4320, vr5400, vr5500): New cpus. (mips_issue_rate): Use them. (mips_use_dfa_pipeline_interface): New function. Use for 5400 and 5500. (TARGET_SCHEDUSE_DFA_PIPELINE_INTERFACE): Define. Use above. * config/mips/mips.h (vr4111, vr4121, vr4320, vr5400, vr5500): New cpus. (TARGET_MIPSx): Use them. (TUNE_MIPSx): Ditto. (GETNATE_MULT3_SI): Ditto. (ISA_HAS_BRANCHLIKELY): Ditto. (ISA_HAS_CONDMOVE): Ditto. (ISA_HAS_NMADD_NMSUB): Ditto. (ISA_HAS_MULHI): New. Ditto. (ISA_HAS_MULS): Ditto. (ISA_HAS_MSAC): Ditto. (ISA_HAS_MACC): Ditto. (ISA_HAS_ROTR_SI): Ditto. (ISA_HAS_ROTR_DI): Ditto. (RTX_COSTS): Use. From-SVN: r56471
2002-08-20 23:53:28 +02:00
mipsisa64sr71k-*-elf*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h"
config.sub: Import from master repository. 2002-08-15 Eric Christopher <echristo@redhat.com> * config.sub: Import from master repository. * config.guess: Ditto. 2002-08-15 Eric Christopher <echristo@redhat.com> Jeff Knaggs <jknaggs@redhat.com> * config.gcc (mipsisa64sr71k-elf): New target. * config/mips/sr71k.md: New file. * config/mips/mips.md: Use it. (rot*): Add sr71k specifics. * config/mips/t-sr71k: New file. * config/mips/mips.h (sr71k): New cpu. (TARGET_SR71K): Use it. (TUNE_SR71K): Ditto. (GENERATE_BRANCHLIKELY): Ditto. (ISA_HAS_MULHI, ISA_HAS_MULS, ISA_HAS_MSAC, ISA_HAS_MACC, ISA_HAS_ROTR_SIISA_HAS_ROTR_DI): Ditto. * config/mips/mips.c (sr71k): New cpu. (mips_use_dfa_pipeline_interface): Use. 2002-08-15 Eric Christopher <echristo@redhat.com> Richard Sandiford <rsandifo@redhat.com> Aldy Hernandez <aldyh@redhat.com> Graham Stott <grahams@redhat.com> Michael Meissner <meissner@redhat.com> Gavin Romig-Koch <gavin@redhat.com> Ken Raeburn <raeburn@cygnus.com> Alexandre Oliva <aoliva@redhat.com> * config.gcc (mips64vr-elf): New target. * config/mips/5400.md: New file. * config/mips/5500.md: Ditto. * config/mips/mips.md: Use them. (frsqrt): New. * config/mips/mips.c (vr4111, vr4121, vr4320, vr5400, vr5500): New cpus. (mips_issue_rate): Use them. (mips_use_dfa_pipeline_interface): New function. Use for 5400 and 5500. (TARGET_SCHEDUSE_DFA_PIPELINE_INTERFACE): Define. Use above. * config/mips/mips.h (vr4111, vr4121, vr4320, vr5400, vr5500): New cpus. (TARGET_MIPSx): Use them. (TUNE_MIPSx): Ditto. (GETNATE_MULT3_SI): Ditto. (ISA_HAS_BRANCHLIKELY): Ditto. (ISA_HAS_CONDMOVE): Ditto. (ISA_HAS_NMADD_NMSUB): Ditto. (ISA_HAS_MULHI): New. Ditto. (ISA_HAS_MULS): Ditto. (ISA_HAS_MSAC): Ditto. (ISA_HAS_MACC): Ditto. (ISA_HAS_ROTR_SI): Ditto. (ISA_HAS_ROTR_DI): Ditto. (RTX_COSTS): Use. From-SVN: r56471
2002-08-20 23:53:28 +02:00
tmake_file=mips/t-sr71k
config.gcc (mips-*-*): Remove definitions of MASK_GAS and OBJECT_FORMAT_ELF. * config.gcc (mips-*-*): Remove definitions of MASK_GAS and OBJECT_FORMAT_ELF. Set MASK_SPLIT_ADDR by default if using GNU ld. * config/mips/mips.h (MASK_GAS): Delete. Shuffle later masks down. (TARGET_GAS, TARGET_MIPS_AS): Delete. (TARGET_GPWORD): Define to true for n32 on IRIX. (TARGET_SWITCHES): Remove -mmips-as. Turn -mgas into a no-op. (MIPS_AS_ASM_SPEC, SUBTARGET_MIPS_AS_ASM_SPEC): Delete. (GAS_ASM_SPEC): Delete, folding into ASM_SPEC. (ASM_ABI_DEFAULT_SPEC, TARGET_ASM_SPEC): Delete. (MDEBUG_ASM_SPEC): Delete, folding into... (SUBTARGET_ASM_DEBUGGING_SPEC): ...here. (ASM_SPEC): Inline old GAS_ASM_SPEC. Use GNU names for ABI switches. (EXTRA_SPECS): Remove mips_as_asm_spec, gas_asm_spec, target_asm_spec, subtarget_mips_as_asm_spec, mdebug_asm_spec. Use MULTILIB_ABI_DEFAULT to define asm_abi_default_spec. (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP): Delete. (TARGET_ASM_SELECT_SECTION): Delete. * config/mips/mips.c (MIPS_MAX_FIRST_STACK_STEP): Define to 0x7ff0 for non-mips16 code, removing previous workaround for SGI assemblers. (TARGET_ASM_INTEGER, mips_assemble_integer): Delete. (TARGET_ASM_ALIGNED_DI_OP): Define this instead. (override_options): Remove !TARGET_GAS and !have_named_sections code. (print_operand): Fold TARGET_GAS conditionals into asm strings. (mips_output_filename): Remove !TARGET_GAS code. Replace use of ASM_STABS_OP and ASM_STABN_OP. (mips_file_start): Remove TARGET_MIPS_AS/TARGET_GAS checks. (mips_output_aligned_decl_common): Remove mention of SGI o32 assembler. (mips_output_function_prologue): Remove !TARGET_GAS code. (mips_select_rtx_section): Remove !have_named_sections code. (mips_select_section): Delete. * config/mips/mips.md (trap): Remove !TARGET_GAS check. * config/mips/linux.h (TARGET_DEFAULT): Remove use of MASK_GAS. * config/mips/sdb.h (PUT_SDB_DEF, PUT_SDB_PLAIN_DEF): Delete. (PUT_SDB_BLOCK_START, PUT_SDB_BLOCK_END): Fold TARGET_GAS conditional. * config/mips/vxworks.h (ASM_SPEC): As for mips.h. * config/mips/windiss.h (ASM_SPEC): Likewise. testsuite/ * gcc.dg/special/mips-abi.exp: Expect gcc to pass the GNU ABI flags to the assembler. Simplify test accordingly. (asm_abi_flags): Use GNU names. (check_mips_abi, default_abi): Use string matches against "-mabi=*" to check for ABI flags. From-SVN: r86405
2004-08-23 08:53:46 +02:00
target_cpu_default="MASK_64BIT|MASK_FLOAT64"
tm_defines="${tm_defines} MIPS_ISA_DEFAULT=64 MIPS_CPU_STRING_DEFAULT=\\\"sr71000\\\" MIPS_ABI_DEFAULT=ABI_EABI"
config.sub: Import from master repository. 2002-08-15 Eric Christopher <echristo@redhat.com> * config.sub: Import from master repository. * config.guess: Ditto. 2002-08-15 Eric Christopher <echristo@redhat.com> Jeff Knaggs <jknaggs@redhat.com> * config.gcc (mipsisa64sr71k-elf): New target. * config/mips/sr71k.md: New file. * config/mips/mips.md: Use it. (rot*): Add sr71k specifics. * config/mips/t-sr71k: New file. * config/mips/mips.h (sr71k): New cpu. (TARGET_SR71K): Use it. (TUNE_SR71K): Ditto. (GENERATE_BRANCHLIKELY): Ditto. (ISA_HAS_MULHI, ISA_HAS_MULS, ISA_HAS_MSAC, ISA_HAS_MACC, ISA_HAS_ROTR_SIISA_HAS_ROTR_DI): Ditto. * config/mips/mips.c (sr71k): New cpu. (mips_use_dfa_pipeline_interface): Use. 2002-08-15 Eric Christopher <echristo@redhat.com> Richard Sandiford <rsandifo@redhat.com> Aldy Hernandez <aldyh@redhat.com> Graham Stott <grahams@redhat.com> Michael Meissner <meissner@redhat.com> Gavin Romig-Koch <gavin@redhat.com> Ken Raeburn <raeburn@cygnus.com> Alexandre Oliva <aoliva@redhat.com> * config.gcc (mips64vr-elf): New target. * config/mips/5400.md: New file. * config/mips/5500.md: Ditto. * config/mips/mips.md: Use them. (frsqrt): New. * config/mips/mips.c (vr4111, vr4121, vr4320, vr5400, vr5500): New cpus. (mips_issue_rate): Use them. (mips_use_dfa_pipeline_interface): New function. Use for 5400 and 5500. (TARGET_SCHEDUSE_DFA_PIPELINE_INTERFACE): Define. Use above. * config/mips/mips.h (vr4111, vr4121, vr4320, vr5400, vr5500): New cpus. (TARGET_MIPSx): Use them. (TUNE_MIPSx): Ditto. (GETNATE_MULT3_SI): Ditto. (ISA_HAS_BRANCHLIKELY): Ditto. (ISA_HAS_CONDMOVE): Ditto. (ISA_HAS_NMADD_NMSUB): Ditto. (ISA_HAS_MULHI): New. Ditto. (ISA_HAS_MULS): Ditto. (ISA_HAS_MSAC): Ditto. (ISA_HAS_MACC): Ditto. (ISA_HAS_ROTR_SI): Ditto. (ISA_HAS_ROTR_DI): Ditto. (RTX_COSTS): Use. From-SVN: r56471
2002-08-20 23:53:28 +02:00
;;
mipsisa64sb1-*-elf* | mipsisa64sb1el-*-elf*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h"
2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo... gcc/ 2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo Seufer <ths@mips.com> Chris Dearman <chris@mips.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (mips*-sde-elf*): New stanza. (mipsisa32-*-elf*, mipsisa32el-*-elf*, mipsisa32r2-*-elf*) (mipsisa32r2el-*-elf*, mipsisa64-*-elf*, mipsisa64el-*-elf*) (mipsisa64sb1-*-elf*, mipsisa64sb1el-*-elf*, mips-*-elf*) (mipsel-*-elf*, mips64-*-elf*, mips64el-*-elf*, mips64orion-*-elf*) (mips64orionel-*-elf*, mips*-*-rtems*, mips-wrs-windiss) (mipstx39-*-elf*, mipstx39el-*-elf*): Add mips/t-libgcc-mips16 to tmake_file. * config/mips/sde.h: New file. * config/mips/t-libgcc-mips16: Likewise. * config/mips/t-sde: Likewise. * config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Remove settings of _ABIN32, _ABI64, _ABIO32, _MIPS_SIM, _MIPS_SZLONG, _MIPS_SZPTR, _MIPS_FPSET and _MIPS_SZINT. * config/mips/iris.h (TARGET_OS_CPP_BUILTINS): Likewise. * config/mips/elfoabi.h (DRIVER_SELF_SPECS): Remove separate insertion of a default -mips option. Use MIPS_32BIT_OPTION_SPEC. * config/mips/t-isa3264 (LIB1ASMSRC, LIB1ASMFUNCS): Delete. * config/mips/t-r3900 (LIB1ASMSRC, LIB1ASMFUNCS): Likewise. * config/mips/t-elf (LIB1ASMSRC, LIB1ASMFUNCS): Likewise. * config/mips/mips.h (TARGET_CPU_CPP_BUITINS): Define _ABIO32, _ABIN32, _ABI64, _ABIO64, _MIPS_SIM, _MIPS_SZINT, _MIPS_SZLONG, _MIPS_SZPTR and _MIPS_FPSET. (MIPS_ISA_LEVEL_SPEC): Inject the default -mips option if no architecture is specified. (MIPS_32BIT_OPTION_SPEC): New macro. Co-Authored-By: Chris Dearman <chris@mips.com> Co-Authored-By: David Ung <davidu@mips.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> Co-Authored-By: Thiemo Seufer <ths@mips.com> From-SVN: r127113
2007-08-01 08:21:43 +02:00
tmake_file="mips/t-elf mips/t-libgcc-mips16 mips/t-sb1"
config.gcc (mips-*-*): Remove definitions of MASK_GAS and OBJECT_FORMAT_ELF. * config.gcc (mips-*-*): Remove definitions of MASK_GAS and OBJECT_FORMAT_ELF. Set MASK_SPLIT_ADDR by default if using GNU ld. * config/mips/mips.h (MASK_GAS): Delete. Shuffle later masks down. (TARGET_GAS, TARGET_MIPS_AS): Delete. (TARGET_GPWORD): Define to true for n32 on IRIX. (TARGET_SWITCHES): Remove -mmips-as. Turn -mgas into a no-op. (MIPS_AS_ASM_SPEC, SUBTARGET_MIPS_AS_ASM_SPEC): Delete. (GAS_ASM_SPEC): Delete, folding into ASM_SPEC. (ASM_ABI_DEFAULT_SPEC, TARGET_ASM_SPEC): Delete. (MDEBUG_ASM_SPEC): Delete, folding into... (SUBTARGET_ASM_DEBUGGING_SPEC): ...here. (ASM_SPEC): Inline old GAS_ASM_SPEC. Use GNU names for ABI switches. (EXTRA_SPECS): Remove mips_as_asm_spec, gas_asm_spec, target_asm_spec, subtarget_mips_as_asm_spec, mdebug_asm_spec. Use MULTILIB_ABI_DEFAULT to define asm_abi_default_spec. (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP): Delete. (TARGET_ASM_SELECT_SECTION): Delete. * config/mips/mips.c (MIPS_MAX_FIRST_STACK_STEP): Define to 0x7ff0 for non-mips16 code, removing previous workaround for SGI assemblers. (TARGET_ASM_INTEGER, mips_assemble_integer): Delete. (TARGET_ASM_ALIGNED_DI_OP): Define this instead. (override_options): Remove !TARGET_GAS and !have_named_sections code. (print_operand): Fold TARGET_GAS conditionals into asm strings. (mips_output_filename): Remove !TARGET_GAS code. Replace use of ASM_STABS_OP and ASM_STABN_OP. (mips_file_start): Remove TARGET_MIPS_AS/TARGET_GAS checks. (mips_output_aligned_decl_common): Remove mention of SGI o32 assembler. (mips_output_function_prologue): Remove !TARGET_GAS code. (mips_select_rtx_section): Remove !have_named_sections code. (mips_select_section): Delete. * config/mips/mips.md (trap): Remove !TARGET_GAS check. * config/mips/linux.h (TARGET_DEFAULT): Remove use of MASK_GAS. * config/mips/sdb.h (PUT_SDB_DEF, PUT_SDB_PLAIN_DEF): Delete. (PUT_SDB_BLOCK_START, PUT_SDB_BLOCK_END): Fold TARGET_GAS conditional. * config/mips/vxworks.h (ASM_SPEC): As for mips.h. * config/mips/windiss.h (ASM_SPEC): Likewise. testsuite/ * gcc.dg/special/mips-abi.exp: Expect gcc to pass the GNU ABI flags to the assembler. Simplify test accordingly. (asm_abi_flags): Use GNU names. (check_mips_abi, default_abi): Use string matches against "-mabi=*" to check for ABI flags. From-SVN: r86405
2004-08-23 08:53:46 +02:00
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*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h"
2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo... gcc/ 2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo Seufer <ths@mips.com> Chris Dearman <chris@mips.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (mips*-sde-elf*): New stanza. (mipsisa32-*-elf*, mipsisa32el-*-elf*, mipsisa32r2-*-elf*) (mipsisa32r2el-*-elf*, mipsisa64-*-elf*, mipsisa64el-*-elf*) (mipsisa64sb1-*-elf*, mipsisa64sb1el-*-elf*, mips-*-elf*) (mipsel-*-elf*, mips64-*-elf*, mips64el-*-elf*, mips64orion-*-elf*) (mips64orionel-*-elf*, mips*-*-rtems*, mips-wrs-windiss) (mipstx39-*-elf*, mipstx39el-*-elf*): Add mips/t-libgcc-mips16 to tmake_file. * config/mips/sde.h: New file. * config/mips/t-libgcc-mips16: Likewise. * config/mips/t-sde: Likewise. * config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Remove settings of _ABIN32, _ABI64, _ABIO32, _MIPS_SIM, _MIPS_SZLONG, _MIPS_SZPTR, _MIPS_FPSET and _MIPS_SZINT. * config/mips/iris.h (TARGET_OS_CPP_BUILTINS): Likewise. * config/mips/elfoabi.h (DRIVER_SELF_SPECS): Remove separate insertion of a default -mips option. Use MIPS_32BIT_OPTION_SPEC. * config/mips/t-isa3264 (LIB1ASMSRC, LIB1ASMFUNCS): Delete. * config/mips/t-r3900 (LIB1ASMSRC, LIB1ASMFUNCS): Likewise. * config/mips/t-elf (LIB1ASMSRC, LIB1ASMFUNCS): Likewise. * config/mips/mips.h (TARGET_CPU_CPP_BUITINS): Define _ABIO32, _ABIN32, _ABI64, _ABIO64, _MIPS_SIM, _MIPS_SZINT, _MIPS_SZLONG, _MIPS_SZPTR and _MIPS_FPSET. (MIPS_ISA_LEVEL_SPEC): Inject the default -mips option if no architecture is specified. (MIPS_32BIT_OPTION_SPEC): New macro. Co-Authored-By: Chris Dearman <chris@mips.com> Co-Authored-By: David Ung <davidu@mips.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> Co-Authored-By: Thiemo Seufer <ths@mips.com> From-SVN: r127113
2007-08-01 08:21:43 +02:00
tmake_file="mips/t-elf mips/t-libgcc-mips16"
;;
mips64-*-elf* | mips64el-*-elf*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h"
2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo... gcc/ 2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo Seufer <ths@mips.com> Chris Dearman <chris@mips.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (mips*-sde-elf*): New stanza. (mipsisa32-*-elf*, mipsisa32el-*-elf*, mipsisa32r2-*-elf*) (mipsisa32r2el-*-elf*, mipsisa64-*-elf*, mipsisa64el-*-elf*) (mipsisa64sb1-*-elf*, mipsisa64sb1el-*-elf*, mips-*-elf*) (mipsel-*-elf*, mips64-*-elf*, mips64el-*-elf*, mips64orion-*-elf*) (mips64orionel-*-elf*, mips*-*-rtems*, mips-wrs-windiss) (mipstx39-*-elf*, mipstx39el-*-elf*): Add mips/t-libgcc-mips16 to tmake_file. * config/mips/sde.h: New file. * config/mips/t-libgcc-mips16: Likewise. * config/mips/t-sde: Likewise. * config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Remove settings of _ABIN32, _ABI64, _ABIO32, _MIPS_SIM, _MIPS_SZLONG, _MIPS_SZPTR, _MIPS_FPSET and _MIPS_SZINT. * config/mips/iris.h (TARGET_OS_CPP_BUILTINS): Likewise. * config/mips/elfoabi.h (DRIVER_SELF_SPECS): Remove separate insertion of a default -mips option. Use MIPS_32BIT_OPTION_SPEC. * config/mips/t-isa3264 (LIB1ASMSRC, LIB1ASMFUNCS): Delete. * config/mips/t-r3900 (LIB1ASMSRC, LIB1ASMFUNCS): Likewise. * config/mips/t-elf (LIB1ASMSRC, LIB1ASMFUNCS): Likewise. * config/mips/mips.h (TARGET_CPU_CPP_BUITINS): Define _ABIO32, _ABIN32, _ABI64, _ABIO64, _MIPS_SIM, _MIPS_SZINT, _MIPS_SZLONG, _MIPS_SZPTR and _MIPS_FPSET. (MIPS_ISA_LEVEL_SPEC): Inject the default -mips option if no architecture is specified. (MIPS_32BIT_OPTION_SPEC): New macro. Co-Authored-By: Chris Dearman <chris@mips.com> Co-Authored-By: David Ung <davidu@mips.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> Co-Authored-By: Thiemo Seufer <ths@mips.com> From-SVN: r127113
2007-08-01 08:21:43 +02:00
tmake_file="mips/t-elf mips/t-libgcc-mips16"
config.gcc (mips-*-*): Remove definitions of MASK_GAS and OBJECT_FORMAT_ELF. * config.gcc (mips-*-*): Remove definitions of MASK_GAS and OBJECT_FORMAT_ELF. Set MASK_SPLIT_ADDR by default if using GNU ld. * config/mips/mips.h (MASK_GAS): Delete. Shuffle later masks down. (TARGET_GAS, TARGET_MIPS_AS): Delete. (TARGET_GPWORD): Define to true for n32 on IRIX. (TARGET_SWITCHES): Remove -mmips-as. Turn -mgas into a no-op. (MIPS_AS_ASM_SPEC, SUBTARGET_MIPS_AS_ASM_SPEC): Delete. (GAS_ASM_SPEC): Delete, folding into ASM_SPEC. (ASM_ABI_DEFAULT_SPEC, TARGET_ASM_SPEC): Delete. (MDEBUG_ASM_SPEC): Delete, folding into... (SUBTARGET_ASM_DEBUGGING_SPEC): ...here. (ASM_SPEC): Inline old GAS_ASM_SPEC. Use GNU names for ABI switches. (EXTRA_SPECS): Remove mips_as_asm_spec, gas_asm_spec, target_asm_spec, subtarget_mips_as_asm_spec, mdebug_asm_spec. Use MULTILIB_ABI_DEFAULT to define asm_abi_default_spec. (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP): Delete. (TARGET_ASM_SELECT_SECTION): Delete. * config/mips/mips.c (MIPS_MAX_FIRST_STACK_STEP): Define to 0x7ff0 for non-mips16 code, removing previous workaround for SGI assemblers. (TARGET_ASM_INTEGER, mips_assemble_integer): Delete. (TARGET_ASM_ALIGNED_DI_OP): Define this instead. (override_options): Remove !TARGET_GAS and !have_named_sections code. (print_operand): Fold TARGET_GAS conditionals into asm strings. (mips_output_filename): Remove !TARGET_GAS code. Replace use of ASM_STABS_OP and ASM_STABN_OP. (mips_file_start): Remove TARGET_MIPS_AS/TARGET_GAS checks. (mips_output_aligned_decl_common): Remove mention of SGI o32 assembler. (mips_output_function_prologue): Remove !TARGET_GAS code. (mips_select_rtx_section): Remove !have_named_sections code. (mips_select_section): Delete. * config/mips/mips.md (trap): Remove !TARGET_GAS check. * config/mips/linux.h (TARGET_DEFAULT): Remove use of MASK_GAS. * config/mips/sdb.h (PUT_SDB_DEF, PUT_SDB_PLAIN_DEF): Delete. (PUT_SDB_BLOCK_START, PUT_SDB_BLOCK_END): Fold TARGET_GAS conditional. * config/mips/vxworks.h (ASM_SPEC): As for mips.h. * config/mips/windiss.h (ASM_SPEC): Likewise. testsuite/ * gcc.dg/special/mips-abi.exp: Expect gcc to pass the GNU ABI flags to the assembler. Simplify test accordingly. (asm_abi_flags): Use GNU names. (check_mips_abi, default_abi): Use string matches against "-mabi=*" to check for ABI flags. From-SVN: r86405
2004-08-23 08:53:46 +02:00
target_cpu_default="MASK_64BIT|MASK_FLOAT64"
tm_defines="${tm_defines} MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_O64"
;;
config.sub: Import from master repository. 2002-08-15 Eric Christopher <echristo@redhat.com> * config.sub: Import from master repository. * config.guess: Ditto. 2002-08-15 Eric Christopher <echristo@redhat.com> Jeff Knaggs <jknaggs@redhat.com> * config.gcc (mipsisa64sr71k-elf): New target. * config/mips/sr71k.md: New file. * config/mips/mips.md: Use it. (rot*): Add sr71k specifics. * config/mips/t-sr71k: New file. * config/mips/mips.h (sr71k): New cpu. (TARGET_SR71K): Use it. (TUNE_SR71K): Ditto. (GENERATE_BRANCHLIKELY): Ditto. (ISA_HAS_MULHI, ISA_HAS_MULS, ISA_HAS_MSAC, ISA_HAS_MACC, ISA_HAS_ROTR_SIISA_HAS_ROTR_DI): Ditto. * config/mips/mips.c (sr71k): New cpu. (mips_use_dfa_pipeline_interface): Use. 2002-08-15 Eric Christopher <echristo@redhat.com> Richard Sandiford <rsandifo@redhat.com> Aldy Hernandez <aldyh@redhat.com> Graham Stott <grahams@redhat.com> Michael Meissner <meissner@redhat.com> Gavin Romig-Koch <gavin@redhat.com> Ken Raeburn <raeburn@cygnus.com> Alexandre Oliva <aoliva@redhat.com> * config.gcc (mips64vr-elf): New target. * config/mips/5400.md: New file. * config/mips/5500.md: Ditto. * config/mips/mips.md: Use them. (frsqrt): New. * config/mips/mips.c (vr4111, vr4121, vr4320, vr5400, vr5500): New cpus. (mips_issue_rate): Use them. (mips_use_dfa_pipeline_interface): New function. Use for 5400 and 5500. (TARGET_SCHEDUSE_DFA_PIPELINE_INTERFACE): Define. Use above. * config/mips/mips.h (vr4111, vr4121, vr4320, vr5400, vr5500): New cpus. (TARGET_MIPSx): Use them. (TUNE_MIPSx): Ditto. (GETNATE_MULT3_SI): Ditto. (ISA_HAS_BRANCHLIKELY): Ditto. (ISA_HAS_CONDMOVE): Ditto. (ISA_HAS_NMADD_NMSUB): Ditto. (ISA_HAS_MULHI): New. Ditto. (ISA_HAS_MULS): Ditto. (ISA_HAS_MSAC): Ditto. (ISA_HAS_MACC): Ditto. (ISA_HAS_ROTR_SI): Ditto. (ISA_HAS_ROTR_DI): Ditto. (RTX_COSTS): Use. From-SVN: r56471
2002-08-20 23:53:28 +02:00
mips64vr-*-elf* | mips64vrel-*-elf*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="elfos.h newlib-stdint.h ${tm_file} mips/vr.h mips/elf.h"
config.sub: Import from master repository. 2002-08-15 Eric Christopher <echristo@redhat.com> * config.sub: Import from master repository. * config.guess: Ditto. 2002-08-15 Eric Christopher <echristo@redhat.com> Jeff Knaggs <jknaggs@redhat.com> * config.gcc (mipsisa64sr71k-elf): New target. * config/mips/sr71k.md: New file. * config/mips/mips.md: Use it. (rot*): Add sr71k specifics. * config/mips/t-sr71k: New file. * config/mips/mips.h (sr71k): New cpu. (TARGET_SR71K): Use it. (TUNE_SR71K): Ditto. (GENERATE_BRANCHLIKELY): Ditto. (ISA_HAS_MULHI, ISA_HAS_MULS, ISA_HAS_MSAC, ISA_HAS_MACC, ISA_HAS_ROTR_SIISA_HAS_ROTR_DI): Ditto. * config/mips/mips.c (sr71k): New cpu. (mips_use_dfa_pipeline_interface): Use. 2002-08-15 Eric Christopher <echristo@redhat.com> Richard Sandiford <rsandifo@redhat.com> Aldy Hernandez <aldyh@redhat.com> Graham Stott <grahams@redhat.com> Michael Meissner <meissner@redhat.com> Gavin Romig-Koch <gavin@redhat.com> Ken Raeburn <raeburn@cygnus.com> Alexandre Oliva <aoliva@redhat.com> * config.gcc (mips64vr-elf): New target. * config/mips/5400.md: New file. * config/mips/5500.md: Ditto. * config/mips/mips.md: Use them. (frsqrt): New. * config/mips/mips.c (vr4111, vr4121, vr4320, vr5400, vr5500): New cpus. (mips_issue_rate): Use them. (mips_use_dfa_pipeline_interface): New function. Use for 5400 and 5500. (TARGET_SCHEDUSE_DFA_PIPELINE_INTERFACE): Define. Use above. * config/mips/mips.h (vr4111, vr4121, vr4320, vr5400, vr5500): New cpus. (TARGET_MIPSx): Use them. (TUNE_MIPSx): Ditto. (GETNATE_MULT3_SI): Ditto. (ISA_HAS_BRANCHLIKELY): Ditto. (ISA_HAS_CONDMOVE): Ditto. (ISA_HAS_NMADD_NMSUB): Ditto. (ISA_HAS_MULHI): New. Ditto. (ISA_HAS_MULS): Ditto. (ISA_HAS_MSAC): Ditto. (ISA_HAS_MACC): Ditto. (ISA_HAS_ROTR_SI): Ditto. (ISA_HAS_ROTR_DI): Ditto. (RTX_COSTS): Use. From-SVN: r56471
2002-08-20 23:53:28 +02:00
tmake_file=mips/t-vr
;;
mips64orion-*-elf* | mips64orionel-*-elf*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elforion.h mips/elf.h"
2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo... gcc/ 2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo Seufer <ths@mips.com> Chris Dearman <chris@mips.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (mips*-sde-elf*): New stanza. (mipsisa32-*-elf*, mipsisa32el-*-elf*, mipsisa32r2-*-elf*) (mipsisa32r2el-*-elf*, mipsisa64-*-elf*, mipsisa64el-*-elf*) (mipsisa64sb1-*-elf*, mipsisa64sb1el-*-elf*, mips-*-elf*) (mipsel-*-elf*, mips64-*-elf*, mips64el-*-elf*, mips64orion-*-elf*) (mips64orionel-*-elf*, mips*-*-rtems*, mips-wrs-windiss) (mipstx39-*-elf*, mipstx39el-*-elf*): Add mips/t-libgcc-mips16 to tmake_file. * config/mips/sde.h: New file. * config/mips/t-libgcc-mips16: Likewise. * config/mips/t-sde: Likewise. * config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Remove settings of _ABIN32, _ABI64, _ABIO32, _MIPS_SIM, _MIPS_SZLONG, _MIPS_SZPTR, _MIPS_FPSET and _MIPS_SZINT. * config/mips/iris.h (TARGET_OS_CPP_BUILTINS): Likewise. * config/mips/elfoabi.h (DRIVER_SELF_SPECS): Remove separate insertion of a default -mips option. Use MIPS_32BIT_OPTION_SPEC. * config/mips/t-isa3264 (LIB1ASMSRC, LIB1ASMFUNCS): Delete. * config/mips/t-r3900 (LIB1ASMSRC, LIB1ASMFUNCS): Likewise. * config/mips/t-elf (LIB1ASMSRC, LIB1ASMFUNCS): Likewise. * config/mips/mips.h (TARGET_CPU_CPP_BUITINS): Define _ABIO32, _ABIN32, _ABI64, _ABIO64, _MIPS_SIM, _MIPS_SZINT, _MIPS_SZLONG, _MIPS_SZPTR and _MIPS_FPSET. (MIPS_ISA_LEVEL_SPEC): Inject the default -mips option if no architecture is specified. (MIPS_32BIT_OPTION_SPEC): New macro. Co-Authored-By: Chris Dearman <chris@mips.com> Co-Authored-By: David Ung <davidu@mips.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> Co-Authored-By: Thiemo Seufer <ths@mips.com> From-SVN: r127113
2007-08-01 08:21:43 +02:00
tmake_file="mips/t-elf mips/t-libgcc-mips16"
config.gcc (mips-*-*): Remove definitions of MASK_GAS and OBJECT_FORMAT_ELF. * config.gcc (mips-*-*): Remove definitions of MASK_GAS and OBJECT_FORMAT_ELF. Set MASK_SPLIT_ADDR by default if using GNU ld. * config/mips/mips.h (MASK_GAS): Delete. Shuffle later masks down. (TARGET_GAS, TARGET_MIPS_AS): Delete. (TARGET_GPWORD): Define to true for n32 on IRIX. (TARGET_SWITCHES): Remove -mmips-as. Turn -mgas into a no-op. (MIPS_AS_ASM_SPEC, SUBTARGET_MIPS_AS_ASM_SPEC): Delete. (GAS_ASM_SPEC): Delete, folding into ASM_SPEC. (ASM_ABI_DEFAULT_SPEC, TARGET_ASM_SPEC): Delete. (MDEBUG_ASM_SPEC): Delete, folding into... (SUBTARGET_ASM_DEBUGGING_SPEC): ...here. (ASM_SPEC): Inline old GAS_ASM_SPEC. Use GNU names for ABI switches. (EXTRA_SPECS): Remove mips_as_asm_spec, gas_asm_spec, target_asm_spec, subtarget_mips_as_asm_spec, mdebug_asm_spec. Use MULTILIB_ABI_DEFAULT to define asm_abi_default_spec. (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP): Delete. (TARGET_ASM_SELECT_SECTION): Delete. * config/mips/mips.c (MIPS_MAX_FIRST_STACK_STEP): Define to 0x7ff0 for non-mips16 code, removing previous workaround for SGI assemblers. (TARGET_ASM_INTEGER, mips_assemble_integer): Delete. (TARGET_ASM_ALIGNED_DI_OP): Define this instead. (override_options): Remove !TARGET_GAS and !have_named_sections code. (print_operand): Fold TARGET_GAS conditionals into asm strings. (mips_output_filename): Remove !TARGET_GAS code. Replace use of ASM_STABS_OP and ASM_STABN_OP. (mips_file_start): Remove TARGET_MIPS_AS/TARGET_GAS checks. (mips_output_aligned_decl_common): Remove mention of SGI o32 assembler. (mips_output_function_prologue): Remove !TARGET_GAS code. (mips_select_rtx_section): Remove !have_named_sections code. (mips_select_section): Delete. * config/mips/mips.md (trap): Remove !TARGET_GAS check. * config/mips/linux.h (TARGET_DEFAULT): Remove use of MASK_GAS. * config/mips/sdb.h (PUT_SDB_DEF, PUT_SDB_PLAIN_DEF): Delete. (PUT_SDB_BLOCK_START, PUT_SDB_BLOCK_END): Fold TARGET_GAS conditional. * config/mips/vxworks.h (ASM_SPEC): As for mips.h. * config/mips/windiss.h (ASM_SPEC): Likewise. testsuite/ * gcc.dg/special/mips-abi.exp: Expect gcc to pass the GNU ABI flags to the assembler. Simplify test accordingly. (asm_abi_flags): Use GNU names. (check_mips_abi, default_abi): Use string matches against "-mabi=*" to check for ABI flags. From-SVN: r86405
2004-08-23 08:53:46 +02:00
target_cpu_default="MASK_64BIT|MASK_FLOAT64"
tm_defines="${tm_defines} MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_O64"
;;
mips*-*-rtems*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h mips/rtems.h rtems.h"
2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo... gcc/ 2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo Seufer <ths@mips.com> Chris Dearman <chris@mips.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (mips*-sde-elf*): New stanza. (mipsisa32-*-elf*, mipsisa32el-*-elf*, mipsisa32r2-*-elf*) (mipsisa32r2el-*-elf*, mipsisa64-*-elf*, mipsisa64el-*-elf*) (mipsisa64sb1-*-elf*, mipsisa64sb1el-*-elf*, mips-*-elf*) (mipsel-*-elf*, mips64-*-elf*, mips64el-*-elf*, mips64orion-*-elf*) (mips64orionel-*-elf*, mips*-*-rtems*, mips-wrs-windiss) (mipstx39-*-elf*, mipstx39el-*-elf*): Add mips/t-libgcc-mips16 to tmake_file. * config/mips/sde.h: New file. * config/mips/t-libgcc-mips16: Likewise. * config/mips/t-sde: Likewise. * config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Remove settings of _ABIN32, _ABI64, _ABIO32, _MIPS_SIM, _MIPS_SZLONG, _MIPS_SZPTR, _MIPS_FPSET and _MIPS_SZINT. * config/mips/iris.h (TARGET_OS_CPP_BUILTINS): Likewise. * config/mips/elfoabi.h (DRIVER_SELF_SPECS): Remove separate insertion of a default -mips option. Use MIPS_32BIT_OPTION_SPEC. * config/mips/t-isa3264 (LIB1ASMSRC, LIB1ASMFUNCS): Delete. * config/mips/t-r3900 (LIB1ASMSRC, LIB1ASMFUNCS): Likewise. * config/mips/t-elf (LIB1ASMSRC, LIB1ASMFUNCS): Likewise. * config/mips/mips.h (TARGET_CPU_CPP_BUITINS): Define _ABIO32, _ABIN32, _ABI64, _ABIO64, _MIPS_SIM, _MIPS_SZINT, _MIPS_SZLONG, _MIPS_SZPTR and _MIPS_FPSET. (MIPS_ISA_LEVEL_SPEC): Inject the default -mips option if no architecture is specified. (MIPS_32BIT_OPTION_SPEC): New macro. Co-Authored-By: Chris Dearman <chris@mips.com> Co-Authored-By: David Ung <davidu@mips.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> Co-Authored-By: Thiemo Seufer <ths@mips.com> From-SVN: r127113
2007-08-01 08:21:43 +02:00
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"
;;
mipstx39-*-elf* | mipstx39el-*-elf*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="elfos.h newlib-stdint.h ${tm_file} mips/r3900.h mips/elf.h"
2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo... gcc/ 2007-xx-xx Nigel Stephens <nigel@mips.com> David Ung <davidu@mips.com> Thiemo Seufer <ths@mips.com> Chris Dearman <chris@mips.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (mips*-sde-elf*): New stanza. (mipsisa32-*-elf*, mipsisa32el-*-elf*, mipsisa32r2-*-elf*) (mipsisa32r2el-*-elf*, mipsisa64-*-elf*, mipsisa64el-*-elf*) (mipsisa64sb1-*-elf*, mipsisa64sb1el-*-elf*, mips-*-elf*) (mipsel-*-elf*, mips64-*-elf*, mips64el-*-elf*, mips64orion-*-elf*) (mips64orionel-*-elf*, mips*-*-rtems*, mips-wrs-windiss) (mipstx39-*-elf*, mipstx39el-*-elf*): Add mips/t-libgcc-mips16 to tmake_file. * config/mips/sde.h: New file. * config/mips/t-libgcc-mips16: Likewise. * config/mips/t-sde: Likewise. * config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Remove settings of _ABIN32, _ABI64, _ABIO32, _MIPS_SIM, _MIPS_SZLONG, _MIPS_SZPTR, _MIPS_FPSET and _MIPS_SZINT. * config/mips/iris.h (TARGET_OS_CPP_BUILTINS): Likewise. * config/mips/elfoabi.h (DRIVER_SELF_SPECS): Remove separate insertion of a default -mips option. Use MIPS_32BIT_OPTION_SPEC. * config/mips/t-isa3264 (LIB1ASMSRC, LIB1ASMFUNCS): Delete. * config/mips/t-r3900 (LIB1ASMSRC, LIB1ASMFUNCS): Likewise. * config/mips/t-elf (LIB1ASMSRC, LIB1ASMFUNCS): Likewise. * config/mips/mips.h (TARGET_CPU_CPP_BUITINS): Define _ABIO32, _ABIN32, _ABI64, _ABIO64, _MIPS_SIM, _MIPS_SZINT, _MIPS_SZLONG, _MIPS_SZPTR and _MIPS_FPSET. (MIPS_ISA_LEVEL_SPEC): Inject the default -mips option if no architecture is specified. (MIPS_32BIT_OPTION_SPEC): New macro. Co-Authored-By: Chris Dearman <chris@mips.com> Co-Authored-By: David Ung <davidu@mips.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> Co-Authored-By: Thiemo Seufer <ths@mips.com> From-SVN: r127113
2007-08-01 08:21:43 +02:00
tmake_file="mips/t-r3900 mips/t-libgcc-mips16"
;;
mmix-knuth-mmixware)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} newlib-stdint.h"
need_64bit_hwint=yes
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
;;
mn10300-*-*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h svr4.h newlib-stdint.h ${tm_file}"
if test x$stabs = xyes
then
tm_file="${tm_file} dbx.h"
fi
use_collect2=no
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
;;
pdp11-*-*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} newlib-stdint.h"
use_gcc_stdint=wrap
;;
picochip-*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} newlib-stdint.h"
use_gcc_stdint=wrap
;;
Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * config.gcc (*-*-openbsd): Don't set tm_file. (alpha*-*-openbsd, arm*-*-coff*, arm*-wince-pe*, arm-*-pe*, avr-*-*, h8300-*-rtems*, h8300-*-elf*, h8300-*-*, hppa*-*-osf*, hppa*-*-bsd*, hppa*-*-hpux*, i370-*-opened*, i370-*-mvs*, i370-*-linux*, i?86-*-openbsd*, i?86-*-lynxos, i?86-*-nto-qnx*, iq2000*-*-elf*, m68000-hp-hpux*, m68k-hp-hpux*, m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*, m68k*-*-netbsd*, m68k*-*-openbsd*, m68k-*-sysv4*, m68k-*-linux*, m68k-*-rtems*, mcore-*-pe*, mips*-*-netbsd*, mips*-*-openbsd*, rs6000-*-lynxos*, sh*-*-elf*, sh*-*-ka, sh-*-rtemself, sparc-*-openbsd*, strongarm-*-pe, vax-*-openbsd*, xscale-*-coff): Use explicit and complete lists of target headers to include. Move definitions to tm_defines where appropriate. (hppa*-*-openbsd*, powerpc-*-openbsd*): Comment out stanza for not-yet-contributed configuration. * config/lynx.h, config/alpha/openbsd.h, config/arm/coff.h * config/avr/avr.h, config/frv/frv.h, config/h8300/elf.h * config/i370/linux.h, config/i370/mvs.h, config/i370/oe.h * config/i386/nto.h, config/iq2000/iq2000.h, * config/m68k/coff.h, config/m68k/hp310.h, config/m68k/hp320.h * config/m68k/linux.h, config/m68k/m68k-aout.h * config/m68k/m68k-none.h, config/m68k/m68kv4.h * config/m68k/netbsd.h, config/m68k/openbsd.h * config/m68k/sgs.h, config/mcore/mcore-pe.h, * config/mips/netbsd.h, config/mips/openbsd.h, config/pa/pa.h, * config/rs6000/lynx.h, config/sh/embed-elf.h, config/sparc/openbsd.h: Remove includes of other target config headers, and definitions of macros moved to tm_defines lists. Add #undefs where now necessary to prevent redefinition warnings. * config/h8300/coff.h: New file split out of... * config/h8300/elf.h: ...here. * config/m68k/hp320base.h: New file split out of... * config/m68k/hp320.h: ...here. * config/rs6000/lynxbase.h: New file split out of... * config/rs6000/lynx.h: ...here. * config/m68k/hp310g.h, config/m68k/hp320g.h, config/m68k/hpux7.h * config/m68k/m68k-coff.h, config/mips/openbsd-be.h: Delete file. * config/sol2.h: Remove #if 0-ed #include of sys/mman.h. * config/m68k/m68kelf.h: Remove commented out #include of m68k/sgs.h. * config/mcore/mcore.h: Don't include hwint.h nor machmode.h. Remove unnecessary #ifndef. * config/s390/s390.h: Prefix #include of s390/fixdfdi.h [under IN_LIBGCC2] with config/. From-SVN: r70651
2003-08-21 19:27:29 +02:00
# port not yet contributed
#powerpc-*-openbsd*)
# tmake_file="${tmake_file} rs6000/t-fprules rs6000/t-fprules-fpbit "
Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * config.gcc (*-*-openbsd): Don't set tm_file. (alpha*-*-openbsd, arm*-*-coff*, arm*-wince-pe*, arm-*-pe*, avr-*-*, h8300-*-rtems*, h8300-*-elf*, h8300-*-*, hppa*-*-osf*, hppa*-*-bsd*, hppa*-*-hpux*, i370-*-opened*, i370-*-mvs*, i370-*-linux*, i?86-*-openbsd*, i?86-*-lynxos, i?86-*-nto-qnx*, iq2000*-*-elf*, m68000-hp-hpux*, m68k-hp-hpux*, m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*, m68k*-*-netbsd*, m68k*-*-openbsd*, m68k-*-sysv4*, m68k-*-linux*, m68k-*-rtems*, mcore-*-pe*, mips*-*-netbsd*, mips*-*-openbsd*, rs6000-*-lynxos*, sh*-*-elf*, sh*-*-ka, sh-*-rtemself, sparc-*-openbsd*, strongarm-*-pe, vax-*-openbsd*, xscale-*-coff): Use explicit and complete lists of target headers to include. Move definitions to tm_defines where appropriate. (hppa*-*-openbsd*, powerpc-*-openbsd*): Comment out stanza for not-yet-contributed configuration. * config/lynx.h, config/alpha/openbsd.h, config/arm/coff.h * config/avr/avr.h, config/frv/frv.h, config/h8300/elf.h * config/i370/linux.h, config/i370/mvs.h, config/i370/oe.h * config/i386/nto.h, config/iq2000/iq2000.h, * config/m68k/coff.h, config/m68k/hp310.h, config/m68k/hp320.h * config/m68k/linux.h, config/m68k/m68k-aout.h * config/m68k/m68k-none.h, config/m68k/m68kv4.h * config/m68k/netbsd.h, config/m68k/openbsd.h * config/m68k/sgs.h, config/mcore/mcore-pe.h, * config/mips/netbsd.h, config/mips/openbsd.h, config/pa/pa.h, * config/rs6000/lynx.h, config/sh/embed-elf.h, config/sparc/openbsd.h: Remove includes of other target config headers, and definitions of macros moved to tm_defines lists. Add #undefs where now necessary to prevent redefinition warnings. * config/h8300/coff.h: New file split out of... * config/h8300/elf.h: ...here. * config/m68k/hp320base.h: New file split out of... * config/m68k/hp320.h: ...here. * config/rs6000/lynxbase.h: New file split out of... * config/rs6000/lynx.h: ...here. * config/m68k/hp310g.h, config/m68k/hp320g.h, config/m68k/hpux7.h * config/m68k/m68k-coff.h, config/mips/openbsd-be.h: Delete file. * config/sol2.h: Remove #if 0-ed #include of sys/mman.h. * config/m68k/m68kelf.h: Remove commented out #include of m68k/sgs.h. * config/mcore/mcore.h: Don't include hwint.h nor machmode.h. Remove unnecessary #ifndef. * config/s390/s390.h: Prefix #include of s390/fixdfdi.h [under IN_LIBGCC2] with config/. From-SVN: r70651
2003-08-21 19:27:29 +02:00
# extra_headers=
# ;;
powerpc-*-darwin*)
config.gcc: Add .opt magic for the rs6000 ports. 2005-05-05 Aldy Hernandez <aldyh@redhat.com> * config.gcc: Add .opt magic for the rs6000 ports. * doc/invoke.texi: Document -mabi= option properly. Document -misel and -mno-sel. Document -mspe and -mno-spe. Document -mvrsave and -mno-vrsave. Document deprecation of -mspe= and -misel=. * config/rs6000/aix.h: Remove XL_COMPAT stuff. Remove SUBTARGET_SWITCHES and SUBSUBTARGET_SWITCHES. Define TARGET_XL_COMPAT. * config/rs6000/aix.opt: New. * config/rs6000/aix41.opt: New. * config/rs6000/aix64.opt: New. * config/rs6000/darwin.opt: New. * config/rs6000/linux64.opt: New. * config/rs6000/rs6000.opt: New. * config/rs6000/sysv4.opt: New. * config/rs6000/sysv4.h: Delete definitions of MASK_* and associated TARGET_*. Remove SUBTARGET_OPTIONS, SUBTARGET_SWITCHES. Define TARGET_USES_SYSV4_OPT. * config/rs6000/aix41.h: Remove SUBSUBTARGET_SWITCHES. * config/rs6000/aix43.h: Remove SUBSUBTARGET_SWITCHES. Define TARGET_USES_AIX64_OPT. * config/rs6000/aix51.h: Same. * config/rs6000/aix52.h: Same. * config/rs6000/darwin.h: Remove SUBTARGET_SWITCHES. Use TARGET_ALTIVEC_VRSAVE instead of rs6000_altivec_vrsave. * config/rs6000/linux64.h: Use rs6000_explicit_options. Remove EXTRA_SUBTARGET_SWITCHES. * config/rs6000/rs6000.c: Remove definitions of rs6000_sched_restricted_insns_priority, rs6000_long_double_size_string, rs6000_altivec_vrsave, rs6000_altivec_vrsave_string, rs6000_isel, rs6000_spe, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_abi_string, rs6000_warn_altivec_long, rs6000_longcall, rs6000_alignment_string. Define rs6000_explicit_options. (rs6000_parse_abi_options): Remove. (rs6000_parse_alignment_option): Remove. (rs6000_parse_float_gprs_option): Remove. (rs6000_handle_option): New. Define TARGET_HANDLE_OPTION. Define TARGET_DEFAULT_TARGET_FLAGS. (rs6000_override_options): Revamp to use new .opt machinery. * config/rs6000/rs6000.h: Remove old MASK_* and TARGET_* in favor of new .opt machinery. Remove target_flags. Redefine TARGET_MFCRF and TARGET_POWERPC64. Remove TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS, SUBTARGET_OPTIONS, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_altivec_vrsave_string, rs6000_altivec_vrsave, rs6000_longcall_switch, rs6000_default_long_calls, rs6000_sched_costly_dep_str, rs6000_sched_costly_dep, rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch, and TARGET_ALTIVEC_VRSAVE. From-SVN: r99284
2005-05-05 22:54:25 +02:00
extra_options="${extra_options} rs6000/darwin.opt"
extra_parts="crt2.o"
case ${target} in
Index: ChangeLog 2005-07-07 Geoffrey Keating <geoffk@apple.com> * config.gcc (*-*-darwin*): Only one target-specific header file for generic darwin. (powerpc-*-darwin*): Add version-specific header files. * configure.in (gcc_AC_CHECK_DECLS): Add strverscmp. * config.in: Regenerate. * configure: Regenerate. * gcc.c: Include xregex.h. (version_compare_spec_function): New. (spec_function): Add version-compare. (replace_outfile_spec_function): Reformat comment. (compare_version_strings): New. * config/darwin-c.c (version_as_macro): New. (builtin_define): New. (darwin_cpp_builtins): New. * config/darwin-protos.h (darwin_cpp_builtins): New. * config/darwin.h (CPP_SPEC): Don't define APPLE_CC here. (LIB_SPEC): Make unconditional, update comment. (TARGET_C99_FUNCTIONS): Define. * config/darwin.opt: Sort. (mmacosx-version-min=): New. * config/darwin7.h: Delete. * config/darwin8.h: Delete. * config/i386/darwin.h (): Call darwin_cpp_builtins. * config/rs6000/darwin.h (): Call darwin_cpp_builtins. (TARGET_C99_FUNCTIONS): Define. * config/rs6000/darwin7.h: New. * config/rs6000/darwin8.h: New. * doc/invoke.texi (Darwin Options): Add -mmacosx-version-min= (-mmacosx-version-min): Document. Index: testsuite/ChangeLog 2005-07-07 Geoffrey Keating <geoffk@apple.com> * gcc.dg/darwin-version-1.c: New. * gcc.dg/builtins-18.c: On Darwin, needs -mmacosx-version-min=10.3. * gcc.dg/builtins-20.c: Likewise. * gcc.dg/builtins-53.c: Likewise. * gcc.dg/torture/builtins-convert-1.c: Likewise. * gcc.dg/torture/builtins-convert-2.c: Likewise. * gcc.dg/torture/builtins-convert-3.c: Likewise. * gcc.dg/torture/builtins-power-1.c: Likewise. * gcc.dg/builtins-config.h: Complain if macosx-version-min not set on Darwin. From-SVN: r101753
2005-07-08 07:51:06 +02:00
*-darwin1[0-9]* | *-darwin[8-9]*)
config.gcc (i?86-*-darwin): Add 64-bit HWI support. 2006-09-08 Eric Christopher <echristo@apple.com> * config.gcc (i?86-*-darwin): Add 64-bit HWI support. * config/t-slibgcc-darwin: Support x86_64 multilib. * config/i386/i386.h (JUMP_TABLES_IN_TEXT_SECTION): Return 1 for x86_64-darwin. * config/i386/t-darwin: Add m64 multilib. (LIB2_SIDITI_CONV_FUNCS): Use. (LIB2FUNCS_EXTRA): Ditto. * config/i386/darwin.h: Support x86_64. * config/i386/i386.c (override_options): Turn on flag_pic for x86_64-darwin. Disable flag_omit_pointer. (get_pc_thunk_name): Assert !TARGET_64BIT. (legitimate_address_p): Disable machopic addressing for x86_64. (legitimize_pic_address): Ditto. (ix86_expand_move): Ditto. (ix86_expand_call): Ditto. (machopic_output_stub): Ditto. * config/darwin.c (machopic_select_section): Support literal16. (machopic_select_rtx_section): Ditto. * config/darwin-sections.def: Ditto. * config/darwin-64.c: New. 2006-09-08 Eric Christopher <echristo@apple.com> * gcc.target/i386/20060512-3.c: Run test on ilp32 only. * gcc.target/i386/memcpy-1.c: Ditto. * gcc.target/i386/asm-1.c: Ditto. * gcc.target/i386/20060512-4.c: Ditto. * gcc.target/i386/compress-float-387.c: Ditto. * gcc.target/i386/20060512-1.c: Ditto. * gcc.target/i386/compress-float-sse.c: Ditto. * gcc.target/i386/20060512-2.c: Ditto. * gcc.target/i386/compress-float-sse-pic.c: Ditto. * gcc.target/i386/stack-prot-kernel.c: Ditto. * gcc.target/i386/compress-float-387-pic.c: Ditto. * gcc.dg/pr26449.c: Ditto. * gcc.dg/attr-ms_struct-2.c: Ditto. * gcc.dg/attr-ms_struct-1.c: Ditto. * gcc.misc-tests/linkage.exp: Fix 64-bit darwin support. 2006-09-08 Eric Christopher <echristo@apple.com> * configure.ac: Add 64-bit HWI support for i?86-darwin. From-SVN: r116795
2006-09-09 02:27:47 +02:00
tmake_file="${tmake_file} rs6000/t-darwin8"
Index: ChangeLog 2005-07-07 Geoffrey Keating <geoffk@apple.com> * config.gcc (*-*-darwin*): Only one target-specific header file for generic darwin. (powerpc-*-darwin*): Add version-specific header files. * configure.in (gcc_AC_CHECK_DECLS): Add strverscmp. * config.in: Regenerate. * configure: Regenerate. * gcc.c: Include xregex.h. (version_compare_spec_function): New. (spec_function): Add version-compare. (replace_outfile_spec_function): Reformat comment. (compare_version_strings): New. * config/darwin-c.c (version_as_macro): New. (builtin_define): New. (darwin_cpp_builtins): New. * config/darwin-protos.h (darwin_cpp_builtins): New. * config/darwin.h (CPP_SPEC): Don't define APPLE_CC here. (LIB_SPEC): Make unconditional, update comment. (TARGET_C99_FUNCTIONS): Define. * config/darwin.opt: Sort. (mmacosx-version-min=): New. * config/darwin7.h: Delete. * config/darwin8.h: Delete. * config/i386/darwin.h (): Call darwin_cpp_builtins. * config/rs6000/darwin.h (): Call darwin_cpp_builtins. (TARGET_C99_FUNCTIONS): Define. * config/rs6000/darwin7.h: New. * config/rs6000/darwin8.h: New. * doc/invoke.texi (Darwin Options): Add -mmacosx-version-min= (-mmacosx-version-min): Document. Index: testsuite/ChangeLog 2005-07-07 Geoffrey Keating <geoffk@apple.com> * gcc.dg/darwin-version-1.c: New. * gcc.dg/builtins-18.c: On Darwin, needs -mmacosx-version-min=10.3. * gcc.dg/builtins-20.c: Likewise. * gcc.dg/builtins-53.c: Likewise. * gcc.dg/torture/builtins-convert-1.c: Likewise. * gcc.dg/torture/builtins-convert-2.c: Likewise. * gcc.dg/torture/builtins-convert-3.c: Likewise. * gcc.dg/torture/builtins-power-1.c: Likewise. * gcc.dg/builtins-config.h: Complain if macosx-version-min not set on Darwin. From-SVN: r101753
2005-07-08 07:51:06 +02:00
tm_file="${tm_file} rs6000/darwin8.h"
;;
*-darwin7*)
tm_file="${tm_file} rs6000/darwin7.h"
;;
*-darwin[0-6]*)
;;
esac
extra_headers=altivec.h
;;
powerpc64-*-darwin*)
tm_file="${tm_file} ${cpu_type}/darwin8.h ${cpu_type}/darwin64.h"
extra_options="${extra_options} ${cpu_type}/darwin.opt"
# We're omitting t-darwin8 to avoid building any multilibs
extra_headers=altivec.h
;;
config.gcc: Add FreeBSD/PowerPC target. 2001-11-20 David O'Brien <obrien@FreeBSD.org> * config.gcc: Add FreeBSD/PowerPC target. (powerpc64-*-linux*, powerpc-*-sysv*, powerpc-*-netbsd*, powerpc-*-chorusos*, powerpc-*-eabiaix*, powerpc-*-eabisim*, powerpc-*-elf*, powerpc-*-eabi*, powerpc-*-rtems*, powerpc-*-linux*libc1, powerpc-*-linux*, powerpc-wrs-vxworks*, powerpcle-wrs-vxworks*, powerpcle-*-sysv*, powerpcle-*-elf*, powerpcle-*-eabisim*, powerpcle-*-eabi*, powerpcle-*-solaris2*): Add freebsd-spec.h to tm_file. (rs6000-*-lynxos*): Add lynx.h to tm_file. * config/freebsd.h: Tidy up. (USING_CONFIG_FREEBSD): Define. (FBSD_SWITCH_TAKES_ARG, FBSD_WORD_SWITCH_TAKES_ARG, FBSD_CPP_PREDEFINES, FBSD_CPP_SPEC, FBSD_STARTFILE_SPEC, FBSD_ENDFILE_SPEC, FBSD_LIB_SPEC): Remove (moved to freebsd-spec.h). (TARGET_HAS_F_SETLKW): Define. (ASM_OUTPUT_IDENT): Delete, the elfos.h definition is fine. * config/freebsd-spec.h: New file. * config/rs6000/freebsd.h: New file. * config/rs6000/rs6000.h (TARGET_VERSION): Do not define. * config/rs6000/rs6000.c: Test for USING_ELFOS_H rather than USING_SVR4_H to know when to turn on ELF support. * config/rs6000/sysv4.h (TARGET_VERSION, CPP_PREDEFINES): Don't undef, define only if not already defined. Add FreeBSD support. * config/rs6000/aix.h (TARGET_VERSION): Define. * config/rs6000/beos.h: Likewise. * config/rs6000/darwin.h: Likewise. * config/rs6000/mach.h: Likewise. * config/rs6000/lynx.h (TARGET_VERSION): Likewise. Don't include lynx.h directly. Approved by: Geoff Keating <geoffk@geoffk.org> Message-Id: <200111192053.MAA11977@geoffk.org> Stan Shebs <shebs@apple.com> (Darwin bits) Message-ID: <3BF95F29.794BC924@apple.com> From-SVN: r47223
2001-11-20 20:43:28 +01:00
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-fprules-fpbit rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm"
config.gcc: Add .opt magic for the rs6000 ports. 2005-05-05 Aldy Hernandez <aldyh@redhat.com> * config.gcc: Add .opt magic for the rs6000 ports. * doc/invoke.texi: Document -mabi= option properly. Document -misel and -mno-sel. Document -mspe and -mno-spe. Document -mvrsave and -mno-vrsave. Document deprecation of -mspe= and -misel=. * config/rs6000/aix.h: Remove XL_COMPAT stuff. Remove SUBTARGET_SWITCHES and SUBSUBTARGET_SWITCHES. Define TARGET_XL_COMPAT. * config/rs6000/aix.opt: New. * config/rs6000/aix41.opt: New. * config/rs6000/aix64.opt: New. * config/rs6000/darwin.opt: New. * config/rs6000/linux64.opt: New. * config/rs6000/rs6000.opt: New. * config/rs6000/sysv4.opt: New. * config/rs6000/sysv4.h: Delete definitions of MASK_* and associated TARGET_*. Remove SUBTARGET_OPTIONS, SUBTARGET_SWITCHES. Define TARGET_USES_SYSV4_OPT. * config/rs6000/aix41.h: Remove SUBSUBTARGET_SWITCHES. * config/rs6000/aix43.h: Remove SUBSUBTARGET_SWITCHES. Define TARGET_USES_AIX64_OPT. * config/rs6000/aix51.h: Same. * config/rs6000/aix52.h: Same. * config/rs6000/darwin.h: Remove SUBTARGET_SWITCHES. Use TARGET_ALTIVEC_VRSAVE instead of rs6000_altivec_vrsave. * config/rs6000/linux64.h: Use rs6000_explicit_options. Remove EXTRA_SUBTARGET_SWITCHES. * config/rs6000/rs6000.c: Remove definitions of rs6000_sched_restricted_insns_priority, rs6000_long_double_size_string, rs6000_altivec_vrsave, rs6000_altivec_vrsave_string, rs6000_isel, rs6000_spe, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_abi_string, rs6000_warn_altivec_long, rs6000_longcall, rs6000_alignment_string. Define rs6000_explicit_options. (rs6000_parse_abi_options): Remove. (rs6000_parse_alignment_option): Remove. (rs6000_parse_float_gprs_option): Remove. (rs6000_handle_option): New. Define TARGET_HANDLE_OPTION. Define TARGET_DEFAULT_TARGET_FLAGS. (rs6000_override_options): Revamp to use new .opt machinery. * config/rs6000/rs6000.h: Remove old MASK_* and TARGET_* in favor of new .opt machinery. Remove target_flags. Redefine TARGET_MFCRF and TARGET_POWERPC64. Remove TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS, SUBTARGET_OPTIONS, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_altivec_vrsave_string, rs6000_altivec_vrsave, rs6000_longcall_switch, rs6000_default_long_calls, rs6000_sched_costly_dep_str, rs6000_sched_costly_dep, rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch, and TARGET_ALTIVEC_VRSAVE. From-SVN: r99284
2005-05-05 22:54:25 +02:00
extra_options="${extra_options} rs6000/sysv4.opt"
config.gcc: Add FreeBSD/PowerPC target. 2001-11-20 David O'Brien <obrien@FreeBSD.org> * config.gcc: Add FreeBSD/PowerPC target. (powerpc64-*-linux*, powerpc-*-sysv*, powerpc-*-netbsd*, powerpc-*-chorusos*, powerpc-*-eabiaix*, powerpc-*-eabisim*, powerpc-*-elf*, powerpc-*-eabi*, powerpc-*-rtems*, powerpc-*-linux*libc1, powerpc-*-linux*, powerpc-wrs-vxworks*, powerpcle-wrs-vxworks*, powerpcle-*-sysv*, powerpcle-*-elf*, powerpcle-*-eabisim*, powerpcle-*-eabi*, powerpcle-*-solaris2*): Add freebsd-spec.h to tm_file. (rs6000-*-lynxos*): Add lynx.h to tm_file. * config/freebsd.h: Tidy up. (USING_CONFIG_FREEBSD): Define. (FBSD_SWITCH_TAKES_ARG, FBSD_WORD_SWITCH_TAKES_ARG, FBSD_CPP_PREDEFINES, FBSD_CPP_SPEC, FBSD_STARTFILE_SPEC, FBSD_ENDFILE_SPEC, FBSD_LIB_SPEC): Remove (moved to freebsd-spec.h). (TARGET_HAS_F_SETLKW): Define. (ASM_OUTPUT_IDENT): Delete, the elfos.h definition is fine. * config/freebsd-spec.h: New file. * config/rs6000/freebsd.h: New file. * config/rs6000/rs6000.h (TARGET_VERSION): Do not define. * config/rs6000/rs6000.c: Test for USING_ELFOS_H rather than USING_SVR4_H to know when to turn on ELF support. * config/rs6000/sysv4.h (TARGET_VERSION, CPP_PREDEFINES): Don't undef, define only if not already defined. Add FreeBSD support. * config/rs6000/aix.h (TARGET_VERSION): Define. * config/rs6000/beos.h: Likewise. * config/rs6000/darwin.h: Likewise. * config/rs6000/mach.h: Likewise. * config/rs6000/lynx.h (TARGET_VERSION): Likewise. Don't include lynx.h directly. Approved by: Geoff Keating <geoffk@geoffk.org> Message-Id: <200111192053.MAA11977@geoffk.org> Stan Shebs <shebs@apple.com> (Darwin bits) Message-ID: <3BF95F29.794BC924@apple.com> From-SVN: r47223
2001-11-20 20:43:28 +01:00
;;
powerpc-*-netbsd*)
tm_file="${tm_file} dbxelf.h elfos.h netbsd.h netbsd-elf.h freebsd-spec.h rs6000/sysv4.h rs6000/netbsd.h"
tmake_file="${tmake_file} rs6000/t-netbsd"
config.gcc: Add .opt magic for the rs6000 ports. 2005-05-05 Aldy Hernandez <aldyh@redhat.com> * config.gcc: Add .opt magic for the rs6000 ports. * doc/invoke.texi: Document -mabi= option properly. Document -misel and -mno-sel. Document -mspe and -mno-spe. Document -mvrsave and -mno-vrsave. Document deprecation of -mspe= and -misel=. * config/rs6000/aix.h: Remove XL_COMPAT stuff. Remove SUBTARGET_SWITCHES and SUBSUBTARGET_SWITCHES. Define TARGET_XL_COMPAT. * config/rs6000/aix.opt: New. * config/rs6000/aix41.opt: New. * config/rs6000/aix64.opt: New. * config/rs6000/darwin.opt: New. * config/rs6000/linux64.opt: New. * config/rs6000/rs6000.opt: New. * config/rs6000/sysv4.opt: New. * config/rs6000/sysv4.h: Delete definitions of MASK_* and associated TARGET_*. Remove SUBTARGET_OPTIONS, SUBTARGET_SWITCHES. Define TARGET_USES_SYSV4_OPT. * config/rs6000/aix41.h: Remove SUBSUBTARGET_SWITCHES. * config/rs6000/aix43.h: Remove SUBSUBTARGET_SWITCHES. Define TARGET_USES_AIX64_OPT. * config/rs6000/aix51.h: Same. * config/rs6000/aix52.h: Same. * config/rs6000/darwin.h: Remove SUBTARGET_SWITCHES. Use TARGET_ALTIVEC_VRSAVE instead of rs6000_altivec_vrsave. * config/rs6000/linux64.h: Use rs6000_explicit_options. Remove EXTRA_SUBTARGET_SWITCHES. * config/rs6000/rs6000.c: Remove definitions of rs6000_sched_restricted_insns_priority, rs6000_long_double_size_string, rs6000_altivec_vrsave, rs6000_altivec_vrsave_string, rs6000_isel, rs6000_spe, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_abi_string, rs6000_warn_altivec_long, rs6000_longcall, rs6000_alignment_string. Define rs6000_explicit_options. (rs6000_parse_abi_options): Remove. (rs6000_parse_alignment_option): Remove. (rs6000_parse_float_gprs_option): Remove. (rs6000_handle_option): New. Define TARGET_HANDLE_OPTION. Define TARGET_DEFAULT_TARGET_FLAGS. (rs6000_override_options): Revamp to use new .opt machinery. * config/rs6000/rs6000.h: Remove old MASK_* and TARGET_* in favor of new .opt machinery. Remove target_flags. Redefine TARGET_MFCRF and TARGET_POWERPC64. Remove TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS, SUBTARGET_OPTIONS, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_altivec_vrsave_string, rs6000_altivec_vrsave, rs6000_longcall_switch, rs6000_default_long_calls, rs6000_sched_costly_dep_str, rs6000_sched_costly_dep, rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch, and TARGET_ALTIVEC_VRSAVE. From-SVN: r99284
2005-05-05 22:54:25 +02:00
extra_options="${extra_options} rs6000/sysv4.opt"
;;
eabi.h: Define TARGET_SPE_ABI, TARGET_SPE, TARGET_ISEL, and TARGET_FPRS. 2002-07-24 Aldy Hernandez <aldyh@redhat.com> * config/rs6000/eabi.h: Define TARGET_SPE_ABI, TARGET_SPE, TARGET_ISEL, and TARGET_FPRS. * doc/invoke.texi (RS/6000 and PowerPC Options): Document -mabi=spe, -mabi=no-spe, and -misel=. * config/rs6000/rs6000-protos.h: Add output_isel. Move vrsave_operation prototype here. * config/rs6000/rs6000.md (sminsi3): Allow pattern for TARGET_ISEL. (smaxsi3): Same. (uminsi3): Same. (umaxsi3): Same. (abssi2_nopower): Disallow when TARGET_ISEL. (*ne0): Same. (negsf2): Change to expand and rename old pattern to *negsf2. (abssf2): Change to expand and rename old pattern to *abssf2. New expanders: fix_truncsfsi2, floatunssisf2, floatsisf2, fixunssfsi2. Change patterns that check for TARGET_HARD_FLOAT or TARGET_SOFT_FLOAT to also check TARGET_FPRS. * config/rs6000/rs6000.c: New globals: rs6000_spe_abi, rs6000_isel, rs6000_fprs, rs6000_isel_string. (rs6000_override_options): Add 8540 case to processor_target_table. Set rs6000_isel for the 8540. Call rs6000_parse_isel_option. (enable_mask_for_builtins): New. (rs6000_parse_isel_option): New. (rs6000_parse_abi_options): Add spe and no-spe. (easy_fp_constant): Treat !TARGET_FPRS as soft-float. (rs6000_legitimize_address): Check for TARGET_FPRS when checking for TARGET_HARD_FLOAT. Add case for SPE_VECTOR_MODE. (rs6000_legitimize_reload_address): Handle SPE vector modes. (rs6000_legitimate_address): Disallow PRE_INC/PRE_DEC for SPE vector modes. Check for TARGET_FPRS when checking for TARGET_HARD_FLOAT. (rs6000_emit_move): Check for TARGET_FPRS. Add cases for SPE vector modes. (function_arg_boundary): Return 64 for SPE vector modes. (function_arg_advance): Check for TARGET_FPRS and Handle SPE vectors. (function_arg): Same. (setup_incoming_varargs): Check for TARGET_FPRS. (rs6000_va_arg): Same. (struct builtin_description): Un-constify mask field. Move up in file. (bdesc_2arg): Un-constify and add SPE builtins. (bdesc_1arg): Same. (bdesc_spe_predicates): New. (bdesc_spe_evsel): New. (rs6000_expand_unop_builtin): Add SPE 5-bit literal builtins. (rs6000_expand_binop_builtin): Same. (bdesc_2arg_spe): New. (spe_expand_builtin): New. (spe_expand_predicate_builtin): New. (spe_expand_evsel_builtin): New. (rs6000_expand_builtin): Call spe_expand_builtin for SPE. (rs6000_init_builtins): Initialize SPE builtins. Call rs6000_common_init_builtins. (altivec_init_builtins): Move all non-altivec builtin code to... (rs6000_common_init_builtins): ...here. New function. (branch_positive_comparison_operator): Allow NE code for SPE. (ccr_bit): Return correct ccr bit for SPE fp. (print_operand): Emit crnor in 'D' case for SPE. New case 't'. Add SPE code for 'y' case. (rs6000_generate_compare): Generate rtl for SPE fp. (output_cbranch): Handle SPE hard floats. (rs6000_emit_cmove): Handle isel. (rs6000_emit_int_cmove): New. (output_isel): New. (rs6000_stack_info): Adjust stack frame so GPRs are saved in 64-bits for SPE. (debug_stack_info): Add SPE info. (gen_frame_mem_offset): New. (rs6000_emit_prologue): Save GPRs in 64-bits for SPE abi. Change mode of frame pointer, when saving it, to Pmode. (rs6000_emit_epilogue): Restore GPRs in 64-bits for SPE abi. Misc cleanups and use gen_frame_mem_offset when appropriate. * config/rs6000/rs6000.h (processor_type): Add PROCESSOR_PPC8540. (TARGET_SPE_ABI): New. (TARGET_SPE): New. (TARGET_ISEL): New. (TARGET_FPRS): New. (FIXED_SCRATCH): New. (RTX_COSTS): Add PROCESSOR_PPC8540. (ASM_CPU_SPEC): Add case for 8540. (TARGET_OPTIONS): Add isel= case. (rs6000_spe_abi): New. (rs6000_isel): New. (rs6000_fprs): New. (rs6000_isel_string): New. (UNITS_PER_SPE_WORD): New. (LOCAL_ALIGNMENT): Adjust for SPE. (HARD_REGNO_MODE_OK): Same. (DATA_ALIGNMENT): Same. (MEMBER_TYPE_FORCES_BLK): New. (FIRST_PSEUDO_REGISTER): Set to 113. (FIXED_REGISTERS): Add SPE registers. (reg_class): Same. (REG_CLASS_NAMES): Same. (REG_CLASS_CONTENTS): Same. (REGNO_REG_CLASS): Same. (REGISTER_NAMES): Same. (DEBUG_REGISTER_NAMES): Same. (ADDITIONAL_REGISTER_NAMES): Same. (CALL_USED_REGISTERS): Same. (CALL_REALLY_USED_REGISTERS): Same. (SPE_ACC_REGNO): New. (SPEFSCR_REGNO): New. (SPE_SIMD_REGNO_P): New. (HARD_REGNO_NREGS): Adjust for SPE. (VECTOR_MODE_SUPPORTED_P): Same. (REGNO_REG_CLASS): Same. (FUNCTION_VALUE): Same. (LIBCALL_VALUE): Same. (LEGITIMATE_OFFSET_ADDRESS_P): Same. (SPE_VECTOR_MODE): New. (CONDITIONAL_REGISTER_USAGE): Disable FPRs when target does FP on the GPRs. Set FIXED_SCRATCH fixed in SPE case. (rs6000_stack): Add spe_gp_size, spe_padding_size, spe_gp_save_offset. (USE_FP_FOR_ARG_P): Check for TARGET_FPRS. (LEGITIMATE_LO_SUM_ADDRESS_P): Same. (SPE_CONST_OFFSET_OK): New. (rs6000_builtins): Add SPE builtins. * testsuite/gcc.dg/ppc-spe.c: New. * config/rs6000/eabispe.h: New. * config/rs6000/spe.h: New. * config/rs600/spe.md: New. * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define __SIMD__ for TARGET_SPE. * config.gcc: Add powerpc-*-eabispe* case. Add spe.h to user headers for powerpc. From-SVN: r55734
2002-07-25 04:51:31 +02:00
powerpc-*-eabispe*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h rs6000/eabispe.h"
config.gcc: Add .opt magic for the rs6000 ports. 2005-05-05 Aldy Hernandez <aldyh@redhat.com> * config.gcc: Add .opt magic for the rs6000 ports. * doc/invoke.texi: Document -mabi= option properly. Document -misel and -mno-sel. Document -mspe and -mno-spe. Document -mvrsave and -mno-vrsave. Document deprecation of -mspe= and -misel=. * config/rs6000/aix.h: Remove XL_COMPAT stuff. Remove SUBTARGET_SWITCHES and SUBSUBTARGET_SWITCHES. Define TARGET_XL_COMPAT. * config/rs6000/aix.opt: New. * config/rs6000/aix41.opt: New. * config/rs6000/aix64.opt: New. * config/rs6000/darwin.opt: New. * config/rs6000/linux64.opt: New. * config/rs6000/rs6000.opt: New. * config/rs6000/sysv4.opt: New. * config/rs6000/sysv4.h: Delete definitions of MASK_* and associated TARGET_*. Remove SUBTARGET_OPTIONS, SUBTARGET_SWITCHES. Define TARGET_USES_SYSV4_OPT. * config/rs6000/aix41.h: Remove SUBSUBTARGET_SWITCHES. * config/rs6000/aix43.h: Remove SUBSUBTARGET_SWITCHES. Define TARGET_USES_AIX64_OPT. * config/rs6000/aix51.h: Same. * config/rs6000/aix52.h: Same. * config/rs6000/darwin.h: Remove SUBTARGET_SWITCHES. Use TARGET_ALTIVEC_VRSAVE instead of rs6000_altivec_vrsave. * config/rs6000/linux64.h: Use rs6000_explicit_options. Remove EXTRA_SUBTARGET_SWITCHES. * config/rs6000/rs6000.c: Remove definitions of rs6000_sched_restricted_insns_priority, rs6000_long_double_size_string, rs6000_altivec_vrsave, rs6000_altivec_vrsave_string, rs6000_isel, rs6000_spe, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_abi_string, rs6000_warn_altivec_long, rs6000_longcall, rs6000_alignment_string. Define rs6000_explicit_options. (rs6000_parse_abi_options): Remove. (rs6000_parse_alignment_option): Remove. (rs6000_parse_float_gprs_option): Remove. (rs6000_handle_option): New. Define TARGET_HANDLE_OPTION. Define TARGET_DEFAULT_TARGET_FLAGS. (rs6000_override_options): Revamp to use new .opt machinery. * config/rs6000/rs6000.h: Remove old MASK_* and TARGET_* in favor of new .opt machinery. Remove target_flags. Redefine TARGET_MFCRF and TARGET_POWERPC64. Remove TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS, SUBTARGET_OPTIONS, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_altivec_vrsave_string, rs6000_altivec_vrsave, rs6000_longcall_switch, rs6000_default_long_calls, rs6000_sched_costly_dep_str, rs6000_sched_costly_dep, rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch, and TARGET_ALTIVEC_VRSAVE. From-SVN: r99284
2005-05-05 22:54:25 +02:00
extra_options="${extra_options} rs6000/sysv4.opt"
tmake_file="rs6000/t-spe rs6000/t-ppccomm"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
eabi.h: Define TARGET_SPE_ABI, TARGET_SPE, TARGET_ISEL, and TARGET_FPRS. 2002-07-24 Aldy Hernandez <aldyh@redhat.com> * config/rs6000/eabi.h: Define TARGET_SPE_ABI, TARGET_SPE, TARGET_ISEL, and TARGET_FPRS. * doc/invoke.texi (RS/6000 and PowerPC Options): Document -mabi=spe, -mabi=no-spe, and -misel=. * config/rs6000/rs6000-protos.h: Add output_isel. Move vrsave_operation prototype here. * config/rs6000/rs6000.md (sminsi3): Allow pattern for TARGET_ISEL. (smaxsi3): Same. (uminsi3): Same. (umaxsi3): Same. (abssi2_nopower): Disallow when TARGET_ISEL. (*ne0): Same. (negsf2): Change to expand and rename old pattern to *negsf2. (abssf2): Change to expand and rename old pattern to *abssf2. New expanders: fix_truncsfsi2, floatunssisf2, floatsisf2, fixunssfsi2. Change patterns that check for TARGET_HARD_FLOAT or TARGET_SOFT_FLOAT to also check TARGET_FPRS. * config/rs6000/rs6000.c: New globals: rs6000_spe_abi, rs6000_isel, rs6000_fprs, rs6000_isel_string. (rs6000_override_options): Add 8540 case to processor_target_table. Set rs6000_isel for the 8540. Call rs6000_parse_isel_option. (enable_mask_for_builtins): New. (rs6000_parse_isel_option): New. (rs6000_parse_abi_options): Add spe and no-spe. (easy_fp_constant): Treat !TARGET_FPRS as soft-float. (rs6000_legitimize_address): Check for TARGET_FPRS when checking for TARGET_HARD_FLOAT. Add case for SPE_VECTOR_MODE. (rs6000_legitimize_reload_address): Handle SPE vector modes. (rs6000_legitimate_address): Disallow PRE_INC/PRE_DEC for SPE vector modes. Check for TARGET_FPRS when checking for TARGET_HARD_FLOAT. (rs6000_emit_move): Check for TARGET_FPRS. Add cases for SPE vector modes. (function_arg_boundary): Return 64 for SPE vector modes. (function_arg_advance): Check for TARGET_FPRS and Handle SPE vectors. (function_arg): Same. (setup_incoming_varargs): Check for TARGET_FPRS. (rs6000_va_arg): Same. (struct builtin_description): Un-constify mask field. Move up in file. (bdesc_2arg): Un-constify and add SPE builtins. (bdesc_1arg): Same. (bdesc_spe_predicates): New. (bdesc_spe_evsel): New. (rs6000_expand_unop_builtin): Add SPE 5-bit literal builtins. (rs6000_expand_binop_builtin): Same. (bdesc_2arg_spe): New. (spe_expand_builtin): New. (spe_expand_predicate_builtin): New. (spe_expand_evsel_builtin): New. (rs6000_expand_builtin): Call spe_expand_builtin for SPE. (rs6000_init_builtins): Initialize SPE builtins. Call rs6000_common_init_builtins. (altivec_init_builtins): Move all non-altivec builtin code to... (rs6000_common_init_builtins): ...here. New function. (branch_positive_comparison_operator): Allow NE code for SPE. (ccr_bit): Return correct ccr bit for SPE fp. (print_operand): Emit crnor in 'D' case for SPE. New case 't'. Add SPE code for 'y' case. (rs6000_generate_compare): Generate rtl for SPE fp. (output_cbranch): Handle SPE hard floats. (rs6000_emit_cmove): Handle isel. (rs6000_emit_int_cmove): New. (output_isel): New. (rs6000_stack_info): Adjust stack frame so GPRs are saved in 64-bits for SPE. (debug_stack_info): Add SPE info. (gen_frame_mem_offset): New. (rs6000_emit_prologue): Save GPRs in 64-bits for SPE abi. Change mode of frame pointer, when saving it, to Pmode. (rs6000_emit_epilogue): Restore GPRs in 64-bits for SPE abi. Misc cleanups and use gen_frame_mem_offset when appropriate. * config/rs6000/rs6000.h (processor_type): Add PROCESSOR_PPC8540. (TARGET_SPE_ABI): New. (TARGET_SPE): New. (TARGET_ISEL): New. (TARGET_FPRS): New. (FIXED_SCRATCH): New. (RTX_COSTS): Add PROCESSOR_PPC8540. (ASM_CPU_SPEC): Add case for 8540. (TARGET_OPTIONS): Add isel= case. (rs6000_spe_abi): New. (rs6000_isel): New. (rs6000_fprs): New. (rs6000_isel_string): New. (UNITS_PER_SPE_WORD): New. (LOCAL_ALIGNMENT): Adjust for SPE. (HARD_REGNO_MODE_OK): Same. (DATA_ALIGNMENT): Same. (MEMBER_TYPE_FORCES_BLK): New. (FIRST_PSEUDO_REGISTER): Set to 113. (FIXED_REGISTERS): Add SPE registers. (reg_class): Same. (REG_CLASS_NAMES): Same. (REG_CLASS_CONTENTS): Same. (REGNO_REG_CLASS): Same. (REGISTER_NAMES): Same. (DEBUG_REGISTER_NAMES): Same. (ADDITIONAL_REGISTER_NAMES): Same. (CALL_USED_REGISTERS): Same. (CALL_REALLY_USED_REGISTERS): Same. (SPE_ACC_REGNO): New. (SPEFSCR_REGNO): New. (SPE_SIMD_REGNO_P): New. (HARD_REGNO_NREGS): Adjust for SPE. (VECTOR_MODE_SUPPORTED_P): Same. (REGNO_REG_CLASS): Same. (FUNCTION_VALUE): Same. (LIBCALL_VALUE): Same. (LEGITIMATE_OFFSET_ADDRESS_P): Same. (SPE_VECTOR_MODE): New. (CONDITIONAL_REGISTER_USAGE): Disable FPRs when target does FP on the GPRs. Set FIXED_SCRATCH fixed in SPE case. (rs6000_stack): Add spe_gp_size, spe_padding_size, spe_gp_save_offset. (USE_FP_FOR_ARG_P): Check for TARGET_FPRS. (LEGITIMATE_LO_SUM_ADDRESS_P): Same. (SPE_CONST_OFFSET_OK): New. (rs6000_builtins): Add SPE builtins. * testsuite/gcc.dg/ppc-spe.c: New. * config/rs6000/eabispe.h: New. * config/rs6000/spe.h: New. * config/rs600/spe.md: New. * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define __SIMD__ for TARGET_SPE. * config.gcc: Add powerpc-*-eabispe* case. Add spe.h to user headers for powerpc. From-SVN: r55734
2002-07-25 04:51:31 +02:00
;;
powerpc-*-eabisimaltivec*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h rs6000/eabisim.h rs6000/eabialtivec.h"
config.gcc: Add .opt magic for the rs6000 ports. 2005-05-05 Aldy Hernandez <aldyh@redhat.com> * config.gcc: Add .opt magic for the rs6000 ports. * doc/invoke.texi: Document -mabi= option properly. Document -misel and -mno-sel. Document -mspe and -mno-spe. Document -mvrsave and -mno-vrsave. Document deprecation of -mspe= and -misel=. * config/rs6000/aix.h: Remove XL_COMPAT stuff. Remove SUBTARGET_SWITCHES and SUBSUBTARGET_SWITCHES. Define TARGET_XL_COMPAT. * config/rs6000/aix.opt: New. * config/rs6000/aix41.opt: New. * config/rs6000/aix64.opt: New. * config/rs6000/darwin.opt: New. * config/rs6000/linux64.opt: New. * config/rs6000/rs6000.opt: New. * config/rs6000/sysv4.opt: New. * config/rs6000/sysv4.h: Delete definitions of MASK_* and associated TARGET_*. Remove SUBTARGET_OPTIONS, SUBTARGET_SWITCHES. Define TARGET_USES_SYSV4_OPT. * config/rs6000/aix41.h: Remove SUBSUBTARGET_SWITCHES. * config/rs6000/aix43.h: Remove SUBSUBTARGET_SWITCHES. Define TARGET_USES_AIX64_OPT. * config/rs6000/aix51.h: Same. * config/rs6000/aix52.h: Same. * config/rs6000/darwin.h: Remove SUBTARGET_SWITCHES. Use TARGET_ALTIVEC_VRSAVE instead of rs6000_altivec_vrsave. * config/rs6000/linux64.h: Use rs6000_explicit_options. Remove EXTRA_SUBTARGET_SWITCHES. * config/rs6000/rs6000.c: Remove definitions of rs6000_sched_restricted_insns_priority, rs6000_long_double_size_string, rs6000_altivec_vrsave, rs6000_altivec_vrsave_string, rs6000_isel, rs6000_spe, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_abi_string, rs6000_warn_altivec_long, rs6000_longcall, rs6000_alignment_string. Define rs6000_explicit_options. (rs6000_parse_abi_options): Remove. (rs6000_parse_alignment_option): Remove. (rs6000_parse_float_gprs_option): Remove. (rs6000_handle_option): New. Define TARGET_HANDLE_OPTION. Define TARGET_DEFAULT_TARGET_FLAGS. (rs6000_override_options): Revamp to use new .opt machinery. * config/rs6000/rs6000.h: Remove old MASK_* and TARGET_* in favor of new .opt machinery. Remove target_flags. Redefine TARGET_MFCRF and TARGET_POWERPC64. Remove TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS, SUBTARGET_OPTIONS, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_altivec_vrsave_string, rs6000_altivec_vrsave, rs6000_longcall_switch, rs6000_default_long_calls, rs6000_sched_costly_dep_str, rs6000_sched_costly_dep, rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch, and TARGET_ALTIVEC_VRSAVE. From-SVN: r99284
2005-05-05 22:54:25 +02:00
extra_options="${extra_options} rs6000/sysv4.opt"
tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppcendian rs6000/t-ppccomm"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
;;
powerpc-*-eabisim*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h usegas.h svr4.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h rs6000/eabisim.h"
config.gcc: Add .opt magic for the rs6000 ports. 2005-05-05 Aldy Hernandez <aldyh@redhat.com> * config.gcc: Add .opt magic for the rs6000 ports. * doc/invoke.texi: Document -mabi= option properly. Document -misel and -mno-sel. Document -mspe and -mno-spe. Document -mvrsave and -mno-vrsave. Document deprecation of -mspe= and -misel=. * config/rs6000/aix.h: Remove XL_COMPAT stuff. Remove SUBTARGET_SWITCHES and SUBSUBTARGET_SWITCHES. Define TARGET_XL_COMPAT. * config/rs6000/aix.opt: New. * config/rs6000/aix41.opt: New. * config/rs6000/aix64.opt: New. * config/rs6000/darwin.opt: New. * config/rs6000/linux64.opt: New. * config/rs6000/rs6000.opt: New. * config/rs6000/sysv4.opt: New. * config/rs6000/sysv4.h: Delete definitions of MASK_* and associated TARGET_*. Remove SUBTARGET_OPTIONS, SUBTARGET_SWITCHES. Define TARGET_USES_SYSV4_OPT. * config/rs6000/aix41.h: Remove SUBSUBTARGET_SWITCHES. * config/rs6000/aix43.h: Remove SUBSUBTARGET_SWITCHES. Define TARGET_USES_AIX64_OPT. * config/rs6000/aix51.h: Same. * config/rs6000/aix52.h: Same. * config/rs6000/darwin.h: Remove SUBTARGET_SWITCHES. Use TARGET_ALTIVEC_VRSAVE instead of rs6000_altivec_vrsave. * config/rs6000/linux64.h: Use rs6000_explicit_options. Remove EXTRA_SUBTARGET_SWITCHES. * config/rs6000/rs6000.c: Remove definitions of rs6000_sched_restricted_insns_priority, rs6000_long_double_size_string, rs6000_altivec_vrsave, rs6000_altivec_vrsave_string, rs6000_isel, rs6000_spe, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_abi_string, rs6000_warn_altivec_long, rs6000_longcall, rs6000_alignment_string. Define rs6000_explicit_options. (rs6000_parse_abi_options): Remove. (rs6000_parse_alignment_option): Remove. (rs6000_parse_float_gprs_option): Remove. (rs6000_handle_option): New. Define TARGET_HANDLE_OPTION. Define TARGET_DEFAULT_TARGET_FLAGS. (rs6000_override_options): Revamp to use new .opt machinery. * config/rs6000/rs6000.h: Remove old MASK_* and TARGET_* in favor of new .opt machinery. Remove target_flags. Redefine TARGET_MFCRF and TARGET_POWERPC64. Remove TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS, SUBTARGET_OPTIONS, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_altivec_vrsave_string, rs6000_altivec_vrsave, rs6000_longcall_switch, rs6000_default_long_calls, rs6000_sched_costly_dep_str, rs6000_sched_costly_dep, rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch, and TARGET_ALTIVEC_VRSAVE. From-SVN: r99284
2005-05-05 22:54:25 +02:00
extra_options="${extra_options} rs6000/sysv4.opt"
tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppcgas rs6000/t-ppccomm"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
;;
powerpc-*-elf*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h usegas.h svr4.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h"
config.gcc: Add .opt magic for the rs6000 ports. 2005-05-05 Aldy Hernandez <aldyh@redhat.com> * config.gcc: Add .opt magic for the rs6000 ports. * doc/invoke.texi: Document -mabi= option properly. Document -misel and -mno-sel. Document -mspe and -mno-spe. Document -mvrsave and -mno-vrsave. Document deprecation of -mspe= and -misel=. * config/rs6000/aix.h: Remove XL_COMPAT stuff. Remove SUBTARGET_SWITCHES and SUBSUBTARGET_SWITCHES. Define TARGET_XL_COMPAT. * config/rs6000/aix.opt: New. * config/rs6000/aix41.opt: New. * config/rs6000/aix64.opt: New. * config/rs6000/darwin.opt: New. * config/rs6000/linux64.opt: New. * config/rs6000/rs6000.opt: New. * config/rs6000/sysv4.opt: New. * config/rs6000/sysv4.h: Delete definitions of MASK_* and associated TARGET_*. Remove SUBTARGET_OPTIONS, SUBTARGET_SWITCHES. Define TARGET_USES_SYSV4_OPT. * config/rs6000/aix41.h: Remove SUBSUBTARGET_SWITCHES. * config/rs6000/aix43.h: Remove SUBSUBTARGET_SWITCHES. Define TARGET_USES_AIX64_OPT. * config/rs6000/aix51.h: Same. * config/rs6000/aix52.h: Same. * config/rs6000/darwin.h: Remove SUBTARGET_SWITCHES. Use TARGET_ALTIVEC_VRSAVE instead of rs6000_altivec_vrsave. * config/rs6000/linux64.h: Use rs6000_explicit_options. Remove EXTRA_SUBTARGET_SWITCHES. * config/rs6000/rs6000.c: Remove definitions of rs6000_sched_restricted_insns_priority, rs6000_long_double_size_string, rs6000_altivec_vrsave, rs6000_altivec_vrsave_string, rs6000_isel, rs6000_spe, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_abi_string, rs6000_warn_altivec_long, rs6000_longcall, rs6000_alignment_string. Define rs6000_explicit_options. (rs6000_parse_abi_options): Remove. (rs6000_parse_alignment_option): Remove. (rs6000_parse_float_gprs_option): Remove. (rs6000_handle_option): New. Define TARGET_HANDLE_OPTION. Define TARGET_DEFAULT_TARGET_FLAGS. (rs6000_override_options): Revamp to use new .opt machinery. * config/rs6000/rs6000.h: Remove old MASK_* and TARGET_* in favor of new .opt machinery. Remove target_flags. Redefine TARGET_MFCRF and TARGET_POWERPC64. Remove TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS, SUBTARGET_OPTIONS, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_altivec_vrsave_string, rs6000_altivec_vrsave, rs6000_longcall_switch, rs6000_default_long_calls, rs6000_sched_costly_dep_str, rs6000_sched_costly_dep, rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch, and TARGET_ALTIVEC_VRSAVE. From-SVN: r99284
2005-05-05 22:54:25 +02:00
extra_options="${extra_options} rs6000/sysv4.opt"
tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppcgas rs6000/t-ppccomm"
;;
powerpc-*-eabialtivec*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h rs6000/eabialtivec.h"
config.gcc: Add .opt magic for the rs6000 ports. 2005-05-05 Aldy Hernandez <aldyh@redhat.com> * config.gcc: Add .opt magic for the rs6000 ports. * doc/invoke.texi: Document -mabi= option properly. Document -misel and -mno-sel. Document -mspe and -mno-spe. Document -mvrsave and -mno-vrsave. Document deprecation of -mspe= and -misel=. * config/rs6000/aix.h: Remove XL_COMPAT stuff. Remove SUBTARGET_SWITCHES and SUBSUBTARGET_SWITCHES. Define TARGET_XL_COMPAT. * config/rs6000/aix.opt: New. * config/rs6000/aix41.opt: New. * config/rs6000/aix64.opt: New. * config/rs6000/darwin.opt: New. * config/rs6000/linux64.opt: New. * config/rs6000/rs6000.opt: New. * config/rs6000/sysv4.opt: New. * config/rs6000/sysv4.h: Delete definitions of MASK_* and associated TARGET_*. Remove SUBTARGET_OPTIONS, SUBTARGET_SWITCHES. Define TARGET_USES_SYSV4_OPT. * config/rs6000/aix41.h: Remove SUBSUBTARGET_SWITCHES. * config/rs6000/aix43.h: Remove SUBSUBTARGET_SWITCHES. Define TARGET_USES_AIX64_OPT. * config/rs6000/aix51.h: Same. * config/rs6000/aix52.h: Same. * config/rs6000/darwin.h: Remove SUBTARGET_SWITCHES. Use TARGET_ALTIVEC_VRSAVE instead of rs6000_altivec_vrsave. * config/rs6000/linux64.h: Use rs6000_explicit_options. Remove EXTRA_SUBTARGET_SWITCHES. * config/rs6000/rs6000.c: Remove definitions of rs6000_sched_restricted_insns_priority, rs6000_long_double_size_string, rs6000_altivec_vrsave, rs6000_altivec_vrsave_string, rs6000_isel, rs6000_spe, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_abi_string, rs6000_warn_altivec_long, rs6000_longcall, rs6000_alignment_string. Define rs6000_explicit_options. (rs6000_parse_abi_options): Remove. (rs6000_parse_alignment_option): Remove. (rs6000_parse_float_gprs_option): Remove. (rs6000_handle_option): New. Define TARGET_HANDLE_OPTION. Define TARGET_DEFAULT_TARGET_FLAGS. (rs6000_override_options): Revamp to use new .opt machinery. * config/rs6000/rs6000.h: Remove old MASK_* and TARGET_* in favor of new .opt machinery. Remove target_flags. Redefine TARGET_MFCRF and TARGET_POWERPC64. Remove TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS, SUBTARGET_OPTIONS, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_altivec_vrsave_string, rs6000_altivec_vrsave, rs6000_longcall_switch, rs6000_default_long_calls, rs6000_sched_costly_dep_str, rs6000_sched_costly_dep, rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch, and TARGET_ALTIVEC_VRSAVE. From-SVN: r99284
2005-05-05 22:54:25 +02:00
extra_options="${extra_options} rs6000/sysv4.opt"
tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppcendian rs6000/t-ppccomm"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
;;
predicates.md (easy_fp_constant): Single FP consts are easy. * config/rs6000/predicates.md (easy_fp_constant): Single FP consts are easy. * config/rs6000/rs6000.c (rs6000_override_options): Move rs6000_init_hard_regno_mode_ok after all options changed. Set rs6000_single_float, rs6000_double_float if TARGET_HARD_FLOAT. (rs6000_handle_option): Process -msingle-float, -mdouble-float, -msimple-fpu flags. Add warning messages if single FP not configured. (rs6000_file_start): Output gnu_attribute for single-float. (legitimate_lo_sum_address_p): Condition on TARGET_DOUBLE_FLOAT. (rs6000_legitimize_address): Likewise. (rs6000_legitimize_reload_address): Likewise. (rs6000_emit_move): Condition on TARGET_DOUBLE_FLOAT, TARGET_SINGLE_FLOAT. (function_arg_advance): Likewise (partial conversion). (setup_incoming_varargs): Condition on TARGET_DOUBLE_FLOAT. (rs6000_gimplify_va_arg): Condition on TARGET_DOUBLE_FLOAT, TARGET_SINGLE_FLOAT. (rs6000_split_multireg_move): Condition on TARGET_DOUBLE_FLOAT. (rs6000_emit_prologue): Likewise. (rs6000_function_value): Condition on TARGET_DOUBLE_FLOAT, TARGET_SINGLE_FLOAT. (rs6000_libcall_value): Likewise. * config/rs6000/rs6000.h (TARGET_SINGLE_FLOAT): New default to 1. (TARGET_DOUBLE_FLOAT): New default to 1 (TARGET_SIMPLE_FPU): New default to 0 (TARGET_SINGLE_FPU): New default to 0 (TARGET_SINGLE_FLOAT_MODE): New. (TARGET_DOUBLE_FLOAT_MODE): New. * config/rs6000/singlefp.h: New; redefine TARGET_SINGLE_FLOAT, TARGET_DOUBLE_FLOAT, TARGET_SIMPLE_FPU, TARGET_SINGLE_FPU, UNITS_PER_FP_WORD * config/rs6000/rs6000.md (define_mode_iterator): Condition on TARGET_DOUBLE_FLOAT, TARGET_SINGLE_FLOAT. (extendsfdf2, extendsfdf2_fpr, truncdfsf2, truncdfsf2_fpr, copysigndf3,fseldfsf4, negdf2, negdf2_fpr, absdf2, absdf2_fpr, nabsdf2_fpr, adddf3, adddf3_fpr, subdf3, subdf3_fpr, muldf3, muldf3_fpr, divdf3, divdf3_fpr, sqrtdf2, smaxdf3, smindf3, movdfcc, *fseldfdf4, floatsidf2, *floatsidf2_internal, floatunssidf2, *floatunssidf2_internal, fix_truncdfsi2, *fix_truncdfsi2_internal, fix_truncdfsi2_internal_gfxopt, fix_truncdfsi2_mfpgpr, fctiwz, btruncdf2, ceildf2, floordf2, rounddf2, floatdidf2, floatsidf_ppc64_mfpgpr, floatsidf_ppc64, floatunssidf_ppc64, fix_truncdfdi2, movdf_hardfloat32, movdf_hardfloat64_mfpgpr, movdf_hardfloat64, extenddftf2_fprs, extenddftf2_internal, trunctfdf2_internal2, fix_trunc_helper, abstf2_internal, movdf_update1, movdf_update2, cmpdf_internal1, cmptf_internal1, *cmptf_internal2): Condition on TARGET_DOUBLE_FLOAT. (aux_truncdfsf2, negsf2, *negsf2, abssf2, *abssf2, addsf3, subsf3, mulsf3, divsf3, sqrtsf2, copysignsf3, smaxsf3, sminsf3, movsfcc, *fselsfsf4, fixuns_truncsfsi2, fix_truncsfsi2, floatunssisf2, btruncsf2, ceilsf2, floorsf2, roundsf2, floatdisf2_internal1, floatdisf2_internal2, *movsf_hardfloat, trunctfsf2_fprs, *movsf_update1, *movsf_update2, *cmpsf_internal1): Condition on TARGET_SINGLE_FLOAT. (divsf3, sqrtsf2, divdf3, divdf3_fpr): Condition on TARGET_SIMPLE_FPU. * config/rs6000/rs6000.opt (-msingle-float): New. (-mdouble-float): New. (-msimple-fpu): New. * doc/invoke.texi (RS/6000 and PowerPC Options): Add -msingle-float, -mdouble-float, -msimple-fpu options. * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Set _SOFT_DOUBLE for -msingle-float. * config.gcc: New config for target=powerpc-xilinx-eabi. From-SVN: r140757
2008-09-29 18:05:32 +02:00
powerpc-xilinx-eabi*)
tm_file="${tm_file} dbxelf.h elfos.h usegas.h svr4.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/singlefp.h rs6000/xfpu.h rs6000/xilinx.h"
predicates.md (easy_fp_constant): Single FP consts are easy. * config/rs6000/predicates.md (easy_fp_constant): Single FP consts are easy. * config/rs6000/rs6000.c (rs6000_override_options): Move rs6000_init_hard_regno_mode_ok after all options changed. Set rs6000_single_float, rs6000_double_float if TARGET_HARD_FLOAT. (rs6000_handle_option): Process -msingle-float, -mdouble-float, -msimple-fpu flags. Add warning messages if single FP not configured. (rs6000_file_start): Output gnu_attribute for single-float. (legitimate_lo_sum_address_p): Condition on TARGET_DOUBLE_FLOAT. (rs6000_legitimize_address): Likewise. (rs6000_legitimize_reload_address): Likewise. (rs6000_emit_move): Condition on TARGET_DOUBLE_FLOAT, TARGET_SINGLE_FLOAT. (function_arg_advance): Likewise (partial conversion). (setup_incoming_varargs): Condition on TARGET_DOUBLE_FLOAT. (rs6000_gimplify_va_arg): Condition on TARGET_DOUBLE_FLOAT, TARGET_SINGLE_FLOAT. (rs6000_split_multireg_move): Condition on TARGET_DOUBLE_FLOAT. (rs6000_emit_prologue): Likewise. (rs6000_function_value): Condition on TARGET_DOUBLE_FLOAT, TARGET_SINGLE_FLOAT. (rs6000_libcall_value): Likewise. * config/rs6000/rs6000.h (TARGET_SINGLE_FLOAT): New default to 1. (TARGET_DOUBLE_FLOAT): New default to 1 (TARGET_SIMPLE_FPU): New default to 0 (TARGET_SINGLE_FPU): New default to 0 (TARGET_SINGLE_FLOAT_MODE): New. (TARGET_DOUBLE_FLOAT_MODE): New. * config/rs6000/singlefp.h: New; redefine TARGET_SINGLE_FLOAT, TARGET_DOUBLE_FLOAT, TARGET_SIMPLE_FPU, TARGET_SINGLE_FPU, UNITS_PER_FP_WORD * config/rs6000/rs6000.md (define_mode_iterator): Condition on TARGET_DOUBLE_FLOAT, TARGET_SINGLE_FLOAT. (extendsfdf2, extendsfdf2_fpr, truncdfsf2, truncdfsf2_fpr, copysigndf3,fseldfsf4, negdf2, negdf2_fpr, absdf2, absdf2_fpr, nabsdf2_fpr, adddf3, adddf3_fpr, subdf3, subdf3_fpr, muldf3, muldf3_fpr, divdf3, divdf3_fpr, sqrtdf2, smaxdf3, smindf3, movdfcc, *fseldfdf4, floatsidf2, *floatsidf2_internal, floatunssidf2, *floatunssidf2_internal, fix_truncdfsi2, *fix_truncdfsi2_internal, fix_truncdfsi2_internal_gfxopt, fix_truncdfsi2_mfpgpr, fctiwz, btruncdf2, ceildf2, floordf2, rounddf2, floatdidf2, floatsidf_ppc64_mfpgpr, floatsidf_ppc64, floatunssidf_ppc64, fix_truncdfdi2, movdf_hardfloat32, movdf_hardfloat64_mfpgpr, movdf_hardfloat64, extenddftf2_fprs, extenddftf2_internal, trunctfdf2_internal2, fix_trunc_helper, abstf2_internal, movdf_update1, movdf_update2, cmpdf_internal1, cmptf_internal1, *cmptf_internal2): Condition on TARGET_DOUBLE_FLOAT. (aux_truncdfsf2, negsf2, *negsf2, abssf2, *abssf2, addsf3, subsf3, mulsf3, divsf3, sqrtsf2, copysignsf3, smaxsf3, sminsf3, movsfcc, *fselsfsf4, fixuns_truncsfsi2, fix_truncsfsi2, floatunssisf2, btruncsf2, ceilsf2, floorsf2, roundsf2, floatdisf2_internal1, floatdisf2_internal2, *movsf_hardfloat, trunctfsf2_fprs, *movsf_update1, *movsf_update2, *cmpsf_internal1): Condition on TARGET_SINGLE_FLOAT. (divsf3, sqrtsf2, divdf3, divdf3_fpr): Condition on TARGET_SIMPLE_FPU. * config/rs6000/rs6000.opt (-msingle-float): New. (-mdouble-float): New. (-msimple-fpu): New. * doc/invoke.texi (RS/6000 and PowerPC Options): Add -msingle-float, -mdouble-float, -msimple-fpu options. * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Set _SOFT_DOUBLE for -msingle-float. * config.gcc: New config for target=powerpc-xilinx-eabi. From-SVN: r140757
2008-09-29 18:05:32 +02:00
extra_options="${extra_options} rs6000/sysv4.opt"
tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppcgas rs6000/t-ppccomm rs6000/t-xilinx"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
predicates.md (easy_fp_constant): Single FP consts are easy. * config/rs6000/predicates.md (easy_fp_constant): Single FP consts are easy. * config/rs6000/rs6000.c (rs6000_override_options): Move rs6000_init_hard_regno_mode_ok after all options changed. Set rs6000_single_float, rs6000_double_float if TARGET_HARD_FLOAT. (rs6000_handle_option): Process -msingle-float, -mdouble-float, -msimple-fpu flags. Add warning messages if single FP not configured. (rs6000_file_start): Output gnu_attribute for single-float. (legitimate_lo_sum_address_p): Condition on TARGET_DOUBLE_FLOAT. (rs6000_legitimize_address): Likewise. (rs6000_legitimize_reload_address): Likewise. (rs6000_emit_move): Condition on TARGET_DOUBLE_FLOAT, TARGET_SINGLE_FLOAT. (function_arg_advance): Likewise (partial conversion). (setup_incoming_varargs): Condition on TARGET_DOUBLE_FLOAT. (rs6000_gimplify_va_arg): Condition on TARGET_DOUBLE_FLOAT, TARGET_SINGLE_FLOAT. (rs6000_split_multireg_move): Condition on TARGET_DOUBLE_FLOAT. (rs6000_emit_prologue): Likewise. (rs6000_function_value): Condition on TARGET_DOUBLE_FLOAT, TARGET_SINGLE_FLOAT. (rs6000_libcall_value): Likewise. * config/rs6000/rs6000.h (TARGET_SINGLE_FLOAT): New default to 1. (TARGET_DOUBLE_FLOAT): New default to 1 (TARGET_SIMPLE_FPU): New default to 0 (TARGET_SINGLE_FPU): New default to 0 (TARGET_SINGLE_FLOAT_MODE): New. (TARGET_DOUBLE_FLOAT_MODE): New. * config/rs6000/singlefp.h: New; redefine TARGET_SINGLE_FLOAT, TARGET_DOUBLE_FLOAT, TARGET_SIMPLE_FPU, TARGET_SINGLE_FPU, UNITS_PER_FP_WORD * config/rs6000/rs6000.md (define_mode_iterator): Condition on TARGET_DOUBLE_FLOAT, TARGET_SINGLE_FLOAT. (extendsfdf2, extendsfdf2_fpr, truncdfsf2, truncdfsf2_fpr, copysigndf3,fseldfsf4, negdf2, negdf2_fpr, absdf2, absdf2_fpr, nabsdf2_fpr, adddf3, adddf3_fpr, subdf3, subdf3_fpr, muldf3, muldf3_fpr, divdf3, divdf3_fpr, sqrtdf2, smaxdf3, smindf3, movdfcc, *fseldfdf4, floatsidf2, *floatsidf2_internal, floatunssidf2, *floatunssidf2_internal, fix_truncdfsi2, *fix_truncdfsi2_internal, fix_truncdfsi2_internal_gfxopt, fix_truncdfsi2_mfpgpr, fctiwz, btruncdf2, ceildf2, floordf2, rounddf2, floatdidf2, floatsidf_ppc64_mfpgpr, floatsidf_ppc64, floatunssidf_ppc64, fix_truncdfdi2, movdf_hardfloat32, movdf_hardfloat64_mfpgpr, movdf_hardfloat64, extenddftf2_fprs, extenddftf2_internal, trunctfdf2_internal2, fix_trunc_helper, abstf2_internal, movdf_update1, movdf_update2, cmpdf_internal1, cmptf_internal1, *cmptf_internal2): Condition on TARGET_DOUBLE_FLOAT. (aux_truncdfsf2, negsf2, *negsf2, abssf2, *abssf2, addsf3, subsf3, mulsf3, divsf3, sqrtsf2, copysignsf3, smaxsf3, sminsf3, movsfcc, *fselsfsf4, fixuns_truncsfsi2, fix_truncsfsi2, floatunssisf2, btruncsf2, ceilsf2, floorsf2, roundsf2, floatdisf2_internal1, floatdisf2_internal2, *movsf_hardfloat, trunctfsf2_fprs, *movsf_update1, *movsf_update2, *cmpsf_internal1): Condition on TARGET_SINGLE_FLOAT. (divsf3, sqrtsf2, divdf3, divdf3_fpr): Condition on TARGET_SIMPLE_FPU. * config/rs6000/rs6000.opt (-msingle-float): New. (-mdouble-float): New. (-msimple-fpu): New. * doc/invoke.texi (RS/6000 and PowerPC Options): Add -msingle-float, -mdouble-float, -msimple-fpu options. * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Set _SOFT_DOUBLE for -msingle-float. * config.gcc: New config for target=powerpc-xilinx-eabi. From-SVN: r140757
2008-09-29 18:05:32 +02:00
;;
powerpc-*-eabi*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h usegas.h svr4.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h"
config.gcc: Add .opt magic for the rs6000 ports. 2005-05-05 Aldy Hernandez <aldyh@redhat.com> * config.gcc: Add .opt magic for the rs6000 ports. * doc/invoke.texi: Document -mabi= option properly. Document -misel and -mno-sel. Document -mspe and -mno-spe. Document -mvrsave and -mno-vrsave. Document deprecation of -mspe= and -misel=. * config/rs6000/aix.h: Remove XL_COMPAT stuff. Remove SUBTARGET_SWITCHES and SUBSUBTARGET_SWITCHES. Define TARGET_XL_COMPAT. * config/rs6000/aix.opt: New. * config/rs6000/aix41.opt: New. * config/rs6000/aix64.opt: New. * config/rs6000/darwin.opt: New. * config/rs6000/linux64.opt: New. * config/rs6000/rs6000.opt: New. * config/rs6000/sysv4.opt: New. * config/rs6000/sysv4.h: Delete definitions of MASK_* and associated TARGET_*. Remove SUBTARGET_OPTIONS, SUBTARGET_SWITCHES. Define TARGET_USES_SYSV4_OPT. * config/rs6000/aix41.h: Remove SUBSUBTARGET_SWITCHES. * config/rs6000/aix43.h: Remove SUBSUBTARGET_SWITCHES. Define TARGET_USES_AIX64_OPT. * config/rs6000/aix51.h: Same. * config/rs6000/aix52.h: Same. * config/rs6000/darwin.h: Remove SUBTARGET_SWITCHES. Use TARGET_ALTIVEC_VRSAVE instead of rs6000_altivec_vrsave. * config/rs6000/linux64.h: Use rs6000_explicit_options. Remove EXTRA_SUBTARGET_SWITCHES. * config/rs6000/rs6000.c: Remove definitions of rs6000_sched_restricted_insns_priority, rs6000_long_double_size_string, rs6000_altivec_vrsave, rs6000_altivec_vrsave_string, rs6000_isel, rs6000_spe, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_abi_string, rs6000_warn_altivec_long, rs6000_longcall, rs6000_alignment_string. Define rs6000_explicit_options. (rs6000_parse_abi_options): Remove. (rs6000_parse_alignment_option): Remove. (rs6000_parse_float_gprs_option): Remove. (rs6000_handle_option): New. Define TARGET_HANDLE_OPTION. Define TARGET_DEFAULT_TARGET_FLAGS. (rs6000_override_options): Revamp to use new .opt machinery. * config/rs6000/rs6000.h: Remove old MASK_* and TARGET_* in favor of new .opt machinery. Remove target_flags. Redefine TARGET_MFCRF and TARGET_POWERPC64. Remove TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS, SUBTARGET_OPTIONS, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_altivec_vrsave_string, rs6000_altivec_vrsave, rs6000_longcall_switch, rs6000_default_long_calls, rs6000_sched_costly_dep_str, rs6000_sched_costly_dep, rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch, and TARGET_ALTIVEC_VRSAVE. From-SVN: r99284
2005-05-05 22:54:25 +02:00
extra_options="${extra_options} rs6000/sysv4.opt"
tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppcgas rs6000/t-ppccomm"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
;;
powerpc-*-rtems*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h newlib-stdint.h rs6000/sysv4.h rs6000/eabi.h rs6000/e500.h rs6000/rtems.h rtems.h"
config.gcc: Add .opt magic for the rs6000 ports. 2005-05-05 Aldy Hernandez <aldyh@redhat.com> * config.gcc: Add .opt magic for the rs6000 ports. * doc/invoke.texi: Document -mabi= option properly. Document -misel and -mno-sel. Document -mspe and -mno-spe. Document -mvrsave and -mno-vrsave. Document deprecation of -mspe= and -misel=. * config/rs6000/aix.h: Remove XL_COMPAT stuff. Remove SUBTARGET_SWITCHES and SUBSUBTARGET_SWITCHES. Define TARGET_XL_COMPAT. * config/rs6000/aix.opt: New. * config/rs6000/aix41.opt: New. * config/rs6000/aix64.opt: New. * config/rs6000/darwin.opt: New. * config/rs6000/linux64.opt: New. * config/rs6000/rs6000.opt: New. * config/rs6000/sysv4.opt: New. * config/rs6000/sysv4.h: Delete definitions of MASK_* and associated TARGET_*. Remove SUBTARGET_OPTIONS, SUBTARGET_SWITCHES. Define TARGET_USES_SYSV4_OPT. * config/rs6000/aix41.h: Remove SUBSUBTARGET_SWITCHES. * config/rs6000/aix43.h: Remove SUBSUBTARGET_SWITCHES. Define TARGET_USES_AIX64_OPT. * config/rs6000/aix51.h: Same. * config/rs6000/aix52.h: Same. * config/rs6000/darwin.h: Remove SUBTARGET_SWITCHES. Use TARGET_ALTIVEC_VRSAVE instead of rs6000_altivec_vrsave. * config/rs6000/linux64.h: Use rs6000_explicit_options. Remove EXTRA_SUBTARGET_SWITCHES. * config/rs6000/rs6000.c: Remove definitions of rs6000_sched_restricted_insns_priority, rs6000_long_double_size_string, rs6000_altivec_vrsave, rs6000_altivec_vrsave_string, rs6000_isel, rs6000_spe, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_abi_string, rs6000_warn_altivec_long, rs6000_longcall, rs6000_alignment_string. Define rs6000_explicit_options. (rs6000_parse_abi_options): Remove. (rs6000_parse_alignment_option): Remove. (rs6000_parse_float_gprs_option): Remove. (rs6000_handle_option): New. Define TARGET_HANDLE_OPTION. Define TARGET_DEFAULT_TARGET_FLAGS. (rs6000_override_options): Revamp to use new .opt machinery. * config/rs6000/rs6000.h: Remove old MASK_* and TARGET_* in favor of new .opt machinery. Remove target_flags. Redefine TARGET_MFCRF and TARGET_POWERPC64. Remove TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS, SUBTARGET_OPTIONS, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_altivec_vrsave_string, rs6000_altivec_vrsave, rs6000_longcall_switch, rs6000_default_long_calls, rs6000_sched_costly_dep_str, rs6000_sched_costly_dep, rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch, and TARGET_ALTIVEC_VRSAVE. From-SVN: r99284
2005-05-05 22:54:25 +02:00
extra_options="${extra_options} rs6000/sysv4.opt"
tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-rtems t-rtems rs6000/t-ppccomm"
;;
powerpc-*-linux* | powerpc64-*-linux*)
tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h"
config.gcc: Add .opt magic for the rs6000 ports. 2005-05-05 Aldy Hernandez <aldyh@redhat.com> * config.gcc: Add .opt magic for the rs6000 ports. * doc/invoke.texi: Document -mabi= option properly. Document -misel and -mno-sel. Document -mspe and -mno-spe. Document -mvrsave and -mno-vrsave. Document deprecation of -mspe= and -misel=. * config/rs6000/aix.h: Remove XL_COMPAT stuff. Remove SUBTARGET_SWITCHES and SUBSUBTARGET_SWITCHES. Define TARGET_XL_COMPAT. * config/rs6000/aix.opt: New. * config/rs6000/aix41.opt: New. * config/rs6000/aix64.opt: New. * config/rs6000/darwin.opt: New. * config/rs6000/linux64.opt: New. * config/rs6000/rs6000.opt: New. * config/rs6000/sysv4.opt: New. * config/rs6000/sysv4.h: Delete definitions of MASK_* and associated TARGET_*. Remove SUBTARGET_OPTIONS, SUBTARGET_SWITCHES. Define TARGET_USES_SYSV4_OPT. * config/rs6000/aix41.h: Remove SUBSUBTARGET_SWITCHES. * config/rs6000/aix43.h: Remove SUBSUBTARGET_SWITCHES. Define TARGET_USES_AIX64_OPT. * config/rs6000/aix51.h: Same. * config/rs6000/aix52.h: Same. * config/rs6000/darwin.h: Remove SUBTARGET_SWITCHES. Use TARGET_ALTIVEC_VRSAVE instead of rs6000_altivec_vrsave. * config/rs6000/linux64.h: Use rs6000_explicit_options. Remove EXTRA_SUBTARGET_SWITCHES. * config/rs6000/rs6000.c: Remove definitions of rs6000_sched_restricted_insns_priority, rs6000_long_double_size_string, rs6000_altivec_vrsave, rs6000_altivec_vrsave_string, rs6000_isel, rs6000_spe, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_abi_string, rs6000_warn_altivec_long, rs6000_longcall, rs6000_alignment_string. Define rs6000_explicit_options. (rs6000_parse_abi_options): Remove. (rs6000_parse_alignment_option): Remove. (rs6000_parse_float_gprs_option): Remove. (rs6000_handle_option): New. Define TARGET_HANDLE_OPTION. Define TARGET_DEFAULT_TARGET_FLAGS. (rs6000_override_options): Revamp to use new .opt machinery. * config/rs6000/rs6000.h: Remove old MASK_* and TARGET_* in favor of new .opt machinery. Remove target_flags. Redefine TARGET_MFCRF and TARGET_POWERPC64. Remove TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS, SUBTARGET_OPTIONS, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_altivec_vrsave_string, rs6000_altivec_vrsave, rs6000_longcall_switch, rs6000_default_long_calls, rs6000_sched_costly_dep_str, rs6000_sched_costly_dep, rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch, and TARGET_ALTIVEC_VRSAVE. From-SVN: r99284
2005-05-05 22:54:25 +02:00
extra_options="${extra_options} rs6000/sysv4.opt"
tmake_file="t-dfprules rs6000/t-fprules rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm"
maybe_biarch=yes
case ${target} in
powerpc64-*-linux*spe* | powerpc64-*-linux*paired*)
echo "*** Configuration ${target} not supported" 1>&2
exit 1
;;
powerpc-*-linux*spe* | powerpc-*-linux*paired*)
maybe_biarch=
;;
powerpc64-*-linux*)
test x$with_cpu != x || cpu_is_64bit=yes
maybe_biarch=always
;;
esac
case ${maybe_biarch}:${enable_targets}:${cpu_is_64bit} in
always:* | yes:*powerpc64* | yes:all:* | yes:*:yes)
if test x$cpu_is_64bit = xyes; then
tm_file="${tm_file} rs6000/default64.h"
fi
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="rs6000/biarch64.h ${tm_file} rs6000/linux64.h glibc-stdint.h"
tmake_file="$tmake_file rs6000/t-linux64"
extra_options="${extra_options} rs6000/linux64.opt"
;;
*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} rs6000/linux.h glibc-stdint.h"
;;
esac
tmake_file="${tmake_file} rs6000/t-fprules-softfp soft-fp/t-softfp"
case ${target} in
powerpc*-*-linux*altivec*)
tm_file="${tm_file} rs6000/linuxaltivec.h" ;;
powerpc*-*-linux*spe*)
tm_file="${tm_file} rs6000/linuxspe.h rs6000/e500.h" ;;
powerpc*-*-linux*paired*)
tm_file="${tm_file} rs6000/750cl.h" ;;
esac
configure.ac: Add --enable-secureplt. * configure.ac: Add --enable-secureplt. (HAVE_AS_REL16): Test for R_PPC_REL16 relocs. * config.in: Regenerate. * configure: Regenerate. * config.gcc (powerpc64-*-linux*, powerpc-*-linux*): Add rs6000/secureplt.h to tm_file when enable_secureplt. * doc/invoke.texi (msecure-plt, mbss-plt): Document. * doc/install.texi: Document --enable-targets and --enable-secureplt. Correct xrefs to "Using the GNU Compiler Collection (GCC)". * config/rs6000/secureplt.h: New file. * config/rs6000/sysv4.h (TARGET_SECURE_PLT): Define. (SUBTARGET_OVERRIDE_OPTIONS): Error if -msecure-plt given without assembler support. (CC1_SECURE_PLT_DEFAULT_SPEC): Define. (CC1_SPEC): Delete duplicate mno-sdata. Invoke cc1_secure_plt_default. (SUBTARGET_EXTRA_SPECS): Add cc1_secure_plt_default. * config/rs6000/sysv4.opt (msecure-plt, bss-plt): Add options. * config/rs6000/rs6000.h (TARGET_SECURE_PLT): Define. * config/rs6000/rs6000.c (rs6000_emit_load_toc_table): Handle TARGET_SECURE_PLT got register load sequence. (rs6000_emit_prologue): Call rs6000_emit_load_toc_table when TARGET_SECURE_PLT. (rs6000_elf_declare_function_name): Don't emit toc address offset word when TARGET_SECURE_PLT. * config/rs6000/rs6000.md (elf_high, elf_low): Move past load_toc_*. (load_toc_v4_PIC_1) Enable for TARGET_SECURE_PLT. (load_toc_v4_PIC_3b, load_toc_v4_PIC_3c): New insns. (call, call_value): Mark pic_offset_table_rtx used for sysv pic and TARGET_SECURE_PLT. (call_nonlocal_sysv, call_value_nonlocal_sysv, sibcall_nonlocal_sysv, sibcall_value_nonlocal_sysv): Add 32768 offset when TARGET_SECURE_PLT and -fPIC. * config/rs6000/tramp.asm (trampoline_initial): Use "bcl 20,31". (__trampoline_setup): Likewise. Init r30 before plt call. From-SVN: r100415
2005-06-01 02:30:26 +02:00
if test x${enable_secureplt} = xyes; then
tm_file="rs6000/secureplt.h ${tm_file}"
fi
;;
powerpc64-*-gnu*)
tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h gnu.h rs6000/sysv4.h rs6000/default64.h rs6000/linux64.h rs6000/gnu.h glibc-stdint.h"
extra_options="${extra_options} rs6000/sysv4.opt rs6000/linux64.opt"
tmake_file="t-slibgcc-elf-ver t-gnu"
;;
powerpc-*-gnu-gnualtivec*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${cpu_type}/${cpu_type}.h elfos.h svr4.h freebsd-spec.h gnu.h rs6000/sysv4.h rs6000/linux.h rs6000/linuxaltivec.h rs6000/gnu.h glibc-stdint.h"
config.gcc: Add .opt magic for the rs6000 ports. 2005-05-05 Aldy Hernandez <aldyh@redhat.com> * config.gcc: Add .opt magic for the rs6000 ports. * doc/invoke.texi: Document -mabi= option properly. Document -misel and -mno-sel. Document -mspe and -mno-spe. Document -mvrsave and -mno-vrsave. Document deprecation of -mspe= and -misel=. * config/rs6000/aix.h: Remove XL_COMPAT stuff. Remove SUBTARGET_SWITCHES and SUBSUBTARGET_SWITCHES. Define TARGET_XL_COMPAT. * config/rs6000/aix.opt: New. * config/rs6000/aix41.opt: New. * config/rs6000/aix64.opt: New. * config/rs6000/darwin.opt: New. * config/rs6000/linux64.opt: New. * config/rs6000/rs6000.opt: New. * config/rs6000/sysv4.opt: New. * config/rs6000/sysv4.h: Delete definitions of MASK_* and associated TARGET_*. Remove SUBTARGET_OPTIONS, SUBTARGET_SWITCHES. Define TARGET_USES_SYSV4_OPT. * config/rs6000/aix41.h: Remove SUBSUBTARGET_SWITCHES. * config/rs6000/aix43.h: Remove SUBSUBTARGET_SWITCHES. Define TARGET_USES_AIX64_OPT. * config/rs6000/aix51.h: Same. * config/rs6000/aix52.h: Same. * config/rs6000/darwin.h: Remove SUBTARGET_SWITCHES. Use TARGET_ALTIVEC_VRSAVE instead of rs6000_altivec_vrsave. * config/rs6000/linux64.h: Use rs6000_explicit_options. Remove EXTRA_SUBTARGET_SWITCHES. * config/rs6000/rs6000.c: Remove definitions of rs6000_sched_restricted_insns_priority, rs6000_long_double_size_string, rs6000_altivec_vrsave, rs6000_altivec_vrsave_string, rs6000_isel, rs6000_spe, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_abi_string, rs6000_warn_altivec_long, rs6000_longcall, rs6000_alignment_string. Define rs6000_explicit_options. (rs6000_parse_abi_options): Remove. (rs6000_parse_alignment_option): Remove. (rs6000_parse_float_gprs_option): Remove. (rs6000_handle_option): New. Define TARGET_HANDLE_OPTION. Define TARGET_DEFAULT_TARGET_FLAGS. (rs6000_override_options): Revamp to use new .opt machinery. * config/rs6000/rs6000.h: Remove old MASK_* and TARGET_* in favor of new .opt machinery. Remove target_flags. Redefine TARGET_MFCRF and TARGET_POWERPC64. Remove TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS, SUBTARGET_OPTIONS, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_altivec_vrsave_string, rs6000_altivec_vrsave, rs6000_longcall_switch, rs6000_default_long_calls, rs6000_sched_costly_dep_str, rs6000_sched_costly_dep, rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch, and TARGET_ALTIVEC_VRSAVE. From-SVN: r99284
2005-05-05 22:54:25 +02:00
extra_options="${extra_options} rs6000/sysv4.opt"
tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppcos t-slibgcc-elf-ver t-gnu rs6000/t-ppccomm"
if test x$enable_threads = xyes; then
thread_file='posix'
fi
;;
powerpc-*-gnu*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${cpu_type}/${cpu_type}.h elfos.h svr4.h freebsd-spec.h gnu.h rs6000/sysv4.h rs6000/linux.h rs6000/gnu.h glibc-stdint.h"
tmake_file="rs6000/t-fprules rs6000/t-fprules-fpbit rs6000/t-ppcos t-slibgcc-elf-ver t-gnu rs6000/t-ppccomm"
config.gcc: Add .opt magic for the rs6000 ports. 2005-05-05 Aldy Hernandez <aldyh@redhat.com> * config.gcc: Add .opt magic for the rs6000 ports. * doc/invoke.texi: Document -mabi= option properly. Document -misel and -mno-sel. Document -mspe and -mno-spe. Document -mvrsave and -mno-vrsave. Document deprecation of -mspe= and -misel=. * config/rs6000/aix.h: Remove XL_COMPAT stuff. Remove SUBTARGET_SWITCHES and SUBSUBTARGET_SWITCHES. Define TARGET_XL_COMPAT. * config/rs6000/aix.opt: New. * config/rs6000/aix41.opt: New. * config/rs6000/aix64.opt: New. * config/rs6000/darwin.opt: New. * config/rs6000/linux64.opt: New. * config/rs6000/rs6000.opt: New. * config/rs6000/sysv4.opt: New. * config/rs6000/sysv4.h: Delete definitions of MASK_* and associated TARGET_*. Remove SUBTARGET_OPTIONS, SUBTARGET_SWITCHES. Define TARGET_USES_SYSV4_OPT. * config/rs6000/aix41.h: Remove SUBSUBTARGET_SWITCHES. * config/rs6000/aix43.h: Remove SUBSUBTARGET_SWITCHES. Define TARGET_USES_AIX64_OPT. * config/rs6000/aix51.h: Same. * config/rs6000/aix52.h: Same. * config/rs6000/darwin.h: Remove SUBTARGET_SWITCHES. Use TARGET_ALTIVEC_VRSAVE instead of rs6000_altivec_vrsave. * config/rs6000/linux64.h: Use rs6000_explicit_options. Remove EXTRA_SUBTARGET_SWITCHES. * config/rs6000/rs6000.c: Remove definitions of rs6000_sched_restricted_insns_priority, rs6000_long_double_size_string, rs6000_altivec_vrsave, rs6000_altivec_vrsave_string, rs6000_isel, rs6000_spe, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_abi_string, rs6000_warn_altivec_long, rs6000_longcall, rs6000_alignment_string. Define rs6000_explicit_options. (rs6000_parse_abi_options): Remove. (rs6000_parse_alignment_option): Remove. (rs6000_parse_float_gprs_option): Remove. (rs6000_handle_option): New. Define TARGET_HANDLE_OPTION. Define TARGET_DEFAULT_TARGET_FLAGS. (rs6000_override_options): Revamp to use new .opt machinery. * config/rs6000/rs6000.h: Remove old MASK_* and TARGET_* in favor of new .opt machinery. Remove target_flags. Redefine TARGET_MFCRF and TARGET_POWERPC64. Remove TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS, SUBTARGET_OPTIONS, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_altivec_vrsave_string, rs6000_altivec_vrsave, rs6000_longcall_switch, rs6000_default_long_calls, rs6000_sched_costly_dep_str, rs6000_sched_costly_dep, rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch, and TARGET_ALTIVEC_VRSAVE. From-SVN: r99284
2005-05-05 22:54:25 +02:00
extra_options="${extra_options} rs6000/sysv4.opt"
if test x$enable_threads = xyes; then
thread_file='posix'
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"
config.gcc: Add .opt magic for the rs6000 ports. 2005-05-05 Aldy Hernandez <aldyh@redhat.com> * config.gcc: Add .opt magic for the rs6000 ports. * doc/invoke.texi: Document -mabi= option properly. Document -misel and -mno-sel. Document -mspe and -mno-spe. Document -mvrsave and -mno-vrsave. Document deprecation of -mspe= and -misel=. * config/rs6000/aix.h: Remove XL_COMPAT stuff. Remove SUBTARGET_SWITCHES and SUBSUBTARGET_SWITCHES. Define TARGET_XL_COMPAT. * config/rs6000/aix.opt: New. * config/rs6000/aix41.opt: New. * config/rs6000/aix64.opt: New. * config/rs6000/darwin.opt: New. * config/rs6000/linux64.opt: New. * config/rs6000/rs6000.opt: New. * config/rs6000/sysv4.opt: New. * config/rs6000/sysv4.h: Delete definitions of MASK_* and associated TARGET_*. Remove SUBTARGET_OPTIONS, SUBTARGET_SWITCHES. Define TARGET_USES_SYSV4_OPT. * config/rs6000/aix41.h: Remove SUBSUBTARGET_SWITCHES. * config/rs6000/aix43.h: Remove SUBSUBTARGET_SWITCHES. Define TARGET_USES_AIX64_OPT. * config/rs6000/aix51.h: Same. * config/rs6000/aix52.h: Same. * config/rs6000/darwin.h: Remove SUBTARGET_SWITCHES. Use TARGET_ALTIVEC_VRSAVE instead of rs6000_altivec_vrsave. * config/rs6000/linux64.h: Use rs6000_explicit_options. Remove EXTRA_SUBTARGET_SWITCHES. * config/rs6000/rs6000.c: Remove definitions of rs6000_sched_restricted_insns_priority, rs6000_long_double_size_string, rs6000_altivec_vrsave, rs6000_altivec_vrsave_string, rs6000_isel, rs6000_spe, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_abi_string, rs6000_warn_altivec_long, rs6000_longcall, rs6000_alignment_string. Define rs6000_explicit_options. (rs6000_parse_abi_options): Remove. (rs6000_parse_alignment_option): Remove. (rs6000_parse_float_gprs_option): Remove. (rs6000_handle_option): New. Define TARGET_HANDLE_OPTION. Define TARGET_DEFAULT_TARGET_FLAGS. (rs6000_override_options): Revamp to use new .opt machinery. * config/rs6000/rs6000.h: Remove old MASK_* and TARGET_* in favor of new .opt machinery. Remove target_flags. Redefine TARGET_MFCRF and TARGET_POWERPC64. Remove TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS, SUBTARGET_OPTIONS, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_altivec_vrsave_string, rs6000_altivec_vrsave, rs6000_longcall_switch, rs6000_default_long_calls, rs6000_sched_costly_dep_str, rs6000_sched_costly_dep, rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch, and TARGET_ALTIVEC_VRSAVE. From-SVN: r99284
2005-05-05 22:54:25 +02:00
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
;;
powerpc-*-lynxos*)
xm_defines=POSIX
tm_file="${tm_file} dbxelf.h elfos.h rs6000/sysv4.h rs6000/lynx.h lynx.h"
tmake_file="t-lynx rs6000/t-lynx"
config.gcc: Add .opt magic for the rs6000 ports. 2005-05-05 Aldy Hernandez <aldyh@redhat.com> * config.gcc: Add .opt magic for the rs6000 ports. * doc/invoke.texi: Document -mabi= option properly. Document -misel and -mno-sel. Document -mspe and -mno-spe. Document -mvrsave and -mno-vrsave. Document deprecation of -mspe= and -misel=. * config/rs6000/aix.h: Remove XL_COMPAT stuff. Remove SUBTARGET_SWITCHES and SUBSUBTARGET_SWITCHES. Define TARGET_XL_COMPAT. * config/rs6000/aix.opt: New. * config/rs6000/aix41.opt: New. * config/rs6000/aix64.opt: New. * config/rs6000/darwin.opt: New. * config/rs6000/linux64.opt: New. * config/rs6000/rs6000.opt: New. * config/rs6000/sysv4.opt: New. * config/rs6000/sysv4.h: Delete definitions of MASK_* and associated TARGET_*. Remove SUBTARGET_OPTIONS, SUBTARGET_SWITCHES. Define TARGET_USES_SYSV4_OPT. * config/rs6000/aix41.h: Remove SUBSUBTARGET_SWITCHES. * config/rs6000/aix43.h: Remove SUBSUBTARGET_SWITCHES. Define TARGET_USES_AIX64_OPT. * config/rs6000/aix51.h: Same. * config/rs6000/aix52.h: Same. * config/rs6000/darwin.h: Remove SUBTARGET_SWITCHES. Use TARGET_ALTIVEC_VRSAVE instead of rs6000_altivec_vrsave. * config/rs6000/linux64.h: Use rs6000_explicit_options. Remove EXTRA_SUBTARGET_SWITCHES. * config/rs6000/rs6000.c: Remove definitions of rs6000_sched_restricted_insns_priority, rs6000_long_double_size_string, rs6000_altivec_vrsave, rs6000_altivec_vrsave_string, rs6000_isel, rs6000_spe, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_abi_string, rs6000_warn_altivec_long, rs6000_longcall, rs6000_alignment_string. Define rs6000_explicit_options. (rs6000_parse_abi_options): Remove. (rs6000_parse_alignment_option): Remove. (rs6000_parse_float_gprs_option): Remove. (rs6000_handle_option): New. Define TARGET_HANDLE_OPTION. Define TARGET_DEFAULT_TARGET_FLAGS. (rs6000_override_options): Revamp to use new .opt machinery. * config/rs6000/rs6000.h: Remove old MASK_* and TARGET_* in favor of new .opt machinery. Remove target_flags. Redefine TARGET_MFCRF and TARGET_POWERPC64. Remove TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS, SUBTARGET_OPTIONS, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_altivec_vrsave_string, rs6000_altivec_vrsave, rs6000_longcall_switch, rs6000_default_long_calls, rs6000_sched_costly_dep_str, rs6000_sched_costly_dep, rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch, and TARGET_ALTIVEC_VRSAVE. From-SVN: r99284
2005-05-05 22:54:25 +02:00
extra_options="${extra_options} rs6000/sysv4.opt lynx.opt"
extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
config.gcc (*-*-darwin*): Add darwin.opt to $extra_options. * config.gcc (*-*-darwin*): Add darwin.opt to $extra_options. (i[34567]86-pc-msdosdjgpp*): Likewise i386/djgpp.opt. (i[34567]86-*-lynxos*, powerpc-*-lynxos*): Likewise lynx.opt. (i[34567]86-*-sco3.2v5*): Likewise i386/sco5.opt. (i[34567]86-*-pe, i[34567]86-*-cygwin*, i[34567]86-*-mingw32*) (i[34567]86-*-uwin*): Likewise i386/cygming.opt. * config/darwin.h (darwin_one_byte_bool, darwin_fix_and_continue) (darwin_fix_and_continue_switch, SUBTARGET_OPTIONS): Delete. * config/darwin.c (darwin_one_byte_bool, darwin_fix_and_continue) (darwin_fix_and_continue_switch): Delete. * config/lynx.h (SUBTARGET_OS_LYNX_SWITCHES): Delete. (SUBTARGET_SWITCHES): Delete. * config/i386/i386.h (target_flags, MASK_80387, MASK_RTD) (MASK_ALIGN_DOUBLE, MASK_SVR3_SHLIB, MASK_IEEE_FP, MASK_FLOAT_RETURNS) (MASK_NO_FANCY_MATH_387, MASK_OMIT_LEAF_FRAME_POINTER) (MASK_STACK_PROBE, MASK_NO_ALIGN_STROPS, MASK_INLINE_ALL_STROPS) (MASK_NO_PUSH_ARGS, MASK_ACCUMULATE_OUTGOING_ARGS, MASK_MMX) (MASK_SSE, MASK_SSE2, MASK_SSE3, MASK_3DNOW, MASK_3DNOW_A) (MASK_128BIT_LONG_DOUBLE, MASK_64BIT, MASK_MS_BITFIELD_LAYOUT) (MASK_TLS_DIRECT_SEG_REFS, MASK_NO_RED_ZONE, TARGET_80387) (TARGET_RTD, TARGET_ALIGN_DOUBLE, TARGET_PUSH_ARGS) (TARGET_ACCUMULATE_OUTGOING_ARGS, TARGET_SVR3_SHLIB, TARGET_IEEE_FP) (TARGET_128BIT_LONG_DOUBLE, TARGET_NO_FANCY_MATH_387) (TARGET_USE_FANCY_MATH_387, TARGET_OMIT_LEAF_FRAME_POINTER) (TARGET_DEBUG_ADDR, TARGET_DEBUG_ARG): Delete. (TARGET_FLOAT_RETURNS_IN_80387): Make an alias of TARGET_FLOAT_RETURNS. (TARGET_64BIT): Undef before redefining. (TARGET_TLS_DIRECT_SEG_REFS, TARGET_STACK_PROBE) (TARGET_ALIGN_STRINGOPS, TARGET_INLINE_ALL_STRINGOPS, TARGET_SSE) (TARGET_SSE2, TARGET_SSE3, TARGET_MMX, TARGET_3DNOW, TARGET_3DNOW_A) (TARGET_RED_ZONE, TARGET_USE_MS_BITFIELD_LAYOUT, TARGET_SWITCHES) (TARGET_OPTIONS, SUBTARGET_SWITCHES, SUBTARGET_OPTIONS) (ix86_fpmath_string, ix86_tls_dialect_string, ix86_cmodel_string) (ix86_asm_string, ix86_regparm, ix86_regparm_string) (ix86_preferred_stack_boundary_string, ix86_branch_cost_string) (ix86_debug_arg_string, ix86_debug_addr_string) (ix86_align_loops_string, ix86_align_jumps_string) (ix86_align_funcs_string): Delete. * config/i386/cygming.h (MASK_NOP_FUN_DLLIMPORT) (TARGET_NOP_FUN_DLLIMPORT, SUBTARGET_SWITCHES): Delete. * config/i386/djgpp.h (MASK_BNU210, SUBTARGET_SWITCHES): Delete. (SUBTARGET_OVERRIDE_OPTIONS): Check TARGET_BNU210. * config/i386/lynx.h (SUBTARGET_SWITCHES): Delete. * config/i386/sco5.h (MASK_COFF, TARGET_ELF) (SUBTARGET_SWITCHES): Delete. * config/i386/i386.c (ix86_debug_arg_string): Delete. (ix86_debug_addr_string): Delete. (ix86_cmodel_string, ix86_asm_string, ix86_tls_dialect_string) (ix86_fpmath_string, ix86_regparm_string, ix86_regparm) (ix86_align_loops_string, ix86_align_jumps_string) (ix86_preferred_stack_boundary_string, ix86_branch_cost_string) (ix86_align_funcs_string): Make static. (TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Override defaults. (ix86_handle_option): New function. (TARGET_USE_MS_BITFIELD_LAYOUT): Delete. (ix86_ms_bitfield_layout_p): Check TARGET_MS_BITFIELD_LAYOUT. * config/rs6000/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): Remove handling of darwin_fix_and_continue_switch. (darwin_one_byte_bool): Delete. * config/rs6000/lynx.h (EXTRA_SUBTARGET_SWITCHES): Delete. * config/rs6000/rs6000.c (rs6000_override_options): Update assignment to darwin_one_byte_bool. * config/darwin.opt, config/lynx.opt, config/i386/cygming.opt, * config/i386/djgpp.opt, config/i386/i386.opt, * config/i386/sco5.opt: New files. From-SVN: r98495
2005-04-21 09:35:09 +02:00
extra_options="${extra_options} lynx.opt"
thread_file=lynx
gnu_ld=yes
gas=yes
;;
powerpcle-*-elf*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h usegas.h svr4.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"
config.gcc: Add .opt magic for the rs6000 ports. 2005-05-05 Aldy Hernandez <aldyh@redhat.com> * config.gcc: Add .opt magic for the rs6000 ports. * doc/invoke.texi: Document -mabi= option properly. Document -misel and -mno-sel. Document -mspe and -mno-spe. Document -mvrsave and -mno-vrsave. Document deprecation of -mspe= and -misel=. * config/rs6000/aix.h: Remove XL_COMPAT stuff. Remove SUBTARGET_SWITCHES and SUBSUBTARGET_SWITCHES. Define TARGET_XL_COMPAT. * config/rs6000/aix.opt: New. * config/rs6000/aix41.opt: New. * config/rs6000/aix64.opt: New. * config/rs6000/darwin.opt: New. * config/rs6000/linux64.opt: New. * config/rs6000/rs6000.opt: New. * config/rs6000/sysv4.opt: New. * config/rs6000/sysv4.h: Delete definitions of MASK_* and associated TARGET_*. Remove SUBTARGET_OPTIONS, SUBTARGET_SWITCHES. Define TARGET_USES_SYSV4_OPT. * config/rs6000/aix41.h: Remove SUBSUBTARGET_SWITCHES. * config/rs6000/aix43.h: Remove SUBSUBTARGET_SWITCHES. Define TARGET_USES_AIX64_OPT. * config/rs6000/aix51.h: Same. * config/rs6000/aix52.h: Same. * config/rs6000/darwin.h: Remove SUBTARGET_SWITCHES. Use TARGET_ALTIVEC_VRSAVE instead of rs6000_altivec_vrsave. * config/rs6000/linux64.h: Use rs6000_explicit_options. Remove EXTRA_SUBTARGET_SWITCHES. * config/rs6000/rs6000.c: Remove definitions of rs6000_sched_restricted_insns_priority, rs6000_long_double_size_string, rs6000_altivec_vrsave, rs6000_altivec_vrsave_string, rs6000_isel, rs6000_spe, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_abi_string, rs6000_warn_altivec_long, rs6000_longcall, rs6000_alignment_string. Define rs6000_explicit_options. (rs6000_parse_abi_options): Remove. (rs6000_parse_alignment_option): Remove. (rs6000_parse_float_gprs_option): Remove. (rs6000_handle_option): New. Define TARGET_HANDLE_OPTION. Define TARGET_DEFAULT_TARGET_FLAGS. (rs6000_override_options): Revamp to use new .opt machinery. * config/rs6000/rs6000.h: Remove old MASK_* and TARGET_* in favor of new .opt machinery. Remove target_flags. Redefine TARGET_MFCRF and TARGET_POWERPC64. Remove TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS, SUBTARGET_OPTIONS, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_altivec_vrsave_string, rs6000_altivec_vrsave, rs6000_longcall_switch, rs6000_default_long_calls, rs6000_sched_costly_dep_str, rs6000_sched_costly_dep, rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch, and TARGET_ALTIVEC_VRSAVE. From-SVN: r99284
2005-05-05 22:54:25 +02:00
extra_options="${extra_options} rs6000/sysv4.opt"
;;
powerpcle-*-eabisim*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h usegas.h svr4.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"
config.gcc: Add .opt magic for the rs6000 ports. 2005-05-05 Aldy Hernandez <aldyh@redhat.com> * config.gcc: Add .opt magic for the rs6000 ports. * doc/invoke.texi: Document -mabi= option properly. Document -misel and -mno-sel. Document -mspe and -mno-spe. Document -mvrsave and -mno-vrsave. Document deprecation of -mspe= and -misel=. * config/rs6000/aix.h: Remove XL_COMPAT stuff. Remove SUBTARGET_SWITCHES and SUBSUBTARGET_SWITCHES. Define TARGET_XL_COMPAT. * config/rs6000/aix.opt: New. * config/rs6000/aix41.opt: New. * config/rs6000/aix64.opt: New. * config/rs6000/darwin.opt: New. * config/rs6000/linux64.opt: New. * config/rs6000/rs6000.opt: New. * config/rs6000/sysv4.opt: New. * config/rs6000/sysv4.h: Delete definitions of MASK_* and associated TARGET_*. Remove SUBTARGET_OPTIONS, SUBTARGET_SWITCHES. Define TARGET_USES_SYSV4_OPT. * config/rs6000/aix41.h: Remove SUBSUBTARGET_SWITCHES. * config/rs6000/aix43.h: Remove SUBSUBTARGET_SWITCHES. Define TARGET_USES_AIX64_OPT. * config/rs6000/aix51.h: Same. * config/rs6000/aix52.h: Same. * config/rs6000/darwin.h: Remove SUBTARGET_SWITCHES. Use TARGET_ALTIVEC_VRSAVE instead of rs6000_altivec_vrsave. * config/rs6000/linux64.h: Use rs6000_explicit_options. Remove EXTRA_SUBTARGET_SWITCHES. * config/rs6000/rs6000.c: Remove definitions of rs6000_sched_restricted_insns_priority, rs6000_long_double_size_string, rs6000_altivec_vrsave, rs6000_altivec_vrsave_string, rs6000_isel, rs6000_spe, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_abi_string, rs6000_warn_altivec_long, rs6000_longcall, rs6000_alignment_string. Define rs6000_explicit_options. (rs6000_parse_abi_options): Remove. (rs6000_parse_alignment_option): Remove. (rs6000_parse_float_gprs_option): Remove. (rs6000_handle_option): New. Define TARGET_HANDLE_OPTION. Define TARGET_DEFAULT_TARGET_FLAGS. (rs6000_override_options): Revamp to use new .opt machinery. * config/rs6000/rs6000.h: Remove old MASK_* and TARGET_* in favor of new .opt machinery. Remove target_flags. Redefine TARGET_MFCRF and TARGET_POWERPC64. Remove TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS, SUBTARGET_OPTIONS, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_altivec_vrsave_string, rs6000_altivec_vrsave, rs6000_longcall_switch, rs6000_default_long_calls, rs6000_sched_costly_dep_str, rs6000_sched_costly_dep, rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch, and TARGET_ALTIVEC_VRSAVE. From-SVN: r99284
2005-05-05 22:54:25 +02:00
extra_options="${extra_options} rs6000/sysv4.opt"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
;;
powerpcle-*-eabi*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h usegas.h svr4.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"
config.gcc: Add .opt magic for the rs6000 ports. 2005-05-05 Aldy Hernandez <aldyh@redhat.com> * config.gcc: Add .opt magic for the rs6000 ports. * doc/invoke.texi: Document -mabi= option properly. Document -misel and -mno-sel. Document -mspe and -mno-spe. Document -mvrsave and -mno-vrsave. Document deprecation of -mspe= and -misel=. * config/rs6000/aix.h: Remove XL_COMPAT stuff. Remove SUBTARGET_SWITCHES and SUBSUBTARGET_SWITCHES. Define TARGET_XL_COMPAT. * config/rs6000/aix.opt: New. * config/rs6000/aix41.opt: New. * config/rs6000/aix64.opt: New. * config/rs6000/darwin.opt: New. * config/rs6000/linux64.opt: New. * config/rs6000/rs6000.opt: New. * config/rs6000/sysv4.opt: New. * config/rs6000/sysv4.h: Delete definitions of MASK_* and associated TARGET_*. Remove SUBTARGET_OPTIONS, SUBTARGET_SWITCHES. Define TARGET_USES_SYSV4_OPT. * config/rs6000/aix41.h: Remove SUBSUBTARGET_SWITCHES. * config/rs6000/aix43.h: Remove SUBSUBTARGET_SWITCHES. Define TARGET_USES_AIX64_OPT. * config/rs6000/aix51.h: Same. * config/rs6000/aix52.h: Same. * config/rs6000/darwin.h: Remove SUBTARGET_SWITCHES. Use TARGET_ALTIVEC_VRSAVE instead of rs6000_altivec_vrsave. * config/rs6000/linux64.h: Use rs6000_explicit_options. Remove EXTRA_SUBTARGET_SWITCHES. * config/rs6000/rs6000.c: Remove definitions of rs6000_sched_restricted_insns_priority, rs6000_long_double_size_string, rs6000_altivec_vrsave, rs6000_altivec_vrsave_string, rs6000_isel, rs6000_spe, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_abi_string, rs6000_warn_altivec_long, rs6000_longcall, rs6000_alignment_string. Define rs6000_explicit_options. (rs6000_parse_abi_options): Remove. (rs6000_parse_alignment_option): Remove. (rs6000_parse_float_gprs_option): Remove. (rs6000_handle_option): New. Define TARGET_HANDLE_OPTION. Define TARGET_DEFAULT_TARGET_FLAGS. (rs6000_override_options): Revamp to use new .opt machinery. * config/rs6000/rs6000.h: Remove old MASK_* and TARGET_* in favor of new .opt machinery. Remove target_flags. Redefine TARGET_MFCRF and TARGET_POWERPC64. Remove TARGET_SWITCHES, SUBTARGET_SWITCHES, TARGET_OPTIONS, SUBTARGET_OPTIONS, rs6000_float_gprs_string, rs6000_isel_string, rs6000_spe_string, rs6000_altivec_vrsave_string, rs6000_altivec_vrsave, rs6000_longcall_switch, rs6000_default_long_calls, rs6000_sched_costly_dep_str, rs6000_sched_costly_dep, rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch, and TARGET_ALTIVEC_VRSAVE. From-SVN: r99284
2005-05-05 22:54:25 +02:00
extra_options="${extra_options} rs6000/sysv4.opt"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
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
extra_options="${extra_options} rs6000/aix64.opt"
use_collect2=yes
thread_file='aix'
use_gcc_stdint=provide
extra_headers=
;;
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
use_collect2=yes
thread_file='aix'
use_gcc_stdint=wrap
extra_headers=
;;
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
extra_options="${extra_options} rs6000/aix64.opt"
use_collect2=yes
thread_file='aix'
use_gcc_stdint=wrap
extra_headers=
;;
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
extra_options="${extra_options} rs6000/aix64.opt"
use_collect2=yes
thread_file='aix'
use_gcc_stdint=wrap
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 rs6000/aix-stdint.h"
tmake_file=rs6000/t-aix52
extra_options="${extra_options} rs6000/aix64.opt"
use_collect2=yes
thread_file='aix'
use_gcc_stdint=wrap
extra_headers=altivec.h
;;
mips.md: Add unspec #2. 2001-09-15 Eric Christopher <echristo@redhat.com> * config/mips/mips.md: Add unspec #2. (reload_indi): Use. (reload_outdi): Ditto. (reload_outsi): Ditto. (HILO_delay): New. 2001-09-15 Eric Christopher <echristo@redhat.com> Jason Eckhardt <jle@redhat.com> * config.gcc: Add mipsisa32 target and mipsisa32-linux target. * config/mips/isa32-linux.h: New file. * config/mips/isa3264.h: Ditto. * config/mips/mips-protos.h: Add mips_hard_regno_nregs. * config/mips/mips.c (mips_hard_regno_nregs): Move here from mips.h. (output_block_mode): Support MEABI. (function_arg): Ditto. Fix floating point arg passing. (mips_va_start): Ditto. (override_options): Add isas 32 and 64, meabi, mips32 and mips64 processors. (mips_asm_file_start): Add new section to pass abi to gdb. (function_arg_pass_by_reference): Support MEABI. (mips_parse_cpu): Support mips32 and mips64 processors. * config/mips/mips.h: Support ABI_MEABI, TARGET_MIPS4KC, TARGET_MIPS5KC. Support isa32 and isa64. (processor_type): Add r4kc, r5kc, r20kc. (GENERATE_MULT3_SI): New. (GENERATE_MULT3_DI): Ditto. (GENERATE_MULT3): Remove. (ISA_HAS_64BIT_REGS): Add isa == 64. (ISA_HAS_8CC): Add mips_isa = 32 and 64. (ISA_HAS_MADD_MSUB): New. (ISA_HAS_CLZ_CLO): Ditto. (ISA_HAS_DCLZ_DCLO): Ditto. (ABI_GAS_ASM_SPEC): New. (GAS_ASM_SPEC): Use. Add support for mips32, mips64. (ASM_SPEC): Ditto. (LINK_SPEC): Ditto. (SUBTARGET_CC1_SPEC): Ditto. (SUBTARGET_CPP_SIZE_SPEC): Ditto. (PAD_VARARGS_DOWN): Support MEABI. (HARD_REGNO_NREGS): Move to mips.c. (ASM_OUTPUT_IDENT): Add #undef. * config/mips/mips.md: Add r4kc, r5kc, r20kc. (mulsi3): Use GENERATE_MULT3_SI. (mulsi3_mult3): Ditto. Support mips32, mips64. (mul_acc_si): Use ISA_HAS_MADD_MSUB. (mul_sub_si): New pattern. (unnamed splitters): New. (muldi3): Use GENERATE_MULT3_DI. (muldi3_internal2): Ditto. (movdicc): Support mips32. * config/mips/t-isa3264: New file. From-SVN: r45623
2001-09-15 04:03:14 +02:00
s390-*-linux*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="s390/s390.h dbxelf.h elfos.h svr4.h linux.h glibc-stdint.h s390/linux.h"
tmake_file="${tmake_file} t-dfprules s390/t-crtstuff s390/t-linux"
;;
mips.md: Add unspec #2. 2001-09-15 Eric Christopher <echristo@redhat.com> * config/mips/mips.md: Add unspec #2. (reload_indi): Use. (reload_outdi): Ditto. (reload_outsi): Ditto. (HILO_delay): New. 2001-09-15 Eric Christopher <echristo@redhat.com> Jason Eckhardt <jle@redhat.com> * config.gcc: Add mipsisa32 target and mipsisa32-linux target. * config/mips/isa32-linux.h: New file. * config/mips/isa3264.h: Ditto. * config/mips/mips-protos.h: Add mips_hard_regno_nregs. * config/mips/mips.c (mips_hard_regno_nregs): Move here from mips.h. (output_block_mode): Support MEABI. (function_arg): Ditto. Fix floating point arg passing. (mips_va_start): Ditto. (override_options): Add isas 32 and 64, meabi, mips32 and mips64 processors. (mips_asm_file_start): Add new section to pass abi to gdb. (function_arg_pass_by_reference): Support MEABI. (mips_parse_cpu): Support mips32 and mips64 processors. * config/mips/mips.h: Support ABI_MEABI, TARGET_MIPS4KC, TARGET_MIPS5KC. Support isa32 and isa64. (processor_type): Add r4kc, r5kc, r20kc. (GENERATE_MULT3_SI): New. (GENERATE_MULT3_DI): Ditto. (GENERATE_MULT3): Remove. (ISA_HAS_64BIT_REGS): Add isa == 64. (ISA_HAS_8CC): Add mips_isa = 32 and 64. (ISA_HAS_MADD_MSUB): New. (ISA_HAS_CLZ_CLO): Ditto. (ISA_HAS_DCLZ_DCLO): Ditto. (ABI_GAS_ASM_SPEC): New. (GAS_ASM_SPEC): Use. Add support for mips32, mips64. (ASM_SPEC): Ditto. (LINK_SPEC): Ditto. (SUBTARGET_CC1_SPEC): Ditto. (SUBTARGET_CPP_SIZE_SPEC): Ditto. (PAD_VARARGS_DOWN): Support MEABI. (HARD_REGNO_NREGS): Move to mips.c. (ASM_OUTPUT_IDENT): Add #undef. * config/mips/mips.md: Add r4kc, r5kc, r20kc. (mulsi3): Use GENERATE_MULT3_SI. (mulsi3_mult3): Ditto. Support mips32, mips64. (mul_acc_si): Use ISA_HAS_MADD_MSUB. (mul_sub_si): New pattern. (unnamed splitters): New. (muldi3): Use GENERATE_MULT3_DI. (muldi3_internal2): Ditto. (movdicc): Support mips32. * config/mips/t-isa3264: New file. From-SVN: r45623
2001-09-15 04:03:14 +02:00
s390x-*-linux*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="s390/s390x.h s390/s390.h dbxelf.h elfos.h svr4.h linux.h glibc-stdint.h s390/linux.h"
tm_p_file=s390/s390-protos.h
md_file=s390/s390.md
extra_modes=s390/s390-modes.def
out_file=s390/s390.c
tmake_file="${tmake_file} t-dfprules s390/t-crtstuff s390/t-linux s390/t-linux64"
;;
s390x-ibm-tpf*)
tm_file="s390/s390x.h s390/s390.h dbxelf.h elfos.h svr4.h s390/tpf.h"
tm_p_file=s390/s390-protos.h
md_file=s390/s390.md
extra_modes=s390/s390-modes.def
out_file=s390/s390.c
extra_parts="crtbeginS.o crtendS.o"
tmake_file="s390/t-crtstuff s390/t-tpf"
thread_file='tpf'
extra_options="${extra_options} s390/tpf.opt"
;;
score-*-elf)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h score/elf.h score/score.h newlib-stdint.h"
tmake_file=score/t-score-elf
extra_objs="score7.o score3.o"
;;
MAINTAINERS (mt port): Remove. * MAINTAINERS (mt port): Remove. (sco5, unixware, sco udk): Remove. (Kean Johnston): Add to Write After Approval. fixincludes: * inclhack.def (AAB_svr4_replace_byteorder, AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory, libc1_G_va_list, libc1_ifdefd_memx, nested_motorola, ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime, solaris_mutex_init_1, solaris_socket, solaris_unistd, solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param, ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale, ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc, ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings, ultrix_strings2, ultrix_sys_time, ultrix_unistd, unicosmk_restrict, uw7_byteorder_fix, windiss_math1, windiss_math2, windiss_valist): Remove. * fixincl.x: Regenerate. * mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*, i370-*-openedition, i?86-*-moss*, i?86-*-uwin*, powerpc-*-eabiaix*): Remove. * tests/base/math.h: Update. * tests/base/pthread.h: Update. * tests/base/stdio.h: Update. * tests/base/stdlib.h: Update. * tests/base/string.h: Update. * tests/base/strings.h: Update. * tests/base/sys/file.h: Update. * tests/base/sys/limits.h: Update. * tests/base/sys/socket.h: Update. * tests/base/sys/stat.h: Update. * tests/base/sys/time.h: Update. * tests/base/testing.h: Update. * tests/base/unistd.h: Update. * tests/base/_G_config.h: Remove. * tests/base/arpa: Remove directory. * tests/base/fs: Remove directory. * tests/base/locale.h: Remove. * tests/base/machine: Remove directory. * tests/base/rpc/svc.h: Remove. * tests/base/sys/ioctl.h: Remove. * tests/base/sys/regset.h: Remove. * tests/base/sys/times.h: Remove. * tests/base/sys/utsname.h: Remove. * tests/base/widec.h: Remove. gcc: * config.gcc (Obsolete configurations): Remove list of configurations. (Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*, *-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*. Remove other targets matched by those patterns. (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff, i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove. Make code for Solaris 7 and greater unconditional for Solaris. (ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*): Remove --with-* handling. * config/rs6000/sysv4.h (-mwindiss): Remove from all specs. (LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC, ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC, LINK_OS_WINDISS_SPEC): Remove. * config/rs6000/sysv4.opt (mwindiss): Remove. * configure.ac (strongarm*-*-*, xscale*-*-*): Remove. * configure: Regenerate. * doc/cpp.texi: Don't mention BeOS. * doc/extend.texi (interrupt): Don't mention MS1. * doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv, m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv, alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout, i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4, powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix): Remove. * doc/invoke.texi (MT Options): Remove. (-mwindiss): Remove. (CRIS Options): Remove cris-axis-aout references. (HPPA Options): Don't mention hppa1.1-*-pro. * doc/md.texi: (MorphoTech family): Remove. * libgcc2.c: Don't handle UWIN. * config/alpha/t-unicosmk: Remove. * config/alpha/unicosmk.h: Remove. * config/arm/kaos-arm.h: Remove. * config/arm/kaos-strongarm.h: Remove. * config/arm/strongarm-coff.h: Remove. * config/arm/strongarm-elf.h: Remove. * config/arm/strongarm-pe.h: Remove. * config/arm/t-strongarm-pe: Remove. * config/arm/t-xscale-coff: Remove. * config/arm/t-xscale-elf: Remove. * config/arm/xscale-coff.h: Remove. * config/arm/xscale-elf.h: Remove. * config/chorus.h: Remove. * config/cris/aout.h: Remove. * config/cris/aout.opt: Remove. * config/cris/t-aout: Remove. * config/i386/beos-elf.h: Remove. * config/i386/kaos-i386.h: Remove. * config/i386/ptx4-i.h: Remove. * config/i386/sco5.h: Remove. * config/i386/sco5.opt: Remove. * config/i386/sysv4-cpp.h: Remove. * config/i386/sysv5.h: Remove. * config/i386/t-beos: Remove. * config/i386/t-sco5: Remove. * config/i386/t-uwin: Remove. * config/i386/uwin.asm: Remove. * config/i386/uwin.h: Remove. * config/kaos.h: Remove. * config/mips/windiss.h: Remove. * config/mt: Remove directory. * config/pa/pa-osf.h: Remove. * config/pa/pa-pro-end.h: Remove. * config/pa/t-pro: Remove. * config/ptx4.h: Remove. * config/rs6000/beos.h: Remove. * config/rs6000/kaos-ppc.h: Remove. * config/rs6000/t-beos: Remove. * config/rs6000/windiss.h: Remove. * config/sh/kaos-sh.h: Remove. * config/sol2-6.h: Remove. * config/sparc/sol26-sld.h: Remove. * config/sparc/sysv4-only.h: Remove. * config/vax/bsd.h: Remove. * config/vax/t-memfuncs: Remove. * config/vax/ultrix.h: Remove. * config/vax/vaxv.h: Remove. * config/windiss.h: Remove. gcc/testsuite: * g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*. * g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*. * g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris 7. * gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*, strongarm*-*-* and cris-*-aout*. * gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20030909-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20031108-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20040813-1.c: Don't handle *-*-sysv5*. * gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*. * gcc.dg/arm-scd42-1.c: Use target arm*-*-*. * gcc.dg/arm-scd42-3.c: Use target arm*-*-*. * gcc.dg/cpp/assert4.c: Don't handle BeOS. * gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*. * gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and xscale*-*-elf*. * gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*. * gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1. * gcc.misc-tests/arm-isr.exp: Use target arm*-*-*. * gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-stackalign-1.c: Don't handle powerpc-*-sysv*. * gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*. * lib/target-supports.exp: Don't handle strongarm*-*-elf, xscale*-*-elf and *-*-windiss. * obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*. * gcc.dg/mt-loopi1.c: Remove. gnattools: * configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove. * configure: Regenerate. libcpp: * configure.ac (parisc*64*-*-*): Remove. * configure: Regenerate. libffi: * configure.ac (parisc*-*-linux*, powerpc-*-sysv*, powerpc-*-beos*): Remove. * configure: Regenerate. libgcc: * config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove. libjava: * configure.host (strongarm*-elf, xscale*-elf): Remove. libstdc++-v3: * configure.host (xscale, ep9312, m680[246]0, solaris2.5, solaris2.5.[0-9], solaris2.6, windiss*): Remove. * crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove. * configure: Regenerate. * config/os/solaris/solaris2.5: Remove directory. * config/os/solaris/solaris2.6: Remove directory. * config/os/windiss: Remove directory. From-SVN: r136534
2008-06-07 20:00:15 +02:00
sh-*-elf* | sh[12346l]*-*-elf* | \
sh-*-symbianelf* | sh[12346l]*-*-symbianelf* | \
sh-*-linux* | sh[2346lbe]*-*-linux* | \
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* | sh5l*-*-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
sh[1234]*be-*-* | sh[1234]*eb-*-*) with_endian=big ;;
shbe-*-* | sheb-*-*) with_endian=big,little ;;
sh[1234]l* | sh[34]*-*-linux*) with_endian=little ;;
shl* | sh64l* | sh*-*-linux* | \
sh5l* | sh-superh-elf) with_endian=little,big ;;
sh[1234]*-*-*) with_endian=big ;;
*) with_endian=big,little ;;
esac
fi
configure.ac: Add new AC_SUBST for TM_ENDIAN_CONFIG... 2009-04-17 Andrew Stubbs <ams@codesourcery.com> * configure.ac: Add new AC_SUBST for TM_ENDIAN_CONFIG, TM_MULTILIB_CONFIG and TM_MULTILIB_EXCEPTIONS_CONFIG. (--with-multilib-list): Add default value. * configure: Regenerate. * Makefile.in (TM_ENDIAN_CONFIG): Define. (TM_MULTILIB_CONFIG, TM_MULTILIB_EXCEPTIONS_CONFIG): Define. * config.gcc (sh-*-*): Switch to using TM_ENDIAN_CONFIG, TM_MULTILIB_CONFIG, and TM_MULTILIB_EXCEPTIONS_CONFIG. Don't add default cpu to multilib list unnecessarily, but do enable the relevant compiler option.. Add support for --with-multilib-list=<blank> and --with-multilib-list=!<somelib> to supress unwanted multilibs. * config/sh/t-sh (DEFAULT_ENDIAN, OTHER_ENDIAN): New variables. (MULTILIB_ENDIAN, MULTILIB_CPUS): Delete variables. (MULTILIB_OPTIONS): Redefine using OTHER_ENDIAN and TM_MULTILIB_CONFIG. (MULTILIB_EXCEPTIONS): Add TM_MULTILIB_EXCEPTIONS_CONFIG. (MULTILIB_OSDIRNAMES): New variable. * config/sh/t-1e: Delete file. * config/sh/t-mlib-sh1: Delete file. * config/sh/t-mlib-sh2: Delete file. * config/sh/t-mlib-sh2a: Delete file. * config/sh/t-mlib-sh2a-nofpu: Delete file. * config/sh/t-mlib-sh2a-single: Delete file. * config/sh/t-mlib-sh2a-single-only: Delete file. * config/sh/t-mlib-sh2e: Delete file. * config/sh/t-mlib-sh3e: Delete file. * config/sh/t-mlib-sh4: Delete file. * config/sh/t-mlib-sh4-nofpu: Delete file. * config/sh/t-mlib-sh4-single: Delete file. * config/sh/t-mlib-sh4-single-only: Delete file. * config/sh/t-mlib-sh4a: Delete file. * config/sh/t-mlib-sh4a-nofpu: Delete file. * config/sh/t-mlib-sh4a-single: Delete file. * config/sh/t-mlib-sh4a-single-only: Delete file. * config/sh/t-mlib-sh4al: Delete file. * config/sh/t-mlib-sh5-32media: Delete file. * config/sh/t-mlib-sh5-32media-nofpu: Delete file. * config/sh/t-mlib-sh5-64media: Delete file. * config/sh/t-mlib-sh5-64media-nofpu: Delete file. * config/sh/t-mlib-sh5-compact: Delete file. * config/sh/t-mlib-sh5-compact-nofpu: Delete file. * config/sh/t-linux: Don't override MULTILIB_EXCEPTIONS. * doc/install.texi (Options specification): Add --with-multilib-list and --with-endian. From-SVN: r146278
2009-04-17 19:32:00 +02:00
# TM_ENDIAN_CONFIG is used by t-sh to determine multilibs.
# First word : the default endian.
# Second word: the secondary endian (optional).
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
case ${with_endian} in
configure.ac: Add new AC_SUBST for TM_ENDIAN_CONFIG... 2009-04-17 Andrew Stubbs <ams@codesourcery.com> * configure.ac: Add new AC_SUBST for TM_ENDIAN_CONFIG, TM_MULTILIB_CONFIG and TM_MULTILIB_EXCEPTIONS_CONFIG. (--with-multilib-list): Add default value. * configure: Regenerate. * Makefile.in (TM_ENDIAN_CONFIG): Define. (TM_MULTILIB_CONFIG, TM_MULTILIB_EXCEPTIONS_CONFIG): Define. * config.gcc (sh-*-*): Switch to using TM_ENDIAN_CONFIG, TM_MULTILIB_CONFIG, and TM_MULTILIB_EXCEPTIONS_CONFIG. Don't add default cpu to multilib list unnecessarily, but do enable the relevant compiler option.. Add support for --with-multilib-list=<blank> and --with-multilib-list=!<somelib> to supress unwanted multilibs. * config/sh/t-sh (DEFAULT_ENDIAN, OTHER_ENDIAN): New variables. (MULTILIB_ENDIAN, MULTILIB_CPUS): Delete variables. (MULTILIB_OPTIONS): Redefine using OTHER_ENDIAN and TM_MULTILIB_CONFIG. (MULTILIB_EXCEPTIONS): Add TM_MULTILIB_EXCEPTIONS_CONFIG. (MULTILIB_OSDIRNAMES): New variable. * config/sh/t-1e: Delete file. * config/sh/t-mlib-sh1: Delete file. * config/sh/t-mlib-sh2: Delete file. * config/sh/t-mlib-sh2a: Delete file. * config/sh/t-mlib-sh2a-nofpu: Delete file. * config/sh/t-mlib-sh2a-single: Delete file. * config/sh/t-mlib-sh2a-single-only: Delete file. * config/sh/t-mlib-sh2e: Delete file. * config/sh/t-mlib-sh3e: Delete file. * config/sh/t-mlib-sh4: Delete file. * config/sh/t-mlib-sh4-nofpu: Delete file. * config/sh/t-mlib-sh4-single: Delete file. * config/sh/t-mlib-sh4-single-only: Delete file. * config/sh/t-mlib-sh4a: Delete file. * config/sh/t-mlib-sh4a-nofpu: Delete file. * config/sh/t-mlib-sh4a-single: Delete file. * config/sh/t-mlib-sh4a-single-only: Delete file. * config/sh/t-mlib-sh4al: Delete file. * config/sh/t-mlib-sh5-32media: Delete file. * config/sh/t-mlib-sh5-32media-nofpu: Delete file. * config/sh/t-mlib-sh5-64media: Delete file. * config/sh/t-mlib-sh5-64media-nofpu: Delete file. * config/sh/t-mlib-sh5-compact: Delete file. * config/sh/t-mlib-sh5-compact-nofpu: Delete file. * config/sh/t-linux: Don't override MULTILIB_EXCEPTIONS. * doc/install.texi (Options specification): Add --with-multilib-list and --with-endian. From-SVN: r146278
2009-04-17 19:32:00 +02:00
big) TM_ENDIAN_CONFIG=mb ;;
little) TM_ENDIAN_CONFIG=ml ;;
big,little) TM_ENDIAN_CONFIG="mb ml" ;;
little,big) TM_ENDIAN_CONFIG="ml mb" ;;
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
*) echo "with_endian=${with_endian} not supported."; exit 1 ;;
esac
case ${with_endian} in
little*) tm_file="sh/little.h ${tm_file}" ;;
esac
tm_file="${tm_file} dbxelf.h elfos.h"
case ${target} in
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
sh*-*-netbsd*) ;;
*) tm_file="${tm_file} svr4.h" ;;
esac
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
tm_file="${tm_file} sh/elf.h"
case ${target} in
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
sh*-*-linux*) tmake_file="${tmake_file} sh/t-linux"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} linux.h glibc-stdint.h sh/linux.h" ;;
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
sh*-*-netbsd*) tm_file="${tm_file} netbsd.h netbsd-elf.h sh/netbsd-elf.h" ;;
sh*-superh-elf) if test x$with_libgloss != xno; then
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"
superh.opt: New file. 2006-03-27 Andrew Stubbs <andrew.stubbs@st.com> J"orn Rennecke <joern.rennecke@st.com> * superh.opt: New file. * sh.c (boardtype, osruntime): Remove. * superh.h (SUBTARGET_OPTIONS): Remove. * config.gcc (sh*-superh-elf): Add sh/superh.opt to extra_options. * config.gcc (sh*-*-*): Don't use c-c ranges for tr. Quote sed arguments with ^ and/or []. * config.gcc (sh-*-*): Add quoting to account for quirk of Solaris /bin/sh. Replace == with = in enable_incomplete_targets test. * config/sh/superh.h (SUBTARGET_LINK_SPEC): Replace LITTLE_ENDIAN_BIT with MASK_LITTLE_ENDIAN. * config.gcc (sh*-superh-elf): Add sh/superh.h to tm_file. * config/sh/sh.opt: Added to some comments. * config/sh/superh.h: Removed some chaff. * config/sh/sh.opt: Add m4-[1234]00* options. * config/sh/sh.c (sh_handle_option): Likewise. * config/sh/t-sh (IC_EXTRA_PARTS, EXTRA_MULTILIB_PARTS): Define. (ic_invalidate_array_4-100.o): New rule. ($(T)libic_invalidate_array_4-100.a): Likewise. (ic_invalidate_array_4-200.o): Likewise. ($(T)libic_invalidate_array_4-200.a): Likewise. (ic_invalidate_array_4a.o): Likewise. ($(T)libic_invalidate_array_4a.a): Likewise. * config/sh/t-elf (EXTRA_MULTILIB_PARTS): Add IC_EXTRA_PARTS. * config/sh/embed-elf.h (LIBGCC_SPEC): Add clauses for m4-100*, m4-200*, and m4a*. * config/sh/crt1.asm: Merged in profiling code. * config/sh/superh.h (STARTFILE_SPEC): Override. * config/sh/t-superh: Override EXTRA_MULTILIB_PARTS. Add rules for $(T)crt1-mmu.o, $(T)gcrt1-mmu.o and $(T)gcrt1.o. * config.gcc (sh*-superh-elf): Add t-superh to tmake_file. * t-sh (MULTILIB_MATCHES): Add sh4-[1245]00* variants. * config/sh/t-superh: Removed now-redundant MULTILIB_OPTIONS / MULTILIB_DIRNAMES / MULTILIB_MATCHES settings. * sh.opt (mpretend-cmove): New option. * sh.h (OPERRIDE_OPTIONS): Switch it off if not TARGET_SH1. * sh.md (movsicc_t_false, movsicc_t_tru): New patterns. (movsicc): Add TARGET_PRETEND_CMOVE code. Co-Authored-By: J"orn Rennecke <joern.rennecke@st.com> From-SVN: r112421
2006-03-27 16:11:14 +02:00
extra_options="${extra_options} sh/superh.opt" ;;
*) if test x$with_newlib = xyes \
&& test x$with_libgloss = xyes; then
tm_file="${tm_file} sh/newlib.h"
fi
tm_file="${tm_file} sh/embed-elf.h" ;;
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
esac
case ${target} in
sh5*-*-netbsd*)
# SHmedia, 32-bit ABI
tmake_file="${tmake_file} sh/t-sh64 sh/t-netbsd"
;;
sh64*-netbsd*)
# SHmedia, 64-bit ABI
tmake_file="${tmake_file} sh/t-sh64 sh/t-netbsd 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"
tm_file="${tm_file} sh/sh64.h"
extra_headers="shmedia.h ushmedia.h sshmedia.h"
;;
sh64*)
tmake_file="${tmake_file} sh/t-sh64"
tm_file="${tm_file} sh/sh64.h"
extra_headers="shmedia.h ushmedia.h sshmedia.h"
;;
*-*-symbianelf*)
tmake_file="sh/t-symbian"
tm_file="sh/symbian-pre.h sh/little.h ${tm_file} sh/symbian-post.h"
extra_objs="symbian.o"
extra_parts="crt1.o crti.o crtn.o crtbegin.o crtend.o crtbeginS.o crtendS.o"
config.gcc (i?86-*-darwin): Add 64-bit HWI support. 2006-09-08 Eric Christopher <echristo@apple.com> * config.gcc (i?86-*-darwin): Add 64-bit HWI support. * config/t-slibgcc-darwin: Support x86_64 multilib. * config/i386/i386.h (JUMP_TABLES_IN_TEXT_SECTION): Return 1 for x86_64-darwin. * config/i386/t-darwin: Add m64 multilib. (LIB2_SIDITI_CONV_FUNCS): Use. (LIB2FUNCS_EXTRA): Ditto. * config/i386/darwin.h: Support x86_64. * config/i386/i386.c (override_options): Turn on flag_pic for x86_64-darwin. Disable flag_omit_pointer. (get_pc_thunk_name): Assert !TARGET_64BIT. (legitimate_address_p): Disable machopic addressing for x86_64. (legitimize_pic_address): Ditto. (ix86_expand_move): Ditto. (ix86_expand_call): Ditto. (machopic_output_stub): Ditto. * config/darwin.c (machopic_select_section): Support literal16. (machopic_select_rtx_section): Ditto. * config/darwin-sections.def: Ditto. * config/darwin-64.c: New. 2006-09-08 Eric Christopher <echristo@apple.com> * gcc.target/i386/20060512-3.c: Run test on ilp32 only. * gcc.target/i386/memcpy-1.c: Ditto. * gcc.target/i386/asm-1.c: Ditto. * gcc.target/i386/20060512-4.c: Ditto. * gcc.target/i386/compress-float-387.c: Ditto. * gcc.target/i386/20060512-1.c: Ditto. * gcc.target/i386/compress-float-sse.c: Ditto. * gcc.target/i386/20060512-2.c: Ditto. * gcc.target/i386/compress-float-sse-pic.c: Ditto. * gcc.target/i386/stack-prot-kernel.c: Ditto. * gcc.target/i386/compress-float-387-pic.c: Ditto. * gcc.dg/pr26449.c: Ditto. * gcc.dg/attr-ms_struct-2.c: Ditto. * gcc.dg/attr-ms_struct-1.c: Ditto. * gcc.misc-tests/linkage.exp: Fix 64-bit darwin support. 2006-09-08 Eric Christopher <echristo@apple.com> * configure.ac: Add 64-bit HWI support for i?86-darwin. From-SVN: r116795
2006-09-09 02:27:47 +02:00
;;
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
*-*-elf*)
tm_file="${tm_file} newlib-stdint.h"
;;
esac
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
# sed el/eb endian suffixes away to avoid confusion with sh[23]e
case `echo ${target} | sed 's/e[lb]-/-/'` in
sh64*-*-netbsd*) sh_cpu_target=sh5-64media ;;
sh64* | sh5*-*-netbsd*) sh_cpu_target=sh5-32media ;;
Introduce sh4a support. gcc/ChangeLog: Introduce sh4a support. * config.gcc: Handle sh4a multilibs and cpu selection. * config/sh/sh.h: Likewise. Handle sh4a command line flags. * config/sh/t-mlib-sh4a: New. * config/sh/t-mlib-sh4al: New. * config/sh/t-mlib-sh4a-nofpu: New. * config/sh/t-mlib-sh4a-single: New. * config/sh/t-mlib-sh4a-single-only: New. 2004-02-20 DJ Delorie <dj@redhat.com> * config/sh/sh.md ("movua"): Change constraint from "m" to "Sua". * config/sh/sh.h (EXTRA_CONSTRAINT_S): Add "Sua" support. 2003-08-22 Eric Christopher <echristo@redhat.com> * config/sh/sh4a.md: Update for chip errata. 2003-08-07 Eric Christopher <echristo@redhat.com> * config/sh/sh4a.md: New file. sh4a processor description. 2003-07-08 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (TARGET_SWITCHES): Added 4al. Adjust description of -m4a-nofpu. (SH_ASM_SPEC): Pass -dsp for -m4al, not -m4a-nofpu. * config/sh/t-sh (MULTILIB_MATCHES): Map -m4al to -m4a-nofpu. * doc/invoke.texi (SH Options): Document -m4al. 2003-07-03 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (expand_block_move): Remove commented-out code checked in by mistake. (sh_cannot_change_mode_class): Enable SUBREGs to be used to select single elements from SFmode vectors. * config/sh/sh.md (fsca): Use VEC_CONCAT to initialize the output register. (sinsf2, cossf2, sindf2, cosdf2): Don't emit CLOBBER. 2003-07-01 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (sh_fsca_sf2int, sh_fsca_df2int, sh_fsca_int2sf): Remove variable declarations. * config/sh/sh.c (sh_fsca_sf2int, sh_fsca_df2int, sh_fsca_int2sf): New functions. (sh_fsca_sf2int_rtx, sh_fsca_df2int_rtx, sh_fsca_int2sf_rtx): New static variables. * config/sh/sh-protos.h (sh_fsca_sf2int, sh_fsca_df2int, sh_fsca_int2sf): Declare. * config/sh/sh.md: Adjust. * doc/invoke.texi (SH Options): Document new options. * config/sh/lib1funcs.asm (ic_invalidate): Remove SH4a forward compatibility from SH4 code. 2003-06-27 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (expand_block_move): Don't emit POST_INC too early. (memory_movsrc_operand): Renamed to... (unaligned_load_operand): ... this. Simplified. * config/sh/sh.h (PREDICATE_CODES): Adjust. * config/sh/sh.md (movua, extv, extzv): Likewise. Change movua's input operand to SImode, and adjust the others. Introduce post-increment by peephole. * config/sh/sh.c (expand_block_move): Give the target address the same mode as the temp reg. * config/sh/sh.c (expand_block_move): Use a temp reg for unaligned copying. 2003-06-26 Alexandre Oliva <aoliva@redhat.com> Introduce support for SH4a. * config/sh/lib1funcs.asm (ic_invalidate): Use icbi if __SH4A__. Emit 4 4kb blocks and touch all of them otherwise. * config/sh/sh.c (sh_fsca_sf2int, sh_fsca_df2int, sh_fsca_int2sf): New. (sh_init_builtins): Initialize them. (print_operand): Support `d'. (expand_block_move): Use movua if src is misaligned. (memory_movsrc_operand): New. * config/sh/sh.h (TARGET_CPU_CPP_BUILTINS): Define __SH4A__ and one of the SH4 macros. (SH4A_BIT, TARGET_SH4A_ARCH, TARGET_SH4A_FP, SELECT_SH4A_NOFPU, SELECT_SH4A_SINGLE_ONLY, SELECT_SH4A, SELECT_SH4A_SINGLE): New. (TARGET_NONE): Add SH4A_BIT. (TARGET_SWITCHES): Add 4a-single-only, 4a-single, 4a-nofpu and 4a. (SH_ASM_SPEC): Pass -dsp if -m4a-nofpu. (sh_fsca_sf2int, sh_fsca_df2int, sh_fsca_int2sf): Declare. (OVERRIDE_OPTIONS): Set cpu to CPU_SH4A when appropriate. (enum processor_type): Added PROCESSOR_SH4A. (PREDICATE_CODES): Add memory_movsrc_operand. * config/sh/sh.md: Removed unused variables. (attr cpu): Add sh4a. (attr type): Add movua, fsrra and fsca. (prefetch): New, for SH4. (ic_invalidate_line, ic_invalidate_line_sh4a): Use icbi. (toggle_sz): Set type to fp. (toggle_pr, rsqrtsf2, fsca, sinsf2, cossf2, sindf2, cosdf2): New. (movua, extv, extzv): New. * config/sh/t-sh: Add multilibs for 4a, 4a-nofpu, 4a-single and 4a-single-only. gcc/testsuite/ChangeLog: 2003-07-06 Alexandre Oliva <aoliva@redhat.com> * gcc.dg/sh4a-memmovua.c: Tweak regular expression. 2003-07-01 Alexandre Oliva <aoliva@redhat.com> * gcc.dg/sh4a-bitmovua.c: New. * gcc.dg/sh4a-cos.c: New. * gcc.dg/sh4a-cosf.c: New. * gcc.dg/sh4a-fprun.c: New. * gcc.dg/sh4a-fsrra.c: New. * gcc.dg/sh4a-memmovua.c: New. * gcc.dg/sh4a-sin.c: New. * gcc.dg/sh4a-sincos.c: New. * gcc.dg/sh4a-sincosf.c: New. * gcc.dg/sh4a-sinf.c: New. libstdc++-v3/ChangeLog: 2003-10-01 Eric Christopher <echristo@redhat.com> * config/cpu/sh/atomicity.h (__exchange_and_add): Remove 'm' constraint. 2003-07-09 Alexandre Oliva <aoliva@redhat.com> * config/cpu/sh/atomicity.h: New. Use movli and movco on SH4a. From-SVN: r85257
2004-07-28 11:13:58 +02:00
sh4a_single_only*) sh_cpu_target=sh4a-single-only ;;
sh4a_single*) sh_cpu_target=sh4a-single ;;
sh4a_nofpu*) sh_cpu_target=sh4a-nofpu ;;
sh4al) sh_cpu_target=sh4al ;;
sh4a*) sh_cpu_target=sh4a ;;
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
sh4_single_only*) sh_cpu_target=sh4-single-only ;;
sh4_single*) sh_cpu_target=sh4-single ;;
sh4_nofpu*) sh_cpu_target=sh4-nofpu ;;
sh4* | sh-superh-*) sh_cpu_target=sh4 ;;
sh3e*) sh_cpu_target=sh3e ;;
sh*-*-netbsd* | sh3*) sh_cpu_target=sh3 ;;
Introduce sh2a support. 2004-07-29 Alexandre Oliva <aoliva@redhat.com> * config.gcc: Build multilibs for sh2a and sh2a-single by default. * config/sh/sh.h (SUPPORT_SH2A, SUPPORT_SH2A_SINGLE): Define by default. Split their tests out of the corresponding SH4 multilibs. * config/sh/t-sh (MULTILIB_MATCHES): Don't ever use SH4 or SH4a multilibs for SH2a. 2004-07-28 Alexandre Oliva <aoliva@redhat.com> * config.gcc: Handle sh2a multilibs and cpu selection. * config/sh/sh.h: Likewise. Handle sh2a command line flags. * config/sh/t-mlib-sh2a: New. * config/sh/t-mlib-sh2a-nofpu: New. * config/sh/t-mlib-sh2a-single: New. * config/sh/t-mlib-sh2a-single-only: New. 2004-07-09 Nick Clifton <nickc@redhat.com> Issue 43400 * config/sh/sh.h (DRIVER_SELF_SPECS): Issue an error message if -ml and -m2a are used together. 2004-03-23 DJ Delorie <dj@redhat.com> * config/sh/sh.c (sh_builtin_saveregs): Use the double code only when we have a double-sized FPU. 2004-02-24 Corinna Vinschen <vinschen@redhat.com> * config/sh/lib1funcs.asm (set_fpscr): Don't build if __SH2A_NOFPU__ is set. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Add cases for -msh2a-nofpu, -msh2a-single and -msh2a-single-only 2004-02-24 Corinna Vinschen <vinschen@redhat.com> * config/sh/crt1.asm: Don't generate FPU instructions if __SH2A_NOFPU__ is set. 2004-02-20 DJ Delorie <dj@delorie.com> * config/sh/sh.md (movsf_i, movsf_ie, movsf, ble, bge): Disable for sh2a-nofpu. 2004-02-20 Fred Fish <fnf@redhat.com>, Corinna Vinschen <vinschen@redhat.com> * config/sh/t-sh (MULTILIB_OPTIONS): Add 2a-nofpu. (MULTILIB_EXCEPTIONS): Don't build littel-endian on sh2a. 2004-02-18 DJ Delorie <dj@redhat.com> * config/sh/sh.c (broken_move): Add support for movi20. * config/sh/sh.h: Likewise. (SHIFT_COUNT_TRUNCATED): Set for sh2a. * config/sh/sh.md (udivsi3_sh2a): New. (udivsi3): Call it. (divsi3_sh2a): New. (divsi3): Call it. (mul_r): New. (ashlsi3_sh2a): New. (ashrsi3_sh2a): New. (lshrsi3_sh2a): New. (movsi_i): Disable for sh2a. (movsi_ie): Add movi20. (movsf_i, movsf_ie, movsf, ble, untyped_call): Explicitly enable sh2a, for -m2a-nofpu mode. 2004-02-13 DJ Delorie <dj@redhat.com> * config/sh/lib1funcs.asm: Handle double vs single better. * config/sh/sh.h: Likewise. 2004-02-09 DJ Delorie <dj@redhat.com> * config/sh/crt1.asm: Add support for sh2a. * config/sh/elf.h: Likewise. * config/sh/lib1funcs.asm: Likewise. * config/sh/sh.c: Likewise. * config/sh/sh.md: Likewise. * config/sh/sh.h: Likewise. * config/sh/t-sh: Likewise. From-SVN: r85286
2004-07-29 08:10:03 +02:00
sh2a_single_only*) sh_cpu_target=sh2a-single-only ;;
sh2a_single*) sh_cpu_target=sh2a-single ;;
sh2a_nofpu*) sh_cpu_target=sh2a-nofpu ;;
sh2a*) sh_cpu_target=sh2a ;;
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
sh2e*) sh_cpu_target=sh2e ;;
sh2*) sh_cpu_target=sh2 ;;
*) sh_cpu_target=sh1 ;;
esac
# did the user say --without-fp ?
if test x$with_fp = xno; then
case ${sh_cpu_target} in
sh5-*media) sh_cpu_target=${sh_cpu_target}-nofpu ;;
sh4al | sh1) ;;
sh4a* ) sh_cpu_target=sh4a-nofpu ;;
sh4*) sh_cpu_target=sh4-nofpu ;;
sh3*) sh_cpu_target=sh3 ;;
sh2a*) sh_cpu_target=sh2a-nofpu ;;
sh2*) sh_cpu_target=sh2 ;;
*) echo --without-fp not available for $target: ignored
esac
tm_defines="$tm_defines STRICT_NOFPU=1"
fi
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
sh_cpu_default="`echo $with_cpu|sed s/^m/sh/|tr A-Z_ a-z-`"
case $sh_cpu_default in
sh5-64media-nofpu | sh5-64media | \
sh5-32media-nofpu | sh5-32media | sh5-compact-nofpu | sh5-compact | \
Introduce sh2a support. 2004-07-29 Alexandre Oliva <aoliva@redhat.com> * config.gcc: Build multilibs for sh2a and sh2a-single by default. * config/sh/sh.h (SUPPORT_SH2A, SUPPORT_SH2A_SINGLE): Define by default. Split their tests out of the corresponding SH4 multilibs. * config/sh/t-sh (MULTILIB_MATCHES): Don't ever use SH4 or SH4a multilibs for SH2a. 2004-07-28 Alexandre Oliva <aoliva@redhat.com> * config.gcc: Handle sh2a multilibs and cpu selection. * config/sh/sh.h: Likewise. Handle sh2a command line flags. * config/sh/t-mlib-sh2a: New. * config/sh/t-mlib-sh2a-nofpu: New. * config/sh/t-mlib-sh2a-single: New. * config/sh/t-mlib-sh2a-single-only: New. 2004-07-09 Nick Clifton <nickc@redhat.com> Issue 43400 * config/sh/sh.h (DRIVER_SELF_SPECS): Issue an error message if -ml and -m2a are used together. 2004-03-23 DJ Delorie <dj@redhat.com> * config/sh/sh.c (sh_builtin_saveregs): Use the double code only when we have a double-sized FPU. 2004-02-24 Corinna Vinschen <vinschen@redhat.com> * config/sh/lib1funcs.asm (set_fpscr): Don't build if __SH2A_NOFPU__ is set. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Add cases for -msh2a-nofpu, -msh2a-single and -msh2a-single-only 2004-02-24 Corinna Vinschen <vinschen@redhat.com> * config/sh/crt1.asm: Don't generate FPU instructions if __SH2A_NOFPU__ is set. 2004-02-20 DJ Delorie <dj@delorie.com> * config/sh/sh.md (movsf_i, movsf_ie, movsf, ble, bge): Disable for sh2a-nofpu. 2004-02-20 Fred Fish <fnf@redhat.com>, Corinna Vinschen <vinschen@redhat.com> * config/sh/t-sh (MULTILIB_OPTIONS): Add 2a-nofpu. (MULTILIB_EXCEPTIONS): Don't build littel-endian on sh2a. 2004-02-18 DJ Delorie <dj@redhat.com> * config/sh/sh.c (broken_move): Add support for movi20. * config/sh/sh.h: Likewise. (SHIFT_COUNT_TRUNCATED): Set for sh2a. * config/sh/sh.md (udivsi3_sh2a): New. (udivsi3): Call it. (divsi3_sh2a): New. (divsi3): Call it. (mul_r): New. (ashlsi3_sh2a): New. (ashrsi3_sh2a): New. (lshrsi3_sh2a): New. (movsi_i): Disable for sh2a. (movsi_ie): Add movi20. (movsf_i, movsf_ie, movsf, ble, untyped_call): Explicitly enable sh2a, for -m2a-nofpu mode. 2004-02-13 DJ Delorie <dj@redhat.com> * config/sh/lib1funcs.asm: Handle double vs single better. * config/sh/sh.h: Likewise. 2004-02-09 DJ Delorie <dj@redhat.com> * config/sh/crt1.asm: Add support for sh2a. * config/sh/elf.h: Likewise. * config/sh/lib1funcs.asm: Likewise. * config/sh/sh.c: Likewise. * config/sh/sh.md: Likewise. * config/sh/sh.h: Likewise. * config/sh/t-sh: Likewise. From-SVN: r85286
2004-07-29 08:10:03 +02:00
sh2a-single-only | sh2a-single | sh2a-nofpu | sh2a | \
Introduce sh4a support. gcc/ChangeLog: Introduce sh4a support. * config.gcc: Handle sh4a multilibs and cpu selection. * config/sh/sh.h: Likewise. Handle sh4a command line flags. * config/sh/t-mlib-sh4a: New. * config/sh/t-mlib-sh4al: New. * config/sh/t-mlib-sh4a-nofpu: New. * config/sh/t-mlib-sh4a-single: New. * config/sh/t-mlib-sh4a-single-only: New. 2004-02-20 DJ Delorie <dj@redhat.com> * config/sh/sh.md ("movua"): Change constraint from "m" to "Sua". * config/sh/sh.h (EXTRA_CONSTRAINT_S): Add "Sua" support. 2003-08-22 Eric Christopher <echristo@redhat.com> * config/sh/sh4a.md: Update for chip errata. 2003-08-07 Eric Christopher <echristo@redhat.com> * config/sh/sh4a.md: New file. sh4a processor description. 2003-07-08 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (TARGET_SWITCHES): Added 4al. Adjust description of -m4a-nofpu. (SH_ASM_SPEC): Pass -dsp for -m4al, not -m4a-nofpu. * config/sh/t-sh (MULTILIB_MATCHES): Map -m4al to -m4a-nofpu. * doc/invoke.texi (SH Options): Document -m4al. 2003-07-03 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (expand_block_move): Remove commented-out code checked in by mistake. (sh_cannot_change_mode_class): Enable SUBREGs to be used to select single elements from SFmode vectors. * config/sh/sh.md (fsca): Use VEC_CONCAT to initialize the output register. (sinsf2, cossf2, sindf2, cosdf2): Don't emit CLOBBER. 2003-07-01 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (sh_fsca_sf2int, sh_fsca_df2int, sh_fsca_int2sf): Remove variable declarations. * config/sh/sh.c (sh_fsca_sf2int, sh_fsca_df2int, sh_fsca_int2sf): New functions. (sh_fsca_sf2int_rtx, sh_fsca_df2int_rtx, sh_fsca_int2sf_rtx): New static variables. * config/sh/sh-protos.h (sh_fsca_sf2int, sh_fsca_df2int, sh_fsca_int2sf): Declare. * config/sh/sh.md: Adjust. * doc/invoke.texi (SH Options): Document new options. * config/sh/lib1funcs.asm (ic_invalidate): Remove SH4a forward compatibility from SH4 code. 2003-06-27 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (expand_block_move): Don't emit POST_INC too early. (memory_movsrc_operand): Renamed to... (unaligned_load_operand): ... this. Simplified. * config/sh/sh.h (PREDICATE_CODES): Adjust. * config/sh/sh.md (movua, extv, extzv): Likewise. Change movua's input operand to SImode, and adjust the others. Introduce post-increment by peephole. * config/sh/sh.c (expand_block_move): Give the target address the same mode as the temp reg. * config/sh/sh.c (expand_block_move): Use a temp reg for unaligned copying. 2003-06-26 Alexandre Oliva <aoliva@redhat.com> Introduce support for SH4a. * config/sh/lib1funcs.asm (ic_invalidate): Use icbi if __SH4A__. Emit 4 4kb blocks and touch all of them otherwise. * config/sh/sh.c (sh_fsca_sf2int, sh_fsca_df2int, sh_fsca_int2sf): New. (sh_init_builtins): Initialize them. (print_operand): Support `d'. (expand_block_move): Use movua if src is misaligned. (memory_movsrc_operand): New. * config/sh/sh.h (TARGET_CPU_CPP_BUILTINS): Define __SH4A__ and one of the SH4 macros. (SH4A_BIT, TARGET_SH4A_ARCH, TARGET_SH4A_FP, SELECT_SH4A_NOFPU, SELECT_SH4A_SINGLE_ONLY, SELECT_SH4A, SELECT_SH4A_SINGLE): New. (TARGET_NONE): Add SH4A_BIT. (TARGET_SWITCHES): Add 4a-single-only, 4a-single, 4a-nofpu and 4a. (SH_ASM_SPEC): Pass -dsp if -m4a-nofpu. (sh_fsca_sf2int, sh_fsca_df2int, sh_fsca_int2sf): Declare. (OVERRIDE_OPTIONS): Set cpu to CPU_SH4A when appropriate. (enum processor_type): Added PROCESSOR_SH4A. (PREDICATE_CODES): Add memory_movsrc_operand. * config/sh/sh.md: Removed unused variables. (attr cpu): Add sh4a. (attr type): Add movua, fsrra and fsca. (prefetch): New, for SH4. (ic_invalidate_line, ic_invalidate_line_sh4a): Use icbi. (toggle_sz): Set type to fp. (toggle_pr, rsqrtsf2, fsca, sinsf2, cossf2, sindf2, cosdf2): New. (movua, extv, extzv): New. * config/sh/t-sh: Add multilibs for 4a, 4a-nofpu, 4a-single and 4a-single-only. gcc/testsuite/ChangeLog: 2003-07-06 Alexandre Oliva <aoliva@redhat.com> * gcc.dg/sh4a-memmovua.c: Tweak regular expression. 2003-07-01 Alexandre Oliva <aoliva@redhat.com> * gcc.dg/sh4a-bitmovua.c: New. * gcc.dg/sh4a-cos.c: New. * gcc.dg/sh4a-cosf.c: New. * gcc.dg/sh4a-fprun.c: New. * gcc.dg/sh4a-fsrra.c: New. * gcc.dg/sh4a-memmovua.c: New. * gcc.dg/sh4a-sin.c: New. * gcc.dg/sh4a-sincos.c: New. * gcc.dg/sh4a-sincosf.c: New. * gcc.dg/sh4a-sinf.c: New. libstdc++-v3/ChangeLog: 2003-10-01 Eric Christopher <echristo@redhat.com> * config/cpu/sh/atomicity.h (__exchange_and_add): Remove 'm' constraint. 2003-07-09 Alexandre Oliva <aoliva@redhat.com> * config/cpu/sh/atomicity.h: New. Use movli and movco on SH4a. From-SVN: r85257
2004-07-28 11:13:58 +02:00
sh4a-single-only | sh4a-single | sh4a-nofpu | sh4a | sh4al | \
sh4-single-only | sh4-single | sh4-nofpu | sh4 | sh4-300 | \
sh3e | sh3 | sh2e | sh2 | sh1) ;;
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
"") sh_cpu_default=${sh_cpu_target} ;;
*) echo "with_cpu=$with_cpu not supported"; exit 1 ;;
esac
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
sh_multilibs=${with_multilib_list}
configure.ac: Add new AC_SUBST for TM_ENDIAN_CONFIG... 2009-04-17 Andrew Stubbs <ams@codesourcery.com> * configure.ac: Add new AC_SUBST for TM_ENDIAN_CONFIG, TM_MULTILIB_CONFIG and TM_MULTILIB_EXCEPTIONS_CONFIG. (--with-multilib-list): Add default value. * configure: Regenerate. * Makefile.in (TM_ENDIAN_CONFIG): Define. (TM_MULTILIB_CONFIG, TM_MULTILIB_EXCEPTIONS_CONFIG): Define. * config.gcc (sh-*-*): Switch to using TM_ENDIAN_CONFIG, TM_MULTILIB_CONFIG, and TM_MULTILIB_EXCEPTIONS_CONFIG. Don't add default cpu to multilib list unnecessarily, but do enable the relevant compiler option.. Add support for --with-multilib-list=<blank> and --with-multilib-list=!<somelib> to supress unwanted multilibs. * config/sh/t-sh (DEFAULT_ENDIAN, OTHER_ENDIAN): New variables. (MULTILIB_ENDIAN, MULTILIB_CPUS): Delete variables. (MULTILIB_OPTIONS): Redefine using OTHER_ENDIAN and TM_MULTILIB_CONFIG. (MULTILIB_EXCEPTIONS): Add TM_MULTILIB_EXCEPTIONS_CONFIG. (MULTILIB_OSDIRNAMES): New variable. * config/sh/t-1e: Delete file. * config/sh/t-mlib-sh1: Delete file. * config/sh/t-mlib-sh2: Delete file. * config/sh/t-mlib-sh2a: Delete file. * config/sh/t-mlib-sh2a-nofpu: Delete file. * config/sh/t-mlib-sh2a-single: Delete file. * config/sh/t-mlib-sh2a-single-only: Delete file. * config/sh/t-mlib-sh2e: Delete file. * config/sh/t-mlib-sh3e: Delete file. * config/sh/t-mlib-sh4: Delete file. * config/sh/t-mlib-sh4-nofpu: Delete file. * config/sh/t-mlib-sh4-single: Delete file. * config/sh/t-mlib-sh4-single-only: Delete file. * config/sh/t-mlib-sh4a: Delete file. * config/sh/t-mlib-sh4a-nofpu: Delete file. * config/sh/t-mlib-sh4a-single: Delete file. * config/sh/t-mlib-sh4a-single-only: Delete file. * config/sh/t-mlib-sh4al: Delete file. * config/sh/t-mlib-sh5-32media: Delete file. * config/sh/t-mlib-sh5-32media-nofpu: Delete file. * config/sh/t-mlib-sh5-64media: Delete file. * config/sh/t-mlib-sh5-64media-nofpu: Delete file. * config/sh/t-mlib-sh5-compact: Delete file. * config/sh/t-mlib-sh5-compact-nofpu: Delete file. * config/sh/t-linux: Don't override MULTILIB_EXCEPTIONS. * doc/install.texi (Options specification): Add --with-multilib-list and --with-endian. From-SVN: r146278
2009-04-17 19:32:00 +02:00
if test "$sh_multilibs" = "default" ; then
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
case ${target} in
sh64-superh-linux* | \
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
sh[1234]*) sh_multilibs=${sh_cpu_target} ;;
sh64* | sh5*) sh_multilibs=m5-32media,m5-32media-nofpu,m5-compact,m5-compact-nofpu,m5-64media,m5-64media-nofpu ;;
sh-superh-*) sh_multilibs=m4,m4-single,m4-single-only,m4-nofpu ;;
sh*-*-linux*) sh_multilibs=m1,m3e,m4 ;;
sh*-*-netbsd*) sh_multilibs=m3,m3e,m4 ;;
Introduce sh2a support. 2004-07-29 Alexandre Oliva <aoliva@redhat.com> * config.gcc: Build multilibs for sh2a and sh2a-single by default. * config/sh/sh.h (SUPPORT_SH2A, SUPPORT_SH2A_SINGLE): Define by default. Split their tests out of the corresponding SH4 multilibs. * config/sh/t-sh (MULTILIB_MATCHES): Don't ever use SH4 or SH4a multilibs for SH2a. 2004-07-28 Alexandre Oliva <aoliva@redhat.com> * config.gcc: Handle sh2a multilibs and cpu selection. * config/sh/sh.h: Likewise. Handle sh2a command line flags. * config/sh/t-mlib-sh2a: New. * config/sh/t-mlib-sh2a-nofpu: New. * config/sh/t-mlib-sh2a-single: New. * config/sh/t-mlib-sh2a-single-only: New. 2004-07-09 Nick Clifton <nickc@redhat.com> Issue 43400 * config/sh/sh.h (DRIVER_SELF_SPECS): Issue an error message if -ml and -m2a are used together. 2004-03-23 DJ Delorie <dj@redhat.com> * config/sh/sh.c (sh_builtin_saveregs): Use the double code only when we have a double-sized FPU. 2004-02-24 Corinna Vinschen <vinschen@redhat.com> * config/sh/lib1funcs.asm (set_fpscr): Don't build if __SH2A_NOFPU__ is set. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Add cases for -msh2a-nofpu, -msh2a-single and -msh2a-single-only 2004-02-24 Corinna Vinschen <vinschen@redhat.com> * config/sh/crt1.asm: Don't generate FPU instructions if __SH2A_NOFPU__ is set. 2004-02-20 DJ Delorie <dj@delorie.com> * config/sh/sh.md (movsf_i, movsf_ie, movsf, ble, bge): Disable for sh2a-nofpu. 2004-02-20 Fred Fish <fnf@redhat.com>, Corinna Vinschen <vinschen@redhat.com> * config/sh/t-sh (MULTILIB_OPTIONS): Add 2a-nofpu. (MULTILIB_EXCEPTIONS): Don't build littel-endian on sh2a. 2004-02-18 DJ Delorie <dj@redhat.com> * config/sh/sh.c (broken_move): Add support for movi20. * config/sh/sh.h: Likewise. (SHIFT_COUNT_TRUNCATED): Set for sh2a. * config/sh/sh.md (udivsi3_sh2a): New. (udivsi3): Call it. (divsi3_sh2a): New. (divsi3): Call it. (mul_r): New. (ashlsi3_sh2a): New. (ashrsi3_sh2a): New. (lshrsi3_sh2a): New. (movsi_i): Disable for sh2a. (movsi_ie): Add movi20. (movsf_i, movsf_ie, movsf, ble, untyped_call): Explicitly enable sh2a, for -m2a-nofpu mode. 2004-02-13 DJ Delorie <dj@redhat.com> * config/sh/lib1funcs.asm: Handle double vs single better. * config/sh/sh.h: Likewise. 2004-02-09 DJ Delorie <dj@redhat.com> * config/sh/crt1.asm: Add support for sh2a. * config/sh/elf.h: Likewise. * config/sh/lib1funcs.asm: Likewise. * config/sh/sh.c: Likewise. * config/sh/sh.md: Likewise. * config/sh/sh.h: Likewise. * config/sh/t-sh: Likewise. From-SVN: r85286
2004-07-29 08:10:03 +02:00
*) sh_multilibs=m1,m2,m2e,m4,m4-single,m4-single-only,m2a,m2a-single ;;
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
esac
if test x$with_fp = xno; then
sh_multilibs="`echo $sh_multilibs|sed -e s/m4/sh4-nofpu/ -e s/,m4-[^,]*//g -e s/,m[23]e// -e s/m2a,m2a-single/m2a-nofpu/ -e s/m5-..m....,//g`"
fi
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
fi
superh.opt: New file. 2006-03-27 Andrew Stubbs <andrew.stubbs@st.com> J"orn Rennecke <joern.rennecke@st.com> * superh.opt: New file. * sh.c (boardtype, osruntime): Remove. * superh.h (SUBTARGET_OPTIONS): Remove. * config.gcc (sh*-superh-elf): Add sh/superh.opt to extra_options. * config.gcc (sh*-*-*): Don't use c-c ranges for tr. Quote sed arguments with ^ and/or []. * config.gcc (sh-*-*): Add quoting to account for quirk of Solaris /bin/sh. Replace == with = in enable_incomplete_targets test. * config/sh/superh.h (SUBTARGET_LINK_SPEC): Replace LITTLE_ENDIAN_BIT with MASK_LITTLE_ENDIAN. * config.gcc (sh*-superh-elf): Add sh/superh.h to tm_file. * config/sh/sh.opt: Added to some comments. * config/sh/superh.h: Removed some chaff. * config/sh/sh.opt: Add m4-[1234]00* options. * config/sh/sh.c (sh_handle_option): Likewise. * config/sh/t-sh (IC_EXTRA_PARTS, EXTRA_MULTILIB_PARTS): Define. (ic_invalidate_array_4-100.o): New rule. ($(T)libic_invalidate_array_4-100.a): Likewise. (ic_invalidate_array_4-200.o): Likewise. ($(T)libic_invalidate_array_4-200.a): Likewise. (ic_invalidate_array_4a.o): Likewise. ($(T)libic_invalidate_array_4a.a): Likewise. * config/sh/t-elf (EXTRA_MULTILIB_PARTS): Add IC_EXTRA_PARTS. * config/sh/embed-elf.h (LIBGCC_SPEC): Add clauses for m4-100*, m4-200*, and m4a*. * config/sh/crt1.asm: Merged in profiling code. * config/sh/superh.h (STARTFILE_SPEC): Override. * config/sh/t-superh: Override EXTRA_MULTILIB_PARTS. Add rules for $(T)crt1-mmu.o, $(T)gcrt1-mmu.o and $(T)gcrt1.o. * config.gcc (sh*-superh-elf): Add t-superh to tmake_file. * t-sh (MULTILIB_MATCHES): Add sh4-[1245]00* variants. * config/sh/t-superh: Removed now-redundant MULTILIB_OPTIONS / MULTILIB_DIRNAMES / MULTILIB_MATCHES settings. * sh.opt (mpretend-cmove): New option. * sh.h (OPERRIDE_OPTIONS): Switch it off if not TARGET_SH1. * sh.md (movsicc_t_false, movsicc_t_tru): New patterns. (movsicc): Add TARGET_PRETEND_CMOVE code. Co-Authored-By: J"orn Rennecke <joern.rennecke@st.com> From-SVN: r112421
2006-03-27 16:11:14 +02:00
target_cpu_default=SELECT_`echo ${sh_cpu_default}|tr abcdefghijklmnopqrstuvwxyz- ABCDEFGHIJKLMNOPQRSTUVWXYZ_`
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
tm_defines=${tm_defines}' SH_MULTILIB_CPU_DEFAULT=\"'`echo $sh_cpu_default|sed s/sh/m/`'\"'
configure.ac: Add new AC_SUBST for TM_ENDIAN_CONFIG... 2009-04-17 Andrew Stubbs <ams@codesourcery.com> * configure.ac: Add new AC_SUBST for TM_ENDIAN_CONFIG, TM_MULTILIB_CONFIG and TM_MULTILIB_EXCEPTIONS_CONFIG. (--with-multilib-list): Add default value. * configure: Regenerate. * Makefile.in (TM_ENDIAN_CONFIG): Define. (TM_MULTILIB_CONFIG, TM_MULTILIB_EXCEPTIONS_CONFIG): Define. * config.gcc (sh-*-*): Switch to using TM_ENDIAN_CONFIG, TM_MULTILIB_CONFIG, and TM_MULTILIB_EXCEPTIONS_CONFIG. Don't add default cpu to multilib list unnecessarily, but do enable the relevant compiler option.. Add support for --with-multilib-list=<blank> and --with-multilib-list=!<somelib> to supress unwanted multilibs. * config/sh/t-sh (DEFAULT_ENDIAN, OTHER_ENDIAN): New variables. (MULTILIB_ENDIAN, MULTILIB_CPUS): Delete variables. (MULTILIB_OPTIONS): Redefine using OTHER_ENDIAN and TM_MULTILIB_CONFIG. (MULTILIB_EXCEPTIONS): Add TM_MULTILIB_EXCEPTIONS_CONFIG. (MULTILIB_OSDIRNAMES): New variable. * config/sh/t-1e: Delete file. * config/sh/t-mlib-sh1: Delete file. * config/sh/t-mlib-sh2: Delete file. * config/sh/t-mlib-sh2a: Delete file. * config/sh/t-mlib-sh2a-nofpu: Delete file. * config/sh/t-mlib-sh2a-single: Delete file. * config/sh/t-mlib-sh2a-single-only: Delete file. * config/sh/t-mlib-sh2e: Delete file. * config/sh/t-mlib-sh3e: Delete file. * config/sh/t-mlib-sh4: Delete file. * config/sh/t-mlib-sh4-nofpu: Delete file. * config/sh/t-mlib-sh4-single: Delete file. * config/sh/t-mlib-sh4-single-only: Delete file. * config/sh/t-mlib-sh4a: Delete file. * config/sh/t-mlib-sh4a-nofpu: Delete file. * config/sh/t-mlib-sh4a-single: Delete file. * config/sh/t-mlib-sh4a-single-only: Delete file. * config/sh/t-mlib-sh4al: Delete file. * config/sh/t-mlib-sh5-32media: Delete file. * config/sh/t-mlib-sh5-32media-nofpu: Delete file. * config/sh/t-mlib-sh5-64media: Delete file. * config/sh/t-mlib-sh5-64media-nofpu: Delete file. * config/sh/t-mlib-sh5-compact: Delete file. * config/sh/t-mlib-sh5-compact-nofpu: Delete file. * config/sh/t-linux: Don't override MULTILIB_EXCEPTIONS. * doc/install.texi (Options specification): Add --with-multilib-list and --with-endian. From-SVN: r146278
2009-04-17 19:32:00 +02:00
tm_defines="$tm_defines SUPPORT_`echo $sh_cpu_default | sed 's/^m/sh/' | tr abcdefghijklmnopqrstuvwxyz- ABCDEFGHIJKLMNOPQRSTUVWXYZ_`=1"
sh_multilibs=`echo $sh_multilibs | sed -e 's/,/ /g' -e 's/^sh/m/i' -e 's/ sh/ m/gi' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ_ abcdefghijklmnopqrstuvwxyz-`
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
for sh_multilib in ${sh_multilibs}; do
case ${sh_multilib} in
configure.ac: Add new AC_SUBST for TM_ENDIAN_CONFIG... 2009-04-17 Andrew Stubbs <ams@codesourcery.com> * configure.ac: Add new AC_SUBST for TM_ENDIAN_CONFIG, TM_MULTILIB_CONFIG and TM_MULTILIB_EXCEPTIONS_CONFIG. (--with-multilib-list): Add default value. * configure: Regenerate. * Makefile.in (TM_ENDIAN_CONFIG): Define. (TM_MULTILIB_CONFIG, TM_MULTILIB_EXCEPTIONS_CONFIG): Define. * config.gcc (sh-*-*): Switch to using TM_ENDIAN_CONFIG, TM_MULTILIB_CONFIG, and TM_MULTILIB_EXCEPTIONS_CONFIG. Don't add default cpu to multilib list unnecessarily, but do enable the relevant compiler option.. Add support for --with-multilib-list=<blank> and --with-multilib-list=!<somelib> to supress unwanted multilibs. * config/sh/t-sh (DEFAULT_ENDIAN, OTHER_ENDIAN): New variables. (MULTILIB_ENDIAN, MULTILIB_CPUS): Delete variables. (MULTILIB_OPTIONS): Redefine using OTHER_ENDIAN and TM_MULTILIB_CONFIG. (MULTILIB_EXCEPTIONS): Add TM_MULTILIB_EXCEPTIONS_CONFIG. (MULTILIB_OSDIRNAMES): New variable. * config/sh/t-1e: Delete file. * config/sh/t-mlib-sh1: Delete file. * config/sh/t-mlib-sh2: Delete file. * config/sh/t-mlib-sh2a: Delete file. * config/sh/t-mlib-sh2a-nofpu: Delete file. * config/sh/t-mlib-sh2a-single: Delete file. * config/sh/t-mlib-sh2a-single-only: Delete file. * config/sh/t-mlib-sh2e: Delete file. * config/sh/t-mlib-sh3e: Delete file. * config/sh/t-mlib-sh4: Delete file. * config/sh/t-mlib-sh4-nofpu: Delete file. * config/sh/t-mlib-sh4-single: Delete file. * config/sh/t-mlib-sh4-single-only: Delete file. * config/sh/t-mlib-sh4a: Delete file. * config/sh/t-mlib-sh4a-nofpu: Delete file. * config/sh/t-mlib-sh4a-single: Delete file. * config/sh/t-mlib-sh4a-single-only: Delete file. * config/sh/t-mlib-sh4al: Delete file. * config/sh/t-mlib-sh5-32media: Delete file. * config/sh/t-mlib-sh5-32media-nofpu: Delete file. * config/sh/t-mlib-sh5-64media: Delete file. * config/sh/t-mlib-sh5-64media-nofpu: Delete file. * config/sh/t-mlib-sh5-compact: Delete file. * config/sh/t-mlib-sh5-compact-nofpu: Delete file. * config/sh/t-linux: Don't override MULTILIB_EXCEPTIONS. * doc/install.texi (Options specification): Add --with-multilib-list and --with-endian. From-SVN: r146278
2009-04-17 19:32:00 +02:00
m1 | m2 | m2e | m3 | m3e | \
m4 | m4-single | m4-single-only | m4-nofpu | m4-300 |\
m4a | m4a-single | m4a-single-only | m4a-nofpu | m4al | \
m2a | m2a-single | m2a-single-only | m2a-nofpu | \
m5-64media | m5-64media-nofpu | \
m5-32media | m5-32media-nofpu | \
m5-compact | m5-compact-nofpu)
# TM_MULTILIB_CONFIG is used by t-sh for the non-endian multilib definition
# It is passed to MULTIILIB_OPTIONS verbatim.
TM_MULTILIB_CONFIG="${TM_MULTILIB_CONFIG}/${sh_multilib}"
tm_defines="$tm_defines SUPPORT_`echo $sh_multilib | sed 's/^m/sh/' | tr abcdefghijklmnopqrstuvwxyz- ABCDEFGHIJKLMNOPQRSTUVWXYZ_`=1"
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
;;
configure.ac: Add new AC_SUBST for TM_ENDIAN_CONFIG... 2009-04-17 Andrew Stubbs <ams@codesourcery.com> * configure.ac: Add new AC_SUBST for TM_ENDIAN_CONFIG, TM_MULTILIB_CONFIG and TM_MULTILIB_EXCEPTIONS_CONFIG. (--with-multilib-list): Add default value. * configure: Regenerate. * Makefile.in (TM_ENDIAN_CONFIG): Define. (TM_MULTILIB_CONFIG, TM_MULTILIB_EXCEPTIONS_CONFIG): Define. * config.gcc (sh-*-*): Switch to using TM_ENDIAN_CONFIG, TM_MULTILIB_CONFIG, and TM_MULTILIB_EXCEPTIONS_CONFIG. Don't add default cpu to multilib list unnecessarily, but do enable the relevant compiler option.. Add support for --with-multilib-list=<blank> and --with-multilib-list=!<somelib> to supress unwanted multilibs. * config/sh/t-sh (DEFAULT_ENDIAN, OTHER_ENDIAN): New variables. (MULTILIB_ENDIAN, MULTILIB_CPUS): Delete variables. (MULTILIB_OPTIONS): Redefine using OTHER_ENDIAN and TM_MULTILIB_CONFIG. (MULTILIB_EXCEPTIONS): Add TM_MULTILIB_EXCEPTIONS_CONFIG. (MULTILIB_OSDIRNAMES): New variable. * config/sh/t-1e: Delete file. * config/sh/t-mlib-sh1: Delete file. * config/sh/t-mlib-sh2: Delete file. * config/sh/t-mlib-sh2a: Delete file. * config/sh/t-mlib-sh2a-nofpu: Delete file. * config/sh/t-mlib-sh2a-single: Delete file. * config/sh/t-mlib-sh2a-single-only: Delete file. * config/sh/t-mlib-sh2e: Delete file. * config/sh/t-mlib-sh3e: Delete file. * config/sh/t-mlib-sh4: Delete file. * config/sh/t-mlib-sh4-nofpu: Delete file. * config/sh/t-mlib-sh4-single: Delete file. * config/sh/t-mlib-sh4-single-only: Delete file. * config/sh/t-mlib-sh4a: Delete file. * config/sh/t-mlib-sh4a-nofpu: Delete file. * config/sh/t-mlib-sh4a-single: Delete file. * config/sh/t-mlib-sh4a-single-only: Delete file. * config/sh/t-mlib-sh4al: Delete file. * config/sh/t-mlib-sh5-32media: Delete file. * config/sh/t-mlib-sh5-32media-nofpu: Delete file. * config/sh/t-mlib-sh5-64media: Delete file. * config/sh/t-mlib-sh5-64media-nofpu: Delete file. * config/sh/t-mlib-sh5-compact: Delete file. * config/sh/t-mlib-sh5-compact-nofpu: Delete file. * config/sh/t-linux: Don't override MULTILIB_EXCEPTIONS. * doc/install.texi (Options specification): Add --with-multilib-list and --with-endian. From-SVN: r146278
2009-04-17 19:32:00 +02:00
\!*) # TM_MULTILIB_EXCEPTIONS_CONFIG is used by t-sh
# It is passed the MULTILIB_EXCEPTIONS verbatim.
TM_MULTILIB_EXCEPTIONS_CONFIG="${TM_MULTILIB_EXCEPTIONS_CONFIG} `echo $sh_multilib | sed 's/^!//'`" ;;
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
*)
echo "with_multilib_list=${sh_multilib} not supported."
exit 1
;;
esac
done
configure.ac: Add new AC_SUBST for TM_ENDIAN_CONFIG... 2009-04-17 Andrew Stubbs <ams@codesourcery.com> * configure.ac: Add new AC_SUBST for TM_ENDIAN_CONFIG, TM_MULTILIB_CONFIG and TM_MULTILIB_EXCEPTIONS_CONFIG. (--with-multilib-list): Add default value. * configure: Regenerate. * Makefile.in (TM_ENDIAN_CONFIG): Define. (TM_MULTILIB_CONFIG, TM_MULTILIB_EXCEPTIONS_CONFIG): Define. * config.gcc (sh-*-*): Switch to using TM_ENDIAN_CONFIG, TM_MULTILIB_CONFIG, and TM_MULTILIB_EXCEPTIONS_CONFIG. Don't add default cpu to multilib list unnecessarily, but do enable the relevant compiler option.. Add support for --with-multilib-list=<blank> and --with-multilib-list=!<somelib> to supress unwanted multilibs. * config/sh/t-sh (DEFAULT_ENDIAN, OTHER_ENDIAN): New variables. (MULTILIB_ENDIAN, MULTILIB_CPUS): Delete variables. (MULTILIB_OPTIONS): Redefine using OTHER_ENDIAN and TM_MULTILIB_CONFIG. (MULTILIB_EXCEPTIONS): Add TM_MULTILIB_EXCEPTIONS_CONFIG. (MULTILIB_OSDIRNAMES): New variable. * config/sh/t-1e: Delete file. * config/sh/t-mlib-sh1: Delete file. * config/sh/t-mlib-sh2: Delete file. * config/sh/t-mlib-sh2a: Delete file. * config/sh/t-mlib-sh2a-nofpu: Delete file. * config/sh/t-mlib-sh2a-single: Delete file. * config/sh/t-mlib-sh2a-single-only: Delete file. * config/sh/t-mlib-sh2e: Delete file. * config/sh/t-mlib-sh3e: Delete file. * config/sh/t-mlib-sh4: Delete file. * config/sh/t-mlib-sh4-nofpu: Delete file. * config/sh/t-mlib-sh4-single: Delete file. * config/sh/t-mlib-sh4-single-only: Delete file. * config/sh/t-mlib-sh4a: Delete file. * config/sh/t-mlib-sh4a-nofpu: Delete file. * config/sh/t-mlib-sh4a-single: Delete file. * config/sh/t-mlib-sh4a-single-only: Delete file. * config/sh/t-mlib-sh4al: Delete file. * config/sh/t-mlib-sh5-32media: Delete file. * config/sh/t-mlib-sh5-32media-nofpu: Delete file. * config/sh/t-mlib-sh5-64media: Delete file. * config/sh/t-mlib-sh5-64media-nofpu: Delete file. * config/sh/t-mlib-sh5-compact: Delete file. * config/sh/t-mlib-sh5-compact-nofpu: Delete file. * config/sh/t-linux: Don't override MULTILIB_EXCEPTIONS. * doc/install.texi (Options specification): Add --with-multilib-list and --with-endian. From-SVN: r146278
2009-04-17 19:32:00 +02:00
TM_MULTILIB_CONFIG=`echo $TM_MULTILIB_CONFIG | sed 's:^/::'`
superh.opt: New file. 2006-03-27 Andrew Stubbs <andrew.stubbs@st.com> J"orn Rennecke <joern.rennecke@st.com> * superh.opt: New file. * sh.c (boardtype, osruntime): Remove. * superh.h (SUBTARGET_OPTIONS): Remove. * config.gcc (sh*-superh-elf): Add sh/superh.opt to extra_options. * config.gcc (sh*-*-*): Don't use c-c ranges for tr. Quote sed arguments with ^ and/or []. * config.gcc (sh-*-*): Add quoting to account for quirk of Solaris /bin/sh. Replace == with = in enable_incomplete_targets test. * config/sh/superh.h (SUBTARGET_LINK_SPEC): Replace LITTLE_ENDIAN_BIT with MASK_LITTLE_ENDIAN. * config.gcc (sh*-superh-elf): Add sh/superh.h to tm_file. * config/sh/sh.opt: Added to some comments. * config/sh/superh.h: Removed some chaff. * config/sh/sh.opt: Add m4-[1234]00* options. * config/sh/sh.c (sh_handle_option): Likewise. * config/sh/t-sh (IC_EXTRA_PARTS, EXTRA_MULTILIB_PARTS): Define. (ic_invalidate_array_4-100.o): New rule. ($(T)libic_invalidate_array_4-100.a): Likewise. (ic_invalidate_array_4-200.o): Likewise. ($(T)libic_invalidate_array_4-200.a): Likewise. (ic_invalidate_array_4a.o): Likewise. ($(T)libic_invalidate_array_4a.a): Likewise. * config/sh/t-elf (EXTRA_MULTILIB_PARTS): Add IC_EXTRA_PARTS. * config/sh/embed-elf.h (LIBGCC_SPEC): Add clauses for m4-100*, m4-200*, and m4a*. * config/sh/crt1.asm: Merged in profiling code. * config/sh/superh.h (STARTFILE_SPEC): Override. * config/sh/t-superh: Override EXTRA_MULTILIB_PARTS. Add rules for $(T)crt1-mmu.o, $(T)gcrt1-mmu.o and $(T)gcrt1.o. * config.gcc (sh*-superh-elf): Add t-superh to tmake_file. * t-sh (MULTILIB_MATCHES): Add sh4-[1245]00* variants. * config/sh/t-superh: Removed now-redundant MULTILIB_OPTIONS / MULTILIB_DIRNAMES / MULTILIB_MATCHES settings. * sh.opt (mpretend-cmove): New option. * sh.h (OPERRIDE_OPTIONS): Switch it off if not TARGET_SH1. * sh.md (movsicc_t_false, movsicc_t_tru): New patterns. (movsicc): Add TARGET_PRETEND_CMOVE code. Co-Authored-By: J"orn Rennecke <joern.rennecke@st.com> From-SVN: r112421
2006-03-27 16:11:14 +02:00
if test x${enable_incomplete_targets} = xyes ; then
config.gcc (sh*-*-*): Define SUPPORT_* macros to 1. * config.gcc (sh*-*-*): Define SUPPORT_* macros to 1. * config/sh/sh.h: Update mask names throughout. (target_flags, ISIZE_BIT, DALIGN_BIT, SH1_BIT, SH2_BIT, SH3_BIT) (SH_E_BIT, HARD_SH4_BIT, FPU_SINGLE_BIT, SH4_BIT, SH4A_BIT, FMOVD_BIT) (SH5_BIT, SPACE_BIT, BIGTABLE_BIT, RELAX_BIT, USERMODE_BIT) (HITACHI_BIT, NOMACSAVE_BIT, PREFERGOT_BIT, PADSTRUCT_BIT) (LITTLE_ENDIAN_BIT, IEEE_BIT, SAVE_ALL_TR_BIT, HARD_SH2A_BIT) (HARD_SH2A_DOUBLE_BIT, INDEXED_ADDRESS_BIT, PT_FIXED_BIT) (INVALID_SYMBOLS_BIT, ADJUST_UNROLL_BIT, TARGET_DUMPISIZE) (TARGET_ALIGN_DOUBLE, TARGET_SH1, TARGET_SH2, TARGET_SH3) (TARGET_HARD_SH4, TARGET_FPU_SINGLE, TARGET_SH5, TARGET_FMOVD) (TARGET_IEEE, TARGET_SMALLCODE, TARGET_BIGTABLE, TARGET_RELAX) (TARGET_HITACHI, TARGET_NOMACSAVE, TARGET_PADSTRUCT) (TARGET_LITTLE_ENDIAN, TARGET_USERMODE, TARGET_PREFERGOT) (TARGET_SAVE_ALL_TARGET_REGS, TARGET_ALLOW_INDEXED_ADDRESS) (TARGET_PT_FIXED, TARGET_INVALID_SYMBOLS, TARGET_ADJUST_UNROLL) (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E) (TARGET_SWITCH_SH2A, TARGET_SWITCH_SH2A_SINGLE_ONLY) (TARGET_SWITCH_SH2A_SINGLE, TARGET_SWITCH_SH2A_NOFPU) (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E, TARGET_SWITCH_SH4_SINGLE_ONLY) (TARGET_SWITCH_SH4_SINGLE, TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4) (TARGET_SWITCH_SH4A, TARGET_SWITCH_SH4A_SINGLE_ONLY) (TARGET_SWITCH_SH4A_SINGLE, TARGET_SWITCH_SH4A_NOFPU) (TARGET_SWITCH_SH4AL, TARGET_SWITCH_SH5_64MEDIA) (TARGET_SWITCH_SH5_64MEDIA_NOFPU, TARGET_SWITCHES_SH5_32MEDIA) (TARGET_SWITCHES_SH5_32MEDIA_NOFPU, TARGET_SWITCH_SH5_32_ANY_EXTRA) (TARGET_SWITCH_SH5_MEDIA_ANY_EXTRA, TARGET_SWITCHES) (SUBTARGET_SWITCHES): Delete. (TARGET_SH2E, TARGET_SH2A, TARGET_SH2A_SINGLE, TARGET_SH2A_DOUBLE) (TARGET_SH3E, TARGET_CACHE32, TARGET_SUPERSCALAR, TARGET_HARVARD) (TARGET_FPU_DOUBLE, TARGET_SH4A_ARCH, TARGET_SHMEDIA32) (TARGET_SHMEDIA64): Redefine using other TARGET_* macros. (TARGET_SH4): Undefine options.h definition and check MASK_SH1 as well. (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4, SUPPORT_SH4_SINGLE) (SUPPORT_SH2A, SUPPORT_SH2A_SINGLE): Make numeric. (SUPPORT_SH2): Define to 1 if SUPPORT_SH1. (SUPPORT_SH3): Likewise SUPPORT_SH2. (SUPPORT_SH4_NOFPU): Likewise SUPPORT_SH3. (SUPPORT_SH4A_NOFPU, SUPPORT_SH4AL, SUPPORT_SH2A_NOFPU): Likewise SUPPORT_SH4_NOFPU. (SUPPORT_SH3E): Likewise SUPPORT_SH2E. (SUPPORT_SH4_SINGLE_ONLY, SUPPORT_SH4A_SINGLE_ONLY) (SUPPORT_SH2A_SINGLE_ONLY): Likewise SUPPORT_SH3E. (SUPPORT_SH4A): Likewise SUPPORT_SH4. (SUPPORT_SH4A_SINGLE): Likewise SUPPORT_SH4_SINGLE. (SUPPORT_SH5_32MEDIA): Likewise SUPPORT_SH5_COMPACT. (SUPPORT_SH5_32MEDIA_NOFPU): Likewise SUPPORT_SH5_COMPACT_NOFPU. (SUPPORT_ANY_SH5_32MEDIA, SUPPORT_ANY_SH5_64MEDIA) (SUPPORT_ANY_SH5): New macros. (TARGET_NONE): Replace with... (MASK_ARCH): ...this new macro. * config/sh/elf.h: Update mask names * config/sh/linux.h: Likewise. * config/sh/little.h: Likewise. * config/sh/netbsd-elf.h: Likewise. * config/sh/symbian-pre.h: Likewise. * config/sh/sh.c (sh_handle_option): New function. (TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Override defaults. (calc_live_regs): Use MASK_FPU_SINGLE instead of FPU_SINGLE_BIT. (sh_target_switches, target_switches): Delete. (sh_pch_valid_p): Check for specific differences in the target_flags settings. (sh_init_cumulative_args): Use MASK_HITACHI instead of HITACHI_BIT. * config/sh/sh.opt: New file. From-SVN: r99916
2005-05-18 20:43:53 +02:00
tm_defines="$tm_defines SUPPORT_SH1=1 SUPPORT_SH2E=1 SUPPORT_SH4=1 SUPPORT_SH4_SINGLE=1 SUPPORT_SH2A=1 SUPPORT_SH2A_SINGLE=1 SUPPORT_SH5_32MEDIA=1 SUPPORT_SH5_32MEDIA_NOFPU=1 SUPPORT_SH5_64MEDIA=1 SUPPORT_SH5_64MEDIA_NOFPU=1"
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
fi
tm_file="$tm_file ./sysroot-suffix.h"
tmake_file="$tmake_file t-sysroot-suffix"
Contribute sh64-elf. 2002-02-09 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (TARGET_CANNOT_MODIFY_JUMPS_P): Define to... (sh_cannot_modify_jumps_p): New function. 2002-02-05 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (TARGET_MS_BITFIELD_LAYOUT_P): Define to... (sh_ms_bitfield_layout_p): New function. 2002-02-04 Alexandre Oliva <aoliva@redhat.com> Zack Weinberg <zack@codesourcery.com> * config/sh/sh.h (TRAMPOLINE_ADJUST_ADDRESS): Use expand_simple_binop instead of expand_binop. 2002-02-03 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (OVERRIDE_OPTIONS) [! TARGET_SH5]: Disable use of .quad and .uaquad. * config/sh/sh.c (TARGET_ASM_UNALIGNED_DI_OP, TARGET_ASM_ALIGNED_DI_OP): Add comment pointing to the above. 2002-01-24 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (movdi_const, movdi_const_32bit, movdi_const_16bit): Make sure all CONSTs have modes. (sym2PIC): Ditto, but by adjusting all callers. * config/sh/sh.c (calc_live_regs) [TARGET_SHCOMPACT]: Set pr_live if the prologue calls the SHmedia argument decoder or register saver. 2002-01-24 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (TARGET_ASM_UNALIGNED_DI_OP): Define. (TARGET_ASM_ALIGNED_DI_OP): Likewise. (sh_expand_epilogue): Don't emit USE of return target register. (prepare_move_operands): Legitimize DImode PIC addresses. (sh_media_register_for_return): Skip tr0, used to initialize the PIC register. (sh_expand_prologue): Remove explicit USE of return register. (nonpic_symbol_mentioned_p): PC is non-PIC. Don't recurse in CONST_DOUBLEs. UNSPEC_GOTPLT is PIC. * config/sh/sh.h (ASM_OUTPUT_DOUBLE_INT): Removed, obsolete. (OVERRIDE_OPTIONS): Don't disable PIC on SH5. (EXTRA_CONSTRAINT_S): Use MOVI_SHORI_BASE_OPERAND_P instead of EXTRA_CONSTRAINT_T. (GOT_ENTRY_P, GOTPLT_ENTRY_P, GOTOFF_P, PIC_ADDR_P): New. (MOVI_SHORI_BASE_OPERAND_P): New. (NON_PIC_REFERENCE_P, PIC_REFERENCE_P): New. (EXTRA_CONSTRAINT_T): Define in terms of them. (OUTPUT_ADDR_CONST_EXTRA): Handle UNSPEC_GOTPLT. * config/sh/sh.md (movsi_media, movsi_media_nofpu, movdi_media, movdi_media_nofpu): Add SIBCALL_REGS class to alternatives supporting TARGET_REGS. (UNSPEC_GOTPLT): New constant. (movdi split): Move incrementing of LABEL_NUSES... (movdi_const, movdi_const_32bit): Here. Use MOVI_SHORI_BASE_OPERAND_P instead of EXTRA_CONSTRAINT_T. (movdi_const_16bit): New. (call, call_value) [flag_pic]: Use GOTPLT. (call_pop, call_value_pop): New expands. (call_pop_compact, call_pop_rettramp): New insns. (call_value_pop_compact, call_value_pop_rettramp): New insns. (sibcall) [flag_pic]: Use GOT. (builtint_setjmp_receiver): Remove bogus, unused expand. (GOTaddr2picreg): Implement for SHcompact and SHmedia. (*pt, *ptb, ptrel): New insns. (sym2GOT): Handle DImode GOT. (sym2GOTPLT, symGOTPLT2reg): New expands. (sym2PIC): New expand. (shcompact_return_tramp): Use GOTPLT to return trampoline. (shcompact_return_tramp_i): Use return register explicitly. * config/sh/sh.h (OVERRIDE_OPTIONS) [TARGET_SHMEDIA]: Don't disable flag_reorder_blocks. 2002-01-19 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (sibcall_compact): Reorder return, uses and clobbers, for clarity. (sibcall_epilogue) [TARGET_SHCOMPACT]: Mark saving and restoring of r0 in macl as MAYBE_DEAD. 2002-01-18 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (LONG_DOUBLE_TYPE_SIZE): Define. * config/sh/sh.md (movv4sf_i, movv16sf_i): Fix uses of alter_subreg all over. (jump) [TARGET_SHMEDIA]: FAIL to create new jumps after reload, instead of emitting instructions that would require reloading. (casesi_load_media): Add missing modes. 2001-11-09 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (sh_expand_prologue): Mark the PIC register as used if the argument decoder is called. 2001-08-28 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (udivsi3, divsi3): Load libcall symbol name in Pmode, then extend it to DImode if necessary. 2001-08-28 Stephen Clarke <Stephen.Clarke@st.com> * config/sh/sh.h (LEGITIMATE_CONSTANT_P): Don't accept DFmode constants in FPU-enabled SHmedia, let them be loaded from memory. 2001-08-28 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (cmpeqdi_media, cmpgtdi_media, cmpgtudi_media): Adjust whitespace in assembly output templates. 2001-08-28 Stephen Clarke <Stephen.Clarke@st.com> * config/sh/sh.md (movdicc_false, movdicc_true, movdicc): Adjust mode of if_then_else. 2001-08-04 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh64.h (CPP_DEFAULT_CPU_SPEC): Override definition in sh.h. 2001-07-26 Andrew Haley <aph@cambridge.redhat.com> Joern Rennecke <amylaar@redhat.com> * config/sh/sh64.h (CPP_DEFAULT_CPU_SPEC): New. (SUBTARGET_CPP_PTR_SPEC): New. (SUBTARGET_CPP_SPEC): Remove. 2001-07-06 Chandrakala Chavva <cchavva@redhat.com> * config/sh/sh.md (movsf_media_nofpu+1, movdf_media_nofpu+1): Fix typo in previous checkin. 2001-07-11 Chandrakala Chavva <cchavva@redhat.com> * config/sh/sh.h (MODES_TIEABLE_P): Fix redact indentations. 2001-07-10 Chandrakala Chavva <cchavva@cygnus.com> Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (MODES_TIEABLE_P): Don't tie modes wider than what single FP register can hold for SHmedia target. 2001-07-06 Chandrakala Chavva <cchavva@redhat.com> Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (movsf_media_nofpu+1, movdf_media_nofpu+1): Do not split into SUBREG. 2001-06-14 Alexandre Oliva <aoliva@redhat.com> * config/sh/ushmedia.h, config/sh/sshmedia.h: Updated signatures and added new functions as specified in SH5 ABI r9. 2001-06-04 Alexandre Oliva <aoliva@redhat.com> * config/sh/lib1funcs.asm (GCC_nested_trampoline): Align to an 8-byte boundary. 2001-06-03 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (dump_table): Add const0_rtx in calls of gen_consttable_4 and gen_consttable_8. Emit multiple labels and consttable_window_ends. 2001-06-03 Graham Stott <grahams@redhat,com> * config/sh/sh.md (movdi split): Remove unused variable last_insn. 2001-05-16 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (print_operand): Handle floating-point pair, vector and matrix registers. * config/sh/sh.h (REGISTER_MOVE_COST): Take floating-pointer vector modes into account. * config/sh/sh.md (movv2sf): Split move between registers into movdf. (movv4sf, movv16sf): Introduce insns that get split only after reload. * config/sh/shmedia.h: Fix Copyright dates. * config/sh/ushmedia.h: Likewise. Move loop counter declarations into conditionals that uses them. (sh_media_FVADD_S, sh_media_FVSUB_S): Fix off-by-one error in loop boundary. * config/sh/sshmedia.h: Fix Copyright dates. (sh_media_PUTCFG): Fix constraints. 2001-05-12 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (TARGET_PTRMEMFUNC_VBIT_LOCATION): Define to ptrmemfunc_vbit_in_delta for SH5. 2001-05-08 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (TARGET_SWITCHES): Document -m5-*. * invoke.texi: Likewise. 2001-04-14 Alexandre Oliva <aoliva@redhat.com> * config/sh/lib1funcs.asm (GCC_push_shmedia_regs, GCC_push_shmedia_regs_nofpu, GCC_pop_shmedia_regs, GCC_pop_shmedia_regs_nofpu): New global symbols. * config/sh/t-sh64 (LIB1ASMFUNCS): Add them. * config/sh/sh.h (SHMEDIA_REGS_STACK_ADJUST): New macro. * config/sh/sh.c (calc_live_regs): Account for PR's saving in compact function with nonlocal labels. (sh_expand_prologue) [SHcompact]: Push SHmedia regs if needed. (sh_expand_epilogue) [SHcompact]: Pop them when appropriate. (initial_elimination_offset): Account for their stack space. * config/sh/sh.md (shmedia_save_restore_regs_compact): New insn. * config/sh/sh.md (movsi_media, movsi_media_nofpu, movqi_media, movhi_media, movdi_media, movdi_media_nofpu, movdf_media, movdf_media_nofpu, movsf_media, movsf_media_nofpu): Require at least one of the operands to be a register. (movv2sf): Likewise. Renamed to movv2sf_i. (movdi, movdf, movv2sf, movv4sf, movv16sf, movsf): prepare_move_operands() before emitting SHmedia insns. 2001-04-03 Alexandre Oliva <aoliva@redhat.com> * config/sh/crti.asm (init, fini) [__SH5__ && ! __SHMEDIA__]: Don't save nor initialize r12. Don't mis-align the stack. Pad the code with a nop. * config/sh/crti.asm: Don't restore r12. Don't mis-align the stack. 2001-03-13 Alexandre Oliva <aoliva@redhat.com> * gcc/longlong.h (__umulsidi3, count_leading_zeros) [__SHMEDIA__]: Implement. 2001-03-11 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md: Set latency of `pt' closer to reality. (movsi_media, movsi_media_nofpu, movdi_media, movdi_media_nofpu, movdf_media, movdf_media_nofpu, movsf_media, movsf_media_nofpu): Set move, load and store type attributes. * config/sh/sh.c (sh_loop_align) [TARGET_SH5]: Set to 3. * config/sh/sh.h (OVERRIDE_OPTIONS) [TARGET_SH5]: Disable profiling. * config/sh/sh.h (PROMOTE_MODE): Sign-extend SImode to DImode. * config/sh/sh-protos.h (sh_media_register_for_return): Declare. * config/sh/sh.c (sh_media_register_for_return): New function. (sh_expand_prologue) [TARGET_SHMEDIA]: Copy r18 to an available branch-target register. (sh_expand_epilogue) [TARGET_SHMEDIA]: Explicitly USE it. * config/sh/sh.md (return_media_i): Use any call-clobbered branch-target register. (return_media): If r18 wasn't copied in the prologue, copy it here. * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE) [TARGET_SHMEDIA]: Clear class FP0_REGS. * config/sh/sh64.h (LINK_SPEC): Removed incorrect default copied from elf.h. 2001-03-08 DJ Delorie <dj@redhat.com> * config/sh/sh.h (OVERRIDE_OPTIONS): Disable relaxing for SHMEDIA. 2001-02-09 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (sibcall_compact): Set fp_mode to single. 2001-02-07 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (INT_ASM_OP) [SHMEDIA64]: Use `.quad'. 2001-02-03 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (INIT_CUMULATIVE_ARGS): Compute size of BLKmode return value correctly for call_cookie. 2001-02-01 Alexandre Oliva <aoliva@redhat.com> * config/sh/crt1.asm (start): Modified so as to call ___setup_argv_and_call_main. 2001-01-26 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (FUNCTION_ARG_ADVANCE): Don't count stack_regs in SHmedia mode. 2001-01-20 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (STRIP_DATALABEL_ENCODING): New macro. (STRIP_NAME_ENCODING): Use it. (ASM_OUTPUT_LABELREF): Likewise. Don't call assemble_name(). 2001-01-19 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (sgeu) [! SHMEDIA]: Fix invocation of prepare_scc_operands(). * config/sh/sh.h (SH_DATALABEL_ENCODING): Change to "#"... (DATALABEL_SYMNAME_P): ... so that we don't need memcmp here. 2001-01-17 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (STRIP_NAME_ENCODING): Strip leading `*'. 2001-01-13 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (shcompact_incoming_args): Use R0_REG. * config/sh/sh.md (R7_REG, R8_REG, R9_REG): Define as constants, used in shcompact_incoming_args. * config/sh/sh.c (sh_expand_epilogue): Fix thinko in previous change. * config/sh/crt1.asm (start) [SH5]: Switch to single-precision mode. * config/sh/lib1funcs.asm (sdivsi3_i4, udivsi3_i4, set_fpscr): Adjust accordingly. * config/sh/sh.c (sh_expand_prologue, sh_expand_epilogue): Simplify. Adjust. Add sanity check. * config/sh/sh.h (TARGET_SWITCHES) [5-compact]: Set FPU_SINGLE_BIT. * config/sh/sh.md (udivsi3_i4_single, divsi3_i4_single): Match TARGET_SHCOMPACT. (udivsi3, divsi3): Use them. (force_mode_for_call): New insn. (call, call_value, sibcall_value): Emit it before SHcompact calls. 2001-01-11 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (call, call_value, sibcall): Make sure the call cookie is non-NULL before taking its value. 2001-01-10 Alexandre Oliva <aoliva@redhat.com> * config.gcc (sh64): Set target_requires_64bit_host_wide_int. 2001-01-09 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (shcompact_incoming_args): Set argument memory block. * config/sh/sh.h (STATIC_CHAIN_REGNUM) [SH5]: Use r1. * config/sh/sh.c (sh_expand_prologue) [SH5]: Use r0 as temporary for stack adjusts. Use MACL and MACH to pass arguments to shcompact_incoming_args. * config/sh/sh.md (shcompact_incoming_args): Adjust. Don't clobber r1. * config/sh/lib1funcs.asm (shcompact_incoming_args): Likewise. (nested_trampoline): Load static chain address into r1. * config/sh/sh.md (movdi_media splits): Fix sign-extension. 2001-01-07 Alexandre Oliva <aoliva@redhat.com * config/sh/sh.c (fpul_operand) [SHMEDIA]: Just call fp_arith_reg_operand(). 2001-01-06 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (casesi): Sign-extend the first two operands, and use signed compares for them. * config/sh/sh.c (dump_table): Don't emit 8-byte constants after 4-byte ones. Instead, inter-leave them, maintaining the 8-byte ones properly aligned. (find_barrier): Account for extra alignment needed for 8-byte wide constants. (machine_dependent_reorg): Require a label for the second 4-byte constant after an 8-byte one. * config/sh/lib1funcs.asm (sdivsi3): Fix typo in yesterday's change. 2001-01-05 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (machine_dependent_reorg) [SHCOMPACT]: Reset last_float when switching float modes. * config/sh/sh.md (movdf) [SH5]: Don't use stack-pointer auto-increment for general-purpose registers. * config/sh/lib1funcs.asm (sdivsi3) [SHMEDIA]: Sign-extend the result. * config/sh/sh.c (sh_expand_prologue) [SH5]: Use r1 as temporary for stack adjust. * config/sh/sh.c (sh_builtin_saveregs): Support using all registers for varargs. 2001-01-01 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (FUNCTION_ARG_ADVANCE): Simplify. * config/sh/sh.h (CALL_COOKIE_STACKSEQ, CALL_COOKIE_STACKSEQ_SHIFT, CALL_COOKIE_STACKSEQ_GET): New macros. (CALL_COOKIE_INT_REG_SHIFT): Adjust. (FUNCTION_ARG_ADVANCE): Use SHCOMPACT_FORCE_ON_STACK. Adjust call_cookie accordingly. (FUNCTION_ARG): Test SHCOMPACT_FORCE_ON_STACK. (SHCOMPACT_BYREF): Likewise. (SHCOMPACT_FORCE_ON_STACK): New macro. * config/sh/sh.c (sh_expand_prologue): Use new call_cookie format. (sh_builtin_saveregs): Likewise. * config/sh/lib1funcs.asm (shcompact_call_trampoline, shcompact_incoming_args): Use new shift values. Support sequences of consecutive and non-consecutive pushes/pops. * config/sh/sh.md (return): Don't explicitly use PR_REG. 2001-01-05 Hans-Peter Nilsson <hpn@cygnus.com> * config/sh/sh.h (TEXT_SECTION): Define. * config/sh/elf.h (ASM_FILE_START): Output TEXT_SECTION_ASM_OP. 2001-01-05 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (INIT_CUMULATIVE_LIBCALL_ARGS): New macro. * config/sh/sh.h (BASE_RETURN_VALUE_REG): Use FP regs for return values on FPU-enabled SHmedia. (FUNCTION_VALUE_REGNO_P): Mark FIRST_FP_RET_REG as used on FPU-enabled SHmedia. (INIT_CUMULATIVE_ARGS): Set up return trampoline only if value is returned in a non-FP reg and is not returned by reference. * config/sh/sh.md (shcompact_return_tramp_i): Change type to jump_ind. 2000-01-04 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (SH_MIN_ALIGN_FOR_CALLEE_COPY): New. (FUNCTION_ARG_CALLEE_COPIES): Require argument to be quad-aligned to be passed by callee-copy reference. 2001-01-03 Alexandre Oliva <aoliva@redhat.com> * config/sh/elf.h (MAX_WCHAR_TYPE_SIZE): Define. * config/sh/sh64.h (MAX_WCHAR_TYPE_SIZE): Undefine. 2001-01-02 Alexandre Oliva <aoliva@redhat.com> * config/sh/lib1funcs.asm (shcompact_call_trampoline): Fix error in copying low-numbered FP regs to r7 and r8. * config/sh/sh.h (FUNCTION_ARG_ADVANCE): Don't request copying of FP regs to general-purpose regs only if the copy was passed on the stack. * config/sh/lib1funcs.asm (shcompact_call_trampoline): Fix typo in copying FP reg to r9. * config/sh/sh.h (FUNCTION_ARG_ADVANCE): Use trampoline to copy FP regs to general-purpose regs only in outgoing calls. * config/sh/sh.md (movdf_media, movsf_media): Revert incorrect change from 2000-10-30. Adjust for 64-bit (or 32-bit) HOST_WIDE_INT. * config/sh/sh.h (struct sh_args): Document all fields. (FUNCTION_OK_FOR_SIBCALL): Functions that receive arguments passed partially on the stack should not consider making sibcalls. * config/sh/sh.h (FUNCTION_ARG_ADVANCE): Add byref regs to stack_regs only for incoming calls. When passing FP args, make sure there are FP regs available before modifying call_cookie. (SHCOMPACT_BYREF): Pass double args in general-purpose registers by reference. 2000-12-30 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (FUNCTION_OK_FOR_SIBCALL) [SHCOMPACT]: Don't attempt to generate sibcalls if the caller got any arguments by reference. * config/sh/lib1funcs.asm (set_fpscr) [SH5]: Default to double. * config/sh/sh.c (dump_table) [SHCOMPACT]: Align DImode and DFmode to 8-byte boundaries. * config/sh/sh.md (shcompact_preserve_incoming_args): New insn. * config/sh/sh.h (CALL_COOKIE_INT_REG_GET): New macro. * config/sh/sh.c (sh_expand_prologue): Preserve args that will be stored in the stack. * config/sh/lib1funcs.asm (ct_main_table, ia_main_table): Arrange for the offsets to have the ISA bit set. (shcompact_call_trampoline): Document. Swap r0 and r1, to match invocation. Use beq instead of bgt to mark end of sequence of loads. (shcompact_incoming_args): Fix store of r2. Use beq instead of bgt to mark end of sequence of stores. * config/sh/sh.c (arith_operand): Don't check whether CONST_OK_FOR_J for now. * config/sh/sh.md (movdf_media, movsf_media): Use HOST_WIDE_INT instead of long for conversion. 2000-12-29 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (print_operand_address): Convert INTVAL to int before passing it to fprintf. 2000-12-28 Alexandre Oliva <aoliva@redhat.com> * config/sh/crt1.asm (start): Reset SR.FD, to enable the FP unit. Call set_fpscr before reading/writing SR. * config/sh/crt1.asm (start): Set SR.SZ and SR.PR, but not SR.FR. Call set_fpscr. * config/sh/lib1funcs.asm: Add `.align 2' directives before SHmedia code. (FMOVD_WORKS): Define on SH5 with FPU. (set_fpscr): Define on SH5. Remove separate _fpscr_values setting. * config/sh/t-sh64 (LIB1ASMFUNCS): Add _set_fpscr instead of _fpscr_values. 2000-12-28 Hans-Peter Nilsson <hpn@cygnus.com> * config/sh/lib1funcs.asm (ct_main_table): Align contents to even address. (ia_main_table): Ditto. 2000-12-27 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (MAX_WCHAR_TYPE_SIZE): Don't define. * config/sh/sh64.h (WCHAR_TYPE, WCHAR_TYPE_SIZE): Reinstate the definitions from sh.h. * config/sh/sh.h (PTRDIFF_TYPE): Define as conditional on TARGET_SH5. (SUBTARGET_CPP_SPEC): Arrange for __PTRDIFF_TYPE__ to be defined. * config/sh/elf.h (PTRDIFF_TYPE): Likewise. * config/sh/sh64.h (SUBTARGET_CPP_SPEC): Likewise. 2000-12-26 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.md (movdi_media split): Don't add REG_LABEL notes. Increment LABEL_NUSES. From-SVN: r49630
2002-02-09 04:08:08 +01:00
;;
sh-*-rtems*)
tmake_file="sh/t-sh sh/t-elf t-rtems sh/t-rtems"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h svr4.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"
tm_file="${tm_file} elfos.h svr4.h sh/elf.h sh/embed-elf.h vx-common.h vxworks.h sh/vxworks.h"
;;
sparc-*-netbsdelf*)
tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h netbsd.h netbsd-elf.h sparc/netbsd-elf.h"
optc-gen.awk: Handle stand-alone Mask records. * optc-gen.awk: Handle stand-alone Mask records. * opth-gen.awk: Likewise. * doc/options.texi (Option file format): Document them. * config.gcc (sparc-*-netbsdelf*, sparc-*-linux*, sparc64-*-freebsd*, sparc64-*-linux*, sparc64-*-netbsd*): Add long-double-switch.opt. (sparc64-*-openbsd*, sparc64-*-elf*): Add little-endian.opt. * config/sparc/sparc.h (MASK_FPU, MASK_UNALIGNED_DOUBLES, MASK_V8, MASK_SPARCLITE, MASK_SPARCLET, MASK_V9, MASK_DEPRECATED_V8_INSNS, MASK_IMPURE_TEXT, MASK_APP_REGS, MASK_HARD_QUAD, MASK_LITTLE_ENDIAN, MASK_PTR64, MASK_64BIT, MASK_STACK_BIAS, MASK_FPU_SET, MASK_VIS, MASK_V8PLUS, MASK_FASTER_STRUCTS, MASK_LONG_DOUBLE_128): Delete. (TARGET_FPU, TARGET_UNALIGNED_DOUBLES, TARGET_V8, TARGET_SPARCLITE, TARGET_SPARCLET, TARGET_V9, TARGET_DEPRECATED_V8_INSNS, TARGET_IMPURE_TEXT, TARGET_APP_REGS, MASK_HARD_QUAD, TARGET_LITTLE_ENDIAN, TARGET_PTR64, TARGET_64BIT, MASK_STACK_BIAS, TARGET_FPU_SET, TARGET_VIS, TARGET_V8PLUS, TARGET_FASTER_STRUCTS, TARGET_LONG_DOUBLE_128): Likewise. (TARGET_SWITCHES, SUBTARGET_SWITCHES): Likewise. (TARGET_OPTIONS, SUBTARGET_OPTIONS): Likewise. * config/sparc/freebsd.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/linux.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/linux64.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/netbsd-elf.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/sp64-elf.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/sparc.c (fpu_option_set): New global. (sparc_handle_option): New function. (sparc_override_options): Test fpu_option_set. (TARGET_DEFAULT_TARGET_FLAGS): Set to TARGET_DEFAULT. (TARGET_HANDLE_OPTION): Set to sparc_handle_option. * config/sparc/sparc.opt: New file. * config/sparc/little-endian.opt: Likewise. * config/sparc/long-double-switch.opt: Likewise. From-SVN: r98078
2005-04-13 10:47:23 +02:00
extra_options="${extra_options} sparc/long-double-switch.opt"
;;
sparc64-*-openbsd*)
tm_file="sparc/openbsd1-64.h ${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sp64-elf.h openbsd.h sparc/openbsd64.h"
optc-gen.awk: Handle stand-alone Mask records. * optc-gen.awk: Handle stand-alone Mask records. * opth-gen.awk: Likewise. * doc/options.texi (Option file format): Document them. * config.gcc (sparc-*-netbsdelf*, sparc-*-linux*, sparc64-*-freebsd*, sparc64-*-linux*, sparc64-*-netbsd*): Add long-double-switch.opt. (sparc64-*-openbsd*, sparc64-*-elf*): Add little-endian.opt. * config/sparc/sparc.h (MASK_FPU, MASK_UNALIGNED_DOUBLES, MASK_V8, MASK_SPARCLITE, MASK_SPARCLET, MASK_V9, MASK_DEPRECATED_V8_INSNS, MASK_IMPURE_TEXT, MASK_APP_REGS, MASK_HARD_QUAD, MASK_LITTLE_ENDIAN, MASK_PTR64, MASK_64BIT, MASK_STACK_BIAS, MASK_FPU_SET, MASK_VIS, MASK_V8PLUS, MASK_FASTER_STRUCTS, MASK_LONG_DOUBLE_128): Delete. (TARGET_FPU, TARGET_UNALIGNED_DOUBLES, TARGET_V8, TARGET_SPARCLITE, TARGET_SPARCLET, TARGET_V9, TARGET_DEPRECATED_V8_INSNS, TARGET_IMPURE_TEXT, TARGET_APP_REGS, MASK_HARD_QUAD, TARGET_LITTLE_ENDIAN, TARGET_PTR64, TARGET_64BIT, MASK_STACK_BIAS, TARGET_FPU_SET, TARGET_VIS, TARGET_V8PLUS, TARGET_FASTER_STRUCTS, TARGET_LONG_DOUBLE_128): Likewise. (TARGET_SWITCHES, SUBTARGET_SWITCHES): Likewise. (TARGET_OPTIONS, SUBTARGET_OPTIONS): Likewise. * config/sparc/freebsd.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/linux.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/linux64.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/netbsd-elf.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/sp64-elf.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/sparc.c (fpu_option_set): New global. (sparc_handle_option): New function. (sparc_override_options): Test fpu_option_set. (TARGET_DEFAULT_TARGET_FLAGS): Set to TARGET_DEFAULT. (TARGET_HANDLE_OPTION): Set to sparc_handle_option. * config/sparc/sparc.opt: New file. * config/sparc/little-endian.opt: Likewise. * config/sparc/long-double-switch.opt: Likewise. From-SVN: r98078
2005-04-13 10:47:23 +02:00
extra_options="${extra_options} sparc/little-endian.opt"
gas=yes gnu_ld=yes
with_cpu=ultrasparc
;;
sparc-*-elf*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h newlib-stdint.h svr4.h sparc/sysv4.h sparc/sp-elf.h"
tmake_file="sparc/t-elf sparc/t-crtfm"
extra_parts="crti.o crtn.o crtbegin.o crtend.o"
;;
sparc-*-linux*) # SPARC's running GNU/Linux, libc6
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h linux.h glibc-stdint.h"
optc-gen.awk: Handle stand-alone Mask records. * optc-gen.awk: Handle stand-alone Mask records. * opth-gen.awk: Likewise. * doc/options.texi (Option file format): Document them. * config.gcc (sparc-*-netbsdelf*, sparc-*-linux*, sparc64-*-freebsd*, sparc64-*-linux*, sparc64-*-netbsd*): Add long-double-switch.opt. (sparc64-*-openbsd*, sparc64-*-elf*): Add little-endian.opt. * config/sparc/sparc.h (MASK_FPU, MASK_UNALIGNED_DOUBLES, MASK_V8, MASK_SPARCLITE, MASK_SPARCLET, MASK_V9, MASK_DEPRECATED_V8_INSNS, MASK_IMPURE_TEXT, MASK_APP_REGS, MASK_HARD_QUAD, MASK_LITTLE_ENDIAN, MASK_PTR64, MASK_64BIT, MASK_STACK_BIAS, MASK_FPU_SET, MASK_VIS, MASK_V8PLUS, MASK_FASTER_STRUCTS, MASK_LONG_DOUBLE_128): Delete. (TARGET_FPU, TARGET_UNALIGNED_DOUBLES, TARGET_V8, TARGET_SPARCLITE, TARGET_SPARCLET, TARGET_V9, TARGET_DEPRECATED_V8_INSNS, TARGET_IMPURE_TEXT, TARGET_APP_REGS, MASK_HARD_QUAD, TARGET_LITTLE_ENDIAN, TARGET_PTR64, TARGET_64BIT, MASK_STACK_BIAS, TARGET_FPU_SET, TARGET_VIS, TARGET_V8PLUS, TARGET_FASTER_STRUCTS, TARGET_LONG_DOUBLE_128): Likewise. (TARGET_SWITCHES, SUBTARGET_SWITCHES): Likewise. (TARGET_OPTIONS, SUBTARGET_OPTIONS): Likewise. * config/sparc/freebsd.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/linux.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/linux64.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/netbsd-elf.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/sp64-elf.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/sparc.c (fpu_option_set): New global. (sparc_handle_option): New function. (sparc_override_options): Test fpu_option_set. (TARGET_DEFAULT_TARGET_FLAGS): Set to TARGET_DEFAULT. (TARGET_HANDLE_OPTION): Set to sparc_handle_option. * config/sparc/sparc.opt: New file. * config/sparc/little-endian.opt: Likewise. * config/sparc/long-double-switch.opt: Likewise. From-SVN: r98078
2005-04-13 10:47:23 +02:00
extra_options="${extra_options} sparc/long-double-switch.opt"
tmake_file="${tmake_file} sparc/t-linux"
if test x$enable_targets = xall; then
tm_file="sparc/biarch64.h ${tm_file} sparc/linux64.h"
tmake_file="${tmake_file} sparc/t-linux64"
else
tm_file="${tm_file} sparc/linux.h"
fi
tmake_file="${tmake_file} sparc/t-crtfm"
;;
config.gcc: Remove all stanzas for previously obsoleted systems. * config.gcc: Remove all stanzas for previously obsoleted systems. Where necessary, add explicit error stanzas to prevent removed systems from being misidentified as something else. Begin a fresh obsoletions list, with the systems that were reprieved last round. * doc/install.texi: Remove all mention of dead targets. * fixinc/mkfixinc.sh: Likewise. * config/arm/arm.h: Bit 31 of target_flags is no longer reserved. * config/1750a/1750a-protos.h, config/1750a/1750a.c, config/1750a/1750a.h, config/1750a/1750a.md, config/1750a/ms1750.inc, config/a29k/a29k-protos.h, config/a29k/a29k.c, config/a29k/a29k.h, config/a29k/a29k.md, config/a29k/rtems.h, config/a29k/t-a29kbare, config/a29k/t-vx29k, config/a29k/unix.h, config/a29k/vx29k.h, config/alpha/osf12.h, config/alpha/osf2or3.h, config/arm/arm-wince-pe.h, config/arm/arm.h, config/arm/riscix.h, config/arm/riscix1-1.h, config/arm/rix-gas.h, config/arm/t-riscix, config/clipper/clipper-protos.h, config/clipper/clipper.c, config/clipper/clipper.h, config/clipper/clipper.md, config/clipper/clix.h, config/convex/convex-protos.h, config/convex/convex.c, config/convex/convex.h, config/convex/convex.md, config/convex/fixinc.convex, config/convex/proto.h, config/elxsi/elxsi-protos.h, config/elxsi/elxsi.c, config/elxsi/elxsi.h, config/elxsi/elxsi.md, config/i386/386bsd.h, config/i386/aix386.h, config/i386/aix386ng.h, config/i386/bsd386.h, config/i386/dgux.h, config/i386/djgpp-rtems.h, config/i386/isc.h, config/i386/iscdbx.h, config/i386/linux-oldld.h, config/i386/next.h, config/i386/osf1-ci.asm, config/i386/osf1-cn.asm, config/i386/osf1elf.h, config/i386/osf1elfgdb.h, config/i386/osfelf.h, config/i386/osfrose.h, config/i386/rtems.h, config/i386/seq-gas.h, config/i386/seq-sysv3.h, config/i386/seq2-sysv3.h, config/i386/sequent.h, config/i386/sun.h, config/i386/sun386.h, config/i386/t-dgux, config/i386/t-next, config/i386/t-osf, config/i386/t-osf1elf, config/i860/bsd-gas.h, config/i860/bsd.h, config/i860/fx2800.h, config/i860/i860-protos.h, config/i860/i860.c, config/i860/i860.h, config/i860/i860.md, config/i860/mach.h, config/i860/paragon.h, config/i860/sysv3.h, config/i860/sysv4.h, config/i860/t-fx2800, config/i860/varargs.asm, config/m68k/a-ux.h, config/m68k/altos3068.h, config/m68k/apollo68.h, config/m68k/aux-crt1.c, config/m68k/aux-crt2.asm, config/m68k/aux-crtn.asm, config/m68k/aux-exit.c, config/m68k/aux-low.gld, config/m68k/aux-mcount.c, config/m68k/auxas.h, config/m68k/auxgas.h, config/m68k/auxgld.h, config/m68k/auxld.h, config/m68k/ctix.h, config/m68k/dpx2.h, config/m68k/dpx2.ifile, config/m68k/dpx2cdbx.h, config/m68k/dpx2g.h, config/m68k/isi-nfp.h, config/m68k/isi.h, config/m68k/lynx-ng.h, config/m68k/lynx.h, config/m68k/math-3300.h, config/m68k/news.h, config/m68k/news3.h, config/m68k/news3gas.h, config/m68k/newsgas.h, config/m68k/next.h, config/m68k/next21.h, config/m68k/rtems.h, config/m68k/t-aux, config/m68k/t-lynx, config/m68k/t-next, config/m68k/x-next, config/m88k/dgux.h, config/m88k/dgux.ld, config/m88k/dguxbcs.h, config/m88k/dolph.h, config/m88k/dolphin.ld, config/m88k/luna.h, config/m88k/m88k-coff.h, config/m88k/sysv3.h, config/m88k/t-bug, config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs, config/m88k/t-dolph, config/m88k/t-m88k-gas, config/m88k/t-tekXD88, config/m88k/tekXD88.h, config/m88k/tekXD88.ld, config/mips/bsd-4.h, config/mips/bsd-5.h, config/mips/dec-bsd.h, config/mips/dec-osf1.h, config/mips/elflorion.h, config/mips/iris4loser.h, config/mips/mips-5.h, config/mips/news4.h, config/mips/news5.h, config/mips/nws3250v4.h, config/mips/osfrose.h, config/mips/svr3-4.h, config/mips/svr3-5.h, config/mips/svr4-4.h, config/mips/svr4-5.h, config/mips/svr4-t.h, config/mips/t-bsd, config/mips/t-bsd-gas, config/mips/t-svr3, config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas, config/mips/t-ultrix, config/mips/ultrix.h, config/nextstep-protos.h, config/nextstep.c, config/nextstep.h, config/nextstep21.h, config/ns32k/encore.h, config/ns32k/merlin.h, config/ns32k/pc532-mach.h, config/ns32k/pc532-min.h, config/ns32k/pc532.h, config/ns32k/sequent.h, config/ns32k/tek6000.h, config/ns32k/tek6100.h, config/ns32k/tek6200.h, config/pj/lib1funcs.S, config/pj/linux.h, config/pj/pj-protos.h, config/pj/pj.c, config/pj/pj.h, config/pj/pj.md, config/pj/pjl.h, config/pj/t-pj, config/sparc/rtems.h, config/we32k/we32k-protos.h, config/we32k/we32k.c, config/we32k/we32k.h, config/we32k/we32k.md: Delete file. From-SVN: r53862
2002-05-25 04:10:46 +02:00
sparc-*-rtems*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h svr4.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="crti.o crtn.o crtbegin.o crtend.o"
;;
sparc64-*-solaris2* | sparcv9-*-solaris2*)
tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h"
case ${target} in
*-*-solaris2.1[0-9]*)
tm_file="${tm_file} sol2-10.h"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
;;
*)
use_gcc_stdint=provide
;;
esac
tm_file="${tm_file} sparc/sol2.h sparc/sol2-64.h sparc/sol2-bi.h"
if test x$gnu_ld = xyes; then
tm_file="${tm_file} sparc/sol2-gld.h sparc/sol2-gld-bi.h"
fi
if test x$gas = xyes; then
tm_file="${tm_file} sparc/sol2-gas.h sparc/sol2-gas-bi.h"
fi
re PR debug/21889 (Native Solaris assembler cannot grok DTP-relative debug symbols) PR target/21889 * target.h (gcc_target) <asm_out>: New field output_dwarf_dtprel. * target-def.h (TARGET_ASM_OUTPUT_DWARF_DTPREL): New macro. (TARGET_ASM_OUT): Add it. * doc/tm.texi (Debugging Info): Document it. * dwarf2out.c (output_loc_operands) <INTERNAL_DW_OP_tls_addr>: Test it instead of ASM_OUTPUT_DWARF_DTPREL. (loc_descriptor_from_tree_1) <VAR_DECL>: Likewise. * system.h: Poison ASM_OUTPUT_DWARF_DTPREL. * config/frv/frv-protos.h (frv_output_dwarf_dtprel): Delete. * config/frv/frv.c (frv_output_dwarf_dtprel): Make static and unused. (gen_inlined_tls_plt): Remove unused variable MEM. (TARGET_ASM_OUTPUT_DWARF_DTPREL): Define to frv_output_dwarf_dtprel. * config/frv/frv.h (ASM_OUTPUT_DWARF_DTPREL): Delete. * config/i386/i386-protos.h (i386_output_dwarf_dtprel): Delete. * config/i386/i386.c (i386_output_dwarf_dtprel): Make static and unused. (TARGET_ASM_OUTPUT_DWARF_DTPREL): Define to i386_output_dwarf_dtprel. * config/i386/i386.h (ASM_OUTPUT_DWARF_DTPREL): Delete. * config/ia64/ia64-protos.h (ia64_output_dwarf_dtprel): Delete. * config/ia64/ia64.c (ia64_output_dwarf_dtprel): Make static and unused. (TARGET_ASM_OUTPUT_DWARF_DTPREL): Define to ia64_output_dwarf_dtprel. * config/ia64/ia64.h (ASM_OUTPUT_DWARF_DTPREL): Delete. * config/rs6000/rs6000-protos.h (rs6000_output_dwarf_dtprel): Delete. * config/rs6000/rs6000.c (rs6000_output_dwarf_dtprel): Make static and unused. (TARGET_ASM_OUTPUT_DWARF_DTPREL): Define to rs6000_output_dwarf_dtprel * config/rs6000/rs6000.h (ASM_OUTPUT_DWARF_DTPREL): Delete. * config/s390/s390-protos.h (s390_output_dwarf_dtprel): Delete. * config/s390/s390.c (s390_output_dwarf_dtprel): Make static and unused. (TARGET_ASM_OUTPUT_DWARF_DTPREL): Define to s390_output_dwarf_dtprel. * config/s390/s390.h (ASM_OUTPUT_DWARF_DTPREL): Delete. * config/sparc/sol2-gas.h (TARGET_SUN_TLS): Define to 0. (TARGET_GNU_TLS): Define to 1. * config/sparc/sparc-protos.h (sparc_output_dwarf_dtprel): Delete. * config/sparc/sparc.c (sparc_output_dwarf_dtprel): Make static and unused. (TARGET_ASM_OUTPUT_DWARF_DTPREL): Define to sparc_output_dwarf_dtprel if TARGET_GNU_TLS only. * config/sparc/sparc.h (ASM_OUTPUT_DWARF_DTPREL): Delete. * config.gcc (sparc64-*-solaris2*): Include tm-dwarf2.h last. (sparc-*-solaris2*): Likewise on Solaris 7 and up. From-SVN: r100742
2005-06-08 07:05:45 +02:00
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
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 crtbegin.o crtend.o"
case ${enable_threads}:${have_pthread_h}:${have_thread_h} in
"":yes:* | yes:yes:* ) thread_file=posix ;;
"":*:yes | yes:*:yes ) thread_file=solaris ;;
esac
;;
sparc-*-solaris2*)
tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h"
case ${target} in
*-*-solaris2.1[0-9]*)
tm_file="${tm_file} sol2-10.h"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
;;
*)
use_gcc_stdint=provide
;;
esac
tm_file="${tm_file} sparc/sol2.h"
if test x$gnu_ld = xyes; then
tm_file="${tm_file} sparc/sol2-gld.h"
fi
if test x$gas = xyes; then
tm_file="${tm_file} sparc/sol2-gas.h"
fi
tmake_file="t-sol2 sparc/t-sol2 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
MAINTAINERS (mt port): Remove. * MAINTAINERS (mt port): Remove. (sco5, unixware, sco udk): Remove. (Kean Johnston): Add to Write After Approval. fixincludes: * inclhack.def (AAB_svr4_replace_byteorder, AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory, libc1_G_va_list, libc1_ifdefd_memx, nested_motorola, ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime, solaris_mutex_init_1, solaris_socket, solaris_unistd, solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param, ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale, ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc, ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings, ultrix_strings2, ultrix_sys_time, ultrix_unistd, unicosmk_restrict, uw7_byteorder_fix, windiss_math1, windiss_math2, windiss_valist): Remove. * fixincl.x: Regenerate. * mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*, i370-*-openedition, i?86-*-moss*, i?86-*-uwin*, powerpc-*-eabiaix*): Remove. * tests/base/math.h: Update. * tests/base/pthread.h: Update. * tests/base/stdio.h: Update. * tests/base/stdlib.h: Update. * tests/base/string.h: Update. * tests/base/strings.h: Update. * tests/base/sys/file.h: Update. * tests/base/sys/limits.h: Update. * tests/base/sys/socket.h: Update. * tests/base/sys/stat.h: Update. * tests/base/sys/time.h: Update. * tests/base/testing.h: Update. * tests/base/unistd.h: Update. * tests/base/_G_config.h: Remove. * tests/base/arpa: Remove directory. * tests/base/fs: Remove directory. * tests/base/locale.h: Remove. * tests/base/machine: Remove directory. * tests/base/rpc/svc.h: Remove. * tests/base/sys/ioctl.h: Remove. * tests/base/sys/regset.h: Remove. * tests/base/sys/times.h: Remove. * tests/base/sys/utsname.h: Remove. * tests/base/widec.h: Remove. gcc: * config.gcc (Obsolete configurations): Remove list of configurations. (Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*, *-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*. Remove other targets matched by those patterns. (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff, i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove. Make code for Solaris 7 and greater unconditional for Solaris. (ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*): Remove --with-* handling. * config/rs6000/sysv4.h (-mwindiss): Remove from all specs. (LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC, ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC, LINK_OS_WINDISS_SPEC): Remove. * config/rs6000/sysv4.opt (mwindiss): Remove. * configure.ac (strongarm*-*-*, xscale*-*-*): Remove. * configure: Regenerate. * doc/cpp.texi: Don't mention BeOS. * doc/extend.texi (interrupt): Don't mention MS1. * doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv, m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv, alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout, i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4, powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix): Remove. * doc/invoke.texi (MT Options): Remove. (-mwindiss): Remove. (CRIS Options): Remove cris-axis-aout references. (HPPA Options): Don't mention hppa1.1-*-pro. * doc/md.texi: (MorphoTech family): Remove. * libgcc2.c: Don't handle UWIN. * config/alpha/t-unicosmk: Remove. * config/alpha/unicosmk.h: Remove. * config/arm/kaos-arm.h: Remove. * config/arm/kaos-strongarm.h: Remove. * config/arm/strongarm-coff.h: Remove. * config/arm/strongarm-elf.h: Remove. * config/arm/strongarm-pe.h: Remove. * config/arm/t-strongarm-pe: Remove. * config/arm/t-xscale-coff: Remove. * config/arm/t-xscale-elf: Remove. * config/arm/xscale-coff.h: Remove. * config/arm/xscale-elf.h: Remove. * config/chorus.h: Remove. * config/cris/aout.h: Remove. * config/cris/aout.opt: Remove. * config/cris/t-aout: Remove. * config/i386/beos-elf.h: Remove. * config/i386/kaos-i386.h: Remove. * config/i386/ptx4-i.h: Remove. * config/i386/sco5.h: Remove. * config/i386/sco5.opt: Remove. * config/i386/sysv4-cpp.h: Remove. * config/i386/sysv5.h: Remove. * config/i386/t-beos: Remove. * config/i386/t-sco5: Remove. * config/i386/t-uwin: Remove. * config/i386/uwin.asm: Remove. * config/i386/uwin.h: Remove. * config/kaos.h: Remove. * config/mips/windiss.h: Remove. * config/mt: Remove directory. * config/pa/pa-osf.h: Remove. * config/pa/pa-pro-end.h: Remove. * config/pa/t-pro: Remove. * config/ptx4.h: Remove. * config/rs6000/beos.h: Remove. * config/rs6000/kaos-ppc.h: Remove. * config/rs6000/t-beos: Remove. * config/rs6000/windiss.h: Remove. * config/sh/kaos-sh.h: Remove. * config/sol2-6.h: Remove. * config/sparc/sol26-sld.h: Remove. * config/sparc/sysv4-only.h: Remove. * config/vax/bsd.h: Remove. * config/vax/t-memfuncs: Remove. * config/vax/ultrix.h: Remove. * config/vax/vaxv.h: Remove. * config/windiss.h: Remove. gcc/testsuite: * g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*. * g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*. * g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris 7. * gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*, strongarm*-*-* and cris-*-aout*. * gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20030909-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20031108-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20040813-1.c: Don't handle *-*-sysv5*. * gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*. * gcc.dg/arm-scd42-1.c: Use target arm*-*-*. * gcc.dg/arm-scd42-3.c: Use target arm*-*-*. * gcc.dg/cpp/assert4.c: Don't handle BeOS. * gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*. * gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and xscale*-*-elf*. * gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*. * gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1. * gcc.misc-tests/arm-isr.exp: Use target arm*-*-*. * gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-stackalign-1.c: Don't handle powerpc-*-sysv*. * gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*. * lib/target-supports.exp: Don't handle strongarm*-*-elf, xscale*-*-elf and *-*-windiss. * obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*. * gcc.dg/mt-loopi1.c: Remove. gnattools: * configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove. * configure: Regenerate. libcpp: * configure.ac (parisc*64*-*-*): Remove. * configure: Regenerate. libffi: * configure.ac (parisc*-*-linux*, powerpc-*-sysv*, powerpc-*-beos*): Remove. * configure: Regenerate. libgcc: * config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove. libjava: * configure.host (strongarm*-elf, xscale*-elf): Remove. libstdc++-v3: * configure.host (xscale, ep9312, m680[246]0, solaris2.5, solaris2.5.[0-9], solaris2.6, windiss*): Remove. * crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove. * configure: Regenerate. * config/os/solaris/solaris2.5: Remove directory. * config/os/solaris/solaris2.6: Remove directory. * config/os/windiss: Remove directory. From-SVN: r136534
2008-06-07 20:00:15 +02:00
tm_file="sparc/biarch64.h ${tm_file} sparc/sol2-bi.h"
if test x$gnu_ld = xyes; then
tm_file="${tm_file} sparc/sol2-gld-bi.h"
fi
if test x$gas = xyes; then
tm_file="${tm_file} sparc/sol2-gas-bi.h"
fi
tm_file="${tm_file} tm-dwarf2.h"
tmake_file="$tmake_file sparc/t-sol2-64"
test x$with_cpu != x || with_cpu=v9
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:* )
MAINTAINERS (mt port): Remove. * MAINTAINERS (mt port): Remove. (sco5, unixware, sco udk): Remove. (Kean Johnston): Add to Write After Approval. fixincludes: * inclhack.def (AAB_svr4_replace_byteorder, AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory, libc1_G_va_list, libc1_ifdefd_memx, nested_motorola, ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime, solaris_mutex_init_1, solaris_socket, solaris_unistd, solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param, ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale, ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc, ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings, ultrix_strings2, ultrix_sys_time, ultrix_unistd, unicosmk_restrict, uw7_byteorder_fix, windiss_math1, windiss_math2, windiss_valist): Remove. * fixincl.x: Regenerate. * mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*, i370-*-openedition, i?86-*-moss*, i?86-*-uwin*, powerpc-*-eabiaix*): Remove. * tests/base/math.h: Update. * tests/base/pthread.h: Update. * tests/base/stdio.h: Update. * tests/base/stdlib.h: Update. * tests/base/string.h: Update. * tests/base/strings.h: Update. * tests/base/sys/file.h: Update. * tests/base/sys/limits.h: Update. * tests/base/sys/socket.h: Update. * tests/base/sys/stat.h: Update. * tests/base/sys/time.h: Update. * tests/base/testing.h: Update. * tests/base/unistd.h: Update. * tests/base/_G_config.h: Remove. * tests/base/arpa: Remove directory. * tests/base/fs: Remove directory. * tests/base/locale.h: Remove. * tests/base/machine: Remove directory. * tests/base/rpc/svc.h: Remove. * tests/base/sys/ioctl.h: Remove. * tests/base/sys/regset.h: Remove. * tests/base/sys/times.h: Remove. * tests/base/sys/utsname.h: Remove. * tests/base/widec.h: Remove. gcc: * config.gcc (Obsolete configurations): Remove list of configurations. (Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*, *-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*. Remove other targets matched by those patterns. (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff, i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove. Make code for Solaris 7 and greater unconditional for Solaris. (ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*): Remove --with-* handling. * config/rs6000/sysv4.h (-mwindiss): Remove from all specs. (LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC, ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC, LINK_OS_WINDISS_SPEC): Remove. * config/rs6000/sysv4.opt (mwindiss): Remove. * configure.ac (strongarm*-*-*, xscale*-*-*): Remove. * configure: Regenerate. * doc/cpp.texi: Don't mention BeOS. * doc/extend.texi (interrupt): Don't mention MS1. * doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv, m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv, alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout, i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4, powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix): Remove. * doc/invoke.texi (MT Options): Remove. (-mwindiss): Remove. (CRIS Options): Remove cris-axis-aout references. (HPPA Options): Don't mention hppa1.1-*-pro. * doc/md.texi: (MorphoTech family): Remove. * libgcc2.c: Don't handle UWIN. * config/alpha/t-unicosmk: Remove. * config/alpha/unicosmk.h: Remove. * config/arm/kaos-arm.h: Remove. * config/arm/kaos-strongarm.h: Remove. * config/arm/strongarm-coff.h: Remove. * config/arm/strongarm-elf.h: Remove. * config/arm/strongarm-pe.h: Remove. * config/arm/t-strongarm-pe: Remove. * config/arm/t-xscale-coff: Remove. * config/arm/t-xscale-elf: Remove. * config/arm/xscale-coff.h: Remove. * config/arm/xscale-elf.h: Remove. * config/chorus.h: Remove. * config/cris/aout.h: Remove. * config/cris/aout.opt: Remove. * config/cris/t-aout: Remove. * config/i386/beos-elf.h: Remove. * config/i386/kaos-i386.h: Remove. * config/i386/ptx4-i.h: Remove. * config/i386/sco5.h: Remove. * config/i386/sco5.opt: Remove. * config/i386/sysv4-cpp.h: Remove. * config/i386/sysv5.h: Remove. * config/i386/t-beos: Remove. * config/i386/t-sco5: Remove. * config/i386/t-uwin: Remove. * config/i386/uwin.asm: Remove. * config/i386/uwin.h: Remove. * config/kaos.h: Remove. * config/mips/windiss.h: Remove. * config/mt: Remove directory. * config/pa/pa-osf.h: Remove. * config/pa/pa-pro-end.h: Remove. * config/pa/t-pro: Remove. * config/ptx4.h: Remove. * config/rs6000/beos.h: Remove. * config/rs6000/kaos-ppc.h: Remove. * config/rs6000/t-beos: Remove. * config/rs6000/windiss.h: Remove. * config/sh/kaos-sh.h: Remove. * config/sol2-6.h: Remove. * config/sparc/sol26-sld.h: Remove. * config/sparc/sysv4-only.h: Remove. * config/vax/bsd.h: Remove. * config/vax/t-memfuncs: Remove. * config/vax/ultrix.h: Remove. * config/vax/vaxv.h: Remove. * config/windiss.h: Remove. gcc/testsuite: * g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*. * g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*. * g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris 7. * gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*, strongarm*-*-* and cris-*-aout*. * gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20030909-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20031108-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20040813-1.c: Don't handle *-*-sysv5*. * gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*. * gcc.dg/arm-scd42-1.c: Use target arm*-*-*. * gcc.dg/arm-scd42-3.c: Use target arm*-*-*. * gcc.dg/cpp/assert4.c: Don't handle BeOS. * gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*. * gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and xscale*-*-elf*. * gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*. * gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1. * gcc.misc-tests/arm-isr.exp: Use target arm*-*-*. * gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-stackalign-1.c: Don't handle powerpc-*-sysv*. * gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*. * lib/target-supports.exp: Don't handle strongarm*-*-elf, xscale*-*-elf and *-*-windiss. * obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*. * gcc.dg/mt-loopi1.c: Remove. gnattools: * configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove. * configure: Regenerate. libcpp: * configure.ac (parisc*64*-*-*): Remove. * configure: Regenerate. libffi: * configure.ac (parisc*-*-linux*, powerpc-*-sysv*, powerpc-*-beos*): Remove. * configure: Regenerate. libgcc: * config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove. libjava: * configure.host (strongarm*-elf, xscale*-elf): Remove. libstdc++-v3: * configure.host (xscale, ep9312, m680[246]0, solaris2.5, solaris2.5.[0-9], solaris2.6, windiss*): Remove. * crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove. * configure: Regenerate. * config/os/solaris/solaris2.5: Remove directory. * config/os/solaris/solaris2.6: Remove directory. * config/os/windiss: Remove directory. From-SVN: r136534
2008-06-07 20:00:15 +02:00
thread_file=posix
;;
"":*:yes | yes:*:yes )
thread_file=solaris
;;
esac
;;
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*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h svr4.h newlib-stdint.h sparc/sysv4.h sparc/sp64-elf.h"
optc-gen.awk: Handle stand-alone Mask records. * optc-gen.awk: Handle stand-alone Mask records. * opth-gen.awk: Likewise. * doc/options.texi (Option file format): Document them. * config.gcc (sparc-*-netbsdelf*, sparc-*-linux*, sparc64-*-freebsd*, sparc64-*-linux*, sparc64-*-netbsd*): Add long-double-switch.opt. (sparc64-*-openbsd*, sparc64-*-elf*): Add little-endian.opt. * config/sparc/sparc.h (MASK_FPU, MASK_UNALIGNED_DOUBLES, MASK_V8, MASK_SPARCLITE, MASK_SPARCLET, MASK_V9, MASK_DEPRECATED_V8_INSNS, MASK_IMPURE_TEXT, MASK_APP_REGS, MASK_HARD_QUAD, MASK_LITTLE_ENDIAN, MASK_PTR64, MASK_64BIT, MASK_STACK_BIAS, MASK_FPU_SET, MASK_VIS, MASK_V8PLUS, MASK_FASTER_STRUCTS, MASK_LONG_DOUBLE_128): Delete. (TARGET_FPU, TARGET_UNALIGNED_DOUBLES, TARGET_V8, TARGET_SPARCLITE, TARGET_SPARCLET, TARGET_V9, TARGET_DEPRECATED_V8_INSNS, TARGET_IMPURE_TEXT, TARGET_APP_REGS, MASK_HARD_QUAD, TARGET_LITTLE_ENDIAN, TARGET_PTR64, TARGET_64BIT, MASK_STACK_BIAS, TARGET_FPU_SET, TARGET_VIS, TARGET_V8PLUS, TARGET_FASTER_STRUCTS, TARGET_LONG_DOUBLE_128): Likewise. (TARGET_SWITCHES, SUBTARGET_SWITCHES): Likewise. (TARGET_OPTIONS, SUBTARGET_OPTIONS): Likewise. * config/sparc/freebsd.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/linux.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/linux64.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/netbsd-elf.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/sp64-elf.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/sparc.c (fpu_option_set): New global. (sparc_handle_option): New function. (sparc_override_options): Test fpu_option_set. (TARGET_DEFAULT_TARGET_FLAGS): Set to TARGET_DEFAULT. (TARGET_HANDLE_OPTION): Set to sparc_handle_option. * config/sparc/sparc.opt: New file. * config/sparc/little-endian.opt: Likewise. * config/sparc/long-double-switch.opt: Likewise. From-SVN: r98078
2005-04-13 10:47:23 +02:00
extra_options="${extra_options} sparc/little-endian.opt"
tmake_file="${tmake_file} sparc/t-crtfm"
extra_parts="crtbegin.o crtend.o"
;;
sparc64-*-freebsd*|ultrasparc-*-freebsd*)
tm_file="${tm_file} ${fbsd_tm_file} dbxelf.h elfos.h sparc/sysv4.h sparc/freebsd.h"
optc-gen.awk: Handle stand-alone Mask records. * optc-gen.awk: Handle stand-alone Mask records. * opth-gen.awk: Likewise. * doc/options.texi (Option file format): Document them. * config.gcc (sparc-*-netbsdelf*, sparc-*-linux*, sparc64-*-freebsd*, sparc64-*-linux*, sparc64-*-netbsd*): Add long-double-switch.opt. (sparc64-*-openbsd*, sparc64-*-elf*): Add little-endian.opt. * config/sparc/sparc.h (MASK_FPU, MASK_UNALIGNED_DOUBLES, MASK_V8, MASK_SPARCLITE, MASK_SPARCLET, MASK_V9, MASK_DEPRECATED_V8_INSNS, MASK_IMPURE_TEXT, MASK_APP_REGS, MASK_HARD_QUAD, MASK_LITTLE_ENDIAN, MASK_PTR64, MASK_64BIT, MASK_STACK_BIAS, MASK_FPU_SET, MASK_VIS, MASK_V8PLUS, MASK_FASTER_STRUCTS, MASK_LONG_DOUBLE_128): Delete. (TARGET_FPU, TARGET_UNALIGNED_DOUBLES, TARGET_V8, TARGET_SPARCLITE, TARGET_SPARCLET, TARGET_V9, TARGET_DEPRECATED_V8_INSNS, TARGET_IMPURE_TEXT, TARGET_APP_REGS, MASK_HARD_QUAD, TARGET_LITTLE_ENDIAN, TARGET_PTR64, TARGET_64BIT, MASK_STACK_BIAS, TARGET_FPU_SET, TARGET_VIS, TARGET_V8PLUS, TARGET_FASTER_STRUCTS, TARGET_LONG_DOUBLE_128): Likewise. (TARGET_SWITCHES, SUBTARGET_SWITCHES): Likewise. (TARGET_OPTIONS, SUBTARGET_OPTIONS): Likewise. * config/sparc/freebsd.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/linux.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/linux64.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/netbsd-elf.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/sp64-elf.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/sparc.c (fpu_option_set): New global. (sparc_handle_option): New function. (sparc_override_options): Test fpu_option_set. (TARGET_DEFAULT_TARGET_FLAGS): Set to TARGET_DEFAULT. (TARGET_HANDLE_OPTION): Set to sparc_handle_option. * config/sparc/sparc.opt: New file. * config/sparc/little-endian.opt: Likewise. * config/sparc/long-double-switch.opt: Likewise. From-SVN: r98078
2005-04-13 10:47:23 +02:00
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
;;
sparc64-*-linux*) # 64-bit SPARC's running GNU/Linux
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h linux.h glibc-stdint.h sparc/linux64.h"
optc-gen.awk: Handle stand-alone Mask records. * optc-gen.awk: Handle stand-alone Mask records. * opth-gen.awk: Likewise. * doc/options.texi (Option file format): Document them. * config.gcc (sparc-*-netbsdelf*, sparc-*-linux*, sparc64-*-freebsd*, sparc64-*-linux*, sparc64-*-netbsd*): Add long-double-switch.opt. (sparc64-*-openbsd*, sparc64-*-elf*): Add little-endian.opt. * config/sparc/sparc.h (MASK_FPU, MASK_UNALIGNED_DOUBLES, MASK_V8, MASK_SPARCLITE, MASK_SPARCLET, MASK_V9, MASK_DEPRECATED_V8_INSNS, MASK_IMPURE_TEXT, MASK_APP_REGS, MASK_HARD_QUAD, MASK_LITTLE_ENDIAN, MASK_PTR64, MASK_64BIT, MASK_STACK_BIAS, MASK_FPU_SET, MASK_VIS, MASK_V8PLUS, MASK_FASTER_STRUCTS, MASK_LONG_DOUBLE_128): Delete. (TARGET_FPU, TARGET_UNALIGNED_DOUBLES, TARGET_V8, TARGET_SPARCLITE, TARGET_SPARCLET, TARGET_V9, TARGET_DEPRECATED_V8_INSNS, TARGET_IMPURE_TEXT, TARGET_APP_REGS, MASK_HARD_QUAD, TARGET_LITTLE_ENDIAN, TARGET_PTR64, TARGET_64BIT, MASK_STACK_BIAS, TARGET_FPU_SET, TARGET_VIS, TARGET_V8PLUS, TARGET_FASTER_STRUCTS, TARGET_LONG_DOUBLE_128): Likewise. (TARGET_SWITCHES, SUBTARGET_SWITCHES): Likewise. (TARGET_OPTIONS, SUBTARGET_OPTIONS): Likewise. * config/sparc/freebsd.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/linux.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/linux64.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/netbsd-elf.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/sp64-elf.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/sparc.c (fpu_option_set): New global. (sparc_handle_option): New function. (sparc_override_options): Test fpu_option_set. (TARGET_DEFAULT_TARGET_FLAGS): Set to TARGET_DEFAULT. (TARGET_HANDLE_OPTION): Set to sparc_handle_option. * config/sparc/sparc.opt: New file. * config/sparc/little-endian.opt: Likewise. * config/sparc/long-double-switch.opt: Likewise. From-SVN: r98078
2005-04-13 10:47:23 +02:00
extra_options="${extra_options} sparc/long-double-switch.opt"
tmake_file="${tmake_file} sparc/t-linux sparc/t-linux64 sparc/t-crtfm"
;;
sparc64-*-netbsd*)
tm_file="sparc/biarch64.h ${tm_file}"
tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h netbsd.h netbsd-elf.h sparc/netbsd-elf.h"
optc-gen.awk: Handle stand-alone Mask records. * optc-gen.awk: Handle stand-alone Mask records. * opth-gen.awk: Likewise. * doc/options.texi (Option file format): Document them. * config.gcc (sparc-*-netbsdelf*, sparc-*-linux*, sparc64-*-freebsd*, sparc64-*-linux*, sparc64-*-netbsd*): Add long-double-switch.opt. (sparc64-*-openbsd*, sparc64-*-elf*): Add little-endian.opt. * config/sparc/sparc.h (MASK_FPU, MASK_UNALIGNED_DOUBLES, MASK_V8, MASK_SPARCLITE, MASK_SPARCLET, MASK_V9, MASK_DEPRECATED_V8_INSNS, MASK_IMPURE_TEXT, MASK_APP_REGS, MASK_HARD_QUAD, MASK_LITTLE_ENDIAN, MASK_PTR64, MASK_64BIT, MASK_STACK_BIAS, MASK_FPU_SET, MASK_VIS, MASK_V8PLUS, MASK_FASTER_STRUCTS, MASK_LONG_DOUBLE_128): Delete. (TARGET_FPU, TARGET_UNALIGNED_DOUBLES, TARGET_V8, TARGET_SPARCLITE, TARGET_SPARCLET, TARGET_V9, TARGET_DEPRECATED_V8_INSNS, TARGET_IMPURE_TEXT, TARGET_APP_REGS, MASK_HARD_QUAD, TARGET_LITTLE_ENDIAN, TARGET_PTR64, TARGET_64BIT, MASK_STACK_BIAS, TARGET_FPU_SET, TARGET_VIS, TARGET_V8PLUS, TARGET_FASTER_STRUCTS, TARGET_LONG_DOUBLE_128): Likewise. (TARGET_SWITCHES, SUBTARGET_SWITCHES): Likewise. (TARGET_OPTIONS, SUBTARGET_OPTIONS): Likewise. * config/sparc/freebsd.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/linux.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/linux64.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/netbsd-elf.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/sp64-elf.h (SUBTARGET_SWITCHES): Likewise. * config/sparc/sparc.c (fpu_option_set): New global. (sparc_handle_option): New function. (sparc_override_options): Test fpu_option_set. (TARGET_DEFAULT_TARGET_FLAGS): Set to TARGET_DEFAULT. (TARGET_HANDLE_OPTION): Set to sparc_handle_option. * config/sparc/sparc.opt: New file. * config/sparc/little-endian.opt: Likewise. * config/sparc/long-double-switch.opt: Likewise. From-SVN: r98078
2005-04-13 10:47:23 +02:00
extra_options="${extra_options} sparc/long-double-switch.opt"
tmake_file="${tmake_file} sparc/t-netbsd64"
;;
spu-*-elf*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h spu/spu-elf.h spu/spu.h newlib-stdint.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"
;;
v850e1-*-*)
target_cpu_default="TARGET_CPU_v850e1"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h svr4.h newlib-stdint.h v850/v850.h"
tm_p_file=v850/v850-protos.h
tmake_file=v850/t-v850e
md_file=v850/v850.md
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
use_collect2=no
c_target_objs="v850-c.o"
cxx_target_objs="v850-c.o"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
;;
v850e-*-*)
target_cpu_default="TARGET_CPU_v850e"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h svr4.h newlib-stdint.h v850/v850.h"
tm_p_file=v850/v850-protos.h
tmake_file=v850/t-v850e
md_file=v850/v850.md
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
use_collect2=no
c_target_objs="v850-c.o"
cxx_target_objs="v850-c.o"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
;;
v850-*-*)
target_cpu_default="TARGET_CPU_generic"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h svr4.h newlib-stdint.h ${tm_file}"
tmake_file=v850/t-v850
if test x$stabs = xyes
then
tm_file="${tm_file} dbx.h"
fi
use_collect2=no
c_target_objs="v850-c.o"
cxx_target_objs="v850-c.o"
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
use_gcc_stdint=wrap
;;
[multiple changes] 2009-04-01 Jan-Benedict Glaw <jbglaw@jbglaw-dev.homezone.telefonica.de> * gcc/config/vax/vax.c: Add #includes to silence warnings. Change #include order to silence two warnings. 2009-04-01 Jan-Benedict Glaw <jbglaw@jbglaw-dev.homezone.telefonica.de> * gcc/config/vax/linux.h (TARGET_DEFAULT): Add the MASK_QMATH flag bit. (ASM_SPEC): Pass -k to the assembler for PIC code. 2009-04-01 Jan-Benedict Glaw <jbglaw@jbglaw-dev.homezone.telefonica.de> * gcc/config.gcc: Add vax-*-linux* to the switch. * gcc/config/vax/linux.h: New file. (TARGET_VERSION, TARGET_OS_CPP_BUILTINS, TARGET_DEFAULT, CPP_SPEC, LINK_SPEC): Define. 2009-04-01 Jan-Benedict Glaw <jbglaw@jbglaw-dev.homezone.telefonica.de> * gcc/config/vax/vax.c (vax_output_int_move, adjacent_operands_p): Use predicate macros instead of GET_CODE() == foo. * gcc/config/vax/vax.md (movsi_2, movstrictqi, and<mode>3, ashrsi3, ashlsi3, rotrsi3, <unnamed>): Likewise. 2009-04-01 Jan-Benedict Glaw <jbglaw@jbglaw-dev.homezone.telefonica.de> * gcc/config/vax/builtins.md (jbbssiqi, jbbssihi, jbbssisi, jbbcciqi, jbbccihi, jbbccisi): Remova trailing whitespace. * gcc/config/vax/constraints.md: Likewise. * gcc/config/vax/elf.h: (ASM_PREFERRED_EH_DATA_FORMAT): Likewise. * gcc/config/vax/openbsd1.h (OBSD_OLD_GAS): Likewise. * gcc/config/vax/predicates.md: Likewise. * gcc/config/vax/vax.c (print_operand_address, vax_output_int_move, vax_expand_addsub_di_operands, adjacent_operands_p): Likewise. * gcc/config/vax/vax.h: Likewise. * gcc/config/vax/vax.md (nonlocal_goto): Likewise. 2009-04-01 Jan-Benedict Glaw <jbglaw@jbglaw-dev.homezone.telefonica.de> * gcc/config/vax/vax.c (vax_float_literal, vax_output_int_move) (indirectable_address_p, adjacent_operands_p): Add spaces around braces. * gcc/config/vax/vax-protos.h (adjacent_operands_p): Likewise. 2009-04-01 Jan-Benedict Glaw <jbglaw@jbglaw-dev.homezone.telefonica.de> * gcc/config/vax/vax.c (legitimate_constant_address_p, legitimate_constant_p, indirectable_address_p, nonindexed_address_p, index_term_p, reg_plus_index_p, legitimate_address_p, vax_mode_dependent_address_p): Update comments to match functions modified by the recent int->bool conversion. 2009-04-01 Jan-Benedict Glaw <jbglaw@jbglaw-dev.homezone.telefonica.de> * gcc/config/vax/builtins.md: Update copyright message. * gcc/config/vax/constraints.md: Likewise. * gcc/config/vax/netbsd-elf.h: Likewise. * gcc/config/vax/predicates.md: Likewise. * gcc/config/vax/vax-protos.h: Likewise. * gcc/config/vax/vax.c: Likewise. * gcc/config/vax/vax.h: Likewise. * gcc/config/vax/vax.md: Likewise. * gcc/config/vax/vax.opt: Likewise. 2009-04-01 Jan-Benedict Glaw <jbglaw@jbglaw-dev.homezone.telefonica.de> * gcc/config/vax/builtins.md (ffssi2, ffssi2_internal, sync_lock_test_and_set<mode>, sync_lock_release<mode>): Fix indention. * gcc/config/vax/constraints.md (B, R): Likewise. * gcc/config/vax/predicates.md (external_memory_operand, nonimmediate_addsub_di_operand): Likewise. * gcc/config/vax/vax.c (vax_output_int_add): Likewise. * gcc/config/vax/vax.md (movsi, movsi_2, mov<mode>, call_value, untyped_call): Likewise. 2009-04-01 Matt Thomas <matt@3am-software.com> * config/vax/predicates.md: New file. (symbolic_operand, local_symbolic_operand, external_symbolic_operand, external_const_operand, nonsymbolic_operand, external_memory_operand, indirect_memory_operand, indexed_memory_operand, illegal_blk_memory_operand, illegal_addsub_di_memory_operand, nonimmediate_addsub_di_operand, general_addsub_di_operand): New predicate. * config/vax/constraints.md: New file. (Z0, U06, U08, U16, CN6, S08, S16, I, J, K, L, M, N, O, G, Q, B, R, T): New constraint. * config/vax/builtins.md: New file. (ffssi2, ffssi2_internal, sync_lock_test_and_set<mode>, jbbssiqi, jbbssihi, jbbssisi, sync_lock_release<mode>, jbbcciqi, jbbccihi, jbbccisi): Define. * config/vax/vax.opt (mqmath): Add option. * config/vax/vax.md (isfx): Extend with DI. (VAXintQH, VAXintQHSD): Define. (tst<mode>, cmp<mode>, *bit<mode>, movmemhi1, truncsiqi2, truncsihi2, mulsidi3, add<mode>3, sub<mode>, mul<mode>3, div<mode>3, and<mode>, and<mode>_const_int, ior<mode>3, xor<mode>3, neg<mode>2, one_cmpl<mode>2, ashlsi3, lshrsi3, rotlsi3): Update constraints. (movdi): Update constraints and use vax_output_int_move(). (movsi, movsi_2, pushlclsymreg, pushextsymreg, movlclsymreg, movextsymreg, adddi3, adcdi3, subdi3, sbcdi3, pushextsym, movextsym, pushlclsym, movlclsym, movaddr<mode>, pushaddr<mode>, nonlocal_goto): New. (mov<mode>): Extend accepted operand types. (subdi3_old): Rename from subdi3, change update constraints and use a new implementation. * gcc/config/vax/vax.h (PCC_BITFIELD_TYPE_MATTERS): Add space. (FRAME_POINTER_CFA_OFFSET, IRA_COVER_CLASSES, CLASS_MAX_NREGS, MOVE_RATIO, CLEAR_RATIO): Define. (REG_CLASS_FROM_LETTER, CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P, EXTRA_CONSTRAINT): Delete. (PRINT_OPERAND): Redefine using a function instead of inlined code. * gcc/config/vax/vax.c (TARGET_BUILTIN_SETJMP_FRAME_VALUE): Define. (split_quadword_operands): Make static and really allow variable splitting. (print_operand_address): Update for PIC generation. (print_operand, vax_builtin_setjmp_frame_value, vax_output_int_subtract, indexable_address_p, fixup_mathdi_operand, vax_expand_addsub_di_operands, adjacent_operands_p): New. (vax_float_literal, legitimate_constant_p, indirectable_constant_address_p, index_term_p, reg_plus_index_p): Return bool instead of int. (vax_rtx_costs): Fix cost for CONST_INT, indent and use HOST_WIDE_INT where needed. (vax_output_int_move, vax_output_int_add): Extend to allow PIC generation. (vax_output_conditional_branch): Indent. (legitimate_constant_address_p, indirectable_constant_address_p, indirectable_address_p, nonindexed_address_p, legitimate_address_p, vax_mode_dependent_address_p): Return bool instead of int, update for PIC generation. * config/vax/vax-protos.h (legitimate_constant_address_p, legitimate_constant_p, legitimate_address_p, vax_mode_dependent_address_p): Change declaration to bool. (legitimate_pic_operand_p, adjacent_operands_p, print_operand, vax_expand_addsub_di_operands, vax_output_int_subtract, vax_output_movmemsi): Declare. (split_quadword_operands, vax_float_literal): Delete declaration. * config/vax/netbsd-elf.h (CC1_SPEC, CC1PLUS_SPEC) Define. * config/vax/elf.h (NO_EXTERNAL_INDIRECT_ADDRESS, VAX_CC1_AND_CC1PLUS_SPEC, ASM_PREFERRED_EH_DATA_FORMAT, ASM_OUTPUT_DWARF_PCREL): Define. (ASM_SPEC): Change definition to allow PIC generation. From-SVN: r145416
2009-04-01 19:00:00 +02:00
vax-*-linux*)
tm_file="${tm_file} dbxelf.h elfos.h svr4.h linux.h vax/elf.h vax/linux.h"
;;
vax-*-netbsdelf*)
tm_file="${tm_file} elfos.h netbsd.h netbsd-elf.h vax/elf.h vax/netbsd-elf.h"
;;
vax-*-netbsd*)
netbsd.h (TARGET_HAS_F_SETLKW): define. * config/netbsd.h (TARGET_HAS_F_SETLKW): define. Split a.out-specific bits into... * config/netbsd-aout.h: ...this. * config/netbsd-elf.h: New file. * config/alpha/netbsd-elf.h: Remove. * config/alpha/netbsd.h: Rewrite for a NetBSD/alpha ELF target. * config/i386/netbsd-elf.h (LIB_SPEC): Remove. (STARTFILE_SPEC): Remove redundant definition. (ENDFILE_SPEC): Likewise. (LINK_SPEC): Likewise. (CPP_SPEC): Likewise. (ASM_SPEC): Likewise. (LIB_SPEC): Likewise. (SWITCH_TAKES_ARG): Likewise. (TARGET_MEM_FUNCTIONS): Likewise. (CPP_PREDEFINES): Redefine. (ASM_FINAL_SPEC): Remove redefinition. (ASM_COMMENT_START): Redefine. (FUNCTION_PROFILER): Define. (TARGET_VERSION): Redefine. Comment and formatting cleanup. * config/i386/netbsd.h: Include <netbsd-aout.h>. * config/m68k/netbsd.h: Include <netbsd-aout.h>. * config/mips/netbsd.h: Rewrite for NetBSD/mips ELF target, big- or little-endian. * config/ns32k/netbsd.h: Include <netbsd-aout.h>. * config.gcc (*-*-netbsd*): Add definitions common to all NetBSD configs. (alpha*-*-netbsd*): Remove redundant xm_defines, gas, and gnu_ld definitions. Add netbsd-elf.h to and remove alpha/netbsd-elf.h from tm_file. Remove alpha/t-crtfm from tmake_file, and don't lose previous tmake_file contents. (arm*-*-netbsd*): Add netbsd-aout.h to tm_file. (i[34567]86-*-netbsdelf*): Remove redundant xm_defines, gas, and gnu_ld definitions. Add netbsd-elf.h to tm_file. (mips-dec-netbsd*): Remove as alias for mipsel-*-netbsd*. (mipsel-*-netbsd*): Rename this to... (mips*-*-netbsd*): ...this. Add elfos.h to tm_file. Add mips/little.h to tm_file for mips*el-*. (powerpc-*-netbsd*): Remove redundant xm_defines definition. (sparc-*-netbsd*): Add netbsd-aout.h to tm_file. (vax-*-netbsd*): Add netbsd-aout.h to tm_file. From-SVN: r49064
2002-01-22 05:23:07 +01:00
tm_file="${tm_file} netbsd.h netbsd-aout.h vax/netbsd.h"
tmake_file=t-netbsd
extra_parts=""
use_collect2=yes
;;
vax-*-openbsd*)
Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * Makefile.in (INCLUDES): Remove -I$(srcdir)/config. * config.gcc (*-*-openbsd): Don't set tm_file. (alpha*-*-openbsd, arm*-*-coff*, arm*-wince-pe*, arm-*-pe*, avr-*-*, h8300-*-rtems*, h8300-*-elf*, h8300-*-*, hppa*-*-osf*, hppa*-*-bsd*, hppa*-*-hpux*, i370-*-opened*, i370-*-mvs*, i370-*-linux*, i?86-*-openbsd*, i?86-*-lynxos, i?86-*-nto-qnx*, iq2000*-*-elf*, m68000-hp-hpux*, m68k-hp-hpux*, m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*, m68k*-*-netbsd*, m68k*-*-openbsd*, m68k-*-sysv4*, m68k-*-linux*, m68k-*-rtems*, mcore-*-pe*, mips*-*-netbsd*, mips*-*-openbsd*, rs6000-*-lynxos*, sh*-*-elf*, sh*-*-ka, sh-*-rtemself, sparc-*-openbsd*, strongarm-*-pe, vax-*-openbsd*, xscale-*-coff): Use explicit and complete lists of target headers to include. Move definitions to tm_defines where appropriate. (hppa*-*-openbsd*, powerpc-*-openbsd*): Comment out stanza for not-yet-contributed configuration. * config/lynx.h, config/alpha/openbsd.h, config/arm/coff.h * config/avr/avr.h, config/frv/frv.h, config/h8300/elf.h * config/i370/linux.h, config/i370/mvs.h, config/i370/oe.h * config/i386/nto.h, config/iq2000/iq2000.h, * config/m68k/coff.h, config/m68k/hp310.h, config/m68k/hp320.h * config/m68k/linux.h, config/m68k/m68k-aout.h * config/m68k/m68k-none.h, config/m68k/m68kv4.h * config/m68k/netbsd.h, config/m68k/openbsd.h * config/m68k/sgs.h, config/mcore/mcore-pe.h, * config/mips/netbsd.h, config/mips/openbsd.h, config/pa/pa.h, * config/rs6000/lynx.h, config/sh/embed-elf.h, config/sparc/openbsd.h: Remove includes of other target config headers, and definitions of macros moved to tm_defines lists. Add #undefs where now necessary to prevent redefinition warnings. * config/h8300/coff.h: New file split out of... * config/h8300/elf.h: ...here. * config/m68k/hp320base.h: New file split out of... * config/m68k/hp320.h: ...here. * config/rs6000/lynxbase.h: New file split out of... * config/rs6000/lynx.h: ...here. * config/m68k/hp310g.h, config/m68k/hp320g.h, config/m68k/hpux7.h * config/m68k/m68k-coff.h, config/mips/openbsd-be.h: Delete file. * config/sol2.h: Remove #if 0-ed #include of sys/mman.h. * config/m68k/m68kelf.h: Remove commented out #include of m68k/sgs.h. * config/mcore/mcore.h: Don't include hwint.h nor machmode.h. Remove unnecessary #ifndef. * config/s390/s390.h: Prefix #include of s390/fixdfdi.h [under IN_LIBGCC2] with config/. From-SVN: r70651
2003-08-21 19:27:29 +02:00
tm_file="vax/vax.h vax/openbsd1.h openbsd.h vax/openbsd.h"
use_collect2=yes
;;
xstormy16-*-elf)
# For historical reasons, the target files omit the 'x'.
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h svr4.h newlib-stdint.h stormy16/stormy16.h"
tm_p_file=stormy16/stormy16-protos.h
md_file=stormy16/stormy16.md
out_file=stormy16/stormy16.c
extra_options=stormy16/stormy16.opt
tmake_file="stormy16/t-stormy16"
extra_parts="crtbegin.o crtend.o"
;;
xtensa*-*-elf*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h svr4.h newlib-stdint.h xtensa/elf.h"
tmake_file="xtensa/t-xtensa xtensa/t-elf"
;;
xtensa*-*-linux*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="${tm_file} dbxelf.h elfos.h svr4.h linux.h glibc-stdint.h xtensa/linux.h"
tmake_file="${tmake_file} xtensa/t-xtensa xtensa/t-linux"
;;
am33_2.0-*-linux*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="mn10300/mn10300.h dbxelf.h elfos.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*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h svr4.h ${tm_file} m32c/rtems.h rtems.h newlib-stdint.h"
tmake_file="${tmake_file} t-rtems"
c_target_objs="m32c-pragma.o"
cxx_target_objs="m32c-pragma.o"
;;
m32c-*-elf*)
re PR c/448 (<stdint.h>-related issues (C99 issues)) PR c/448 fixincludes: * inclhack.def (newlib_stdint_1, newlib_stdint_2): New fixes. * fixincl.x: Regenerate. * tests/base/stdint.h: Update. gcc: * Makefile.in (USE_GCC_STDINT): Define. (stmp-int-hdrs): Install stdint.h if applicable. * c-common.c (CHAR16_TYPE): Define in terms of UINT_LEAST16_TYPE if known. (CHAR32_TYPE): Define in terms of UINT_LEAST32_TYPE if known. (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. (c_common_nodes_and_builtins): Initialize underlying_wchar_type_node. Do not initialize signed_wchar_type_node or unsigned_wchar_type_node. Initialize nodes for new types. (c_stddef_cpp_builtins): Define macros for new types. * c-common.h (CTI_SIGNED_WCHAR_TYPE, CTI_UNSIGNED_WCHAR_TYPE): Remove. (CTI_UNDERLYING_WCHAR_TYPE, CTI_SIG_ATOMIC_TYPE, CTI_INT8_TYPE, CTI_INT16_TYPE, CTI_INT32_TYPE, CTI_INT64_TYPE, CTI_UINT8_TYPE, CTI_UINT16_TYPE, CTI_UINT32_TYPE, CTI_UINT64_TYPE, CTI_INT_LEAST8_TYPE, CTI_INT_LEAST16_TYPE, CTI_INT_LEAST32_TYPE, CTI_INT_LEAST64_TYPE, CTI_UINT_LEAST8_TYPE, CTI_UINT_LEAST16_TYPE, CTI_UINT_LEAST32_TYPE, CTI_UINT_LEAST64_TYPE, CTI_INT_FAST8_TYPE, CTI_INT_FAST16_TYPE, CTI_INT_FAST32_TYPE, CTI_INT_FAST64_TYPE, CTI_UINT_FAST8_TYPE, CTI_UINT_FAST16_TYPE, CTI_UINT_FAST32_TYPE, CTI_UINT_FAST64_TYPE, CTI_INTPTR_TYPE, CTI_UINTPTR_TYPE): Define. (signed_wchar_type_node, unsigned_wchar_type_node): Remove. (underlying_wchar_type_node, sig_atomic_type_node, int8_type_node, int16_type_node, int32_type_node, int64_type_node, uint8_type_node, uint16_type_node, c_uint32_type_node, c_uint64_type_node, int_least8_type_node, int_least16_type_node, int_least32_type_node, int_least64_type_node, uint_least8_type_node, uint_least16_type_node, uint_least32_type_node, uint_least64_type_node, int_fast8_type_node, int_fast16_type_node, int_fast32_type_node, int_fast64_type_node, uint_fast8_type_node, uint_fast16_type_node, uint_fast32_type_node, uint_fast64_type_node, intptr_type_node, uintptr_type_node): Define. * c-cppbuiltin.c (builtin_define_constants, builtin_define_type_minmax): New. (builtin_define_stdint_macros): Define more macros. (c_cpp_builtins): Define more limit macros. (type_suffix): New. (builtin_define_type_max): Define in terms of builtin_define_type_minmax. Remove is_long parameter. All callers changed. * config.gcc (use_gcc_stdint): Define. (tm_file): Add glibc-stdint.h for targets using glibc or uClibc. Add newlib-stdint.h for generic targets. * config/glibc-stdint.h, config/newlib-stdint.h, ginclude/stdint-gcc.h, ginclude/stdint-wrap.h: New. * config/m32c/m32c.h (UINTPTR_TYPE): Define. * config/score/score.h (UINTPTR_TYPE): Define. * config/sol2.h (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Define. * config/spu/spu.h (STDINT_LONG32): Define. * configure.ac (use_gcc_stdint): Substitute. * configure: Regenerate. * doc/cpp.texi (__SIG_ATOMIC_TYPE__, __INT8_TYPE__, __INT16_TYPE__, __INT32_TYPE__, __INT64_TYPE__, __UINT8_TYPE__, __UINT16_TYPE__, __UINT32_TYPE__, __UINT64_TYPE__, __INT_LEAST8_TYPE__, __INT_LEAST16_TYPE__, __INT_LEAST32_TYPE__, __INT_LEAST64_TYPE__, __UINT_LEAST8_TYPE__, __UINT_LEAST16_TYPE__, __UINT_LEAST32_TYPE_, __UINT_LEAST64_TYPE__, __INT_FAST8_TYPE__, __INT_FAST16_TYPE__, __INT_FAST32_TYPE__, __INT_FAST64_TYPE__, __UINT_FAST8_TYPE__, __UINT_FAST16_TYPE__, __UINT_FAST32_TYPE__, __UINT_FAST64_TYPE__, __INTPTR_TYPE__, __UINTPTR_TYPE__, __WINT_MAX__, __SIZE_MAX__, __PTRDIFF_MAX__, __UINTMAX_MAX__, __SIG_ATOMIC_MAX__, __INT8_MAX__, __INT16_MAX__, __INT32_MAX__, __INT64_MAX__, __UINT8_MAX__, __UINT16_MAX__, __UINT32_MAX__, __UINT64_MAX__, __INT_LEAST8_MAX__, __INT_LEAST16_MAX__, __INT_LEAST32_MAX__, __INT_LEAST64_MAX__, __UINT_LEAST8_MAX__, __UINT_LEAST16_MAX__, __UINT_LEAST32_MAX__, __UINT_LEAST64_MAX__, __INT_FAST8_MAX__, __INT_FAST16_MAX__, __INT_FAST32_MAX__, __INT_FAST64_MAX__, __UINT_FAST8_MAX__, __UINT_FAST16_MAX__, __UINT_FAST32_MAX__, __UINT_FAST64_MAX__, __INTPTR_MAX__, __UINTPTR_MAX__, __WCHAR_MIN__, __WINT_MIN__, __SIG_ATOMIC_MIN__, __INT8_C, __INT16_C, __INT32_C, __INT64_C, __UINT8_C, __UINT16_C, __UINT32_C, __UINT64_C, __INTMAX_C, __UINTMAX_C): Document. * doc/tm.texi (SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE, UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE): Document. gcc/testsuite: * lib/target-supports.exp (check_effective_target_stdint_types): Update comment. (check_effective_target_inttypes_types): New. * gcc.dg/c99-stdint-1.c, gcc.dg/c99-stdint-2.c, gcc.dg/c99-stdint-3.c, gcc.dg/c99-stdint-4.c, gcc.dg/c99-stdint-5.c, gcc.dg/c99-stdint-6.c: New tests. From-SVN: r145372
2009-03-31 22:30:31 +02:00
tm_file="dbxelf.h elfos.h svr4.h newlib-stdint.h ${tm_file}"
c_target_objs="m32c-pragma.o"
cxx_target_objs="m32c-pragma.o"
;;
*)
echo "*** Configuration ${target} not supported" 1>&2
exit 1
;;
esac
case ${target} in
i[34567]86-*-linux* | x86_64-*-linux*)
tmake_file="${tmake_file} i386/t-pmm_malloc i386/t-i386"
;;
i[34567]86-*-* | x86_64-*-*)
tmake_file="${tmake_file} i386/t-gmm_malloc i386/t-i386"
;;
powerpc*-*-* | rs6000-*-*)
tm_file="${tm_file} rs6000/option-defaults.h"
esac
# Support for --with-cpu and related options (and a few unrelated options,
# too).
case ${with_cpu} in
yes | no)
echo "--with-cpu must be passed a value" 1>&2
exit 1
;;
esac
# If there is no $with_cpu option, try to infer one from ${target}.
# This block sets nothing except for with_cpu.
if test x$with_cpu = x ; then
case ${target} in
invoke.texi (generic): Document (i686) Update. * invoke.texi (generic): Document (i686) Update. * config.gcc: Make x86_64-* and i686-* default to generic tunning. * i386.h (TARGET_GENERIC32, TARGET_GENERIC64, TARGET_GENERIC, TARGET_USE_INCDEC, TARGET_PAD_RETURNS): New macros. (x86_use_incdec, x86_pad_returns): New variables (TARGET_CPU_DEFAULT_generic): New constant (TARGET_CPU_DEFAULT_NAMES): Add generic. (enum processor_type): Add generic32 and generic64. * i386.md (cpu attribute): Add generic32/generic64 (movhi splitter): Behave sanely when both partial_reg_dependency and partial_reg_stall are set. (K8 splitters): Enable for generic as well. * predicates.md (incdec_operand): Use TARGET_INCDEC (aligned_operand): Avoid memory mismatch stalls. * athlon.md: Enable for generic64, new patterns for 128bit moves. * ppro.md: Enable for generic32 * i386.c (generic64_cost, generic32_cost): New. (m_GENERIC32, m_GENERIC64, m_GENERIC): New macros. (x86_use_leave): Enable for generic64. (x86_use_sahf, x86_ext_80387_constants): Enable for generic32. (x86_push_memory, x86_movx, x86_unroll_strlen, x86_deep_branch, x86_use_simode_fiop, x86_use_cltd, x86_promote_QImode, x86_sub_esp_4, x86_sub_esp_8, x86_add_esp_4, x86_add_esp_8, x86_integer_DFmode_moves, x86_partial_reg_dependency, x86_memory_mismatch_stall, x86_accumulate_outgoing_args, x86_prologue_using_move, x86_epilogue_using_move, x86_arch_always_fancy_math_387, x86_sse_partial_reg_dependency, x86_four_jump_limit, x86_schedule): Enable for generic. (x86_use_incdec, x86_pad_returns): New. (override_options): Add generic32 and generic64, translate "generic" to generic32/generic64 and "i686" to "generic32", refuse "generic32"/"generic64" as arch target. (ix86_issue_rate, ix86_adjust_cost): Handle generic as athlon. (ix86_reorg): Honor PAD_RETURNS. Co-Authored-By: Evandro Menezes <evandro.menezes@amd.com> Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com> From-SVN: r109971
2006-01-19 18:10:24 +01:00
i386-*-*)
with_cpu=i386
;;
i486-*-*)
with_cpu=i486
;;
i586-*-*)
case ${target_noncanonical} in
k6_2-*)
with_cpu=k6-2
;;
k6_3-*)
with_cpu=k6-3
;;
k6-*)
with_cpu=k6
;;
pentium_mmx-*|winchip_c6-*|winchip2-*|c3-*)
with_cpu=pentium-mmx
;;
*)
with_cpu=pentium
;;
esac
;;
i686-*-* | i786-*-*)
case ${target_noncanonical} in
amdfam10-*|barcelona-*)
2007-02-06 00:33:54 +01:00
with_cpu=amdfam10
;;
k8-*|opteron-*|athlon_64-*)
with_cpu=k8
;;
athlon_xp-*|athlon_mp-*|athlon_4-*)
with_cpu=athlon-4
;;
athlon_tbird-*|athlon-*)
with_cpu=athlon
;;
geode-*)
with_cpu=geode
;;
pentium2-*)
with_cpu=pentium2
;;
pentium3-*|pentium3m-*)
with_cpu=pentium3
;;
pentium4-*|pentium4m-*)
with_cpu=pentium4
;;
prescott-*)
with_cpu=prescott
;;
nocona-*)
with_cpu=nocona
;;
core2-*)
with_cpu=core2
;;
pentium_m-*)
with_cpu=pentium-m
;;
invoke.texi (generic): Document (i686) Update. * invoke.texi (generic): Document (i686) Update. * config.gcc: Make x86_64-* and i686-* default to generic tunning. * i386.h (TARGET_GENERIC32, TARGET_GENERIC64, TARGET_GENERIC, TARGET_USE_INCDEC, TARGET_PAD_RETURNS): New macros. (x86_use_incdec, x86_pad_returns): New variables (TARGET_CPU_DEFAULT_generic): New constant (TARGET_CPU_DEFAULT_NAMES): Add generic. (enum processor_type): Add generic32 and generic64. * i386.md (cpu attribute): Add generic32/generic64 (movhi splitter): Behave sanely when both partial_reg_dependency and partial_reg_stall are set. (K8 splitters): Enable for generic as well. * predicates.md (incdec_operand): Use TARGET_INCDEC (aligned_operand): Avoid memory mismatch stalls. * athlon.md: Enable for generic64, new patterns for 128bit moves. * ppro.md: Enable for generic32 * i386.c (generic64_cost, generic32_cost): New. (m_GENERIC32, m_GENERIC64, m_GENERIC): New macros. (x86_use_leave): Enable for generic64. (x86_use_sahf, x86_ext_80387_constants): Enable for generic32. (x86_push_memory, x86_movx, x86_unroll_strlen, x86_deep_branch, x86_use_simode_fiop, x86_use_cltd, x86_promote_QImode, x86_sub_esp_4, x86_sub_esp_8, x86_add_esp_4, x86_add_esp_8, x86_integer_DFmode_moves, x86_partial_reg_dependency, x86_memory_mismatch_stall, x86_accumulate_outgoing_args, x86_prologue_using_move, x86_epilogue_using_move, x86_arch_always_fancy_math_387, x86_sse_partial_reg_dependency, x86_four_jump_limit, x86_schedule): Enable for generic. (x86_use_incdec, x86_pad_returns): New. (override_options): Add generic32 and generic64, translate "generic" to generic32/generic64 and "i686" to "generic32", refuse "generic32"/"generic64" as arch target. (ix86_issue_rate, ix86_adjust_cost): Handle generic as athlon. (ix86_reorg): Honor PAD_RETURNS. Co-Authored-By: Evandro Menezes <evandro.menezes@amd.com> Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com> From-SVN: r109971
2006-01-19 18:10:24 +01:00
pentiumpro-*)
with_cpu=pentiumpro
;;
invoke.texi (generic): Document (i686) Update. * invoke.texi (generic): Document (i686) Update. * config.gcc: Make x86_64-* and i686-* default to generic tunning. * i386.h (TARGET_GENERIC32, TARGET_GENERIC64, TARGET_GENERIC, TARGET_USE_INCDEC, TARGET_PAD_RETURNS): New macros. (x86_use_incdec, x86_pad_returns): New variables (TARGET_CPU_DEFAULT_generic): New constant (TARGET_CPU_DEFAULT_NAMES): Add generic. (enum processor_type): Add generic32 and generic64. * i386.md (cpu attribute): Add generic32/generic64 (movhi splitter): Behave sanely when both partial_reg_dependency and partial_reg_stall are set. (K8 splitters): Enable for generic as well. * predicates.md (incdec_operand): Use TARGET_INCDEC (aligned_operand): Avoid memory mismatch stalls. * athlon.md: Enable for generic64, new patterns for 128bit moves. * ppro.md: Enable for generic32 * i386.c (generic64_cost, generic32_cost): New. (m_GENERIC32, m_GENERIC64, m_GENERIC): New macros. (x86_use_leave): Enable for generic64. (x86_use_sahf, x86_ext_80387_constants): Enable for generic32. (x86_push_memory, x86_movx, x86_unroll_strlen, x86_deep_branch, x86_use_simode_fiop, x86_use_cltd, x86_promote_QImode, x86_sub_esp_4, x86_sub_esp_8, x86_add_esp_4, x86_add_esp_8, x86_integer_DFmode_moves, x86_partial_reg_dependency, x86_memory_mismatch_stall, x86_accumulate_outgoing_args, x86_prologue_using_move, x86_epilogue_using_move, x86_arch_always_fancy_math_387, x86_sse_partial_reg_dependency, x86_four_jump_limit, x86_schedule): Enable for generic. (x86_use_incdec, x86_pad_returns): New. (override_options): Add generic32 and generic64, translate "generic" to generic32/generic64 and "i686" to "generic32", refuse "generic32"/"generic64" as arch target. (ix86_issue_rate, ix86_adjust_cost): Handle generic as athlon. (ix86_reorg): Honor PAD_RETURNS. Co-Authored-By: Evandro Menezes <evandro.menezes@amd.com> Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com> From-SVN: r109971
2006-01-19 18:10:24 +01:00
*)
with_cpu=generic
;;
esac
;;
x86_64-*-*)
invoke.texi (generic): Document (i686) Update. * invoke.texi (generic): Document (i686) Update. * config.gcc: Make x86_64-* and i686-* default to generic tunning. * i386.h (TARGET_GENERIC32, TARGET_GENERIC64, TARGET_GENERIC, TARGET_USE_INCDEC, TARGET_PAD_RETURNS): New macros. (x86_use_incdec, x86_pad_returns): New variables (TARGET_CPU_DEFAULT_generic): New constant (TARGET_CPU_DEFAULT_NAMES): Add generic. (enum processor_type): Add generic32 and generic64. * i386.md (cpu attribute): Add generic32/generic64 (movhi splitter): Behave sanely when both partial_reg_dependency and partial_reg_stall are set. (K8 splitters): Enable for generic as well. * predicates.md (incdec_operand): Use TARGET_INCDEC (aligned_operand): Avoid memory mismatch stalls. * athlon.md: Enable for generic64, new patterns for 128bit moves. * ppro.md: Enable for generic32 * i386.c (generic64_cost, generic32_cost): New. (m_GENERIC32, m_GENERIC64, m_GENERIC): New macros. (x86_use_leave): Enable for generic64. (x86_use_sahf, x86_ext_80387_constants): Enable for generic32. (x86_push_memory, x86_movx, x86_unroll_strlen, x86_deep_branch, x86_use_simode_fiop, x86_use_cltd, x86_promote_QImode, x86_sub_esp_4, x86_sub_esp_8, x86_add_esp_4, x86_add_esp_8, x86_integer_DFmode_moves, x86_partial_reg_dependency, x86_memory_mismatch_stall, x86_accumulate_outgoing_args, x86_prologue_using_move, x86_epilogue_using_move, x86_arch_always_fancy_math_387, x86_sse_partial_reg_dependency, x86_four_jump_limit, x86_schedule): Enable for generic. (x86_use_incdec, x86_pad_returns): New. (override_options): Add generic32 and generic64, translate "generic" to generic32/generic64 and "i686" to "generic32", refuse "generic32"/"generic64" as arch target. (ix86_issue_rate, ix86_adjust_cost): Handle generic as athlon. (ix86_reorg): Honor PAD_RETURNS. Co-Authored-By: Evandro Menezes <evandro.menezes@amd.com> Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com> From-SVN: r109971
2006-01-19 18:10:24 +01:00
case ${target_noncanonical} in
amdfam10-*|barcelona-*)
2007-02-06 00:33:54 +01:00
with_cpu=amdfam10
;;
invoke.texi (generic): Document (i686) Update. * invoke.texi (generic): Document (i686) Update. * config.gcc: Make x86_64-* and i686-* default to generic tunning. * i386.h (TARGET_GENERIC32, TARGET_GENERIC64, TARGET_GENERIC, TARGET_USE_INCDEC, TARGET_PAD_RETURNS): New macros. (x86_use_incdec, x86_pad_returns): New variables (TARGET_CPU_DEFAULT_generic): New constant (TARGET_CPU_DEFAULT_NAMES): Add generic. (enum processor_type): Add generic32 and generic64. * i386.md (cpu attribute): Add generic32/generic64 (movhi splitter): Behave sanely when both partial_reg_dependency and partial_reg_stall are set. (K8 splitters): Enable for generic as well. * predicates.md (incdec_operand): Use TARGET_INCDEC (aligned_operand): Avoid memory mismatch stalls. * athlon.md: Enable for generic64, new patterns for 128bit moves. * ppro.md: Enable for generic32 * i386.c (generic64_cost, generic32_cost): New. (m_GENERIC32, m_GENERIC64, m_GENERIC): New macros. (x86_use_leave): Enable for generic64. (x86_use_sahf, x86_ext_80387_constants): Enable for generic32. (x86_push_memory, x86_movx, x86_unroll_strlen, x86_deep_branch, x86_use_simode_fiop, x86_use_cltd, x86_promote_QImode, x86_sub_esp_4, x86_sub_esp_8, x86_add_esp_4, x86_add_esp_8, x86_integer_DFmode_moves, x86_partial_reg_dependency, x86_memory_mismatch_stall, x86_accumulate_outgoing_args, x86_prologue_using_move, x86_epilogue_using_move, x86_arch_always_fancy_math_387, x86_sse_partial_reg_dependency, x86_four_jump_limit, x86_schedule): Enable for generic. (x86_use_incdec, x86_pad_returns): New. (override_options): Add generic32 and generic64, translate "generic" to generic32/generic64 and "i686" to "generic32", refuse "generic32"/"generic64" as arch target. (ix86_issue_rate, ix86_adjust_cost): Handle generic as athlon. (ix86_reorg): Honor PAD_RETURNS. Co-Authored-By: Evandro Menezes <evandro.menezes@amd.com> Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com> From-SVN: r109971
2006-01-19 18:10:24 +01:00
k8-*|opteron-*|athlon_64-*)
with_cpu=k8
;;
nocona-*)
with_cpu=nocona
;;
core2-*)
with_cpu=core2
;;
invoke.texi (generic): Document (i686) Update. * invoke.texi (generic): Document (i686) Update. * config.gcc: Make x86_64-* and i686-* default to generic tunning. * i386.h (TARGET_GENERIC32, TARGET_GENERIC64, TARGET_GENERIC, TARGET_USE_INCDEC, TARGET_PAD_RETURNS): New macros. (x86_use_incdec, x86_pad_returns): New variables (TARGET_CPU_DEFAULT_generic): New constant (TARGET_CPU_DEFAULT_NAMES): Add generic. (enum processor_type): Add generic32 and generic64. * i386.md (cpu attribute): Add generic32/generic64 (movhi splitter): Behave sanely when both partial_reg_dependency and partial_reg_stall are set. (K8 splitters): Enable for generic as well. * predicates.md (incdec_operand): Use TARGET_INCDEC (aligned_operand): Avoid memory mismatch stalls. * athlon.md: Enable for generic64, new patterns for 128bit moves. * ppro.md: Enable for generic32 * i386.c (generic64_cost, generic32_cost): New. (m_GENERIC32, m_GENERIC64, m_GENERIC): New macros. (x86_use_leave): Enable for generic64. (x86_use_sahf, x86_ext_80387_constants): Enable for generic32. (x86_push_memory, x86_movx, x86_unroll_strlen, x86_deep_branch, x86_use_simode_fiop, x86_use_cltd, x86_promote_QImode, x86_sub_esp_4, x86_sub_esp_8, x86_add_esp_4, x86_add_esp_8, x86_integer_DFmode_moves, x86_partial_reg_dependency, x86_memory_mismatch_stall, x86_accumulate_outgoing_args, x86_prologue_using_move, x86_epilogue_using_move, x86_arch_always_fancy_math_387, x86_sse_partial_reg_dependency, x86_four_jump_limit, x86_schedule): Enable for generic. (x86_use_incdec, x86_pad_returns): New. (override_options): Add generic32 and generic64, translate "generic" to generic32/generic64 and "i686" to "generic32", refuse "generic32"/"generic64" as arch target. (ix86_issue_rate, ix86_adjust_cost): Handle generic as athlon. (ix86_reorg): Honor PAD_RETURNS. Co-Authored-By: Evandro Menezes <evandro.menezes@amd.com> Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com> From-SVN: r109971
2006-01-19 18:10:24 +01:00
*)
with_cpu=generic
;;
esac
;;
alphaev6[78]*-*-*)
with_cpu=ev67
;;
alphaev6*-*-*)
with_cpu=ev6
;;
alphapca56*-*-*)
with_cpu=pca56
;;
alphaev56*-*-*)
with_cpu=ev56
;;
alphaev5*-*-*)
with_cpu=ev5
;;
frv-*-*linux* | frv400-*-*linux*)
Implement FR-V FDPIC ABI support for frv-uclinux and frv-linux. 2004-02-05 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_emit_movsi): Use GOT relocations for symbols in sections named by the user. 2004-01-30 Alexandre Oliva <aoliva@redhat.com> * config/frv/linux.h (TARGET_OS_CPP_BUILTINS): New. 2004-01-27 Alexandre Oliva <aoliva@redhat.com> * config.gcc (frv-*-*linux*): Handle like *-*-linux*. * config/frv/t-linux (EXTRA_MULTILIB_PARTS): Remove, obviated by the above. 2004-01-20 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.md (symGOT2reg_hilo, symGOTOFF2reg_hilo): Add one more pseudo to further improve code generation. 2004-01-19 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.md (movdi_ldd): Introduce explicit indirection inside UNSPEC. 2004-01-16 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_legitimate_address_p): Added allow_double_reg_p argument. Adjust all callers. Use it to decide whether to enable double-register indirect addressing. (frv_funcdesc_alias_set): Remove. (frv_expand_fdpic_call): Force non-SYMBOL_REF operand into register. Emit movdi_ldd. (ldd_address_operand): New. * config/frv/frv-protos.h (frv_legitimate_address_p): Adjust. * config/frv/frv.h (GO_IF_LEGITIMATE_ADDRESS): Likewise. (PREDICATE_CODES): Add ldd_address_operand. * config/frv/frv.md (movdi_ldd): New. (symGOT2reg_hilo, symGOTOFF2reg_hilo): Use separate pseudo for intermediate computations if possible. (symGOTOFF2reg_i): Fix harmless typo. 2003-12-18 Alexandre Oliva <aoliva@redhat.com> * unwind-dw2-fde-glibc.c (_Unwind_IteratePhdrCallback): Cast relocated p_vaddr to vaddr type. * config/frv/frv-protos.h (frv_expand_fdpic_call): Return void. * config/frv/frv.c (frv_get_funcdesc_alias_set): New. (frv_expand_fdpic_call): Propagate incoming MEM's expr to funcdesc MEM, or use a funcdesc alias set. Use regular move instead of ldd. (dbl_memory_one_insn_operand): Recognize function descriptors by type or by alias set, and don't split them. * config/frv/frv.md (call, call_value): Never use call_internal for fdpic. (call_internal, call_value_internal): Never match for FDPIC. (call_fdpicdi, call_fdpicsi, call_value_fdpicdi, call_value_fdpicsi): Require FDPIC. (ldd): Removed. 2003-12-17 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.h (CRT_GET_RFIB_DATA): Define for __FRV_FDPIC__. * unwind-dw2-fde-glibc.c: Don't include elf-fdpic.h any more. (_Unwind_IteratePhdrCallback): Adjust type of load_base for FRV FDPIC. Compute data base address. * config/frv/linux.h (SUBTARGET_DRIVER_SELF_SPECS): Enable -mfdpic before the other self-specs are processed. * config/frv/t-linux (CRTSTUFF_T_CFLAGS, TARGET_LIBGCC2_CFLAGS): Build with -fPIC. 2003-12-15 Alexandre Oliva <aoliva@redhat.com> * unwind-dw2-fde-glibc.c: Don't include bits/elf-fdpic.h if inhibit_libc is defined. 2003-12-12 Alexandre Oliva <aoliva@redhat.com> * unwind-dw2-fde-glibc.c: Include bits/elf-fdpic.h for __FRV_FDPIC__. (__RELOC_POINTER): Define. (_Unwind_IteratePhdrCallback): Use it. * config/frv/frv.h (Twrite): Define. (TRANSFER_FROM_TRAMPOLINE): Use it. * config/frv/linux.h (INVOKE__main): Undefine. (Twrite): Override. 2003-12-05 Richard Sandiford <rsandifo@redhat.com> * doc/invoke.texi (-mlong-calls, -mlinked-fp): Document FRV options. (-mlibrary-pic): Emphasize that this option generates EABI code. (-mcpu): Add fr550. (-mpack): Remove. 2003-11-30 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (int_2word_operand): Reject LABELs, SYMBOL_REFs and CONSTs in FDPIC mode. * gcc/config.gcc (with_cpu): Default to fr400 on frv-*-*linux*. 2003-11-29 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv.c (move_source_operand): Don't accept symbolic constants. * config/frv/frv.md (*movhi_internal, *movsi_internal): Use an 'n' rather than 'i' constraint for the 2-instruction alternative. (*movsi_2word): New, incorporating existing int_2word_operand splitter. 2003-11-29 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv.h (EXTRA_CONSTRAINT_FOR_Q): Renamed from EXTRA_CONSTRAINT_FOR_Y. (EXTRA_CONSTRAINT): Remove handling of 'Y'. * config/frv/frv.md (*movsi_internal): Remove 'Q' constraint. (addsi3): Change 'Y' constraint to 'Q'. 2003-11-27 Richard Sandiford <rsandifo@redhat.com> * reload.c (CONST_POOL_OK_P): New macro. (find_reloads): Use it to decide whether a constant can be forced into memory. * config/frv/frv.h (LEGITIMATE_PIC_OPERAND_P): Return true if the constant satisfies got12_operand. (frv_cannot_force_const_mem): Always return true for TARGET_FDPIC. (frv_legitimate_address_p): Check for valid unspec offsets using got12_operand rather than frv_legitimate_fdpic_operand_p. (frv_legitimate_fdpic_operand_p): Delete. (frv_emit_movsi): Abort if we try to use the FDPIC register during or after reload. (frv_legitimate_constant_p): Return LEGITIMATE_PIC_OPERAND_P if TARGET_FDPIC. * config/frv/frv.md (*movdf_double): Add alternatives for CONST_DOUBLE. 2003-11-19 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv-protos.h (fdpic_operand, fdpic_got12_operand) (frv_fdpic_fptr_operand): Don't declare here. * config/frv/frv.h (EXTRA_CONSTRAINT_FOR_Y): Call got12_operand rather than fdpic_got12_operand. (PREDICATE_CODES): Remove symbolic_operand entry. Add entries for got12_operand and const_unspec_operand. * config/frv/frv.c (got12_operand): Renamed from fdpic_got12_operand. (gpr_or_int12_operand, dbl_memory_one_insn_operand): Update calls. (symbolic_operand): Remove. (const_unspec_operand): New predicate. * config/frv/frv.md (*movsi_got): Use got12_operand. (*movsi_high_got, *movsi_lo_sum_got): Use const_unspec_operand. 2003-11-18 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv-protos.h (frv_output_addr_const_extra): Remove. * config/frv/frv.h (OUTPUT_ADDR_CONST_EXTRA): Remove definition. * config/frv/frv.c (frv_unspec): New structure. (frv_small_data_reloc_p, frv_const_unspec_p): New functions. (frv_print_operand_memory_reference): Use frv_const_unspec_p to validate CONST indices. Use frv_output_const_unspec to print them. (frv_print_operand): Update call to unspec_got_name. Use frv_output_const_unspec to print constant unspecs. (frv_legitimate_fdpic_operand_p): Return true if frv_const_unspec_p. Reject UNSPECs otherwise. (unspec_got_name): Take the relocation number as argument, not an rtx containing it. (frv_output_addr_const_extra): Remove, replacing with... (frv_output_const_unspec): ...this new function. (frv_find_base_term): Use frv_const_unspec_p & frv_small_data_reloc_p. (gpr_or_int12_operand): Use fdpic_got12_operand. (dbl_memory_one_insn_operand): Likewise. (fdpic_got12_operand): Use frv_const_unspec_p. (frv_emit_movsi): Use frv_const_unspec_p to check for CONSTs that are already legitimate. Use frv_small_data_reloc_p when deciding whether to use HIGH/LO_SUM for R_FRV_GOTOFF12 and R_FRV_GPREL12. 2003-11-18 Alexandre Oliva <aoliva@redhat.com> * config/frv/t-linux (SHLIB_MAPFILES): Override so as to export... * config/frv/libgcc-frv.ver: ... frv-specific symbols. New file. * config/frv/frv-abi.h (CREATE_DOUBLE_SHIFT): Use branch to local label, for real this time. * config/frv/frv.c (frv_local_funcdesc_p): Update to new representation of visibility. (fdpic_got12_operand, symbolic_operand): Mark unused arguments as such. 2003-11-17 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv.h (MASK_LINKED_FP, TARGET_LINKED_FP): New macros. (TARGET_SWITCHES): Add -mlinked-fp and -mno-linked-fp. * config/frv/frv.c (frv_override_options): Set MASK_LINKED_FP unless it was explicitly disabled. (frv_stack_info): There is no need to save the link register in every frame unless TARGET_LINKED_FP is true. (frv_frame_pointer_required): If !TARGET_LINKED_FP, only require a frame pointer if the stack pointer might change value. (frv_return_addr_rtx): Check and process "count" argument. 2003-11-14 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv-protos.h (frv_legitimize_address): Remove. (frv_find_base_term): Declare. * config/frv/frv.h (LEGITIMIZE_ADDRESS): Do nothing. (FIND_BASE_TERM): Define. (PREDICATE_CODES): Remove pic_register_operand, pic_symbolic_operand, small_data_register_operand, small_data_symbolic_operand. Add symbolic_operand. * config/frv/frv.c (const_small_data_p, plus_small_data_p): Delete. (frv_print_operand_memory_reference, output_move_single): Remove special handling for unlegitimized sdata addresses. (frv_legitimate_address_p): Don't allow sums of SDA_BASE_REG and symbolic addresses. (frv_legitimize_address, frv_legitimize_fdpic_address): Delete. (frv_find_base_term): New function. (int_2word_operand): Check specifically for symbolic address constants. (pic_register_operand, pic_symbolic_operand): Delete. (small_data_register_operand, small_data_symbolic_operand): Delete. (dbl_memory_one_insn_operand): Don't call plus_small_data_p. Allow UNSPEC_GOT constants if !TARGET_FDPIC. (move_source_operand): Only accept CONSTs if they're a two-insn symbolic constant. (fdpic_got12_operand): Don't require TARGET_FDPIC. (frv_emit_movsi): Legitimize sdata and -mlibrary-pic addresses using gen_symGOTOFF2reg*. (frv_ifcvt_rewrite_mem): Remove (plus gr16 ...) special cases. (frv_rtx_costs): Give all MEM addresses a cost of 0. Give MEMs themselves a cost of 3 insns. * config/mips/mips.md (*movsi_got): Allow for !TARGET_FDPIC too. Change predicate to symbolic_operand. (*movsi_high_got, *movsi_lo_sum_got): Likewise. (*movsi_lda_sdata): Delete. (*movsi_pic, movsi_high_pic, movsi_lo_sum_pic): Delete. 2003-11-05 Alexandre Oliva <aoliva@redhat.com> * config.gcc: Add t-slibgcc-elf-ver and support --with-cpu for frv-*-*linux*. * config/frv/frv-abi.h (CREATE_DOUBLE_SHIFT): Use branch to local label. * config/frv/frv.h (DRIVER_SELF_SPECS): Add blank before -multilib-library-pic. (LINK_SPEC): Add -z text for -mfdpic. * config/frv/frvbegin.c (__ROFIXUP_LIST__): Don't define on FDPIC. * config/frv/frvend.c (__ROFIXUP_END__): Likewise. * config/frv/linux.h (STARTFILE_SPEC, ENDFILE_SPEC, LINK_SPEC): Override. (OPTION_DEFAULT_SPECS, HAS_INIT_SECTION, INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, CRT_CALL_STATIC_FUNCTION): Define. * config/frv/t-linux (EXTRA_MULTILIB_PARTS): Use crtstuff-generated files. 2003-10-31 Alexandre Oliva <aoliva@redhat.com> * config.gcc: Add frv-*-*linux*. * config/frv/linux.h, config/frv/t-linux: New. 2003-10-06 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.h (LINK_SPEC): Pass -melf32frvfd to the linker when -mfdpic even if a linker script is explicitly listed. 2003-10-02 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_override_options): Clear asm_out unaligned_op for SImode on FDPIC. (frv_emit_movsi): Use compute_reloc_for_constant to compute the argument passed to decl_readonly_section. (frv_assemble_integer): Revert 2003-09-30's change, but make the whole block run with FDPIC even with -fno-PIC. 2003-10-02 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_cannot_force_const_mem): Don't force symbol or label plus offset to memory. (frv_emit_movsi): Emit GPREL only if -mgprel-ro. Emit 32-bit GOTOFF and GPREL for LABEL_REF. * config/frv/frv.h (DRIVER_SELF_SPECS): Add -mgprel-ro with -mfdpic unless -mno-gprel-ro, -fpic or -fpie. (MASK_GPREL_RO, TARGET_GPREL_RO): New. (TARGET_SWITCHES): Added gprel-ro and no-gprel-ro. * doc/invoke.texi: Document them. 2003-09-30 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv-protos.h (frv_gen_GPsym2reg): Declare. (frv_splittable_got_operand): Removed. * config/frv/frv.c (frv_cannot_force_const_mem): Reject HIGH and LO_SUM. Add comments. (frv_override_options): Moved enabling of FDPIC to DRIVER_SELF_SPECS. Don't enable MASK_DWORD. (frv_local_funcdesc_p): Remove unnecessary heck for flag_pie. (frv_legitimize_fdpic_address): Don't duplicate logic in frv_emit_movsi. (frv_gen_GPsym2reg): New. (unspec_got_name): Added gprel. (frv_expand_fdpic_call): Add support for inlining PLTs. (fdpic_fptr_operand): Renamed from frv_fdpic_fptr_operand. (gpr_or_int12_operand): Added GPREL12. (pic_symbolic_operand): Match even if !flag_pic for FDPIC. (small_data_symbolic_operand): Fail if FDPIC. (fdpic_splittable_got_operand): Removed. (fdpic_got12_operand): Added GPREL12. (frv_emit_movsi): Reorganize to avoid duplication. Emit GPREL when appropriate. Fix sdata GOTOFF. (frv_legitimate_constant_p): Require legitimate PIC operand for FDPIC with pic, but only a legitimate fdpic operand for non-pic. (frv_assemble_integer): Move FDPIC funcdesc handling out of flag_pic case. (frv_asm_out_constructor, frv_asm_out_destructor): Abort if frv_assemble_integer fails. * config/frv/frv.h (DRIVER_SELF_SPECS): New. (SUBTARGET_DRIVER_SELF_SPECS): New. (ASM_SPEC): Don't pass -mno-fdpic. (LINK_SPEC): Pass -melf32frvfd for FDPIC. (MASK_INLINE_PLT, TARGET_INLINE_PLT): New. (TARGET_SWITCHES): Add -minline-plt, -mno-inline-plt and -multilib-library-pic. (PREDICATE_CODES): Added fdpic_operand, fdpic_fptr_operand, condexec_si_media_operator, condexec_sf_add_operator and condexec_sf_conv_operator. Removed condexec_sf_binary_operator and condexec_sf_unary_operator. * config/frv/frv.md (R_FRV_GPREL12, R_FRV_GPRELHI, R_FRV_GPRELLO): New. (movsi_got, movsi_high_got, movsi_lo_sum_got): Move before movsi_internal. Give them internal names. movsi_got has type int. (fdpic got splitters): Remove. (symGPREL2reg, symGPREL2reg_hilo): New. * config/frv/t-frv (MULTILIB_MATCHES): Don't map -fpic and -fPIC to -mlibrary-pic. Map -multilib-library-pic to it. * doc/invoke.texi: -mfdpic, -minline-plt, -multilib-library-pic: Document. 2003-09-28 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_function_symbol_referenced_p): Declare. (TARGET_CANNOT_FORCE_CONST_MEM): Define to... (frv_cannot_force_const_mem): New function. (const_small_data_p, plus_small_data_p): Update comments on sdata on FDPIC. (frv_override_options): Set flag_pie for FDPIC too. (frv_conditional_register_usage): Mark gr16 and gr17 as non-fixed, call-saved registers on FDPIC. (frv_stack_info): Don't preserve the PIC register on FDPIC, and don't force LR to be preserved. (frv_expand_prologue): Likewise. (frv_asm_output_mi_thunk): Use 12-bit funcdesc gotoff for -fpic. (frv_frame_pointer_required): Don't force it just because the FDPIC register is used. (frv_legitimate_address_p) <CONST>: Accept a legitimate FDPIC operand only if !condexec_p. (frv_legitimize_address): Return the FDPIC-legitimized address. Don't match small data here on FDPIC. (frv_legitimate_fdpic_operand_p): Don't accept unadorned function symbols. Use TRUE/FALSE instead of 1/0. (frv_local_funcdesc_p): New. (frv_legitimize_fdpic_address): Rewrite to use GOTOFF and 12-bit immediates when possible. (pic_symbolic_operand): Accept SYMBOL_REFs and CONSTs in FDPIC. (dbl_memory_one_insn_operand): Accept addresses that add a REG and an UNSPEC_GOT. (frv_emit_movsi): Handle FDPIC before small data. Use GOTOFF and 12-bit immediates when possible. (frv_legitimate_constant_p): In FDPIC, reject SImode operands that are not legitimate pic operands. (frv_in_small_data_p): Re-enable for FDPIC. * config/frv/frv.h (SDA_BASE_REG): Remove comment about FDPIC. (FRV_GLOBAL_P): Removed. * config/frv/frv.md: Add modes to CONSTs. (movsi_got): New. (movsi_lo_sum_got): Use separate matches instead of match_dup. (movsi_high_pic, movsi_lo_sum_pic): Match on non-FDPIC only. (fdpic splittable operations): Match on flag_pic != 1. 2003-09-22 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_asm_out_constructor, frv_asm_out_destructor): Pass to frv_assemble_integer the size in bytes, not bits. 2003-09-19 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_assemble_integer): Reject complex expressions referencing function SYMBOL_REFs. * config/frv/frv.c (frv_function_symbol_referenced_p): New. (move_source_operand): Reject CONSTs that reference function SYMBOL_REFs on FDPIC. (frv_emit_movsi): If we get such a CONST, break it up. * config/frv/frv.h (CPP_SPEC): Define __FRV_FDPIC__ for -mfdpic. (TRANSFER_FROM_TRAMPOLINE): Use different definitions for FDPIC. * config/frv/frv.c (frv_print_operand) <I>: Recognize PLUS without MEM. (frv_assemble_integer): Don't use funcdesc for LABEL_REFs. (frv_trampoline_size): Increase for FDPIC. * config/frv/frv.h (TRAMPOLINE_ALIGNMENT): Bump to 64 for FDPIC. (TRANSFER_FROM_TRAMPOLINE): Handle FDPIC trampolines. * config/frv/frv.c (frv_legitimize_fdpic_address, frv_emit_movsi): Disable use of GOTOFF for now. (const_small_data_p, plus_small_data_p, frv_in_small_data_p): Disable use of small data in FDPIC for now. (frv_asm_output_mi_thunk): Implement for FDPIC. * config/frv/frv.h (SDA_BASE_REG): Set to -1 with FDPIC. * config/frv/frv.c (frv_asm_out_constructor): Use frv_assemble_integer for FDPIC pointers. (frv_asm_out_destructor): Likewise. * config/frv/frv.md (ldd): Fix order of operands. Use address_operand for input. 2003-09-18 DJ Delorie <dj@redhat.com> * config/frv/frv.c (frv_legitimate_fdpic_operand_p): Remove UNSPEC_PIC. (unspec_got_name): Correct typo. (frv_emit_movsi): Pre-expand splittable GOTs. (frv_expand_fdpic_call): Rename gen_lddi to gen_ldd. * config/frv/frv.md (lddi): Fix syntax error, rename to ldd. (symGOT2reg_hilo, symGOTOFF2reg_hilo): New. * config/frv/t-frv: Add -mfdpic multilibs. * config/frv/frv.h (ASM_SPEC): Pass -mfdpic/-mno-fdpic. (TARGET_SWITCHES): Add -mno-fdpic, fix documentation. * config/frv/frv.c (frv_override_options): -mfdpic assumes flag_pic, default to 32-bit pics, require DWORD ops. (frv_override_options): Add W and Z constraints. (frv_expand_prologue): No pic prologue for -mfdpic. (frv_asm_output_mi_thunk): Support -mfdpic (soon). (frv_print_operand_memory_reference): Handle GOT constants. (frv_legitimate_address_p): Allow GOT constants. (frv_legitimize_address): Handle GOT addresses too. (frv_legitimate_fdpic_operand_p): New. (frv_legitimize_fdpic_address): New. (unspec_got_name): New. (frv_output_addr_const_extra): New. (frv_expand_fdpic_call): New. (frv_fdpic_fptr_operand): New. (gpr_or_int12_operand): Handle GOT operands. (int_2word_operand): Handle GOT operands. (fdpic_operand): New. (fdpic_splittable_got_operand): New. (fdpic_got12_operand): New. (frv_emit_movsi): Handle GOT operands. (frv_assemble_integer): -mfdpic doesn't use rofixups. (frv_print_operand): Support 'g' code for GOT operands. * config/frv/frv-protos.h: Add prototypes as needed. * config/frv/frv.md (R_FRV_GOT12, R_FRV_GOTHI, R_FRV_GOTLO, R_FRV_FUNCDESC, R_FRV_FUNCDESC_GOT12, R_FRV_FUNCDESC_GOTHI, R_FRV_FUNCDESC_GOTLO, R_FRV_FUNCDESC_VALUE, R_FRV_FUNCDESC_GOTOFF12, R_FRV_FUNCDESC_GOTOFFHI, R_FRV_FUNCDESC_GOTOFFLO, R_FRV_GOTOFF12, R_FRV_GOTOFFHI, R_FRV_GOTOFFLO): New. (movsi_high_got, movsi_lo_sum_got): New. (*movsi_pic): Don't use this splitter for -mfdpic. (addsi3): Allow GOT references also. (call, call_value): Handle -mfdpic separately. (call_fdpicdi, call_fdpicsi, lddi, call_value_fdpicdi, call_value_fdpicsi): New. (symGOT2reg, symGOT2reg_i, got splitters, symGOTOFF2reg, symGOTOFF2reg_i): New. * config/frv/frv.h (MASK_FDPIC): New. (TARGET_FDPIC): New. (TARGET_SWITCHES): Add -mfdpic. (FDPIC_FPTR_REGNO): New. (FDPIC_REGNO): New. (OUR_FDPIC_REG): New. (enum reg_class): Add FDPIC_REGS, FDPIC_FPTR_REGS, and FDPIC_CALL_REGS. (REG_CLASS_NAMES): Likewise. (REG_CLASS_CONTENTS): Likewise. (EXTRA_CONSTRAINT_FOR_Y): New, for 12-bit GOTs. (EXTRA_CONSTRAINT): Add it here. (FRV_GLOBAL_P): New. (OUTPUT_ADDR_CONST_EXTRA): New. From-SVN: r78373
2004-02-24 17:58:39 +01:00
with_cpu=fr400
;;
frv550-*-*linux*)
with_cpu=fr550
;;
200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford... gcc/ 200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> Julian Brown <julian@codesourcery.com> * config.gcc (m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*) (m68k-*-uclinux*, m68k-*-linux*, m68k-*-rtems*): Set default_m68k_cpu to the configuration's default CPU. (m68010-*-netbsdelf*, m68k*-*-netbsdelf*, m68k*-*-openbsd*): Likewise. Remove default masks. (m680[012]0-*-*): Set the default with_cpu to the first part of the target name. (m68k*-*-*): Set the default with_cpu to m$default_m68k_cpu. (m68k*-*-linux): Extend the --with-cpu handling to... (m680[012]0-*-*, m68k*-*-*): ...these configurations. Allow m68000 and m68010. Don't set target_cpu_default2. * doc/install.texi: Document --with-cpu for m68k. * config/m68k/m68k.h (OPTION_DEFAULT_SPECS): Define. * config/m68k/m68k-none.h (TARGET_CPU_DEFAULT, M68K_CPU_m68k) (M68K_CPU_m68000, M68K_CPU_m68010, M68K_CPU_m68020, M68K_CPU_m68030) (M68K_CPU_m68040, M68K_CPU_m68302, M68K_CPU_m68332, TARGET_DEFAULT) (ASM_CPU_DEFAULT_SPEC, CC1_CPU_DEFAULT_SPEC): Delete. (ASM_SPEC): Remove use of %(asm_cpu_default). (EXTRA_SPECS, SUBTARGET_EXTRA_SPECS, MULTILIB_DEFAULTS): Delete. * config/m68k/linux.h (TARGET_DEFAULT): Delete. (CPP_SPEC): Merge definitions. Do not handle __HAVE_68881__ here. * config/m68k/netbsd-elf.h (TARGET_OS_CPP_BUILTINS): Define __HAVE_FPU__ if TARGET_HARD_FLOAT. (TARGET_DEFAULT): Delete. (EXTRA_SPECS): Delete cpp_cpu_default_spec, cpp_cpu_spec, cpp_fpu_spec, asm_default_spec and netbsd_cpp_spec. (CPP_CPU_SPEC): Delete. (TARGET_VERSION): Merge definitions, using TARGET_68010 to pick the appropriate string. (CPP_CPU_DEFAULT_SPEC, ASM_DEFAULT_SPEC, CPP_FPU_SPEC): Delete. (CPP_SPEC): Define to NETBSD_CPP_SPEC. (ASM_SPEC): Don't use %(asm_default_spec). * config/m68k/m68k.c (TARGET_DEFAULT_TARGET_FLAGS): Remove TARGET_DEFAULT and add MASK_68881. * config/m68k/m68k.md: Remove mention of TARGET_DEFAULT from comments. Co-Authored-By: Julian Brown <julian@codesourcery.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r120711
2007-01-12 10:28:34 +01:00
m68k*-*-*)
200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> gcc/ 200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (m68010-*-netbsdelf*, m68k*-*-netbsdelf*) (m68k*-*-openbsd*, m68k-*-linux*): Set default_cf_cpu. (m68k-*-aout*, m68k-*-coff*, m68k-*-uclinux*, m68k-*-rtems*): Add m68k/t-mlib to tmake_file. (m68020-*-elf*, m68k-*-elf*): Likewise. Add t-m68kbare as well. (m68k*-*-*): Use --with-arch to pick a default for --with-cpu. (m680[012]0-*-*, m68k*-*-*): Add support for --with-arch. Allow it to be cf or m68k. Set m68k_arch_family. If that variable is not empty, add t-$m68k_arch_family to tmake_file. Add t-mlibs to tmake_file. * doc/install.texi: Document --with-arch=m68k and --with-arch=cf. * config/m68k/t-cf: New file. * config/m68k/t-m68k: Likewise. * config/m68k/t-mlibs: Likewise. * config/m68k/t-m68kbare (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_DIRNAMES, M68K_MLIB_OPTIONS): Define. * config/m68k/t-m68kelf (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS, LIBGCC, INSTALL_LIBGCC): Delete. * config/m68k/t-openbsd (MULTILIB_OPTIONS, LIBGCC): Delete. (INSTALL_LIBGCC): Delete. (M68K_MLIB_DIRNAMES, M68K_MLIB_OPTIONS): Define. * config/m68k/t-rtems (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_CPU): Define. * config/m68k/t-uclinux (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_CPU, M68K_MLIB_OPTIONS, M68K_MLIB_DIRNAMES): Define. Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r121743
2007-02-09 14:47:25 +01:00
case "$with_arch" in
"cf")
with_cpu=${default_cf_cpu}
;;
"" | "m68k")
with_cpu=m${default_m68k_cpu}
;;
esac
200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford... gcc/ 200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> Julian Brown <julian@codesourcery.com> * config.gcc (m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*) (m68k-*-uclinux*, m68k-*-linux*, m68k-*-rtems*): Set default_m68k_cpu to the configuration's default CPU. (m68010-*-netbsdelf*, m68k*-*-netbsdelf*, m68k*-*-openbsd*): Likewise. Remove default masks. (m680[012]0-*-*): Set the default with_cpu to the first part of the target name. (m68k*-*-*): Set the default with_cpu to m$default_m68k_cpu. (m68k*-*-linux): Extend the --with-cpu handling to... (m680[012]0-*-*, m68k*-*-*): ...these configurations. Allow m68000 and m68010. Don't set target_cpu_default2. * doc/install.texi: Document --with-cpu for m68k. * config/m68k/m68k.h (OPTION_DEFAULT_SPECS): Define. * config/m68k/m68k-none.h (TARGET_CPU_DEFAULT, M68K_CPU_m68k) (M68K_CPU_m68000, M68K_CPU_m68010, M68K_CPU_m68020, M68K_CPU_m68030) (M68K_CPU_m68040, M68K_CPU_m68302, M68K_CPU_m68332, TARGET_DEFAULT) (ASM_CPU_DEFAULT_SPEC, CC1_CPU_DEFAULT_SPEC): Delete. (ASM_SPEC): Remove use of %(asm_cpu_default). (EXTRA_SPECS, SUBTARGET_EXTRA_SPECS, MULTILIB_DEFAULTS): Delete. * config/m68k/linux.h (TARGET_DEFAULT): Delete. (CPP_SPEC): Merge definitions. Do not handle __HAVE_68881__ here. * config/m68k/netbsd-elf.h (TARGET_OS_CPP_BUILTINS): Define __HAVE_FPU__ if TARGET_HARD_FLOAT. (TARGET_DEFAULT): Delete. (EXTRA_SPECS): Delete cpp_cpu_default_spec, cpp_cpu_spec, cpp_fpu_spec, asm_default_spec and netbsd_cpp_spec. (CPP_CPU_SPEC): Delete. (TARGET_VERSION): Merge definitions, using TARGET_68010 to pick the appropriate string. (CPP_CPU_DEFAULT_SPEC, ASM_DEFAULT_SPEC, CPP_FPU_SPEC): Delete. (CPP_SPEC): Define to NETBSD_CPP_SPEC. (ASM_SPEC): Don't use %(asm_default_spec). * config/m68k/m68k.c (TARGET_DEFAULT_TARGET_FLAGS): Remove TARGET_DEFAULT and add MASK_68881. * config/m68k/m68k.md: Remove mention of TARGET_DEFAULT from comments. Co-Authored-By: Julian Brown <julian@codesourcery.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r120711
2007-01-12 10:28:34 +01:00
;;
mips*-*-vxworks)
with_arch=mips2
;;
sparc*-*-*)
with_cpu="`echo ${target} | sed 's/-.*$//'`"
;;
esac
# Avoid overriding --with-cpu-32 and --with-cpu-64 values.
case ${target} in
i[34567]86-*-*|x86_64-*-*)
if test x$with_cpu != x; then
if test x$with_cpu_32 != x || test x$with_cpu_64 != x; then
if test x$with_cpu_32 = x; then
with_cpu_32=$with_cpu
fi
if test x$with_cpu_64 = x; then
with_cpu_64=$with_cpu
fi
with_cpu=
fi
fi
;;
esac
fi
# Similarly for --with-schedule.
if test x$with_schedule = x; then
case ${target} in
MAINTAINERS (mt port): Remove. * MAINTAINERS (mt port): Remove. (sco5, unixware, sco udk): Remove. (Kean Johnston): Add to Write After Approval. fixincludes: * inclhack.def (AAB_svr4_replace_byteorder, AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory, libc1_G_va_list, libc1_ifdefd_memx, nested_motorola, ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime, solaris_mutex_init_1, solaris_socket, solaris_unistd, solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param, ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale, ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc, ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings, ultrix_strings2, ultrix_sys_time, ultrix_unistd, unicosmk_restrict, uw7_byteorder_fix, windiss_math1, windiss_math2, windiss_valist): Remove. * fixincl.x: Regenerate. * mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*, i370-*-openedition, i?86-*-moss*, i?86-*-uwin*, powerpc-*-eabiaix*): Remove. * tests/base/math.h: Update. * tests/base/pthread.h: Update. * tests/base/stdio.h: Update. * tests/base/stdlib.h: Update. * tests/base/string.h: Update. * tests/base/strings.h: Update. * tests/base/sys/file.h: Update. * tests/base/sys/limits.h: Update. * tests/base/sys/socket.h: Update. * tests/base/sys/stat.h: Update. * tests/base/sys/time.h: Update. * tests/base/testing.h: Update. * tests/base/unistd.h: Update. * tests/base/_G_config.h: Remove. * tests/base/arpa: Remove directory. * tests/base/fs: Remove directory. * tests/base/locale.h: Remove. * tests/base/machine: Remove directory. * tests/base/rpc/svc.h: Remove. * tests/base/sys/ioctl.h: Remove. * tests/base/sys/regset.h: Remove. * tests/base/sys/times.h: Remove. * tests/base/sys/utsname.h: Remove. * tests/base/widec.h: Remove. gcc: * config.gcc (Obsolete configurations): Remove list of configurations. (Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*, *-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*. Remove other targets matched by those patterns. (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff, i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove. Make code for Solaris 7 and greater unconditional for Solaris. (ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*): Remove --with-* handling. * config/rs6000/sysv4.h (-mwindiss): Remove from all specs. (LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC, ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC, LINK_OS_WINDISS_SPEC): Remove. * config/rs6000/sysv4.opt (mwindiss): Remove. * configure.ac (strongarm*-*-*, xscale*-*-*): Remove. * configure: Regenerate. * doc/cpp.texi: Don't mention BeOS. * doc/extend.texi (interrupt): Don't mention MS1. * doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv, m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv, alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout, i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4, powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix): Remove. * doc/invoke.texi (MT Options): Remove. (-mwindiss): Remove. (CRIS Options): Remove cris-axis-aout references. (HPPA Options): Don't mention hppa1.1-*-pro. * doc/md.texi: (MorphoTech family): Remove. * libgcc2.c: Don't handle UWIN. * config/alpha/t-unicosmk: Remove. * config/alpha/unicosmk.h: Remove. * config/arm/kaos-arm.h: Remove. * config/arm/kaos-strongarm.h: Remove. * config/arm/strongarm-coff.h: Remove. * config/arm/strongarm-elf.h: Remove. * config/arm/strongarm-pe.h: Remove. * config/arm/t-strongarm-pe: Remove. * config/arm/t-xscale-coff: Remove. * config/arm/t-xscale-elf: Remove. * config/arm/xscale-coff.h: Remove. * config/arm/xscale-elf.h: Remove. * config/chorus.h: Remove. * config/cris/aout.h: Remove. * config/cris/aout.opt: Remove. * config/cris/t-aout: Remove. * config/i386/beos-elf.h: Remove. * config/i386/kaos-i386.h: Remove. * config/i386/ptx4-i.h: Remove. * config/i386/sco5.h: Remove. * config/i386/sco5.opt: Remove. * config/i386/sysv4-cpp.h: Remove. * config/i386/sysv5.h: Remove. * config/i386/t-beos: Remove. * config/i386/t-sco5: Remove. * config/i386/t-uwin: Remove. * config/i386/uwin.asm: Remove. * config/i386/uwin.h: Remove. * config/kaos.h: Remove. * config/mips/windiss.h: Remove. * config/mt: Remove directory. * config/pa/pa-osf.h: Remove. * config/pa/pa-pro-end.h: Remove. * config/pa/t-pro: Remove. * config/ptx4.h: Remove. * config/rs6000/beos.h: Remove. * config/rs6000/kaos-ppc.h: Remove. * config/rs6000/t-beos: Remove. * config/rs6000/windiss.h: Remove. * config/sh/kaos-sh.h: Remove. * config/sol2-6.h: Remove. * config/sparc/sol26-sld.h: Remove. * config/sparc/sysv4-only.h: Remove. * config/vax/bsd.h: Remove. * config/vax/t-memfuncs: Remove. * config/vax/ultrix.h: Remove. * config/vax/vaxv.h: Remove. * config/windiss.h: Remove. gcc/testsuite: * g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*. * g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*. * g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris 7. * gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*, strongarm*-*-* and cris-*-aout*. * gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20030909-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20031108-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20040813-1.c: Don't handle *-*-sysv5*. * gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*. * gcc.dg/arm-scd42-1.c: Use target arm*-*-*. * gcc.dg/arm-scd42-3.c: Use target arm*-*-*. * gcc.dg/cpp/assert4.c: Don't handle BeOS. * gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*. * gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and xscale*-*-elf*. * gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*. * gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1. * gcc.misc-tests/arm-isr.exp: Use target arm*-*-*. * gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-stackalign-1.c: Don't handle powerpc-*-sysv*. * gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*. * lib/target-supports.exp: Don't handle strongarm*-*-elf, xscale*-*-elf and *-*-windiss. * obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*. * gcc.dg/mt-loopi1.c: Remove. gnattools: * configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove. * configure: Regenerate. libcpp: * configure.ac (parisc*64*-*-*): Remove. * configure: Regenerate. libffi: * configure.ac (parisc*-*-linux*, powerpc-*-sysv*, powerpc-*-beos*): Remove. * configure: Regenerate. libgcc: * config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove. libjava: * configure.host (strongarm*-elf, xscale*-elf): Remove. libstdc++-v3: * configure.host (xscale, ep9312, m680[246]0, solaris2.5, solaris2.5.[0-9], solaris2.6, windiss*): Remove. * crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove. * configure: Regenerate. * config/os/solaris/solaris2.5: Remove directory. * config/os/solaris/solaris2.6: Remove directory. * config/os/windiss: Remove directory. From-SVN: r136534
2008-06-07 20:00:15 +02:00
hppa1*)
# Override default PA8000 scheduling model.
with_schedule=7100LC
;;
esac
fi
# Validate and mark as valid any --with options supported
# by this target. In order to use a particular --with option
# you must list it in supported_defaults; validating the value
# is optional. This case statement should set nothing besides
# supported_defaults.
supported_defaults=
case "${target}" in
alpha*-*-*)
supported_defaults="cpu tune"
for which in cpu tune; do
eval "val=\$with_$which"
case "$val" in
"" \
| ev4 | ev45 | 21064 | ev5 | 21164 | ev56 | 21164a \
| pca56 | 21164PC | 21164pc | ev6 | 21264 | ev67 \
| 21264a)
;;
*)
echo "Unknown CPU used in --with-$which=$val" 1>&2
exit 1
;;
esac
done
;;
arm*-*-*)
supported_defaults="arch cpu float tune fpu abi mode"
for which in cpu tune; do
# See if it matches any of the entries in arm-cores.def
eval "val=\$with_$which"
if [ x"$val" = x ] \
|| grep "^ARM_CORE(\"$val\"," \
${srcdir}/config/arm/arm-cores.def \
> /dev/null; then
# Ok
new_val=`grep "^ARM_CORE(\"$val\"," \
${srcdir}/config/arm/arm-cores.def | \
sed -e 's/^[^,]*,[ ]*//' | \
sed -e 's/,.*$//'`
eval "target_${which}_cname=$new_val"
echo "For $val real value is $new_val"
true
else
echo "Unknown CPU used in --with-$which=$val" 1>&2
exit 1
fi
done
case "$with_arch" in
"" \
backport: re PR target/12476 (ARM/THUMB thunk calls broken) Merge from csl-arm-branch. 2004-01-30 Paul Brook <paul@codesourcery.com> * aof.h (REGISTER_NAMES): Add vfp reg names (ADDITIONAL_REGISTER_NAMES): Ditto. * aout.h (REGISTER_NAMES): Ditto. (ADDITIONAL_REGISTER_NAMES): Ditto. * arm-protos.h: Update/Add Prototypes. * arm.c (init_fp_table): Rename from init_fpa_table. Update users. Only allow 0.0 for VFP. (fp_consts_inited): Rename from fpa_consts_inited. Update users. (values_fp): Rename from values_fpa. Update Users. (arm_const_double_rtx): Rename from const_double_rtx_ok_for_fpa. Update users. Only check valid constants for this hardware. (arm_float_rhs_operand): Rename from fpa_rhs_operand. Update Users. Only allow consts for FPA. (arm_float_add_operand): Rename from fpa_add_operand. Update users. Only allow consts for FPA. (use_return_insn): Check for saved VFP regs. (arm_legitimate_address_p): Handle VFP DFmode addressing. (arm_legitimize_address): Ditto. (arm_general_register_operand): New function. (vfp_mem_operand): New function. (vfp_compare_operand): New function. (vfp_secondary_reload_class): New function. (arm_float_compare_operand): New function. (vfp_print_multi): New function. (vfp_output_fstmx): New function. (vfp_emit_fstm): New function. (arm_output_epilogue): Output VPF reg restore code. (arm_expand_prologue): Output VFP reg save code. (arm_print_operand): Add 'P'. (arm_hard_regno_mode_ok): Return modes for VFP regs. (arm_regno_class): Return classes for VFP regs. (arm_compute_initial_elimination_offset): Include space for VFP regs. (arm_get_frame_size): Ditto. * arm.h (FIXED_REGISTERS): Add VFP regs. (CALL_USED_REGISTERS): Ditto. (CONDITIONAL_REGISTER_USAGE): Enable VFP regs. (FIRST_VFP_REGNUM): Define. (LAST_VFP_REGNUM): Define. (IS_VFP_REGNUM): Define. (FIRST_PSEUDO_REGISTER): Include VFP regs. (HARD_REGNO_NREGS): Handle VFP regs. (REG_ALLOC_ORDER): Add VFP regs. (enum reg_class): Add VFP_REGS. (REG_CLASS_NAMES): Ditto. (REG_CLASS_CONTENTS): Ditto. (CANNOT_CHANGE_MODE_CLASS) Handle VFP Regs. (REG_CLASS_FROM_LETTER): Add 'w'. (EXTRA_CONSTRAINT_ARM): Add 'U'. (EXTRA_MEMORY_CONSTRAINT): Define. (SECONDARY_OUTPUT_RELOAD_CLASS): Handle VFP regs. (SECONDARY_INPUT_RELOAD_CLASS): Ditto. (REGISTER_MOVE_COST): Ditto. (PREDICATE_CODES): Add arm_general_register_operand, arm_float_compare_operand and vfp_compare_operand. * arm.md (various): Rename as above. (divsf3): Enable when TARGET_VFP. (divdf3): Ditto. (movdfcc): Ditto. (sqrtsf2): Ditto. (sqrtdf2): Ditto. (arm_movdi): Disable when TARGET_VFP. (arm_movsi_insn): Ditto. (movsi): Only split with general regs. (cmpsf): Use arm_float_compare_operand. (push_fp_multi): Restrict to TARGET_FPA. (vfp.md): Include. * vfp.md: New file. * fpa.md (various): Rename as above. * doc/md.texi: Document ARM w and U constraints. 2004-01-15 Paul Brook <paul@codesourcery.com> * config.gcc: Add with_fpu. Allow with-float=softfp. * config/arm/arm.c (arm_override_options): Rename *-s to *s. Break out of loop when we find a float-abi. Fix typo. * config/arm/arm.h (OPTION_DEFAULT_SPECS): Add "fpu". Set -mfloat-abi=. * doc/install.texi: Document --with-fpu. 2003-01-14 Paul Brook <paul@codesourcery.com> * config.gcc (with_arch): Add armv6. * config/arm/arm.h: Rename TARGET_CPU_*_s to TARGET_CPU_*s. * config/arm/arm.c (arm_overrride_options): Ditto. 2004-01-08 Richard Earnshaw <rearnsha@arm.com> * arm.c (FL_ARCH3M): Renamed from FL_FAST_MULT. (FL_ARCH6): Renamed from FL_ARCH6J. (arm_arch3m): Renamed from arm_fast_multiply. (arm_arch6): Renamed from arm_arch6j. * arm.h: Update all uses of above. * arm-cores.def: Likewise. * arm.md: Likewise. * arm.h (CPP_CPU_ARCH_SPEC): Emit __ARM_ARCH_6J__ define for armV6j, not arm6j. Add entry for arch armv6. 2004-01-07 Richard Earnshaw <rearnsha@arm.com> * arm.c (arm_emit_extendsi): Delete. * arm-protos.h (arm_emit_extendsi): Delete. * arm.md (zero_extendhisi2): Also handle zero-extension of non-subregs. (zero_extendqisi2, extendhisi2, extendqisi2): Likewise. (thumb_zero_extendhisi2): Only match if not v6. (arm_zero_extendhisi2, thumb_zero_extendqisi2, arm_zero_extendqisi2) (thumb_extendhisi2, arm_extendhisi2, arm_extendqisi) (thumb_extendqisi2): Likewise. (thumb_zero_extendhisi2_v6, arm_zero_extendhisi2_v6): New patterns. (thumb_zero_extendqisi2_v6, arm_zero_extendqisi2_v6): New patterns. (thumb_extendhisi2_insn_v6, arm_extendhisi2_v6): New patterns. (thumb_extendqisi2_v6, arm_extendqisi_v6): New patterns. (arm_zero_extendhisi2_reg, arm_zero_extendqisi2_reg): Delete. (arm_extendhisi2_reg, arm_extendqisi2_reg): Delete. (arm_zero_extendhisi2addsi): Remove subreg. Add attributes. (arm_zero_extendqisi2addsi, arm_extendhisi2addsi): Likewise. (arm_extendqisi2addsi): Likewise. 2003-12-31 Mark Mitchell <mark@codesourcery.com> Revert this change: * config/arm/arm.h (THUMB_LEGTITIMIZE_RELOAD_ADDRESS): Reload REG + REG addressing modes. * config/arm/arm.h (THUMB_LEGTITIMIZE_RELOAD_ADDRESS): Reload REG + REG addressing modes. 2003-12-30 Mark Mitchell <mark@codesourcery.com> * config/arm/arm.h (THUMB_LEGITIMATE_CONSTANT_P): Accept CONSTANT_P_RTX. 2003-30-12 Paul Brook <paul@codesourcery.com> * longlong.h: protect arm inlines with !defined (__thumb__) 2003-30-12 Paul Brook <paul@codesourcery.com> * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Always define __arm__. 2003-12-30 Nathan Sidwell <nathan@codesourcery.com> * builtins.c (expand_builtin_apply_args_1): Fix typo in previous change. 2003-12-29 Nathan Sidwell <nathan@codesourcery.com> * builtins.c (expand_builtin_apply_args_1): Add pretend args size to the virtual incoming args pointer for downward stacks. 2003-12-29 Paul Brook <paul@codesourcery.com> * config/arm/arm-cores.def: Add cost function. * config/arm/arm.c (arm_*_rtx_costs): New functions. (arm_rtx_costs): Remove (struct processors): Add rtx_costs field. (all_cores, all_architectures): Ditto. (arm_override_options): Set targetm.rtx_costs. (thumb_rtx_costs): New function. (arm_rtx_costs_1): Remove cases handled elsewhere. * config/arm/arm.h (processor_type): Add COSTS parameter. 2003-12-29 Nathan Sidwell <nathan@codesourcery.com> * config/arm/arm.md (generic_sched): arm926 has its own scheduler. (arm926ejs.md): Include it. * config/arm/arm926ejs.md: New pipeline description. 2003-12-24 Paul Brook <paul@codesourcery.com> * config/arm/arm.c (arm_arch6j): New variable. (arm_override_options): Set it. (arm_emit_extendsi): New function. * config/arm/arm-protos.h (arm_emit_extendsi): Add prototype. * config/arm/arm.h (arm_arch6j): Declare. * config/arm/arm.md: Add sign/zero extend insns. 2003-12-23 Paul Brook <paul@codesourcery.com> * config/arm/arm.c (all_architectures): Add armv6. * doc/invoke.texi: Document it. 2003-12-19 Paul Brook <paul@codesourcery.com> * config/arm/arm.md: Add load1 and load_byte "type" attrs. Modify insn patterns to match. * config/arm/arm-generic.md: Ditto. * config/arm/cirrus.md: Ditto. * config/arm/fpa.md: Ditto. * config/amm/iwmmxt.md: Ditto. * config/arm/arm1026ejs.md: Ditto. * config/arm/arm1135jfs.md: Ditto. Add insn_reservation and bypasses for 11_loadb. 2003-12-18 Nathan Sidwell <nathan@codesourcery.com> * config/arm/arm-protos.h (arm_no_early_alu_shift_value_dep): Declare. * config/arm/arm.c (arm_adjust_cost): Check shift cost for TYPE_ALU_SHIFT and TYPE_ALU_SHIFT_REG. (arm_no_early_store_addr_dep, arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Correctly deal with conditional execution, parallels and single shift operations. (arm_no_early_alu_shift_value_dep): Define. * arm.md (attr type): Replace 'normal' with 'alu', 'alu_shift' and 'alu_shift_reg'. (attr core_cycles): Adjust. (*addsi3_carryin_shift, andsi_not_shiftsi_si, *arm_shiftsi3, *shiftsi3_compare0, *notsi_shiftsi, *notsi_shiftsi_compare0, *not_shiftsi_compare0_scratch, *cmpsi_shiftsi, *cmpsi_shiftsi_swp, *cmpsi_neg_shiftsi, *arith_shiftsi, *arith_shiftsi_compare0, *arith_shiftsi_compare0_scratch, *sub_shiftsi, *sub_shiftsi_compare0, *sub_shiftsi_compare0_scratch, *if_shift_move, *if_move_shift, *if_shift_shift): Set type attribute appropriately. * config/arm/arm1026ejs.md (alu_op): Adjust. (alu_shift_op, alu_shift_reg_op): New. * config/arm/arm1136.md: Add better bypasses for early registers. Remove load[234] and store[234] bypasses. (11_alu_op): Adjust. (11_alu_shift_op, 11_alu_shift_reg_op): New. 2003-12-15 Nathan Sidwell <nathan@codesourcery.com> * config/arm/arm-protos.h (arm_no_early_store_addr_dep, arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Declare. * config/arm/arm.c (arm_no_early_store_addr_dep, arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Define. * config/arm/arm1026ejs.md: Add load-store bypass. * config/arm/arm1136jfs.md (11_alu_op): Take 2 cycles. Add bypasses between instructions. 2003-12-10 Paul Brook <paul@codesourcery.com> * config/arm/arm.c (arm_fpu_model): New variable. (arm_fload_abi): New variable. (target_fpe_name): Rename from target_fp_name. (target_fpu_name): New variable. (arm_is_cirrus): Remove. (fpu_desc): New struct. (all_fpus): Define. (pf_model_for_fpu): Define. (all_loat_abis): Define. (arm_override_options): Set fp arch flags based on -mfpu= and -float-abi=. (FIRST_FPA_REGNUM): Rename from FIRST_ARM_FP_REGNUM. (LAST_FPA_REGNUM): Rename from LAST_ARM_FP_REGNUM. (*): Use new TARGET_* flags. * config/arm/arm.h (TARGET_ANY_HARD_FLOAT): Remove. (TARGET_HARD_FLOAT): No longer implies TARGET_FPA. (TARGET_SOFT_FLOAT): Ditto. (TARGET_SOFT_FLOAT_ABI): New. (TARGET_MAVERICK): Rename from TARGET_CIRRUS. No longer implies TARGET_HARD_FLOAT. (TARGET_VFP): No longer implies TARGET_HARD_FLOAT. (TARGET_OPTIONS): Add -mfpu=. (FIRST_FPA_REGNUM): Rename from FIRST_ARM_FP_REGNUM. (LAST_FPA_REGNUM): Rename from LAST_ARM_FP_REGNUM. (arm_pf_model): Define. (arm_float_abi_type): Define. (fputype): Add FPUTYPE_VFP. Change SOFT_FPA->NONE * config/arm/arm.md: Use new TARGET_* flags. * config/arm/cirrus.md: Ditto. * config/arm/fpa.md: Ditto. * config/arm/elf.h (ASM_SPEC): Pass -mfloat-abi= and -mfpu=. * config/arm/semi.h (ASM_SPEC): Ditto. * config/arm/netbsd-elf.h (SUBTARGET_ASM_FLOAT_SPEC): Specify vfp. (FPUTYPE_DEFAULT): Set to VFP. * doc/invoke.texi: Document -mfpu= and -mfloat-abi=. 2003-11-22 Phil Edwards <phil@codesourcery.com> PR target/12476 * config/arm/arm.c (arm_output_mi_thunk): In Thumb mode, use 'bx' instead of 'b' to avoid branch range restrictions. Output the thunk immediately before the thunked-to function. * config/arm/arm.h (ARM_DECLARE_FUNCTION_NAME): Do not emit .thumb_func if a thunk is being generated. Emit .code 16 along with .thumb_func if a thunk is not being generated. 2003-11-15 Nicolas Pitre <nico@cam.org> * config/arm/arm.md (ashldi3, arm_ashldi3_1bit, ashrdi3, arm_ashrdi3_1bit, lshrdi3, arm_lshrdi3_1bit): New patterns. * config/arm/iwmmxt.md (ashrdi3_iwmmxt): Renamed from ashrdi3. (lshrdi3_iwmmxt): Renamed from lshrdi3. * config/arm/arm.c (IWMMXT_BUILTIN2): Renamed argument accordingly. 2003-11-12 Steve Woodford <scw@wasabisystems.com> Ian Lance Taylor <ian@wasabisystems.com> * config/arm/lib1funcs.asm (ARM_DIV_BODY, ARM_MOD_BODY): Add new code for __ARM_ARCH__ >= 5 && ! defined (__OPTIMIZE_SIZE__). 2003-11-05 Phil Edwards <phil@codesourcery.com> * config/arm/arm.md (insn): Add new V6 instruction names. (generic_sched): New attr. * config/arm/arm-generic.md: Use generic_sched here. * config/arm/arm1026ejs.md: Do not model fetch/issue/decode stages of pipeline. Adjust latency counts accordingly. * config/arm/arm1136jfs.md: New file. 2003-10-28 Mark Mitchell <mark@codesourcery.com> * config/arm/arm.h (processor_type): New enumeration type. (CPP_ARCH_DEFAULT_SPEC): Set appropriately for ARM 926EJ-S, ARM1026EJ-S, ARM1136J-S, and ARM1136JF-S processor cores. (CPP_CPU_ARCH_SPEC): Likewise. * config/arm/arm.c (arm_tune): New variable. (all_cores): Use cores.def. (all_architectures): Add representative processor. (arm_override_options): Restructure way in which tuning information is deduced. * arm.md: Update "insn" and "type" attributes throughout. (insn): New attribute. (type): Compute "mult" from "insn" attribute. Add load2, load3, load4 alternatives. (arm automaton): Move to arm-generic.md. * config/arm/arm-cores.def: New file. * config/arm/arm-generic.md: Likewise. * config/arm/arm1026ejs.md: Likewise. From-SVN: r77171
2004-02-03 15:45:44 +01:00
| armv[23456] | armv2a | armv3m | armv4t | armv5t \
| armv5te | armv6j |armv6k | armv6z | armv6zk | armv6-m \
| armv7 | armv7-a | armv7-r | armv7-m \
| iwmmxt | ep9312)
# OK
;;
*)
echo "Unknown arch used in --with-arch=$with_arch" 1>&2
exit 1
;;
esac
case "$with_float" in
"" \
backport: re PR target/12476 (ARM/THUMB thunk calls broken) Merge from csl-arm-branch. 2004-01-30 Paul Brook <paul@codesourcery.com> * aof.h (REGISTER_NAMES): Add vfp reg names (ADDITIONAL_REGISTER_NAMES): Ditto. * aout.h (REGISTER_NAMES): Ditto. (ADDITIONAL_REGISTER_NAMES): Ditto. * arm-protos.h: Update/Add Prototypes. * arm.c (init_fp_table): Rename from init_fpa_table. Update users. Only allow 0.0 for VFP. (fp_consts_inited): Rename from fpa_consts_inited. Update users. (values_fp): Rename from values_fpa. Update Users. (arm_const_double_rtx): Rename from const_double_rtx_ok_for_fpa. Update users. Only check valid constants for this hardware. (arm_float_rhs_operand): Rename from fpa_rhs_operand. Update Users. Only allow consts for FPA. (arm_float_add_operand): Rename from fpa_add_operand. Update users. Only allow consts for FPA. (use_return_insn): Check for saved VFP regs. (arm_legitimate_address_p): Handle VFP DFmode addressing. (arm_legitimize_address): Ditto. (arm_general_register_operand): New function. (vfp_mem_operand): New function. (vfp_compare_operand): New function. (vfp_secondary_reload_class): New function. (arm_float_compare_operand): New function. (vfp_print_multi): New function. (vfp_output_fstmx): New function. (vfp_emit_fstm): New function. (arm_output_epilogue): Output VPF reg restore code. (arm_expand_prologue): Output VFP reg save code. (arm_print_operand): Add 'P'. (arm_hard_regno_mode_ok): Return modes for VFP regs. (arm_regno_class): Return classes for VFP regs. (arm_compute_initial_elimination_offset): Include space for VFP regs. (arm_get_frame_size): Ditto. * arm.h (FIXED_REGISTERS): Add VFP regs. (CALL_USED_REGISTERS): Ditto. (CONDITIONAL_REGISTER_USAGE): Enable VFP regs. (FIRST_VFP_REGNUM): Define. (LAST_VFP_REGNUM): Define. (IS_VFP_REGNUM): Define. (FIRST_PSEUDO_REGISTER): Include VFP regs. (HARD_REGNO_NREGS): Handle VFP regs. (REG_ALLOC_ORDER): Add VFP regs. (enum reg_class): Add VFP_REGS. (REG_CLASS_NAMES): Ditto. (REG_CLASS_CONTENTS): Ditto. (CANNOT_CHANGE_MODE_CLASS) Handle VFP Regs. (REG_CLASS_FROM_LETTER): Add 'w'. (EXTRA_CONSTRAINT_ARM): Add 'U'. (EXTRA_MEMORY_CONSTRAINT): Define. (SECONDARY_OUTPUT_RELOAD_CLASS): Handle VFP regs. (SECONDARY_INPUT_RELOAD_CLASS): Ditto. (REGISTER_MOVE_COST): Ditto. (PREDICATE_CODES): Add arm_general_register_operand, arm_float_compare_operand and vfp_compare_operand. * arm.md (various): Rename as above. (divsf3): Enable when TARGET_VFP. (divdf3): Ditto. (movdfcc): Ditto. (sqrtsf2): Ditto. (sqrtdf2): Ditto. (arm_movdi): Disable when TARGET_VFP. (arm_movsi_insn): Ditto. (movsi): Only split with general regs. (cmpsf): Use arm_float_compare_operand. (push_fp_multi): Restrict to TARGET_FPA. (vfp.md): Include. * vfp.md: New file. * fpa.md (various): Rename as above. * doc/md.texi: Document ARM w and U constraints. 2004-01-15 Paul Brook <paul@codesourcery.com> * config.gcc: Add with_fpu. Allow with-float=softfp. * config/arm/arm.c (arm_override_options): Rename *-s to *s. Break out of loop when we find a float-abi. Fix typo. * config/arm/arm.h (OPTION_DEFAULT_SPECS): Add "fpu". Set -mfloat-abi=. * doc/install.texi: Document --with-fpu. 2003-01-14 Paul Brook <paul@codesourcery.com> * config.gcc (with_arch): Add armv6. * config/arm/arm.h: Rename TARGET_CPU_*_s to TARGET_CPU_*s. * config/arm/arm.c (arm_overrride_options): Ditto. 2004-01-08 Richard Earnshaw <rearnsha@arm.com> * arm.c (FL_ARCH3M): Renamed from FL_FAST_MULT. (FL_ARCH6): Renamed from FL_ARCH6J. (arm_arch3m): Renamed from arm_fast_multiply. (arm_arch6): Renamed from arm_arch6j. * arm.h: Update all uses of above. * arm-cores.def: Likewise. * arm.md: Likewise. * arm.h (CPP_CPU_ARCH_SPEC): Emit __ARM_ARCH_6J__ define for armV6j, not arm6j. Add entry for arch armv6. 2004-01-07 Richard Earnshaw <rearnsha@arm.com> * arm.c (arm_emit_extendsi): Delete. * arm-protos.h (arm_emit_extendsi): Delete. * arm.md (zero_extendhisi2): Also handle zero-extension of non-subregs. (zero_extendqisi2, extendhisi2, extendqisi2): Likewise. (thumb_zero_extendhisi2): Only match if not v6. (arm_zero_extendhisi2, thumb_zero_extendqisi2, arm_zero_extendqisi2) (thumb_extendhisi2, arm_extendhisi2, arm_extendqisi) (thumb_extendqisi2): Likewise. (thumb_zero_extendhisi2_v6, arm_zero_extendhisi2_v6): New patterns. (thumb_zero_extendqisi2_v6, arm_zero_extendqisi2_v6): New patterns. (thumb_extendhisi2_insn_v6, arm_extendhisi2_v6): New patterns. (thumb_extendqisi2_v6, arm_extendqisi_v6): New patterns. (arm_zero_extendhisi2_reg, arm_zero_extendqisi2_reg): Delete. (arm_extendhisi2_reg, arm_extendqisi2_reg): Delete. (arm_zero_extendhisi2addsi): Remove subreg. Add attributes. (arm_zero_extendqisi2addsi, arm_extendhisi2addsi): Likewise. (arm_extendqisi2addsi): Likewise. 2003-12-31 Mark Mitchell <mark@codesourcery.com> Revert this change: * config/arm/arm.h (THUMB_LEGTITIMIZE_RELOAD_ADDRESS): Reload REG + REG addressing modes. * config/arm/arm.h (THUMB_LEGTITIMIZE_RELOAD_ADDRESS): Reload REG + REG addressing modes. 2003-12-30 Mark Mitchell <mark@codesourcery.com> * config/arm/arm.h (THUMB_LEGITIMATE_CONSTANT_P): Accept CONSTANT_P_RTX. 2003-30-12 Paul Brook <paul@codesourcery.com> * longlong.h: protect arm inlines with !defined (__thumb__) 2003-30-12 Paul Brook <paul@codesourcery.com> * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Always define __arm__. 2003-12-30 Nathan Sidwell <nathan@codesourcery.com> * builtins.c (expand_builtin_apply_args_1): Fix typo in previous change. 2003-12-29 Nathan Sidwell <nathan@codesourcery.com> * builtins.c (expand_builtin_apply_args_1): Add pretend args size to the virtual incoming args pointer for downward stacks. 2003-12-29 Paul Brook <paul@codesourcery.com> * config/arm/arm-cores.def: Add cost function. * config/arm/arm.c (arm_*_rtx_costs): New functions. (arm_rtx_costs): Remove (struct processors): Add rtx_costs field. (all_cores, all_architectures): Ditto. (arm_override_options): Set targetm.rtx_costs. (thumb_rtx_costs): New function. (arm_rtx_costs_1): Remove cases handled elsewhere. * config/arm/arm.h (processor_type): Add COSTS parameter. 2003-12-29 Nathan Sidwell <nathan@codesourcery.com> * config/arm/arm.md (generic_sched): arm926 has its own scheduler. (arm926ejs.md): Include it. * config/arm/arm926ejs.md: New pipeline description. 2003-12-24 Paul Brook <paul@codesourcery.com> * config/arm/arm.c (arm_arch6j): New variable. (arm_override_options): Set it. (arm_emit_extendsi): New function. * config/arm/arm-protos.h (arm_emit_extendsi): Add prototype. * config/arm/arm.h (arm_arch6j): Declare. * config/arm/arm.md: Add sign/zero extend insns. 2003-12-23 Paul Brook <paul@codesourcery.com> * config/arm/arm.c (all_architectures): Add armv6. * doc/invoke.texi: Document it. 2003-12-19 Paul Brook <paul@codesourcery.com> * config/arm/arm.md: Add load1 and load_byte "type" attrs. Modify insn patterns to match. * config/arm/arm-generic.md: Ditto. * config/arm/cirrus.md: Ditto. * config/arm/fpa.md: Ditto. * config/amm/iwmmxt.md: Ditto. * config/arm/arm1026ejs.md: Ditto. * config/arm/arm1135jfs.md: Ditto. Add insn_reservation and bypasses for 11_loadb. 2003-12-18 Nathan Sidwell <nathan@codesourcery.com> * config/arm/arm-protos.h (arm_no_early_alu_shift_value_dep): Declare. * config/arm/arm.c (arm_adjust_cost): Check shift cost for TYPE_ALU_SHIFT and TYPE_ALU_SHIFT_REG. (arm_no_early_store_addr_dep, arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Correctly deal with conditional execution, parallels and single shift operations. (arm_no_early_alu_shift_value_dep): Define. * arm.md (attr type): Replace 'normal' with 'alu', 'alu_shift' and 'alu_shift_reg'. (attr core_cycles): Adjust. (*addsi3_carryin_shift, andsi_not_shiftsi_si, *arm_shiftsi3, *shiftsi3_compare0, *notsi_shiftsi, *notsi_shiftsi_compare0, *not_shiftsi_compare0_scratch, *cmpsi_shiftsi, *cmpsi_shiftsi_swp, *cmpsi_neg_shiftsi, *arith_shiftsi, *arith_shiftsi_compare0, *arith_shiftsi_compare0_scratch, *sub_shiftsi, *sub_shiftsi_compare0, *sub_shiftsi_compare0_scratch, *if_shift_move, *if_move_shift, *if_shift_shift): Set type attribute appropriately. * config/arm/arm1026ejs.md (alu_op): Adjust. (alu_shift_op, alu_shift_reg_op): New. * config/arm/arm1136.md: Add better bypasses for early registers. Remove load[234] and store[234] bypasses. (11_alu_op): Adjust. (11_alu_shift_op, 11_alu_shift_reg_op): New. 2003-12-15 Nathan Sidwell <nathan@codesourcery.com> * config/arm/arm-protos.h (arm_no_early_store_addr_dep, arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Declare. * config/arm/arm.c (arm_no_early_store_addr_dep, arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Define. * config/arm/arm1026ejs.md: Add load-store bypass. * config/arm/arm1136jfs.md (11_alu_op): Take 2 cycles. Add bypasses between instructions. 2003-12-10 Paul Brook <paul@codesourcery.com> * config/arm/arm.c (arm_fpu_model): New variable. (arm_fload_abi): New variable. (target_fpe_name): Rename from target_fp_name. (target_fpu_name): New variable. (arm_is_cirrus): Remove. (fpu_desc): New struct. (all_fpus): Define. (pf_model_for_fpu): Define. (all_loat_abis): Define. (arm_override_options): Set fp arch flags based on -mfpu= and -float-abi=. (FIRST_FPA_REGNUM): Rename from FIRST_ARM_FP_REGNUM. (LAST_FPA_REGNUM): Rename from LAST_ARM_FP_REGNUM. (*): Use new TARGET_* flags. * config/arm/arm.h (TARGET_ANY_HARD_FLOAT): Remove. (TARGET_HARD_FLOAT): No longer implies TARGET_FPA. (TARGET_SOFT_FLOAT): Ditto. (TARGET_SOFT_FLOAT_ABI): New. (TARGET_MAVERICK): Rename from TARGET_CIRRUS. No longer implies TARGET_HARD_FLOAT. (TARGET_VFP): No longer implies TARGET_HARD_FLOAT. (TARGET_OPTIONS): Add -mfpu=. (FIRST_FPA_REGNUM): Rename from FIRST_ARM_FP_REGNUM. (LAST_FPA_REGNUM): Rename from LAST_ARM_FP_REGNUM. (arm_pf_model): Define. (arm_float_abi_type): Define. (fputype): Add FPUTYPE_VFP. Change SOFT_FPA->NONE * config/arm/arm.md: Use new TARGET_* flags. * config/arm/cirrus.md: Ditto. * config/arm/fpa.md: Ditto. * config/arm/elf.h (ASM_SPEC): Pass -mfloat-abi= and -mfpu=. * config/arm/semi.h (ASM_SPEC): Ditto. * config/arm/netbsd-elf.h (SUBTARGET_ASM_FLOAT_SPEC): Specify vfp. (FPUTYPE_DEFAULT): Set to VFP. * doc/invoke.texi: Document -mfpu= and -mfloat-abi=. 2003-11-22 Phil Edwards <phil@codesourcery.com> PR target/12476 * config/arm/arm.c (arm_output_mi_thunk): In Thumb mode, use 'bx' instead of 'b' to avoid branch range restrictions. Output the thunk immediately before the thunked-to function. * config/arm/arm.h (ARM_DECLARE_FUNCTION_NAME): Do not emit .thumb_func if a thunk is being generated. Emit .code 16 along with .thumb_func if a thunk is not being generated. 2003-11-15 Nicolas Pitre <nico@cam.org> * config/arm/arm.md (ashldi3, arm_ashldi3_1bit, ashrdi3, arm_ashrdi3_1bit, lshrdi3, arm_lshrdi3_1bit): New patterns. * config/arm/iwmmxt.md (ashrdi3_iwmmxt): Renamed from ashrdi3. (lshrdi3_iwmmxt): Renamed from lshrdi3. * config/arm/arm.c (IWMMXT_BUILTIN2): Renamed argument accordingly. 2003-11-12 Steve Woodford <scw@wasabisystems.com> Ian Lance Taylor <ian@wasabisystems.com> * config/arm/lib1funcs.asm (ARM_DIV_BODY, ARM_MOD_BODY): Add new code for __ARM_ARCH__ >= 5 && ! defined (__OPTIMIZE_SIZE__). 2003-11-05 Phil Edwards <phil@codesourcery.com> * config/arm/arm.md (insn): Add new V6 instruction names. (generic_sched): New attr. * config/arm/arm-generic.md: Use generic_sched here. * config/arm/arm1026ejs.md: Do not model fetch/issue/decode stages of pipeline. Adjust latency counts accordingly. * config/arm/arm1136jfs.md: New file. 2003-10-28 Mark Mitchell <mark@codesourcery.com> * config/arm/arm.h (processor_type): New enumeration type. (CPP_ARCH_DEFAULT_SPEC): Set appropriately for ARM 926EJ-S, ARM1026EJ-S, ARM1136J-S, and ARM1136JF-S processor cores. (CPP_CPU_ARCH_SPEC): Likewise. * config/arm/arm.c (arm_tune): New variable. (all_cores): Use cores.def. (all_architectures): Add representative processor. (arm_override_options): Restructure way in which tuning information is deduced. * arm.md: Update "insn" and "type" attributes throughout. (insn): New attribute. (type): Compute "mult" from "insn" attribute. Add load2, load3, load4 alternatives. (arm automaton): Move to arm-generic.md. * config/arm/arm-cores.def: New file. * config/arm/arm-generic.md: Likewise. * config/arm/arm1026ejs.md: Likewise. From-SVN: r77171
2004-02-03 15:45:44 +01:00
| soft | hard | softfp)
# OK
;;
*)
echo "Unknown floating point type used in --with-float=$with_float" 1>&2
exit 1
;;
esac
backport: re PR target/12476 (ARM/THUMB thunk calls broken) Merge from csl-arm-branch. 2004-01-30 Paul Brook <paul@codesourcery.com> * aof.h (REGISTER_NAMES): Add vfp reg names (ADDITIONAL_REGISTER_NAMES): Ditto. * aout.h (REGISTER_NAMES): Ditto. (ADDITIONAL_REGISTER_NAMES): Ditto. * arm-protos.h: Update/Add Prototypes. * arm.c (init_fp_table): Rename from init_fpa_table. Update users. Only allow 0.0 for VFP. (fp_consts_inited): Rename from fpa_consts_inited. Update users. (values_fp): Rename from values_fpa. Update Users. (arm_const_double_rtx): Rename from const_double_rtx_ok_for_fpa. Update users. Only check valid constants for this hardware. (arm_float_rhs_operand): Rename from fpa_rhs_operand. Update Users. Only allow consts for FPA. (arm_float_add_operand): Rename from fpa_add_operand. Update users. Only allow consts for FPA. (use_return_insn): Check for saved VFP regs. (arm_legitimate_address_p): Handle VFP DFmode addressing. (arm_legitimize_address): Ditto. (arm_general_register_operand): New function. (vfp_mem_operand): New function. (vfp_compare_operand): New function. (vfp_secondary_reload_class): New function. (arm_float_compare_operand): New function. (vfp_print_multi): New function. (vfp_output_fstmx): New function. (vfp_emit_fstm): New function. (arm_output_epilogue): Output VPF reg restore code. (arm_expand_prologue): Output VFP reg save code. (arm_print_operand): Add 'P'. (arm_hard_regno_mode_ok): Return modes for VFP regs. (arm_regno_class): Return classes for VFP regs. (arm_compute_initial_elimination_offset): Include space for VFP regs. (arm_get_frame_size): Ditto. * arm.h (FIXED_REGISTERS): Add VFP regs. (CALL_USED_REGISTERS): Ditto. (CONDITIONAL_REGISTER_USAGE): Enable VFP regs. (FIRST_VFP_REGNUM): Define. (LAST_VFP_REGNUM): Define. (IS_VFP_REGNUM): Define. (FIRST_PSEUDO_REGISTER): Include VFP regs. (HARD_REGNO_NREGS): Handle VFP regs. (REG_ALLOC_ORDER): Add VFP regs. (enum reg_class): Add VFP_REGS. (REG_CLASS_NAMES): Ditto. (REG_CLASS_CONTENTS): Ditto. (CANNOT_CHANGE_MODE_CLASS) Handle VFP Regs. (REG_CLASS_FROM_LETTER): Add 'w'. (EXTRA_CONSTRAINT_ARM): Add 'U'. (EXTRA_MEMORY_CONSTRAINT): Define. (SECONDARY_OUTPUT_RELOAD_CLASS): Handle VFP regs. (SECONDARY_INPUT_RELOAD_CLASS): Ditto. (REGISTER_MOVE_COST): Ditto. (PREDICATE_CODES): Add arm_general_register_operand, arm_float_compare_operand and vfp_compare_operand. * arm.md (various): Rename as above. (divsf3): Enable when TARGET_VFP. (divdf3): Ditto. (movdfcc): Ditto. (sqrtsf2): Ditto. (sqrtdf2): Ditto. (arm_movdi): Disable when TARGET_VFP. (arm_movsi_insn): Ditto. (movsi): Only split with general regs. (cmpsf): Use arm_float_compare_operand. (push_fp_multi): Restrict to TARGET_FPA. (vfp.md): Include. * vfp.md: New file. * fpa.md (various): Rename as above. * doc/md.texi: Document ARM w and U constraints. 2004-01-15 Paul Brook <paul@codesourcery.com> * config.gcc: Add with_fpu. Allow with-float=softfp. * config/arm/arm.c (arm_override_options): Rename *-s to *s. Break out of loop when we find a float-abi. Fix typo. * config/arm/arm.h (OPTION_DEFAULT_SPECS): Add "fpu". Set -mfloat-abi=. * doc/install.texi: Document --with-fpu. 2003-01-14 Paul Brook <paul@codesourcery.com> * config.gcc (with_arch): Add armv6. * config/arm/arm.h: Rename TARGET_CPU_*_s to TARGET_CPU_*s. * config/arm/arm.c (arm_overrride_options): Ditto. 2004-01-08 Richard Earnshaw <rearnsha@arm.com> * arm.c (FL_ARCH3M): Renamed from FL_FAST_MULT. (FL_ARCH6): Renamed from FL_ARCH6J. (arm_arch3m): Renamed from arm_fast_multiply. (arm_arch6): Renamed from arm_arch6j. * arm.h: Update all uses of above. * arm-cores.def: Likewise. * arm.md: Likewise. * arm.h (CPP_CPU_ARCH_SPEC): Emit __ARM_ARCH_6J__ define for armV6j, not arm6j. Add entry for arch armv6. 2004-01-07 Richard Earnshaw <rearnsha@arm.com> * arm.c (arm_emit_extendsi): Delete. * arm-protos.h (arm_emit_extendsi): Delete. * arm.md (zero_extendhisi2): Also handle zero-extension of non-subregs. (zero_extendqisi2, extendhisi2, extendqisi2): Likewise. (thumb_zero_extendhisi2): Only match if not v6. (arm_zero_extendhisi2, thumb_zero_extendqisi2, arm_zero_extendqisi2) (thumb_extendhisi2, arm_extendhisi2, arm_extendqisi) (thumb_extendqisi2): Likewise. (thumb_zero_extendhisi2_v6, arm_zero_extendhisi2_v6): New patterns. (thumb_zero_extendqisi2_v6, arm_zero_extendqisi2_v6): New patterns. (thumb_extendhisi2_insn_v6, arm_extendhisi2_v6): New patterns. (thumb_extendqisi2_v6, arm_extendqisi_v6): New patterns. (arm_zero_extendhisi2_reg, arm_zero_extendqisi2_reg): Delete. (arm_extendhisi2_reg, arm_extendqisi2_reg): Delete. (arm_zero_extendhisi2addsi): Remove subreg. Add attributes. (arm_zero_extendqisi2addsi, arm_extendhisi2addsi): Likewise. (arm_extendqisi2addsi): Likewise. 2003-12-31 Mark Mitchell <mark@codesourcery.com> Revert this change: * config/arm/arm.h (THUMB_LEGTITIMIZE_RELOAD_ADDRESS): Reload REG + REG addressing modes. * config/arm/arm.h (THUMB_LEGTITIMIZE_RELOAD_ADDRESS): Reload REG + REG addressing modes. 2003-12-30 Mark Mitchell <mark@codesourcery.com> * config/arm/arm.h (THUMB_LEGITIMATE_CONSTANT_P): Accept CONSTANT_P_RTX. 2003-30-12 Paul Brook <paul@codesourcery.com> * longlong.h: protect arm inlines with !defined (__thumb__) 2003-30-12 Paul Brook <paul@codesourcery.com> * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Always define __arm__. 2003-12-30 Nathan Sidwell <nathan@codesourcery.com> * builtins.c (expand_builtin_apply_args_1): Fix typo in previous change. 2003-12-29 Nathan Sidwell <nathan@codesourcery.com> * builtins.c (expand_builtin_apply_args_1): Add pretend args size to the virtual incoming args pointer for downward stacks. 2003-12-29 Paul Brook <paul@codesourcery.com> * config/arm/arm-cores.def: Add cost function. * config/arm/arm.c (arm_*_rtx_costs): New functions. (arm_rtx_costs): Remove (struct processors): Add rtx_costs field. (all_cores, all_architectures): Ditto. (arm_override_options): Set targetm.rtx_costs. (thumb_rtx_costs): New function. (arm_rtx_costs_1): Remove cases handled elsewhere. * config/arm/arm.h (processor_type): Add COSTS parameter. 2003-12-29 Nathan Sidwell <nathan@codesourcery.com> * config/arm/arm.md (generic_sched): arm926 has its own scheduler. (arm926ejs.md): Include it. * config/arm/arm926ejs.md: New pipeline description. 2003-12-24 Paul Brook <paul@codesourcery.com> * config/arm/arm.c (arm_arch6j): New variable. (arm_override_options): Set it. (arm_emit_extendsi): New function. * config/arm/arm-protos.h (arm_emit_extendsi): Add prototype. * config/arm/arm.h (arm_arch6j): Declare. * config/arm/arm.md: Add sign/zero extend insns. 2003-12-23 Paul Brook <paul@codesourcery.com> * config/arm/arm.c (all_architectures): Add armv6. * doc/invoke.texi: Document it. 2003-12-19 Paul Brook <paul@codesourcery.com> * config/arm/arm.md: Add load1 and load_byte "type" attrs. Modify insn patterns to match. * config/arm/arm-generic.md: Ditto. * config/arm/cirrus.md: Ditto. * config/arm/fpa.md: Ditto. * config/amm/iwmmxt.md: Ditto. * config/arm/arm1026ejs.md: Ditto. * config/arm/arm1135jfs.md: Ditto. Add insn_reservation and bypasses for 11_loadb. 2003-12-18 Nathan Sidwell <nathan@codesourcery.com> * config/arm/arm-protos.h (arm_no_early_alu_shift_value_dep): Declare. * config/arm/arm.c (arm_adjust_cost): Check shift cost for TYPE_ALU_SHIFT and TYPE_ALU_SHIFT_REG. (arm_no_early_store_addr_dep, arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Correctly deal with conditional execution, parallels and single shift operations. (arm_no_early_alu_shift_value_dep): Define. * arm.md (attr type): Replace 'normal' with 'alu', 'alu_shift' and 'alu_shift_reg'. (attr core_cycles): Adjust. (*addsi3_carryin_shift, andsi_not_shiftsi_si, *arm_shiftsi3, *shiftsi3_compare0, *notsi_shiftsi, *notsi_shiftsi_compare0, *not_shiftsi_compare0_scratch, *cmpsi_shiftsi, *cmpsi_shiftsi_swp, *cmpsi_neg_shiftsi, *arith_shiftsi, *arith_shiftsi_compare0, *arith_shiftsi_compare0_scratch, *sub_shiftsi, *sub_shiftsi_compare0, *sub_shiftsi_compare0_scratch, *if_shift_move, *if_move_shift, *if_shift_shift): Set type attribute appropriately. * config/arm/arm1026ejs.md (alu_op): Adjust. (alu_shift_op, alu_shift_reg_op): New. * config/arm/arm1136.md: Add better bypasses for early registers. Remove load[234] and store[234] bypasses. (11_alu_op): Adjust. (11_alu_shift_op, 11_alu_shift_reg_op): New. 2003-12-15 Nathan Sidwell <nathan@codesourcery.com> * config/arm/arm-protos.h (arm_no_early_store_addr_dep, arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Declare. * config/arm/arm.c (arm_no_early_store_addr_dep, arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Define. * config/arm/arm1026ejs.md: Add load-store bypass. * config/arm/arm1136jfs.md (11_alu_op): Take 2 cycles. Add bypasses between instructions. 2003-12-10 Paul Brook <paul@codesourcery.com> * config/arm/arm.c (arm_fpu_model): New variable. (arm_fload_abi): New variable. (target_fpe_name): Rename from target_fp_name. (target_fpu_name): New variable. (arm_is_cirrus): Remove. (fpu_desc): New struct. (all_fpus): Define. (pf_model_for_fpu): Define. (all_loat_abis): Define. (arm_override_options): Set fp arch flags based on -mfpu= and -float-abi=. (FIRST_FPA_REGNUM): Rename from FIRST_ARM_FP_REGNUM. (LAST_FPA_REGNUM): Rename from LAST_ARM_FP_REGNUM. (*): Use new TARGET_* flags. * config/arm/arm.h (TARGET_ANY_HARD_FLOAT): Remove. (TARGET_HARD_FLOAT): No longer implies TARGET_FPA. (TARGET_SOFT_FLOAT): Ditto. (TARGET_SOFT_FLOAT_ABI): New. (TARGET_MAVERICK): Rename from TARGET_CIRRUS. No longer implies TARGET_HARD_FLOAT. (TARGET_VFP): No longer implies TARGET_HARD_FLOAT. (TARGET_OPTIONS): Add -mfpu=. (FIRST_FPA_REGNUM): Rename from FIRST_ARM_FP_REGNUM. (LAST_FPA_REGNUM): Rename from LAST_ARM_FP_REGNUM. (arm_pf_model): Define. (arm_float_abi_type): Define. (fputype): Add FPUTYPE_VFP. Change SOFT_FPA->NONE * config/arm/arm.md: Use new TARGET_* flags. * config/arm/cirrus.md: Ditto. * config/arm/fpa.md: Ditto. * config/arm/elf.h (ASM_SPEC): Pass -mfloat-abi= and -mfpu=. * config/arm/semi.h (ASM_SPEC): Ditto. * config/arm/netbsd-elf.h (SUBTARGET_ASM_FLOAT_SPEC): Specify vfp. (FPUTYPE_DEFAULT): Set to VFP. * doc/invoke.texi: Document -mfpu= and -mfloat-abi=. 2003-11-22 Phil Edwards <phil@codesourcery.com> PR target/12476 * config/arm/arm.c (arm_output_mi_thunk): In Thumb mode, use 'bx' instead of 'b' to avoid branch range restrictions. Output the thunk immediately before the thunked-to function. * config/arm/arm.h (ARM_DECLARE_FUNCTION_NAME): Do not emit .thumb_func if a thunk is being generated. Emit .code 16 along with .thumb_func if a thunk is not being generated. 2003-11-15 Nicolas Pitre <nico@cam.org> * config/arm/arm.md (ashldi3, arm_ashldi3_1bit, ashrdi3, arm_ashrdi3_1bit, lshrdi3, arm_lshrdi3_1bit): New patterns. * config/arm/iwmmxt.md (ashrdi3_iwmmxt): Renamed from ashrdi3. (lshrdi3_iwmmxt): Renamed from lshrdi3. * config/arm/arm.c (IWMMXT_BUILTIN2): Renamed argument accordingly. 2003-11-12 Steve Woodford <scw@wasabisystems.com> Ian Lance Taylor <ian@wasabisystems.com> * config/arm/lib1funcs.asm (ARM_DIV_BODY, ARM_MOD_BODY): Add new code for __ARM_ARCH__ >= 5 && ! defined (__OPTIMIZE_SIZE__). 2003-11-05 Phil Edwards <phil@codesourcery.com> * config/arm/arm.md (insn): Add new V6 instruction names. (generic_sched): New attr. * config/arm/arm-generic.md: Use generic_sched here. * config/arm/arm1026ejs.md: Do not model fetch/issue/decode stages of pipeline. Adjust latency counts accordingly. * config/arm/arm1136jfs.md: New file. 2003-10-28 Mark Mitchell <mark@codesourcery.com> * config/arm/arm.h (processor_type): New enumeration type. (CPP_ARCH_DEFAULT_SPEC): Set appropriately for ARM 926EJ-S, ARM1026EJ-S, ARM1136J-S, and ARM1136JF-S processor cores. (CPP_CPU_ARCH_SPEC): Likewise. * config/arm/arm.c (arm_tune): New variable. (all_cores): Use cores.def. (all_architectures): Add representative processor. (arm_override_options): Restructure way in which tuning information is deduced. * arm.md: Update "insn" and "type" attributes throughout. (insn): New attribute. (type): Compute "mult" from "insn" attribute. Add load2, load3, load4 alternatives. (arm automaton): Move to arm-generic.md. * config/arm/arm-cores.def: New file. * config/arm/arm-generic.md: Likewise. * config/arm/arm1026ejs.md: Likewise. From-SVN: r77171
2004-02-03 15:45:44 +01:00
case "$with_fpu" in
"" \
Makefile.in (TEXI_GCC_FILES): Add arm-neon-intrinsics.texi. gcc/ * Makefile.in (TEXI_GCC_FILES): Add arm-neon-intrinsics.texi. * config.gcc (arm*-*-*): Add arm_neon.h to extra headers. (with_fpu): Allow --with-fpu=neon. * config/arm/aof.h (ADDITIONAL_REGISTER_NAMES): Add Q0-Q15. * config/arm/aout.h (ADDITIONAL_REGISTER_NAMES): Add Q0-Q15. * config/arm/arm-modes.def (EI, OI, CI, XI): New modes. * config/arm/arm-protos.h (neon_immediate_valid_for_move) (neon_immediate_valid_for_logic, neon_output_logic_immediate) (neon_pairwise_reduce, neon_expand_vector_init, neon_reinterpret) (neon_emit_pair_result_insn, neon_disambiguate_copy) (neon_vector_mem_operand, neon_struct_mem_operand, output_move_quad) (output_move_neon): Add prototypes. * config/arm/arm.c (FL_NEON): New flag for NEON processor capability. (all_fpus): Add FPUTYPE_NEON. (fp_model_for_fpu): Add NEON field. (arm_return_in_memory): Return vectors <= 16 bytes in ARM registers. (arm_arg_partial_bytes): Allow NEON vectors to be passed partially in registers. (arm_legitimate_address_p): Don't support fancy addressing for NEON structure moves. (thumb2_legitimate_address_p): Likewise. (neon_valid_immediate): Recognize and prepare constants suitable for NEON instructions. (neon_immediate_valid_for_move): New function. Recognize and prepare immediates for NEON move instructions. (neon_immediate_valid_for_logic): New function. Recognize and prepare immediates for NEON logic instructions. (neon_output_logic_immediate): New function. Create asm string suitable for outputting immediate logic instructions. (neon_pairwise_reduce): New function. Implement reduction using pairwise operations. (neon_expand_vector_init): New function. Expand a (possibly non-constant) vector initialization. (neon_vector_mem_operand): New function. Memory operands supported for quad-word loads/stores to/from ARM or NEON registers. Don't allow base+offset addressing for core regs. (neon_struct_mem_operand): New function. Valid mems for NEON structure moves. (coproc_secondary_reload_class): Enable NEON registers to be loaded from neon_vector_mem_operand addresses without a secondary register. (add_minipool_forward_ref): Handle >8-byte minipool entries. (add_minipool_backward_ref): Likewise. (dump_minipool): Likewise. (push_minipool_fix): Likewise. (output_move_quad): New function. Output quad-word moves, loads and stores using ARM registers. (output_move_vfp): Add support for vectors in VFP (NEON) D registers. (output_move_neon): Output a NEON load/store to/from a quadword register. (arm_print_operand): Implement new codes: - 'c' for unadorned integers (without a # sign). - 'J', 'K' for reg+2/reg+3, reg+3/reg+2 in little/big-endian mode. - 'e', 'f' for the low and high D parts of a NEON Q register. - 'q' outputs a NEON Q register. - 'h' outputs ranges of D registers for VLDM/VSTM etc. - 'T' prints NEON opcode features from a coded bitmask. - 'F' is similar to T, but signed/unsigned codes both print as 'i'. - 't' is similar to T, but 'u' is printed instead of 'p'. - 'O' prints 'r' if NEON instruction should perform rounding (as specified by bitmask), else prints nothing. - '#' is a punctuation character to stop operand numbers from running together with following digits in the assembler strings for instructions (when using mode attributes). (arm_assemble_integer): Handle extra NEON vector modes. Permute constant vectors in big-endian mode, where necessary. (arm_hard_regno_mode_ok): Allow vectors in VFP/NEON registers. Handle EI, OI, CI, XI modes. (ashlv4hi3, ashlv2si3, lshrv4hi3, lshrv2si3, ashrv4hi3) (ashrv2si3): Rename IWMMXT2_BUILTINs to... (ashlv4hi3_iwmmxt, ashlv2si3_iwmmxt, lshrv4hi3_iwmmxt) (lshrv2si3_iwmmxt, ashrv4hi3_iwmmxt, ashrv2si3_iwmmxt): New names. (neon_builtin_type_bits): Add enumeration, one bit for each vector type. (v8qi_UP, v4hi_UP, v2si_UP, v2sf_UP, di_UP, v16qi_UP, v8hi_UP) (v4si_UP, v4sf_UP, v2di_UP, ti_UP, ei_UP, oi_UP, UP): Define macros to turn v8qi, etc. into bits defined above. (neon_itype): New enumeration. Classifications of NEON builtins. (neon_builtin_datum): Define struct. Contains information about a single builtin (with multiple modes). (CF): Define helper macro for... (VAR1...VAR10): Define builtins with a type, name and 1-10 different modes. (neon_builtin_data): New array. Define information about builtins for use during initialization/expansion. (arm_init_neon_builtins): New function. (arm_init_builtins): Call arm_init_neon_builtins if TARGET_NEON is true. (neon_builtin_compare): New function. (locate_neon_builtin_icode): New function. Find an insn code for a builtin given a function code for that builtin. Also return type of builtin (NEON_BINOP, NEON_UNOP etc.). (builtin_arg): New enumeration. Types of arguments for builtins. (arm_expand_neon_args): New function. Expand a generic NEON builtin. Takes a variable argument list of builtin_arg types, terminated by NEON_ARG_STOP. (arm_expand_neon_builtin): New function. Expand a NEON builtin. (neon_reinterpret): New function. Expand NEON reinterpret intrinsic. (neon_emit_pair_result_insn): New function. Support returning pairs of vectors via a pointer. (neon_disambiguate_copy): New function. Set up operands for a multi-word copy such that registers do not get clobbered. (arm_expand_builtin): Call arm_expand_neon_builtin if fcode >= ARM_BUILTIN_NEON_BASE. (arm_file_start): Set float-abi attribute for NEON. (arm_vector_mode_supported_p): Enable NEON vector modes. (arm_mangle_map_entry): New. (arm_mangle_map): New. (arm_mangle_vector_type): New. * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __ARM_NEON__ when appropriate. (TARGET_NEON): New macro. Target supports NEON. (fputype): Add FPUTYPE_NEON. (UNITS_PER_SIMD_WORD): Define. Allow quad-word registers to be used for vectorization based on command-line arg. (NEON_REGNO_OK_FOR_NREGS): Define. (VALID_NEON_DREG_MODE, VALID_NEON_QREG_MODE) (VALID_NEON_STRUCT_MODE): Define. (PRINT_OPERAND_PUNCT_VALID_P): '#' is valid punctuation. (arm_builtins): Add ARM_BUILTIN_NEON_BASE. * config/arm/arm.md (VUNSPEC_POOL_16): Insert constant for unspec. (consttable_16): Add pattern for outputting 16-byte minipool entries. (movv2si, movv4hi, movv8qi): Remove blank expanders (redefined in vec-common.md). (vec-common.md, neon.md): Include md files. * config/arm/arm.opt (mvectorize-with-neon-quad): Add option. * config/arm/constraints.md (constraint "Dn", "Dl", "DL"): Define. (memory_constraint "Ut", "Un", "Us"): Define. * config/arm/iwmmxt.md (VMMX, VSHFT): New mode macros. (MMX_char): New mode attribute. (addv8qi3, addv4hi3, addv2si3): Remove. Replace with... (*add<mode>3_iwmmxt): New insn pattern. (subv8qi3, subv4hi3, subv2si3): Remove. Replace with... (*sub<mode>3_iwmmxt): New insn pattern. (mulv4hi3): Rename to... (*mulv4hi3_iwmmxt): This. (smaxv8qi3, smaxv4hi3, smaxv2si3, umaxv8qi3, umaxv4hi3) (umaxv2si3, sminv8qi3, sminv4hi3, sminv2si3, uminv8qi3) (uminv4hi3, uminv2si3): Remove. Replace with... (*smax<mode>3_iwmmxt, *umax<mode>3_iwmmxt, *smin<mode>3_iwmmxt) (*umin<mode>3_iwmmxt): These. (ashrv4hi3, ashrv2si3, ashrdi3_iwmmxt): Replace with... (ashr<mode>3_iwmmxt): This new pattern. (lshrv4hi3, lshrv2si3, lshrdi3_iwmmxt): Replace with... (lshr<mode>3_iwmmxt): This new pattern. (ashlv4hi3, ashlv2si3, ashldi3_iwmmxt): Replace with... (ashl<mode>3_iwmmxt): This new pattern. * config/arm/neon-docgen.ml: New file. Generate documentation for intrinsics. * config/arm/neon-gen.ml: New file. Generate arm_neon.h header. * config/arm/arm_neon.h: New (autogenerated). * config/arm/neon-testgen.ml: New file. Generate NEON tests automatically. * config/arm/neon.md: New file. Define NEON instructions. * config/arm/neon.ml: New file. Abstract description of NEON instructions, used to generate arm_neon.h header, documentation and tests. * config/arm/t-arm (MD_INCLUDES): Add vec-common.md, neon.md. * vec-common.md: New file. Shared parts for iWMMXt and NEON vector support. * doc/extend.texi (ARM Built-in Functions): Rename and remove extraneous comma. (ARM NEON Intrinsics): New subsection. * doc/arm-neon-intrinsics.texi: New (autogenerated). gcc/testsuite/ * gcc.dg/vect/vect.exp: Check is-effective-target arm_neon_hw. * gcc.dg/vect/tree-vect.h: Check for NEON SIMD support. * lib/gcc-dg.exp (cleanup-saved-temps): Fix comment. * lib/target-supports.exp (check_effective_target_arm_neon_ok) (check_effective_target_arm_neon_hw): New. * gcc.target/arm/neon/neon.exp: New file. * gcc.target/arm/neon/polytypes.c: New file. * gcc.target/arm/neon/v*.c (1870 files): New (autogenerated). Co-Authored-By: Joseph Myers <joseph@codesourcery.com> Co-Authored-By: Mark Shinwell <shinwell@codesourcery.com> Co-Authored-By: Paul Brook <paul@codesourcery.com> From-SVN: r126911
2007-07-25 14:28:31 +02:00
| fpa | fpe2 | fpe3 | maverick | vfp | vfp3 | neon )
backport: re PR target/12476 (ARM/THUMB thunk calls broken) Merge from csl-arm-branch. 2004-01-30 Paul Brook <paul@codesourcery.com> * aof.h (REGISTER_NAMES): Add vfp reg names (ADDITIONAL_REGISTER_NAMES): Ditto. * aout.h (REGISTER_NAMES): Ditto. (ADDITIONAL_REGISTER_NAMES): Ditto. * arm-protos.h: Update/Add Prototypes. * arm.c (init_fp_table): Rename from init_fpa_table. Update users. Only allow 0.0 for VFP. (fp_consts_inited): Rename from fpa_consts_inited. Update users. (values_fp): Rename from values_fpa. Update Users. (arm_const_double_rtx): Rename from const_double_rtx_ok_for_fpa. Update users. Only check valid constants for this hardware. (arm_float_rhs_operand): Rename from fpa_rhs_operand. Update Users. Only allow consts for FPA. (arm_float_add_operand): Rename from fpa_add_operand. Update users. Only allow consts for FPA. (use_return_insn): Check for saved VFP regs. (arm_legitimate_address_p): Handle VFP DFmode addressing. (arm_legitimize_address): Ditto. (arm_general_register_operand): New function. (vfp_mem_operand): New function. (vfp_compare_operand): New function. (vfp_secondary_reload_class): New function. (arm_float_compare_operand): New function. (vfp_print_multi): New function. (vfp_output_fstmx): New function. (vfp_emit_fstm): New function. (arm_output_epilogue): Output VPF reg restore code. (arm_expand_prologue): Output VFP reg save code. (arm_print_operand): Add 'P'. (arm_hard_regno_mode_ok): Return modes for VFP regs. (arm_regno_class): Return classes for VFP regs. (arm_compute_initial_elimination_offset): Include space for VFP regs. (arm_get_frame_size): Ditto. * arm.h (FIXED_REGISTERS): Add VFP regs. (CALL_USED_REGISTERS): Ditto. (CONDITIONAL_REGISTER_USAGE): Enable VFP regs. (FIRST_VFP_REGNUM): Define. (LAST_VFP_REGNUM): Define. (IS_VFP_REGNUM): Define. (FIRST_PSEUDO_REGISTER): Include VFP regs. (HARD_REGNO_NREGS): Handle VFP regs. (REG_ALLOC_ORDER): Add VFP regs. (enum reg_class): Add VFP_REGS. (REG_CLASS_NAMES): Ditto. (REG_CLASS_CONTENTS): Ditto. (CANNOT_CHANGE_MODE_CLASS) Handle VFP Regs. (REG_CLASS_FROM_LETTER): Add 'w'. (EXTRA_CONSTRAINT_ARM): Add 'U'. (EXTRA_MEMORY_CONSTRAINT): Define. (SECONDARY_OUTPUT_RELOAD_CLASS): Handle VFP regs. (SECONDARY_INPUT_RELOAD_CLASS): Ditto. (REGISTER_MOVE_COST): Ditto. (PREDICATE_CODES): Add arm_general_register_operand, arm_float_compare_operand and vfp_compare_operand. * arm.md (various): Rename as above. (divsf3): Enable when TARGET_VFP. (divdf3): Ditto. (movdfcc): Ditto. (sqrtsf2): Ditto. (sqrtdf2): Ditto. (arm_movdi): Disable when TARGET_VFP. (arm_movsi_insn): Ditto. (movsi): Only split with general regs. (cmpsf): Use arm_float_compare_operand. (push_fp_multi): Restrict to TARGET_FPA. (vfp.md): Include. * vfp.md: New file. * fpa.md (various): Rename as above. * doc/md.texi: Document ARM w and U constraints. 2004-01-15 Paul Brook <paul@codesourcery.com> * config.gcc: Add with_fpu. Allow with-float=softfp. * config/arm/arm.c (arm_override_options): Rename *-s to *s. Break out of loop when we find a float-abi. Fix typo. * config/arm/arm.h (OPTION_DEFAULT_SPECS): Add "fpu". Set -mfloat-abi=. * doc/install.texi: Document --with-fpu. 2003-01-14 Paul Brook <paul@codesourcery.com> * config.gcc (with_arch): Add armv6. * config/arm/arm.h: Rename TARGET_CPU_*_s to TARGET_CPU_*s. * config/arm/arm.c (arm_overrride_options): Ditto. 2004-01-08 Richard Earnshaw <rearnsha@arm.com> * arm.c (FL_ARCH3M): Renamed from FL_FAST_MULT. (FL_ARCH6): Renamed from FL_ARCH6J. (arm_arch3m): Renamed from arm_fast_multiply. (arm_arch6): Renamed from arm_arch6j. * arm.h: Update all uses of above. * arm-cores.def: Likewise. * arm.md: Likewise. * arm.h (CPP_CPU_ARCH_SPEC): Emit __ARM_ARCH_6J__ define for armV6j, not arm6j. Add entry for arch armv6. 2004-01-07 Richard Earnshaw <rearnsha@arm.com> * arm.c (arm_emit_extendsi): Delete. * arm-protos.h (arm_emit_extendsi): Delete. * arm.md (zero_extendhisi2): Also handle zero-extension of non-subregs. (zero_extendqisi2, extendhisi2, extendqisi2): Likewise. (thumb_zero_extendhisi2): Only match if not v6. (arm_zero_extendhisi2, thumb_zero_extendqisi2, arm_zero_extendqisi2) (thumb_extendhisi2, arm_extendhisi2, arm_extendqisi) (thumb_extendqisi2): Likewise. (thumb_zero_extendhisi2_v6, arm_zero_extendhisi2_v6): New patterns. (thumb_zero_extendqisi2_v6, arm_zero_extendqisi2_v6): New patterns. (thumb_extendhisi2_insn_v6, arm_extendhisi2_v6): New patterns. (thumb_extendqisi2_v6, arm_extendqisi_v6): New patterns. (arm_zero_extendhisi2_reg, arm_zero_extendqisi2_reg): Delete. (arm_extendhisi2_reg, arm_extendqisi2_reg): Delete. (arm_zero_extendhisi2addsi): Remove subreg. Add attributes. (arm_zero_extendqisi2addsi, arm_extendhisi2addsi): Likewise. (arm_extendqisi2addsi): Likewise. 2003-12-31 Mark Mitchell <mark@codesourcery.com> Revert this change: * config/arm/arm.h (THUMB_LEGTITIMIZE_RELOAD_ADDRESS): Reload REG + REG addressing modes. * config/arm/arm.h (THUMB_LEGTITIMIZE_RELOAD_ADDRESS): Reload REG + REG addressing modes. 2003-12-30 Mark Mitchell <mark@codesourcery.com> * config/arm/arm.h (THUMB_LEGITIMATE_CONSTANT_P): Accept CONSTANT_P_RTX. 2003-30-12 Paul Brook <paul@codesourcery.com> * longlong.h: protect arm inlines with !defined (__thumb__) 2003-30-12 Paul Brook <paul@codesourcery.com> * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Always define __arm__. 2003-12-30 Nathan Sidwell <nathan@codesourcery.com> * builtins.c (expand_builtin_apply_args_1): Fix typo in previous change. 2003-12-29 Nathan Sidwell <nathan@codesourcery.com> * builtins.c (expand_builtin_apply_args_1): Add pretend args size to the virtual incoming args pointer for downward stacks. 2003-12-29 Paul Brook <paul@codesourcery.com> * config/arm/arm-cores.def: Add cost function. * config/arm/arm.c (arm_*_rtx_costs): New functions. (arm_rtx_costs): Remove (struct processors): Add rtx_costs field. (all_cores, all_architectures): Ditto. (arm_override_options): Set targetm.rtx_costs. (thumb_rtx_costs): New function. (arm_rtx_costs_1): Remove cases handled elsewhere. * config/arm/arm.h (processor_type): Add COSTS parameter. 2003-12-29 Nathan Sidwell <nathan@codesourcery.com> * config/arm/arm.md (generic_sched): arm926 has its own scheduler. (arm926ejs.md): Include it. * config/arm/arm926ejs.md: New pipeline description. 2003-12-24 Paul Brook <paul@codesourcery.com> * config/arm/arm.c (arm_arch6j): New variable. (arm_override_options): Set it. (arm_emit_extendsi): New function. * config/arm/arm-protos.h (arm_emit_extendsi): Add prototype. * config/arm/arm.h (arm_arch6j): Declare. * config/arm/arm.md: Add sign/zero extend insns. 2003-12-23 Paul Brook <paul@codesourcery.com> * config/arm/arm.c (all_architectures): Add armv6. * doc/invoke.texi: Document it. 2003-12-19 Paul Brook <paul@codesourcery.com> * config/arm/arm.md: Add load1 and load_byte "type" attrs. Modify insn patterns to match. * config/arm/arm-generic.md: Ditto. * config/arm/cirrus.md: Ditto. * config/arm/fpa.md: Ditto. * config/amm/iwmmxt.md: Ditto. * config/arm/arm1026ejs.md: Ditto. * config/arm/arm1135jfs.md: Ditto. Add insn_reservation and bypasses for 11_loadb. 2003-12-18 Nathan Sidwell <nathan@codesourcery.com> * config/arm/arm-protos.h (arm_no_early_alu_shift_value_dep): Declare. * config/arm/arm.c (arm_adjust_cost): Check shift cost for TYPE_ALU_SHIFT and TYPE_ALU_SHIFT_REG. (arm_no_early_store_addr_dep, arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Correctly deal with conditional execution, parallels and single shift operations. (arm_no_early_alu_shift_value_dep): Define. * arm.md (attr type): Replace 'normal' with 'alu', 'alu_shift' and 'alu_shift_reg'. (attr core_cycles): Adjust. (*addsi3_carryin_shift, andsi_not_shiftsi_si, *arm_shiftsi3, *shiftsi3_compare0, *notsi_shiftsi, *notsi_shiftsi_compare0, *not_shiftsi_compare0_scratch, *cmpsi_shiftsi, *cmpsi_shiftsi_swp, *cmpsi_neg_shiftsi, *arith_shiftsi, *arith_shiftsi_compare0, *arith_shiftsi_compare0_scratch, *sub_shiftsi, *sub_shiftsi_compare0, *sub_shiftsi_compare0_scratch, *if_shift_move, *if_move_shift, *if_shift_shift): Set type attribute appropriately. * config/arm/arm1026ejs.md (alu_op): Adjust. (alu_shift_op, alu_shift_reg_op): New. * config/arm/arm1136.md: Add better bypasses for early registers. Remove load[234] and store[234] bypasses. (11_alu_op): Adjust. (11_alu_shift_op, 11_alu_shift_reg_op): New. 2003-12-15 Nathan Sidwell <nathan@codesourcery.com> * config/arm/arm-protos.h (arm_no_early_store_addr_dep, arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Declare. * config/arm/arm.c (arm_no_early_store_addr_dep, arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Define. * config/arm/arm1026ejs.md: Add load-store bypass. * config/arm/arm1136jfs.md (11_alu_op): Take 2 cycles. Add bypasses between instructions. 2003-12-10 Paul Brook <paul@codesourcery.com> * config/arm/arm.c (arm_fpu_model): New variable. (arm_fload_abi): New variable. (target_fpe_name): Rename from target_fp_name. (target_fpu_name): New variable. (arm_is_cirrus): Remove. (fpu_desc): New struct. (all_fpus): Define. (pf_model_for_fpu): Define. (all_loat_abis): Define. (arm_override_options): Set fp arch flags based on -mfpu= and -float-abi=. (FIRST_FPA_REGNUM): Rename from FIRST_ARM_FP_REGNUM. (LAST_FPA_REGNUM): Rename from LAST_ARM_FP_REGNUM. (*): Use new TARGET_* flags. * config/arm/arm.h (TARGET_ANY_HARD_FLOAT): Remove. (TARGET_HARD_FLOAT): No longer implies TARGET_FPA. (TARGET_SOFT_FLOAT): Ditto. (TARGET_SOFT_FLOAT_ABI): New. (TARGET_MAVERICK): Rename from TARGET_CIRRUS. No longer implies TARGET_HARD_FLOAT. (TARGET_VFP): No longer implies TARGET_HARD_FLOAT. (TARGET_OPTIONS): Add -mfpu=. (FIRST_FPA_REGNUM): Rename from FIRST_ARM_FP_REGNUM. (LAST_FPA_REGNUM): Rename from LAST_ARM_FP_REGNUM. (arm_pf_model): Define. (arm_float_abi_type): Define. (fputype): Add FPUTYPE_VFP. Change SOFT_FPA->NONE * config/arm/arm.md: Use new TARGET_* flags. * config/arm/cirrus.md: Ditto. * config/arm/fpa.md: Ditto. * config/arm/elf.h (ASM_SPEC): Pass -mfloat-abi= and -mfpu=. * config/arm/semi.h (ASM_SPEC): Ditto. * config/arm/netbsd-elf.h (SUBTARGET_ASM_FLOAT_SPEC): Specify vfp. (FPUTYPE_DEFAULT): Set to VFP. * doc/invoke.texi: Document -mfpu= and -mfloat-abi=. 2003-11-22 Phil Edwards <phil@codesourcery.com> PR target/12476 * config/arm/arm.c (arm_output_mi_thunk): In Thumb mode, use 'bx' instead of 'b' to avoid branch range restrictions. Output the thunk immediately before the thunked-to function. * config/arm/arm.h (ARM_DECLARE_FUNCTION_NAME): Do not emit .thumb_func if a thunk is being generated. Emit .code 16 along with .thumb_func if a thunk is not being generated. 2003-11-15 Nicolas Pitre <nico@cam.org> * config/arm/arm.md (ashldi3, arm_ashldi3_1bit, ashrdi3, arm_ashrdi3_1bit, lshrdi3, arm_lshrdi3_1bit): New patterns. * config/arm/iwmmxt.md (ashrdi3_iwmmxt): Renamed from ashrdi3. (lshrdi3_iwmmxt): Renamed from lshrdi3. * config/arm/arm.c (IWMMXT_BUILTIN2): Renamed argument accordingly. 2003-11-12 Steve Woodford <scw@wasabisystems.com> Ian Lance Taylor <ian@wasabisystems.com> * config/arm/lib1funcs.asm (ARM_DIV_BODY, ARM_MOD_BODY): Add new code for __ARM_ARCH__ >= 5 && ! defined (__OPTIMIZE_SIZE__). 2003-11-05 Phil Edwards <phil@codesourcery.com> * config/arm/arm.md (insn): Add new V6 instruction names. (generic_sched): New attr. * config/arm/arm-generic.md: Use generic_sched here. * config/arm/arm1026ejs.md: Do not model fetch/issue/decode stages of pipeline. Adjust latency counts accordingly. * config/arm/arm1136jfs.md: New file. 2003-10-28 Mark Mitchell <mark@codesourcery.com> * config/arm/arm.h (processor_type): New enumeration type. (CPP_ARCH_DEFAULT_SPEC): Set appropriately for ARM 926EJ-S, ARM1026EJ-S, ARM1136J-S, and ARM1136JF-S processor cores. (CPP_CPU_ARCH_SPEC): Likewise. * config/arm/arm.c (arm_tune): New variable. (all_cores): Use cores.def. (all_architectures): Add representative processor. (arm_override_options): Restructure way in which tuning information is deduced. * arm.md: Update "insn" and "type" attributes throughout. (insn): New attribute. (type): Compute "mult" from "insn" attribute. Add load2, load3, load4 alternatives. (arm automaton): Move to arm-generic.md. * config/arm/arm-cores.def: New file. * config/arm/arm-generic.md: Likewise. * config/arm/arm1026ejs.md: Likewise. From-SVN: r77171
2004-02-03 15:45:44 +01:00
# OK
;;
*)
config.gcc: Add --with-abi= * config.gcc <arm>: Add --with-abi= * config/arm/arm-protos.h (arm_get_frame_size, thumb_get_frame_size, thumb_far_jump_used): Remove prototypes. (arm_needs_doubleword_align): Add prototype. (thumb_compute_initial_elimination_offset): Ditto. * config/arm/arm.c (arm_get_frame_offsets): New function. (use_return_insn, output_return_instruction, arm_output_epilogue, arm_output_function_epilogue, arm_compute_initial_elimination_offset, arm_expand_prologue, thumb_expand_epilogue): Use it. (arm_abi, target_abi_name, all_arm_abis): New variables. (arm_override_options): Set them. Set structure padding for AAPCS. (arm_return_in_memory): Update ABI check. (arm_init_cumulative_args): Initialize can_split. (arm_needs_doubleword_align): New function. (arm_function_arg): Don't split args after pushing to stack. Handle doubleword/even reg alignment. (arm_va_arg): Handle all doubleword aligned args. (add_minpoolforward ref, dump_minpool, push_minpool_fix): Align based on ABI, not CPU. (arm_compute_save_reg0_reg12_mask): Fix comment. (thumb_get_frame_size, thumb_get_frame_size): Remove. (thumb_jump_far_used_p): Remove superfluous argument. Return save value for alignment. (thumb_unexpanded_epilogue, thumb_output_function_prologue): Change to match. (thumb_compute_initial_elimination_offset): New function. (thumb_expand_prologue): Use arm_get_frame_offsets. Remove unneccessary rounding. * config/arm/arm.h (target_abi_name): Declare. (ARM_DOUBLEWORD_ALIGN, DOUBLEWORD_ALIGNMENT, TARGET_IWMMXT_ABI, arm_abi_type, ARM_DEFAULT_ABI): Define. (ARM_FLAG_ATPCS): Remove. (TARGET_OPTIONS, OPTION_DEFAULT_SPECS): Add -mabi=. (BIGGEST_ALIGNMENT, PREFERRED_STACK_BOUNDARY, STACK_BOUNDARY): Use it. (ADJUST_FIELD_ALIGN, DATA_ALIGNMENT, LOCAL_ALIGNMENT, TYPE_NEEDS_IWMMXT_ALIGNMENT): Remove. (LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P, FUNCTION_ARG_REGNO_P): Contitionalize on ABI, not CPU. (struct arm_stack_offsets): Define. (struct machine_function): Add stack_offsets. Remove frame_size. (FUNCTION_ARG_PARTIAL_NREGS): Don't split if previous args have been pushed. (FUNCTION_ARG_ADVANCE, FUNCTION_ARG_BOUNDARY): Handle general doubleword alignment. (THUMB_INITIAL_ELIMINATION_OFFSET, ARM_INITIAL_ELIMINATION_OFFSET): Remove. (INITIAL_ELIMINATION_OFFSET): Call functions directly. * config/arm/arm.md (align_8): Enable for all targets. * config/arm/netbsd-elf.h (TARGET_DEFAULT): Remove TARGET_ATPCS. (ARM_DEFAULT_ABI): Define. * doc/invoke.texi <ARM>: Document -mabi=. Update documentation for -mstructure-size-boundary. From-SVN: r79921
2004-03-24 18:20:16 +01:00
echo "Unknown fpu used in --with-fpu=$with_fpu" 2>&1
exit 1
;;
esac
case "$with_abi" in
"" \
| apcs-gnu | atpcs | aapcs | iwmmxt | aapcs-linux )
config.gcc: Add --with-abi= * config.gcc <arm>: Add --with-abi= * config/arm/arm-protos.h (arm_get_frame_size, thumb_get_frame_size, thumb_far_jump_used): Remove prototypes. (arm_needs_doubleword_align): Add prototype. (thumb_compute_initial_elimination_offset): Ditto. * config/arm/arm.c (arm_get_frame_offsets): New function. (use_return_insn, output_return_instruction, arm_output_epilogue, arm_output_function_epilogue, arm_compute_initial_elimination_offset, arm_expand_prologue, thumb_expand_epilogue): Use it. (arm_abi, target_abi_name, all_arm_abis): New variables. (arm_override_options): Set them. Set structure padding for AAPCS. (arm_return_in_memory): Update ABI check. (arm_init_cumulative_args): Initialize can_split. (arm_needs_doubleword_align): New function. (arm_function_arg): Don't split args after pushing to stack. Handle doubleword/even reg alignment. (arm_va_arg): Handle all doubleword aligned args. (add_minpoolforward ref, dump_minpool, push_minpool_fix): Align based on ABI, not CPU. (arm_compute_save_reg0_reg12_mask): Fix comment. (thumb_get_frame_size, thumb_get_frame_size): Remove. (thumb_jump_far_used_p): Remove superfluous argument. Return save value for alignment. (thumb_unexpanded_epilogue, thumb_output_function_prologue): Change to match. (thumb_compute_initial_elimination_offset): New function. (thumb_expand_prologue): Use arm_get_frame_offsets. Remove unneccessary rounding. * config/arm/arm.h (target_abi_name): Declare. (ARM_DOUBLEWORD_ALIGN, DOUBLEWORD_ALIGNMENT, TARGET_IWMMXT_ABI, arm_abi_type, ARM_DEFAULT_ABI): Define. (ARM_FLAG_ATPCS): Remove. (TARGET_OPTIONS, OPTION_DEFAULT_SPECS): Add -mabi=. (BIGGEST_ALIGNMENT, PREFERRED_STACK_BOUNDARY, STACK_BOUNDARY): Use it. (ADJUST_FIELD_ALIGN, DATA_ALIGNMENT, LOCAL_ALIGNMENT, TYPE_NEEDS_IWMMXT_ALIGNMENT): Remove. (LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P, FUNCTION_ARG_REGNO_P): Contitionalize on ABI, not CPU. (struct arm_stack_offsets): Define. (struct machine_function): Add stack_offsets. Remove frame_size. (FUNCTION_ARG_PARTIAL_NREGS): Don't split if previous args have been pushed. (FUNCTION_ARG_ADVANCE, FUNCTION_ARG_BOUNDARY): Handle general doubleword alignment. (THUMB_INITIAL_ELIMINATION_OFFSET, ARM_INITIAL_ELIMINATION_OFFSET): Remove. (INITIAL_ELIMINATION_OFFSET): Call functions directly. * config/arm/arm.md (align_8): Enable for all targets. * config/arm/netbsd-elf.h (TARGET_DEFAULT): Remove TARGET_ATPCS. (ARM_DEFAULT_ABI): Define. * doc/invoke.texi <ARM>: Document -mabi=. Update documentation for -mstructure-size-boundary. From-SVN: r79921
2004-03-24 18:20:16 +01:00
#OK
;;
*)
echo "Unknown ABI used in --with-abi=$with_abi"
backport: re PR target/12476 (ARM/THUMB thunk calls broken) Merge from csl-arm-branch. 2004-01-30 Paul Brook <paul@codesourcery.com> * aof.h (REGISTER_NAMES): Add vfp reg names (ADDITIONAL_REGISTER_NAMES): Ditto. * aout.h (REGISTER_NAMES): Ditto. (ADDITIONAL_REGISTER_NAMES): Ditto. * arm-protos.h: Update/Add Prototypes. * arm.c (init_fp_table): Rename from init_fpa_table. Update users. Only allow 0.0 for VFP. (fp_consts_inited): Rename from fpa_consts_inited. Update users. (values_fp): Rename from values_fpa. Update Users. (arm_const_double_rtx): Rename from const_double_rtx_ok_for_fpa. Update users. Only check valid constants for this hardware. (arm_float_rhs_operand): Rename from fpa_rhs_operand. Update Users. Only allow consts for FPA. (arm_float_add_operand): Rename from fpa_add_operand. Update users. Only allow consts for FPA. (use_return_insn): Check for saved VFP regs. (arm_legitimate_address_p): Handle VFP DFmode addressing. (arm_legitimize_address): Ditto. (arm_general_register_operand): New function. (vfp_mem_operand): New function. (vfp_compare_operand): New function. (vfp_secondary_reload_class): New function. (arm_float_compare_operand): New function. (vfp_print_multi): New function. (vfp_output_fstmx): New function. (vfp_emit_fstm): New function. (arm_output_epilogue): Output VPF reg restore code. (arm_expand_prologue): Output VFP reg save code. (arm_print_operand): Add 'P'. (arm_hard_regno_mode_ok): Return modes for VFP regs. (arm_regno_class): Return classes for VFP regs. (arm_compute_initial_elimination_offset): Include space for VFP regs. (arm_get_frame_size): Ditto. * arm.h (FIXED_REGISTERS): Add VFP regs. (CALL_USED_REGISTERS): Ditto. (CONDITIONAL_REGISTER_USAGE): Enable VFP regs. (FIRST_VFP_REGNUM): Define. (LAST_VFP_REGNUM): Define. (IS_VFP_REGNUM): Define. (FIRST_PSEUDO_REGISTER): Include VFP regs. (HARD_REGNO_NREGS): Handle VFP regs. (REG_ALLOC_ORDER): Add VFP regs. (enum reg_class): Add VFP_REGS. (REG_CLASS_NAMES): Ditto. (REG_CLASS_CONTENTS): Ditto. (CANNOT_CHANGE_MODE_CLASS) Handle VFP Regs. (REG_CLASS_FROM_LETTER): Add 'w'. (EXTRA_CONSTRAINT_ARM): Add 'U'. (EXTRA_MEMORY_CONSTRAINT): Define. (SECONDARY_OUTPUT_RELOAD_CLASS): Handle VFP regs. (SECONDARY_INPUT_RELOAD_CLASS): Ditto. (REGISTER_MOVE_COST): Ditto. (PREDICATE_CODES): Add arm_general_register_operand, arm_float_compare_operand and vfp_compare_operand. * arm.md (various): Rename as above. (divsf3): Enable when TARGET_VFP. (divdf3): Ditto. (movdfcc): Ditto. (sqrtsf2): Ditto. (sqrtdf2): Ditto. (arm_movdi): Disable when TARGET_VFP. (arm_movsi_insn): Ditto. (movsi): Only split with general regs. (cmpsf): Use arm_float_compare_operand. (push_fp_multi): Restrict to TARGET_FPA. (vfp.md): Include. * vfp.md: New file. * fpa.md (various): Rename as above. * doc/md.texi: Document ARM w and U constraints. 2004-01-15 Paul Brook <paul@codesourcery.com> * config.gcc: Add with_fpu. Allow with-float=softfp. * config/arm/arm.c (arm_override_options): Rename *-s to *s. Break out of loop when we find a float-abi. Fix typo. * config/arm/arm.h (OPTION_DEFAULT_SPECS): Add "fpu". Set -mfloat-abi=. * doc/install.texi: Document --with-fpu. 2003-01-14 Paul Brook <paul@codesourcery.com> * config.gcc (with_arch): Add armv6. * config/arm/arm.h: Rename TARGET_CPU_*_s to TARGET_CPU_*s. * config/arm/arm.c (arm_overrride_options): Ditto. 2004-01-08 Richard Earnshaw <rearnsha@arm.com> * arm.c (FL_ARCH3M): Renamed from FL_FAST_MULT. (FL_ARCH6): Renamed from FL_ARCH6J. (arm_arch3m): Renamed from arm_fast_multiply. (arm_arch6): Renamed from arm_arch6j. * arm.h: Update all uses of above. * arm-cores.def: Likewise. * arm.md: Likewise. * arm.h (CPP_CPU_ARCH_SPEC): Emit __ARM_ARCH_6J__ define for armV6j, not arm6j. Add entry for arch armv6. 2004-01-07 Richard Earnshaw <rearnsha@arm.com> * arm.c (arm_emit_extendsi): Delete. * arm-protos.h (arm_emit_extendsi): Delete. * arm.md (zero_extendhisi2): Also handle zero-extension of non-subregs. (zero_extendqisi2, extendhisi2, extendqisi2): Likewise. (thumb_zero_extendhisi2): Only match if not v6. (arm_zero_extendhisi2, thumb_zero_extendqisi2, arm_zero_extendqisi2) (thumb_extendhisi2, arm_extendhisi2, arm_extendqisi) (thumb_extendqisi2): Likewise. (thumb_zero_extendhisi2_v6, arm_zero_extendhisi2_v6): New patterns. (thumb_zero_extendqisi2_v6, arm_zero_extendqisi2_v6): New patterns. (thumb_extendhisi2_insn_v6, arm_extendhisi2_v6): New patterns. (thumb_extendqisi2_v6, arm_extendqisi_v6): New patterns. (arm_zero_extendhisi2_reg, arm_zero_extendqisi2_reg): Delete. (arm_extendhisi2_reg, arm_extendqisi2_reg): Delete. (arm_zero_extendhisi2addsi): Remove subreg. Add attributes. (arm_zero_extendqisi2addsi, arm_extendhisi2addsi): Likewise. (arm_extendqisi2addsi): Likewise. 2003-12-31 Mark Mitchell <mark@codesourcery.com> Revert this change: * config/arm/arm.h (THUMB_LEGTITIMIZE_RELOAD_ADDRESS): Reload REG + REG addressing modes. * config/arm/arm.h (THUMB_LEGTITIMIZE_RELOAD_ADDRESS): Reload REG + REG addressing modes. 2003-12-30 Mark Mitchell <mark@codesourcery.com> * config/arm/arm.h (THUMB_LEGITIMATE_CONSTANT_P): Accept CONSTANT_P_RTX. 2003-30-12 Paul Brook <paul@codesourcery.com> * longlong.h: protect arm inlines with !defined (__thumb__) 2003-30-12 Paul Brook <paul@codesourcery.com> * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Always define __arm__. 2003-12-30 Nathan Sidwell <nathan@codesourcery.com> * builtins.c (expand_builtin_apply_args_1): Fix typo in previous change. 2003-12-29 Nathan Sidwell <nathan@codesourcery.com> * builtins.c (expand_builtin_apply_args_1): Add pretend args size to the virtual incoming args pointer for downward stacks. 2003-12-29 Paul Brook <paul@codesourcery.com> * config/arm/arm-cores.def: Add cost function. * config/arm/arm.c (arm_*_rtx_costs): New functions. (arm_rtx_costs): Remove (struct processors): Add rtx_costs field. (all_cores, all_architectures): Ditto. (arm_override_options): Set targetm.rtx_costs. (thumb_rtx_costs): New function. (arm_rtx_costs_1): Remove cases handled elsewhere. * config/arm/arm.h (processor_type): Add COSTS parameter. 2003-12-29 Nathan Sidwell <nathan@codesourcery.com> * config/arm/arm.md (generic_sched): arm926 has its own scheduler. (arm926ejs.md): Include it. * config/arm/arm926ejs.md: New pipeline description. 2003-12-24 Paul Brook <paul@codesourcery.com> * config/arm/arm.c (arm_arch6j): New variable. (arm_override_options): Set it. (arm_emit_extendsi): New function. * config/arm/arm-protos.h (arm_emit_extendsi): Add prototype. * config/arm/arm.h (arm_arch6j): Declare. * config/arm/arm.md: Add sign/zero extend insns. 2003-12-23 Paul Brook <paul@codesourcery.com> * config/arm/arm.c (all_architectures): Add armv6. * doc/invoke.texi: Document it. 2003-12-19 Paul Brook <paul@codesourcery.com> * config/arm/arm.md: Add load1 and load_byte "type" attrs. Modify insn patterns to match. * config/arm/arm-generic.md: Ditto. * config/arm/cirrus.md: Ditto. * config/arm/fpa.md: Ditto. * config/amm/iwmmxt.md: Ditto. * config/arm/arm1026ejs.md: Ditto. * config/arm/arm1135jfs.md: Ditto. Add insn_reservation and bypasses for 11_loadb. 2003-12-18 Nathan Sidwell <nathan@codesourcery.com> * config/arm/arm-protos.h (arm_no_early_alu_shift_value_dep): Declare. * config/arm/arm.c (arm_adjust_cost): Check shift cost for TYPE_ALU_SHIFT and TYPE_ALU_SHIFT_REG. (arm_no_early_store_addr_dep, arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Correctly deal with conditional execution, parallels and single shift operations. (arm_no_early_alu_shift_value_dep): Define. * arm.md (attr type): Replace 'normal' with 'alu', 'alu_shift' and 'alu_shift_reg'. (attr core_cycles): Adjust. (*addsi3_carryin_shift, andsi_not_shiftsi_si, *arm_shiftsi3, *shiftsi3_compare0, *notsi_shiftsi, *notsi_shiftsi_compare0, *not_shiftsi_compare0_scratch, *cmpsi_shiftsi, *cmpsi_shiftsi_swp, *cmpsi_neg_shiftsi, *arith_shiftsi, *arith_shiftsi_compare0, *arith_shiftsi_compare0_scratch, *sub_shiftsi, *sub_shiftsi_compare0, *sub_shiftsi_compare0_scratch, *if_shift_move, *if_move_shift, *if_shift_shift): Set type attribute appropriately. * config/arm/arm1026ejs.md (alu_op): Adjust. (alu_shift_op, alu_shift_reg_op): New. * config/arm/arm1136.md: Add better bypasses for early registers. Remove load[234] and store[234] bypasses. (11_alu_op): Adjust. (11_alu_shift_op, 11_alu_shift_reg_op): New. 2003-12-15 Nathan Sidwell <nathan@codesourcery.com> * config/arm/arm-protos.h (arm_no_early_store_addr_dep, arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Declare. * config/arm/arm.c (arm_no_early_store_addr_dep, arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Define. * config/arm/arm1026ejs.md: Add load-store bypass. * config/arm/arm1136jfs.md (11_alu_op): Take 2 cycles. Add bypasses between instructions. 2003-12-10 Paul Brook <paul@codesourcery.com> * config/arm/arm.c (arm_fpu_model): New variable. (arm_fload_abi): New variable. (target_fpe_name): Rename from target_fp_name. (target_fpu_name): New variable. (arm_is_cirrus): Remove. (fpu_desc): New struct. (all_fpus): Define. (pf_model_for_fpu): Define. (all_loat_abis): Define. (arm_override_options): Set fp arch flags based on -mfpu= and -float-abi=. (FIRST_FPA_REGNUM): Rename from FIRST_ARM_FP_REGNUM. (LAST_FPA_REGNUM): Rename from LAST_ARM_FP_REGNUM. (*): Use new TARGET_* flags. * config/arm/arm.h (TARGET_ANY_HARD_FLOAT): Remove. (TARGET_HARD_FLOAT): No longer implies TARGET_FPA. (TARGET_SOFT_FLOAT): Ditto. (TARGET_SOFT_FLOAT_ABI): New. (TARGET_MAVERICK): Rename from TARGET_CIRRUS. No longer implies TARGET_HARD_FLOAT. (TARGET_VFP): No longer implies TARGET_HARD_FLOAT. (TARGET_OPTIONS): Add -mfpu=. (FIRST_FPA_REGNUM): Rename from FIRST_ARM_FP_REGNUM. (LAST_FPA_REGNUM): Rename from LAST_ARM_FP_REGNUM. (arm_pf_model): Define. (arm_float_abi_type): Define. (fputype): Add FPUTYPE_VFP. Change SOFT_FPA->NONE * config/arm/arm.md: Use new TARGET_* flags. * config/arm/cirrus.md: Ditto. * config/arm/fpa.md: Ditto. * config/arm/elf.h (ASM_SPEC): Pass -mfloat-abi= and -mfpu=. * config/arm/semi.h (ASM_SPEC): Ditto. * config/arm/netbsd-elf.h (SUBTARGET_ASM_FLOAT_SPEC): Specify vfp. (FPUTYPE_DEFAULT): Set to VFP. * doc/invoke.texi: Document -mfpu= and -mfloat-abi=. 2003-11-22 Phil Edwards <phil@codesourcery.com> PR target/12476 * config/arm/arm.c (arm_output_mi_thunk): In Thumb mode, use 'bx' instead of 'b' to avoid branch range restrictions. Output the thunk immediately before the thunked-to function. * config/arm/arm.h (ARM_DECLARE_FUNCTION_NAME): Do not emit .thumb_func if a thunk is being generated. Emit .code 16 along with .thumb_func if a thunk is not being generated. 2003-11-15 Nicolas Pitre <nico@cam.org> * config/arm/arm.md (ashldi3, arm_ashldi3_1bit, ashrdi3, arm_ashrdi3_1bit, lshrdi3, arm_lshrdi3_1bit): New patterns. * config/arm/iwmmxt.md (ashrdi3_iwmmxt): Renamed from ashrdi3. (lshrdi3_iwmmxt): Renamed from lshrdi3. * config/arm/arm.c (IWMMXT_BUILTIN2): Renamed argument accordingly. 2003-11-12 Steve Woodford <scw@wasabisystems.com> Ian Lance Taylor <ian@wasabisystems.com> * config/arm/lib1funcs.asm (ARM_DIV_BODY, ARM_MOD_BODY): Add new code for __ARM_ARCH__ >= 5 && ! defined (__OPTIMIZE_SIZE__). 2003-11-05 Phil Edwards <phil@codesourcery.com> * config/arm/arm.md (insn): Add new V6 instruction names. (generic_sched): New attr. * config/arm/arm-generic.md: Use generic_sched here. * config/arm/arm1026ejs.md: Do not model fetch/issue/decode stages of pipeline. Adjust latency counts accordingly. * config/arm/arm1136jfs.md: New file. 2003-10-28 Mark Mitchell <mark@codesourcery.com> * config/arm/arm.h (processor_type): New enumeration type. (CPP_ARCH_DEFAULT_SPEC): Set appropriately for ARM 926EJ-S, ARM1026EJ-S, ARM1136J-S, and ARM1136JF-S processor cores. (CPP_CPU_ARCH_SPEC): Likewise. * config/arm/arm.c (arm_tune): New variable. (all_cores): Use cores.def. (all_architectures): Add representative processor. (arm_override_options): Restructure way in which tuning information is deduced. * arm.md: Update "insn" and "type" attributes throughout. (insn): New attribute. (type): Compute "mult" from "insn" attribute. Add load2, load3, load4 alternatives. (arm automaton): Move to arm-generic.md. * config/arm/arm-cores.def: New file. * config/arm/arm-generic.md: Likewise. * config/arm/arm1026ejs.md: Likewise. From-SVN: r77171
2004-02-03 15:45:44 +01:00
exit 1
;;
esac
case "$with_mode" in
"" \
| arm | thumb )
#OK
;;
*)
echo "Unknown mode used in --with-mode=$with_mode"
exit 1
;;
esac
if test "x$with_arch" != x && test "x$with_cpu" != x; then
config.gcc: Add --with-abi= * config.gcc <arm>: Add --with-abi= * config/arm/arm-protos.h (arm_get_frame_size, thumb_get_frame_size, thumb_far_jump_used): Remove prototypes. (arm_needs_doubleword_align): Add prototype. (thumb_compute_initial_elimination_offset): Ditto. * config/arm/arm.c (arm_get_frame_offsets): New function. (use_return_insn, output_return_instruction, arm_output_epilogue, arm_output_function_epilogue, arm_compute_initial_elimination_offset, arm_expand_prologue, thumb_expand_epilogue): Use it. (arm_abi, target_abi_name, all_arm_abis): New variables. (arm_override_options): Set them. Set structure padding for AAPCS. (arm_return_in_memory): Update ABI check. (arm_init_cumulative_args): Initialize can_split. (arm_needs_doubleword_align): New function. (arm_function_arg): Don't split args after pushing to stack. Handle doubleword/even reg alignment. (arm_va_arg): Handle all doubleword aligned args. (add_minpoolforward ref, dump_minpool, push_minpool_fix): Align based on ABI, not CPU. (arm_compute_save_reg0_reg12_mask): Fix comment. (thumb_get_frame_size, thumb_get_frame_size): Remove. (thumb_jump_far_used_p): Remove superfluous argument. Return save value for alignment. (thumb_unexpanded_epilogue, thumb_output_function_prologue): Change to match. (thumb_compute_initial_elimination_offset): New function. (thumb_expand_prologue): Use arm_get_frame_offsets. Remove unneccessary rounding. * config/arm/arm.h (target_abi_name): Declare. (ARM_DOUBLEWORD_ALIGN, DOUBLEWORD_ALIGNMENT, TARGET_IWMMXT_ABI, arm_abi_type, ARM_DEFAULT_ABI): Define. (ARM_FLAG_ATPCS): Remove. (TARGET_OPTIONS, OPTION_DEFAULT_SPECS): Add -mabi=. (BIGGEST_ALIGNMENT, PREFERRED_STACK_BOUNDARY, STACK_BOUNDARY): Use it. (ADJUST_FIELD_ALIGN, DATA_ALIGNMENT, LOCAL_ALIGNMENT, TYPE_NEEDS_IWMMXT_ALIGNMENT): Remove. (LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P, FUNCTION_ARG_REGNO_P): Contitionalize on ABI, not CPU. (struct arm_stack_offsets): Define. (struct machine_function): Add stack_offsets. Remove frame_size. (FUNCTION_ARG_PARTIAL_NREGS): Don't split if previous args have been pushed. (FUNCTION_ARG_ADVANCE, FUNCTION_ARG_BOUNDARY): Handle general doubleword alignment. (THUMB_INITIAL_ELIMINATION_OFFSET, ARM_INITIAL_ELIMINATION_OFFSET): Remove. (INITIAL_ELIMINATION_OFFSET): Call functions directly. * config/arm/arm.md (align_8): Enable for all targets. * config/arm/netbsd-elf.h (TARGET_DEFAULT): Remove TARGET_ATPCS. (ARM_DEFAULT_ABI): Define. * doc/invoke.texi <ARM>: Document -mabi=. Update documentation for -mstructure-size-boundary. From-SVN: r79921
2004-03-24 18:20:16 +01:00
echo "Warning: --with-arch overrides --with-cpu=$with_cpu" 1>&2
fi
;;
Implement FR-V FDPIC ABI support for frv-uclinux and frv-linux. 2004-02-05 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_emit_movsi): Use GOT relocations for symbols in sections named by the user. 2004-01-30 Alexandre Oliva <aoliva@redhat.com> * config/frv/linux.h (TARGET_OS_CPP_BUILTINS): New. 2004-01-27 Alexandre Oliva <aoliva@redhat.com> * config.gcc (frv-*-*linux*): Handle like *-*-linux*. * config/frv/t-linux (EXTRA_MULTILIB_PARTS): Remove, obviated by the above. 2004-01-20 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.md (symGOT2reg_hilo, symGOTOFF2reg_hilo): Add one more pseudo to further improve code generation. 2004-01-19 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.md (movdi_ldd): Introduce explicit indirection inside UNSPEC. 2004-01-16 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_legitimate_address_p): Added allow_double_reg_p argument. Adjust all callers. Use it to decide whether to enable double-register indirect addressing. (frv_funcdesc_alias_set): Remove. (frv_expand_fdpic_call): Force non-SYMBOL_REF operand into register. Emit movdi_ldd. (ldd_address_operand): New. * config/frv/frv-protos.h (frv_legitimate_address_p): Adjust. * config/frv/frv.h (GO_IF_LEGITIMATE_ADDRESS): Likewise. (PREDICATE_CODES): Add ldd_address_operand. * config/frv/frv.md (movdi_ldd): New. (symGOT2reg_hilo, symGOTOFF2reg_hilo): Use separate pseudo for intermediate computations if possible. (symGOTOFF2reg_i): Fix harmless typo. 2003-12-18 Alexandre Oliva <aoliva@redhat.com> * unwind-dw2-fde-glibc.c (_Unwind_IteratePhdrCallback): Cast relocated p_vaddr to vaddr type. * config/frv/frv-protos.h (frv_expand_fdpic_call): Return void. * config/frv/frv.c (frv_get_funcdesc_alias_set): New. (frv_expand_fdpic_call): Propagate incoming MEM's expr to funcdesc MEM, or use a funcdesc alias set. Use regular move instead of ldd. (dbl_memory_one_insn_operand): Recognize function descriptors by type or by alias set, and don't split them. * config/frv/frv.md (call, call_value): Never use call_internal for fdpic. (call_internal, call_value_internal): Never match for FDPIC. (call_fdpicdi, call_fdpicsi, call_value_fdpicdi, call_value_fdpicsi): Require FDPIC. (ldd): Removed. 2003-12-17 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.h (CRT_GET_RFIB_DATA): Define for __FRV_FDPIC__. * unwind-dw2-fde-glibc.c: Don't include elf-fdpic.h any more. (_Unwind_IteratePhdrCallback): Adjust type of load_base for FRV FDPIC. Compute data base address. * config/frv/linux.h (SUBTARGET_DRIVER_SELF_SPECS): Enable -mfdpic before the other self-specs are processed. * config/frv/t-linux (CRTSTUFF_T_CFLAGS, TARGET_LIBGCC2_CFLAGS): Build with -fPIC. 2003-12-15 Alexandre Oliva <aoliva@redhat.com> * unwind-dw2-fde-glibc.c: Don't include bits/elf-fdpic.h if inhibit_libc is defined. 2003-12-12 Alexandre Oliva <aoliva@redhat.com> * unwind-dw2-fde-glibc.c: Include bits/elf-fdpic.h for __FRV_FDPIC__. (__RELOC_POINTER): Define. (_Unwind_IteratePhdrCallback): Use it. * config/frv/frv.h (Twrite): Define. (TRANSFER_FROM_TRAMPOLINE): Use it. * config/frv/linux.h (INVOKE__main): Undefine. (Twrite): Override. 2003-12-05 Richard Sandiford <rsandifo@redhat.com> * doc/invoke.texi (-mlong-calls, -mlinked-fp): Document FRV options. (-mlibrary-pic): Emphasize that this option generates EABI code. (-mcpu): Add fr550. (-mpack): Remove. 2003-11-30 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (int_2word_operand): Reject LABELs, SYMBOL_REFs and CONSTs in FDPIC mode. * gcc/config.gcc (with_cpu): Default to fr400 on frv-*-*linux*. 2003-11-29 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv.c (move_source_operand): Don't accept symbolic constants. * config/frv/frv.md (*movhi_internal, *movsi_internal): Use an 'n' rather than 'i' constraint for the 2-instruction alternative. (*movsi_2word): New, incorporating existing int_2word_operand splitter. 2003-11-29 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv.h (EXTRA_CONSTRAINT_FOR_Q): Renamed from EXTRA_CONSTRAINT_FOR_Y. (EXTRA_CONSTRAINT): Remove handling of 'Y'. * config/frv/frv.md (*movsi_internal): Remove 'Q' constraint. (addsi3): Change 'Y' constraint to 'Q'. 2003-11-27 Richard Sandiford <rsandifo@redhat.com> * reload.c (CONST_POOL_OK_P): New macro. (find_reloads): Use it to decide whether a constant can be forced into memory. * config/frv/frv.h (LEGITIMATE_PIC_OPERAND_P): Return true if the constant satisfies got12_operand. (frv_cannot_force_const_mem): Always return true for TARGET_FDPIC. (frv_legitimate_address_p): Check for valid unspec offsets using got12_operand rather than frv_legitimate_fdpic_operand_p. (frv_legitimate_fdpic_operand_p): Delete. (frv_emit_movsi): Abort if we try to use the FDPIC register during or after reload. (frv_legitimate_constant_p): Return LEGITIMATE_PIC_OPERAND_P if TARGET_FDPIC. * config/frv/frv.md (*movdf_double): Add alternatives for CONST_DOUBLE. 2003-11-19 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv-protos.h (fdpic_operand, fdpic_got12_operand) (frv_fdpic_fptr_operand): Don't declare here. * config/frv/frv.h (EXTRA_CONSTRAINT_FOR_Y): Call got12_operand rather than fdpic_got12_operand. (PREDICATE_CODES): Remove symbolic_operand entry. Add entries for got12_operand and const_unspec_operand. * config/frv/frv.c (got12_operand): Renamed from fdpic_got12_operand. (gpr_or_int12_operand, dbl_memory_one_insn_operand): Update calls. (symbolic_operand): Remove. (const_unspec_operand): New predicate. * config/frv/frv.md (*movsi_got): Use got12_operand. (*movsi_high_got, *movsi_lo_sum_got): Use const_unspec_operand. 2003-11-18 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv-protos.h (frv_output_addr_const_extra): Remove. * config/frv/frv.h (OUTPUT_ADDR_CONST_EXTRA): Remove definition. * config/frv/frv.c (frv_unspec): New structure. (frv_small_data_reloc_p, frv_const_unspec_p): New functions. (frv_print_operand_memory_reference): Use frv_const_unspec_p to validate CONST indices. Use frv_output_const_unspec to print them. (frv_print_operand): Update call to unspec_got_name. Use frv_output_const_unspec to print constant unspecs. (frv_legitimate_fdpic_operand_p): Return true if frv_const_unspec_p. Reject UNSPECs otherwise. (unspec_got_name): Take the relocation number as argument, not an rtx containing it. (frv_output_addr_const_extra): Remove, replacing with... (frv_output_const_unspec): ...this new function. (frv_find_base_term): Use frv_const_unspec_p & frv_small_data_reloc_p. (gpr_or_int12_operand): Use fdpic_got12_operand. (dbl_memory_one_insn_operand): Likewise. (fdpic_got12_operand): Use frv_const_unspec_p. (frv_emit_movsi): Use frv_const_unspec_p to check for CONSTs that are already legitimate. Use frv_small_data_reloc_p when deciding whether to use HIGH/LO_SUM for R_FRV_GOTOFF12 and R_FRV_GPREL12. 2003-11-18 Alexandre Oliva <aoliva@redhat.com> * config/frv/t-linux (SHLIB_MAPFILES): Override so as to export... * config/frv/libgcc-frv.ver: ... frv-specific symbols. New file. * config/frv/frv-abi.h (CREATE_DOUBLE_SHIFT): Use branch to local label, for real this time. * config/frv/frv.c (frv_local_funcdesc_p): Update to new representation of visibility. (fdpic_got12_operand, symbolic_operand): Mark unused arguments as such. 2003-11-17 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv.h (MASK_LINKED_FP, TARGET_LINKED_FP): New macros. (TARGET_SWITCHES): Add -mlinked-fp and -mno-linked-fp. * config/frv/frv.c (frv_override_options): Set MASK_LINKED_FP unless it was explicitly disabled. (frv_stack_info): There is no need to save the link register in every frame unless TARGET_LINKED_FP is true. (frv_frame_pointer_required): If !TARGET_LINKED_FP, only require a frame pointer if the stack pointer might change value. (frv_return_addr_rtx): Check and process "count" argument. 2003-11-14 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv-protos.h (frv_legitimize_address): Remove. (frv_find_base_term): Declare. * config/frv/frv.h (LEGITIMIZE_ADDRESS): Do nothing. (FIND_BASE_TERM): Define. (PREDICATE_CODES): Remove pic_register_operand, pic_symbolic_operand, small_data_register_operand, small_data_symbolic_operand. Add symbolic_operand. * config/frv/frv.c (const_small_data_p, plus_small_data_p): Delete. (frv_print_operand_memory_reference, output_move_single): Remove special handling for unlegitimized sdata addresses. (frv_legitimate_address_p): Don't allow sums of SDA_BASE_REG and symbolic addresses. (frv_legitimize_address, frv_legitimize_fdpic_address): Delete. (frv_find_base_term): New function. (int_2word_operand): Check specifically for symbolic address constants. (pic_register_operand, pic_symbolic_operand): Delete. (small_data_register_operand, small_data_symbolic_operand): Delete. (dbl_memory_one_insn_operand): Don't call plus_small_data_p. Allow UNSPEC_GOT constants if !TARGET_FDPIC. (move_source_operand): Only accept CONSTs if they're a two-insn symbolic constant. (fdpic_got12_operand): Don't require TARGET_FDPIC. (frv_emit_movsi): Legitimize sdata and -mlibrary-pic addresses using gen_symGOTOFF2reg*. (frv_ifcvt_rewrite_mem): Remove (plus gr16 ...) special cases. (frv_rtx_costs): Give all MEM addresses a cost of 0. Give MEMs themselves a cost of 3 insns. * config/mips/mips.md (*movsi_got): Allow for !TARGET_FDPIC too. Change predicate to symbolic_operand. (*movsi_high_got, *movsi_lo_sum_got): Likewise. (*movsi_lda_sdata): Delete. (*movsi_pic, movsi_high_pic, movsi_lo_sum_pic): Delete. 2003-11-05 Alexandre Oliva <aoliva@redhat.com> * config.gcc: Add t-slibgcc-elf-ver and support --with-cpu for frv-*-*linux*. * config/frv/frv-abi.h (CREATE_DOUBLE_SHIFT): Use branch to local label. * config/frv/frv.h (DRIVER_SELF_SPECS): Add blank before -multilib-library-pic. (LINK_SPEC): Add -z text for -mfdpic. * config/frv/frvbegin.c (__ROFIXUP_LIST__): Don't define on FDPIC. * config/frv/frvend.c (__ROFIXUP_END__): Likewise. * config/frv/linux.h (STARTFILE_SPEC, ENDFILE_SPEC, LINK_SPEC): Override. (OPTION_DEFAULT_SPECS, HAS_INIT_SECTION, INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, CRT_CALL_STATIC_FUNCTION): Define. * config/frv/t-linux (EXTRA_MULTILIB_PARTS): Use crtstuff-generated files. 2003-10-31 Alexandre Oliva <aoliva@redhat.com> * config.gcc: Add frv-*-*linux*. * config/frv/linux.h, config/frv/t-linux: New. 2003-10-06 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.h (LINK_SPEC): Pass -melf32frvfd to the linker when -mfdpic even if a linker script is explicitly listed. 2003-10-02 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_override_options): Clear asm_out unaligned_op for SImode on FDPIC. (frv_emit_movsi): Use compute_reloc_for_constant to compute the argument passed to decl_readonly_section. (frv_assemble_integer): Revert 2003-09-30's change, but make the whole block run with FDPIC even with -fno-PIC. 2003-10-02 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_cannot_force_const_mem): Don't force symbol or label plus offset to memory. (frv_emit_movsi): Emit GPREL only if -mgprel-ro. Emit 32-bit GOTOFF and GPREL for LABEL_REF. * config/frv/frv.h (DRIVER_SELF_SPECS): Add -mgprel-ro with -mfdpic unless -mno-gprel-ro, -fpic or -fpie. (MASK_GPREL_RO, TARGET_GPREL_RO): New. (TARGET_SWITCHES): Added gprel-ro and no-gprel-ro. * doc/invoke.texi: Document them. 2003-09-30 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv-protos.h (frv_gen_GPsym2reg): Declare. (frv_splittable_got_operand): Removed. * config/frv/frv.c (frv_cannot_force_const_mem): Reject HIGH and LO_SUM. Add comments. (frv_override_options): Moved enabling of FDPIC to DRIVER_SELF_SPECS. Don't enable MASK_DWORD. (frv_local_funcdesc_p): Remove unnecessary heck for flag_pie. (frv_legitimize_fdpic_address): Don't duplicate logic in frv_emit_movsi. (frv_gen_GPsym2reg): New. (unspec_got_name): Added gprel. (frv_expand_fdpic_call): Add support for inlining PLTs. (fdpic_fptr_operand): Renamed from frv_fdpic_fptr_operand. (gpr_or_int12_operand): Added GPREL12. (pic_symbolic_operand): Match even if !flag_pic for FDPIC. (small_data_symbolic_operand): Fail if FDPIC. (fdpic_splittable_got_operand): Removed. (fdpic_got12_operand): Added GPREL12. (frv_emit_movsi): Reorganize to avoid duplication. Emit GPREL when appropriate. Fix sdata GOTOFF. (frv_legitimate_constant_p): Require legitimate PIC operand for FDPIC with pic, but only a legitimate fdpic operand for non-pic. (frv_assemble_integer): Move FDPIC funcdesc handling out of flag_pic case. (frv_asm_out_constructor, frv_asm_out_destructor): Abort if frv_assemble_integer fails. * config/frv/frv.h (DRIVER_SELF_SPECS): New. (SUBTARGET_DRIVER_SELF_SPECS): New. (ASM_SPEC): Don't pass -mno-fdpic. (LINK_SPEC): Pass -melf32frvfd for FDPIC. (MASK_INLINE_PLT, TARGET_INLINE_PLT): New. (TARGET_SWITCHES): Add -minline-plt, -mno-inline-plt and -multilib-library-pic. (PREDICATE_CODES): Added fdpic_operand, fdpic_fptr_operand, condexec_si_media_operator, condexec_sf_add_operator and condexec_sf_conv_operator. Removed condexec_sf_binary_operator and condexec_sf_unary_operator. * config/frv/frv.md (R_FRV_GPREL12, R_FRV_GPRELHI, R_FRV_GPRELLO): New. (movsi_got, movsi_high_got, movsi_lo_sum_got): Move before movsi_internal. Give them internal names. movsi_got has type int. (fdpic got splitters): Remove. (symGPREL2reg, symGPREL2reg_hilo): New. * config/frv/t-frv (MULTILIB_MATCHES): Don't map -fpic and -fPIC to -mlibrary-pic. Map -multilib-library-pic to it. * doc/invoke.texi: -mfdpic, -minline-plt, -multilib-library-pic: Document. 2003-09-28 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_function_symbol_referenced_p): Declare. (TARGET_CANNOT_FORCE_CONST_MEM): Define to... (frv_cannot_force_const_mem): New function. (const_small_data_p, plus_small_data_p): Update comments on sdata on FDPIC. (frv_override_options): Set flag_pie for FDPIC too. (frv_conditional_register_usage): Mark gr16 and gr17 as non-fixed, call-saved registers on FDPIC. (frv_stack_info): Don't preserve the PIC register on FDPIC, and don't force LR to be preserved. (frv_expand_prologue): Likewise. (frv_asm_output_mi_thunk): Use 12-bit funcdesc gotoff for -fpic. (frv_frame_pointer_required): Don't force it just because the FDPIC register is used. (frv_legitimate_address_p) <CONST>: Accept a legitimate FDPIC operand only if !condexec_p. (frv_legitimize_address): Return the FDPIC-legitimized address. Don't match small data here on FDPIC. (frv_legitimate_fdpic_operand_p): Don't accept unadorned function symbols. Use TRUE/FALSE instead of 1/0. (frv_local_funcdesc_p): New. (frv_legitimize_fdpic_address): Rewrite to use GOTOFF and 12-bit immediates when possible. (pic_symbolic_operand): Accept SYMBOL_REFs and CONSTs in FDPIC. (dbl_memory_one_insn_operand): Accept addresses that add a REG and an UNSPEC_GOT. (frv_emit_movsi): Handle FDPIC before small data. Use GOTOFF and 12-bit immediates when possible. (frv_legitimate_constant_p): In FDPIC, reject SImode operands that are not legitimate pic operands. (frv_in_small_data_p): Re-enable for FDPIC. * config/frv/frv.h (SDA_BASE_REG): Remove comment about FDPIC. (FRV_GLOBAL_P): Removed. * config/frv/frv.md: Add modes to CONSTs. (movsi_got): New. (movsi_lo_sum_got): Use separate matches instead of match_dup. (movsi_high_pic, movsi_lo_sum_pic): Match on non-FDPIC only. (fdpic splittable operations): Match on flag_pic != 1. 2003-09-22 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_asm_out_constructor, frv_asm_out_destructor): Pass to frv_assemble_integer the size in bytes, not bits. 2003-09-19 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_assemble_integer): Reject complex expressions referencing function SYMBOL_REFs. * config/frv/frv.c (frv_function_symbol_referenced_p): New. (move_source_operand): Reject CONSTs that reference function SYMBOL_REFs on FDPIC. (frv_emit_movsi): If we get such a CONST, break it up. * config/frv/frv.h (CPP_SPEC): Define __FRV_FDPIC__ for -mfdpic. (TRANSFER_FROM_TRAMPOLINE): Use different definitions for FDPIC. * config/frv/frv.c (frv_print_operand) <I>: Recognize PLUS without MEM. (frv_assemble_integer): Don't use funcdesc for LABEL_REFs. (frv_trampoline_size): Increase for FDPIC. * config/frv/frv.h (TRAMPOLINE_ALIGNMENT): Bump to 64 for FDPIC. (TRANSFER_FROM_TRAMPOLINE): Handle FDPIC trampolines. * config/frv/frv.c (frv_legitimize_fdpic_address, frv_emit_movsi): Disable use of GOTOFF for now. (const_small_data_p, plus_small_data_p, frv_in_small_data_p): Disable use of small data in FDPIC for now. (frv_asm_output_mi_thunk): Implement for FDPIC. * config/frv/frv.h (SDA_BASE_REG): Set to -1 with FDPIC. * config/frv/frv.c (frv_asm_out_constructor): Use frv_assemble_integer for FDPIC pointers. (frv_asm_out_destructor): Likewise. * config/frv/frv.md (ldd): Fix order of operands. Use address_operand for input. 2003-09-18 DJ Delorie <dj@redhat.com> * config/frv/frv.c (frv_legitimate_fdpic_operand_p): Remove UNSPEC_PIC. (unspec_got_name): Correct typo. (frv_emit_movsi): Pre-expand splittable GOTs. (frv_expand_fdpic_call): Rename gen_lddi to gen_ldd. * config/frv/frv.md (lddi): Fix syntax error, rename to ldd. (symGOT2reg_hilo, symGOTOFF2reg_hilo): New. * config/frv/t-frv: Add -mfdpic multilibs. * config/frv/frv.h (ASM_SPEC): Pass -mfdpic/-mno-fdpic. (TARGET_SWITCHES): Add -mno-fdpic, fix documentation. * config/frv/frv.c (frv_override_options): -mfdpic assumes flag_pic, default to 32-bit pics, require DWORD ops. (frv_override_options): Add W and Z constraints. (frv_expand_prologue): No pic prologue for -mfdpic. (frv_asm_output_mi_thunk): Support -mfdpic (soon). (frv_print_operand_memory_reference): Handle GOT constants. (frv_legitimate_address_p): Allow GOT constants. (frv_legitimize_address): Handle GOT addresses too. (frv_legitimate_fdpic_operand_p): New. (frv_legitimize_fdpic_address): New. (unspec_got_name): New. (frv_output_addr_const_extra): New. (frv_expand_fdpic_call): New. (frv_fdpic_fptr_operand): New. (gpr_or_int12_operand): Handle GOT operands. (int_2word_operand): Handle GOT operands. (fdpic_operand): New. (fdpic_splittable_got_operand): New. (fdpic_got12_operand): New. (frv_emit_movsi): Handle GOT operands. (frv_assemble_integer): -mfdpic doesn't use rofixups. (frv_print_operand): Support 'g' code for GOT operands. * config/frv/frv-protos.h: Add prototypes as needed. * config/frv/frv.md (R_FRV_GOT12, R_FRV_GOTHI, R_FRV_GOTLO, R_FRV_FUNCDESC, R_FRV_FUNCDESC_GOT12, R_FRV_FUNCDESC_GOTHI, R_FRV_FUNCDESC_GOTLO, R_FRV_FUNCDESC_VALUE, R_FRV_FUNCDESC_GOTOFF12, R_FRV_FUNCDESC_GOTOFFHI, R_FRV_FUNCDESC_GOTOFFLO, R_FRV_GOTOFF12, R_FRV_GOTOFFHI, R_FRV_GOTOFFLO): New. (movsi_high_got, movsi_lo_sum_got): New. (*movsi_pic): Don't use this splitter for -mfdpic. (addsi3): Allow GOT references also. (call, call_value): Handle -mfdpic separately. (call_fdpicdi, call_fdpicsi, lddi, call_value_fdpicdi, call_value_fdpicsi): New. (symGOT2reg, symGOT2reg_i, got splitters, symGOTOFF2reg, symGOTOFF2reg_i): New. * config/frv/frv.h (MASK_FDPIC): New. (TARGET_FDPIC): New. (TARGET_SWITCHES): Add -mfdpic. (FDPIC_FPTR_REGNO): New. (FDPIC_REGNO): New. (OUR_FDPIC_REG): New. (enum reg_class): Add FDPIC_REGS, FDPIC_FPTR_REGS, and FDPIC_CALL_REGS. (REG_CLASS_NAMES): Likewise. (REG_CLASS_CONTENTS): Likewise. (EXTRA_CONSTRAINT_FOR_Y): New, for 12-bit GOTs. (EXTRA_CONSTRAINT): Add it here. (FRV_GLOBAL_P): New. (OUTPUT_ADDR_CONST_EXTRA): New. From-SVN: r78373
2004-02-24 17:58:39 +01:00
fr*-*-*linux*)
supported_defaults=cpu
case "$with_cpu" in
fr400) ;;
fr550) ;;
Implement FR-V FDPIC ABI support for frv-uclinux and frv-linux. 2004-02-05 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_emit_movsi): Use GOT relocations for symbols in sections named by the user. 2004-01-30 Alexandre Oliva <aoliva@redhat.com> * config/frv/linux.h (TARGET_OS_CPP_BUILTINS): New. 2004-01-27 Alexandre Oliva <aoliva@redhat.com> * config.gcc (frv-*-*linux*): Handle like *-*-linux*. * config/frv/t-linux (EXTRA_MULTILIB_PARTS): Remove, obviated by the above. 2004-01-20 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.md (symGOT2reg_hilo, symGOTOFF2reg_hilo): Add one more pseudo to further improve code generation. 2004-01-19 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.md (movdi_ldd): Introduce explicit indirection inside UNSPEC. 2004-01-16 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_legitimate_address_p): Added allow_double_reg_p argument. Adjust all callers. Use it to decide whether to enable double-register indirect addressing. (frv_funcdesc_alias_set): Remove. (frv_expand_fdpic_call): Force non-SYMBOL_REF operand into register. Emit movdi_ldd. (ldd_address_operand): New. * config/frv/frv-protos.h (frv_legitimate_address_p): Adjust. * config/frv/frv.h (GO_IF_LEGITIMATE_ADDRESS): Likewise. (PREDICATE_CODES): Add ldd_address_operand. * config/frv/frv.md (movdi_ldd): New. (symGOT2reg_hilo, symGOTOFF2reg_hilo): Use separate pseudo for intermediate computations if possible. (symGOTOFF2reg_i): Fix harmless typo. 2003-12-18 Alexandre Oliva <aoliva@redhat.com> * unwind-dw2-fde-glibc.c (_Unwind_IteratePhdrCallback): Cast relocated p_vaddr to vaddr type. * config/frv/frv-protos.h (frv_expand_fdpic_call): Return void. * config/frv/frv.c (frv_get_funcdesc_alias_set): New. (frv_expand_fdpic_call): Propagate incoming MEM's expr to funcdesc MEM, or use a funcdesc alias set. Use regular move instead of ldd. (dbl_memory_one_insn_operand): Recognize function descriptors by type or by alias set, and don't split them. * config/frv/frv.md (call, call_value): Never use call_internal for fdpic. (call_internal, call_value_internal): Never match for FDPIC. (call_fdpicdi, call_fdpicsi, call_value_fdpicdi, call_value_fdpicsi): Require FDPIC. (ldd): Removed. 2003-12-17 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.h (CRT_GET_RFIB_DATA): Define for __FRV_FDPIC__. * unwind-dw2-fde-glibc.c: Don't include elf-fdpic.h any more. (_Unwind_IteratePhdrCallback): Adjust type of load_base for FRV FDPIC. Compute data base address. * config/frv/linux.h (SUBTARGET_DRIVER_SELF_SPECS): Enable -mfdpic before the other self-specs are processed. * config/frv/t-linux (CRTSTUFF_T_CFLAGS, TARGET_LIBGCC2_CFLAGS): Build with -fPIC. 2003-12-15 Alexandre Oliva <aoliva@redhat.com> * unwind-dw2-fde-glibc.c: Don't include bits/elf-fdpic.h if inhibit_libc is defined. 2003-12-12 Alexandre Oliva <aoliva@redhat.com> * unwind-dw2-fde-glibc.c: Include bits/elf-fdpic.h for __FRV_FDPIC__. (__RELOC_POINTER): Define. (_Unwind_IteratePhdrCallback): Use it. * config/frv/frv.h (Twrite): Define. (TRANSFER_FROM_TRAMPOLINE): Use it. * config/frv/linux.h (INVOKE__main): Undefine. (Twrite): Override. 2003-12-05 Richard Sandiford <rsandifo@redhat.com> * doc/invoke.texi (-mlong-calls, -mlinked-fp): Document FRV options. (-mlibrary-pic): Emphasize that this option generates EABI code. (-mcpu): Add fr550. (-mpack): Remove. 2003-11-30 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (int_2word_operand): Reject LABELs, SYMBOL_REFs and CONSTs in FDPIC mode. * gcc/config.gcc (with_cpu): Default to fr400 on frv-*-*linux*. 2003-11-29 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv.c (move_source_operand): Don't accept symbolic constants. * config/frv/frv.md (*movhi_internal, *movsi_internal): Use an 'n' rather than 'i' constraint for the 2-instruction alternative. (*movsi_2word): New, incorporating existing int_2word_operand splitter. 2003-11-29 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv.h (EXTRA_CONSTRAINT_FOR_Q): Renamed from EXTRA_CONSTRAINT_FOR_Y. (EXTRA_CONSTRAINT): Remove handling of 'Y'. * config/frv/frv.md (*movsi_internal): Remove 'Q' constraint. (addsi3): Change 'Y' constraint to 'Q'. 2003-11-27 Richard Sandiford <rsandifo@redhat.com> * reload.c (CONST_POOL_OK_P): New macro. (find_reloads): Use it to decide whether a constant can be forced into memory. * config/frv/frv.h (LEGITIMATE_PIC_OPERAND_P): Return true if the constant satisfies got12_operand. (frv_cannot_force_const_mem): Always return true for TARGET_FDPIC. (frv_legitimate_address_p): Check for valid unspec offsets using got12_operand rather than frv_legitimate_fdpic_operand_p. (frv_legitimate_fdpic_operand_p): Delete. (frv_emit_movsi): Abort if we try to use the FDPIC register during or after reload. (frv_legitimate_constant_p): Return LEGITIMATE_PIC_OPERAND_P if TARGET_FDPIC. * config/frv/frv.md (*movdf_double): Add alternatives for CONST_DOUBLE. 2003-11-19 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv-protos.h (fdpic_operand, fdpic_got12_operand) (frv_fdpic_fptr_operand): Don't declare here. * config/frv/frv.h (EXTRA_CONSTRAINT_FOR_Y): Call got12_operand rather than fdpic_got12_operand. (PREDICATE_CODES): Remove symbolic_operand entry. Add entries for got12_operand and const_unspec_operand. * config/frv/frv.c (got12_operand): Renamed from fdpic_got12_operand. (gpr_or_int12_operand, dbl_memory_one_insn_operand): Update calls. (symbolic_operand): Remove. (const_unspec_operand): New predicate. * config/frv/frv.md (*movsi_got): Use got12_operand. (*movsi_high_got, *movsi_lo_sum_got): Use const_unspec_operand. 2003-11-18 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv-protos.h (frv_output_addr_const_extra): Remove. * config/frv/frv.h (OUTPUT_ADDR_CONST_EXTRA): Remove definition. * config/frv/frv.c (frv_unspec): New structure. (frv_small_data_reloc_p, frv_const_unspec_p): New functions. (frv_print_operand_memory_reference): Use frv_const_unspec_p to validate CONST indices. Use frv_output_const_unspec to print them. (frv_print_operand): Update call to unspec_got_name. Use frv_output_const_unspec to print constant unspecs. (frv_legitimate_fdpic_operand_p): Return true if frv_const_unspec_p. Reject UNSPECs otherwise. (unspec_got_name): Take the relocation number as argument, not an rtx containing it. (frv_output_addr_const_extra): Remove, replacing with... (frv_output_const_unspec): ...this new function. (frv_find_base_term): Use frv_const_unspec_p & frv_small_data_reloc_p. (gpr_or_int12_operand): Use fdpic_got12_operand. (dbl_memory_one_insn_operand): Likewise. (fdpic_got12_operand): Use frv_const_unspec_p. (frv_emit_movsi): Use frv_const_unspec_p to check for CONSTs that are already legitimate. Use frv_small_data_reloc_p when deciding whether to use HIGH/LO_SUM for R_FRV_GOTOFF12 and R_FRV_GPREL12. 2003-11-18 Alexandre Oliva <aoliva@redhat.com> * config/frv/t-linux (SHLIB_MAPFILES): Override so as to export... * config/frv/libgcc-frv.ver: ... frv-specific symbols. New file. * config/frv/frv-abi.h (CREATE_DOUBLE_SHIFT): Use branch to local label, for real this time. * config/frv/frv.c (frv_local_funcdesc_p): Update to new representation of visibility. (fdpic_got12_operand, symbolic_operand): Mark unused arguments as such. 2003-11-17 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv.h (MASK_LINKED_FP, TARGET_LINKED_FP): New macros. (TARGET_SWITCHES): Add -mlinked-fp and -mno-linked-fp. * config/frv/frv.c (frv_override_options): Set MASK_LINKED_FP unless it was explicitly disabled. (frv_stack_info): There is no need to save the link register in every frame unless TARGET_LINKED_FP is true. (frv_frame_pointer_required): If !TARGET_LINKED_FP, only require a frame pointer if the stack pointer might change value. (frv_return_addr_rtx): Check and process "count" argument. 2003-11-14 Richard Sandiford <rsandifo@redhat.com> * config/frv/frv-protos.h (frv_legitimize_address): Remove. (frv_find_base_term): Declare. * config/frv/frv.h (LEGITIMIZE_ADDRESS): Do nothing. (FIND_BASE_TERM): Define. (PREDICATE_CODES): Remove pic_register_operand, pic_symbolic_operand, small_data_register_operand, small_data_symbolic_operand. Add symbolic_operand. * config/frv/frv.c (const_small_data_p, plus_small_data_p): Delete. (frv_print_operand_memory_reference, output_move_single): Remove special handling for unlegitimized sdata addresses. (frv_legitimate_address_p): Don't allow sums of SDA_BASE_REG and symbolic addresses. (frv_legitimize_address, frv_legitimize_fdpic_address): Delete. (frv_find_base_term): New function. (int_2word_operand): Check specifically for symbolic address constants. (pic_register_operand, pic_symbolic_operand): Delete. (small_data_register_operand, small_data_symbolic_operand): Delete. (dbl_memory_one_insn_operand): Don't call plus_small_data_p. Allow UNSPEC_GOT constants if !TARGET_FDPIC. (move_source_operand): Only accept CONSTs if they're a two-insn symbolic constant. (fdpic_got12_operand): Don't require TARGET_FDPIC. (frv_emit_movsi): Legitimize sdata and -mlibrary-pic addresses using gen_symGOTOFF2reg*. (frv_ifcvt_rewrite_mem): Remove (plus gr16 ...) special cases. (frv_rtx_costs): Give all MEM addresses a cost of 0. Give MEMs themselves a cost of 3 insns. * config/mips/mips.md (*movsi_got): Allow for !TARGET_FDPIC too. Change predicate to symbolic_operand. (*movsi_high_got, *movsi_lo_sum_got): Likewise. (*movsi_lda_sdata): Delete. (*movsi_pic, movsi_high_pic, movsi_lo_sum_pic): Delete. 2003-11-05 Alexandre Oliva <aoliva@redhat.com> * config.gcc: Add t-slibgcc-elf-ver and support --with-cpu for frv-*-*linux*. * config/frv/frv-abi.h (CREATE_DOUBLE_SHIFT): Use branch to local label. * config/frv/frv.h (DRIVER_SELF_SPECS): Add blank before -multilib-library-pic. (LINK_SPEC): Add -z text for -mfdpic. * config/frv/frvbegin.c (__ROFIXUP_LIST__): Don't define on FDPIC. * config/frv/frvend.c (__ROFIXUP_END__): Likewise. * config/frv/linux.h (STARTFILE_SPEC, ENDFILE_SPEC, LINK_SPEC): Override. (OPTION_DEFAULT_SPECS, HAS_INIT_SECTION, INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, CRT_CALL_STATIC_FUNCTION): Define. * config/frv/t-linux (EXTRA_MULTILIB_PARTS): Use crtstuff-generated files. 2003-10-31 Alexandre Oliva <aoliva@redhat.com> * config.gcc: Add frv-*-*linux*. * config/frv/linux.h, config/frv/t-linux: New. 2003-10-06 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.h (LINK_SPEC): Pass -melf32frvfd to the linker when -mfdpic even if a linker script is explicitly listed. 2003-10-02 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_override_options): Clear asm_out unaligned_op for SImode on FDPIC. (frv_emit_movsi): Use compute_reloc_for_constant to compute the argument passed to decl_readonly_section. (frv_assemble_integer): Revert 2003-09-30's change, but make the whole block run with FDPIC even with -fno-PIC. 2003-10-02 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_cannot_force_const_mem): Don't force symbol or label plus offset to memory. (frv_emit_movsi): Emit GPREL only if -mgprel-ro. Emit 32-bit GOTOFF and GPREL for LABEL_REF. * config/frv/frv.h (DRIVER_SELF_SPECS): Add -mgprel-ro with -mfdpic unless -mno-gprel-ro, -fpic or -fpie. (MASK_GPREL_RO, TARGET_GPREL_RO): New. (TARGET_SWITCHES): Added gprel-ro and no-gprel-ro. * doc/invoke.texi: Document them. 2003-09-30 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv-protos.h (frv_gen_GPsym2reg): Declare. (frv_splittable_got_operand): Removed. * config/frv/frv.c (frv_cannot_force_const_mem): Reject HIGH and LO_SUM. Add comments. (frv_override_options): Moved enabling of FDPIC to DRIVER_SELF_SPECS. Don't enable MASK_DWORD. (frv_local_funcdesc_p): Remove unnecessary heck for flag_pie. (frv_legitimize_fdpic_address): Don't duplicate logic in frv_emit_movsi. (frv_gen_GPsym2reg): New. (unspec_got_name): Added gprel. (frv_expand_fdpic_call): Add support for inlining PLTs. (fdpic_fptr_operand): Renamed from frv_fdpic_fptr_operand. (gpr_or_int12_operand): Added GPREL12. (pic_symbolic_operand): Match even if !flag_pic for FDPIC. (small_data_symbolic_operand): Fail if FDPIC. (fdpic_splittable_got_operand): Removed. (fdpic_got12_operand): Added GPREL12. (frv_emit_movsi): Reorganize to avoid duplication. Emit GPREL when appropriate. Fix sdata GOTOFF. (frv_legitimate_constant_p): Require legitimate PIC operand for FDPIC with pic, but only a legitimate fdpic operand for non-pic. (frv_assemble_integer): Move FDPIC funcdesc handling out of flag_pic case. (frv_asm_out_constructor, frv_asm_out_destructor): Abort if frv_assemble_integer fails. * config/frv/frv.h (DRIVER_SELF_SPECS): New. (SUBTARGET_DRIVER_SELF_SPECS): New. (ASM_SPEC): Don't pass -mno-fdpic. (LINK_SPEC): Pass -melf32frvfd for FDPIC. (MASK_INLINE_PLT, TARGET_INLINE_PLT): New. (TARGET_SWITCHES): Add -minline-plt, -mno-inline-plt and -multilib-library-pic. (PREDICATE_CODES): Added fdpic_operand, fdpic_fptr_operand, condexec_si_media_operator, condexec_sf_add_operator and condexec_sf_conv_operator. Removed condexec_sf_binary_operator and condexec_sf_unary_operator. * config/frv/frv.md (R_FRV_GPREL12, R_FRV_GPRELHI, R_FRV_GPRELLO): New. (movsi_got, movsi_high_got, movsi_lo_sum_got): Move before movsi_internal. Give them internal names. movsi_got has type int. (fdpic got splitters): Remove. (symGPREL2reg, symGPREL2reg_hilo): New. * config/frv/t-frv (MULTILIB_MATCHES): Don't map -fpic and -fPIC to -mlibrary-pic. Map -multilib-library-pic to it. * doc/invoke.texi: -mfdpic, -minline-plt, -multilib-library-pic: Document. 2003-09-28 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_function_symbol_referenced_p): Declare. (TARGET_CANNOT_FORCE_CONST_MEM): Define to... (frv_cannot_force_const_mem): New function. (const_small_data_p, plus_small_data_p): Update comments on sdata on FDPIC. (frv_override_options): Set flag_pie for FDPIC too. (frv_conditional_register_usage): Mark gr16 and gr17 as non-fixed, call-saved registers on FDPIC. (frv_stack_info): Don't preserve the PIC register on FDPIC, and don't force LR to be preserved. (frv_expand_prologue): Likewise. (frv_asm_output_mi_thunk): Use 12-bit funcdesc gotoff for -fpic. (frv_frame_pointer_required): Don't force it just because the FDPIC register is used. (frv_legitimate_address_p) <CONST>: Accept a legitimate FDPIC operand only if !condexec_p. (frv_legitimize_address): Return the FDPIC-legitimized address. Don't match small data here on FDPIC. (frv_legitimate_fdpic_operand_p): Don't accept unadorned function symbols. Use TRUE/FALSE instead of 1/0. (frv_local_funcdesc_p): New. (frv_legitimize_fdpic_address): Rewrite to use GOTOFF and 12-bit immediates when possible. (pic_symbolic_operand): Accept SYMBOL_REFs and CONSTs in FDPIC. (dbl_memory_one_insn_operand): Accept addresses that add a REG and an UNSPEC_GOT. (frv_emit_movsi): Handle FDPIC before small data. Use GOTOFF and 12-bit immediates when possible. (frv_legitimate_constant_p): In FDPIC, reject SImode operands that are not legitimate pic operands. (frv_in_small_data_p): Re-enable for FDPIC. * config/frv/frv.h (SDA_BASE_REG): Remove comment about FDPIC. (FRV_GLOBAL_P): Removed. * config/frv/frv.md: Add modes to CONSTs. (movsi_got): New. (movsi_lo_sum_got): Use separate matches instead of match_dup. (movsi_high_pic, movsi_lo_sum_pic): Match on non-FDPIC only. (fdpic splittable operations): Match on flag_pic != 1. 2003-09-22 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_asm_out_constructor, frv_asm_out_destructor): Pass to frv_assemble_integer the size in bytes, not bits. 2003-09-19 Alexandre Oliva <aoliva@redhat.com> * config/frv/frv.c (frv_assemble_integer): Reject complex expressions referencing function SYMBOL_REFs. * config/frv/frv.c (frv_function_symbol_referenced_p): New. (move_source_operand): Reject CONSTs that reference function SYMBOL_REFs on FDPIC. (frv_emit_movsi): If we get such a CONST, break it up. * config/frv/frv.h (CPP_SPEC): Define __FRV_FDPIC__ for -mfdpic. (TRANSFER_FROM_TRAMPOLINE): Use different definitions for FDPIC. * config/frv/frv.c (frv_print_operand) <I>: Recognize PLUS without MEM. (frv_assemble_integer): Don't use funcdesc for LABEL_REFs. (frv_trampoline_size): Increase for FDPIC. * config/frv/frv.h (TRAMPOLINE_ALIGNMENT): Bump to 64 for FDPIC. (TRANSFER_FROM_TRAMPOLINE): Handle FDPIC trampolines. * config/frv/frv.c (frv_legitimize_fdpic_address, frv_emit_movsi): Disable use of GOTOFF for now. (const_small_data_p, plus_small_data_p, frv_in_small_data_p): Disable use of small data in FDPIC for now. (frv_asm_output_mi_thunk): Implement for FDPIC. * config/frv/frv.h (SDA_BASE_REG): Set to -1 with FDPIC. * config/frv/frv.c (frv_asm_out_constructor): Use frv_assemble_integer for FDPIC pointers. (frv_asm_out_destructor): Likewise. * config/frv/frv.md (ldd): Fix order of operands. Use address_operand for input. 2003-09-18 DJ Delorie <dj@redhat.com> * config/frv/frv.c (frv_legitimate_fdpic_operand_p): Remove UNSPEC_PIC. (unspec_got_name): Correct typo. (frv_emit_movsi): Pre-expand splittable GOTs. (frv_expand_fdpic_call): Rename gen_lddi to gen_ldd. * config/frv/frv.md (lddi): Fix syntax error, rename to ldd. (symGOT2reg_hilo, symGOTOFF2reg_hilo): New. * config/frv/t-frv: Add -mfdpic multilibs. * config/frv/frv.h (ASM_SPEC): Pass -mfdpic/-mno-fdpic. (TARGET_SWITCHES): Add -mno-fdpic, fix documentation. * config/frv/frv.c (frv_override_options): -mfdpic assumes flag_pic, default to 32-bit pics, require DWORD ops. (frv_override_options): Add W and Z constraints. (frv_expand_prologue): No pic prologue for -mfdpic. (frv_asm_output_mi_thunk): Support -mfdpic (soon). (frv_print_operand_memory_reference): Handle GOT constants. (frv_legitimate_address_p): Allow GOT constants. (frv_legitimize_address): Handle GOT addresses too. (frv_legitimate_fdpic_operand_p): New. (frv_legitimize_fdpic_address): New. (unspec_got_name): New. (frv_output_addr_const_extra): New. (frv_expand_fdpic_call): New. (frv_fdpic_fptr_operand): New. (gpr_or_int12_operand): Handle GOT operands. (int_2word_operand): Handle GOT operands. (fdpic_operand): New. (fdpic_splittable_got_operand): New. (fdpic_got12_operand): New. (frv_emit_movsi): Handle GOT operands. (frv_assemble_integer): -mfdpic doesn't use rofixups. (frv_print_operand): Support 'g' code for GOT operands. * config/frv/frv-protos.h: Add prototypes as needed. * config/frv/frv.md (R_FRV_GOT12, R_FRV_GOTHI, R_FRV_GOTLO, R_FRV_FUNCDESC, R_FRV_FUNCDESC_GOT12, R_FRV_FUNCDESC_GOTHI, R_FRV_FUNCDESC_GOTLO, R_FRV_FUNCDESC_VALUE, R_FRV_FUNCDESC_GOTOFF12, R_FRV_FUNCDESC_GOTOFFHI, R_FRV_FUNCDESC_GOTOFFLO, R_FRV_GOTOFF12, R_FRV_GOTOFFHI, R_FRV_GOTOFFLO): New. (movsi_high_got, movsi_lo_sum_got): New. (*movsi_pic): Don't use this splitter for -mfdpic. (addsi3): Allow GOT references also. (call, call_value): Handle -mfdpic separately. (call_fdpicdi, call_fdpicsi, lddi, call_value_fdpicdi, call_value_fdpicsi): New. (symGOT2reg, symGOT2reg_i, got splitters, symGOTOFF2reg, symGOTOFF2reg_i): New. * config/frv/frv.h (MASK_FDPIC): New. (TARGET_FDPIC): New. (TARGET_SWITCHES): Add -mfdpic. (FDPIC_FPTR_REGNO): New. (FDPIC_REGNO): New. (OUR_FDPIC_REG): New. (enum reg_class): Add FDPIC_REGS, FDPIC_FPTR_REGS, and FDPIC_CALL_REGS. (REG_CLASS_NAMES): Likewise. (REG_CLASS_CONTENTS): Likewise. (EXTRA_CONSTRAINT_FOR_Y): New, for 12-bit GOTs. (EXTRA_CONSTRAINT): Add it here. (FRV_GLOBAL_P): New. (OUTPUT_ADDR_CONST_EXTRA): New. From-SVN: r78373
2004-02-24 17:58:39 +01:00
*)
echo "Unknown cpu used in --with-cpu=$with_cpu" 1>&2
exit 1
;;
esac
;;
MAINTAINERS (mt port): Remove. * MAINTAINERS (mt port): Remove. (sco5, unixware, sco udk): Remove. (Kean Johnston): Add to Write After Approval. fixincludes: * inclhack.def (AAB_svr4_replace_byteorder, AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory, libc1_G_va_list, libc1_ifdefd_memx, nested_motorola, ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime, solaris_mutex_init_1, solaris_socket, solaris_unistd, solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param, ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale, ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc, ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings, ultrix_strings2, ultrix_sys_time, ultrix_unistd, unicosmk_restrict, uw7_byteorder_fix, windiss_math1, windiss_math2, windiss_valist): Remove. * fixincl.x: Regenerate. * mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*, i370-*-openedition, i?86-*-moss*, i?86-*-uwin*, powerpc-*-eabiaix*): Remove. * tests/base/math.h: Update. * tests/base/pthread.h: Update. * tests/base/stdio.h: Update. * tests/base/stdlib.h: Update. * tests/base/string.h: Update. * tests/base/strings.h: Update. * tests/base/sys/file.h: Update. * tests/base/sys/limits.h: Update. * tests/base/sys/socket.h: Update. * tests/base/sys/stat.h: Update. * tests/base/sys/time.h: Update. * tests/base/testing.h: Update. * tests/base/unistd.h: Update. * tests/base/_G_config.h: Remove. * tests/base/arpa: Remove directory. * tests/base/fs: Remove directory. * tests/base/locale.h: Remove. * tests/base/machine: Remove directory. * tests/base/rpc/svc.h: Remove. * tests/base/sys/ioctl.h: Remove. * tests/base/sys/regset.h: Remove. * tests/base/sys/times.h: Remove. * tests/base/sys/utsname.h: Remove. * tests/base/widec.h: Remove. gcc: * config.gcc (Obsolete configurations): Remove list of configurations. (Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*, *-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*. Remove other targets matched by those patterns. (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff, i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove. Make code for Solaris 7 and greater unconditional for Solaris. (ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*): Remove --with-* handling. * config/rs6000/sysv4.h (-mwindiss): Remove from all specs. (LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC, ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC, LINK_OS_WINDISS_SPEC): Remove. * config/rs6000/sysv4.opt (mwindiss): Remove. * configure.ac (strongarm*-*-*, xscale*-*-*): Remove. * configure: Regenerate. * doc/cpp.texi: Don't mention BeOS. * doc/extend.texi (interrupt): Don't mention MS1. * doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv, m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv, alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout, i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4, powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix): Remove. * doc/invoke.texi (MT Options): Remove. (-mwindiss): Remove. (CRIS Options): Remove cris-axis-aout references. (HPPA Options): Don't mention hppa1.1-*-pro. * doc/md.texi: (MorphoTech family): Remove. * libgcc2.c: Don't handle UWIN. * config/alpha/t-unicosmk: Remove. * config/alpha/unicosmk.h: Remove. * config/arm/kaos-arm.h: Remove. * config/arm/kaos-strongarm.h: Remove. * config/arm/strongarm-coff.h: Remove. * config/arm/strongarm-elf.h: Remove. * config/arm/strongarm-pe.h: Remove. * config/arm/t-strongarm-pe: Remove. * config/arm/t-xscale-coff: Remove. * config/arm/t-xscale-elf: Remove. * config/arm/xscale-coff.h: Remove. * config/arm/xscale-elf.h: Remove. * config/chorus.h: Remove. * config/cris/aout.h: Remove. * config/cris/aout.opt: Remove. * config/cris/t-aout: Remove. * config/i386/beos-elf.h: Remove. * config/i386/kaos-i386.h: Remove. * config/i386/ptx4-i.h: Remove. * config/i386/sco5.h: Remove. * config/i386/sco5.opt: Remove. * config/i386/sysv4-cpp.h: Remove. * config/i386/sysv5.h: Remove. * config/i386/t-beos: Remove. * config/i386/t-sco5: Remove. * config/i386/t-uwin: Remove. * config/i386/uwin.asm: Remove. * config/i386/uwin.h: Remove. * config/kaos.h: Remove. * config/mips/windiss.h: Remove. * config/mt: Remove directory. * config/pa/pa-osf.h: Remove. * config/pa/pa-pro-end.h: Remove. * config/pa/t-pro: Remove. * config/ptx4.h: Remove. * config/rs6000/beos.h: Remove. * config/rs6000/kaos-ppc.h: Remove. * config/rs6000/t-beos: Remove. * config/rs6000/windiss.h: Remove. * config/sh/kaos-sh.h: Remove. * config/sol2-6.h: Remove. * config/sparc/sol26-sld.h: Remove. * config/sparc/sysv4-only.h: Remove. * config/vax/bsd.h: Remove. * config/vax/t-memfuncs: Remove. * config/vax/ultrix.h: Remove. * config/vax/vaxv.h: Remove. * config/windiss.h: Remove. gcc/testsuite: * g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*. * g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*. * g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris 7. * gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*, strongarm*-*-* and cris-*-aout*. * gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20030909-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20031108-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20040813-1.c: Don't handle *-*-sysv5*. * gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*. * gcc.dg/arm-scd42-1.c: Use target arm*-*-*. * gcc.dg/arm-scd42-3.c: Use target arm*-*-*. * gcc.dg/cpp/assert4.c: Don't handle BeOS. * gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*. * gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and xscale*-*-elf*. * gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*. * gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1. * gcc.misc-tests/arm-isr.exp: Use target arm*-*-*. * gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-stackalign-1.c: Don't handle powerpc-*-sysv*. * gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*. * lib/target-supports.exp: Don't handle strongarm*-*-elf, xscale*-*-elf and *-*-windiss. * obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*. * gcc.dg/mt-loopi1.c: Remove. gnattools: * configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove. * configure: Regenerate. libcpp: * configure.ac (parisc*64*-*-*): Remove. * configure: Regenerate. libffi: * configure.ac (parisc*-*-linux*, powerpc-*-sysv*, powerpc-*-beos*): Remove. * configure: Regenerate. libgcc: * config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove. libjava: * configure.host (strongarm*-elf, xscale*-elf): Remove. libstdc++-v3: * configure.host (xscale, ep9312, m680[246]0, solaris2.5, solaris2.5.[0-9], solaris2.6, windiss*): Remove. * crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove. * configure: Regenerate. * config/os/solaris/solaris2.5: Remove directory. * config/os/solaris/solaris2.6: Remove directory. * config/os/windiss: Remove directory. From-SVN: r136534
2008-06-07 20:00:15 +02:00
fido-*-* | m68k*-*-*)
200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> gcc/ 200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (m68010-*-netbsdelf*, m68k*-*-netbsdelf*) (m68k*-*-openbsd*, m68k-*-linux*): Set default_cf_cpu. (m68k-*-aout*, m68k-*-coff*, m68k-*-uclinux*, m68k-*-rtems*): Add m68k/t-mlib to tmake_file. (m68020-*-elf*, m68k-*-elf*): Likewise. Add t-m68kbare as well. (m68k*-*-*): Use --with-arch to pick a default for --with-cpu. (m680[012]0-*-*, m68k*-*-*): Add support for --with-arch. Allow it to be cf or m68k. Set m68k_arch_family. If that variable is not empty, add t-$m68k_arch_family to tmake_file. Add t-mlibs to tmake_file. * doc/install.texi: Document --with-arch=m68k and --with-arch=cf. * config/m68k/t-cf: New file. * config/m68k/t-m68k: Likewise. * config/m68k/t-mlibs: Likewise. * config/m68k/t-m68kbare (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_DIRNAMES, M68K_MLIB_OPTIONS): Define. * config/m68k/t-m68kelf (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS, LIBGCC, INSTALL_LIBGCC): Delete. * config/m68k/t-openbsd (MULTILIB_OPTIONS, LIBGCC): Delete. (INSTALL_LIBGCC): Delete. (M68K_MLIB_DIRNAMES, M68K_MLIB_OPTIONS): Define. * config/m68k/t-rtems (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_CPU): Define. * config/m68k/t-uclinux (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_CPU, M68K_MLIB_OPTIONS, M68K_MLIB_DIRNAMES): Define. Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r121743
2007-02-09 14:47:25 +01:00
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
200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford... gcc/ 200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> Julian Brown <julian@codesourcery.com> * config.gcc (m68k-*-aout*, m68k-*-coff*, m68020-*-elf*, m68k-*-elf*) (m68k-*-uclinux*, m68k-*-linux*, m68k-*-rtems*): Set default_m68k_cpu to the configuration's default CPU. (m68010-*-netbsdelf*, m68k*-*-netbsdelf*, m68k*-*-openbsd*): Likewise. Remove default masks. (m680[012]0-*-*): Set the default with_cpu to the first part of the target name. (m68k*-*-*): Set the default with_cpu to m$default_m68k_cpu. (m68k*-*-linux): Extend the --with-cpu handling to... (m680[012]0-*-*, m68k*-*-*): ...these configurations. Allow m68000 and m68010. Don't set target_cpu_default2. * doc/install.texi: Document --with-cpu for m68k. * config/m68k/m68k.h (OPTION_DEFAULT_SPECS): Define. * config/m68k/m68k-none.h (TARGET_CPU_DEFAULT, M68K_CPU_m68k) (M68K_CPU_m68000, M68K_CPU_m68010, M68K_CPU_m68020, M68K_CPU_m68030) (M68K_CPU_m68040, M68K_CPU_m68302, M68K_CPU_m68332, TARGET_DEFAULT) (ASM_CPU_DEFAULT_SPEC, CC1_CPU_DEFAULT_SPEC): Delete. (ASM_SPEC): Remove use of %(asm_cpu_default). (EXTRA_SPECS, SUBTARGET_EXTRA_SPECS, MULTILIB_DEFAULTS): Delete. * config/m68k/linux.h (TARGET_DEFAULT): Delete. (CPP_SPEC): Merge definitions. Do not handle __HAVE_68881__ here. * config/m68k/netbsd-elf.h (TARGET_OS_CPP_BUILTINS): Define __HAVE_FPU__ if TARGET_HARD_FLOAT. (TARGET_DEFAULT): Delete. (EXTRA_SPECS): Delete cpp_cpu_default_spec, cpp_cpu_spec, cpp_fpu_spec, asm_default_spec and netbsd_cpp_spec. (CPP_CPU_SPEC): Delete. (TARGET_VERSION): Merge definitions, using TARGET_68010 to pick the appropriate string. (CPP_CPU_DEFAULT_SPEC, ASM_DEFAULT_SPEC, CPP_FPU_SPEC): Delete. (CPP_SPEC): Define to NETBSD_CPP_SPEC. (ASM_SPEC): Don't use %(asm_default_spec). * config/m68k/m68k.c (TARGET_DEFAULT_TARGET_FLAGS): Remove TARGET_DEFAULT and add MASK_68881. * config/m68k/m68k.md: Remove mention of TARGET_DEFAULT from comments. Co-Authored-By: Julian Brown <julian@codesourcery.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r120711
2007-01-12 10:28:34 +01:00
# We always have a $with_cpu setting here.
case "$with_cpu" in
200x-xx-xx Julian Brown <julian@codesourcery.com> Nathan Sidwell... gcc/ 200x-xx-xx Julian Brown <julian@codesourcery.com> Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (m680[012]0-*-*, m68k*-*-*): Set m68k_cpu_ident to the -mcpu= argument associated with the --with-cpu setting. Define M68K_DEFAULT_TUNE to the default -mtune= option, if different from the one implied by the -mcpu setting. Accept --with-cpu=FOO if FOO is listed in m68k-devices.def, using mcpu=FOO as the default CPU option. Set target_cpu_default2. * doc/invoke.texi: Mention ColdFire in the introduction to the m68k options. Document the new -march, -mcpu, -mtune, -mdiv, -mno-div and -mhard-float options. Make -m68881 a synonym for -mhard-float. Document the previously-undocumented -m5206e, -m528x, -m5307 and -m5407 options. Tweak the existing option documentation for consistency. * doc/install.texi: Mention new --with-cpu arguments. * config/m68k/m68k.h (OPTION_DEFAULT_SPECS): Only use the default CPU if neither -mcpu nor -march are specified. (ASM_CPU_SPEC): Pass down -mcpu and -march options. (TARGET_CPU_CPP_BUILTINS): Set __mcfisa*__ macros from TARGET_ISA*. Set the legacy __mcf*__ cpu macros in the same way, using m68k_tune to decide between families that implement the same ISA. Use m68k_tune to set __mcfv4e__. (FL_BITFIELD, FL_68881, FL_COLDFIRE, FL_CF_HWDIV, FL_CF_MAC) (FL_CF_EMAC, FL_CF_EMAC_B, FL_CF_USP, FL_CF_FPU, FL_ISA_68000) (FL_ISA_68010, FL_ISA_68020, FL_ISA_68040, FL_ISA_A, FL_ISA_B) (FL_ISA_C, FL_ISA_MMU): New macros. (MASK_COLDFIRE): Delete. (TARGET_68010, TARGET_68020, TARGET_68040_ONLY, TARGET_COLDFIRE) (TARGET_ISAB): Redefine in terms of m68k_cpu_flags. (TARGET_68881, TARGET_COLDFIRE_FPU): Redefine in terms of m68k_fpu. (TARGET_HARD_FLOAT): Do not define here. (TARGET_ISAAPLUS, TARGET_ISAC): New macros. (TUNE_68000): New macro. (TUNE_68000_10): Redefine in terms of TUNE_68000 and TUNE_68010. (TUNE_68010, TUNE_68030, TUNE_68040, TUNE_68060, TUNE_CPU32) (TUNE_CFV2): Redefine in terms of m68k_tune. (uarch_type, target_device, fpu_type): New enums. (m68k_cpu, m68k_tune, m68k_fpu, m68k_cpu_flags): Declare. * config/m68k/m68k.c (TARGET_DEFAULT): Remove MASK_68881. (FL_FOR_isa_00, FL_FOR_isa_10, FL_FOR_isa_20, FL_FOR_isa_40) (FL_FOR_isa_cpu32, FL_FOR_isa_a, FL_FOR_isa_aplus, FL_FOR_isa_b) (FL_FOR_isa_c): New macros. (m68k_isa): New enum. (m68k_target_selection): New structure. (all_devices, all_isas, all_microarchs): New tables. (m68k_cpu_entry, m68k_arch_entry, m68k_tune_entry, m68k_cpu) (m68k_tune, m68k_fpu, m68k_cpu_flags): New variables. (MASK_ALL_CPU_BITS): Delete. (m68k_find_selection): New function. (m68k_handle_option): Handle -mcpu=, -march= and -mtune=. Map the legacy target options to a combination of the new ones. (override_options): Set m68k_cpu, m68k_tune, m68k_fpu and m68k_cpu_flags. Handle M68K_DEFAULT_TUNE. Use m68k_cpu_flags to derive default MASK_BITFIELD, MASK_CF_HWDIV and MASK_HARD_FLOAT settings. * config/m68k/m68k.opt (m5200, m5206e, m528x, m5307, m5407, mcfv4e) (m68010, m68020, m68020-40, m68020-60, m68030, m68040): Remove Mask properties. (m68881, msoft-float): Change mask from 68881 to HARD_FLOAT. (march=, mcpu=, mdiv, mhard-float, mtune=): New options. * config/m68k/m68k-devices.def: New file. Co-Authored-By: Nathan Sidwell <nathan@codesourcery.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r120713
2007-01-12 10:32:59 +01:00
"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"
;;
*)
200x-xx-xx Julian Brown <julian@codesourcery.com> Nathan Sidwell... gcc/ 200x-xx-xx Julian Brown <julian@codesourcery.com> Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (m680[012]0-*-*, m68k*-*-*): Set m68k_cpu_ident to the -mcpu= argument associated with the --with-cpu setting. Define M68K_DEFAULT_TUNE to the default -mtune= option, if different from the one implied by the -mcpu setting. Accept --with-cpu=FOO if FOO is listed in m68k-devices.def, using mcpu=FOO as the default CPU option. Set target_cpu_default2. * doc/invoke.texi: Mention ColdFire in the introduction to the m68k options. Document the new -march, -mcpu, -mtune, -mdiv, -mno-div and -mhard-float options. Make -m68881 a synonym for -mhard-float. Document the previously-undocumented -m5206e, -m528x, -m5307 and -m5407 options. Tweak the existing option documentation for consistency. * doc/install.texi: Mention new --with-cpu arguments. * config/m68k/m68k.h (OPTION_DEFAULT_SPECS): Only use the default CPU if neither -mcpu nor -march are specified. (ASM_CPU_SPEC): Pass down -mcpu and -march options. (TARGET_CPU_CPP_BUILTINS): Set __mcfisa*__ macros from TARGET_ISA*. Set the legacy __mcf*__ cpu macros in the same way, using m68k_tune to decide between families that implement the same ISA. Use m68k_tune to set __mcfv4e__. (FL_BITFIELD, FL_68881, FL_COLDFIRE, FL_CF_HWDIV, FL_CF_MAC) (FL_CF_EMAC, FL_CF_EMAC_B, FL_CF_USP, FL_CF_FPU, FL_ISA_68000) (FL_ISA_68010, FL_ISA_68020, FL_ISA_68040, FL_ISA_A, FL_ISA_B) (FL_ISA_C, FL_ISA_MMU): New macros. (MASK_COLDFIRE): Delete. (TARGET_68010, TARGET_68020, TARGET_68040_ONLY, TARGET_COLDFIRE) (TARGET_ISAB): Redefine in terms of m68k_cpu_flags. (TARGET_68881, TARGET_COLDFIRE_FPU): Redefine in terms of m68k_fpu. (TARGET_HARD_FLOAT): Do not define here. (TARGET_ISAAPLUS, TARGET_ISAC): New macros. (TUNE_68000): New macro. (TUNE_68000_10): Redefine in terms of TUNE_68000 and TUNE_68010. (TUNE_68010, TUNE_68030, TUNE_68040, TUNE_68060, TUNE_CPU32) (TUNE_CFV2): Redefine in terms of m68k_tune. (uarch_type, target_device, fpu_type): New enums. (m68k_cpu, m68k_tune, m68k_fpu, m68k_cpu_flags): Declare. * config/m68k/m68k.c (TARGET_DEFAULT): Remove MASK_68881. (FL_FOR_isa_00, FL_FOR_isa_10, FL_FOR_isa_20, FL_FOR_isa_40) (FL_FOR_isa_cpu32, FL_FOR_isa_a, FL_FOR_isa_aplus, FL_FOR_isa_b) (FL_FOR_isa_c): New macros. (m68k_isa): New enum. (m68k_target_selection): New structure. (all_devices, all_isas, all_microarchs): New tables. (m68k_cpu_entry, m68k_arch_entry, m68k_tune_entry, m68k_cpu) (m68k_tune, m68k_fpu, m68k_cpu_flags): New variables. (MASK_ALL_CPU_BITS): Delete. (m68k_find_selection): New function. (m68k_handle_option): Handle -mcpu=, -march= and -mtune=. Map the legacy target options to a combination of the new ones. (override_options): Set m68k_cpu, m68k_tune, m68k_fpu and m68k_cpu_flags. Handle M68K_DEFAULT_TUNE. Use m68k_cpu_flags to derive default MASK_BITFIELD, MASK_CF_HWDIV and MASK_HARD_FLOAT settings. * config/m68k/m68k.opt (m5200, m5206e, m528x, m5307, m5407, mcfv4e) (m68010, m68020, m68020-40, m68020-60, m68030, m68040): Remove Mask properties. (m68881, msoft-float): Change mask from 68881 to HARD_FLOAT. (march=, mcpu=, mdiv, mhard-float, mtune=): New options. * config/m68k/m68k-devices.def: New file. Co-Authored-By: Nathan Sidwell <nathan@codesourcery.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r120713
2007-01-12 10:32:59 +01:00
# 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
;;
MAINTAINERS (mt port): Remove. * MAINTAINERS (mt port): Remove. (sco5, unixware, sco udk): Remove. (Kean Johnston): Add to Write After Approval. fixincludes: * inclhack.def (AAB_svr4_replace_byteorder, AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory, libc1_G_va_list, libc1_ifdefd_memx, nested_motorola, ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime, solaris_mutex_init_1, solaris_socket, solaris_unistd, solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param, ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale, ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc, ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings, ultrix_strings2, ultrix_sys_time, ultrix_unistd, unicosmk_restrict, uw7_byteorder_fix, windiss_math1, windiss_math2, windiss_valist): Remove. * fixincl.x: Regenerate. * mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*, i370-*-openedition, i?86-*-moss*, i?86-*-uwin*, powerpc-*-eabiaix*): Remove. * tests/base/math.h: Update. * tests/base/pthread.h: Update. * tests/base/stdio.h: Update. * tests/base/stdlib.h: Update. * tests/base/string.h: Update. * tests/base/strings.h: Update. * tests/base/sys/file.h: Update. * tests/base/sys/limits.h: Update. * tests/base/sys/socket.h: Update. * tests/base/sys/stat.h: Update. * tests/base/sys/time.h: Update. * tests/base/testing.h: Update. * tests/base/unistd.h: Update. * tests/base/_G_config.h: Remove. * tests/base/arpa: Remove directory. * tests/base/fs: Remove directory. * tests/base/locale.h: Remove. * tests/base/machine: Remove directory. * tests/base/rpc/svc.h: Remove. * tests/base/sys/ioctl.h: Remove. * tests/base/sys/regset.h: Remove. * tests/base/sys/times.h: Remove. * tests/base/sys/utsname.h: Remove. * tests/base/widec.h: Remove. gcc: * config.gcc (Obsolete configurations): Remove list of configurations. (Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*, *-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*. Remove other targets matched by those patterns. (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff, i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove. Make code for Solaris 7 and greater unconditional for Solaris. (ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*): Remove --with-* handling. * config/rs6000/sysv4.h (-mwindiss): Remove from all specs. (LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC, ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC, LINK_OS_WINDISS_SPEC): Remove. * config/rs6000/sysv4.opt (mwindiss): Remove. * configure.ac (strongarm*-*-*, xscale*-*-*): Remove. * configure: Regenerate. * doc/cpp.texi: Don't mention BeOS. * doc/extend.texi (interrupt): Don't mention MS1. * doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv, m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv, alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout, i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4, powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix): Remove. * doc/invoke.texi (MT Options): Remove. (-mwindiss): Remove. (CRIS Options): Remove cris-axis-aout references. (HPPA Options): Don't mention hppa1.1-*-pro. * doc/md.texi: (MorphoTech family): Remove. * libgcc2.c: Don't handle UWIN. * config/alpha/t-unicosmk: Remove. * config/alpha/unicosmk.h: Remove. * config/arm/kaos-arm.h: Remove. * config/arm/kaos-strongarm.h: Remove. * config/arm/strongarm-coff.h: Remove. * config/arm/strongarm-elf.h: Remove. * config/arm/strongarm-pe.h: Remove. * config/arm/t-strongarm-pe: Remove. * config/arm/t-xscale-coff: Remove. * config/arm/t-xscale-elf: Remove. * config/arm/xscale-coff.h: Remove. * config/arm/xscale-elf.h: Remove. * config/chorus.h: Remove. * config/cris/aout.h: Remove. * config/cris/aout.opt: Remove. * config/cris/t-aout: Remove. * config/i386/beos-elf.h: Remove. * config/i386/kaos-i386.h: Remove. * config/i386/ptx4-i.h: Remove. * config/i386/sco5.h: Remove. * config/i386/sco5.opt: Remove. * config/i386/sysv4-cpp.h: Remove. * config/i386/sysv5.h: Remove. * config/i386/t-beos: Remove. * config/i386/t-sco5: Remove. * config/i386/t-uwin: Remove. * config/i386/uwin.asm: Remove. * config/i386/uwin.h: Remove. * config/kaos.h: Remove. * config/mips/windiss.h: Remove. * config/mt: Remove directory. * config/pa/pa-osf.h: Remove. * config/pa/pa-pro-end.h: Remove. * config/pa/t-pro: Remove. * config/ptx4.h: Remove. * config/rs6000/beos.h: Remove. * config/rs6000/kaos-ppc.h: Remove. * config/rs6000/t-beos: Remove. * config/rs6000/windiss.h: Remove. * config/sh/kaos-sh.h: Remove. * config/sol2-6.h: Remove. * config/sparc/sol26-sld.h: Remove. * config/sparc/sysv4-only.h: Remove. * config/vax/bsd.h: Remove. * config/vax/t-memfuncs: Remove. * config/vax/ultrix.h: Remove. * config/vax/vaxv.h: Remove. * config/windiss.h: Remove. gcc/testsuite: * g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*. * g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*. * g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris 7. * gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*, strongarm*-*-* and cris-*-aout*. * gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20030909-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20031108-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20040813-1.c: Don't handle *-*-sysv5*. * gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*. * gcc.dg/arm-scd42-1.c: Use target arm*-*-*. * gcc.dg/arm-scd42-3.c: Use target arm*-*-*. * gcc.dg/cpp/assert4.c: Don't handle BeOS. * gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*. * gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and xscale*-*-elf*. * gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*. * gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1. * gcc.misc-tests/arm-isr.exp: Use target arm*-*-*. * gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-stackalign-1.c: Don't handle powerpc-*-sysv*. * gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*. * lib/target-supports.exp: Don't handle strongarm*-*-elf, xscale*-*-elf and *-*-windiss. * obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*. * gcc.dg/mt-loopi1.c: Remove. gnattools: * configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove. * configure: Regenerate. libcpp: * configure.ac (parisc*64*-*-*): Remove. * configure: Regenerate. libffi: * configure.ac (parisc*-*-linux*, powerpc-*-sysv*, powerpc-*-beos*): Remove. * configure: Regenerate. libgcc: * config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove. libjava: * configure.host (strongarm*-elf, xscale*-elf): Remove. libstdc++-v3: * configure.host (xscale, ep9312, m680[246]0, solaris2.5, solaris2.5.[0-9], solaris2.6, windiss*): Remove. * crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove. * configure: Regenerate. * config/os/solaris/solaris2.5: Remove directory. * config/os/solaris/solaris2.6: Remove directory. * config/os/windiss: Remove directory. From-SVN: r136534
2008-06-07 20:00:15 +02:00
hppa*-*-*)
supported_defaults="arch schedule"
case "$with_arch" in
"" | 1.0 | 1.1 | 2.0)
# OK
;;
*)
echo "Unknown architecture used in --with-arch=$with_arch" 1>&2
exit 1
;;
esac
case "$with_schedule" in
"" | 700 | 7100 | 7100LC | 7200 | 7300 | 8000)
# OK
;;
*)
echo "Unknown processor used in --with-schedule=$with_schedule." 1>&2
exit 1
;;
esac
;;
i[34567]86-*-* | x86_64-*-*)
supported_defaults="arch arch_32 arch_64 cpu cpu_32 cpu_64 tune tune_32 tune_64"
for which in arch arch_32 arch_64 cpu cpu_32 cpu_64 tune tune_32 tune_64; do
eval "val=\$with_$which"
case ${val} in
invoke.texi (generic): Document (i686) Update. * invoke.texi (generic): Document (i686) Update. * config.gcc: Make x86_64-* and i686-* default to generic tunning. * i386.h (TARGET_GENERIC32, TARGET_GENERIC64, TARGET_GENERIC, TARGET_USE_INCDEC, TARGET_PAD_RETURNS): New macros. (x86_use_incdec, x86_pad_returns): New variables (TARGET_CPU_DEFAULT_generic): New constant (TARGET_CPU_DEFAULT_NAMES): Add generic. (enum processor_type): Add generic32 and generic64. * i386.md (cpu attribute): Add generic32/generic64 (movhi splitter): Behave sanely when both partial_reg_dependency and partial_reg_stall are set. (K8 splitters): Enable for generic as well. * predicates.md (incdec_operand): Use TARGET_INCDEC (aligned_operand): Avoid memory mismatch stalls. * athlon.md: Enable for generic64, new patterns for 128bit moves. * ppro.md: Enable for generic32 * i386.c (generic64_cost, generic32_cost): New. (m_GENERIC32, m_GENERIC64, m_GENERIC): New macros. (x86_use_leave): Enable for generic64. (x86_use_sahf, x86_ext_80387_constants): Enable for generic32. (x86_push_memory, x86_movx, x86_unroll_strlen, x86_deep_branch, x86_use_simode_fiop, x86_use_cltd, x86_promote_QImode, x86_sub_esp_4, x86_sub_esp_8, x86_add_esp_4, x86_add_esp_8, x86_integer_DFmode_moves, x86_partial_reg_dependency, x86_memory_mismatch_stall, x86_accumulate_outgoing_args, x86_prologue_using_move, x86_epilogue_using_move, x86_arch_always_fancy_math_387, x86_sse_partial_reg_dependency, x86_four_jump_limit, x86_schedule): Enable for generic. (x86_use_incdec, x86_pad_returns): New. (override_options): Add generic32 and generic64, translate "generic" to generic32/generic64 and "i686" to "generic32", refuse "generic32"/"generic64" as arch target. (ix86_issue_rate, ix86_adjust_cost): Handle generic as athlon. (ix86_reorg): Honor PAD_RETURNS. Co-Authored-By: Evandro Menezes <evandro.menezes@amd.com> Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com> From-SVN: r109971
2006-01-19 18:10:24 +01:00
i386 | i486 \
| 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 \
invoke.texi (generic): Document (i686) Update. * invoke.texi (generic): Document (i686) Update. * config.gcc: Make x86_64-* and i686-* default to generic tunning. * i386.h (TARGET_GENERIC32, TARGET_GENERIC64, TARGET_GENERIC, TARGET_USE_INCDEC, TARGET_PAD_RETURNS): New macros. (x86_use_incdec, x86_pad_returns): New variables (TARGET_CPU_DEFAULT_generic): New constant (TARGET_CPU_DEFAULT_NAMES): Add generic. (enum processor_type): Add generic32 and generic64. * i386.md (cpu attribute): Add generic32/generic64 (movhi splitter): Behave sanely when both partial_reg_dependency and partial_reg_stall are set. (K8 splitters): Enable for generic as well. * predicates.md (incdec_operand): Use TARGET_INCDEC (aligned_operand): Avoid memory mismatch stalls. * athlon.md: Enable for generic64, new patterns for 128bit moves. * ppro.md: Enable for generic32 * i386.c (generic64_cost, generic32_cost): New. (m_GENERIC32, m_GENERIC64, m_GENERIC): New macros. (x86_use_leave): Enable for generic64. (x86_use_sahf, x86_ext_80387_constants): Enable for generic32. (x86_push_memory, x86_movx, x86_unroll_strlen, x86_deep_branch, x86_use_simode_fiop, x86_use_cltd, x86_promote_QImode, x86_sub_esp_4, x86_sub_esp_8, x86_add_esp_4, x86_add_esp_8, x86_integer_DFmode_moves, x86_partial_reg_dependency, x86_memory_mismatch_stall, x86_accumulate_outgoing_args, x86_prologue_using_move, x86_epilogue_using_move, x86_arch_always_fancy_math_387, x86_sse_partial_reg_dependency, x86_four_jump_limit, x86_schedule): Enable for generic. (x86_use_incdec, x86_pad_returns): New. (override_options): Add generic32 and generic64, translate "generic" to generic32/generic64 and "i686" to "generic32", refuse "generic32"/"generic64" as arch target. (ix86_issue_rate, ix86_adjust_cost): Handle generic as athlon. (ix86_reorg): Honor PAD_RETURNS. Co-Authored-By: Evandro Menezes <evandro.menezes@amd.com> Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com> From-SVN: r109971
2006-01-19 18:10:24 +01:00
| prescott | pentium-m | pentium4m | pentium3m)
case "${target}" in
x86_64-*-*)
case "x$which" in
*_32)
;;
*)
echo "CPU given in --with-$which=$val doesn't support 64bit mode." 1>&2
exit 1
;;
esac
invoke.texi (generic): Document (i686) Update. * invoke.texi (generic): Document (i686) Update. * config.gcc: Make x86_64-* and i686-* default to generic tunning. * i386.h (TARGET_GENERIC32, TARGET_GENERIC64, TARGET_GENERIC, TARGET_USE_INCDEC, TARGET_PAD_RETURNS): New macros. (x86_use_incdec, x86_pad_returns): New variables (TARGET_CPU_DEFAULT_generic): New constant (TARGET_CPU_DEFAULT_NAMES): Add generic. (enum processor_type): Add generic32 and generic64. * i386.md (cpu attribute): Add generic32/generic64 (movhi splitter): Behave sanely when both partial_reg_dependency and partial_reg_stall are set. (K8 splitters): Enable for generic as well. * predicates.md (incdec_operand): Use TARGET_INCDEC (aligned_operand): Avoid memory mismatch stalls. * athlon.md: Enable for generic64, new patterns for 128bit moves. * ppro.md: Enable for generic32 * i386.c (generic64_cost, generic32_cost): New. (m_GENERIC32, m_GENERIC64, m_GENERIC): New macros. (x86_use_leave): Enable for generic64. (x86_use_sahf, x86_ext_80387_constants): Enable for generic32. (x86_push_memory, x86_movx, x86_unroll_strlen, x86_deep_branch, x86_use_simode_fiop, x86_use_cltd, x86_promote_QImode, x86_sub_esp_4, x86_sub_esp_8, x86_add_esp_4, x86_add_esp_8, x86_integer_DFmode_moves, x86_partial_reg_dependency, x86_memory_mismatch_stall, x86_accumulate_outgoing_args, x86_prologue_using_move, x86_epilogue_using_move, x86_arch_always_fancy_math_387, x86_sse_partial_reg_dependency, x86_four_jump_limit, x86_schedule): Enable for generic. (x86_use_incdec, x86_pad_returns): New. (override_options): Add generic32 and generic64, translate "generic" to generic32/generic64 and "i686" to "generic32", refuse "generic32"/"generic64" as arch target. (ix86_issue_rate, ix86_adjust_cost): Handle generic as athlon. (ix86_reorg): Honor PAD_RETURNS. Co-Authored-By: Evandro Menezes <evandro.menezes@amd.com> Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com> From-SVN: r109971
2006-01-19 18:10:24 +01:00
;;
esac
# OK
;;
Atom pipeline model, tuning and insn selection. 2009-04-06 Joey Ye <joey.ye@intel.com> Xuepeng Guo <xuepeng.guo@intel.com> H.J. Lu <hongjiu.lu@intel.com> Atom pipeline model, tuning and insn selection. * config.gcc (atom): Add atom config options and target. * config/i386/atom.md: New. * config/i386/i386.c (atom_cost): New cost. (m_ATOM): New macro flag. (initial_ix86_tune_features): Set m_ATOM. (x86_accumulate_outgoing_args): Likewise. (x86_arch_always_fancy_math_387): Likewise. (processor_target): Add Atom cost. (cpu_names): Add Atom cpu name. (override_options): Set Atom ISA. (ix86_issue_rate): New case PROCESSOR_ATOM. (ix86_adjust_cost): Likewise. * config/i386/i386.h (TARGET_ATOM): New target macro. (ix86_tune_indices): Add X86_TUNE_OPT_AGU. (TARGET_OPT_AGU): New target option. (target_cpu_default): Add TARGET_CPU_DEFAULT_atom. (processor_type): Add PROCESSOR_ATOM. * config/i386/i386.md (cpu): Add new value "atom". (use_carry, movu): New attr. (atom.md): Include atom.md. (adddi3_carry_rex64): Set attr "use_carry". (addqi3_carry): Likewise. (addhi3_carry): Likewise. (addsi3_carry): Likewise. (*addsi3_carry_zext): Likewise. (subdi3_carry_rex64): Likewise. (subqi3_carry): Likewise. (subhi3_carry): Likewise. (subsi3_carry): Likewise. (x86_movdicc_0_m1_rex64): Likewise. (*x86_movdicc_0_m1_se): Likewise. (x86_movsicc_0_m1): Likewise. (*x86_movsicc_0_m1_se): Likewise. (*adddi_1_rex64): Emit add insn as much as possible. (*addsi_1): Likewise. (return_internal): Set atom_unit. (return_internal_long): Likewise. (return_pop_internal): Likewise. (*rcpsf2_sse): Set atom_sse_attr attr. (*qrt<mode>2_sse): Likewise. (*prefetch_sse): Likewise. * config/i386/i386-c.c (ix86_target_macros_internal): New case PROCESSOR_ATOM. (ix86_target_macros_internal): Likewise. * config/i386/sse.md (cpu): Set attr "atom_sse_attr". (*prefetch_sse_rex): Likewise. (sse_rcpv4sf2): Likewise. (sse_vmrcpv4sf2): Likewise. (sse_sqrtv4sf2): Likewise. (<sse>_vmsqrt<mode>2): Likewise. (sse_ldmxcsr): Likewise. (sse_stmxcsr): Likewise. (*sse_sfence): Likewise. (sse2_clflush): Likewise. (*sse2_mfence): Likewise. (*sse2_lfence): Likewise. (avx_movup<avxmodesuffixf2c><avxmodesuffix>): Set attr "movu". (<sse>_movup<ssemodesuffixf2c>): Likewise. (avx_movdqu<avxmodesuffix>): Likewise. (avx_lddqu<avxmodesuffix>): Likewise. (sse2_movntv2di): Change attr "type" to "ssemov". (sse2_movntsi): Likewise. (rsqrtv8sf2): Change attr "type" to "sseadd". (sse3_addsubv2df3): Set attr "atom_unit". (sse3_h<plusminus_insn>v4sf3): Likewise. (*sse2_pmaddwd): Likewise. (*vec_extractv2di_1_rex64): Likewise. (*vec_extractv2di_1_avx): Likewise. (sse2_psadbw): Likewise. (ssse3_phaddwv8hi3): Likewise. (ssse3_phaddwv4hi3): Likewise. (ssse3_phadddv4si3): Likewise. (ssse3_phadddv2si3): Likewise. (ssse3_phaddswv8hi3): Likewise. (ssse3_phaddswv4hi3): Likewise. (ssse3_phsubwv8hi3): Likewise. (ssse3_phsubwv4hi3): Likewise. (ssse3_phsubdv4si3): Likewise. (ssse3_phsubdv2si3): Likewise. (ssse3_phsubswv8hi3): Likewise. (ssse3_phsubswv4hi3): Likewise. (ssse3_pmaddubsw128): Likewise. (sse3_pmaddubsw: Likewise. (ssse3_palignrti): Likewise. (ssse3_palignrdi): Likewise. Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com> Co-Authored-By: Xuepeng Guo <xuepeng.guo@intel.com> From-SVN: r145624
2009-04-06 22:53:33 +02:00
"" | amdfam10 | barcelona | k8 | opteron | athlon64 | athlon-fx | nocona | core2 | atom | generic)
# OK
;;
*)
echo "Unknown CPU given in --with-$which=$val." 1>&2
exit 1
;;
esac
done
;;
mips*-*-*)
supported_defaults="abi arch arch_32 arch_64 float tune tune_32 tune_64 divide llsc mips-plt"
case ${with_float} in
"" | soft | hard)
# OK
;;
*)
echo "Unknown floating point type used in --with-float=$with_float" 1>&2
exit 1
;;
esac
case ${with_abi} in
"" | 32 | o64 | n32 | 64 | eabi)
# OK
;;
*)
echo "Unknown ABI used in --with-abi=$with_abi" 1>&2
exit 1
;;
esac
case ${with_divide} in
"" | breaks | traps)
# OK
;;
*)
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
install.texi (--with-mips-plt): Document. gcc/ 2008-08-17 Daniel Jacobowitz <dan@codesourcery.com> Richard Sandiford <rdsandiford@googlemail.com> * doc/install.texi (--with-mips-plt): Document. * doc/invoke.texi (-mplt, -mno-plt): Document. * config.gcc (mips*-*-*): Add mips-plt to supported_defaults and handle ${with_mips_plt}. * config/mips/mips.opt (mplt): New option. * config/mips/mips.h (TARGET_ABICALLS_PIC0): New macro. (TARGET_ABICALLS_PIC2): Likewise. (TARGET_GPWORD): Return false for TARGET_ABSOLUTE_ABICALLS. (OPTION_DEFAULT_SPECS): Add a mips-plt entry. (ASM_SPEC): Use !mabi=* instead of !mabi*. (MIPS_CALL): Use TARGET_ABICALLS_PIC2 instead of TARGET_ABICALLS to decide whether to output ".option picX" directives. * config/mips/linux.h (SUBTARGET_ASM_SPEC): Remove -mabi=64 handling. Pass -call_nonpic rather than -KPIC for -mplt. (BASE_DRIVER_SELF_SPECS): Remove -mplt if -mno-shared is not present on the command line. Also remove it when -mabi=64 is used without -msym32. * config/mips/linux64.h (SUBTARGET_ASM_SPEC): Delete. * config/mips/mips.c (mips_use_pic_fn_addr_reg_p): Handle TARGET_ABICALLS_PIC0. (mips_classify_symbol): Use TARGET_ABICALLS_PIC2 instead of TARGET_ABICALLS. (mips16_build_function_stub): Only output ".option pic" directives and PIC stubs if TARGET_ABICALLS_PIC2. Call through $25 instead of $1. (mips16_build_call_stub): Fix comment and remove redundant ".set at"/"set .noat" directives. (mips_function_rodata_section): Use the default behaviour for TARGET_ABSOLUTE_ABICALLS. (mips_file_start): Emit ".option pic0" for TARGET_ABICALLS_PIC0. (mips_global_pointer): Handle TARGET_ABICALLS_PIC0. (mips_restore_gp): Do nothing if the current function doesn't use a global pointer. (mips_expand_prologue): Only save $gp if the current function uses it. Use a normal move for TARGET_ABICALLS_PIC0. (mips_override_options): Only set flag_pic if TARGET_ABICALLS_PIC2. Co-Authored-By: Richard Sandiford <rdsandiford@googlemail.com> From-SVN: r139170
2008-08-17 12:48:46 +02:00
case ${with_mips_plt} in
yes)
with_mips_plt=plt
;;
no)
with_mips_plt=no-plt
;;
"")
;;
*)
echo "Unknown --with-mips-plt argument: $with_mips_plt" 1>&2
exit 1
;;
esac
;;
powerpc*-*-* | rs6000-*-*)
supported_defaults="cpu cpu_32 cpu_64 float tune tune_32 tune_64"
for which in cpu cpu_32 cpu_64 tune tune_32 tune_64; do
eval "val=\$with_$which"
case ${val} in
default32 | default64)
case $which in
cpu | tune)
;;
*)
echo "$val only valid for --with-cpu and --with-tune." 1>&2
exit 1
;;
esac
with_which="with_$which"
eval $with_which=
;;
405cr)
tm_defines="${tm_defines} CONFIG_PPC405CR"
eval "with_$which=405"
;;
"" | common \
| power | power[234567] | power6x | powerpc | powerpc64 \
| rios | rios1 | rios2 | rsc | rsc1 | rs64a \
| 401 | 403 | 405 | 405fp | 440 | 440fp | 464 | 464fp \
| 505 | 601 | 602 | 603 | 603e | ec603e | 604 \
| 604e | 620 | 630 | 740 | 750 | 7400 | 7450 \
| e300c[23] | 854[08] | e500mc \
| 801 | 821 | 823 | 860 | 970 | G3 | G4 | G5 | cell)
# OK
;;
*)
echo "Unknown cpu used in --with-$which=$val." 1>&2
exit 1
;;
esac
done
;;
config.gcc [...]: Support --with-arch, --with-tune, and --with-mode configure options. * config.gcc [s390*-*-*]: Support --with-arch, --with-tune, and --with-mode configure options. * config/s390/s390.h (OPTION_DEFAULT_SPECS): Define. (DRIVER_SELF_SPECS): Define. * config/s390/linux.h (ASM_SPEC): Pass architecture mode and cpu architecture to assembler. (LINK_SPEC): Merge 31-bit and 64-bit variants. (LINK_ARCH31_SPEC, LINK_ARCH64_SPEC, EXTRA_SPECS): Remove. * config/s390/s390.c (override_options): New default rules for architecture mode and cpu architecture selection. * doc/invoke.texi (-mesa, -mzarch, -march, -mtune): Document new default rules. * config/s390/s390.h (enum processor_type): Add PROCESSOR_2084_Z990. * config/s390/s390.md (attr "cpu"): Add "z990" processor type. * config/s390/s390.c (override_options): Add "z990" to processor_alias_table. * doc/invoke.texi (-march): Document "z990" processor type. * config/s390/s390.c (s390_tune_flags, s390_arch_flags): New variables. * config/s390/s390.h (s390_tune_flags, s390_arch_flags): Declare. (enum processor_flags, TARGET_CPU_IEEE_FLOAT, TARGET_CPU_ZARCH, TARGET_CPU_LONG_DISPLACEMENT, TARGET_LONG_DISPLACEMENT): New. * config/s390/s390.c (override_options): Replace enum pta_flags by enum processor_flags. Fill in s390_tune_flags and s390_arch_flags. * config/s390/s390.c (s390_cpu): Rename to ... (s390_tune): ... this. * config/s390/s390.h (s390_cpu, s390_tune): Likewise. * config/s390/s390.c (s390_issue_rate, override_options): Likewise. * config/s390/s390.md (attr "cpu"): Likewise. From-SVN: r68736
2003-06-30 21:47:22 +02:00
s390*-*-*)
supported_defaults="arch mode tune"
for which in arch tune; do
eval "val=\$with_$which"
case ${val} in
"" | g5 | g6 | z900 | z990 | z9-109 | z9-ec | z10)
config.gcc [...]: Support --with-arch, --with-tune, and --with-mode configure options. * config.gcc [s390*-*-*]: Support --with-arch, --with-tune, and --with-mode configure options. * config/s390/s390.h (OPTION_DEFAULT_SPECS): Define. (DRIVER_SELF_SPECS): Define. * config/s390/linux.h (ASM_SPEC): Pass architecture mode and cpu architecture to assembler. (LINK_SPEC): Merge 31-bit and 64-bit variants. (LINK_ARCH31_SPEC, LINK_ARCH64_SPEC, EXTRA_SPECS): Remove. * config/s390/s390.c (override_options): New default rules for architecture mode and cpu architecture selection. * doc/invoke.texi (-mesa, -mzarch, -march, -mtune): Document new default rules. * config/s390/s390.h (enum processor_type): Add PROCESSOR_2084_Z990. * config/s390/s390.md (attr "cpu"): Add "z990" processor type. * config/s390/s390.c (override_options): Add "z990" to processor_alias_table. * doc/invoke.texi (-march): Document "z990" processor type. * config/s390/s390.c (s390_tune_flags, s390_arch_flags): New variables. * config/s390/s390.h (s390_tune_flags, s390_arch_flags): Declare. (enum processor_flags, TARGET_CPU_IEEE_FLOAT, TARGET_CPU_ZARCH, TARGET_CPU_LONG_DISPLACEMENT, TARGET_LONG_DISPLACEMENT): New. * config/s390/s390.c (override_options): Replace enum pta_flags by enum processor_flags. Fill in s390_tune_flags and s390_arch_flags. * config/s390/s390.c (s390_cpu): Rename to ... (s390_tune): ... this. * config/s390/s390.h (s390_cpu, s390_tune): Likewise. * config/s390/s390.c (s390_issue_rate, override_options): Likewise. * config/s390/s390.md (attr "cpu"): Likewise. From-SVN: r68736
2003-06-30 21:47:22 +02:00
# OK
;;
*)
echo "Unknown cpu used in --with-$which=$val." 1>&2
exit 1
;;
esac
done
case ${with_mode} in
"" | esa | zarch)
config.gcc [...]: Support --with-arch, --with-tune, and --with-mode configure options. * config.gcc [s390*-*-*]: Support --with-arch, --with-tune, and --with-mode configure options. * config/s390/s390.h (OPTION_DEFAULT_SPECS): Define. (DRIVER_SELF_SPECS): Define. * config/s390/linux.h (ASM_SPEC): Pass architecture mode and cpu architecture to assembler. (LINK_SPEC): Merge 31-bit and 64-bit variants. (LINK_ARCH31_SPEC, LINK_ARCH64_SPEC, EXTRA_SPECS): Remove. * config/s390/s390.c (override_options): New default rules for architecture mode and cpu architecture selection. * doc/invoke.texi (-mesa, -mzarch, -march, -mtune): Document new default rules. * config/s390/s390.h (enum processor_type): Add PROCESSOR_2084_Z990. * config/s390/s390.md (attr "cpu"): Add "z990" processor type. * config/s390/s390.c (override_options): Add "z990" to processor_alias_table. * doc/invoke.texi (-march): Document "z990" processor type. * config/s390/s390.c (s390_tune_flags, s390_arch_flags): New variables. * config/s390/s390.h (s390_tune_flags, s390_arch_flags): Declare. (enum processor_flags, TARGET_CPU_IEEE_FLOAT, TARGET_CPU_ZARCH, TARGET_CPU_LONG_DISPLACEMENT, TARGET_LONG_DISPLACEMENT): New. * config/s390/s390.c (override_options): Replace enum pta_flags by enum processor_flags. Fill in s390_tune_flags and s390_arch_flags. * config/s390/s390.c (s390_cpu): Rename to ... (s390_tune): ... this. * config/s390/s390.h (s390_cpu, s390_tune): Likewise. * config/s390/s390.c (s390_issue_rate, override_options): Likewise. * config/s390/s390.md (attr "cpu"): Likewise. From-SVN: r68736
2003-06-30 21:47:22 +02:00
# OK
;;
*)
echo "Unknown architecture mode used in --with-mode=$with_mode." 1>&2
exit 1
;;
esac
;;
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
sh[123456ble]-*-* | sh-*-*)
supported_defaults="cpu"
superh.opt: New file. 2006-03-27 Andrew Stubbs <andrew.stubbs@st.com> J"orn Rennecke <joern.rennecke@st.com> * superh.opt: New file. * sh.c (boardtype, osruntime): Remove. * superh.h (SUBTARGET_OPTIONS): Remove. * config.gcc (sh*-superh-elf): Add sh/superh.opt to extra_options. * config.gcc (sh*-*-*): Don't use c-c ranges for tr. Quote sed arguments with ^ and/or []. * config.gcc (sh-*-*): Add quoting to account for quirk of Solaris /bin/sh. Replace == with = in enable_incomplete_targets test. * config/sh/superh.h (SUBTARGET_LINK_SPEC): Replace LITTLE_ENDIAN_BIT with MASK_LITTLE_ENDIAN. * config.gcc (sh*-superh-elf): Add sh/superh.h to tm_file. * config/sh/sh.opt: Added to some comments. * config/sh/superh.h: Removed some chaff. * config/sh/sh.opt: Add m4-[1234]00* options. * config/sh/sh.c (sh_handle_option): Likewise. * config/sh/t-sh (IC_EXTRA_PARTS, EXTRA_MULTILIB_PARTS): Define. (ic_invalidate_array_4-100.o): New rule. ($(T)libic_invalidate_array_4-100.a): Likewise. (ic_invalidate_array_4-200.o): Likewise. ($(T)libic_invalidate_array_4-200.a): Likewise. (ic_invalidate_array_4a.o): Likewise. ($(T)libic_invalidate_array_4a.a): Likewise. * config/sh/t-elf (EXTRA_MULTILIB_PARTS): Add IC_EXTRA_PARTS. * config/sh/embed-elf.h (LIBGCC_SPEC): Add clauses for m4-100*, m4-200*, and m4a*. * config/sh/crt1.asm: Merged in profiling code. * config/sh/superh.h (STARTFILE_SPEC): Override. * config/sh/t-superh: Override EXTRA_MULTILIB_PARTS. Add rules for $(T)crt1-mmu.o, $(T)gcrt1-mmu.o and $(T)gcrt1.o. * config.gcc (sh*-superh-elf): Add t-superh to tmake_file. * t-sh (MULTILIB_MATCHES): Add sh4-[1245]00* variants. * config/sh/t-superh: Removed now-redundant MULTILIB_OPTIONS / MULTILIB_DIRNAMES / MULTILIB_MATCHES settings. * sh.opt (mpretend-cmove): New option. * sh.h (OPERRIDE_OPTIONS): Switch it off if not TARGET_SH1. * sh.md (movsicc_t_false, movsicc_t_tru): New patterns. (movsicc): Add TARGET_PRETEND_CMOVE code. Co-Authored-By: J"orn Rennecke <joern.rennecke@st.com> From-SVN: r112421
2006-03-27 16:11:14 +02:00
case "`echo $with_cpu | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ_ abcdefghijklmnopqrstuvwxyz- | sed s/sh/m/`" in
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
"" | m1 | m2 | m2e | m3 | m3e | m4 | m4-single | m4-single-only | m4-nofpu )
# OK
;;
Introduce sh2a support. 2004-07-29 Alexandre Oliva <aoliva@redhat.com> * config.gcc: Build multilibs for sh2a and sh2a-single by default. * config/sh/sh.h (SUPPORT_SH2A, SUPPORT_SH2A_SINGLE): Define by default. Split their tests out of the corresponding SH4 multilibs. * config/sh/t-sh (MULTILIB_MATCHES): Don't ever use SH4 or SH4a multilibs for SH2a. 2004-07-28 Alexandre Oliva <aoliva@redhat.com> * config.gcc: Handle sh2a multilibs and cpu selection. * config/sh/sh.h: Likewise. Handle sh2a command line flags. * config/sh/t-mlib-sh2a: New. * config/sh/t-mlib-sh2a-nofpu: New. * config/sh/t-mlib-sh2a-single: New. * config/sh/t-mlib-sh2a-single-only: New. 2004-07-09 Nick Clifton <nickc@redhat.com> Issue 43400 * config/sh/sh.h (DRIVER_SELF_SPECS): Issue an error message if -ml and -m2a are used together. 2004-03-23 DJ Delorie <dj@redhat.com> * config/sh/sh.c (sh_builtin_saveregs): Use the double code only when we have a double-sized FPU. 2004-02-24 Corinna Vinschen <vinschen@redhat.com> * config/sh/lib1funcs.asm (set_fpscr): Don't build if __SH2A_NOFPU__ is set. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Add cases for -msh2a-nofpu, -msh2a-single and -msh2a-single-only 2004-02-24 Corinna Vinschen <vinschen@redhat.com> * config/sh/crt1.asm: Don't generate FPU instructions if __SH2A_NOFPU__ is set. 2004-02-20 DJ Delorie <dj@delorie.com> * config/sh/sh.md (movsf_i, movsf_ie, movsf, ble, bge): Disable for sh2a-nofpu. 2004-02-20 Fred Fish <fnf@redhat.com>, Corinna Vinschen <vinschen@redhat.com> * config/sh/t-sh (MULTILIB_OPTIONS): Add 2a-nofpu. (MULTILIB_EXCEPTIONS): Don't build littel-endian on sh2a. 2004-02-18 DJ Delorie <dj@redhat.com> * config/sh/sh.c (broken_move): Add support for movi20. * config/sh/sh.h: Likewise. (SHIFT_COUNT_TRUNCATED): Set for sh2a. * config/sh/sh.md (udivsi3_sh2a): New. (udivsi3): Call it. (divsi3_sh2a): New. (divsi3): Call it. (mul_r): New. (ashlsi3_sh2a): New. (ashrsi3_sh2a): New. (lshrsi3_sh2a): New. (movsi_i): Disable for sh2a. (movsi_ie): Add movi20. (movsf_i, movsf_ie, movsf, ble, untyped_call): Explicitly enable sh2a, for -m2a-nofpu mode. 2004-02-13 DJ Delorie <dj@redhat.com> * config/sh/lib1funcs.asm: Handle double vs single better. * config/sh/sh.h: Likewise. 2004-02-09 DJ Delorie <dj@redhat.com> * config/sh/crt1.asm: Add support for sh2a. * config/sh/elf.h: Likewise. * config/sh/lib1funcs.asm: Likewise. * config/sh/sh.c: Likewise. * config/sh/sh.md: Likewise. * config/sh/sh.h: Likewise. * config/sh/t-sh: Likewise. From-SVN: r85286
2004-07-29 08:10:03 +02:00
m2a | m2a-single | m2a-single-only | m2a-nofpu)
;;
Introduce sh4a support. gcc/ChangeLog: Introduce sh4a support. * config.gcc: Handle sh4a multilibs and cpu selection. * config/sh/sh.h: Likewise. Handle sh4a command line flags. * config/sh/t-mlib-sh4a: New. * config/sh/t-mlib-sh4al: New. * config/sh/t-mlib-sh4a-nofpu: New. * config/sh/t-mlib-sh4a-single: New. * config/sh/t-mlib-sh4a-single-only: New. 2004-02-20 DJ Delorie <dj@redhat.com> * config/sh/sh.md ("movua"): Change constraint from "m" to "Sua". * config/sh/sh.h (EXTRA_CONSTRAINT_S): Add "Sua" support. 2003-08-22 Eric Christopher <echristo@redhat.com> * config/sh/sh4a.md: Update for chip errata. 2003-08-07 Eric Christopher <echristo@redhat.com> * config/sh/sh4a.md: New file. sh4a processor description. 2003-07-08 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (TARGET_SWITCHES): Added 4al. Adjust description of -m4a-nofpu. (SH_ASM_SPEC): Pass -dsp for -m4al, not -m4a-nofpu. * config/sh/t-sh (MULTILIB_MATCHES): Map -m4al to -m4a-nofpu. * doc/invoke.texi (SH Options): Document -m4al. 2003-07-03 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (expand_block_move): Remove commented-out code checked in by mistake. (sh_cannot_change_mode_class): Enable SUBREGs to be used to select single elements from SFmode vectors. * config/sh/sh.md (fsca): Use VEC_CONCAT to initialize the output register. (sinsf2, cossf2, sindf2, cosdf2): Don't emit CLOBBER. 2003-07-01 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (sh_fsca_sf2int, sh_fsca_df2int, sh_fsca_int2sf): Remove variable declarations. * config/sh/sh.c (sh_fsca_sf2int, sh_fsca_df2int, sh_fsca_int2sf): New functions. (sh_fsca_sf2int_rtx, sh_fsca_df2int_rtx, sh_fsca_int2sf_rtx): New static variables. * config/sh/sh-protos.h (sh_fsca_sf2int, sh_fsca_df2int, sh_fsca_int2sf): Declare. * config/sh/sh.md: Adjust. * doc/invoke.texi (SH Options): Document new options. * config/sh/lib1funcs.asm (ic_invalidate): Remove SH4a forward compatibility from SH4 code. 2003-06-27 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (expand_block_move): Don't emit POST_INC too early. (memory_movsrc_operand): Renamed to... (unaligned_load_operand): ... this. Simplified. * config/sh/sh.h (PREDICATE_CODES): Adjust. * config/sh/sh.md (movua, extv, extzv): Likewise. Change movua's input operand to SImode, and adjust the others. Introduce post-increment by peephole. * config/sh/sh.c (expand_block_move): Give the target address the same mode as the temp reg. * config/sh/sh.c (expand_block_move): Use a temp reg for unaligned copying. 2003-06-26 Alexandre Oliva <aoliva@redhat.com> Introduce support for SH4a. * config/sh/lib1funcs.asm (ic_invalidate): Use icbi if __SH4A__. Emit 4 4kb blocks and touch all of them otherwise. * config/sh/sh.c (sh_fsca_sf2int, sh_fsca_df2int, sh_fsca_int2sf): New. (sh_init_builtins): Initialize them. (print_operand): Support `d'. (expand_block_move): Use movua if src is misaligned. (memory_movsrc_operand): New. * config/sh/sh.h (TARGET_CPU_CPP_BUILTINS): Define __SH4A__ and one of the SH4 macros. (SH4A_BIT, TARGET_SH4A_ARCH, TARGET_SH4A_FP, SELECT_SH4A_NOFPU, SELECT_SH4A_SINGLE_ONLY, SELECT_SH4A, SELECT_SH4A_SINGLE): New. (TARGET_NONE): Add SH4A_BIT. (TARGET_SWITCHES): Add 4a-single-only, 4a-single, 4a-nofpu and 4a. (SH_ASM_SPEC): Pass -dsp if -m4a-nofpu. (sh_fsca_sf2int, sh_fsca_df2int, sh_fsca_int2sf): Declare. (OVERRIDE_OPTIONS): Set cpu to CPU_SH4A when appropriate. (enum processor_type): Added PROCESSOR_SH4A. (PREDICATE_CODES): Add memory_movsrc_operand. * config/sh/sh.md: Removed unused variables. (attr cpu): Add sh4a. (attr type): Add movua, fsrra and fsca. (prefetch): New, for SH4. (ic_invalidate_line, ic_invalidate_line_sh4a): Use icbi. (toggle_sz): Set type to fp. (toggle_pr, rsqrtsf2, fsca, sinsf2, cossf2, sindf2, cosdf2): New. (movua, extv, extzv): New. * config/sh/t-sh: Add multilibs for 4a, 4a-nofpu, 4a-single and 4a-single-only. gcc/testsuite/ChangeLog: 2003-07-06 Alexandre Oliva <aoliva@redhat.com> * gcc.dg/sh4a-memmovua.c: Tweak regular expression. 2003-07-01 Alexandre Oliva <aoliva@redhat.com> * gcc.dg/sh4a-bitmovua.c: New. * gcc.dg/sh4a-cos.c: New. * gcc.dg/sh4a-cosf.c: New. * gcc.dg/sh4a-fprun.c: New. * gcc.dg/sh4a-fsrra.c: New. * gcc.dg/sh4a-memmovua.c: New. * gcc.dg/sh4a-sin.c: New. * gcc.dg/sh4a-sincos.c: New. * gcc.dg/sh4a-sincosf.c: New. * gcc.dg/sh4a-sinf.c: New. libstdc++-v3/ChangeLog: 2003-10-01 Eric Christopher <echristo@redhat.com> * config/cpu/sh/atomicity.h (__exchange_and_add): Remove 'm' constraint. 2003-07-09 Alexandre Oliva <aoliva@redhat.com> * config/cpu/sh/atomicity.h: New. Use movli and movco on SH4a. From-SVN: r85257
2004-07-28 11:13:58 +02:00
m4a | m4a-single | m4a-single-only | m4a-nofpu | m4al)
;;
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
*)
echo "Unknown CPU used in --with-cpu=$with_cpu, known values:" 1>&2
echo "m1 m2 m2e m3 m3e m4 m4-single m4-single-only m4-nofpu" 1>&2
Introduce sh4a support. gcc/ChangeLog: Introduce sh4a support. * config.gcc: Handle sh4a multilibs and cpu selection. * config/sh/sh.h: Likewise. Handle sh4a command line flags. * config/sh/t-mlib-sh4a: New. * config/sh/t-mlib-sh4al: New. * config/sh/t-mlib-sh4a-nofpu: New. * config/sh/t-mlib-sh4a-single: New. * config/sh/t-mlib-sh4a-single-only: New. 2004-02-20 DJ Delorie <dj@redhat.com> * config/sh/sh.md ("movua"): Change constraint from "m" to "Sua". * config/sh/sh.h (EXTRA_CONSTRAINT_S): Add "Sua" support. 2003-08-22 Eric Christopher <echristo@redhat.com> * config/sh/sh4a.md: Update for chip errata. 2003-08-07 Eric Christopher <echristo@redhat.com> * config/sh/sh4a.md: New file. sh4a processor description. 2003-07-08 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (TARGET_SWITCHES): Added 4al. Adjust description of -m4a-nofpu. (SH_ASM_SPEC): Pass -dsp for -m4al, not -m4a-nofpu. * config/sh/t-sh (MULTILIB_MATCHES): Map -m4al to -m4a-nofpu. * doc/invoke.texi (SH Options): Document -m4al. 2003-07-03 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (expand_block_move): Remove commented-out code checked in by mistake. (sh_cannot_change_mode_class): Enable SUBREGs to be used to select single elements from SFmode vectors. * config/sh/sh.md (fsca): Use VEC_CONCAT to initialize the output register. (sinsf2, cossf2, sindf2, cosdf2): Don't emit CLOBBER. 2003-07-01 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.h (sh_fsca_sf2int, sh_fsca_df2int, sh_fsca_int2sf): Remove variable declarations. * config/sh/sh.c (sh_fsca_sf2int, sh_fsca_df2int, sh_fsca_int2sf): New functions. (sh_fsca_sf2int_rtx, sh_fsca_df2int_rtx, sh_fsca_int2sf_rtx): New static variables. * config/sh/sh-protos.h (sh_fsca_sf2int, sh_fsca_df2int, sh_fsca_int2sf): Declare. * config/sh/sh.md: Adjust. * doc/invoke.texi (SH Options): Document new options. * config/sh/lib1funcs.asm (ic_invalidate): Remove SH4a forward compatibility from SH4 code. 2003-06-27 Alexandre Oliva <aoliva@redhat.com> * config/sh/sh.c (expand_block_move): Don't emit POST_INC too early. (memory_movsrc_operand): Renamed to... (unaligned_load_operand): ... this. Simplified. * config/sh/sh.h (PREDICATE_CODES): Adjust. * config/sh/sh.md (movua, extv, extzv): Likewise. Change movua's input operand to SImode, and adjust the others. Introduce post-increment by peephole. * config/sh/sh.c (expand_block_move): Give the target address the same mode as the temp reg. * config/sh/sh.c (expand_block_move): Use a temp reg for unaligned copying. 2003-06-26 Alexandre Oliva <aoliva@redhat.com> Introduce support for SH4a. * config/sh/lib1funcs.asm (ic_invalidate): Use icbi if __SH4A__. Emit 4 4kb blocks and touch all of them otherwise. * config/sh/sh.c (sh_fsca_sf2int, sh_fsca_df2int, sh_fsca_int2sf): New. (sh_init_builtins): Initialize them. (print_operand): Support `d'. (expand_block_move): Use movua if src is misaligned. (memory_movsrc_operand): New. * config/sh/sh.h (TARGET_CPU_CPP_BUILTINS): Define __SH4A__ and one of the SH4 macros. (SH4A_BIT, TARGET_SH4A_ARCH, TARGET_SH4A_FP, SELECT_SH4A_NOFPU, SELECT_SH4A_SINGLE_ONLY, SELECT_SH4A, SELECT_SH4A_SINGLE): New. (TARGET_NONE): Add SH4A_BIT. (TARGET_SWITCHES): Add 4a-single-only, 4a-single, 4a-nofpu and 4a. (SH_ASM_SPEC): Pass -dsp if -m4a-nofpu. (sh_fsca_sf2int, sh_fsca_df2int, sh_fsca_int2sf): Declare. (OVERRIDE_OPTIONS): Set cpu to CPU_SH4A when appropriate. (enum processor_type): Added PROCESSOR_SH4A. (PREDICATE_CODES): Add memory_movsrc_operand. * config/sh/sh.md: Removed unused variables. (attr cpu): Add sh4a. (attr type): Add movua, fsrra and fsca. (prefetch): New, for SH4. (ic_invalidate_line, ic_invalidate_line_sh4a): Use icbi. (toggle_sz): Set type to fp. (toggle_pr, rsqrtsf2, fsca, sinsf2, cossf2, sindf2, cosdf2): New. (movua, extv, extzv): New. * config/sh/t-sh: Add multilibs for 4a, 4a-nofpu, 4a-single and 4a-single-only. gcc/testsuite/ChangeLog: 2003-07-06 Alexandre Oliva <aoliva@redhat.com> * gcc.dg/sh4a-memmovua.c: Tweak regular expression. 2003-07-01 Alexandre Oliva <aoliva@redhat.com> * gcc.dg/sh4a-bitmovua.c: New. * gcc.dg/sh4a-cos.c: New. * gcc.dg/sh4a-cosf.c: New. * gcc.dg/sh4a-fprun.c: New. * gcc.dg/sh4a-fsrra.c: New. * gcc.dg/sh4a-memmovua.c: New. * gcc.dg/sh4a-sin.c: New. * gcc.dg/sh4a-sincos.c: New. * gcc.dg/sh4a-sincosf.c: New. * gcc.dg/sh4a-sinf.c: New. libstdc++-v3/ChangeLog: 2003-10-01 Eric Christopher <echristo@redhat.com> * config/cpu/sh/atomicity.h (__exchange_and_add): Remove 'm' constraint. 2003-07-09 Alexandre Oliva <aoliva@redhat.com> * config/cpu/sh/atomicity.h: New. Use movli and movco on SH4a. From-SVN: r85257
2004-07-28 11:13:58 +02:00
echo "m4a m4a-single m4a-single-only m4a-nofpu m4al" 1>&2
Introduce sh2a support. 2004-07-29 Alexandre Oliva <aoliva@redhat.com> * config.gcc: Build multilibs for sh2a and sh2a-single by default. * config/sh/sh.h (SUPPORT_SH2A, SUPPORT_SH2A_SINGLE): Define by default. Split their tests out of the corresponding SH4 multilibs. * config/sh/t-sh (MULTILIB_MATCHES): Don't ever use SH4 or SH4a multilibs for SH2a. 2004-07-28 Alexandre Oliva <aoliva@redhat.com> * config.gcc: Handle sh2a multilibs and cpu selection. * config/sh/sh.h: Likewise. Handle sh2a command line flags. * config/sh/t-mlib-sh2a: New. * config/sh/t-mlib-sh2a-nofpu: New. * config/sh/t-mlib-sh2a-single: New. * config/sh/t-mlib-sh2a-single-only: New. 2004-07-09 Nick Clifton <nickc@redhat.com> Issue 43400 * config/sh/sh.h (DRIVER_SELF_SPECS): Issue an error message if -ml and -m2a are used together. 2004-03-23 DJ Delorie <dj@redhat.com> * config/sh/sh.c (sh_builtin_saveregs): Use the double code only when we have a double-sized FPU. 2004-02-24 Corinna Vinschen <vinschen@redhat.com> * config/sh/lib1funcs.asm (set_fpscr): Don't build if __SH2A_NOFPU__ is set. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Add cases for -msh2a-nofpu, -msh2a-single and -msh2a-single-only 2004-02-24 Corinna Vinschen <vinschen@redhat.com> * config/sh/crt1.asm: Don't generate FPU instructions if __SH2A_NOFPU__ is set. 2004-02-20 DJ Delorie <dj@delorie.com> * config/sh/sh.md (movsf_i, movsf_ie, movsf, ble, bge): Disable for sh2a-nofpu. 2004-02-20 Fred Fish <fnf@redhat.com>, Corinna Vinschen <vinschen@redhat.com> * config/sh/t-sh (MULTILIB_OPTIONS): Add 2a-nofpu. (MULTILIB_EXCEPTIONS): Don't build littel-endian on sh2a. 2004-02-18 DJ Delorie <dj@redhat.com> * config/sh/sh.c (broken_move): Add support for movi20. * config/sh/sh.h: Likewise. (SHIFT_COUNT_TRUNCATED): Set for sh2a. * config/sh/sh.md (udivsi3_sh2a): New. (udivsi3): Call it. (divsi3_sh2a): New. (divsi3): Call it. (mul_r): New. (ashlsi3_sh2a): New. (ashrsi3_sh2a): New. (lshrsi3_sh2a): New. (movsi_i): Disable for sh2a. (movsi_ie): Add movi20. (movsf_i, movsf_ie, movsf, ble, untyped_call): Explicitly enable sh2a, for -m2a-nofpu mode. 2004-02-13 DJ Delorie <dj@redhat.com> * config/sh/lib1funcs.asm: Handle double vs single better. * config/sh/sh.h: Likewise. 2004-02-09 DJ Delorie <dj@redhat.com> * config/sh/crt1.asm: Add support for sh2a. * config/sh/elf.h: Likewise. * config/sh/lib1funcs.asm: Likewise. * config/sh/sh.c: Likewise. * config/sh/sh.md: Likewise. * config/sh/sh.h: Likewise. * config/sh/t-sh: Likewise. From-SVN: r85286
2004-07-29 08:10:03 +02:00
echo "m2a m2a-single m2a-single-only m2a-nofpu" 1>&2
[multiple changes] 2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (MULTILIB_OPTIONS): Remove. 2004-06-21 J"orn Rennecke <joern.rennecke@superh.com> * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define. (SUPPORT_SH4_SINGLE): Likewise. (TARGET_SWITCHES): Break out switches for cpu subtargets: (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define. (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise. (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise. (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise. (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise. (TARGET_SWITCHES_SH5_32MEDIA): Likewise. (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise. (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to: (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU) (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to: (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU). (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define. (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise. * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine. (TARGET_DEFAULT): Likewise. * config/sh/t-elf: Amend comment. * config/sh/t-1e, config/sh/t-mlib-sh1: New files. * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise. * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise. * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise. * config/sh/t-mlib-sh4-single: Likewise. * config/sh/t-mlib-sh4-single-only: Likewise. * config/sh/t-mlib-sh5-32media: Likewise. * config/sh/t-mlib-sh5-32media-nofpu: Likewise. * config/sh/t-mlib-sh5-64media: Likewise. * config/sh/t-mlib-sh5-64media-nofpu: Likewise. * config/sh/t-mlib-sh5-compact: Likewise. * config/sh/t-mlib-sh5-compact-nofpu: Likewise. * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb. (MULTILIB_CPUS): Define. (MULTILIB_OPTIONS): Use MULTILIB_CPUS. (MULTILIB_MATCHES): Use some shell code to calculate it. (MULTILIB_EXCEPTIONS): Change to ml/m1. * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC. * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU. (LINK_DEFAULT_CPU_EMUL): Don't redefine. (NO_PROFILE_COUNTERS): Define to 1. * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to. (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES): Don't zap. (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES. * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine. (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap. (MULTILIB_RAW_DIRNAMES): Define. (MULTILIB_DIRNAMES): Use it. * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*. (sh*linux configurations): Merge into: (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu, --with-multilib-list options. Support sh-superh-elf configuration. (sh*-netbsd*): Use SELECT_SH* macros. (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu". Merge sh*-*-netbsd* configurations into sh-elf configurations. * config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete. * config/sh/t-monolib: Likewise. From-SVN: r83444
2004-06-21 20:18:40 +02:00
exit 1
;;
esac
;;
sparc*-*-*)
supported_defaults="cpu float tune"
for which in cpu tune; do
eval "val=\$with_$which"
case ${val} in
"" | sparc | sparcv9 | sparc64 | sparc86x \
| v7 | cypress | v8 | supersparc | sparclite | f930 \
| f934 | hypersparc | sparclite86x | sparclet | tsc701 \
| v9 | ultrasparc | ultrasparc3 | niagara | niagara2)
# OK
;;
*)
echo "Unknown cpu used in --with-$which=$val" 1>&2
exit 1
;;
esac
done
case ${with_float} in
"" | soft | hard)
# OK
;;
*)
echo "Unknown floating point type used in --with-float=$with_float" 1>&2
exit 1
;;
esac
;;
config.gcc: Add options for arch and tune on SPU. 2007-07-13 Sa Liu <saliu@de.ibm.com> * config.gcc: Add options for arch and tune on SPU. * config/spu/predicates.md: Add constant operands 0 and 1. * config/spu/spu-builtins.def: Add builtins for double precision floating point comparison: si_dfceq, si_dfcmeq, si_dfcgt, si_dfcmgt, si_dftsv, spu_cmpeq_13, spu_cmpabseq_1, spu_cmpgt_13, spu_cmpabsgt_1, spu_testsv. * config/spu/spu-c.c: Define __SPU_EDP__ when builtins invoked with a CELLEDP target. * config/spu/spu-protos.h: Add new function prototypes. * config/spu/spu.c (spu_override_options): Check options -march and -mtune. (spu_comp_icode): Add comparison code for DFmode and vector mode. (spu_emit_branch_or_set): Use the new code for DFmode and vector mode comparison. (spu_const_from_int): New. Create a vector constant from 4 ints. (get_vec_cmp_insn): New. Get insn index of vector compare instruction. (spu_emit_vector_compare): New. Emit vector compare. (spu_emit_vector_cond_expr): New. Emit vector conditional expression. * config/spu/spu.h: Add options -march and -mtune. Define processor types PROCESSOR_CELL and PROCESSOR_CELLEDP. Define macro CANONICALIZE_COMPARISON. * config/spu/spu.md: Add new insns for double precision compare and double precision vector compare. Add vcond and smax/smin patterns to enable DFmode vector conditional expression. * config/spu/spu.opt: Add options -march and -mtune. * config/spu/spu_internals.h: Add builtins for CELLEDP target: si_dfceq, si_dfcmeq, si_dfcgt, si_dfcmgt, si_dftsv. Add builtin for both CELL and CELLEDP targets: spu_testsv. * config/spu/spu_intrinsics.h: Add flag mnemonics for test special values. testsuite/ * gcc.dg/vect/fast-math-vect-reduc-7.c: Switch on test for V2DFmode vector conditional expression. * gcc.target/spu/dfcmeq.c: New. Test combination of abs and dfceq patterns. * gcc.target/spu/dfcmgt.c: New. Test combination of abs and dfcgt patterns. * gcc.target/spu/intrinsics-2.c: New. Test intrinsics for V2DFmode comparison and test special values. * lib/target-supports.exp: Switch on test for V2DFmode vector conditional expression. From-SVN: r126626
2007-07-13 20:31:08 +02:00
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
"" | v850e | v850e1)
# OK
;;
*)
echo "Unknown cpu used in --with-cpu=$with_cpu" 1>&2
exit 1
;;
esac
;;
esac
# Set some miscellaneous flags for particular targets.
target_cpu_default2=
case ${target} in
alpha*-*-*)
if test x$gas = xyes
then
target_cpu_default2="MASK_GAS"
fi
;;
arm*-*-*)
if test x$target_cpu_cname = x
then
target_cpu_default2=TARGET_CPU_generic
else
target_cpu_default2=TARGET_CPU_$target_cpu_cname
fi
;;
mips.md: Add unspec #2. 2001-09-15 Eric Christopher <echristo@redhat.com> * config/mips/mips.md: Add unspec #2. (reload_indi): Use. (reload_outdi): Ditto. (reload_outsi): Ditto. (HILO_delay): New. 2001-09-15 Eric Christopher <echristo@redhat.com> Jason Eckhardt <jle@redhat.com> * config.gcc: Add mipsisa32 target and mipsisa32-linux target. * config/mips/isa32-linux.h: New file. * config/mips/isa3264.h: Ditto. * config/mips/mips-protos.h: Add mips_hard_regno_nregs. * config/mips/mips.c (mips_hard_regno_nregs): Move here from mips.h. (output_block_mode): Support MEABI. (function_arg): Ditto. Fix floating point arg passing. (mips_va_start): Ditto. (override_options): Add isas 32 and 64, meabi, mips32 and mips64 processors. (mips_asm_file_start): Add new section to pass abi to gdb. (function_arg_pass_by_reference): Support MEABI. (mips_parse_cpu): Support mips32 and mips64 processors. * config/mips/mips.h: Support ABI_MEABI, TARGET_MIPS4KC, TARGET_MIPS5KC. Support isa32 and isa64. (processor_type): Add r4kc, r5kc, r20kc. (GENERATE_MULT3_SI): New. (GENERATE_MULT3_DI): Ditto. (GENERATE_MULT3): Remove. (ISA_HAS_64BIT_REGS): Add isa == 64. (ISA_HAS_8CC): Add mips_isa = 32 and 64. (ISA_HAS_MADD_MSUB): New. (ISA_HAS_CLZ_CLO): Ditto. (ISA_HAS_DCLZ_DCLO): Ditto. (ABI_GAS_ASM_SPEC): New. (GAS_ASM_SPEC): Use. Add support for mips32, mips64. (ASM_SPEC): Ditto. (LINK_SPEC): Ditto. (SUBTARGET_CC1_SPEC): Ditto. (SUBTARGET_CPP_SIZE_SPEC): Ditto. (PAD_VARARGS_DOWN): Support MEABI. (HARD_REGNO_NREGS): Move to mips.c. (ASM_OUTPUT_IDENT): Add #undef. * config/mips/mips.md: Add r4kc, r5kc, r20kc. (mulsi3): Use GENERATE_MULT3_SI. (mulsi3_mult3): Ditto. Support mips32, mips64. (mul_acc_si): Use ISA_HAS_MADD_MSUB. (mul_sub_si): New pattern. (unnamed splitters): New. (muldi3): Use GENERATE_MULT3_DI. (muldi3_internal2): Ditto. (movdicc): Support mips32. * config/mips/t-isa3264: New file. From-SVN: r45623
2001-09-15 04:03:14 +02:00
MAINTAINERS (mt port): Remove. * MAINTAINERS (mt port): Remove. (sco5, unixware, sco udk): Remove. (Kean Johnston): Add to Write After Approval. fixincludes: * inclhack.def (AAB_svr4_replace_byteorder, AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory, libc1_G_va_list, libc1_ifdefd_memx, nested_motorola, ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime, solaris_mutex_init_1, solaris_socket, solaris_unistd, solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param, ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale, ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc, ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings, ultrix_strings2, ultrix_sys_time, ultrix_unistd, unicosmk_restrict, uw7_byteorder_fix, windiss_math1, windiss_math2, windiss_valist): Remove. * fixincl.x: Regenerate. * mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*, i370-*-openedition, i?86-*-moss*, i?86-*-uwin*, powerpc-*-eabiaix*): Remove. * tests/base/math.h: Update. * tests/base/pthread.h: Update. * tests/base/stdio.h: Update. * tests/base/stdlib.h: Update. * tests/base/string.h: Update. * tests/base/strings.h: Update. * tests/base/sys/file.h: Update. * tests/base/sys/limits.h: Update. * tests/base/sys/socket.h: Update. * tests/base/sys/stat.h: Update. * tests/base/sys/time.h: Update. * tests/base/testing.h: Update. * tests/base/unistd.h: Update. * tests/base/_G_config.h: Remove. * tests/base/arpa: Remove directory. * tests/base/fs: Remove directory. * tests/base/locale.h: Remove. * tests/base/machine: Remove directory. * tests/base/rpc/svc.h: Remove. * tests/base/sys/ioctl.h: Remove. * tests/base/sys/regset.h: Remove. * tests/base/sys/times.h: Remove. * tests/base/sys/utsname.h: Remove. * tests/base/widec.h: Remove. gcc: * config.gcc (Obsolete configurations): Remove list of configurations. (Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*, *-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*. Remove other targets matched by those patterns. (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff, i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove. Make code for Solaris 7 and greater unconditional for Solaris. (ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*): Remove --with-* handling. * config/rs6000/sysv4.h (-mwindiss): Remove from all specs. (LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC, ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC, LINK_OS_WINDISS_SPEC): Remove. * config/rs6000/sysv4.opt (mwindiss): Remove. * configure.ac (strongarm*-*-*, xscale*-*-*): Remove. * configure: Regenerate. * doc/cpp.texi: Don't mention BeOS. * doc/extend.texi (interrupt): Don't mention MS1. * doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv, m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv, alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout, i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4, powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix): Remove. * doc/invoke.texi (MT Options): Remove. (-mwindiss): Remove. (CRIS Options): Remove cris-axis-aout references. (HPPA Options): Don't mention hppa1.1-*-pro. * doc/md.texi: (MorphoTech family): Remove. * libgcc2.c: Don't handle UWIN. * config/alpha/t-unicosmk: Remove. * config/alpha/unicosmk.h: Remove. * config/arm/kaos-arm.h: Remove. * config/arm/kaos-strongarm.h: Remove. * config/arm/strongarm-coff.h: Remove. * config/arm/strongarm-elf.h: Remove. * config/arm/strongarm-pe.h: Remove. * config/arm/t-strongarm-pe: Remove. * config/arm/t-xscale-coff: Remove. * config/arm/t-xscale-elf: Remove. * config/arm/xscale-coff.h: Remove. * config/arm/xscale-elf.h: Remove. * config/chorus.h: Remove. * config/cris/aout.h: Remove. * config/cris/aout.opt: Remove. * config/cris/t-aout: Remove. * config/i386/beos-elf.h: Remove. * config/i386/kaos-i386.h: Remove. * config/i386/ptx4-i.h: Remove. * config/i386/sco5.h: Remove. * config/i386/sco5.opt: Remove. * config/i386/sysv4-cpp.h: Remove. * config/i386/sysv5.h: Remove. * config/i386/t-beos: Remove. * config/i386/t-sco5: Remove. * config/i386/t-uwin: Remove. * config/i386/uwin.asm: Remove. * config/i386/uwin.h: Remove. * config/kaos.h: Remove. * config/mips/windiss.h: Remove. * config/mt: Remove directory. * config/pa/pa-osf.h: Remove. * config/pa/pa-pro-end.h: Remove. * config/pa/t-pro: Remove. * config/ptx4.h: Remove. * config/rs6000/beos.h: Remove. * config/rs6000/kaos-ppc.h: Remove. * config/rs6000/t-beos: Remove. * config/rs6000/windiss.h: Remove. * config/sh/kaos-sh.h: Remove. * config/sol2-6.h: Remove. * config/sparc/sol26-sld.h: Remove. * config/sparc/sysv4-only.h: Remove. * config/vax/bsd.h: Remove. * config/vax/t-memfuncs: Remove. * config/vax/ultrix.h: Remove. * config/vax/vaxv.h: Remove. * config/windiss.h: Remove. gcc/testsuite: * g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*. * g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*. * g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris 7. * gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*, strongarm*-*-* and cris-*-aout*. * gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20030909-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20031108-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20040813-1.c: Don't handle *-*-sysv5*. * gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*. * gcc.dg/arm-scd42-1.c: Use target arm*-*-*. * gcc.dg/arm-scd42-3.c: Use target arm*-*-*. * gcc.dg/cpp/assert4.c: Don't handle BeOS. * gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*. * gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and xscale*-*-elf*. * gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*. * gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1. * gcc.misc-tests/arm-isr.exp: Use target arm*-*-*. * gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-stackalign-1.c: Don't handle powerpc-*-sysv*. * gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*. * lib/target-supports.exp: Don't handle strongarm*-*-elf, xscale*-*-elf and *-*-windiss. * obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*. * gcc.dg/mt-loopi1.c: Remove. gnattools: * configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove. * configure: Regenerate. libcpp: * configure.ac (parisc*64*-*-*): Remove. * configure: Regenerate. libffi: * configure.ac (parisc*-*-linux*, powerpc-*-sysv*, powerpc-*-beos*): Remove. * configure: Regenerate. libgcc: * config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove. libjava: * configure.host (strongarm*-elf, xscale*-elf): Remove. libstdc++-v3: * configure.host (xscale, ep9312, m680[246]0, solaris2.5, solaris2.5.[0-9], solaris2.6, windiss*): Remove. * crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove. * configure: Regenerate. * config/os/solaris/solaris2.5: Remove directory. * config/os/solaris/solaris2.6: Remove directory. * config/os/windiss: Remove directory. From-SVN: r136534
2008-06-07 20:00:15 +02:00
hppa*-*-*)
PR libstdc++/17005 (fix for HP-UX 11.11) PR libstdc++/17005 (fix for HP-UX 11.11) * config.gcc (hppa*-*-*): Move MASK_BIG_SWITCH to target_cpu_default2. (hppa*-*-hpux*): Consolidate hppa1.0-*-* code. Rework handling of tm_file including pa-hpux1010.h or pa-hpux1111.h when appropriate. * config/pa/pa-hpux1010.h, config/pa/pa-hpux1111.h: New files. * config/pa/pa-hpux.h (TARGET_HPUX): Define. (LINK_SPEC): Handle march=1.0 option. * config/pa/pa-hpux10.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. Additionally, predefine _INCLUDE__STDC_A1_SOURCE and _INCLUDE_XOPEN_SOURCE_500 for UNIX 98. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa.c (override_options): Add code to process -munix= option. * config/pa/pa.h (pa_unix_string, flag_pa_unix): Declare. (TARGET_HPUX, TARGET_HPUX_10_10, TARGET_HPUX_11_11): Provide default defines. (TARGET_OPTIONS): Add SUBTARGET_OPTIONS to option list. (SUBTARGET_OPTIONS): Provide default define. * config/pa/pa64-hpux.h (STANDARD_STARTFILE_PREFIX_1, STANDARD_STARTFILE_PREFIX_2): New defines. (STARTFILE_SPEC): Provide unix95.o or unix98.o startfiles as necessary. (ENDFILE_SPEC): Use %O. * doc/install.texi (hppa*-*-hpux*): Reword paragraph on -g and gas. Mention issue caused by changing namespace and runtime to UNIX 95/98. * doc/invoke.texi (HPPA options): Move misplaced text to FRV options. Document -munix=std option. From-SVN: r86561
2004-08-25 19:49:58 +02:00
target_cpu_default2="MASK_BIG_SWITCH"
if test x$gas = xyes
then
PR libstdc++/17005 (fix for HP-UX 11.11) PR libstdc++/17005 (fix for HP-UX 11.11) * config.gcc (hppa*-*-*): Move MASK_BIG_SWITCH to target_cpu_default2. (hppa*-*-hpux*): Consolidate hppa1.0-*-* code. Rework handling of tm_file including pa-hpux1010.h or pa-hpux1111.h when appropriate. * config/pa/pa-hpux1010.h, config/pa/pa-hpux1111.h: New files. * config/pa/pa-hpux.h (TARGET_HPUX): Define. (LINK_SPEC): Handle march=1.0 option. * config/pa/pa-hpux10.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Predefine _XOPEN_UNIX and _XOPEN_SOURCE_EXTENDED for UNIX 95. Additionally, predefine _INCLUDE__STDC_A1_SOURCE and _INCLUDE_XOPEN_SOURCE_500 for UNIX 98. (SUBTARGET_OPTIONS): New define. (LINK_SPEC): Handle march=1.0 option. (STARTFILE_SPEC): New define. * config/pa/pa.c (override_options): Add code to process -munix= option. * config/pa/pa.h (pa_unix_string, flag_pa_unix): Declare. (TARGET_HPUX, TARGET_HPUX_10_10, TARGET_HPUX_11_11): Provide default defines. (TARGET_OPTIONS): Add SUBTARGET_OPTIONS to option list. (SUBTARGET_OPTIONS): Provide default define. * config/pa/pa64-hpux.h (STANDARD_STARTFILE_PREFIX_1, STANDARD_STARTFILE_PREFIX_2): New defines. (STARTFILE_SPEC): Provide unix95.o or unix98.o startfiles as necessary. (ENDFILE_SPEC): Use %O. * doc/install.texi (hppa*-*-hpux*): Reword paragraph on -g and gas. Mention issue caused by changing namespace and runtime to UNIX 95/98. * doc/invoke.texi (HPPA options): Move misplaced text to FRV options. Document -munix=std option. From-SVN: r86561
2004-08-25 19:49:58 +02:00
target_cpu_default2="${target_cpu_default2}|MASK_GAS|MASK_JUMP_IN_DELAY"
fi
;;
MAINTAINERS (mt port): Remove. * MAINTAINERS (mt port): Remove. (sco5, unixware, sco udk): Remove. (Kean Johnston): Add to Write After Approval. fixincludes: * inclhack.def (AAB_svr4_replace_byteorder, AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory, libc1_G_va_list, libc1_ifdefd_memx, nested_motorola, ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime, solaris_mutex_init_1, solaris_socket, solaris_unistd, solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param, ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale, ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc, ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings, ultrix_strings2, ultrix_sys_time, ultrix_unistd, unicosmk_restrict, uw7_byteorder_fix, windiss_math1, windiss_math2, windiss_valist): Remove. * fixincl.x: Regenerate. * mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*, i370-*-openedition, i?86-*-moss*, i?86-*-uwin*, powerpc-*-eabiaix*): Remove. * tests/base/math.h: Update. * tests/base/pthread.h: Update. * tests/base/stdio.h: Update. * tests/base/stdlib.h: Update. * tests/base/string.h: Update. * tests/base/strings.h: Update. * tests/base/sys/file.h: Update. * tests/base/sys/limits.h: Update. * tests/base/sys/socket.h: Update. * tests/base/sys/stat.h: Update. * tests/base/sys/time.h: Update. * tests/base/testing.h: Update. * tests/base/unistd.h: Update. * tests/base/_G_config.h: Remove. * tests/base/arpa: Remove directory. * tests/base/fs: Remove directory. * tests/base/locale.h: Remove. * tests/base/machine: Remove directory. * tests/base/rpc/svc.h: Remove. * tests/base/sys/ioctl.h: Remove. * tests/base/sys/regset.h: Remove. * tests/base/sys/times.h: Remove. * tests/base/sys/utsname.h: Remove. * tests/base/widec.h: Remove. gcc: * config.gcc (Obsolete configurations): Remove list of configurations. (Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*, *-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*. Remove other targets matched by those patterns. (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff, i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove. Make code for Solaris 7 and greater unconditional for Solaris. (ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*): Remove --with-* handling. * config/rs6000/sysv4.h (-mwindiss): Remove from all specs. (LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC, ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC, LINK_OS_WINDISS_SPEC): Remove. * config/rs6000/sysv4.opt (mwindiss): Remove. * configure.ac (strongarm*-*-*, xscale*-*-*): Remove. * configure: Regenerate. * doc/cpp.texi: Don't mention BeOS. * doc/extend.texi (interrupt): Don't mention MS1. * doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv, m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv, alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout, i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4, powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix): Remove. * doc/invoke.texi (MT Options): Remove. (-mwindiss): Remove. (CRIS Options): Remove cris-axis-aout references. (HPPA Options): Don't mention hppa1.1-*-pro. * doc/md.texi: (MorphoTech family): Remove. * libgcc2.c: Don't handle UWIN. * config/alpha/t-unicosmk: Remove. * config/alpha/unicosmk.h: Remove. * config/arm/kaos-arm.h: Remove. * config/arm/kaos-strongarm.h: Remove. * config/arm/strongarm-coff.h: Remove. * config/arm/strongarm-elf.h: Remove. * config/arm/strongarm-pe.h: Remove. * config/arm/t-strongarm-pe: Remove. * config/arm/t-xscale-coff: Remove. * config/arm/t-xscale-elf: Remove. * config/arm/xscale-coff.h: Remove. * config/arm/xscale-elf.h: Remove. * config/chorus.h: Remove. * config/cris/aout.h: Remove. * config/cris/aout.opt: Remove. * config/cris/t-aout: Remove. * config/i386/beos-elf.h: Remove. * config/i386/kaos-i386.h: Remove. * config/i386/ptx4-i.h: Remove. * config/i386/sco5.h: Remove. * config/i386/sco5.opt: Remove. * config/i386/sysv4-cpp.h: Remove. * config/i386/sysv5.h: Remove. * config/i386/t-beos: Remove. * config/i386/t-sco5: Remove. * config/i386/t-uwin: Remove. * config/i386/uwin.asm: Remove. * config/i386/uwin.h: Remove. * config/kaos.h: Remove. * config/mips/windiss.h: Remove. * config/mt: Remove directory. * config/pa/pa-osf.h: Remove. * config/pa/pa-pro-end.h: Remove. * config/pa/t-pro: Remove. * config/ptx4.h: Remove. * config/rs6000/beos.h: Remove. * config/rs6000/kaos-ppc.h: Remove. * config/rs6000/t-beos: Remove. * config/rs6000/windiss.h: Remove. * config/sh/kaos-sh.h: Remove. * config/sol2-6.h: Remove. * config/sparc/sol26-sld.h: Remove. * config/sparc/sysv4-only.h: Remove. * config/vax/bsd.h: Remove. * config/vax/t-memfuncs: Remove. * config/vax/ultrix.h: Remove. * config/vax/vaxv.h: Remove. * config/windiss.h: Remove. gcc/testsuite: * g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*. * g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*. * g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris 7. * gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*, strongarm*-*-* and cris-*-aout*. * gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20030909-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20031108-1.c: Don't handle xscale*-*-* and strongarm*-*-*. * gcc.dg/20040813-1.c: Don't handle *-*-sysv5*. * gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*. * gcc.dg/arm-scd42-1.c: Use target arm*-*-*. * gcc.dg/arm-scd42-3.c: Use target arm*-*-*. * gcc.dg/cpp/assert4.c: Don't handle BeOS. * gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*. * gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and xscale*-*-elf*. * gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*. * gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1. * gcc.misc-tests/arm-isr.exp: Use target arm*-*-*. * gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*. * gcc.target/powerpc/ppc-stackalign-1.c: Don't handle powerpc-*-sysv*. * gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*. * lib/target-supports.exp: Don't handle strongarm*-*-elf, xscale*-*-elf and *-*-windiss. * obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*. * objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*. * gcc.dg/mt-loopi1.c: Remove. gnattools: * configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove. * configure: Regenerate. libcpp: * configure.ac (parisc*64*-*-*): Remove. * configure: Regenerate. libffi: * configure.ac (parisc*-*-linux*, powerpc-*-sysv*, powerpc-*-beos*): Remove. * configure: Regenerate. libgcc: * config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*, alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf, arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*, hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*, i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*, i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*, i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*, i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*, mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*, powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*, powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*, strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove. libjava: * configure.host (strongarm*-elf, xscale*-elf): Remove. libstdc++-v3: * configure.host (xscale, ep9312, m680[246]0, solaris2.5, solaris2.5.[0-9], solaris2.6, windiss*): Remove. * crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove. * configure: Regenerate. * config/os/solaris/solaris2.5: Remove directory. * config/os/solaris/solaris2.6: Remove directory. * config/os/windiss: Remove directory. From-SVN: r136534
2008-06-07 20:00:15 +02:00
fido*-*-* | m68k*-*-*)
200x-xx-xx Julian Brown <julian@codesourcery.com> Nathan Sidwell... gcc/ 200x-xx-xx Julian Brown <julian@codesourcery.com> Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (m680[012]0-*-*, m68k*-*-*): Set m68k_cpu_ident to the -mcpu= argument associated with the --with-cpu setting. Define M68K_DEFAULT_TUNE to the default -mtune= option, if different from the one implied by the -mcpu setting. Accept --with-cpu=FOO if FOO is listed in m68k-devices.def, using mcpu=FOO as the default CPU option. Set target_cpu_default2. * doc/invoke.texi: Mention ColdFire in the introduction to the m68k options. Document the new -march, -mcpu, -mtune, -mdiv, -mno-div and -mhard-float options. Make -m68881 a synonym for -mhard-float. Document the previously-undocumented -m5206e, -m528x, -m5307 and -m5407 options. Tweak the existing option documentation for consistency. * doc/install.texi: Mention new --with-cpu arguments. * config/m68k/m68k.h (OPTION_DEFAULT_SPECS): Only use the default CPU if neither -mcpu nor -march are specified. (ASM_CPU_SPEC): Pass down -mcpu and -march options. (TARGET_CPU_CPP_BUILTINS): Set __mcfisa*__ macros from TARGET_ISA*. Set the legacy __mcf*__ cpu macros in the same way, using m68k_tune to decide between families that implement the same ISA. Use m68k_tune to set __mcfv4e__. (FL_BITFIELD, FL_68881, FL_COLDFIRE, FL_CF_HWDIV, FL_CF_MAC) (FL_CF_EMAC, FL_CF_EMAC_B, FL_CF_USP, FL_CF_FPU, FL_ISA_68000) (FL_ISA_68010, FL_ISA_68020, FL_ISA_68040, FL_ISA_A, FL_ISA_B) (FL_ISA_C, FL_ISA_MMU): New macros. (MASK_COLDFIRE): Delete. (TARGET_68010, TARGET_68020, TARGET_68040_ONLY, TARGET_COLDFIRE) (TARGET_ISAB): Redefine in terms of m68k_cpu_flags. (TARGET_68881, TARGET_COLDFIRE_FPU): Redefine in terms of m68k_fpu. (TARGET_HARD_FLOAT): Do not define here. (TARGET_ISAAPLUS, TARGET_ISAC): New macros. (TUNE_68000): New macro. (TUNE_68000_10): Redefine in terms of TUNE_68000 and TUNE_68010. (TUNE_68010, TUNE_68030, TUNE_68040, TUNE_68060, TUNE_CPU32) (TUNE_CFV2): Redefine in terms of m68k_tune. (uarch_type, target_device, fpu_type): New enums. (m68k_cpu, m68k_tune, m68k_fpu, m68k_cpu_flags): Declare. * config/m68k/m68k.c (TARGET_DEFAULT): Remove MASK_68881. (FL_FOR_isa_00, FL_FOR_isa_10, FL_FOR_isa_20, FL_FOR_isa_40) (FL_FOR_isa_cpu32, FL_FOR_isa_a, FL_FOR_isa_aplus, FL_FOR_isa_b) (FL_FOR_isa_c): New macros. (m68k_isa): New enum. (m68k_target_selection): New structure. (all_devices, all_isas, all_microarchs): New tables. (m68k_cpu_entry, m68k_arch_entry, m68k_tune_entry, m68k_cpu) (m68k_tune, m68k_fpu, m68k_cpu_flags): New variables. (MASK_ALL_CPU_BITS): Delete. (m68k_find_selection): New function. (m68k_handle_option): Handle -mcpu=, -march= and -mtune=. Map the legacy target options to a combination of the new ones. (override_options): Set m68k_cpu, m68k_tune, m68k_fpu and m68k_cpu_flags. Handle M68K_DEFAULT_TUNE. Use m68k_cpu_flags to derive default MASK_BITFIELD, MASK_CF_HWDIV and MASK_HARD_FLOAT settings. * config/m68k/m68k.opt (m5200, m5206e, m528x, m5307, m5407, mcfv4e) (m68010, m68020, m68020-40, m68020-60, m68030, m68040): Remove Mask properties. (m68881, msoft-float): Change mask from 68881 to HARD_FLOAT. (march=, mcpu=, mdiv, mhard-float, mtune=): New options. * config/m68k/m68k-devices.def: New file. Co-Authored-By: Nathan Sidwell <nathan@codesourcery.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r120713
2007-01-12 10:32:59 +01:00
target_cpu_default2=$m68k_cpu_ident
200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> gcc/ 200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (m68010-*-netbsdelf*, m68k*-*-netbsdelf*) (m68k*-*-openbsd*, m68k-*-linux*): Set default_cf_cpu. (m68k-*-aout*, m68k-*-coff*, m68k-*-uclinux*, m68k-*-rtems*): Add m68k/t-mlib to tmake_file. (m68020-*-elf*, m68k-*-elf*): Likewise. Add t-m68kbare as well. (m68k*-*-*): Use --with-arch to pick a default for --with-cpu. (m680[012]0-*-*, m68k*-*-*): Add support for --with-arch. Allow it to be cf or m68k. Set m68k_arch_family. If that variable is not empty, add t-$m68k_arch_family to tmake_file. Add t-mlibs to tmake_file. * doc/install.texi: Document --with-arch=m68k and --with-arch=cf. * config/m68k/t-cf: New file. * config/m68k/t-m68k: Likewise. * config/m68k/t-mlibs: Likewise. * config/m68k/t-m68kbare (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_DIRNAMES, M68K_MLIB_OPTIONS): Define. * config/m68k/t-m68kelf (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS, LIBGCC, INSTALL_LIBGCC): Delete. * config/m68k/t-openbsd (MULTILIB_OPTIONS, LIBGCC): Delete. (INSTALL_LIBGCC): Delete. (M68K_MLIB_DIRNAMES, M68K_MLIB_OPTIONS): Define. * config/m68k/t-rtems (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_CPU): Define. * config/m68k/t-uclinux (MULTILIB_OPTIONS, MULTILIB_DIRNAMES) (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Delete. (M68K_MLIB_CPU, M68K_MLIB_OPTIONS, M68K_MLIB_DIRNAMES): Define. Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r121743
2007-02-09 14:47:25 +01:00
if [ x"$m68k_arch_family" != x ]; then
tmake_file="m68k/t-$m68k_arch_family $tmake_file"
fi
200x-xx-xx Julian Brown <julian@codesourcery.com> Nathan Sidwell... gcc/ 200x-xx-xx Julian Brown <julian@codesourcery.com> Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> * config.gcc (m680[012]0-*-*, m68k*-*-*): Set m68k_cpu_ident to the -mcpu= argument associated with the --with-cpu setting. Define M68K_DEFAULT_TUNE to the default -mtune= option, if different from the one implied by the -mcpu setting. Accept --with-cpu=FOO if FOO is listed in m68k-devices.def, using mcpu=FOO as the default CPU option. Set target_cpu_default2. * doc/invoke.texi: Mention ColdFire in the introduction to the m68k options. Document the new -march, -mcpu, -mtune, -mdiv, -mno-div and -mhard-float options. Make -m68881 a synonym for -mhard-float. Document the previously-undocumented -m5206e, -m528x, -m5307 and -m5407 options. Tweak the existing option documentation for consistency. * doc/install.texi: Mention new --with-cpu arguments. * config/m68k/m68k.h (OPTION_DEFAULT_SPECS): Only use the default CPU if neither -mcpu nor -march are specified. (ASM_CPU_SPEC): Pass down -mcpu and -march options. (TARGET_CPU_CPP_BUILTINS): Set __mcfisa*__ macros from TARGET_ISA*. Set the legacy __mcf*__ cpu macros in the same way, using m68k_tune to decide between families that implement the same ISA. Use m68k_tune to set __mcfv4e__. (FL_BITFIELD, FL_68881, FL_COLDFIRE, FL_CF_HWDIV, FL_CF_MAC) (FL_CF_EMAC, FL_CF_EMAC_B, FL_CF_USP, FL_CF_FPU, FL_ISA_68000) (FL_ISA_68010, FL_ISA_68020, FL_ISA_68040, FL_ISA_A, FL_ISA_B) (FL_ISA_C, FL_ISA_MMU): New macros. (MASK_COLDFIRE): Delete. (TARGET_68010, TARGET_68020, TARGET_68040_ONLY, TARGET_COLDFIRE) (TARGET_ISAB): Redefine in terms of m68k_cpu_flags. (TARGET_68881, TARGET_COLDFIRE_FPU): Redefine in terms of m68k_fpu. (TARGET_HARD_FLOAT): Do not define here. (TARGET_ISAAPLUS, TARGET_ISAC): New macros. (TUNE_68000): New macro. (TUNE_68000_10): Redefine in terms of TUNE_68000 and TUNE_68010. (TUNE_68010, TUNE_68030, TUNE_68040, TUNE_68060, TUNE_CPU32) (TUNE_CFV2): Redefine in terms of m68k_tune. (uarch_type, target_device, fpu_type): New enums. (m68k_cpu, m68k_tune, m68k_fpu, m68k_cpu_flags): Declare. * config/m68k/m68k.c (TARGET_DEFAULT): Remove MASK_68881. (FL_FOR_isa_00, FL_FOR_isa_10, FL_FOR_isa_20, FL_FOR_isa_40) (FL_FOR_isa_cpu32, FL_FOR_isa_a, FL_FOR_isa_aplus, FL_FOR_isa_b) (FL_FOR_isa_c): New macros. (m68k_isa): New enum. (m68k_target_selection): New structure. (all_devices, all_isas, all_microarchs): New tables. (m68k_cpu_entry, m68k_arch_entry, m68k_tune_entry, m68k_cpu) (m68k_tune, m68k_fpu, m68k_cpu_flags): New variables. (MASK_ALL_CPU_BITS): Delete. (m68k_find_selection): New function. (m68k_handle_option): Handle -mcpu=, -march= and -mtune=. Map the legacy target options to a combination of the new ones. (override_options): Set m68k_cpu, m68k_tune, m68k_fpu and m68k_cpu_flags. Handle M68K_DEFAULT_TUNE. Use m68k_cpu_flags to derive default MASK_BITFIELD, MASK_CF_HWDIV and MASK_HARD_FLOAT settings. * config/m68k/m68k.opt (m5200, m5206e, m528x, m5307, m5407, mcfv4e) (m68010, m68020, m68020-40, m68020-60, m68030, m68040): Remove Mask properties. (m68881, msoft-float): Change mask from 68881 to HARD_FLOAT. (march=, mcpu=, mdiv, mhard-float, mtune=): New options. * config/m68k/m68k-devices.def: New file. Co-Authored-By: Nathan Sidwell <nathan@codesourcery.com> Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r120713
2007-01-12 10:32:59 +01:00
;;
re PR target/36669 (Wrong versioning for __float128) gcc/ 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> PR target/36669 * config/libgcc-glibc.ver: Add %exclude. * config/m32r/libgcc-glibc.ver: Likwise. * config/s390/libgcc-glibc.ver: Likwise. * config/sh/libgcc-glibc.ver: Likwise. * config/sparc/libgcc-sparc-glibc.ver: Likwise. * config/i386/libgcc-glibc.ver: New. * config/i386/libgcc-x86_64-glibc.ver: Removed. 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> * config.gcc: Remove i386/t-fprules-softfp64 soft-fp/t-softfp from tmake_file from i[34567]86-*-darwin*, x86_64-*-darwin*, i[34567]86-*-linux*, x86_64-*-linux*. Add i386/t-fprules-softfp and soft-fp/t-softfp to tmake_file for i[34567]86-*-darwin*, x86_64-*-darwin*, i[34567]86-*-linux*, x86_64-*-linux*. Add i386/t-linux to tmake_file for i[34567]86-*-linux*, x86_64-*-linux*. * libgcc-std.ver: Add empty GCC_4.4.0. * mkmap-symver.awk: Support multiple versions per symbol. * config/i386/i386.c (ix86_init_builtins): Always define __builtin_fabsq and __builtin_copysignq with fallbacks. (ix86_expand_builtin): Emit normal call for __builtin_fabsq and __builtin_copysignq if SSE2 isn't available. * config/i386/linux.h (LIBGCC2_HAS_TF_MODE): Defined. (LIBGCC2_TF_CEXT): Likwise. (TF_SIZE): Likwise. * config/i386/linux64.h (LIBGCC2_HAS_TF_MODE): Defined as 1. * config/i386/sfp-machine.h: Moved to libgcc. * config/i386/sfp-machine.h: New. * config/i386/t-linux: Likwise. * config/i386/t-darwin: Remove softfp_wrap_start and softfp_wrap_end. * config/i386/t-darwin64: Likewise. * config/i386/t-fprules-softfp64: Renamed to ... * config/i386/t-fprules-softfp: This. * config/i386/t-linux64: Remove SHLIB_MAPFILES, softfp_wrap_start and softfp_wrap_end. libgcc/ 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> PR target/36669 * shared-object.mk ($(base)_s$(objext)): Add -DSHARED. * config/i386/64/_divtc3-compat.c: New. * config/i386/64/_multc3-compat.c: Likewise. * config/i386/64/_powitf2-compat.c: Likewise. * config/i386/64/eqtf2.c: Likewise. * config/i386/64/getf2.c: Likewise. * config/i386/64/letf2.c: Likewise. * config/i386/64/t-fprules-softfp: Likewise. 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> * config.host: Add i386/${host_address}/t-fprules-softfp to tmake_file for i[34567]86-*-darwin*, x86_64-*-darwin*, i[34567]86-*-linux*, x86_64-*-linux*. * configure.ac: Set host_address to 64 or 32 for x86. * configure: Regenerated. * Makefile.in (config.status): Also depend on $(srcdir)/config.host. * config/i386/32/t-fprules-softfp: New. * config/i386/32/tf-signs.c: Likewise. * config/i386/64/sfp-machine.h: New. Moved from gcc. 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> Uros Bizjak <ubizjak@gmail.com> * config/i386/32/sfp-machine.h: New. Co-Authored-By: Uros Bizjak <ubizjak@gmail.com> From-SVN: r137369
2008-07-02 17:59:19 +02:00
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)
re PR target/36669 (Wrong versioning for __float128) gcc/ 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> PR target/36669 * config/libgcc-glibc.ver: Add %exclude. * config/m32r/libgcc-glibc.ver: Likwise. * config/s390/libgcc-glibc.ver: Likwise. * config/sh/libgcc-glibc.ver: Likwise. * config/sparc/libgcc-sparc-glibc.ver: Likwise. * config/i386/libgcc-glibc.ver: New. * config/i386/libgcc-x86_64-glibc.ver: Removed. 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> * config.gcc: Remove i386/t-fprules-softfp64 soft-fp/t-softfp from tmake_file from i[34567]86-*-darwin*, x86_64-*-darwin*, i[34567]86-*-linux*, x86_64-*-linux*. Add i386/t-fprules-softfp and soft-fp/t-softfp to tmake_file for i[34567]86-*-darwin*, x86_64-*-darwin*, i[34567]86-*-linux*, x86_64-*-linux*. Add i386/t-linux to tmake_file for i[34567]86-*-linux*, x86_64-*-linux*. * libgcc-std.ver: Add empty GCC_4.4.0. * mkmap-symver.awk: Support multiple versions per symbol. * config/i386/i386.c (ix86_init_builtins): Always define __builtin_fabsq and __builtin_copysignq with fallbacks. (ix86_expand_builtin): Emit normal call for __builtin_fabsq and __builtin_copysignq if SSE2 isn't available. * config/i386/linux.h (LIBGCC2_HAS_TF_MODE): Defined. (LIBGCC2_TF_CEXT): Likwise. (TF_SIZE): Likwise. * config/i386/linux64.h (LIBGCC2_HAS_TF_MODE): Defined as 1. * config/i386/sfp-machine.h: Moved to libgcc. * config/i386/sfp-machine.h: New. * config/i386/t-linux: Likwise. * config/i386/t-darwin: Remove softfp_wrap_start and softfp_wrap_end. * config/i386/t-darwin64: Likewise. * config/i386/t-fprules-softfp64: Renamed to ... * config/i386/t-fprules-softfp: This. * config/i386/t-linux64: Remove SHLIB_MAPFILES, softfp_wrap_start and softfp_wrap_end. libgcc/ 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> PR target/36669 * shared-object.mk ($(base)_s$(objext)): Add -DSHARED. * config/i386/64/_divtc3-compat.c: New. * config/i386/64/_multc3-compat.c: Likewise. * config/i386/64/_powitf2-compat.c: Likewise. * config/i386/64/eqtf2.c: Likewise. * config/i386/64/getf2.c: Likewise. * config/i386/64/letf2.c: Likewise. * config/i386/64/t-fprules-softfp: Likewise. 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> * config.host: Add i386/${host_address}/t-fprules-softfp to tmake_file for i[34567]86-*-darwin*, x86_64-*-darwin*, i[34567]86-*-linux*, x86_64-*-linux*. * configure.ac: Set host_address to 64 or 32 for x86. * configure: Regenerated. * Makefile.in (config.status): Also depend on $(srcdir)/config.host. * config/i386/32/t-fprules-softfp: New. * config/i386/32/tf-signs.c: Likewise. * config/i386/64/sfp-machine.h: New. Moved from gcc. 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> Uros Bizjak <ubizjak@gmail.com> * config/i386/32/sfp-machine.h: New. Co-Authored-By: Uros Bizjak <ubizjak@gmail.com> From-SVN: r137369
2008-07-02 17:59:19 +02:00
tmake_file="${tmake_file} i386/t-fprules-softfp soft-fp/t-softfp i386/t-linux"
;;
i[34567]86-*-cygwin* | i[34567]86-*-mingw* | x86_64-*-mingw*)
tmake_file="${tmake_file} i386/t-fprules-softfp soft-fp/t-softfp"
;;
longlong.h (sub_ddmmss): New for ia64. gcc/ 2009-02-12 Uros Bizjak <ubizjak@gmail.com> * longlong.h (sub_ddmmss): New for ia64. Ported from GMP 4.2. (umul_ppmm): Likewise. (count_leading_zeros): Likewise. (count_trailing_zeros): Likewise. (UMUL_TIME): Likewise. 2009-02-12 H.J. Lu <hongjiu.lu@intel.com> * config.gcc: Add ia64/t-fprules-softfp soft-fp/t-softfp to tmake_file for ia64*-*-linux*. * config/ia64/ia64.c (ia64_soft_fp_init_libfuncs): New. (ia64_expand_compare): Use HPUX library for TFmode only for HPUX. (ia64_builtins): Add IA64_BUILTIN_COPYSIGNQ, IA64_BUILTIN_FABSQ and IA64_BUILTIN_INFQ. (ia64_init_builtins): Initialize __builtin_infq, __builtin_fabsq and __builtin_copysignq if not HPUX. (ia64_expand_builtin): Handle IA64_BUILTIN_COPYSIGNQ, IA64_BUILTIN_FABSQ and IA64_BUILTIN_INFQ. * config/ia64/lib1funcs.asm (__divtf3): Define only if SHARED is defined. (__fixtfti): Likewise. (__fixunstfti): Likewise. (__floattitf): Likewise. * config/ia64/libgcc-glibc.ver: New. * config/ia64/t-fprules-softfp: Likewise. * config/ia64/sfp-machine.h: Likewise. * config/ia64/linux.h (LIBGCC2_HAS_TF_MODE): New. (LIBGCC2_TF_CEXT): Likewise. (TF_SIZE): Likewise. (TARGET_INIT_LIBFUNCS): Likewise. * config/ia64/t-glibc: Add $(srcdir)/config/ia64/libgcc-glibc.ver to SHLIB_MAPFILES. libgcc/ 2009-02-12 H.J. Lu <hongjiu.lu@intel.com> * config.host: Add ia64/t-fprules-softfp ia64/t-softfp-compat to tmake_file for ia64*-*-linux*. * Makefile.in (gen-hide-list): Ignore .*_compat and .*@.*. * config/ia64/__divxf3.asm: New. * config/ia64/_fixtfdi.asm: Likewise. * config/ia64/_fixunstfdi.asm: Likewise. * config/ia64/_floatditf.asm: Likewise. * config/ia64/t-fprules-softfp: Likewise. * config/ia64/t-softfp-compat: Likewise. * config/ia64/tf-signs.c: Likewise. From-SVN: r144130
2009-02-12 17:30:53 +01:00
ia64*-*-linux*)
tmake_file="${tmake_file} ia64/t-fprules-softfp soft-fp/t-softfp"
;;
re PR target/36669 (Wrong versioning for __float128) gcc/ 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> PR target/36669 * config/libgcc-glibc.ver: Add %exclude. * config/m32r/libgcc-glibc.ver: Likwise. * config/s390/libgcc-glibc.ver: Likwise. * config/sh/libgcc-glibc.ver: Likwise. * config/sparc/libgcc-sparc-glibc.ver: Likwise. * config/i386/libgcc-glibc.ver: New. * config/i386/libgcc-x86_64-glibc.ver: Removed. 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> * config.gcc: Remove i386/t-fprules-softfp64 soft-fp/t-softfp from tmake_file from i[34567]86-*-darwin*, x86_64-*-darwin*, i[34567]86-*-linux*, x86_64-*-linux*. Add i386/t-fprules-softfp and soft-fp/t-softfp to tmake_file for i[34567]86-*-darwin*, x86_64-*-darwin*, i[34567]86-*-linux*, x86_64-*-linux*. Add i386/t-linux to tmake_file for i[34567]86-*-linux*, x86_64-*-linux*. * libgcc-std.ver: Add empty GCC_4.4.0. * mkmap-symver.awk: Support multiple versions per symbol. * config/i386/i386.c (ix86_init_builtins): Always define __builtin_fabsq and __builtin_copysignq with fallbacks. (ix86_expand_builtin): Emit normal call for __builtin_fabsq and __builtin_copysignq if SSE2 isn't available. * config/i386/linux.h (LIBGCC2_HAS_TF_MODE): Defined. (LIBGCC2_TF_CEXT): Likwise. (TF_SIZE): Likwise. * config/i386/linux64.h (LIBGCC2_HAS_TF_MODE): Defined as 1. * config/i386/sfp-machine.h: Moved to libgcc. * config/i386/sfp-machine.h: New. * config/i386/t-linux: Likwise. * config/i386/t-darwin: Remove softfp_wrap_start and softfp_wrap_end. * config/i386/t-darwin64: Likewise. * config/i386/t-fprules-softfp64: Renamed to ... * config/i386/t-fprules-softfp: This. * config/i386/t-linux64: Remove SHLIB_MAPFILES, softfp_wrap_start and softfp_wrap_end. libgcc/ 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> PR target/36669 * shared-object.mk ($(base)_s$(objext)): Add -DSHARED. * config/i386/64/_divtc3-compat.c: New. * config/i386/64/_multc3-compat.c: Likewise. * config/i386/64/_powitf2-compat.c: Likewise. * config/i386/64/eqtf2.c: Likewise. * config/i386/64/getf2.c: Likewise. * config/i386/64/letf2.c: Likewise. * config/i386/64/t-fprules-softfp: Likewise. 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> * config.host: Add i386/${host_address}/t-fprules-softfp to tmake_file for i[34567]86-*-darwin*, x86_64-*-darwin*, i[34567]86-*-linux*, x86_64-*-linux*. * configure.ac: Set host_address to 64 or 32 for x86. * configure: Regenerated. * Makefile.in (config.status): Also depend on $(srcdir)/config.host. * config/i386/32/t-fprules-softfp: New. * config/i386/32/tf-signs.c: Likewise. * config/i386/64/sfp-machine.h: New. Moved from gcc. 2008-07-02 H.J. Lu <hongjiu.lu@intel.com> Uros Bizjak <ubizjak@gmail.com> * config/i386/32/sfp-machine.h: New. Co-Authored-By: Uros Bizjak <ubizjak@gmail.com> From-SVN: r137369
2008-07-02 17:59:19 +02:00
mips*-*-*)
config.gcc (mips-*-*): Remove definitions of MASK_GAS and OBJECT_FORMAT_ELF. * config.gcc (mips-*-*): Remove definitions of MASK_GAS and OBJECT_FORMAT_ELF. Set MASK_SPLIT_ADDR by default if using GNU ld. * config/mips/mips.h (MASK_GAS): Delete. Shuffle later masks down. (TARGET_GAS, TARGET_MIPS_AS): Delete. (TARGET_GPWORD): Define to true for n32 on IRIX. (TARGET_SWITCHES): Remove -mmips-as. Turn -mgas into a no-op. (MIPS_AS_ASM_SPEC, SUBTARGET_MIPS_AS_ASM_SPEC): Delete. (GAS_ASM_SPEC): Delete, folding into ASM_SPEC. (ASM_ABI_DEFAULT_SPEC, TARGET_ASM_SPEC): Delete. (MDEBUG_ASM_SPEC): Delete, folding into... (SUBTARGET_ASM_DEBUGGING_SPEC): ...here. (ASM_SPEC): Inline old GAS_ASM_SPEC. Use GNU names for ABI switches. (EXTRA_SPECS): Remove mips_as_asm_spec, gas_asm_spec, target_asm_spec, subtarget_mips_as_asm_spec, mdebug_asm_spec. Use MULTILIB_ABI_DEFAULT to define asm_abi_default_spec. (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP): Delete. (TARGET_ASM_SELECT_SECTION): Delete. * config/mips/mips.c (MIPS_MAX_FIRST_STACK_STEP): Define to 0x7ff0 for non-mips16 code, removing previous workaround for SGI assemblers. (TARGET_ASM_INTEGER, mips_assemble_integer): Delete. (TARGET_ASM_ALIGNED_DI_OP): Define this instead. (override_options): Remove !TARGET_GAS and !have_named_sections code. (print_operand): Fold TARGET_GAS conditionals into asm strings. (mips_output_filename): Remove !TARGET_GAS code. Replace use of ASM_STABS_OP and ASM_STABN_OP. (mips_file_start): Remove TARGET_MIPS_AS/TARGET_GAS checks. (mips_output_aligned_decl_common): Remove mention of SGI o32 assembler. (mips_output_function_prologue): Remove !TARGET_GAS code. (mips_select_rtx_section): Remove !have_named_sections code. (mips_select_section): Delete. * config/mips/mips.md (trap): Remove !TARGET_GAS check. * config/mips/linux.h (TARGET_DEFAULT): Remove use of MASK_GAS. * config/mips/sdb.h (PUT_SDB_DEF, PUT_SDB_PLAIN_DEF): Delete. (PUT_SDB_BLOCK_START, PUT_SDB_BLOCK_END): Fold TARGET_GAS conditional. * config/mips/vxworks.h (ASM_SPEC): As for mips.h. * config/mips/windiss.h (ASM_SPEC): Likewise. testsuite/ * gcc.dg/special/mips-abi.exp: Expect gcc to pass the GNU ABI flags to the assembler. Simplify test accordingly. (asm_abi_flags): Use GNU names. (check_mips_abi, default_abi): Use string matches against "-mabi=*" to check for ABI flags. From-SVN: r86405
2004-08-23 08:53:46 +02:00
if test x$gnu_ld = xyes
then
config.gcc (mips*-*-*): Rename MASK_SPLIT_ADDRS to MASK_SPLIT_ADDRESSES. * config.gcc (mips*-*-*): Rename MASK_SPLIT_ADDRS to MASK_SPLIT_ADDRESSES. * config/mips/mips.h (target_flags, mips_fix_vr4130_string): Delete. (MASK_INT64, MASK_LONG64, MASK_SPLIT_ADDR, MASK_NO_FUSED_MADD) (MASK_EXPLICIT_RELOCS, MASK_MEMCPY, MASK_SOFT_FLOAT) (MASK_FLOAT64, MASK_ABICALLS, MASK_XGOT, MASK_LONG_CALLS) (MASK_64BIT, MASK_EMBEDDED_DATA, MASK_BIG_ENDIAN) (MASK_SINGLE_FLOAT, MASK_MAD, MASK_4300_MUL_FIX, MASK_MIPS16) (MASK_NO_CHECK_ZERO_DIV, MASK_BRANCHLIKELY) (MASK_UNINIT_CONST_IN_RODATA, MASK_FIX_R4000, MASK_FIX_R4400) (MASK_FIX_SB1, MASK_FIX_VR4120, MASK_VR4130_ALIGN) (MASK_FP_EXCEPTIONS, MASK_DIVIDE_BREAKS, MASK_PAIRED_SINGLE) (MASK_MIPS3D, MASK_SYM32, MASK_DEBUG, MASK_DEBUG_D) (MASK_MIPS_TFILE, TARGET_INT64, TARGET_LONG64, TARGET_FLOAT64) (TARGET_64BIT, TARGET_SPLIT_ADDRESSES, TARGET_DEBUG_MODE) (TARGET_DEBUG_D_MODE, TARGET_MEMCPY, TARGET_ABICALLS) (TARGET_XGOT, TARGET_SOFT_FLOAT, TARGET_HARD_FLOAT) (TARGET_LONG_CALLS, TARGET_EMBEDDED_DATA) (TARGET_UNINIT_CONST_IN_RODATA, TARGET_BIG_ENDIAN) (TARGET_SINGLE_FLOAT, TARGET_DOUBLE_FLOAT, TARGET_MAD) (TARGET_FUSED_MADD, TARGET_4300_MUL_FIX, TARGET_CHECK_ZERO_DIV) (TARGET_DIVIDE_TRAPS, TARGET_BRANCHLIKELY, TARGET_FIX_SB1) (TARGET_FIX_R4000, TARGET_FIX_R4400, TARGET_FIX_VR4120) (TARGET_FIX_VR4130, TARGET_VR4130_ALIGN, TARGET_FP_EXCEPTIONS) (TARGET_PAIRED_SINGLE_FLOAT, TARGET_MIPS3D, TARGET_SYM32) (TARGET_EXPLICIT_RELOCS): Delete. (TARGET_SWITCHES, SUBTARGET_TARGET_SWITCHES): Delete. (TARGET_OPTIONS): Remove entry for -mfix-vr4130. * config/mips/mips.c (TARGET_DEFAULT_TARGET_FLAGS): Define. (override_options): Set MASK_LONG64 if -mint64 is given and no -mlongXX option is. Complain about -mint64 -mlong32. (override_options, CMP_BUILTINS, mips_bdesc, sb1_desc): Rename MASK_PAIRED_SINGLE to MASK_PAIRED_SINGLE_FLOAT. * config/mips/mips.opt: New file. From-SVN: r96452
2005-03-14 21:40:57 +01:00
target_cpu_default2="MASK_SPLIT_ADDRESSES"
config.gcc (mips-*-*): Remove definitions of MASK_GAS and OBJECT_FORMAT_ELF. * config.gcc (mips-*-*): Remove definitions of MASK_GAS and OBJECT_FORMAT_ELF. Set MASK_SPLIT_ADDR by default if using GNU ld. * config/mips/mips.h (MASK_GAS): Delete. Shuffle later masks down. (TARGET_GAS, TARGET_MIPS_AS): Delete. (TARGET_GPWORD): Define to true for n32 on IRIX. (TARGET_SWITCHES): Remove -mmips-as. Turn -mgas into a no-op. (MIPS_AS_ASM_SPEC, SUBTARGET_MIPS_AS_ASM_SPEC): Delete. (GAS_ASM_SPEC): Delete, folding into ASM_SPEC. (ASM_ABI_DEFAULT_SPEC, TARGET_ASM_SPEC): Delete. (MDEBUG_ASM_SPEC): Delete, folding into... (SUBTARGET_ASM_DEBUGGING_SPEC): ...here. (ASM_SPEC): Inline old GAS_ASM_SPEC. Use GNU names for ABI switches. (EXTRA_SPECS): Remove mips_as_asm_spec, gas_asm_spec, target_asm_spec, subtarget_mips_as_asm_spec, mdebug_asm_spec. Use MULTILIB_ABI_DEFAULT to define asm_abi_default_spec. (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP): Delete. (TARGET_ASM_SELECT_SECTION): Delete. * config/mips/mips.c (MIPS_MAX_FIRST_STACK_STEP): Define to 0x7ff0 for non-mips16 code, removing previous workaround for SGI assemblers. (TARGET_ASM_INTEGER, mips_assemble_integer): Delete. (TARGET_ASM_ALIGNED_DI_OP): Define this instead. (override_options): Remove !TARGET_GAS and !have_named_sections code. (print_operand): Fold TARGET_GAS conditionals into asm strings. (mips_output_filename): Remove !TARGET_GAS code. Replace use of ASM_STABS_OP and ASM_STABN_OP. (mips_file_start): Remove TARGET_MIPS_AS/TARGET_GAS checks. (mips_output_aligned_decl_common): Remove mention of SGI o32 assembler. (mips_output_function_prologue): Remove !TARGET_GAS code. (mips_select_rtx_section): Remove !have_named_sections code. (mips_select_section): Delete. * config/mips/mips.md (trap): Remove !TARGET_GAS check. * config/mips/linux.h (TARGET_DEFAULT): Remove use of MASK_GAS. * config/mips/sdb.h (PUT_SDB_DEF, PUT_SDB_PLAIN_DEF): Delete. (PUT_SDB_BLOCK_START, PUT_SDB_BLOCK_END): Fold TARGET_GAS conditional. * config/mips/vxworks.h (ASM_SPEC): As for mips.h. * config/mips/windiss.h (ASM_SPEC): Likewise. testsuite/ * gcc.dg/special/mips-abi.exp: Expect gcc to pass the GNU ABI flags to the assembler. Simplify test accordingly. (asm_abi_flags): Use GNU names. (check_mips_abi, default_abi): Use string matches against "-mabi=*" to check for ABI flags. From-SVN: r86405
2004-08-23 08:53:46 +02:00
fi
case ${target} in
mips*el-*-*)
tm_defines="TARGET_ENDIAN_DEFAULT=0 $tm_defines"
;;
esac
if test "x$enable_gofast" = xyes
then
target.h (init_libfuncs): New hook. * target.h (init_libfuncs): New hook. * target-def.h: Default TARGET_INIT_BUILTINS and TARGET_INIT_LIBFUNCS to hook_void_void. Add TARGET_INIT_LIBFUNCS to TARGET_INITIALIZER. * builtins.c (default_init_builtins): Delete. * expr.h (default_init_builtins): Delete prototype. * doc/tm.texi: Document TARGET_INIT_LIBFUNCS and US_SOFTWARE_GOFAST. Tweak documentation of TARGET_FLOAT_LIB_COMPARE_RETURNS_BOOL. Remove documentation of INIT_TARGET_OPTABS, MULSI3_LIBCALL, DIVSI3_LIBCALL, UDIVSI3_LIBCALL, MODSI3_LIBCALL, UMODSI3_LIBCALL, MULDI3_LIBCALL, DIVDI3_LIBCALL, UDIVDI3_LIBCALL, MODDI3_LIBCALL, and UMODDI3_LIBCALL, * Makefile.in (optabs.o): Depends on target.h. * defaults.h: Provide default for FLOAT_LIB_COMPARE_RETURNS_BOOL. * optabs.c: Include target.h. (prepare_float_lib_cmp): No need for #ifdef around use of FLOAT_LIB_COMPARE_RETURNS_BOOL. (set_optab_libfunc): New function. (init_optabs): Delete use of all *_LIBCALL defines. Call targetm.init_libfuncs not INIT_TARGET_OPTABS. * optabs.h: Prototype set_optab_libfunc. * config.gcc: Remove all references to pa/long_double.h, ia64/hpux_longdouble.h, and gofast.h. (mips-*-*): When --enable-gofast, just add US_SOFTWARE_GOFAST to tm_defines; don't set INIT_SUBTARGET_OPTABS or change tm_file. * config/alpha/alpha.c, config/c4x/c4x.c, config/cris/cris.c * config/frv/frv.c, config/h8300/h8300.c, config/i860/i860.c * config/ia64/ia64.c, config/ip2k/ip2k.c, config/m68hc11/m68hc11.c * config/mips/mips.c, config/pa/pa.c, config/rs6000/rs6000.c * config/sparc/sparc.c, config/vax/vax.c: Provide a definition for TARGET_INIT_LIBFUNCS. Where necessary, include optabs.h, libfuncs.h, and/or config/gofast.h. * config/alpha/unicosmk.h, config/alpha/vms.h, config/c4x/c4x.h * config/avr/avr.h, config/cris/cris.h, config/frv/frv.h * config/h8300/h8300.h, config/i860/i860.h, config/ip2k/ip2k.h * config/iq2000/iq2000.h, config/m68hc11/m68hc11.h, config/mips/mips.h * config/rs6000/aix.h, config/rs6000/sysv4.h, config/sparc/elf.h * config/sparc/lite.h, config/sparc/netbsd-elf.h, config/sparc/sol2.h * config/sparc/sparc.h, config/v850/v850.h, config/vax/vax.h * config/vax/elf.h: Don't define or use INIT_TARGET_OPTABS, INIT_SUBTARGET_OPTABS, or any *_LIBCALL macros. * config/ia64/hpux.h: Redefine INTEL_EXTENDED_IEEE_FORMAT to 0. Set TARGET_INIT_LIBFUNCS and FLOAT_LIB_COMPARE_RETURNS_BOOL here. * config/pa/pa-hpux.h: Define LONG_DOUBLE_TYPE_SIZE, HPUX_LONG_DOUBLE_LIBRARY, and FLOAT_LIB_COMPARE_RETURNS_BOOL here. * config/ia64/hpux_longdouble.h, config/pa/long_double.h: Delete. * config/rs6000/xcoff.h: Don't define RS6000_ITRUNC nor RS6000_UITRUNC. * config/sparc/sparc.h: Default SUN_CONVERSION_LIBFUNCS and SUN_INTEGER_MULTIPLY_64 to 0. * config/sparc/sol2.h: Redefine SUN_CONVERSION_LIBFUNCS and SUN_INTEGER_MULTIPLY_64 to 1. * config/sparc/elf.h: Redefine SUN_CONVERSION_LIBFUNCS and SUN_INTEGER_MULTIPLY_64 to 0. * config/sparc/lite.h, config/sparc/liteelf.h, config/sparc/sp86x-elf.h: Define US_SOFTWARE_GOFAST. * config/vax/vax.h: Default TARGET_ELF to 0. * config/vax/elf.h: Redefine TARGET_ELF to 1. * config/gofast.h: Don't define any macros here. Provide one static function, gofast_maybe_init_libfuncs, which does what INIT_GOFAST_LIBFUNCS used to do but only if US_SOFTWARE_GOFAST is already defined. Do not clear negation libfuncs. Do not mess with HFmode, XFmode, or TFmode libfuncs. * config/avr/avr.c (avr_init_once): #if 0 out; mark FIXME. From-SVN: r72009
2003-10-02 02:44:29 +02:00
tm_defines="US_SOFTWARE_GOFAST $tm_defines"
tmake_file="mips/t-gofast $tmake_file"
else
tmake_file="mips/t-mips $tmake_file"
fi
;;
powerpc*-*-* | rs6000-*-*)
# FIXME: The PowerPC port uses the value set at compile time,
# although it's only cosmetic.
if test "x$with_cpu" != x
then
target_cpu_default2="\\\"$with_cpu\\\""
fi
out_file=rs6000/rs6000.c
c_target_objs="${c_target_objs} rs6000-c.o"
cxx_target_objs="${cxx_target_objs} rs6000-c.o"
tmake_file="rs6000/t-rs6000 ${tmake_file}"
if test x$enable_e500_double = xyes
then
tm_file="$tm_file rs6000/e500-double.h"
fi
;;
re PR target/14798 (In case of SH target with -O2 option #pragma interrupt doesn't get resetted.) PR target/14798: gcc: * sh.c (pragma_interrupt, trap_exit, sp_switch): Remove variable. (pragma_trap, pragma_nosave_low_regs): Likewise. (current_function_anonymous_args): Likewise. (sh_deferred_function_attributes): New variable. (sh_deferred_function_attributes_tail): Likewise. (print_operand): For '@', look up trap_exit attribute. (calc_live_regs): Look up trapa_handler attribute. For trapa handlers, save/restore fpscr, but don't do any other interrupt-specific saves. Don't save r0..r7 if the nosave_low_regs attribute is in effect. Fix check for partially saved registers to check for SHmedia. (sh_expand_prologue, sh_expand_epilogue): Look up sp_switch attribute. (sh_output_function_epilogue): Don't clear any of the removed variables. (sh_insert_attributes): Don't check pragma_interrupt. Insert deferred attributes. Check that interrupt attribute is present for other attributes that require its presence. (sh_attribute_table): Add new attributes trapa_handler and nosave_low_regs. (sh_handle_sp_switch_attribute, sh_handle_trap_exit_attribute): Don't check for pragma_interrupt. Don't store argument. * sh.h (pragma_interrupt, sp_switch): Don't declare. (sh_deferred_function_attributes): Declare. (sh_deferred_function_attributes_tail): Likewise. * sh.md (sp_switch_1): Add operand. Change generator caller. (sh_pr_interrupt, sh_pr_trapa, sh_pr_nosave_low_regs): Remove. (*return_i): Don't use when trap_exit attribute is in effect. (*return_trapa): New insn pattern. * sh-c.c: New file. * config.gcc (sh[123456ble]*-* | sh-*-*): New trailer stanza, setting c_target_objs and cxx_target_objs. * t-sh: Add rule for sh-c.o. gcc/testsuite: * gcc.dg/pragma-isr.c: Added target sh[1234ble]*-*-*. * gcc.dg/pragma-isr2.c, gcc.dg/pragma-isr-trapa.c: New tests. * gcc.dg/pragma-isr-trapa2.c: Likewise. * gcc.dg/pragma-isr-nosave_low_regs.c: Likewise. * gcc.dg/pragma-isr-trap_exit.c: Likewise. * gcc.dg/attr-isr.c, gcc.dg/attr-isr-trapa.c: Likewise. * gcc.dg/attr-isr-trap_exit.c: Likewise. * gcc.dg/attr-isr-nosave_low_regs.c: Likewise. From-SVN: r110398
2006-01-30 16:07:43 +01:00
sh[123456ble]*-*-* | sh-*-*)
c_target_objs="${c_target_objs} sh-c.o"
cxx_target_objs="${cxx_target_objs} sh-c.o"
;;
sparc*-*-*)
# Some standard aliases.
case x$with_cpu in
xsparc)
with_cpu=v7
;;
xsparcv9 | xsparc64)
with_cpu=v9
;;
esac
# The SPARC port checks this value at compile-time.
target_cpu_default2="TARGET_CPU_$with_cpu"
;;
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)
target_cpu_default2="TARGET_CPU_$with_cpu"
;;
esac
;;
esac
t=
install.texi (--with-mips-plt): Document. gcc/ 2008-08-17 Daniel Jacobowitz <dan@codesourcery.com> Richard Sandiford <rdsandiford@googlemail.com> * doc/install.texi (--with-mips-plt): Document. * doc/invoke.texi (-mplt, -mno-plt): Document. * config.gcc (mips*-*-*): Add mips-plt to supported_defaults and handle ${with_mips_plt}. * config/mips/mips.opt (mplt): New option. * config/mips/mips.h (TARGET_ABICALLS_PIC0): New macro. (TARGET_ABICALLS_PIC2): Likewise. (TARGET_GPWORD): Return false for TARGET_ABSOLUTE_ABICALLS. (OPTION_DEFAULT_SPECS): Add a mips-plt entry. (ASM_SPEC): Use !mabi=* instead of !mabi*. (MIPS_CALL): Use TARGET_ABICALLS_PIC2 instead of TARGET_ABICALLS to decide whether to output ".option picX" directives. * config/mips/linux.h (SUBTARGET_ASM_SPEC): Remove -mabi=64 handling. Pass -call_nonpic rather than -KPIC for -mplt. (BASE_DRIVER_SELF_SPECS): Remove -mplt if -mno-shared is not present on the command line. Also remove it when -mabi=64 is used without -msym32. * config/mips/linux64.h (SUBTARGET_ASM_SPEC): Delete. * config/mips/mips.c (mips_use_pic_fn_addr_reg_p): Handle TARGET_ABICALLS_PIC0. (mips_classify_symbol): Use TARGET_ABICALLS_PIC2 instead of TARGET_ABICALLS. (mips16_build_function_stub): Only output ".option pic" directives and PIC stubs if TARGET_ABICALLS_PIC2. Call through $25 instead of $1. (mips16_build_call_stub): Fix comment and remove redundant ".set at"/"set .noat" directives. (mips_function_rodata_section): Use the default behaviour for TARGET_ABSOLUTE_ABICALLS. (mips_file_start): Emit ".option pic0" for TARGET_ABICALLS_PIC0. (mips_global_pointer): Handle TARGET_ABICALLS_PIC0. (mips_restore_gp): Do nothing if the current function doesn't use a global pointer. (mips_expand_prologue): Only save $gp if the current function uses it. Use a normal move for TARGET_ABICALLS_PIC0. (mips_override_options): Only set flag_pic if TARGET_ABICALLS_PIC2. Co-Authored-By: Richard Sandiford <rdsandiford@googlemail.com> From-SVN: r139170
2008-08-17 12:48:46 +02:00
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"
for option in $all_defaults
do
install.texi (--with-mips-plt): Document. gcc/ 2008-08-17 Daniel Jacobowitz <dan@codesourcery.com> Richard Sandiford <rdsandiford@googlemail.com> * doc/install.texi (--with-mips-plt): Document. * doc/invoke.texi (-mplt, -mno-plt): Document. * config.gcc (mips*-*-*): Add mips-plt to supported_defaults and handle ${with_mips_plt}. * config/mips/mips.opt (mplt): New option. * config/mips/mips.h (TARGET_ABICALLS_PIC0): New macro. (TARGET_ABICALLS_PIC2): Likewise. (TARGET_GPWORD): Return false for TARGET_ABSOLUTE_ABICALLS. (OPTION_DEFAULT_SPECS): Add a mips-plt entry. (ASM_SPEC): Use !mabi=* instead of !mabi*. (MIPS_CALL): Use TARGET_ABICALLS_PIC2 instead of TARGET_ABICALLS to decide whether to output ".option picX" directives. * config/mips/linux.h (SUBTARGET_ASM_SPEC): Remove -mabi=64 handling. Pass -call_nonpic rather than -KPIC for -mplt. (BASE_DRIVER_SELF_SPECS): Remove -mplt if -mno-shared is not present on the command line. Also remove it when -mabi=64 is used without -msym32. * config/mips/linux64.h (SUBTARGET_ASM_SPEC): Delete. * config/mips/mips.c (mips_use_pic_fn_addr_reg_p): Handle TARGET_ABICALLS_PIC0. (mips_classify_symbol): Use TARGET_ABICALLS_PIC2 instead of TARGET_ABICALLS. (mips16_build_function_stub): Only output ".option pic" directives and PIC stubs if TARGET_ABICALLS_PIC2. Call through $25 instead of $1. (mips16_build_call_stub): Fix comment and remove redundant ".set at"/"set .noat" directives. (mips_function_rodata_section): Use the default behaviour for TARGET_ABSOLUTE_ABICALLS. (mips_file_start): Emit ".option pic0" for TARGET_ABICALLS_PIC0. (mips_global_pointer): Handle TARGET_ABICALLS_PIC0. (mips_restore_gp): Do nothing if the current function doesn't use a global pointer. (mips_expand_prologue): Only save $gp if the current function uses it. Use a normal move for TARGET_ABICALLS_PIC0. (mips_override_options): Only set flag_pic if TARGET_ABICALLS_PIC2. Co-Authored-By: Richard Sandiford <rdsandiford@googlemail.com> From-SVN: r139170
2008-08-17 12:48:46 +02:00
eval "val=\$with_"`echo $option | sed s/-/_/g`
if test -n "$val"; then
case " $supported_defaults " in
*" $option "*)
;;
*)
echo "This target does not support --with-$option." 2>&1
echo "Valid --with options are: $supported_defaults" 2>&1
exit 1
;;
esac
if test "x$t" = x
then
t="{ \"$option\", \"$val\" }"
else
t="${t}, { \"$option\", \"$val\" }"
fi
fi
done
if test "x$t" = x
then
configure_default_options="{ { NULL, NULL} }"
else
configure_default_options="{ ${t} }"
fi
if test "$target_cpu_default2" != ""
then
if test "$target_cpu_default" != ""
then
target_cpu_default="(${target_cpu_default}|${target_cpu_default2})"
else
target_cpu_default=$target_cpu_default2
fi
fi