GCC testresults from CVS version 980404

Andreas Jaeger aj@arthur.rhein-neckar.de
Mon Apr 6 17:35:00 GMT 1998


>>>>> Andreas Jaeger writes:

 > I received the following errors:
 > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 > Executing on host: /mnt/cc/egcs/build/gcc/xgcc -B/mnt/cc/egcs/build/gcc/ /mnt/cc/egcs/egcs-cvs/gcc/testsuite/gcc.dg/980226-1.c   -O2 -S  -o 980226-1.s   
 > compiler exited with status 1
 > output is:
 > xgcc: Internal compiler error: program cc1 got fatal signal 11

Following an advise by Martin von Loewis I run cc1 in the debugger
(after rebuilding egcs with CVS version from 980406) on the cpp output:

(gdb) r  980226-1.i -quiet -dumpbase 980226-1.c -O2 -version -o 980226-1.s
Breakpoint 1 at 0x40032c26: file ../sysdeps/generic/abort.c, line 50.
GNU C version egcs-2.91.21 980404 (gcc2 ss-980401 experimental) (i486-pc-linux-gnu) compiled by GNU C version egcs-2.91.21 980404 (gcc2 ss-980401 experimental).

Program received signal SIGSEGV, Segmentation fault.
0x814cc4d in constrain_asm_operands (n_operands=0, operands=0xbffff300, 
    operand_constraints=0xbffff2e0, operand_matches=0xbffff1fc, 
    operand_class=0xbffff1fc) at ../../egcs-cvs/gcc/reg-stack.c:641
641       for (q = constraints[0]; *q; q++)
(gdb) bt
#0  0x814cc4d in constrain_asm_operands (n_operands=0, operands=0xbffff300, 
    operand_constraints=0xbffff2e0, operand_matches=0xbffff1fc, 
    operand_class=0xbffff1fc) at ../../egcs-cvs/gcc/reg-stack.c:641
#1  0x814d58e in record_asm_reg_life (insn=0x81b77e0, regstack=0xbffff358, 
    operands=0xbffff300, constraints=0xbffff2e0, n_inputs=0, n_outputs=0)
    at ../../egcs-cvs/gcc/reg-stack.c:922
#2  0x814dd68 in record_reg_life (insn=0x81b77e0, block=0, regstack=0xbffff358)
    at ../../egcs-cvs/gcc/reg-stack.c:1243
#3  0x814e1de in stack_reg_life_analysis (first=0x81b70f4, 
    stackentry=0xbffff470) at ../../egcs-cvs/gcc/reg-stack.c:1510
#4  0x814c9f9 in reg_to_stack (first=0x81b70f4, file=0x0)
    at ../../egcs-cvs/gcc/reg-stack.c:501
#5  0x8069dc9 in rest_of_compilation (decl=0x81c7a94)
    at ../../egcs-cvs/gcc/toplev.c:3564
#6  0x805911a in finish_function (nested=0) at ../../egcs-cvs/gcc/c-decl.c:7110
#7  0x804a1f7 in yyparse () at c-parse.y:354
#8  0x806882e in compile_file (name=0xbffffbea "980226-1.i")
    at ../../egcs-cvs/gcc/toplev.c:2544
#9  0x806b056 in main (argc=9, argv=0xbffffaa0, envp=0xbffffac8)
    at ../../egcs-cvs/gcc/toplev.c:4361
#10 0x4002ad06 in __libc_start_main (main=0x8069f90 <main>, argc=9, 
    argv=0xbffffaa0, init=0x8048f20 <_init>, fini=0x8174620 <_fini>, 
    rtld_fini=0x4000a580 <_dl_fini>) at ../sysdeps/generic/libc-start.c:72

The input file is just:
$ cat 980226-1.i 
# 1 "/mnt/cc/egcs/egcs-cvs/gcc/testsuite/gcc.dg/980226-1.c"
 
 

extern double bar (double);

int
baz (double d)
{
  double e = bar (d);
  asm volatile ("" : : : "st");
  return printf ("%lg\n", e);
}

I'm using a recent glibc 2.1 snapshot on i486, Linux 2.0.33 kernel,
2.1.92 header files.

Andreas
-- 
 Andreas Jaeger   aj@arthur.rhein-neckar.de    jaeger@informatik.uni-kl.de
  for pgp-key finger ajaeger@alma.student.uni-kl.de



More information about the Gcc mailing list