diff options
author | Nathan Froyd <froydnj@codesourcery.com> | 2010-11-03 00:49:00 +0000 |
---|---|---|
committer | Nathan Froyd <froydnj@gcc.gnu.org> | 2010-11-03 00:49:00 +0000 |
commit | e8160c9a604ed01f38060655561a8fdf8ef854c8 (patch) | |
tree | aa2d2827a0f82adc2311c64a062ea2a424f865c4 /gcc/builtins.c | |
parent | 7d1c5d3530bcea4099af22a346315c70e62a9b25 (diff) | |
download | gcc-e8160c9a604ed01f38060655561a8fdf8ef854c8.zip gcc-e8160c9a604ed01f38060655561a8fdf8ef854c8.tar.gz gcc-e8160c9a604ed01f38060655561a8fdf8ef854c8.tar.bz2 |
builtins.c (fold_builtin_signbit): Use build_zero_cst instead of fold_convert.
gcc/
* builtins.c (fold_builtin_signbit): Use build_zero_cst instead of
fold_convert.
* c-typeck.c (build_function_call_vec): Likewise.
* cfgexpand.c (expand_debug_expr): Likewise.
* cgraphunit.c (assemble_thunk): Likewise.
* config/sparc/sparc.c (sparc_fold_builtin): Likewise.
* fold-const.c (fold_unary_loc, fold_mult_zconjz): Likewise.
(fold_binary_loc, fold_ternary_loc): Likewise.
* gimple-fold.c (get_symbol_constant_value): Likewise.
* gimple-low.c (lower_builtin_setjmp): Likewise.
* gimple.c (gimple_cond_get_ops_from_tree): Likewise.
* gimplify.c (gimplify_init_constructor): Likewise.
* lambda.h (build_linear_expr): Likewise.
* omp-low.c (omp_reduction_init): Likewise.
* tree-inline.c (remap_ssa_name): Likewise.
* tree-object-size.c (compute_object_sizes): Likewise.
* tree-sra.c (init_subtree_with_zero): Likewise.
(sra_ipa_modify_assign): Likewise.
* tree-ssa-copy.c (propagate_tree_value_into_stmt): Likewise.
* tree-ssa-reassoc.c (eliminate_duplicate_pair): Likewise.
(eliminate_plus_minus_pair, eliminate_not_pairs): Likewise.
(undistribute_ops_list): Likewise.
* tree-ssa-sccvn.c (vn_reference_lookup_3): Likewise.
* tree-vect-stmts.c (vectorizable_call): Likewise.
* tree.c (build_vector_from_ctor, build_one_cst): Likewise.
(build_zero_cst): Handle more cases directly. Update comment.
gcc/cp/
* class.c (build_base_path, add_vcall_offset): Use build_zero_cst
instead of fold_convert.
* init.c (build_zero_init): Likewise.
* typeck.c (cp_build_binary_op): Likewise.
gcc/fortran/
* trans-decl.c (add_argument_checking): Use build_zero_cst instead of
fold_convert.
* trans-expr.c (gfc_conv_missing_dummy, fill_with_spaces): Likewise.
* trans-stmt.c (gfc_trans_do): Likewise.
From-SVN: r166227
Diffstat (limited to 'gcc/builtins.c')
-rw-r--r-- | gcc/builtins.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/gcc/builtins.c b/gcc/builtins.c index ced2fa7..4ff0546 100644 --- a/gcc/builtins.c +++ b/gcc/builtins.c @@ -9101,8 +9101,6 @@ fold_builtin_strncmp (location_t loc, tree arg1, tree arg2, tree len) static tree fold_builtin_signbit (location_t loc, tree arg, tree type) { - tree temp; - if (!validate_arg (arg, REAL_TYPE)) return NULL_TREE; @@ -9113,8 +9111,9 @@ fold_builtin_signbit (location_t loc, tree arg, tree type) REAL_VALUE_TYPE c; c = TREE_REAL_CST (arg); - temp = REAL_VALUE_NEGATIVE (c) ? integer_one_node : integer_zero_node; - return fold_convert_loc (loc, type, temp); + return (REAL_VALUE_NEGATIVE (c) + ? build_one_cst (type) + : build_zero_cst (type)); } /* If ARG is non-negative, the result is always zero. */ |