tree.h (struct tree_block): Move locus member next to flags.
2007-11-25 Richard Guenther <rguenther@suse.de> * tree.h (struct tree_block): Move locus member next to flags. * c-decl.c (SCOPE_LIST_APPEND): Use BLOCK_CHAIN. (SCOPE_LIST_CONCAT): Likewise. (pop_scope): Likewise. * function.c (instantiate_decls_1): Likewise. (setjmp_vars_warning): Likewise. * emit-rtl.c (set_used_decls): Likewise. * tree-inline.c (add_lexical_block): Likewise. cp/ decl.c (poplevel): Use BLOCK_CHAIN. ada/ utils.c (gnat_pushlevel): Use BLOCK_CHAIN. (gnat_poplevel): Likewise. From-SVN: r130407
This commit is contained in:
parent
f1c8c7eef7
commit
87caf699bd
10 changed files with 35 additions and 13 deletions
|
@ -1,3 +1,15 @@
|
||||||
|
2007-11-25 Richard Guenther <rguenther@suse.de>
|
||||||
|
|
||||||
|
* tree.h (struct tree_block): Move locus member next to
|
||||||
|
flags.
|
||||||
|
* c-decl.c (SCOPE_LIST_APPEND): Use BLOCK_CHAIN.
|
||||||
|
(SCOPE_LIST_CONCAT): Likewise.
|
||||||
|
(pop_scope): Likewise.
|
||||||
|
* function.c (instantiate_decls_1): Likewise.
|
||||||
|
(setjmp_vars_warning): Likewise.
|
||||||
|
* emit-rtl.c (set_used_decls): Likewise.
|
||||||
|
* tree-inline.c (add_lexical_block): Likewise.
|
||||||
|
|
||||||
2007-11-24 Hans-Peter Nilsson <hp@axis.com>
|
2007-11-24 Hans-Peter Nilsson <hp@axis.com>
|
||||||
|
|
||||||
* rtlanal.c (label_is_jump_target_p): Return true for a matching
|
* rtlanal.c (label_is_jump_target_p): Return true for a matching
|
||||||
|
|
|
@ -1,3 +1,8 @@
|
||||||
|
2007-11-25 Richard Guenther <rguenther@suse.de>
|
||||||
|
|
||||||
|
utils.c (gnat_pushlevel): Use BLOCK_CHAIN.
|
||||||
|
(gnat_poplevel): Likewise.
|
||||||
|
|
||||||
2007-11-25 Eric Botcazou <ebotcazou@adacore.com>
|
2007-11-25 Eric Botcazou <ebotcazou@adacore.com>
|
||||||
|
|
||||||
* decl.c (gnat_to_gnu_entity) <E_Record_Type>: If the type has
|
* decl.c (gnat_to_gnu_entity) <E_Record_Type>: If the type has
|
||||||
|
|
|
@ -298,8 +298,8 @@ gnat_pushlevel ()
|
||||||
if (free_block_chain)
|
if (free_block_chain)
|
||||||
{
|
{
|
||||||
newlevel->block = free_block_chain;
|
newlevel->block = free_block_chain;
|
||||||
free_block_chain = TREE_CHAIN (free_block_chain);
|
free_block_chain = BLOCK_CHAIN (free_block_chain);
|
||||||
TREE_CHAIN (newlevel->block) = NULL_TREE;
|
BLOCK_CHAIN (newlevel->block) = NULL_TREE;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
newlevel->block = make_node (BLOCK);
|
newlevel->block = make_node (BLOCK);
|
||||||
|
@ -365,12 +365,12 @@ gnat_poplevel ()
|
||||||
BLOCK_SUBBLOCKS (level->chain->block)
|
BLOCK_SUBBLOCKS (level->chain->block)
|
||||||
= chainon (BLOCK_SUBBLOCKS (block),
|
= chainon (BLOCK_SUBBLOCKS (block),
|
||||||
BLOCK_SUBBLOCKS (level->chain->block));
|
BLOCK_SUBBLOCKS (level->chain->block));
|
||||||
TREE_CHAIN (block) = free_block_chain;
|
BLOCK_CHAIN (block) = free_block_chain;
|
||||||
free_block_chain = block;
|
free_block_chain = block;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
TREE_CHAIN (block) = BLOCK_SUBBLOCKS (level->chain->block);
|
BLOCK_CHAIN (block) = BLOCK_SUBBLOCKS (level->chain->block);
|
||||||
BLOCK_SUBBLOCKS (level->chain->block) = block;
|
BLOCK_SUBBLOCKS (level->chain->block) = block;
|
||||||
TREE_USED (block) = 1;
|
TREE_USED (block) = 1;
|
||||||
set_block_for_group (block);
|
set_block_for_group (block);
|
||||||
|
|
|
@ -375,7 +375,7 @@ static GTY((deletable)) struct c_binding *binding_freelist;
|
||||||
struct c_scope *s_ = (scope); \
|
struct c_scope *s_ = (scope); \
|
||||||
tree d_ = (decl); \
|
tree d_ = (decl); \
|
||||||
if (s_->list##_last) \
|
if (s_->list##_last) \
|
||||||
TREE_CHAIN (s_->list##_last) = d_; \
|
BLOCK_CHAIN (s_->list##_last) = d_; \
|
||||||
else \
|
else \
|
||||||
s_->list = d_; \
|
s_->list = d_; \
|
||||||
s_->list##_last = d_; \
|
s_->list##_last = d_; \
|
||||||
|
@ -386,7 +386,7 @@ static GTY((deletable)) struct c_binding *binding_freelist;
|
||||||
struct c_scope *t_ = (tscope); \
|
struct c_scope *t_ = (tscope); \
|
||||||
struct c_scope *f_ = (fscope); \
|
struct c_scope *f_ = (fscope); \
|
||||||
if (t_->to##_last) \
|
if (t_->to##_last) \
|
||||||
TREE_CHAIN (t_->to##_last) = f_->from; \
|
BLOCK_CHAIN (t_->to##_last) = f_->from; \
|
||||||
else \
|
else \
|
||||||
t_->to = f_->from; \
|
t_->to = f_->from; \
|
||||||
t_->to##_last = f_->from##_last; \
|
t_->to##_last = f_->from##_last; \
|
||||||
|
@ -693,7 +693,7 @@ pop_scope (void)
|
||||||
TREE_USED (block) = 1;
|
TREE_USED (block) = 1;
|
||||||
|
|
||||||
/* In each subblock, record that this is its superior. */
|
/* In each subblock, record that this is its superior. */
|
||||||
for (p = scope->blocks; p; p = TREE_CHAIN (p))
|
for (p = scope->blocks; p; p = BLOCK_CHAIN (p))
|
||||||
BLOCK_SUPERCONTEXT (p) = block;
|
BLOCK_SUPERCONTEXT (p) = block;
|
||||||
|
|
||||||
BLOCK_VARS (block) = 0;
|
BLOCK_VARS (block) = 0;
|
||||||
|
|
|
@ -1,3 +1,7 @@
|
||||||
|
2007-11-25 Richard Guenther <rguenther@suse.de>
|
||||||
|
|
||||||
|
decl.c (poplevel): Use BLOCK_CHAIN.
|
||||||
|
|
||||||
2007-11-24 Ollie Wild <aaw@google.com>
|
2007-11-24 Ollie Wild <aaw@google.com>
|
||||||
|
|
||||||
* typeck.c (delta_from_ptrmemfunc): New function.
|
* typeck.c (delta_from_ptrmemfunc): New function.
|
||||||
|
|
|
@ -587,7 +587,7 @@ poplevel (int keep, int reverse, int functionbody)
|
||||||
|
|
||||||
/* In each subblock, record that this is its superior. */
|
/* In each subblock, record that this is its superior. */
|
||||||
if (keep >= 0)
|
if (keep >= 0)
|
||||||
for (link = subblocks; link; link = TREE_CHAIN (link))
|
for (link = subblocks; link; link = BLOCK_CHAIN (link))
|
||||||
BLOCK_SUPERCONTEXT (link) = block;
|
BLOCK_SUPERCONTEXT (link) = block;
|
||||||
|
|
||||||
/* We still support the old for-scope rules, whereby the variables
|
/* We still support the old for-scope rules, whereby the variables
|
||||||
|
|
|
@ -2441,7 +2441,7 @@ set_used_decls (tree blk)
|
||||||
set_used_flags (DECL_RTL (t));
|
set_used_flags (DECL_RTL (t));
|
||||||
|
|
||||||
/* Now process sub-blocks. */
|
/* Now process sub-blocks. */
|
||||||
for (t = BLOCK_SUBBLOCKS (blk); t; t = TREE_CHAIN (t))
|
for (t = BLOCK_SUBBLOCKS (blk); t; t = BLOCK_CHAIN (t))
|
||||||
set_used_decls (t);
|
set_used_decls (t);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1635,7 +1635,7 @@ instantiate_decls_1 (tree let)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Process all subblocks. */
|
/* Process all subblocks. */
|
||||||
for (t = BLOCK_SUBBLOCKS (let); t; t = TREE_CHAIN (t))
|
for (t = BLOCK_SUBBLOCKS (let); t; t = BLOCK_CHAIN (t))
|
||||||
instantiate_decls_1 (t);
|
instantiate_decls_1 (t);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3542,7 +3542,7 @@ setjmp_vars_warning (bitmap setjmp_crosses, tree block)
|
||||||
" %<longjmp%> or %<vfork%>", decl);
|
" %<longjmp%> or %<vfork%>", decl);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (sub = BLOCK_SUBBLOCKS (block); sub; sub = TREE_CHAIN (sub))
|
for (sub = BLOCK_SUBBLOCKS (block); sub; sub = BLOCK_CHAIN (sub))
|
||||||
setjmp_vars_warning (setjmp_crosses, sub);
|
setjmp_vars_warning (setjmp_crosses, sub);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -2474,7 +2474,7 @@ add_lexical_block (tree current_block, tree new_block)
|
||||||
/* Walk to the last sub-block. */
|
/* Walk to the last sub-block. */
|
||||||
for (blk_p = &BLOCK_SUBBLOCKS (current_block);
|
for (blk_p = &BLOCK_SUBBLOCKS (current_block);
|
||||||
*blk_p;
|
*blk_p;
|
||||||
blk_p = &TREE_CHAIN (*blk_p))
|
blk_p = &BLOCK_CHAIN (*blk_p))
|
||||||
;
|
;
|
||||||
*blk_p = new_block;
|
*blk_p = new_block;
|
||||||
BLOCK_SUPERCONTEXT (new_block) = current_block;
|
BLOCK_SUPERCONTEXT (new_block) = current_block;
|
||||||
|
|
|
@ -2060,13 +2060,14 @@ struct tree_block GTY(())
|
||||||
unsigned abstract_flag : 1;
|
unsigned abstract_flag : 1;
|
||||||
unsigned block_num : 30;
|
unsigned block_num : 30;
|
||||||
|
|
||||||
|
location_t locus;
|
||||||
|
|
||||||
tree vars;
|
tree vars;
|
||||||
tree subblocks;
|
tree subblocks;
|
||||||
tree supercontext;
|
tree supercontext;
|
||||||
tree abstract_origin;
|
tree abstract_origin;
|
||||||
tree fragment_origin;
|
tree fragment_origin;
|
||||||
tree fragment_chain;
|
tree fragment_chain;
|
||||||
location_t locus;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Define fields and accessors for nodes representing data types. */
|
/* Define fields and accessors for nodes representing data types. */
|
||||||
|
|
Loading…
Add table
Reference in a new issue