diff options
author | Douglas Gregor <doug.gregor@gmail.com> | 2007-03-28 01:56:58 +0000 |
---|---|---|
committer | Mike Stump <mrs@gcc.gnu.org> | 2007-03-28 01:56:58 +0000 |
commit | 00ffc97ce59b8695a48933ed1d1d0835aaface6c (patch) | |
tree | 8acdd6fce8f5692e190ad047db59b4f8614ce5d2 /gcc/tree.h | |
parent | 82f1c4b5fa00d766dfbcc089b2d23663cc96cb96 (diff) | |
download | gcc-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.h | 8 |
1 files changed, 5 insertions, 3 deletions
@@ -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; |