aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree.h
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2004-09-13 13:27:05 -0700
committerRichard Henderson <rth@gcc.gnu.org>2004-09-13 13:27:05 -0700
commita5bfe14186a3eb1665baa0264801655cab77ce0c (patch)
tree65253905bbbe5f77a01c8fc77ee164b1ef236d90 /gcc/tree.h
parent1823bf53abf47bcd2417da90df1cd4ba4c2bf094 (diff)
downloadgcc-a5bfe14186a3eb1665baa0264801655cab77ce0c.zip
gcc-a5bfe14186a3eb1665baa0264801655cab77ce0c.tar.gz
gcc-a5bfe14186a3eb1665baa0264801655cab77ce0c.tar.bz2
re PR tree-optimization/17436 (Huge memory use regression)
PR 17436 * tree.h (TYPE_CONTAINS_PLACEHOLDER_INTERNAL): New. (tree_type): Replace spare with contains_placeholder_bits. (type_contains_placeholder_1): Rename from type_contains_placeholder_p, make static. Remove seen_types list. (type_contains_placeholder_p): New. From-SVN: r87447
Diffstat (limited to 'gcc/tree.h')
-rw-r--r--gcc/tree.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/gcc/tree.h b/gcc/tree.h
index 9524025..015f8d3 100644
--- a/gcc/tree.h
+++ b/gcc/tree.h
@@ -1572,6 +1572,12 @@ struct tree_block GTY(())
compact a way as possible. */
#define TYPE_PACKED(NODE) (TYPE_CHECK (NODE)->type.packed_flag)
+/* Used by type_contains_placeholder_p to avoid recomputation.
+ Values are: 0 (unknown), 1 (false), 2 (true). Never access
+ this field directly. */
+#define TYPE_CONTAINS_PLACEHOLDER_INTERNAL(NODE) \
+ (TYPE_CHECK (NODE)->type.contains_placeholder_bits)
+
struct die_struct;
struct tree_type GTY(())
@@ -1592,7 +1598,7 @@ struct tree_type GTY(())
unsigned transparent_union_flag : 1;
unsigned packed_flag : 1;
unsigned restrict_flag : 1;
- unsigned spare : 2;
+ unsigned contains_placeholder_bits : 2;
unsigned lang_flag_0 : 1;
unsigned lang_flag_1 : 1;