diff options
author | Andrew Pinski <pinskia@physics.uc.edu> | 2004-06-13 22:15:51 +0000 |
---|---|---|
committer | Andrew Pinski <pinskia@gcc.gnu.org> | 2004-06-13 15:15:51 -0700 |
commit | a40de696ac0207908f22b2b50330e22e86e45329 (patch) | |
tree | fb674db0c88cd83c47b51eb697f13cb87d395920 /gcc/fold-const.c | |
parent | d29647a46cd2396c11366309a3e3c19b85f3d499 (diff) | |
download | gcc-a40de696ac0207908f22b2b50330e22e86e45329.zip gcc-a40de696ac0207908f22b2b50330e22e86e45329.tar.gz gcc-a40de696ac0207908f22b2b50330e22e86e45329.tar.bz2 |
fold-const.c (fold_checksum_tree <case 't'>): Only look at TREE_VALUES if the EXPR is an ENUMERAL_TYPE.
2004-06-13 Andrew Pinski <pinskia@physics.uc.edu>
* fold-const.c (fold_checksum_tree <case 't'>): Only
look at TREE_VALUES if the EXPR is an ENUMERAL_TYPE.
Only look at TYPE_MIN_VALUE and TYPE_MAX_VALUE if
EXPR is an INTEGERAL_TYPE or a scalar float type.
From-SVN: r83068
Diffstat (limited to 'gcc/fold-const.c')
-rw-r--r-- | gcc/fold-const.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/gcc/fold-const.c b/gcc/fold-const.c index 02f4128..1cc2b81 100644 --- a/gcc/fold-const.c +++ b/gcc/fold-const.c @@ -8731,13 +8731,18 @@ fold_checksum_tree (tree expr, struct md5_ctx *ctx, htab_t ht) fold_checksum_tree (DECL_VINDEX (expr), ctx, ht); break; case 't': - fold_checksum_tree (TYPE_VALUES (expr), ctx, ht); + if (TREE_CODE (expr) == ENUMERAL_TYPE) + fold_checksum_tree (TYPE_VALUES (expr), ctx, ht); fold_checksum_tree (TYPE_SIZE (expr), ctx, ht); fold_checksum_tree (TYPE_SIZE_UNIT (expr), ctx, ht); fold_checksum_tree (TYPE_ATTRIBUTES (expr), ctx, ht); fold_checksum_tree (TYPE_NAME (expr), ctx, ht); - fold_checksum_tree (TYPE_MIN_VALUE (expr), ctx, ht); - fold_checksum_tree (TYPE_MAX_VALUE (expr), ctx, ht); + if (INTEGRAL_TYPE_P (expr) + || SCALAR_FLOAT_TYPE_P (expr)) + { + fold_checksum_tree (TYPE_MIN_VALUE (expr), ctx, ht); + fold_checksum_tree (TYPE_MAX_VALUE (expr), ctx, ht); + } fold_checksum_tree (TYPE_MAIN_VARIANT (expr), ctx, ht); fold_checksum_tree (TYPE_BINFO (expr), ctx, ht); fold_checksum_tree (TYPE_CONTEXT (expr), ctx, ht); |