aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree.h
diff options
context:
space:
mode:
authorDouglas Gregor <doug.gregor@gmail.com>2007-03-28 01:56:58 +0000
committerMike Stump <mrs@gcc.gnu.org>2007-03-28 01:56:58 +0000
commit00ffc97ce59b8695a48933ed1d1d0835aaface6c (patch)
tree8acdd6fce8f5692e190ad047db59b4f8614ce5d2 /gcc/tree.h
parent82f1c4b5fa00d766dfbcc089b2d23663cc96cb96 (diff)
downloadgcc-00ffc97ce59b8695a48933ed1d1d0835aaface6c.zip
gcc-00ffc97ce59b8695a48933ed1d1d0835aaface6c.tar.gz
gcc-00ffc97ce59b8695a48933ed1d1d0835aaface6c.tar.bz2
tree.c (tree_contains_struct): Permit 512 tree codes.
2007-03-27 Douglas Gregor <doug.gregor@gmail.com> * tree.c (tree_contains_struct): Permit 512 tree codes. * tree.h (tree_contains_struct): Ditto. (MAX_TREE_CODES): Ditto. (struct tree_base): Make CODE 16 bits, instead of 8 bits. Add SPARE member to store remaining padding bits. From-SVN: r123287
Diffstat (limited to 'gcc/tree.h')
-rw-r--r--gcc/tree.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/gcc/tree.h b/gcc/tree.h
index 6cd846d..429b202 100644
--- a/gcc/tree.h
+++ b/gcc/tree.h
@@ -41,7 +41,8 @@ enum tree_code {
#undef DEFTREECODE
-extern unsigned char tree_contains_struct[256][64];
+#define MAX_TREE_CODES 512
+extern unsigned char tree_contains_struct[MAX_TREE_CODES][64];
#define CODE_CONTAINS_STRUCT(CODE, STRUCT) (tree_contains_struct[(CODE)][(STRUCT)])
/* Number of language-independent tree codes. */
@@ -80,7 +81,6 @@ extern const char *const tree_code_class_strings[];
#define TREE_CODE_CLASS_STRING(CLASS)\
tree_code_class_strings[(int) (CLASS)]
-#define MAX_TREE_CODES 256
extern const enum tree_code_class tree_code_type[];
#define TREE_CODE_CLASS(CODE) tree_code_type[(int) (CODE)]
@@ -363,7 +363,7 @@ union tree_ann_d;
struct tree_base GTY(())
{
- ENUM_BITFIELD(tree_code) code : 8;
+ ENUM_BITFIELD(tree_code) code : 16;
unsigned side_effects_flag : 1;
unsigned constant_flag : 1;
@@ -392,6 +392,8 @@ struct tree_base GTY(())
unsigned lang_flag_6 : 1;
unsigned visited : 1;
+ unsigned spare : 24;
+
/* FIXME tuples: Eventually, we need to move this somewhere external to
the trees. */
union tree_ann_d *ann;