aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-streamer-in.c
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2013-08-29 18:23:40 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2013-08-29 16:23:40 +0000
commit0170f33ca07c5029df38c8e95477d6040fda280e (patch)
tree1df39b88ca7b48b23bb85cc3489bbbadade48d83 /gcc/tree-streamer-in.c
parent103ff0d65e9033a2fdf05b4f4c9b7686d95e78c0 (diff)
downloadgcc-0170f33ca07c5029df38c8e95477d6040fda280e.zip
gcc-0170f33ca07c5029df38c8e95477d6040fda280e.tar.gz
gcc-0170f33ca07c5029df38c8e95477d6040fda280e.tar.bz2
lto.c (compare_tree_sccs_1): Compare DECL_FINAL_P...
* lto.c (compare_tree_sccs_1): Compare DECL_FINAL_P, DECL_CXX_CONSTRUCTOR_P, DECL_CXX_DESTRUCTOR_P and TYPE_FINAL_P. * lto-streamer-out.c (hash_tree): Stream DECL_FINAL_P. DECL_CXX_CONSTRUCTOR_P. DECL_CXX_DESTRUCTOR_P. TYPE_FINAL_P. * lto-streamer-in.c (unpack_ts_decl_with_vis_value_fields): DECL_FINAL_P. DECL_CXX_CONSTRUCTOR_P and DECL_CXX_DESTRUCTOR_P. (unpack_ts_type_common_value_fields): Stream TYPE_FINAL_P. * tree-streamer-out.c (pack_ts_decl_with_vis_value_fields): Add DECL_FINAL_P, DECL_CXX_CONSTRUCTOR_P, DECL_CXX_DESTRUCTOR_P (pack_ts_type_common_value_fields): Add TYPE_FINAL_P. From-SVN: r202079
Diffstat (limited to 'gcc/tree-streamer-in.c')
-rw-r--r--gcc/tree-streamer-in.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/gcc/tree-streamer-in.c b/gcc/tree-streamer-in.c
index 47a539a..a86bcd8 100644
--- a/gcc/tree-streamer-in.c
+++ b/gcc/tree-streamer-in.c
@@ -272,6 +272,12 @@ unpack_ts_decl_with_vis_value_fields (struct bitpack_d *bp, tree expr)
DECL_TLS_MODEL (expr) = (enum tls_model) bp_unpack_value (bp, 3);
}
+ if (TREE_CODE (expr) == FUNCTION_DECL)
+ {
+ DECL_FINAL_P (expr) = (unsigned) bp_unpack_value (bp, 1);
+ DECL_CXX_CONSTRUCTOR_P (expr) = (unsigned) bp_unpack_value (bp, 1);
+ DECL_CXX_DESTRUCTOR_P (expr) = (unsigned) bp_unpack_value (bp, 1);
+ }
if (VAR_OR_FUNCTION_DECL_P (expr))
{
priority_type p;
@@ -343,7 +349,10 @@ unpack_ts_type_common_value_fields (struct bitpack_d *bp, tree expr)
TYPE_NO_FORCE_BLK (expr) = (unsigned) bp_unpack_value (bp, 1);
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_TRANSPARENT_AGGR (expr) = (unsigned) bp_unpack_value (bp, 1);
+ TYPE_FINAL_P (expr) = (unsigned) bp_unpack_value (bp, 1);
+ }
else if (TREE_CODE (expr) == ARRAY_TYPE)
TYPE_NONALIASED_COMPONENT (expr) = (unsigned) bp_unpack_value (bp, 1);
TYPE_PACKED (expr) = (unsigned) bp_unpack_value (bp, 1);