------- Comment #13 from rguenth at gcc dot gnu dot org 2010-01-13 11:37
-------
Single-file testcase:
subroutine loop_list(list)
integer, intent(in), dimension(:) :: list
integer :: ii
!$ integer :: chunk_size
!$ chunk_size = 4
!$OMP PARALLEL DO SCHEDULE(dynamic,chunk_size)
do ii=1,size(list)
call do_things(list, ii)
end do
end subroutine loop_list
subroutine do_things(list, index)
integer, intent(in),dimension(:) :: list
integer, intent(in) :: index
print *,size(list),index
end subroutine do_things
program list_use
implicit none
integer, dimension(10) :: a_list
a_list = 1
call loop_list(a_list)
end program list_use
It is OPEN-MP lowering that during remapping of the domain type remaps
the upper gimplified bound D.1599 to error_mark_node in omp_copy_decl.
#0 omp_copy_decl (var=0x7ffff7fcfdc0, cb=0x17a2170)
at /space/rguenther/src/svn/trunk/gcc/omp-low.c:1073
#1 0x0000000000cefd84 in remap_decl (decl=0x7ffff7fcfdc0, id=0x17a2170)
at /space/rguenther/src/svn/trunk/gcc/tree-inline.c:283
#2 0x0000000000cf48d2 in copy_tree_body_r (tp=0x7ffff5adcce8,
walk_subtrees=0x7fffffffc640, data=0x17a2170)
at /space/rguenther/src/svn/trunk/gcc/tree-inline.c:968
#3 0x0000000000c24389 in walk_tree_1 (tp=0x7ffff5adcce8,
func=0xcf46af <copy_tree_body_r>, data=0x17a2170, pset=0x0, lh=0)
at /space/rguenther/src/svn/trunk/gcc/tree.c:9978
#4 0x0000000000cf15c5 in remap_type_1 (type=0x7ffff7fce498, id=0x17a2170)
at /space/rguenther/src/svn/trunk/gcc/tree-inline.c:409
...
#9 0x0000000000cf1ad3 in remap_type (type=0x7ffff7fce3f0, id=0x17a2170)
at /space/rguenther/src/svn/trunk/gcc/tree-inline.c:473
#10 0x00000000008bbfa8 in fixup_remapped_decl (decl=0x7ffff7fc5f00,
---Type <return> to continue, or q <return> to quit---
ctx=0x17a2170, private_debug=0 '\000')
at /space/rguenther/src/svn/trunk/gcc/omp-low.c:1019
#11 0x00000000008bec7c in scan_sharing_clauses (clauses=0x7ffff5adaa00,
ctx=0x17a2170) at /space/rguenther/src/svn/trunk/gcc/omp-low.c:1497
#12 0x00000000008bfe8c in scan_omp_parallel (gsi=0x7fffffffd770, outer_ctx=0x0)
at /space/rguenther/src/svn/trunk/gcc/omp-low.c:1660
#13 0x00000000008c14dd in scan_omp_1_stmt (gsi=0x7fffffffd770,
handled_ops_p=0x7fffffffd6d7 "\001", wi=0x7fffffffd9f0)
at /space/rguenther/src/svn/trunk/gcc/omp-low.c:1980
#14 0x000000000080e48f in walk_gimple_stmt (gsi=0x7fffffffd770,
callback_stmt=0x8c132f <scan_omp_1_stmt>,
callback_op=0x8c1204 <scan_omp_1_op>, wi=0x7fffffffd9f0)
at /space/rguenther/src/svn/trunk/gcc/gimple.c:1586
I can easily deal with error_mark_node appearing there in
iterative_hash_gimple_type but I wonder if the above is intended.
Jakub?
--
rguenth at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jakub at gcc dot gnu dot org
Status|UNCONFIRMED |NEW
Ever Confirmed|0 |1
Last reconfirmed|0000-00-00 00:00:00 |2010-01-13 11:37:29
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42665