From a40de696ac0207908f22b2b50330e22e86e45329 Mon Sep 17 00:00:00 2001 From: Andrew Pinski <pinskia@physics.uc.edu> Date: Sun, 13 Jun 2004 22:15:51 +0000 Subject: [PATCH] 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 --- gcc/ChangeLog | 7 +++++++ gcc/fold-const.c | 11 ++++++++--- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6e42d5920e88..8ec2db59619b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +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. + 2004-06-13 Diego Novillo <dnovillo@redhat.com> * tree-sra.c (tree_sra): Update documentation. diff --git a/gcc/fold-const.c b/gcc/fold-const.c index 02f4128af49f..1cc2b8189c88 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); -- GitLab