diff options
author | Roger Sayle <roger@eyesopen.com> | 2005-03-16 02:20:05 +0000 |
---|---|---|
committer | Roger Sayle <sayle@gcc.gnu.org> | 2005-03-16 02:20:05 +0000 |
commit | 0ebfd2c928fda823acdd4b5b073a84e5ce92ba39 (patch) | |
tree | 3750c12eff0b65397727b2016b257f02c6c89e51 /gcc/tree.c | |
parent | c79e602b6302889036c04a7ca530afc5ae97e053 (diff) | |
download | gcc-0ebfd2c928fda823acdd4b5b073a84e5ce92ba39.zip gcc-0ebfd2c928fda823acdd4b5b073a84e5ce92ba39.tar.gz gcc-0ebfd2c928fda823acdd4b5b073a84e5ce92ba39.tar.bz2 |
re PR tree-optimization/17454 (ICE with --enable-checking=fold)
PR tree-optimization/17454
* tree.c (tree_size): Add case for TREE_BINFO.
* fold-const.c (fold_checksum_tree): Only clear the overloaded
field TYPE_CACHED_VALUES if TYPE_CACHED_VALUES_P is set.
From-SVN: r96548
Diffstat (limited to 'gcc/tree.c')
-rw-r--r-- | gcc/tree.c | 4 |
1 files changed, 4 insertions, 0 deletions
@@ -243,6 +243,10 @@ tree_size (tree node) return (sizeof (struct tree_phi_node) + (PHI_ARG_CAPACITY (node) - 1) * sizeof (struct phi_arg_d)); + case TREE_BINFO: + return (offsetof (struct tree_binfo, base_binfos) + + VEC_embedded_size (tree, BINFO_N_BASE_BINFOS (node))); + case TREE_VEC: return (sizeof (struct tree_vec) + (TREE_VEC_LENGTH (node) - 1) * sizeof(char *)); |