OpenCores
URL https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk

Subversion Repositories openrisc_2011-10-31

[/] [openrisc/] [trunk/] [gnu-src/] [gcc-4.5.1/] [gcc/] [testsuite/] [gfortran.dg/] [graphite/] [interchange-1.f] - Blame information for rev 322

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

Line No. Rev Author Line
1 302 jeremybenn
      subroutine foo(f1,f2,f3,f4,f5,f6,f7,f8,f9,f0,g1,g2,g3)
2
      implicit none
3
      integer f4,f3,f2,f1
4
      integer g4,g5,g6,g7,g8,g9
5
      integer i1,i2,i3,i4,i5
6
 
7
      real*8 g1(5,f3,f2,f1),g2(5,5,f3,f2,f1),g3(5,f3,f2,f1)
8
      real*8 f0(5,5,f3,f2,f1),f9(5,5,f3,f2,f1),f8(5,5,f3,f2,f1)
9
      real*8 f7(5,5,f3,f2,f1),f6(5,5,f3,f2,f1),f5(5,5,f3,f2,f1)
10
 
11
      do i3=1,f1
12
         g8=mod(i3+f1-2,f1)+1
13
         g9=mod(i3,f1)+1
14
         do i4=1,f2
15
            g6=mod(i4+f2-2,f2)+1
16
            g7=mod(i4,f2)+1
17
            do i5=1,f3
18
               g4=mod(i5+f3-2,f3)+1
19
               g5=mod(i5,f3)+1
20
               do i1=1,5
21
                  g3(i1,i5,i4,i3)=0.0d0
22
                  do i2=1,5
23
                     g3(i1,i5,i4,i3)=g3(i1,i5,i4,i3)+
24
     1                    g2(i1,i2,i5,i4,i3)*g1(i2,i5,i4,i3)+
25
     2                    f0(i1,i2,i5,i4,i3)*g1(i2,g5,i4,i3)+
26
     3                    f9(i1,i2,i5,i4,i3)*g1(i2,i5,g7,i3)+
27
     4                    f8(i1,i2,i5,i4,i3)*g1(i2,i5,i4,g9)+
28
     5                    f7(i1,i2,i5,i4,i3)*g1(i2,g4,i4,i3)+
29
     6                    f6(i1,i2,i5,i4,i3)*g1(i2,i5,g6,i3)+
30
     7                    f5(i1,i2,i5,i4,i3)*g1(i2,i5,i4,g8)
31
                  enddo
32
               enddo
33
            enddo
34
         enddo
35
      enddo
36
      return
37
      end
38
 
39
 
40
! We should be able to interchange this as the number of iterations is
41
! known to be 4 in the inner two loops.  See interchange-2.f for the
42
! kernel from bwaves.
43
 
44
! { dg-final { scan-tree-dump-times "will be interchanged" 1 "graphite" { xfail *-*-* } } }
45
! { dg-final { cleanup-tree-dump "graphite" } }

powered by: WebSVN 2.1.0

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