blob: 9b91e5c5f985fae985cb02d0f8f686b85c72e798 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
! { dg-additional-options "-fdump-tree-omp_transform_loops -fopt-info-omp-optimized-missed" }
! { dg-additional-options "-fdump-tree-original" }
subroutine test1
implicit none
integer :: i
!$omp parallel do collapse(1)
!$omp unroll partial(4) ! { dg-optimized {replaced consecutive 'omp unroll' directives by 'omp unroll auto\(24\)'} }
!$omp unroll partial(3)
!$omp unroll partial(2)
!$omp unroll partial(1)
do i = 1,100
call dummy(i)
end do
end subroutine test1
! Loop should be unrolled 1 * 2 * 3 * 4 = 24 times
! { dg-final { scan-tree-dump {#pragma omp for nowait collapse\(1\) unroll_partial\(4\) unroll_partial\(3\) unroll_partial\(2\) unroll_partial\(1\)} "original" } }
! { dg-final { scan-tree-dump-not "#pragma omp loop_transform" "omp_transform_loops" } }
! { dg-final { scan-tree-dump-times "dummy" 24 "omp_transform_loops" } }
! { dg-final { scan-tree-dump-times {#pragma omp for} 1 "omp_transform_loops" } }
|