aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-forwprop.c
diff options
context:
space:
mode:
authorRoger Sayle <roger@eyesopen.com>2004-07-25 23:26:59 +0000
committerRoger Sayle <roger@eyesopen.com>2004-07-25 23:26:59 +0000
commitb795df4d6493f44cb6fecf5d70e570f23d800fa4 (patch)
tree95b7cdaa4a1488e04ee4b25d2031e455b1aa2318 /gcc/tree-ssa-forwprop.c
parentbf5ee08afb8d19588ace3a8429a9b0b1541d0023 (diff)
* fold-const.c (constant_boolean_node): Make extern.
(make_range): Wrap long lines. (fold_cond_expr_with_comparison): Remove unnecessary call to pedantic_non_lvalue. Add missing calls to fold_convert. (fold_truthop): Add missing calls to fold_convert. (fold): Likewise. * tree.h (constant_boolean_node): Add prototype here. * builtins.c (expand_builtin_strncmp): Add missing calls to fold_convert. * tree-ssa-dom.c (record_equivalences_from_incoming_edge): Call fold_convert and constant_boolean_node to correct types. * tree-ssa-forwprop.c (substitute_single_use_vars): Add missing call to fold_convert to correct types. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@85169 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-ssa-forwprop.c')
-rw-r--r--gcc/tree-ssa-forwprop.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/gcc/tree-ssa-forwprop.c b/gcc/tree-ssa-forwprop.c
index d4e893c1067..7df513f4e8a 100644
--- a/gcc/tree-ssa-forwprop.c
+++ b/gcc/tree-ssa-forwprop.c
@@ -391,6 +391,7 @@ substitute_single_use_vars (varray_type *cond_worklist,
{
bool invert = false;
enum tree_code new_code;
+ tree new_arg;
/* TEST_VAR was set from a TRUTH_NOT_EXPR or a NOP_EXPR. */
if (def_rhs_code == TRUTH_NOT_EXPR)
@@ -408,11 +409,10 @@ substitute_single_use_vars (varray_type *cond_worklist,
if (invert)
new_code = (new_code == EQ_EXPR ? NE_EXPR : EQ_EXPR);
- new_cond = build (new_code,
- boolean_type_node,
- TREE_OPERAND (def_rhs, 0),
- convert (TREE_TYPE (def_rhs),
- integer_zero_node));
+ new_arg = TREE_OPERAND (def_rhs, 0);
+ new_cond = build2 (new_code, boolean_type_node, new_arg,
+ fold_convert (TREE_TYPE (new_arg),
+ integer_zero_node));
}
/* Dump details. */