This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


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

Re: make check failures on ia64-linux


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


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