]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
ipa-pure-const.c (check_decl): Do not test TYPE_NEEDS_CONSTRUCTING.
authorJan Hubicka <jh@suse.cz>
Tue, 6 Nov 2018 12:46:46 +0000 (13:46 +0100)
committerJan Hubicka <hubicka@gcc.gnu.org>
Tue, 6 Nov 2018 12:46:46 +0000 (12:46 +0000)
* ipa-pure-const.c (check_decl): Do not test TYPE_NEEDS_CONSTRUCTING.
* lto-streamer-out.c (hash_tree): Do not hash TYPE_NEEDS_CONSTRUCTING.
* tree-streamer-in.c (unpack_ts_type_common_value_fields): Do not
stream TYPE_NEEDS_CONSTRUCTING.
* tree-streamer-out.c (pack_ts_type_common_value_fields): Likewise.
* tree.c (free_lang_data_in_type): Clear TYPE_NEEDS_CONSTRUCTING.

From-SVN: r265841

gcc/ChangeLog
gcc/ipa-pure-const.c
gcc/lto-streamer-out.c
gcc/tree-streamer-in.c
gcc/tree-streamer-out.c
gcc/tree.c

index a047c8d5370342be5eca6e907b83b71e7d4b6e21..abe98c35c5b6cb81ec282ca96b2c92e6330480e5 100644 (file)
@@ -1,3 +1,12 @@
+2018-11-06  Jan Hubicka  <jh@suse.cz>
+
+       * ipa-pure-const.c (check_decl): Do not test TYPE_NEEDS_CONSTRUCTING.
+       * lto-streamer-out.c (hash_tree): Do not hash TYPE_NEEDS_CONSTRUCTING.
+       * tree-streamer-in.c (unpack_ts_type_common_value_fields): Do not
+       stream TYPE_NEEDS_CONSTRUCTING.
+       * tree-streamer-out.c (pack_ts_type_common_value_fields): Likewise.
+       * tree.c (free_lang_data_in_type): Clear TYPE_NEEDS_CONSTRUCTING.
+
 2018-11-06  Richard Biener  <rguenther@suse.de>
 
        * tree-vect-slp.c (vect_slp_bb): Move opening of vect_slp_analyze_bb
index 1ca1d60517ee345cadd779c44b59a974f6ca3237..4418eefd3d197020e14e0cafdd4bef7341dcddbc 100644 (file)
@@ -339,7 +339,7 @@ check_decl (funct_state local,
   if (DECL_EXTERNAL (t) || TREE_PUBLIC (t))
     {
       /* Readonly reads are safe.  */
-      if (TREE_READONLY (t) && !TYPE_NEEDS_CONSTRUCTING (TREE_TYPE (t)))
+      if (TREE_READONLY (t))
        return; /* Read of a constant, do not change the function state.  */
       else
        {
index 21ac1a466596875b89fc12e6fd3498c7c3f95f64..e8f6a691301bccf7d1cc6851a060bc8950a6c40b 100644 (file)
@@ -1147,7 +1147,6 @@ hash_tree (struct streamer_tree_cache_d *cache, hash_map<tree, hashval_t> *map,
       hstate.add_flag (TYPE_STRING_FLAG (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));
       hstate.add_flag (TYPE_USER_ALIGN (t));
index bd98ed0b128f27dc7a94bb61b10dd2a36f25f405..f1e824421f02b856becef3829cde735260be736a 100644 (file)
@@ -367,7 +367,6 @@ unpack_ts_type_common_value_fields (struct bitpack_d *bp, tree expr)
   TYPE_STRING_FLAG (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);
   TYPE_PACKED (expr) = (unsigned) bp_unpack_value (bp, 1);
   TYPE_RESTRICT (expr) = (unsigned) bp_unpack_value (bp, 1);
   TYPE_USER_ALIGN (expr) = (unsigned) bp_unpack_value (bp, 1);
index 7f97c40277aaade545494216895aa529ad079ce9..55abd3cc503cba431b993c0a6af3231273989b2e 100644 (file)
@@ -314,7 +314,6 @@ pack_ts_type_common_value_fields (struct bitpack_d *bp, tree expr)
   bp_pack_value (bp, TYPE_STRING_FLAG (expr), 1);
   /* TYPE_NO_FORCE_BLK is private to stor-layout and need
      no streaming.  */
-  bp_pack_value (bp, TYPE_NEEDS_CONSTRUCTING (expr), 1);
   bp_pack_value (bp, TYPE_PACKED (expr), 1);
   bp_pack_value (bp, TYPE_RESTRICT (expr), 1);
   bp_pack_value (bp, TYPE_USER_ALIGN (expr), 1);
index 564782490347a978b96ce583645f0032b1ee843e..a6b187c07b4cbc84e572f4ac44792991ed25773e 100644 (file)
@@ -5259,6 +5259,8 @@ free_lang_data_in_type (tree type)
   TREE_LANG_FLAG_5 (type) = 0;
   TREE_LANG_FLAG_6 (type) = 0;
 
+  TYPE_NEEDS_CONSTRUCTING (type) = 0;
+
   if (TREE_CODE (type) == FUNCTION_TYPE)
     {
       /* Remove the const and volatile qualifiers from arguments.  The