1! { dg-do compile { target i?86-*-* x86_64-*-* } } 2! { dg-options "-O3 -mavx -mvzeroupper -mtune=generic -dp" } 3 4 PROGRAM MG3XDEMO 5 INTEGER LM, NM, NV, NR, NIT 6 7 8 PARAMETER( LM=7 ) 9C PARAMETER( NIT=40 ) 10 PARAMETER( NM=2+2**LM, NV=NM**3 ) 11 PARAMETER( NR = (8*(NM**3+NM**2+5*NM-23+7*LM))/7 ) 12C 13C 14C If commented line is used than there is no penalty 15C COMMON /X/ U, V, R, A, C, IR, MM 16 COMMON /X/ A, C, IR, MM 17 REAL*8 A(0:3),C(0:3) 18 19 INTEGER IT, N 20 INTEGER LMI, MTIME, NTIMES 21C 22 READ *,LMI 23 READ *,NIT 24 READ *,NTIMES 25 READ *,U0 26 27 READ 9004, A 28 READ 9004, C 299004 FORMAT (4D8.0) 30 31 DO I = 0, 3 32 A(I) = A(I)/3.0D0 33 C(I) = C(I)/64.0D0 34 ENDDO 35C 36 N = 2 + 2**LMI 37 38 WRITE(6,7)N-2,N-2,N-2,NIT 39 6 FORMAT( I4, 2E19.12) 40 7 FORMAT(/,' KERNEL B: SOLVING A POISSON PROBLEM ON A ',I6,' BY ', 41 > I6,' BY ',I6,' GRID,',/,' USING ',I6,' MULTIGRID ITERATIONS.',/) 42C 43 STOP 44 END 45 46! { dg-final { scan-assembler-times "avx_vzeroupper" 1 } } 47