This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

target/4827: Fortran code evokes "insn does not satisfy its constraints" in 3.0.2 on Sparcv9



>Number:         4827
>Category:       target
>Synopsis:       Fortran code evokes "insn does not satisfy its constraints" in 3.0.2 on Sparcv9
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          ice-on-legal-code
>Submitter-Id:   net
>Arrival-Date:   Wed Nov 07 12:16:01 PST 2001
>Closed-Date:
>Last-Modified:
>Originator:     Hillel (Sabba) Markowitz
>Release:        3.0.2  Sparcv9 g77/gcc
>Organization:
>Environment:
sparcv9-sun-solaris2.8
>Description:
The error message is
/usr/local/GCC-3.0/lib/gcc-lib/sparcv9-sun-solaris2.8/3.0.2/f771
testfast.f -quiet -dumpbase testfast.f -O1 -version -o /tmp/cc44dKPB.s
GNU F77 version 3.0.2 (sparcv9-sun-solaris2.8)
                 compiled by GNU C version 3.0.2
testfast.f: In subroutine 'ford2':
testfast.f:37: Insn does not satisfy its constraints:
(insn 1663 1660 1666 (set (reg:SI 78 %f46 [183])
            (mem:SI (plus:DI (reg/f:DI 30 %fp)
                          (const_int 2031 [0x7ef])) 0)) 51 (*movsi_insn)
(nil)
    (nil))
testfast.f:37: Internal compiler error in reload_cse_simplify_operands,
at reload1.c:8364

The file testfast.f  is as follows


      SUBROUTINE FORD2(M, B)
C
C      IN-PLACE REORDERING SUBROUTINE
C
      DIMENSION L(15), B(2)
      EQUIVALENCE (L15, L(1)), (L14, L(2)), (L13, L(3)), (L12, L(4)),
     *         (L11, L(5)), (L10, L(6)), (L9, L(7)), (L8, L(8)), (L7,L(9)),
     *         (L6, L(10)), (L5, L(11)), (L4, L(12)), (L3, L(13)), (L2,L(14)),
     *         (L1, L(15))
C
      IJ = 2
      DO 40 J1=2,L1,2
      DO 40 J2=J1,L2,L1
      DO 40 J3=J2,L3,L2
      DO 40 J4=J3,L4,L3
      DO 40 J5=J4,L5,L4
      DO 40 J6=J5,L6,L5
      DO 40 J7=J6,L7,L6
      DO 40 J8=J7,L8,L7
      DO 40 J9=J8,L9,L8
      DO 40 J10=J9,L10,L9
      DO 40 J11=J10,L11,L10
      DO 40 J12=J11,L12,L11
      DO 40 J13=J12,L13,L12
      DO 40 J14=J13,L14,L13
      DO 40 J15=J14,L15,L14
            IF (IJ-JI) 30, 40, 40
30        T = B(IJ-1)
            B(IJ-1) = B(JI-1)
            B(JI-1) = T
            T = B(IJ)
            B(IJ) = B(JI)
            B(JI) = T
40        IJ = IJ + 2
      RETURN
      END

>How-To-Repeat:
g77 -v -c testfast.f -O1
>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]