From 828522d5eff5053283a0e479036eb42d12592346 Mon Sep 17 00:00:00 2001 From: Mikael Pettersson Date: Mon, 21 Aug 2023 21:18:00 +0200 Subject: [PATCH] ld_assign: make .text start in section 2 not 1 --- erlang/apps/ld/src/ld_assign.erl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/erlang/apps/ld/src/ld_assign.erl b/erlang/apps/ld/src/ld_assign.erl index 68a033f..df0a708 100644 --- a/erlang/apps/ld/src/ld_assign.erl +++ b/erlang/apps/ld/src/ld_assign.erl @@ -36,8 +36,8 @@ assign(Segments) -> PhNum = length(Segments), true = PhNum < ?PN_XNUM, % assert; TODO: otherwise store PhNum in Shdr0.sh_info - %% TODO: assumes KL10B-compatible "small" code model output - VAddr = 8#00001001000 bsl 2, % section 1, page 1, word address to byte address + %% TODO: assumes large or small code model output, not tiny + VAddr = 8#00002001000 bsl 2, % section 2, page 1, word address to byte address Offset = ?ELF36_EHDR_SIZEOF + ?ELF36_PHDR_SIZEOF * PhNum, {_Offset, _VAddr, NewSegments} = lists:foldl(fun assign/2, {Offset, VAddr, []}, Segments), lists:reverse(NewSegments).