re PR libgomp/58392 (internal compiler error: in expand_GOMP_SIMD_VF, at internal...
authorJakub Jelinek <jakub@redhat.com>
Fri, 13 Sep 2013 12:42:04 +0000 (14:42 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Fri, 13 Sep 2013 12:42:04 +0000 (14:42 +0200)
commitf3b331d117a3dd2e406d9746178f8c5644156fb0
tree88eeb2b870640142e2694a00e1bb45b6744ce437
parentae6d090748df54cb09a9bd7dc5d4d9b4668296f9
re PR libgomp/58392 (internal compiler error: in expand_GOMP_SIMD_VF, at internal-fn.c (omp simd inside omp parallel))

PR tree-optimization/58392
* tree-cfg.c (move_sese_region_to_fn): Rename loop variable
to avoid shadowing of outer loop variable.  If
saved_cfun->has_simduid_loops or saved_cfun->has_force_vect_loops,
replace_by_duplicate_decl simduid of loops that have it set and
set dest_cfun->has_simduid_loops and/or
dest_cfun->has_force_vect_loops.
* omp-low.c (build_outer_var_ref): Call maybe_lookup_decl_in_outer_ctx
instead of maybe_lookup_decl.
* tree-inline.c (copy_loops): Change blocks_to_copy argument to id.
Use id->blocks_to_copy instead of blocks_to_copy.  Adjust recursive
call.  Copy over force_vect and copy and remap simduid.  Set
cfun->has_simduid_loops and/or cfun->has_force_vect_loops.
(copy_cfg_body): Remove blocks_to_copy argument.  Use
id->blocks_to_copy instead of blocks_to_copy.  Adjust copy_loops
caller.  Don't set cfun->has_simduid_loops and/or
cfun->has_force_vect_loops here.
(copy_body): Remove blocks_to_copy argument.  Adjust copy_cfg_body
caller.
(expand_call_inline, tree_function_versioning): Adjust copy_body
callers.

From-SVN: r202564
gcc/ChangeLog
gcc/omp-low.c
gcc/tree-cfg.c
gcc/tree-inline.c