Page MenuHomeFreeBSD

mips: ubldr: use truncated load address for mips32
ClosedPublic

Authored by kevans on Sep 2 2019, 2:12 AM.

Details

Summary

BFD appears to silently truncate 0xffffffff80800000 when it processes the ldscript for 32-bit mips, but LLD chokes on it as the linker script tries to place elements above 32-bit range. It's unclear to me if silent truncation is kosher or not and whether this patch is really what we want to do, but it is one approach at least.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

Seems not at all right to me...

stand/mips/uboot/Makefile
22 ↗(On Diff #61541)

this is a nop for mipsel machines.

In D21487#467962, @imp wrote:

Seems not at all right to me...

Yeah...

stand/mips/uboot/Makefile
22 ↗(On Diff #61541)

Whoops, should have gone for :Mmips64* otherwise use truncated default...

stand/mips/uboot/Makefile
22 ↗(On Diff #61541)

Yea, either way... There's no good way to define predicates in make :(

I fear this is the last bad choice we have.

This revision is now accepted and ready to land.Sep 11 2019, 1:18 AM
This revision was automatically updated to reflect the committed changes.