-
- Downloads
tree-nested.c (get_nonlocal_vla_type): If not optimizing, call...
tree-nested.c (get_nonlocal_vla_type): If not optimizing, call note_nonlocal_vla_type for nonlocal VLAs. * tree-nested.c (get_nonlocal_vla_type): If not optimizing, call note_nonlocal_vla_type for nonlocal VLAs. (note_nonlocal_vla_type, note_nonlocal_block_vlas, contains_remapped_vars, remap_vla_decls): New functions. (convert_nonlocal_reference_stmt): If not optimizing, call note_nonlocal_block_vlas on GIMPLE_BIND block vars. (nesting_copy_decl): Return {VAR,PARM,RESULT}_DECL unmodified if it wasn't found in var_map. (finalize_nesting_tree_1): Call remap_vla_decls. If outermost GIMPLE_BIND doesn't have gimple_bind_block, chain debug_var_chain to BLOCK_VARS (DECL_INITIAL (root->context)) instead of calling declare_vars. * gimplify.c (nonlocal_vlas): New variable. (gimplify_var_or_parm_decl): Add debug VAR_DECLs for non-local referenced VLAs. (gimplify_body): Create and destroy nonlocal_vlas. * trans-decl.c: Include pointer-set.h. (nonlocal_dummy_decl_pset, tree nonlocal_dummy_decls): New variables. (gfc_nonlocal_dummy_array_decl): New function. (gfc_get_symbol_decl): Call it for non-local dummy args with saved descriptor. (gfc_get_symbol_decl): Set DECL_BY_REFERENCE when needed. (gfc_generate_function_code): Initialize nonlocal_dummy_decl{s,_pset}, chain it to outermost block's vars, destroy it afterwards. * Make-lang.in (trans-decl.o): Depend on pointer-set.h. From-SVN: r146810
Showing
- gcc/ChangeLog 18 additions, 1 deletiongcc/ChangeLog
- gcc/fortran/Make-lang.in 1 addition, 1 deletiongcc/fortran/Make-lang.in
- gcc/fortran/trans-decl.c 61 additions, 0 deletionsgcc/fortran/trans-decl.c
- gcc/gimplify.c 42 additions, 1 deletiongcc/gimplify.c
- gcc/testsuite/ChangeLog 12 additions, 0 deletionsgcc/testsuite/ChangeLog
- gcc/tree-nested.c 185 additions, 3 deletionsgcc/tree-nested.c
Loading
Please register or sign in to comment