Commit 3691626c by Richard Guenther Committed by Richard Biener

cgraph.h (struct cgraph_node): Reorder fields for 64-bit hosts.

2009-03-23  Richard Guenther  <rguenther@suse.de>

	* cgraph.h (struct cgraph_node): Reorder fields for 64-bit hosts.
	* tree.h (struct tree_type): Likewise.
	* reload.h (struct insn_chain): Likewise.
	* dwarf2out.c (struct dw_loc_descr_struct): Likewise.
	* function.h (struct function): Likewise.
	* tree-ssa-structalias.c (struct equiv_class_label): Likewise.

From-SVN: r145009
parent 88ccb72a
2009-03-23 Richard Guenther <rguenther@suse.de>
* cgraph.h (struct cgraph_node): Reorder fields for 64-bit hosts.
* tree.h (struct tree_type): Likewise.
* reload.h (struct insn_chain): Likewise.
* dwarf2out.c (struct dw_loc_descr_struct): Likewise.
* function.h (struct function): Likewise.
* tree-ssa-structalias.c (struct equiv_class_label): Likewise.
2009-03-23 Jakub Jelinek <jakub@redhat.com> 2009-03-23 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/39516 PR tree-optimization/39516
......
...@@ -163,6 +163,10 @@ struct cgraph_node GTY((chain_next ("%h.next"), chain_prev ("%h.previous"))) ...@@ -163,6 +163,10 @@ struct cgraph_node GTY((chain_next ("%h.next"), chain_prev ("%h.previous")))
/* Ordering of all cgraph nodes. */ /* Ordering of all cgraph nodes. */
int order; int order;
/* unique id for profiling. pid is not suitable because of different
number of cfg nodes with -fprofile-generate and -fprofile-use */
int pid;
/* Set when function must be output - it is externally visible /* Set when function must be output - it is externally visible
or its address is taken. */ or its address is taken. */
unsigned needed : 1; unsigned needed : 1;
...@@ -186,10 +190,6 @@ struct cgraph_node GTY((chain_next ("%h.next"), chain_prev ("%h.previous"))) ...@@ -186,10 +190,6 @@ struct cgraph_node GTY((chain_next ("%h.next"), chain_prev ("%h.previous")))
into clone before compiling so the function in original form can be into clone before compiling so the function in original form can be
inlined later. This pointer points to the clone. */ inlined later. This pointer points to the clone. */
tree inline_decl; tree inline_decl;
/* unique id for profiling. pid is not suitable because of different
number of cfg nodes with -fprofile-generate and -fprofile-use */
int pid;
}; };
struct cgraph_edge GTY((chain_next ("%h.next_caller"), chain_prev ("%h.prev_caller"))) struct cgraph_edge GTY((chain_next ("%h.next_caller"), chain_prev ("%h.prev_caller")))
......
...@@ -3499,9 +3499,9 @@ typedef struct dw_loc_descr_struct GTY(()) ...@@ -3499,9 +3499,9 @@ typedef struct dw_loc_descr_struct GTY(())
{ {
dw_loc_descr_ref dw_loc_next; dw_loc_descr_ref dw_loc_next;
enum dwarf_location_atom dw_loc_opc; enum dwarf_location_atom dw_loc_opc;
int dw_loc_addr;
dw_val_node dw_loc_oprnd1; dw_val_node dw_loc_oprnd1;
dw_val_node dw_loc_oprnd2; dw_val_node dw_loc_oprnd2;
int dw_loc_addr;
} }
dw_loc_descr_node; dw_loc_descr_node;
......
...@@ -501,9 +501,6 @@ struct function GTY(()) ...@@ -501,9 +501,6 @@ struct function GTY(())
pointer. */ pointer. */
tree nonlocal_goto_save_area; tree nonlocal_goto_save_area;
/* Function sequence number for profiling, debugging, etc. */
int funcdef_no;
/* List of function local variables, functions, types and constants. */ /* List of function local variables, functions, types and constants. */
tree local_decls; tree local_decls;
...@@ -521,6 +518,9 @@ struct function GTY(()) ...@@ -521,6 +518,9 @@ struct function GTY(())
/* Last statement uid. */ /* Last statement uid. */
int last_stmt_uid; int last_stmt_uid;
/* Function sequence number for profiling, debugging, etc. */
int funcdef_no;
/* Line number of the start of the function for debugging purposes. */ /* Line number of the start of the function for debugging purposes. */
location_t function_start_locus; location_t function_start_locus;
......
...@@ -205,10 +205,22 @@ struct insn_chain ...@@ -205,10 +205,22 @@ struct insn_chain
all insns that need reloading. */ all insns that need reloading. */
struct insn_chain *next_need_reload; struct insn_chain *next_need_reload;
/* The basic block this insn is in. */
int block;
/* The rtx of the insn. */ /* The rtx of the insn. */
rtx insn; rtx insn;
/* The basic block this insn is in. */
int block;
/* Nonzero if find_reloads said the insn requires reloading. */
unsigned int need_reload:1;
/* Nonzero if find_reloads needs to be run during reload_as_needed to
perform modifications on any operands. */
unsigned int need_operand_change:1;
/* Nonzero if eliminate_regs_in_insn said it requires eliminations. */
unsigned int need_elim:1;
/* Nonzero if this insn was inserted by perform_caller_saves. */
unsigned int is_caller_save_insn:1;
/* Register life information: record all live hard registers, and /* Register life information: record all live hard registers, and
all live pseudos that have a hard register. This set also all live pseudos that have a hard register. This set also
contains pseudos spilled by IRA. */ contains pseudos spilled by IRA. */
...@@ -221,16 +233,6 @@ struct insn_chain ...@@ -221,16 +233,6 @@ struct insn_chain
/* Indicates which registers have already been used for spills. */ /* Indicates which registers have already been used for spills. */
HARD_REG_SET used_spill_regs; HARD_REG_SET used_spill_regs;
/* Nonzero if find_reloads said the insn requires reloading. */
unsigned int need_reload:1;
/* Nonzero if find_reloads needs to be run during reload_as_needed to
perform modifications on any operands. */
unsigned int need_operand_change:1;
/* Nonzero if eliminate_regs_in_insn said it requires eliminations. */
unsigned int need_elim:1;
/* Nonzero if this insn was inserted by perform_caller_saves. */
unsigned int is_caller_save_insn:1;
}; };
/* A chain of insn_chain structures to describe all non-note insns in /* A chain of insn_chain structures to describe all non-note insns in
......
...@@ -1817,9 +1817,9 @@ compute_topo_order (constraint_graph_t graph, ...@@ -1817,9 +1817,9 @@ compute_topo_order (constraint_graph_t graph,
typedef struct equiv_class_label typedef struct equiv_class_label
{ {
hashval_t hashcode;
unsigned int equivalence_class; unsigned int equivalence_class;
bitmap labels; bitmap labels;
hashval_t hashcode;
} *equiv_class_label_t; } *equiv_class_label_t;
typedef const struct equiv_class_label *const_equiv_class_label_t; typedef const struct equiv_class_label *const_equiv_class_label_t;
......
...@@ -2286,6 +2286,7 @@ struct tree_type GTY(()) ...@@ -2286,6 +2286,7 @@ struct tree_type GTY(())
unsigned user_align : 1; unsigned user_align : 1;
unsigned int align; unsigned int align;
alias_set_type alias_set;
tree pointer_to; tree pointer_to;
tree reference_to; tree reference_to;
union tree_type_symtab { union tree_type_symtab {
...@@ -2302,7 +2303,6 @@ struct tree_type GTY(()) ...@@ -2302,7 +2303,6 @@ struct tree_type GTY(())
tree binfo; tree binfo;
tree context; tree context;
tree canonical; tree canonical;
alias_set_type alias_set;
/* Points to a structure whose details depend on the language in use. */ /* Points to a structure whose details depend on the language in use. */
struct lang_type *lang_specific; struct lang_type *lang_specific;
}; };
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment