2367
 2368
 2369
 2370
 2371
 2372
 2373
 2374
 2375
 2376
 2377
 2378
 2379
 2380
 2381      INTEGER            LDA, M, N
 2382      CHARACTER*1        UPLO
 2383      CHARACTER*2        TYPE
 2384
 2385      DOUBLE PRECISION   AA( LDA, * ), AS( LDA, * )
 2386
 2387      INTEGER            I, IBEG, IEND, J
 2388      LOGICAL            UPPER
 2389
 2390      upper = uplo.EQ.'U'
 2391      IF( type.EQ.'GE' )THEN
 2392         DO 20 j = 1, n
 2393            DO 10 i = m + 1, lda
 2394               IF( aa( i, j ).NE.as( i, j ) )
 2395     $            GO TO 70
 2396   10       CONTINUE
 2397   20    CONTINUE
 2398      ELSE IF( type.EQ.'SY' )THEN
 2399         DO 50 j = 1, n
 2400            IF( upper )THEN
 2401               ibeg = 1
 2402               iend = j
 2403            ELSE
 2404               ibeg = j
 2405               iend = n
 2406            END IF
 2407            DO 30 i = 1, ibeg - 1
 2408               IF( aa( i, j ).NE.as( i, j ) )
 2409     $            GO TO 70
 2410   30       CONTINUE
 2411            DO 40 i = iend + 1, lda
 2412               IF( aa( i, j ).NE.as( i, j ) )
 2413     $            GO TO 70
 2414   40       CONTINUE
 2415   50    CONTINUE
 2416      END IF
 2417
 2418   60 CONTINUE
 2420      GO TO 80
 2421   70 CONTINUE
 2423   80 RETURN
 2424
 2425
 2426
logical function lderes(type, uplo, m, n, aa, as, lda)