splat icon indicating copy to clipboard operation
splat copied to clipboard

autosegments insertion fix

Open AngheloAlf opened this issue 1 year ago • 3 comments

Fixed a bug where auto segments insertion may not respect the proper ordering if there are linker_offset segments present

AngheloAlf avatar Feb 22 '24 03:02 AngheloAlf

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

mkst avatar Feb 24 '24 13:02 mkst

This should hopefully be fixed now

AngheloAlf avatar Feb 24 '24 15:02 AngheloAlf

@mkst would you mind testing this again?

ethteck avatar Mar 19 '24 10:03 ethteck