Go to file
Jon Grimm 9a8ce21f3b target-def.h (TARGET_DECIMAL_FLOAT_SUPPORTED_P): New.
2005-12-16  Jon Grimm  <jgrimm2@us.ibm.com>
	    Janis Johnson  <janis187@us.ibm.com>
	    Ben Elliston  <bje@au.ibm.com>

	* target-def.h (TARGET_DECIMAL_FLOAT_SUPPORTED_P): New.
	(TARGET_INITIALIZER): Add TARGET_DECIMAL_FLOAT_P.
	* target.h (struct gcc_target): Add decimal_float_supported_p.
	* targhooks.c (default_scalar_mode_supported_p): Handle
	MODE_DECIMAL_FLOAT.
	* builtins.def: Add new builtins for 32, 64 and 128 bit variants
	of inf, nan, finite, isinf and isnan.
	* builtin-types.def (BT_DFLOAT32, BT_DFLOAT64, BT_DFLOAT128,
	BT_DFLOAT32_PTR, BT_DFLOAT64_PTR, BT_DFLOAT128_PTR,
	BT_FN_DFLOAT32, BT_FN_DFLOAT64, BT_FN_DFLOAT128,
	BT_FN_INT_DFLOAT32, BT_FN_INT_DFLOAT64, BT_FN_INT_DFLOAT128,
	BT_FN_DFLOAT32_CONST_STRING, BT_FN_DFLOAT64_CONST_STRING,
	BT_FN_DFLOAT32_CONST_STRING, BT_FN_DFLOAT32_DFLOAT32,
	BT_FN_DFLOAT64_DFLOAT64, BT_FN_DFLOAT128_DFLOAT128): New.
	* c-decl.c (declspecs_add_type): Verify combos on type qualifiers.
	Pedwarn if decimal floating point types are used.  Error if
	decimal floating point is not supported by the target.
	(finish_declspecs): Return type from DFP typespec_word.
	* c-typeck.c (c_common_type): Choose the decimal floating point
	type with the greater precision when determining a common type.
	(convert_arguments): Warn if there is a mismatch between argument
	and prototype for decimal float types.  Warn of conversions with
	binary float types and of precision narrowing due to prototype.
	* c-parser.c (reswords): Add _Decimal32, _Decimal64, _Decimal128.
	(c_token_starts_typename): Handle RID_DFLOAT32/64/128.
	(c_token_starts_declspecs): Likewise.
	(c_parser_attributes): Likewise.
	* c-common.h (enum rid): Add new enumeration values RID_DFLOAT32,
	RID_DFLOAT64, RID_DFLOAT128.
	(T_D32, TEX_D32, T_D64, TEX_D64, T_D128, TEX_D128): New macros.
	* c-common.c (c_common_type_for_mode): Handle decimal float modes.
	(shorten_compare): Convert DFP/BFP operands to a common type.
	(c_common_modes_and_builtins): Register built-in decimal float
	types if the target supports them.
	(handle_mode_addtribute): Handle MODE_DECIMAL_FLOAT.
	* builtins.c (fold_builtin_1): Handle 32, 64 and 128 bit cases of
	inf, nan, finite, isinf and isnan builtins.
	* c-cppbuiltin.c (builtin_define_decimal_float_constants): New.
	(builtin_define_float_constants): Assert non-decimal radix.
	(c_cpp_builtins): Register built-in __DEC_EVAL_METHOD__ define.
	Call builtin_define_decimal_float_constants for each type.
	* c-lex.c (interpret_float): Decode decimal float types from CPP_N
	flags.  Use real_from_string3, which can handle binary or decimal
	floats.
	* c-tree.h (enum c_typespec_keyword): Add cts_dfloat32,
	cts_dfloat64, cts_dfloat128.
	* tree.c (build_common_tree_nodes_2): Add decimal float types.
	* tree.h (enum tree_index): Add new enumeration values
	TI_DFLOAT32_TYPE, TI_DFLOAT64_TYPE, TI_DFLOAT128_TYPE,
	TI_DFLOAT32_PTR_TYPE, TI_DFLOAT64_PTR_TYPE, TI_DFLOAT128_PTR_TYPE.
	(dfloat32_type_node): New macro.
	(dfloat64_type_node, dfloat128_type_node): Likewise.
	(dfloat32_ptr_type_node, dfloat64_ptr_type_node): Likewise.
	(dfloat128_ptr_type_node): Likewise.
	* c-pretty-print.c (pp_c_floating_constant): Append 32, 64 and 128
	bit decimal floating point types with "df", "dd" and "dl".
	* c-format.h (enum format_lengths): Add new enumeration values
	FMT_LEN_H, FMT_LEN_D and FMT_LEN_DD.
	* c-format.c (printf_length_specs, scanf_length_specs): Add
	entries for H, D, DD.
	(print_char_table, scan_char_table): Use new entries.
	(asm_fprintf_char_table, gcc_diag_char_table,
	gcc_cdiag_char_table, gcc_cxxdiag_char_table): Adjust for longer
	length arrays.
	* defaults.h (DECIMAL32_TYPE_SIZE): Define.
	(DECIMAL64_TYPE_SIZE): Likewise.
	(DECIMAL128_TYPE_SIZE): Likewise.
	(TARGET_DEC_EVAL_METHOD): Likewise.
	* doc/extend.texi (Decimal Float): New node.
	(Constructing Calls): Document decimal float built-ins.
	* doc/tm.texi: Document TARGET_DECIMAL_FLOAT_SUPPORTED_P hook.
	* Makefile.in (USER_H): Add $(srcdir)/ginclude/decfloat.h.
	* ginclude/decfloat.h: New file.

Co-Authored-By: Ben Elliston <bje@au.ibm.com>
Co-Authored-By: Janis Johnson <janis187@us.ibm.com>

From-SVN: r108629
2005-12-16 17:38:26 +11:00
boehm-gc gc_priv.h: Increase MAX_ROOT_SETS to 1024. 2005-11-02 00:06:30 +00:00
config configure.in (CONFIGURED_BISON, [...]): Remove "CONFIGURED_" from the AC_CHECK_PROGS invocation. 2005-12-05 15:00:27 +00:00
contrib * newcvsroot: Remove. 2005-12-08 08:38:02 +11:00
fastjar compress.c (write_data): Mark 'ze' as unused. 2005-11-29 21:46:02 +00:00
fixincludes Check the last byte for '\n' 2005-11-25 05:57:10 +00:00
gcc target-def.h (TARGET_DECIMAL_FLOAT_SUPPORTED_P): New. 2005-12-16 17:38:26 +11:00
gnattools re PR ada/19959 (Can't compile gnattools for the cross targets) 2005-03-30 10:56:55 +02:00
include Fixes java/PR9861 2005-12-11 01:34:02 +00:00
INSTALL
intl .cvsignore are not needed for subversion, remove them. 2005-10-31 18:20:58 +01:00
libada Makefile.in (FLAGS_TO_PASS): Add GCC_FOR_TARGET. 2005-12-05 14:40:27 +00:00
libcpp cpplib.h (CPP_N_DFLOAT): New. 2005-12-07 10:13:15 +11:00
libdecnumber Makefile.in (clean): Remove stray reference to libcpp.a. 2005-12-05 10:50:48 +11:00
libffi ffitarget.h: Remove obsolete sgidefs.h include. 2005-12-07 14:56:38 +00:00
libgfortran re PR libfortran/24991 (gfortran build fails with - error:gthr-default.h: No such file or directory) 2005-12-13 09:31:41 +01:00
libiberty Fixes java/PR9861 2005-12-11 01:34:02 +00:00
libjava re PR java/25429 (can't see private static final int CREATE = 1) 2005-12-16 00:00:43 +00:00
libmudflap libmudflap.exp (libmudflap-init): Remove -static from MUDFLAP_FLAGS if static library not supported. 2005-11-22 20:35:51 +00:00
libobjc re PR libobjc/14382 ([libobjc] Calling +initialize on a per category basis) 2005-12-15 16:46:17 +00:00
libssp .cvsignore are not needed for subversion, remove them. 2005-10-31 18:20:58 +01:00
libstdc++-v3 stl_vector.h (vector<>::_M_get_Tp_allocator): Change to return by ref and add non const version. 2005-12-15 11:31:59 +00:00
maintainer-scripts * update_web_docs_svn: Set @srcdir in gcc-vers.texi. 2005-11-23 18:46:40 +00:00
zlib .cvsignore are not needed for subversion, remove them. 2005-10-31 18:20:58 +01:00
ABOUT-NLS
ChangeLog MAINTAINERS: Update my email address. 2005-12-15 20:04:48 +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 COPYING, [...]: Sync from upstream sources. 2005-07-14 01:08:13 +00:00
config.guess Sync config.{sub,guess} from upstream sources 2005-11-22 20:41:02 +00:00
config.rpath all files: Update FSF address. 2005-07-16 02:30:53 +00:00
config.sub config.gcc (ms1): Replace with ... 2005-12-12 10:54:49 +00:00
configure configure.in: Flip the top-level bootstrap switch. 2005-12-14 17:56:46 +00:00
configure.in configure.in: Flip the top-level bootstrap switch. 2005-12-14 17:56:46 +00: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.m4 all files: Update FSF address. 2005-07-16 02:30:53 +00:00
ltcf-c.sh ltcf-c.sh (whole_archive_flag_spec): Remove '-all_load $convenience' to match upstream libtool for darwin. 2005-11-18 23:53:08 +01:00
ltcf-cxx.sh all files: Update FSF address. 2005-07-16 02:30:53 +00:00
ltcf-gcj.sh all files: Update FSF address. 2005-07-16 02:30:53 +00:00
ltconfig all files: Update FSF address. 2005-07-16 02:30:53 +00:00
ltmain.sh Fix misapplied hunk. 2005-10-05 09:19:53 +00:00
MAINTAINERS MAINTAINERS: Update my email address. 2005-12-15 20:04:48 +00:00
Makefile.def Start building libdecnumber at the top-level: 2005-11-29 18:44:59 +11:00
Makefile.in Makefile.tpl (all, [...]): Don't invoke $(stage) at the end. 2005-12-15 14:34:27 +00:00
Makefile.tpl Makefile.tpl (all, [...]): Don't invoke $(stage) at the end. 2005-12-15 14:34:27 +00:00
missing COPYING, [...]: Sync from upstream sources. 2005-07-14 01:08:13 +00:00
mkdep
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.