This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Remove streaming of TYPE_NO_FORCE_BLK
- From: Jan Hubicka <hubicka at ucw dot cz>
- To: gcc-patches at gcc dot gnu dot org
- Date: Mon, 15 Jun 2015 01:41:23 +0200
- Subject: Remove streaming of TYPE_NO_FORCE_BLK
- Authentication-results: sourceware.org; auth=none
Hi,
as disucssed in the PR log, TYPE_NO_FORCE_BLK is local bookkepping of stor-layout
and does not need to be streamed. Bootstrapped/regtested x86_64-linux, tested
on firefox build and committed.
PR ipa/66181
* lto.c (compare_tree_sccs_1): Do not compare TYPE_NO_FORCE_BLK.
* lto-streamer-out.c (hash_tree): Do not hash TYPE_NO_FORCE_BLK.
* tree-streamer-out.c (pack_ts_type_common_value_fields): Do not stream
TYPE_NO_FORCE_BLK.
* tree-streamer-in.c (unpack_ts_type_common_value_fields): Likewise.
Index: lto/lto.c
===================================================================
--- lto/lto.c (revision 224470)
+++ lto/lto.c (working copy)
@@ -1159,7 +1159,6 @@ compare_tree_sccs_1 (tree t1, tree t2, t
{
compare_values (TYPE_MODE);
compare_values (TYPE_STRING_FLAG);
- compare_values (TYPE_NO_FORCE_BLK);
compare_values (TYPE_NEEDS_CONSTRUCTING);
if (RECORD_OR_UNION_TYPE_P (t1))
{
Index: lto-streamer-out.c
===================================================================
--- lto-streamer-out.c (revision 224470)
+++ lto-streamer-out.c (working copy)
@@ -1119,7 +1119,8 @@ hash_tree (struct streamer_tree_cache_d
{
hstate.add_wide_int (TYPE_MODE (t));
hstate.add_flag (TYPE_STRING_FLAG (t));
- hstate.add_flag (TYPE_NO_FORCE_BLK (t));
+ /* TYPE_NO_FORCE_BLK is private to stor-layout and need
+ no streaming. */
hstate.add_flag (TYPE_NEEDS_CONSTRUCTING (t));
hstate.add_flag (TYPE_PACKED (t));
hstate.add_flag (TYPE_RESTRICT (t));
Index: tree-streamer-out.c
===================================================================
--- tree-streamer-out.c (revision 224470)
+++ tree-streamer-out.c (working copy)
@@ -318,7 +318,8 @@ pack_ts_type_common_value_fields (struct
{
bp_pack_machine_mode (bp, TYPE_MODE (expr));
bp_pack_value (bp, TYPE_STRING_FLAG (expr), 1);
- bp_pack_value (bp, TYPE_NO_FORCE_BLK (expr), 1);
+ /* TYPE_NO_FORCE_BLK is private to stor-layout and need
+ no streaming. */
bp_pack_value (bp, TYPE_NEEDS_CONSTRUCTING (expr), 1);
if (RECORD_OR_UNION_TYPE_P (expr))
{
Index: tree-streamer-in.c
===================================================================
--- tree-streamer-in.c (revision 224470)
+++ tree-streamer-in.c (working copy)
@@ -370,7 +370,8 @@ unpack_ts_type_common_value_fields (stru
mode = bp_unpack_machine_mode (bp);
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_NO_FORCE_BLK is private to stor-layout and need
+ no streaming. */
TYPE_NEEDS_CONSTRUCTING (expr) = (unsigned) bp_unpack_value (bp, 1);
if (RECORD_OR_UNION_TYPE_P (expr))
{