re PR bootstrap/12269 (Mainline failed to bootstrap on Linux/ia64)
authorRoger Sayle <roger@eyesopen.com>
Tue, 16 Sep 2003 17:16:25 +0000 (17:16 +0000)
committerRoger Sayle <sayle@gcc.gnu.org>
Tue, 16 Sep 2003 17:16:25 +0000 (17:16 +0000)
commit0c6d17eca1ca73e0b3799d75c28aadac9adaeb85
treea192947f5361f11b60ac0e1c25f61e8c3c0526b8
parent37af03cba8d6cd7b1fd7830748e3d9d6e47f3009
re PR bootstrap/12269 (Mainline failed to bootstrap on Linux/ia64)

PR bootstrap/12269
* simplify-rtx.c (simplify_gen_relational): Allow the cmp_mode
argument to be VOIDmode, taking the mode of the comparison from
the operands.  Only call simplify_relational_operation if we
know the mode of the comparison.  Honor FLOAT_STORE_FLAG_VALUE
if comparison has a floating point result.  Ensure that the
result is always of the specified mode.
(simplify_replace_rtx): Simplify call to simplify_gen_relational.
(simplify_unary_operation): Ensure the correct mode and cmp_mode
are always passed to simplify_gen_relational.  Simplify NOT of
comparison operator in any mode, not just BImode.
(simplify_ternary_operation): Correct tests on the return value
of simplify_relational_operation to use const_true_rtx, not
const1_rtx.  Abort if it ever returns a non-constant result.

* cfgloopanal.c (count_strange_loop_iterations): Use the function
simplify_relational_operation, not simplify_gen_relational, if
we're only interested in constant comparisons and will ignore
non-constant results.

From-SVN: r71439
gcc/ChangeLog
gcc/cfgloopanal.c
gcc/simplify-rtx.c