blob: c8335241257cf6f53dd3e09d74fc0facf9b7bad2 [file] [log] [blame]
! { dg-do run }
! { dg-options "-floop-nest-optimize" }
MODULE test
IMPLICIT NONE
TYPE subset_type
INTEGER :: ncon_tot
REAL(KIND=8),DIMENSION(:,:),ALLOCATABLE :: coeff
END TYPE
CONTAINS
SUBROUTINE foo(subset)
TYPE(subset_type) :: subset
INTEGER :: icon1
DO icon1=1,subset%ncon_tot
subset%coeff(:,icon1)=subset%coeff(:,icon1)/&
SQRT(DOT_PRODUCT(subset%coeff(:,icon1),subset%coeff(:,icon1)))
END DO
END SUBROUTINE
END MODULE
USE test
TYPE(subset_type) :: subset
INTEGER, VOLATILE :: n1=7,n2=4
ALLOCATE(subset%coeff(n1,n2))
CALL RANDOM_NUMBER(subset%coeff)
subset%coeff=subset%coeff-0.5
subset%ncon_tot=n2
CALL foo(subset)
WRITE(6,*) MAXVAL(subset%coeff)
END