From a1fbcbc1552b69b05f8d105992bd462563ac04ad Mon Sep 17 00:00:00 2001 From: reichelt Date: Tue, 16 Aug 2005 12:14:10 +0000 Subject: * builtins.c (expand_builtin_strcat): Remove superfluous call to fold. (fold_builtin_isdigit): Use fold_buildN. (build_function_call_expr): Likewise. * c-typeck.c (c_finish_loop): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@103154 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/builtins.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) (limited to 'gcc/builtins.c') diff --git a/gcc/builtins.c b/gcc/builtins.c index bd187c18356..13d80ed53dc 100644 --- a/gcc/builtins.c +++ b/gcc/builtins.c @@ -3860,9 +3860,8 @@ expand_builtin_strcat (tree arglist, tree type, rtx target, enum machine_mode mo /* Create strlen (dst). */ newdst = - fold (build_function_call_expr (strlen_fn, - build_tree_list (NULL_TREE, - dst))); + build_function_call_expr (strlen_fn, + build_tree_list (NULL_TREE, dst)); /* Create (dst + (cast) strlen (dst)). */ newdst = fold_convert (TREE_TYPE (dst), newdst); newdst = fold_build2 (PLUS_EXPR, TREE_TYPE (dst), dst, newdst); @@ -8291,9 +8290,8 @@ fold_builtin_isdigit (tree arglist) arg = fold_convert (unsigned_type_node, TREE_VALUE (arglist)); arg = build2 (MINUS_EXPR, unsigned_type_node, arg, build_int_cst (unsigned_type_node, target_digit0)); - arg = build2 (LE_EXPR, integer_type_node, arg, - build_int_cst (unsigned_type_node, 9)); - arg = fold (arg); + arg = fold_build2 (LE_EXPR, integer_type_node, arg, + build_int_cst (unsigned_type_node, 9)); if (in_gimple_form && !TREE_CONSTANT (arg)) return NULL_TREE; else @@ -8929,9 +8927,8 @@ build_function_call_expr (tree fn, tree arglist) tree call_expr; call_expr = build1 (ADDR_EXPR, build_pointer_type (TREE_TYPE (fn)), fn); - call_expr = build3 (CALL_EXPR, TREE_TYPE (TREE_TYPE (fn)), + return fold_build3 (CALL_EXPR, TREE_TYPE (TREE_TYPE (fn)), call_expr, arglist, NULL_TREE); - return fold (call_expr); } /* This function validates the types of a function call argument list -- cgit v1.2.1