summaryrefslogtreecommitdiff
path: root/sym_info.py
diff options
context:
space:
mode:
authorTharo <tharo10600@gmail.com>2026-05-06 22:33:03 +0100
committerGitHub <noreply@github.com>2026-05-06 23:33:03 +0200
commit2c481eaeebcfe2d78efa305d3e1b908100bebf14 (patch)
treef06c98329359fc04189040eeb3e056c150dd47ee /sym_info.py
parent70701b8ac9b5f41a2cc71a8ce59a211c137aa298 (diff)
Partial linking of spec segments (#2661)
* Partial linking of overlay segments, relax linker script alignment * Partial linking of all spec segments * Fix update, remove _RomPos from linker script * iQue version working pending COM-plugin update * Add plf map file resolution to sym_info.py, local symbol merging is broken * git subrepo pull tools/com-plugin subrepo: subdir: "tools/com-plugin" merged: "c4f3ba845" upstream: origin: "git@github.com:Thar0/com-plugin.git" branch: "main" commit: "c4f3ba845" git-subrepo: version: "0.4.6" origin: "https://github.com/ingydotnet/git-subrepo" commit: "110b9eb" * Make tools compatible with partial linking Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com> * Remove unused files * Fix some makefile bits * mkspecrules cleanup * Comment on the makerom linker layout in mkldscript * Revert linker padding strategy back to pad_text spec directives * Comment on objcopy elf -> rom step * Adjust tool descriptions * Fix compressed builds * rm reloc_prereq, no longer used * Makefile merge fix Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com> --------- Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com> Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
Diffstat (limited to 'sym_info.py')
-rwxr-xr-xsym_info.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/sym_info.py b/sym_info.py
index afee01451..a85390561 100755
--- a/sym_info.py
+++ b/sym_info.py
@@ -215,7 +215,6 @@ def merge_local_symbols(
file.setSymbolList(symbols)
-
def find_symbols_by_name(
map_file: mapfile_parser.mapfile.MapFile, sym_name: str
) -> list[mapfile_parser.mapfile.FoundSymbolInfo]:
@@ -354,6 +353,13 @@ def sym_info_main():
map_file = mapfile_parser.mapfile.MapFile()
map_file.readMapFile(map_path)
+ def resolver(x: Path) -> Path|None:
+ if x.suffix == ".plf":
+ plf_map_path = x.with_suffix(".map")
+ if plf_map_path.exists():
+ return plf_map_path
+ return None
+ map_file = map_file.resolvePartiallyLinkedFiles(resolver)
if elf_path and elf_path.exists():
local_symbols = read_local_symbols_from_mdebug(elf_path)