Skip to content

R_68K_PC32 and m68k #578

Open
Open
@Kalamatee

Description

Describe the bug
Recent versions of binutils/gcc started generating code with R_68K_PC32 on m68k. Elf2Hunk tries to use RELRELOC32 to store these - however RELRELOC32 can only handle 16bit offsets and upto 65k relocations per hunk.

This breaks in many places on aros including -:

Linking the ROM, uses offsets over the supported size for RELRELOC32.
Linking many c++ objects (e.g. Mesa) fail due to having offsets over the supported size.

To Reproduce
Steps to reproduce the behavior:
Compile AROS for m68k.

Expected behaviour
Relocations are fixed up correctly.

Screenshots
If applicable, add screenshots to help explain your problem.

Architecture

  • Amiga (including UAE, Vampire cards)

CPU

  • m68k

Version
All using relatively new binutils versions.

Additional context
Possible solutions include making Elf2Hunk use some other method of relocating R_68K_PC32

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions