1 ! PR rtl-optimization/37243
3 ! { dg-options "-mieee" { target alpha*-*-* } }
4 ! Check if register allocator handles IR flattening correctly.
5 SUBROUTINE SCHMD(V,M,N,LDV)
6 IMPLICIT DOUBLE PRECISION(A-H,O-Z)
7 LOGICAL GOPARR,DSKWRK,MASWRK
9 COMMON /IOFILE/ IR,IW,IP,IS,IPK,IDAF,NAV,IODA(400)
10 COMMON /PAR / ME,MASTER,NPROC,IBTYP,IPTIM,GOPARR,DSKWRK,MASWRK
11 PARAMETER (ZERO=0.0D+00, ONE=1.0D+00, TOL=1.0D-10)
12 IF (M .EQ. 0) GO TO 180
16 100 DUMI = DUMI+V(K,I)*V(K,I)
17 DUMI = ONE/ SQRT(DUMI)
19 120 V(K,I) = V(K,I)*DUMI
20 IF (I .EQ. M) GO TO 160
23 DUM = -DDOT(N,V(1,J),1,V(1,I),1)
24 CALL DAXPY(N,DUM,V(1,I),1,V(1,J),1)
35 IF (J .GT. N) GO TO 320
38 CALL DAXPY(N,DUM,V(1,II),1,V(1,I),1)
42 280 DUMI = DUMI+V(K,I)*V(K,I)
43 IF ( ABS(DUMI) .LT. TOL) GO TO 220
45 300 V(K,I) = V(K,I)*DUMI
53 call schmd(V, 1, 18, 18)