splat
splat copied to clipboard
autosegments insertion fix
Fixed a bug where auto segments insertion may not respect the proper ordering if there are linker_offset segments present
Tried this branch on sssv master
root@148666ccfc25:/sssv# make extract
python3 tools/splat/split.py sssv.us.yaml
splat 0.22.2 (powered by spimdisasm 1.21.0)
Traceback (most recent call last):
File "/sssv/tools/splat/split.py", line 7, in <module>
splat.scripts.split.main(
File "/sssv/tools/splat/src/splat/scripts/split.py", line 519, in main
all_segments = initialize_segments(config["segments"])
File "/sssv/tools/splat/src/splat/scripts/split.py", line 76, in initialize_segments
segment: Segment = Segment.from_yaml(
File "/sssv/tools/splat/src/splat/segtypes/segment.py", line 322, in from_yaml
ret = cls(
File "/sssv/tools/splat/src/splat/segtypes/common/code.py", line 28, in __init__
super().__init__(
File "/sssv/tools/splat/src/splat/segtypes/common/group.py", line 30, in __init__
self.subsegments: List[Segment] = self.parse_subsegments(yaml)
File "/sssv/tools/splat/src/splat/segtypes/common/code.py", line 252, in parse_subsegments
ret = self._insert_all_auto_sections(ret, base_segments)
File "/sssv/tools/splat/src/splat/segtypes/common/code.py", line 134, in _insert_all_auto_sections
link_section = ret[last_inserted_index].get_linker_section_order()
IndexError: list index out of range
make: *** [Makefile:209: extract] Error 1
This should hopefully be fixed now
@mkst would you mind testing this again?