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 | |
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
-rw-r--r-- | gcc/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/tree.c | 2 | ||||
-rw-r--r-- | gcc/tree.h | 8 |
3 files changed, 14 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index add07bc..246d5e4 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +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. + 2007-03-27 Anatoly Sokolov <aesok@post.ru> * config/avr/avr.c (avr_mcu_types): Move at90usb82 device to 'avr4' @@ -168,7 +168,7 @@ static unsigned int attribute_hash_list (tree, hashval_t); tree global_trees[TI_MAX]; tree integer_types[itk_none]; -unsigned char tree_contains_struct[256][64]; +unsigned char tree_contains_struct[MAX_TREE_CODES][64]; /* Number of operands for each OpenMP clause. */ unsigned const char omp_clause_num_ops[] = @@ -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; |