1 ! { dg-options "-O3 -fdump-tree-lversion-details" }
3 ! Check that versioning can handle small groups of accesses.
7 do i
= lbound(x
, 1), ubound(x
, 1) / 2
13 subroutine f2(x
, n
, step
)
15 real :: x(n
* step
* 2)
18 x(i
* step
* 2 + 1) = 101
22 subroutine f3(x
, limit
, step
)
23 integer :: limit
, step
33 do i
= lbound(x
, 1), ubound(x
, 1) / 3
40 subroutine f5(x
, n
, step
)
42 real :: x(n
* step
* 3)
45 x(i
* step
* 3 + 1) = 101
46 x(i
* step
* 3 + 2) = 102
50 subroutine f6(x
, limit
, step
)
51 integer :: limit
, step
62 do i
= lbound(x
, 1), ubound(x
, 1) / 4
70 subroutine f8(x
, n
, step
)
72 real :: x(n
* step
* 4)
75 x(i
* step
* 4 + 1) = 101
76 x(i
* step
* 4 + 2) = 102
77 x(i
* step
* 4 + 3) = 103
81 subroutine f9(x
, limit
, step
)
82 integer :: limit
, step
92 ! { dg-final { scan-tree-dump-times {want to version containing loop} 9 "lversion" { xfail { ! lp64 } } } }
93 ! { dg-final { scan-tree-dump-times {versioned this loop} 9 "lversion" { xfail { ! lp64 } } } }