public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
* make check failures on ia64-linux
@ 2001-06-12  3:06 Andreas Jaeger
  2001-06-12  4:37 ` Nick Clifton
  0 siblings, 1 reply; 4+ messages in thread
From: Andreas Jaeger @ 2001-06-12  3:06 UTC (permalink / raw)
  To: binutils

The following tests fail for me on ia64-linux when running the
testsuite with current mainline (HJ's version but the difference
should be small):

exec /usr/src/packages/BUILD/binutils-2.11.90.0.15/build-dir/binutils/readelf  -s tmpdir/bintest.o > readelf.out
regexp_diff match failure
regexp "^     1: 0000000000000000     0 SECTION LOCAL  DEFAULT    1 $"
line   "     1: 0000000000000000     0 NOTYPE  LOCAL  DEFAULT    1 static_text_symbol"
regexp_diff match failure
regexp "^     2: 0000000000000000     0 SECTION LOCAL  DEFAULT    3 $"
line   "     2: 0000000000000000     0 NOTYPE  LOCAL  DEFAULT    3 static_data_symbol"
regexp_diff match failure
regexp "^     3: 0000000000000000     0 SECTION LOCAL  DEFAULT    4 $"
line   "     3: 0000000000000000     0 SECTION LOCAL  DEFAULT    1 "
regexp_diff match failure
regexp "^     4: 0000000000000000     0 NOTYPE  LOCAL  DEFAULT    1 static_text_symbol$"
line   "     4: 0000000000000000     0 SECTION LOCAL  DEFAULT    3 "
regexp_diff match failure
regexp "^     5: 0000000000000000     0 NOTYPE  LOCAL  DEFAULT    3 static_data_symbol$"
line   "     5: 0000000000000000     0 SECTION LOCAL  DEFAULT    4 "
FAIL: readelf -s
exec /usr/src/packages/BUILD/binutils-2.11.90.0.15/build-dir/binutils/readelf  -r tmpdir/bintest.o > readelf.out
regexp_diff match failure
regexp "^  00000004  00.* R_.*00000000  external_symbol.*$"
line   "  00000004  700000025 R_IA64_DIR32LSB       0000000000000000  external_symbol           + 0"
FAIL: readelf -r

Any ideas what's broken?

Andreas
-- 
 Andreas Jaeger
  SuSE Labs aj@suse.de
   private aj@arthur.inka.de
    http://www.suse.de/~aj

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: make check failures on ia64-linux
  2001-06-12  3:06 make check failures on ia64-linux Andreas Jaeger
@ 2001-06-12  4:37 ` Nick Clifton
  0 siblings, 0 replies; 4+ messages in thread
From: Nick Clifton @ 2001-06-12  4:37 UTC (permalink / raw)
  To: Andreas Jaeger; +Cc: binutils

Hi Andreas, Jaeger <aj@suse.de> writes:

> The following tests fail for me on ia64-linux when running the
> testsuite with current mainline (HJ's version but the difference
> should be small):

Note - the readelf tests are notoriously flaky.  It could just be
that the testsuite's expected results have not been tweaked for the
IA-64.

Cheers
        Nick

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: make check failures on ia64-linux
  2001-06-25 14:52 Jim Wilson
@ 2001-06-25 22:12 ` Andreas Jaeger
  0 siblings, 0 replies; 4+ messages in thread
From: Andreas Jaeger @ 2001-06-25 22:12 UTC (permalink / raw)
  To: Jim Wilson; +Cc: binutils

Jim Wilson <wilson@cygnus.com> writes:

> I got quite a few of them when I tried the current sources.  It will take
> some time to look at them all.

Thanks for looking into this.

> I have looked at two binutils testsuite failures so far.
> 
>>FAIL: readelf -s
> 
> This one fails because the IA-64 symbol table entries are in a different
> order than expected by the testsuite.  However, the same info as expected
> by the testsuite is there.  The lines are just printed in a different order.
> I don't know as yet whether the testsuite needs to be fixed, or whether the
> IA-64 port needs to be fixed.  Either way this seems pretty unimportant.

It's unimportant - but IMHO a testsuite should pass all tests.

>>FAIL: readelf -r
> 
> This one fails because readelf and/or the readelf testsuite is not 64-bit
> clean.  Readelf uses %5.5lx in dump_relocations to print out a reloc info
> field.  For 32-bit ELF this is OK, because there are 24 bits for the symbol
> index and 8 bits for the type, so 5 hex digits will be enough for the first
> 4k entries in the symbol table.  The testsuite then assumes that this number
> will start with two zeroes for this testcase, as the symbol index will fit in
> one hex digit.  For 64-bit ELF this is not OK.  There are 32 bits for the
> symbol index and 32 bits for the type.  For this testcase, the info field
> is 9 hex digits, and since the format is 5 hex digits, it gets printed out
> without any leading zeroes.  Thus we fail to match the pattern expected by
> the testsuite and this test fails.
> 
> This can be fixed by increasing the number of hex digits printed for 64-bit
> ELF files to 11.  Or it could be fixed by changing the pattern in the
> binutils/testsuite/binutils-all/readelf.r file for the info field.  Currently
> it is 00.* which will work for 32-bit ELF but not 64-bit ELF.

readelf -r should be fixed already in the current CVS version - isn't
it?

Andreas
-- 
 Andreas Jaeger
  SuSE Labs aj@suse.de
   private aj@arthur.inka.de
    http://www.suse.de/~aj

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: make check failures on ia64-linux
@ 2001-06-25 14:52 Jim Wilson
  2001-06-25 22:12 ` Andreas Jaeger
  0 siblings, 1 reply; 4+ messages in thread
From: Jim Wilson @ 2001-06-25 14:52 UTC (permalink / raw)
  To: binutils; +Cc: aj

I got quite a few of them when I tried the current sources.  It will take
some time to look at them all.

I have looked at two binutils testsuite failures so far.

>FAIL: readelf -s

This one fails because the IA-64 symbol table entries are in a different
order than expected by the testsuite.  However, the same info as expected
by the testsuite is there.  The lines are just printed in a different order.
I don't know as yet whether the testsuite needs to be fixed, or whether the
IA-64 port needs to be fixed.  Either way this seems pretty unimportant.

>FAIL: readelf -r

This one fails because readelf and/or the readelf testsuite is not 64-bit
clean.  Readelf uses %5.5lx in dump_relocations to print out a reloc info
field.  For 32-bit ELF this is OK, because there are 24 bits for the symbol
index and 8 bits for the type, so 5 hex digits will be enough for the first
4k entries in the symbol table.  The testsuite then assumes that this number
will start with two zeroes for this testcase, as the symbol index will fit in
one hex digit.  For 64-bit ELF this is not OK.  There are 32 bits for the
symbol index and 32 bits for the type.  For this testcase, the info field
is 9 hex digits, and since the format is 5 hex digits, it gets printed out
without any leading zeroes.  Thus we fail to match the pattern expected by
the testsuite and this test fails.

This can be fixed by increasing the number of hex digits printed for 64-bit
ELF files to 11.  Or it could be fixed by changing the pattern in the
binutils/testsuite/binutils-all/readelf.r file for the info field.  Currently
it is 00.* which will work for 32-bit ELF but not 64-bit ELF.

Jim

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2001-06-25 22:12 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-06-12  3:06 make check failures on ia64-linux Andreas Jaeger
2001-06-12  4:37 ` Nick Clifton
2001-06-25 14:52 Jim Wilson
2001-06-25 22:12 ` Andreas Jaeger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).