diff options
author | phython <phython@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-02-18 12:06:08 +0000 |
---|---|---|
committer | phython <phython@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-02-18 12:06:08 +0000 |
commit | 37e8021c4fa1bb1674ca6aab1fd9e2f6618d0709 (patch) | |
tree | fa3567697268e4557c529527a229d4ed643ebfab /gcc | |
parent | f5f59ea483b64511dc81091a14dbcfd727a3bb06 (diff) | |
download | gcc-37e8021c4fa1bb1674ca6aab1fd9e2f6618d0709.tar.gz |
2005-02-18 James A. Morrison <phython@gcc.gnu.org>
* stmt.c (emit_case_bit_tests): Call fold_convert instead of convert.
(estimate_case_costs): Don't call convert.
* expmed.c (expand_shift): Likewise.
(make_tree): Call fold_convert instead of convert.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@95224 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/expmed.c | 35 | ||||
-rw-r--r-- | gcc/stmt.c | 7 |
3 files changed, 25 insertions, 24 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0433f2f96ce..ca5a33b871c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2005-02-18 James A. Morrison <phython@gcc.gnu.org> + + * stmt.c (emit_case_bit_tests): Call fold_convert instead of convert. + (estimate_case_costs): Don't call convert. + * expmed.c (expand_shift): Likewise. + (make_tree): Call fold_convert instead of convert. + 2005-02-18 Jakub Jelinek <jakub@redhat.com> PR c++/19813 diff --git a/gcc/expmed.c b/gcc/expmed.c index 49b1faa77cf..55eb7d113d5 100644 --- a/gcc/expmed.c +++ b/gcc/expmed.c @@ -2231,9 +2231,8 @@ expand_shift (enum tree_code code, enum machine_mode mode, rtx shifted, tree type = TREE_TYPE (amount); tree new_amount = make_tree (type, op1); tree other_amount - = fold (build2 (MINUS_EXPR, type, convert - (type, build_int_cst - (NULL_TREE, GET_MODE_BITSIZE (mode))), + = fold (build2 (MINUS_EXPR, type, + build_int_cst (type, GET_MODE_BITSIZE (mode)), amount)); shifted = force_reg (mode, shifted); @@ -4871,17 +4870,15 @@ make_tree (tree type, rtx x) case LSHIFTRT: t = lang_hooks.types.unsigned_type (type); - return fold (convert (type, - build2 (RSHIFT_EXPR, t, - make_tree (t, XEXP (x, 0)), - make_tree (type, XEXP (x, 1))))); + return fold_convert (type, build2 (RSHIFT_EXPR, t, + make_tree (t, XEXP (x, 0)), + make_tree (type, XEXP (x, 1)))); case ASHIFTRT: t = lang_hooks.types.signed_type (type); - return fold (convert (type, - build2 (RSHIFT_EXPR, t, - make_tree (t, XEXP (x, 0)), - make_tree (type, XEXP (x, 1))))); + return fold_convert (type, build2 (RSHIFT_EXPR, t, + make_tree (t, XEXP (x, 0)), + make_tree (type, XEXP (x, 1)))); case DIV: if (TREE_CODE (type) != REAL_TYPE) @@ -4889,22 +4886,20 @@ make_tree (tree type, rtx x) else t = type; - return fold (convert (type, - build2 (TRUNC_DIV_EXPR, t, - make_tree (t, XEXP (x, 0)), - make_tree (t, XEXP (x, 1))))); + return fold_convert (type, build2 (TRUNC_DIV_EXPR, t, + make_tree (t, XEXP (x, 0)), + make_tree (t, XEXP (x, 1)))); case UDIV: t = lang_hooks.types.unsigned_type (type); - return fold (convert (type, - build2 (TRUNC_DIV_EXPR, t, - make_tree (t, XEXP (x, 0)), - make_tree (t, XEXP (x, 1))))); + return fold_convert (type, build2 (TRUNC_DIV_EXPR, t, + make_tree (t, XEXP (x, 0)), + make_tree (t, XEXP (x, 1)))); case SIGN_EXTEND: case ZERO_EXTEND: t = lang_hooks.types.type_for_mode (GET_MODE (XEXP (x, 0)), GET_CODE (x) == ZERO_EXTEND); - return fold (convert (type, make_tree (t, XEXP (x, 0)))); + return fold_convert (type, make_tree (t, XEXP (x, 0))); default: t = build_decl (VAR_DECL, NULL_TREE, type); diff --git a/gcc/stmt.c b/gcc/stmt.c index 5a9d5277ea5..a438532b11b 100644 --- a/gcc/stmt.c +++ b/gcc/stmt.c @@ -2239,8 +2239,8 @@ emit_case_bit_tests (tree index_type, tree index_expr, tree minval, qsort (test, count, sizeof(*test), case_bit_test_cmp); index_expr = fold (build2 (MINUS_EXPR, index_type, - convert (index_type, index_expr), - convert (index_type, minval))); + fold_convert (index_type, index_expr), + fold_convert (index_type, minval))); index = expand_expr (index_expr, NULL_RTX, VOIDmode, 0); do_pending_stack_adjust (); @@ -2612,8 +2612,7 @@ static int estimate_case_costs (case_node_ptr node) { tree min_ascii = integer_minus_one_node; - tree max_ascii = convert (TREE_TYPE (node->high), - build_int_cst (NULL_TREE, 127)); + tree max_ascii = build_int_cst (TREE_TYPE (node->high), 127); case_node_ptr n; int i; |