test results with the 2.35 branch for several architectures

Maciej W. Rozycki macro@linux-mips.org
Sun Jul 19 23:43:34 GMT 2020


On Wed, 8 Jul 2020, Matthias Klose wrote:

> mips64el:
> 131 failures, see
> https://buildd.debian.org/status/fetch.php?pkg=binutils&arch=mips64el&ver=2.34.90.20200706-1&stamp=1594128199&raw=1

 At least some, and probably most if not all of these are likely due to 
this local patch:

dpkg-source: info: applying mips64-default-n64.diff

which I gather switches the default ABI from n32 to n64.  The testsuite is 
not prepared for this, especially the generic pieces, but neither are some 
MIPS-specific parts.  And in any case to match the change made you need to 
update this conditional within that patch as well:

} elseif { [istarget mips64*-*-linux*] } {
    if [istarget *el-*-*] {
	set abi_asflags(o32) -32
	set abi_ldflags(o32) -melf32ltsmip
	set abi_asflags(n64) "-march=from-abi -64"
	set abi_ldflags(n64) -melf64ltsmip
    } else {
	set abi_asflags(o32) -32
	set abi_ldflags(o32) -melf32btsmip
	set abi_asflags(n64) "-march=from-abi -64"
	set abi_ldflags(n64) -melf64btsmip
    }
    set irixemul 0

(in ld/testsuite/ld-mips-elf/mips-elf.exp) to set `n32' flags (which are 
no longer nil, due to the ABI not being the default anymore) rather than 
`n64' flags (which can now be nil).  Any flags not explicitly set default 
to nil.  Yes, this is intentional, to verify the defaults as well.

 Some of the GAS failures are bugs in the respective test cases, which 
fail to select an ABI with assembly and just happen to work with both o32 
and n32, but not n64.

> mipsel:
> 101 failures, see
> https://buildd.debian.org/status/fetch.php?pkg=binutils&arch=mipsel&ver=2.34.90.20200706-1&stamp=1594122742&raw=1

 This builds natively and therefore I gather these are the usual compiled 
test failures.  As I recall a couple are genuine, such as the IFUNC tests, 
and many are due to ABI mismatches between object files built with GCC and 
ones assembled directly with GAS caused by incompatible code generation 
options, as GAS and/or LD defaults are often different from GCC defaults.  
The test framework would have to be updated accordingly for these to work.

 HTH,

  Maciej


More information about the Binutils mailing list