Copy debug info properly in the inliner

Richard Henderson rth@redhat.com
Tue Jun 28 07:13:00 GMT 2005


On Tue, Jun 28, 2005 at 01:28:47AM +0200, Jan Hubicka wrote:
> 	* function.h (struct function): Add saved blocks/unexpanded var list.
> 	* gimple-low.c (record_vars): Insert only VAR_DECLs.
> 	* tree-inline.c (add_lexical_block): Declare; do not clear sublocks.
> 	(remap_decl): Do not declare vars.
> 	(remap_block): Do not care inserting blocks.
> 	(remap_blocks): New function.
> 	(copy_body_r): Update debug info.
> 	(expand_call_inline): Duplicate callee block tree into caller;
> 	copy all the unexpanded_var_list.
> 	(save_body): Save unexpanded_var_list and blocks.
> 	* tree-optimize.c (tree_rest_of_optimization): Restore
> 	blocks/unexpanded_var_list.

Ok if you update the TREE_BLOCK portion and

> + 	cfun->saved_unexpanded_var_list = tree_cons (NULL_TREE, remap_decl (var, &id),
> + 					             cfun->saved_unexpanded_var_list);

fix line lengths.


r~



More information about the Gcc-patches mailing list