GCC modified for the FreeChainXenon project
Find a file
Paolo Bonzini d1a7edafe6 re PR rtl-optimization/15649 (ICE with __builtin_isgreater and -ffast-math)
gcc/ChangeLog:
2004-05-27  Paolo Bonzini  <bonzini@gnu.org>
	    Roger Sayle  <roger@eyesopen.com>

	PR rtl-optimization/15649
	Add LTGT_EXPR and improve pretty-printing of unordered
	comparisons.
	* c-common.c (c_common_truthvalue_conversion):
	Handle LTGT_EXPR.
	* c-typeck.c (build_binary_op): Likewise.
	* dojump.c (do_jump): Likewise.
	* expr.c (expand_expr_real_1, do_store_flag): Likewise.
	* predict.c (tree_predict_by_opcode): Likewise.
	* real.c (real_compare): Likewise.
	* tree-cfg.c (verify_expr): Likewise.
	* tree-inline.c (estimate_num_insns_1): Likewise.
	* tree-pretty-print.c (dump_generic_node): Likewise.
	Handle ORDERED_EXPR, UNORDERED_EXPR.
	(op_symbol): Print unordered comparisons differently
	than ordered ones.
	* tree.def (LTGT_EXPR): New '<' tree code.
	* doc/c-tree.texi (Expressions): Document floating-point
	comparison nodes.

	Fold comparisons between floating point values.
	* fold-const.c (enum comparison_code): New, from
	#define'd constants.  Define compcodes for unordered
	comparisons and for invalid transformations.
	(invert_tree_comparison): Add "honor_nans" parameter.
	(fold_truthop): Revamp to work on floating-point types too.
	(comparison_to_compcode): Support unordered comparisons.
	Use new enum comparison_code.
	(compcode_to_comparison): Likewise.
	(combine_compcodes): New function.
	(invert_truthvalue): Let invert_tree_comparison decide
	whether it is valid to fold the comparison.  Fold ORDERED
	and UNORDERED even if flag_unsafe_math_optimizations is off,
	and the remaining even if flag_unsafe_math_optimizations
	is off but we are under -fno-trapping-math.
	(fold_relational_const): Integer modes do not honor NaNs.

gcc/testsuite/ChangeLog:
2004-05-27  Paolo Bonzini  <bonzini@gnu.org>

	* gcc.c-torture/compare-fp-1.c, gcc.c-torture/compare-fp-2.c,
	gcc.c-torture/compare-fp-3.c, gcc.c-torture/compare-fp-4.c,
	gcc.c-torture/compare-fp-3.x, gcc.c-torture/compare-fp-4.x,
	gcc.c-torture/pr15649-1.c: New.

Co-Authored-By: Roger Sayle <roger@eyesopen.com>

From-SVN: r82365
2004-05-28 16:37:08 +00:00
boehm-gc re PR bootstrap/15120 ([3.3 only] [libtool bug] hidden symbol `__sdivsi3_i4' is referenced by DSO) 2004-05-18 10:11:38 +00:00
config Makefile.def (host_modules): add libcpp. 2004-05-24 10:50:45 +00:00
contrib Makefile.def, [...]: Remove all mention of libf2c. 2004-05-18 01:26:21 +00:00
fastjar re PR bootstrap/14905 ('make install' fails on grepjar.1, not included in tarball) 2004-04-12 20:29:49 +00:00
gcc re PR rtl-optimization/15649 (ICE with __builtin_isgreater and -ffast-math) 2004-05-28 16:37:08 +00:00
include Merge tree-ssa-20020619-branch into mainline. 2004-05-13 02:41:07 -04:00
INSTALL
intl Makefile.in (top_builddir): Define to . 2004-05-25 20:16:56 +00:00
libada * Makefile.in: Add .NOEXPORT. 2004-05-25 19:37:02 +00:00
libbanshee re PR bootstrap/15627 (Sun CC cannot bootstrap GCC) 2004-05-24 13:20:52 +00:00
libcpp re PR bootstrap/15651 (Size Errors/Warnings Followed by ICE) 2004-05-26 06:58:53 +00:00
libf2c Makefile.def, [...]: Remove all mention of libf2c. 2004-05-18 01:26:21 +00:00
libffi re PR bootstrap/15120 ([3.3 only] [libtool bug] hidden symbol `__sdivsi3_i4' is referenced by DSO) 2004-05-18 10:11:38 +00:00
libgfortran re PR libfortran/15234 (libgfortran doesn't compile on Tru64 UNIX V4.0F) 2004-05-27 15:05:23 +02:00
libiberty * Makefile.in: Add .NOEXPORT. 2004-05-25 19:37:02 +00:00
libjava SimpleTimeZone.java: Reverting my last change until I can fix it properly. 2004-05-27 20:32:20 +00:00
libmudflap Makefile.am (AM_MAKEFLAGS): Pass RUNTESTFLAGS. 2004-05-21 20:33:58 +00:00
libobjc configure.ac (includedir): Rename to ... 2004-05-25 18:21:46 -07:00
libstdc++-v3 re PR libstdc++/15675 (Doxygen graph are invalid in the libstdc++-v3 online docs) 2004-05-28 04:25:18 +00:00
maintainer-scripts gcc_release (build_sources): Generate the NEWS file in toplevel. 2004-05-21 12:41:32 +00:00
zlib re PR bootstrap/15120 ([3.3 only] [libtool bug] hidden symbol `__sdivsi3_i4' is referenced by DSO) 2004-05-18 10:11:38 +00:00
.cvsignore configure, .cvsignore: Revert previous change... 2002-06-19 18:10:09 +00:00
ABOUT-NLS intl: New directory; see intl/ChangeLog for details. 2003-07-04 18:18:54 +00:00
ChangeLog configure.in: Fix sed invocation for GFORTRAN_FOR_TARGET. 2004-05-27 18:20:33 +00:00
ChangeLog.tree-ssa Merge tree-ssa-20020619-branch into mainline. 2004-05-13 02:41:07 -04:00
compile compile: New file imported from automake. 2004-03-21 18:38:56 +00:00
config-ml.in * config-ml.in: Don't mess with the cache file. 2004-01-05 00:41:14 +00:00
config.guess Index: ChangeLog 2004-02-20 16:15:55 +00:00
config.if * config.if: Remove unused libc_interface determination. 2003-07-16 06:34:53 +00:00
config.rpath intl: New directory; see intl/ChangeLog for details. 2003-07-04 18:18:54 +00:00
config.sub Index: ChangeLog 2004-02-20 16:15:55 +00:00
configure configure.in: Fix sed invocation for GFORTRAN_FOR_TARGET. 2004-05-27 18:20:33 +00:00
configure.in configure.in: Fix sed invocation for GFORTRAN_FOR_TARGET. 2004-05-27 18:20:33 +00:00
COPYING
COPYING.LIB
depcomp Merge tree-ssa-20020619-branch into mainline. 2004-05-13 02:41:07 -04:00
install-sh re PR bootstrap/11932 (Parallel bootstrap failure with sparc libiberty multilib) 2004-02-20 02:01:16 +00:00
libtool.m4 re PR bootstrap/15120 ([3.3 only] [libtool bug] hidden symbol `__sdivsi3_i4' is referenced by DSO) 2004-05-18 10:11:38 +00:00
ltcf-c.sh Patch from Robert Millan. 2004-04-26 23:14:30 -07:00
ltcf-cxx.sh Patch from Robert Millan. 2004-04-26 23:14:30 -07:00
ltcf-gcj.sh Patch from Robert Millan. 2004-04-26 23:14:30 -07:00
ltconfig Patch from Robert Millan. 2004-04-26 23:14:30 -07:00
ltmain.sh Partial merge from upstream: 2004-02-04 23:58:48 +00:00
MAINTAINERS Add myself to MAINTAINERS (write after approval) 2004-05-23 11:32:35 +00:00
Makefile.def configure.in: Test the ability to symlink directories. 2004-05-24 11:08:12 +00:00
Makefile.in * Makefile.tpl (BUILD_EXPORTS, HOST_EXPORTS, GCC_HOST_EXPORTS) 2004-05-25 19:37:26 +00:00
Makefile.tpl * Makefile.tpl (BUILD_EXPORTS, HOST_EXPORTS, GCC_HOST_EXPORTS) 2004-05-25 19:37:26 +00:00
missing install-sh: Update to newer upstream versions (associated with aclocal 1.7). 2003-07-20 09:40:28 +00:00
mkdep
mkinstalldirs re PR bootstrap/11932 (Parallel bootstrap failure with sparc libiberty multilib) 2004-02-20 02:01:16 +00:00
move-if-change
README * README: Remove version number. 2001-06-13 19:48:09 +01:00
README.SCO * README.SCO: New file. 2003-08-03 14:51:42 +00:00
symlink-tree * config-ml.in, symlink-tree: Add license. 2003-08-14 16:44:23 -04:00
ylwrap

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.