1! { dg-do compile } 2! { dg-additional-options "-Ofast" } 3! { dg-additional-options "-mavx" { target x86_64-*-* i?86-*-* } } 4 5 SUBROUTINE PASSB4 (IDO,L1,CC,CH,WA1,WA2,WA3) 6 IMPLICIT REAL(4) (A-H, O-Z) 7 DIMENSION CC(IDO,4,L1), CH(IDO,L1,4), WA1(*), WA2(*), WA3(*) 8 102 DO 104 K=1,L1 9 DO 103 I=2,IDO,2 10 TI1 = CC(I,1,K)-CC(I,3,K) 11 TI2 = CC(I,1,K)+CC(I,3,K) 12 TI3 = CC(I,2,K)+CC(I,4,K) 13 TR2 = CC(I-1,1,K)+CC(I-1,3,K) 14 TI4 = CC(I-1,2,K)-CC(I-1,4,K) 15 TR3 = CC(I-1,2,K)+CC(I-1,4,K) 16 CH(I-1,K,1) = TR2+TR3 17 CH(I,K,1) = TI2+TI3 18 CI4 = TI1-TI4 19 CH(I-1,K,4) = CI4 20 CH(I,K,4) = CI4 21 103 CONTINUE 22 104 CONTINUE 23 RETURN 24 END 25