Go to file
Julian Brown f1adb0a9f4 config.gcc (with_fpu): Allow --with-fpu=vfp3.
gcc/
	* config.gcc (with_fpu): Allow --with-fpu=vfp3.
	* config/arm/aout.h (REGISTER_NAMES): Add D16-D31.
	* config/arm/aof.h (REGISTER_NAMES): Add D16-D31.
	* config/arm/arm.c (FL_VFPV3): New flag for VFPv3 processor
	capability.
	(all_fpus): Add FPUTYPE_VFP3.
	(fp_model_for_fpu): Add VFPv3 field.
	(arm_rtx_costs_1): Give cost to VFPv3 constants.
	(vfp3_const_double_index): New function. Return integer index of
	VFPv3 constant suitable for fconst[sd] insns, or -1 if constant
	isn't suitable.
	(vfp3_const_double_rtx): New function. True if VFPv3 is enabled
	and argument represents a valid RTX for a VFPv3 constant.
	(vfp_output_fldmd): Split fldmd with > 16 registers in the list into
	two instructions.
	(vfp_emit_fstmd): Similar, for fstmd.
	(arm_print_operand): Implement new code 'G' for VFPv3 floating-point
	constants, represented as integer indices.
	(arm_hard_regno_mode_ok): Use VFP_REGNO_OK_FOR_SINGLE,
	VFP_REGNO_OK_FOR_DOUBLE macros.
	(arm_regno_class): Handle VFPv3 d0-d7, low, high register split.
	(arm_file_start): Set float-abi attribute for VFPv3, and output
	correct ".fpu" assembler directive.
	(arm_dbx_register_numbering): Add FIXME.
	* config/arm/arm.h (TARGET_VFP3): New macro. Target supports VFPv3.
	(fputype): Add FPUTYPE_VFP3.
	(FIXED_REGISTERS): Add 32 registers for D16-D31.
	(CALL_USED_REGISTERS): Likewise.
	(CONDITIONAL_REGISTER_USAGE): Add note about conditional definition
	of LAST_VFP_REGNUM. Make D16-D31 caller-saved, if present.
	(LAST_VFP_REGNUM): Extend available VFP registers for VFPv3.
	(D7_VFP_REGNUM): New.
	(LAST_LO_VFP_REGNUM, FIRST_HI_VFP_REGNUM, LAST_HI_VFP_REGNUM)
	(VFP_REGNO_OK_FOR_SINGLE, VFP_REGNO_OK_FOR_SINGLE)
	(VFP_REGNO_OK_FOR_DOUBLE): Define new macros.
	(FIRST_PSEUDO_REGISTER): Shift up to 128 to accommodate VFPv3.
	(REG_ALLOC_ORDER): Adjust for VFPv3.
	(reg_class): Add VFP_D0_D7_REGS, VFP_LO_REGS, VFP_HI_REGS.
	(REG_CLASS_NAMES): Add entries corresponding to VFP_D0_D7_REGS,
	VFP_LO_REGS, VFP_HI_REGS.
	(REG_CLASS_CONTENTS): Likewise. Extend contents for VFP_REGS.
	(IS_VFP_CLASS): Define macro.
	(SECONDARY_OUTPUT_RELOAD_CLASS, SECONDARY_INPUT_RELOAD_CLASS): Use
	IS_VFP_CLASS.
	(REGISTER_MOVE_COST): Likewise.
	* config/arm/arm-protos.h (vfp3_const_double_rtx): Add prototype.
	* config/arm/vfp.md (VFPCC_REGNUM): Redefine as 127.
	(*arm_movsi_vfp, *thumb2_movsi_vfp, *movsfcc_vfp)
	(*thumb2_movsfcc_vfp, *abssf2_vfp, *negsf2_vfp, *addsf3_vfp)
	(*subsf3_vfp, *divsf_vfp, *mulsf_vfp, *mulsf3negsf_vfp)
	(*mulsf3addsf_vfp, *mulsf3subsf_vfp, *mulsf3negsfaddsf_vfp)
	(*extendsfdf2_vfp, *truncdfsf2_vfp, *truncsisf2_vfp)
	(*truncsidf2_vfp, fixuns_truncsfsi2, fixuns_truncdfsi2)
	(*floatsisf2_vfp, *floatsidf2_vfp, floatunssisf2)
	(floatunssidf2, *sqrtsf2_vfp, *cmpsf_split_vfp)
	(*cmpsf_trap_split_vfp, *cmpsf_vfp, *cmpsf_trap_vfp): Use 't'
	where appropriate for single-word registers.
	(*movsf_vfp, *thumb2_movsf_vfp, *movdf_vfp, *thumb2_movdf_vfp):
	As above. Fix type attributes.
	* config/arm/constraints.md (register_contraint "t"): Define.
	(register_constraint "w"): Change to D0-D15, or D0-D31 for
	VFPv3/NEON.
	(register_constraint "x"): Define.
	(constraint "Dv"): Define.

From-SVN: r126272
2007-07-03 19:42:36 +00:00
boehm-gc re PR boehm-gc/21940 (boehm-gc gctest fails on Solaris 10/x86) 2007-07-02 14:56:58 +00:00
config acx.m4 (ACX_CHECK_INSTALLED_TARGET_TOOL): Fixup logic for cross builds. 2007-06-27 19:53:03 +00:00
contrib gcc_update (files_and_dependencies): Handle gcc/testsuite/gcc.dg/cpp/direct2s.c. 2007-06-30 17:17:14 +00:00
fixincludes re PR testsuite/31828 (FAIL: gcc.dg/float-range-[3-5].c (test for excess errors)) 2007-06-06 17:48:03 +00:00
gcc config.gcc (with_fpu): Allow --with-fpu=vfp3. 2007-07-03 19:42:36 +00:00
gnattools configure.ac: Update TOOLS_TARGET_PAIRS configuration to match gcc/ada/Makefile.in. 2007-06-06 15:18:52 +02:00
include libiberty.h (writeargv): Declare. 2007-05-08 00:37:39 +00:00
INSTALL README: Update wrt. 2001-06-13 14:51:33 +00:00
intl Makefile.in (distclean): Delete config files. 2006-09-27 18:51:52 +09:30
libada * Makefile.in: Add dummy install-pdf target. 2007-03-01 16:05:13 -08:00
libcpp cpplib.h (CPP_N_WIDTH_MD, [...]): Add new constants. 2007-07-03 07:53:58 +02:00
libdecnumber configure.ac: Add AC_CANONICAL_TARGET. 2007-06-18 07:32:14 -07:00
libffi configure: Regenerate. 2007-06-02 08:18:15 +00:00
libgcc config.host (*-cygwin* |*-mingw* ): Add crtbegin.o, crtend.o to extra_parts. 2007-06-14 02:38:37 +00:00
libgfortran Fortran frontend: 2007-07-03 19:50:05 +03:00
libgomp re PR libgomp/32468 (number of threads in a parallel region depends on number of SECTIONs and MAX_THREADS) 2007-07-02 21:19:28 +02:00
libiberty argv.c (writeargv): Removed declaration of unused variable. 2007-07-02 17:25:37 +00:00
libjava re PR libgcj/30513 (Bootstrap failure with libgcj on sparc-sun-solaris2.10) 2007-07-02 14:48:28 +00:00
libmudflap configure: Regenerate. 2007-06-02 08:18:15 +00:00
libobjc configure.ac: Fix a typo in *-*-darwin clause. 2007-06-03 13:38:37 -07:00
libssp configure: Regenerate. 2007-06-02 08:18:15 +00:00
libstdc++-v3 typedefs_neg.cc: Tweak line numbers. 2007-07-02 13:11:13 +00:00
maintainer-scripts * gcc_release: Update for Objective-C++. 2007-06-28 19:16:02 +00:00
zlib configure: Regenerate. 2007-06-02 08:18:15 +00:00
ABOUT-NLS
ChangeLog MAINTAINERS (Write After Approval): Add myself. 2007-07-03 15:03:28 +00:00
ChangeLog.tree-ssa Merge tree-ssa-20020619-branch into mainline. 2004-05-13 02:41:07 -04:00
compile COPYING, [...]: Sync from upstream sources. 2005-07-14 01:08:13 +00:00
config-ml.in * config-ml.in: Pass ${ml_config_env} to configure calls. 2007-04-14 19:48:36 +00:00
config.guess * config.sub, config.guess: Update from upstream sources. 2007-06-07 09:23:20 +10:00
config.rpath all files: Update FSF address. 2005-07-16 02:30:53 +00:00
config.sub * config.sub, config.guess: Update from upstream sources. 2007-06-07 09:23:20 +10:00
configure configure.ac: Rewrite 'configure --help' strings to look nicer. 2007-07-03 09:06:26 +02:00
configure.ac configure.ac: Rewrite 'configure --help' strings to look nicer. 2007-07-03 09:06:26 +02:00
COPYING COPYING, [...]: Sync from upstream sources. 2005-07-14 01:08:13 +00:00
COPYING.LIB Update COPYING.LIB from upstream. Correct last Changelog. 2005-07-14 01:41:54 +00:00
depcomp top level: 2005-06-13 08:26:05 +00:00
install-sh COPYING, [...]: Sync from upstream sources. 2005-07-14 01:08:13 +00:00
libtool-ldflags libtool-ldflags: New script. 2006-01-03 00:30:27 +00:00
libtool.m4 libtool.m4 (LT_CMD_MAX_LEN): Try using getconf to set lt_cv_sys_max_cmd_len. 2007-06-01 11:32:07 +00:00
ltgcc.m4 [multiple changes] 2007-05-31 06:40:42 +00:00
ltmain.sh ltmain.sh: Fix Darwin verstring, remove ${wl}. 2007-05-25 21:26:27 +02:00
ltoptions.m4 ltmain.sh: Update from ToT Libtool. 2007-05-24 16:37:27 +00:00
ltsugar.m4 ltmain.sh: Update from ToT Libtool. 2007-05-24 16:37:27 +00:00
ltversion.m4 ltmain.sh: Update from ToT Libtool. 2007-05-24 16:37:27 +00:00
MAINTAINERS MAINTAINERS (Write After Approval): Add myself. 2007-07-03 15:03:28 +00:00
Makefile.def Makefile.def: Add windmc tool to build. 2007-07-02 08:19:12 +00:00
Makefile.in Makefile.def: Add windmc tool to build. 2007-07-02 08:19:12 +00:00
Makefile.tpl Makefile.def: Add windmc tool to build. 2007-07-02 08:19:12 +00:00
missing COPYING, [...]: Sync from upstream sources. 2005-07-14 01:08:13 +00:00
mkdep merge with /cvs/src 2000-07-22 04:08:22 -04:00
mkinstalldirs COPYING, [...]: Sync from upstream sources. 2005-07-14 01:08:13 +00:00
move-if-change Import from Autoconf sources: 2005-11-21 13:21:37 +11:00
README
README.SCO * README.SCO: Update the URL. 2005-05-08 17:49:46 +00:00
symlink-tree COPYING, [...]: Sync from upstream sources. 2005-07-14 01:08:13 +00:00
ylwrap COPYING, [...]: Sync from upstream sources. 2005-07-14 01:08:13 +00:00

This directory contains the GNU Compiler Collection (GCC).

The GNU Compiler Collection is free software.  See the file COPYING
for copying permission.  The manuals, and some of the runtime
libraries, are under different terms; see the individual source files
for details.

The directory INSTALL contains copies of the installation information
as HTML and plain text.  The source of this information is
gcc/doc/install.texi.  The installation information includes details
of what is included in the GCC sources and what files GCC installs.

See the file gcc/doc/gcc.texi (together with other files that it
includes) for usage and porting information.  An online readable
version of the manual is in the files gcc/doc/gcc.info*.

See http://gcc.gnu.org/bugs.html for how to report bugs usefully.