Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

R_68K_PC32 and m68k #578

Open
Kalamatee opened this issue Apr 19, 2022 · 0 comments
Open

R_68K_PC32 and m68k #578

Kalamatee opened this issue Apr 19, 2022 · 0 comments
Labels
bug Something isn't working

Comments

@Kalamatee
Copy link
Member

Kalamatee commented Apr 19, 2022

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

@Kalamatee Kalamatee added the bug Something isn't working label Apr 19, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant