OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-old/] [gcc-4.2.2/] [gcc/] [testsuite/] [gfortran.dg/] [vect/] [vect-5.f90] - Blame information for rev 868

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 149 jeremybenn
! { dg-require-effective-target vect_int }
2
 
3
        Subroutine foo (N, M)
4
        Integer N
5
        Integer M
6
        integer A(8,16)
7
        integer B(8)
8
 
9
        B = (/ 2, 3, 5, 7, 11, 13, 17, 23 /)
10
 
11
        ! Unknown loop bound. J depends on I.
12
 
13
        do I = 1, N
14
          do J = I, M
15
            A(J,2) = B(J)
16
          end do
17
        end do
18
 
19
        do I = 1, N
20
          do J = I, M
21
            if (A(J,2) /= B(J)) then
22
              call abort ()
23
              endif
24
          end do
25
        end do
26
 
27
        Return
28
        end
29
 
30
 
31
        program main
32
 
33
        Call foo (16, 8)
34
 
35
        stop
36
        end
37
 
38
! { dg-final { scan-tree-dump-times "vectorized 2 loops" 1 "vect"  } }
39
! { dg-final { scan-tree-dump-times "Alignment of access forced using peeling" 1 "vect" { xfail { vect_no_align } } } }
40
! { dg-final { scan-tree-dump-times "Vectorizing an unaligned access" 2 "vect" { xfail { vect_no_align } } } }
41
! { dg-final { scan-tree-dump-times "Alignment of access forced using versioning." 3 "vect" { target { ilp32 && vect_no_align } } } }
42
 
43
! We also expect to vectorize one loop for lp64 targets that support
44
! misaligned access:
45
!   scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target { lp64 && !vect_no_align } }
46
!   scan-tree-dump-times "Alignment of access forced using peeling" 1 "vect" { target { lp64 && !vect_no_align } }
47
!   scan-tree-dump-times "Vectorizing an unaligned access" 1 "vect" { target { lp64 && !vect_no_align } }
48
! but we currently can't combine logical operators. (Could define
49
! a keyword for "not_vect_no_align" if desired).
50
 
51
! { dg-final { cleanup-tree-dump "vect" } }

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.