From: Richard Guenther Date: Fri, 28 Sep 2012 09:03:00 +0000 (+0000) Subject: cgraph.h (symtab_node_base): Re-order and pack fields. X-Git-Tag: misc/gccgo-go1_1_2~593 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b8dbdb1275f24e94c8f9f80154676967116fff5a;p=thirdparty%2Fgcc.git cgraph.h (symtab_node_base): Re-order and pack fields. 2012-09-28 Richard Guenther * cgraph.h (symtab_node_base): Re-order and pack fields. From-SVN: r191823 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 50675ea69559..3f6ced69e6e5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2012-09-28 Richard Guenther + + * cgraph.h (symtab_node_base): Re-order and pack fields. + 2012-09-28 Georg-Johann Lay * config/avr/avr.c (avr_pgm_check_var_decl): Fix non-error diagnostic. diff --git a/gcc/cgraph.h b/gcc/cgraph.h index b8001a62bc78..6291f337aae7 100644 --- a/gcc/cgraph.h +++ b/gcc/cgraph.h @@ -43,14 +43,37 @@ enum symtab_type struct GTY(()) symtab_node_base { /* Type of the symbol. */ - enum symtab_type type; + ENUM_BITFIELD (symtab_type) type : 8; + + /* The symbols resolution. */ + ENUM_BITFIELD (ld_plugin_symbol_resolution) resolution : 8; + + /* Set when function has address taken. + In current implementation it imply needed flag. */ + unsigned address_taken : 1; + /* Set when variable is used from other LTRANS partition. */ + unsigned used_from_other_partition : 1; + /* Set when function is available in the other LTRANS partition. + During WPA output it is used to mark nodes that are present in + multiple partitions. */ + unsigned in_other_partition : 1; + /* Set when function is visible by other units. */ + unsigned externally_visible : 1; + /* Needed variables might become dead by optimization. This flag + forces the variable to be output even if it appears dead otherwise. */ + unsigned force_output : 1; + + /* Ordering of all symtab entries. */ + int order; + tree decl; + + /* Vectors of referring and referenced entities. */ struct ipa_ref_list ref_list; + /* Circular list of nodes in the same comdat group if non-NULL. */ symtab_node same_comdat_group; - /* Ordering of all symtab entries. */ - int order; - enum ld_plugin_symbol_resolution resolution; + /* File stream where this node is being written to. */ struct lto_file_decl_data * lto_file_data; @@ -65,21 +88,6 @@ struct GTY(()) symtab_node_base symtab_node previous_sharing_asm_name; PTR GTY ((skip)) aux; - - /* Set when function has address taken. - In current implementation it imply needed flag. */ - unsigned address_taken : 1; - /* Set when variable is used from other LTRANS partition. */ - unsigned used_from_other_partition : 1; - /* Set when function is available in the other LTRANS partition. - During WPA output it is used to mark nodes that are present in - multiple partitions. */ - unsigned in_other_partition : 1; - /* Set when function is visible by other units. */ - unsigned externally_visible : 1; - /* Needed variables might become dead by optimization. This flag - forces the variable to be output even if it appears dead otherwise. */ - unsigned force_output : 1; }; enum availability