1! { dg-do compile } 2! { dg-options "-O3 -fdump-tree-ldist-details" } 3 4 parameter(numlev=3,numoblev=1000) 5 integer i_otyp(numoblev,numlev), i_styp(numoblev,numlev) 6 logical l_numob(numoblev,numlev) 7 do ixe=1,numoblev 8 do iye=1,numlev 9 i_otyp(ixe,iye)=0 10 i_styp(ixe,iye)=0 11 l_numob(ixe,iye)=.false. 12 enddo 13 enddo 14 do i=1,m 15 do j=1,n 16 if (l_numob(i,j)) then 17 write(20,'(7I4,F12.2,4F16.10)') i_otyp(i,j),i_styp(i,j) 18 endif 19 enddo 20 enddo 21 end 22 23! GCC should apply memset zero loop distribution and it should not ICE. 24 25! { dg-final { scan-tree-dump "distributed: split to 0 loops and 9 library calls" "ldist" } } 26! { dg-final { scan-tree-dump-times "generated memset zero" 9 "ldist" } } 27