Adjust section placement and relocation logic for Mach-O
1. Place each section on a separate page to ensure required alignment (wastes lots ot space, needs to be improved). 2. Unwire relocation logic from macho sections (the most fiddly part is adjusting internal relocations). Other todos: 0. Add a test for section alignment. 1. Investigate 32bit relocations! 2. Fix memory leak in ZEROPAGE section allocation. 3. Fix creating redundant jump islands for GOT. 4. Investigate more compact section placement.
Showing
- rts/Linker.c 7 additions, 3 deletionsrts/Linker.c
- rts/linker/MachO.c 217 additions, 112 deletionsrts/linker/MachO.c
- rts/linker/MachO.h 9 additions, 8 deletionsrts/linker/MachO.h
- rts/linker/SymbolExtras.c 1 addition, 0 deletionsrts/linker/SymbolExtras.c
- testsuite/tests/rts/linker/Makefile 8 additions, 0 deletionstestsuite/tests/rts/linker/Makefile
- testsuite/tests/rts/linker/all.T 9 additions, 0 deletionstestsuite/tests/rts/linker/all.T
- testsuite/tests/rts/linker/runner 0 additions, 0 deletionstestsuite/tests/rts/linker/runner
- testsuite/tests/rts/linker/runner.c 65 additions, 0 deletionstestsuite/tests/rts/linker/runner.c
- testsuite/tests/rts/linker/unsigned_reloc_macho_64.s 11 additions, 0 deletionstestsuite/tests/rts/linker/unsigned_reloc_macho_64.s
- testsuite/tests/rts/linker/unsigned_reloc_macho_64.stdout 2 additions, 0 deletionstestsuite/tests/rts/linker/unsigned_reloc_macho_64.stdout
Loading
Please register or sign in to comment