diff options
author | Bernd Schmidt <bernds@codesourcery.com> | 2012-04-11 18:07:39 +0000 |
---|---|---|
committer | Bernd Schmidt <bernds@gcc.gnu.org> | 2012-04-11 18:07:39 +0000 |
commit | d3ea1dbdb267abe428d444f586af1fc724556898 (patch) | |
tree | abfaee672fdce8ffb541bd8c45384994f68bb269 /gcc/fold-const.c | |
parent | 30235ede1a1a99f5a99c257c878a1aab6a41de5a (diff) | |
download | gcc-d3ea1dbdb267abe428d444f586af1fc724556898.zip gcc-d3ea1dbdb267abe428d444f586af1fc724556898.tar.gz gcc-d3ea1dbdb267abe428d444f586af1fc724556898.tar.bz2 |
fold-const.c (fold_unary_loc): Use GET_MODE_PRECISION for comparisons against TYPE_PRECISION.
* fold-const.c (fold_unary_loc): Use GET_MODE_PRECISION for
comparisons against TYPE_PRECISION.
* tree-ssa-forwprop.c (combine_conversions): Likewise.
From-SVN: r186350
Diffstat (limited to 'gcc/fold-const.c')
-rw-r--r-- | gcc/fold-const.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/fold-const.c b/gcc/fold-const.c index df0c05c..dcd64a0 100644 --- a/gcc/fold-const.c +++ b/gcc/fold-const.c @@ -7820,7 +7820,7 @@ fold_unary_loc (location_t loc, enum tree_code code, tree type, tree op0) && inter_prec >= inside_prec && (inter_float || inter_vec || inter_unsignedp == inside_unsignedp) - && ! (final_prec != GET_MODE_BITSIZE (TYPE_MODE (type)) + && ! (final_prec != GET_MODE_PRECISION (TYPE_MODE (type)) && TYPE_MODE (type) == TYPE_MODE (inter_type)) && ! final_ptr && (! final_vec || inter_prec == inside_prec)) @@ -7857,7 +7857,7 @@ fold_unary_loc (location_t loc, enum tree_code code, tree type, tree op0) == (final_unsignedp && final_prec > inter_prec)) && ! (inside_ptr && inter_prec != final_prec) && ! (final_ptr && inside_prec != inter_prec) - && ! (final_prec != GET_MODE_BITSIZE (TYPE_MODE (type)) + && ! (final_prec != GET_MODE_PRECISION (TYPE_MODE (type)) && TYPE_MODE (type) == TYPE_MODE (inter_type))) return fold_build1_loc (loc, code, type, TREE_OPERAND (op0, 0)); } |