freebsd-dev/gnu/usr.bin/cc
Juli Mallett 5619a3e4bf Add/improve mips64r2, Octeon, n32 and n64 support in the toolchain.
o) Add TARGET_ABI to the MIPS toolchain build process.  This sets the default
   ABI to one of o32, n32 or n64.  If it is not set, o32 is assumed as that is
   the current default.
o) Set the default GCC cpu type to any specified TARGET_CPUTYPE.  This is
   necessary to have a working "cc" if e.g. mips64 is specified, as binutils
   will refuse to link objects using different ISAs in some cases.
o) Add support for n32 and n64 ABIs to binutils and GCC.
o) Add additional required libgcc2 stubs for n32 and n64.
o) Add support for the "mips64r2" architecture to GCC.  Add the "octeon"
o) When static linking, wrap default libraries in --start-group and
   --end-group.  This is required for static linking to work on n64 with the
   interdependencies between libraries there.  This is what other OSes that
   support n64 seem to do, as well.
o) Fix our GCC spec to define __mips64 for 64-bit targets, not __mips64__, the
   former being what libgcc, etc., check and the latter seemingly being a
   misspelling of a hand merge from a Linux spec.
o) When no TARGET_CPUTYPE is specified at build time, make GCC take the default
   ISA from the ABI.  Our old defaults were too liberal and assumed that 64-bit
   ABIs should default to the MIPS64 ISA and that 32-bit ABIs should default to
   the MIPS32 ISA, when we are supporting or will support some systems based on
   earlier 32-bit and 64-bit ISAs, most notably MIPS-III.
o) Merge a new opcode file (and support code) from a later version of binutils
   and add flags and code necessary to support Octeon-specific instructions.
   This should also make merging opcodes for other modern architectures easier.

Reviewed by:	imp
2010-06-02 11:06:03 +00:00
..
c++ Update bmake glue to build GCC 4.2. 2007-05-19 04:25:59 +00:00
c++filt Update bmake glue to build GCC 4.2. 2007-05-19 04:25:59 +00:00
cc Update bmake glue to build GCC 4.2. 2007-05-19 04:25:59 +00:00
cc1 Update bmake glue to build GCC 4.2. 2007-05-19 04:25:59 +00:00
cc1obj Update bmake glue to build GCC 4.2. 2007-05-19 04:25:59 +00:00
cc1plus Update bmake glue to build GCC 4.2. 2007-05-19 04:25:59 +00:00
cc_int Make gcc default to big endian when building it for a big endian target. 2007-09-18 23:34:42 +00:00
cc_tools Non-GCC gcc compatible compilers may provide the same multimedia intrinsic 2010-05-12 19:59:32 +00:00
collect2 Start the dreaded NOFOO -> NO_FOO conversion. 2004-12-21 08:47:35 +00:00
cpp Update bmake glue to build GCC 4.2. 2007-05-19 04:25:59 +00:00
doc Update bmake glue to build GCC 4.2. 2007-05-19 04:25:59 +00:00
f77 Minor Makefile cleanup. Do not use Makefile variables named 'version' and 2007-03-12 00:28:06 +00:00
f77doc Fixed build. 2003-07-01 14:46:26 +00:00
f771 Start the dreaded NOFOO -> NO_FOO conversion. 2004-12-21 08:47:35 +00:00
gcov Update bmake glue to build GCC 4.2. 2007-05-19 04:25:59 +00:00
include Non-GCC gcc compatible compilers may provide the same multimedia intrinsic 2010-05-12 19:59:32 +00:00
libcpp Update bmake glue to build GCC 4.2. 2007-05-19 04:25:59 +00:00
libdecnumber Update bmake glue to build GCC 4.2. 2007-05-19 04:25:59 +00:00
libiberty Add strndup(3) prototype to string.h. 2008-12-08 21:04:24 +00:00
protoize Start the dreaded NOFOO -> NO_FOO conversion. 2004-12-21 08:47:35 +00:00
Makefile Update bmake glue to build GCC 4.2. 2007-05-19 04:25:59 +00:00
Makefile.fe Update bmake glue to build GCC 4.2. 2007-05-19 04:25:59 +00:00
Makefile.inc Add/improve mips64r2, Octeon, n32 and n64 support in the toolchain. 2010-06-02 11:06:03 +00:00
Makefile.tgt Back-merge (by hand) r195668: 2010-01-08 23:02:17 +00:00
Makefile.ver Update bmake glue to build GCC 4.2. 2007-05-19 04:25:59 +00:00