This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
recent C++ on coff tankage
- To: gcc-bugs at gcc dot gnu dot org
- Subject: recent C++ on coff tankage
- From: Robert Lipe <robertl at sco dot com>
- Date: Mon, 31 Jan 2000 15:14:42 -0600
The i586-pc-sco3.2v5.0.0 COFF test results have taken on some serious
water recently. Are other COFF targets seeing the same?
Between 1/28 and 1/30 all the libio coff tests stopped building
completely. This is becuase of undefined symbols in the COFF tinfo.o.
nm coff/libgcc.a | c++ filt shows many UNDEF references to '.Lnnnn'
symbols:
Symbols from libgcc.a[tinfo.o]:
[Index] Value Size Type Bind Other Shndx Name
[1] | 0| 0|FILE |LOCL |0 |ABS |tinfo.cc
[2] | 0| 0|NOTY |LOCL |0 |1 |.text
[3] | 0| 0|NOTY |LOCL |0 |2 |.data
[4] | 0| 0|NOTY |LOCL |0 |3 |.bss
[5] | 0| 0|NOTY |LOCL |0 |4 |.comment
[6] | 0| 0|NOTY |LOCL |0 |1 |gcc2_compiled.
[7] | 0| 0|NOTY |LOCL |0 |1 |__gnu_compiled_cplusplus
[8] | 0| 0|NOTY |GLOB |0 |UNDEF |.L154
[9] | 0| 0|NOTY |GLOB |0 |UNDEF |.L146
[10] | 0| 0|NOTY |GLOB |0 |UNDEF |.L132
[11] | 0| 0|NOTY |GLOB |0 |UNDEF |.L124
[12] | 0| 0|NOTY |GLOB |0 |UNDEF |.L92
[13] | 0| 0|NOTY |GLOB |0 |UNDEF |.L68
[14] | 0| 0|NOTY |GLOB |0 |UNDEF |.L44
This can be reproduced with:
./xgcc --save-temps -mcoff -B/usr/local/i586-pc-sco3.2v5.0.5/bin/ -B./ \
-I/usr/local/i586-pc-sco3.2v5.0.5/include -O2 -DIN_GCC \
-W -Wall -Wtraditional -O2 -g -I./include -g1 -DIN_LIBGCC2 \
-D__GCC_FLOAT_NOT_NEEDED -I. -I../../egcs/gcc -I../../egcs/gcc/config \
-I../../egcs/gcc/../include \
-c ../../egcs/gcc/cp/tinfo.cc
.L154 appears in .globl __class_type_info::__class_type_info(char const *, __class_type_info::base_info const *, unsigned int)
__class_type_info::__class_type_info(char const *, __class_type_info::base_info
const *, unsigned int): It's the last function in the file.
movl 8(%ebp), %eax
movl $_vt.16__user_type_info, 4(%eax)
movl 4(%edx), %eax
movl (%eax), %eax
movl %eax, 4(%edx)
movl %eax, -120(%ebp)
movl %ecx, %eax
movl %ecx, -112(%ebp)
subl $88, %eax
movl $0, -116(%ebp)
movl %esp, 8(%eax)
addl $140, %esp
movl $.L154, 4(%eax) <- The only occurrence of .L154
subl $8, %eax
While the ELF testresults have held basically steady over the last two
weeks, the COFF results have been backsliding. What is most the most
helpful way to tackle this? Analyze each failure individually? Walk
through the changes on a day-by-day basis, trying to correlate new
failures to ChangeLog entries?
One (admittedly vague) indication of the amount of backslide is the
size of the testsuite results
$ l -t */summary | head
-rwx------ 1 robertl group 37698 Jan 31 05:34 results-000131/summary
-rwx------ 1 robertl group 37698 Jan 30 05:45 results-000130/summary
-rwx------ 1 robertl group 20738 Jan 28 05:46 results-000128/summary
-rwx------ 1 robertl group 20117 Jan 27 05:38 results-000127/summary
-rwx------ 1 robertl group 20792 Jan 26 05:43 results-000126/summary
-rwx------ 1 robertl group 20140 Jan 25 05:42 results-000125/summary
-rwx------ 1 robertl group 18141 Jan 24 05:31 results-000124/summary
-rwx------ 1 robertl group 18745 Jan 23 05:34 results-000123/summary
-rwx------ 1 robertl group 19884 Jan 22 10:04 results-000122/summary
-rwx------ 1 robertl group 17955 Jan 15 06:06 results-000115/summary
RJL