diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2010-04-28 20:03:02 +0000 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2010-04-28 20:03:02 +0000 |
commit | 91eace2bff89309929a542a9f3f886978a4c04d7 (patch) | |
tree | d8bc53a8850807172136dba3487b68e49c937815 | |
parent | ab6edba459335999c6ca4316399754036d0439e7 (diff) | |
download | gcc-91eace2bff89309929a542a9f3f886978a4c04d7.zip gcc-91eace2bff89309929a542a9f3f886978a4c04d7.tar.gz gcc-91eace2bff89309929a542a9f3f886978a4c04d7.tar.bz2 |
lto-streamer-in.c (unpack_ts_type_value_fields): Replace test for record or union type with RECORD_OR_UNION_TYPE_P predicate.
* lto-streamer-in.c (unpack_ts_type_value_fields): Replace test for
record or union type with RECORD_OR_UNION_TYPE_P predicate.
(lto_input_ts_type_tree_pointers): Likewise.
* lto-streamer-out.c (pack_ts_type_value_fields): Likewise.
(lto_output_ts_type_tree_pointers): Likewise.
From-SVN: r158841
-rw-r--r-- | gcc/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/lto-streamer-in.c | 9 | ||||
-rw-r--r-- | gcc/lto-streamer-out.c | 11 |
3 files changed, 19 insertions, 9 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ca56821..7fcbf04 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,13 @@ 2010-04-28 Eric Botcazou <ebotcazou@adacore.com> + * lto-streamer-in.c (unpack_ts_type_value_fields): Replace test for + record or union type with RECORD_OR_UNION_TYPE_P predicate. + (lto_input_ts_type_tree_pointers): Likewise. + * lto-streamer-out.c (pack_ts_type_value_fields): Likewise. + (lto_output_ts_type_tree_pointers): Likewise. + +2010-04-28 Eric Botcazou <ebotcazou@adacore.com> + Uniquization of constants at the Tree level * tree.h (DECL_IN_CONSTANT_POOL): New macro. (tree_decl_with_vis): Add in_constant_pool bit, move shadowed_for_var_p diff --git a/gcc/lto-streamer-in.c b/gcc/lto-streamer-in.c index d5860ea..bbcd2ab 100644 --- a/gcc/lto-streamer-in.c +++ b/gcc/lto-streamer-in.c @@ -1774,8 +1774,8 @@ unpack_ts_type_value_fields (struct bitpack_d *bp, tree expr) SET_TYPE_MODE (expr, mode); TYPE_STRING_FLAG (expr) = (unsigned) bp_unpack_value (bp, 1); TYPE_NO_FORCE_BLK (expr) = (unsigned) bp_unpack_value (bp, 1); - TYPE_NEEDS_CONSTRUCTING(expr) = (unsigned) bp_unpack_value (bp, 1); - if (TREE_CODE (expr) == UNION_TYPE || TREE_CODE (expr) == RECORD_TYPE) + TYPE_NEEDS_CONSTRUCTING (expr) = (unsigned) bp_unpack_value (bp, 1); + if (RECORD_OR_UNION_TYPE_P (expr)) TYPE_TRANSPARENT_AGGR (expr) = (unsigned) bp_unpack_value (bp, 1); TYPE_PACKED (expr) = (unsigned) bp_unpack_value (bp, 1); TYPE_RESTRICT (expr) = (unsigned) bp_unpack_value (bp, 1); @@ -2167,9 +2167,10 @@ lto_input_ts_type_tree_pointers (struct lto_input_block *ib, TYPE_VALUES (expr) = lto_input_tree (ib, data_in); else if (TREE_CODE (expr) == ARRAY_TYPE) TYPE_DOMAIN (expr) = lto_input_tree (ib, data_in); - else if (TREE_CODE (expr) == RECORD_TYPE || TREE_CODE (expr) == UNION_TYPE) + else if (RECORD_OR_UNION_TYPE_P (expr)) TYPE_FIELDS (expr) = lto_input_tree (ib, data_in); - else if (TREE_CODE (expr) == FUNCTION_TYPE || TREE_CODE (expr) == METHOD_TYPE) + else if (TREE_CODE (expr) == FUNCTION_TYPE + || TREE_CODE (expr) == METHOD_TYPE) TYPE_ARG_TYPES (expr) = lto_input_tree (ib, data_in); else if (TREE_CODE (expr) == VECTOR_TYPE) TYPE_DEBUG_REPRESENTATION_TYPE (expr) = lto_input_tree (ib, data_in); diff --git a/gcc/lto-streamer-out.c b/gcc/lto-streamer-out.c index 055ca3a..99a7da1 100644 --- a/gcc/lto-streamer-out.c +++ b/gcc/lto-streamer-out.c @@ -518,8 +518,8 @@ pack_ts_type_value_fields (struct bitpack_d *bp, tree expr) bp_pack_value (bp, TYPE_MODE (expr), 7); bp_pack_value (bp, TYPE_STRING_FLAG (expr), 1); bp_pack_value (bp, TYPE_NO_FORCE_BLK (expr), 1); - bp_pack_value (bp, TYPE_NEEDS_CONSTRUCTING(expr), 1); - if (TREE_CODE (expr) == UNION_TYPE || TREE_CODE (expr) == RECORD_TYPE) + bp_pack_value (bp, TYPE_NEEDS_CONSTRUCTING (expr), 1); + if (RECORD_OR_UNION_TYPE_P (expr)) bp_pack_value (bp, TYPE_TRANSPARENT_AGGR (expr), 1); bp_pack_value (bp, TYPE_PACKED (expr), 1); bp_pack_value (bp, TYPE_RESTRICT (expr), 1); @@ -947,9 +947,10 @@ lto_output_ts_type_tree_pointers (struct output_block *ob, tree expr, lto_output_tree_or_ref (ob, TYPE_VALUES (expr), ref_p); else if (TREE_CODE (expr) == ARRAY_TYPE) lto_output_tree_or_ref (ob, TYPE_DOMAIN (expr), ref_p); - else if (TREE_CODE (expr) == RECORD_TYPE || TREE_CODE (expr) == UNION_TYPE) + else if (RECORD_OR_UNION_TYPE_P (expr)) lto_output_tree_or_ref (ob, TYPE_FIELDS (expr), ref_p); - else if (TREE_CODE (expr) == FUNCTION_TYPE || TREE_CODE (expr) == METHOD_TYPE) + else if (TREE_CODE (expr) == FUNCTION_TYPE + || TREE_CODE (expr) == METHOD_TYPE) lto_output_tree_or_ref (ob, TYPE_ARG_TYPES (expr), ref_p); else if (TREE_CODE (expr) == VECTOR_TYPE) lto_output_tree_or_ref (ob, TYPE_DEBUG_REPRESENTATION_TYPE (expr), ref_p); @@ -966,7 +967,7 @@ lto_output_ts_type_tree_pointers (struct output_block *ob, tree expr, lto_output_tree_or_ref (ob, TYPE_MAIN_VARIANT (expr), ref_p); /* Do not stream TYPE_NEXT_VARIANT, we reconstruct the variant lists during fixup. */ - if (TREE_CODE (expr) == RECORD_TYPE || TREE_CODE (expr) == UNION_TYPE) + if (RECORD_OR_UNION_TYPE_P (expr)) lto_output_tree_or_ref (ob, TYPE_BINFO (expr), ref_p); lto_output_tree_or_ref (ob, TYPE_CONTEXT (expr), ref_p); lto_output_tree_or_ref (ob, TYPE_CANONICAL (expr), ref_p); |