summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDamien George <damien@micropython.org>2022-06-10 16:38:20 +1000
committerDamien George <damien@micropython.org>2022-06-10 16:42:43 +1000
commit17a0d65ee4eaa445a638d44dc9edc30d1ddbbac6 (patch)
treedf03f8143b80f73d894004837118c4211b8f32b6
parentee9feacc00cf08536f57f39605060028e57a6515 (diff)
tools/mpy_ld.py: Support GOT entries that reference inside mp_fun_table.
Signed-off-by: Damien George <damien@micropython.org>
-rwxr-xr-xtools/mpy_ld.py2
1 files changed, 2 insertions, 0 deletions
diff --git a/tools/mpy_ld.py b/tools/mpy_ld.py
index 4cceaa56d..09ea90dcd 100755
--- a/tools/mpy_ld.py
+++ b/tools/mpy_ld.py
@@ -434,6 +434,8 @@ def populate_got(env):
dest = got_entry.name
elif got_entry.name.startswith("mp_fun_table+0x"):
dest = int(got_entry.name.split("+")[1], 16) // env.arch.word_size
+ elif got_entry.sec_name == ".external.mp_fun_table":
+ dest = got_entry.sym.mp_fun_table_offset
elif got_entry.sec_name.startswith(".text"):
dest = ".text"
elif got_entry.sec_name.startswith(".rodata"):