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]

Internal error w/GCC-2.95.1 (soft-float emulation)


Hello,

I noticed a soft-float replacement for fp-bit.c posted to the egcs list:

>Date: 15 Jul 1999 20:05:58 +0200
>From: Torbjorn Granlund <tege@swox.com>
>To: egcs@egcs.cygnus.com
>Subject: New IEEE P854 emulation library

and have run into problems getting it working with GCC 2.95.1. I've
attached the relevant code -- for both before and after the preprocessor.
The compiler I used was configured as a cross-compiler targeting the RTEMS
OS for i386-elf. It was hosted on a PII running RedHat 6.0.

An RTEMS-specific patch was also applied to the compiler, and is attached.
I'm not sure it's an issue, though.

The configuration command used was:
configure --target=i386-rtemself \
      --with-gnu-as --with-gnu-ld --verbose \
      --prefix=/usr/local/rtems

The command "i386-rtemself-gcc -v -O2 -c gcc-bug.c" yields:


Reading specs from /usr/local/rtems/lib/gcc-lib/i386-rtemself/2.95.1/specs
gcc version 2.95.1 19990816 (release)
 /usr/local/rtems/lib/gcc-lib/i386-rtemself/2.95.1/cpp -lang-c -v -D__GNUC__=2 -D__GNUC_MINOR__=95 -Di386 -Drtems -D__rtems__ -D__i386__ -D__rtems__ -D__rtems__ -D__i386 -D__rtems -Asystem(rtems) -Acpu(i386) -Amachine(i386) -D__OPTIMIZE__ gcc-bug.c /tmp/c
cqrIXfP.i
GNU CPP version 2.95.1 19990816 (release) (i386 RTEMS with ELF)
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/rtems/lib/gcc-lib/i386-rtemself/2.95.1/include
 /usr/local/rtems/lib/gcc-lib/i386-rtemself/2.95.1/../../../../i386-rtemself/sys-include
 /usr/local/rtems/lib/gcc-lib/i386-rtemself/2.95.1/../../../../i386-rtemself/include
End of search list.
The following default directories have been omitted from the search path:
 /usr/local/rtems/lib/gcc-lib/i386-rtemself/2.95.1/../../../../include/g++-3
End of omitted list.
 /usr/local/rtems/lib/gcc-lib/i386-rtemself/2.95.1/cc1 /tmp/ccqrIXfP.i -quiet -dumpbase gcc-bug.c -O2 -version -o /tmp/ccigo9hw.s
GNU C version 2.95.1 19990816 (release) (i386-rtemself) compiled by GNU C version 2.8.1.
gcc-bug.c: In function `__adddf3':
gcc-bug.c:454: internal error--unrecognizable insn:
(insn 101 99 1623 (parallel[ 
            (set (reg/v:SI 4 %esi)
                (asm_operands ("addl %5,%1
	adcl %3,%0") ("=r") 0[ 
                        (reg/v:SI 5 %edi)
                        (reg/v:SI 4 %esi)
                        (reg/v:SI 3 %ebx)
                        (mem:SI (plus:SI (reg:SI 6 %ebp)
                                (const_int -4 [0xfffffffc])) 0)
                    ] 
                    [ 
                        (asm_input:SI ("%0"))
                        (asm_input:SI ("g"))
                        (asm_input:SI ("%1"))
                        (asm_input:SI ("g"))
                    ]  ("gcc-bug.c") 45))
            (set (reg/v:SI 3 %ebx)
                (asm_operands ("addl %5,%1
	adcl %3,%0") ("=&r") 1[ 
                        (reg/v:SI 5 %edi)
                        (reg/v:SI 4 %esi)
                        (reg/v:SI 3 %ebx)
                        (mem:SI (plus:SI (reg:SI 6 %ebp)
                                (const_int -4 [0xfffffffc])) 0)
                    ] 
                    [ 
                        (asm_input:SI ("%0"))
                        (asm_input:SI ("g"))
                        (asm_input:SI ("%1"))
                        (asm_input:SI ("g"))
                    ]  ("gcc-bug.c") 45))
        ] ) -1 (nil)
    (nil))


Without "-O2" the compilation succeeds. My only suspicion has to do with
the add_ssaaaa macro in the file longlong.h. Please let me know if any
other information would be helpful. 

Thanks,
Tony Ambardar

  ____________________________________________________________
 /                                                            \
| Tony R. Ambardar         |   Department of Electrical &      |
| M.Sc., M.Eng.            |   Computer Engineering            | 
| Email: tonya@ece.ubc.ca  |   University of British Columbia  |
| Ph: (604) 822-2872       |   2356 Main Mall, Vancouver B.C.  |
| Fax:(604) 822-5949       |   V6T 1Z4  CANADA                 |
 \____________________________________________________________/

gcc-bug-full.c.bz2

gcc-bug.c.bz2

gcc-2.95.1-rtems-diff-19990820.bz2


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