diff options
author | Richard Biener <rguenther@suse.de> | 2014-10-31 16:26:43 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2014-10-31 16:26:43 +0000 |
commit | 625a9766c94c89603c365932fb347075fc6fd413 (patch) | |
tree | c1a8af45fc037243d4f279cb9922b38cffaae47e /gcc/builtins.c | |
parent | c5cec2fe71b243a3a4e76ef41b2ed6b36a3d543c (diff) | |
download | gcc-625a9766c94c89603c365932fb347075fc6fd413.zip gcc-625a9766c94c89603c365932fb347075fc6fd413.tar.gz gcc-625a9766c94c89603c365932fb347075fc6fd413.tar.bz2 |
builtins.c (fold_builtin_atomic_always_lock_free): Use CONVERT_EXPR_P, CONVERT_EXPR_CODE_P and CASE_CONVERT where approprate.
2014-10-31 Richard Biener <rguenther@suse.de>
* builtins.c (fold_builtin_atomic_always_lock_free): Use
CONVERT_EXPR_P, CONVERT_EXPR_CODE_P and CASE_CONVERT where
approprate.
(fold_builtin_expect): Likewise.
(integer_valued_real_p): Likewise.
* cfgexpand.c (expand_debug_expr): Likewise.
* ipa-inline-analysis.c (eliminated_by_inlining_prob): Likewise.
(find_foldable_builtin_expect): Likewise.
* trans-mem.c (thread_private_new_memory): Likewise.
* tree-affine.c (aff_combination_expand): Likewise.
* tree-data-ref.c (initialize_matrix_A): Likewise.
* tree-inline.c (copy_bb): Likewise.
* tree-pretty-print.c (dump_function_name): Likewise.
(print_call_name): Likewise.
* tree-ssa-forwprop.c (constant_pointer_difference): Likewise.
* tree-ssa-math-opts.c (find_bswap_or_nop_1): Likewise.
* tree-vect-generic.c (expand_vector_operations_1): Likewise.
* tree-vect-patterns.c (vect_handle_widen_op_by_const): Likewise.
(vect_recog_widen_mult_pattern): Likewise.
(vect_operation_fits_smaller_type): Likewise.
* tree-vrp.c (find_assert_locations_1): Likewise.
* tree-ssa-dom.c (initialize_hash_element): Canonicalize
converts to NOP_EXPR.
From-SVN: r216982
Diffstat (limited to 'gcc/builtins.c')
-rw-r--r-- | gcc/builtins.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/builtins.c b/gcc/builtins.c index dd0869d..ad3a84e 100644 --- a/gcc/builtins.c +++ b/gcc/builtins.c @@ -5551,7 +5551,7 @@ fold_builtin_atomic_always_lock_free (tree arg0, tree arg1) end before anything else has a chance to look at it. The pointer parameter at this point is usually cast to a void *, so check for that and look past the cast. */ - if (TREE_CODE (arg1) == NOP_EXPR && POINTER_TYPE_P (ttype) + if (CONVERT_EXPR_P (arg1) && POINTER_TYPE_P (ttype) && VOID_TYPE_P (TREE_TYPE (ttype))) arg1 = TREE_OPERAND (arg1, 0); @@ -6989,7 +6989,7 @@ fold_builtin_expect (location_t loc, tree arg0, tree arg1, tree arg2) /* Distribute the expected value over short-circuiting operators. See through the cast from truthvalue_type_node to long. */ inner_arg0 = arg0; - while (TREE_CODE (inner_arg0) == NOP_EXPR + while (CONVERT_EXPR_P (inner_arg0) && INTEGRAL_TYPE_P (TREE_TYPE (inner_arg0)) && INTEGRAL_TYPE_P (TREE_TYPE (TREE_OPERAND (inner_arg0, 0)))) inner_arg0 = TREE_OPERAND (inner_arg0, 0); @@ -7155,7 +7155,7 @@ integer_valued_real_p (tree t) case REAL_CST: return real_isinteger (TREE_REAL_CST_PTR (t), TYPE_MODE (TREE_TYPE (t))); - case NOP_EXPR: + CASE_CONVERT: { tree type = TREE_TYPE (TREE_OPERAND (t, 0)); if (TREE_CODE (type) == INTEGER_TYPE) |