Skip to content

Commit 44aa429

Browse files
authored
Merge pull request #141 from Decompollaborate/develop
1.18.0
2 parents b48eed5 + 457d674 commit 44aa429

File tree

4 files changed

+18
-5
lines changed

4 files changed

+18
-5
lines changed

CHANGELOG.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
## [1.18.0] - 2023-10-29
11+
12+
### Added
13+
14+
- Add option to rename the sections generated by `FunctionRodataEntry`
15+
- `FunctionRodataEntry.sectionText` to rename the `.text` section
16+
- `FunctionRodataEntry.sectionRodata` to rename the `.rodata` section
17+
- `FunctionRodataEntry.sectionLateRodata` to rename the `.late_rodata` section
18+
1019
## [1.17.4] - 2023-10-07
1120

1221
### Added
@@ -1252,6 +1261,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
12521261
- Version 1.0.0
12531262

12541263
[unreleased]: https://github.com/Decompollaborate/spimdisasm/compare/master...develop
1264+
[1.18.0]: https://github.com/Decompollaborate/spimdisasm/compare/1.17.4...1.18.0
12551265
[1.17.4]: https://github.com/Decompollaborate/spimdisasm/compare/1.17.3...1.17.4
12561266
[1.17.3]: https://github.com/Decompollaborate/spimdisasm/compare/1.17.2...1.17.3
12571267
[1.17.2]: https://github.com/Decompollaborate/spimdisasm/compare/1.17.1...1.17.2

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
[project]
55
name = "spimdisasm"
66
# Version should be synced with spimdisasm/__init__.py
7-
version = "1.17.4"
7+
version = "1.18.0"
88
description = "MIPS disassembler"
99
# license = "MIT"
1010
readme = "README.md"

spimdisasm/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
from __future__ import annotations
77

8-
__version_info__: tuple[int, int, int] = (1, 17, 4)
8+
__version_info__: tuple[int, int, int] = (1, 18, 0)
99
__version__ = ".".join(map(str, __version_info__))
1010
__author__ = "Decompollaborate"
1111

spimdisasm/mips/FuncRodataEntry.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,22 +20,25 @@ class FunctionRodataEntry:
2020
function: symbols.SymbolFunction | None = None
2121
rodataSyms: list[symbols.SymbolBase] = dataclasses.field(default_factory=list)
2222
lateRodataSyms: list[symbols.SymbolBase] = dataclasses.field(default_factory=list)
23+
sectionText: str = ".text"
24+
sectionRodata: str = ".rodata"
25+
sectionLateRodata: str = ".late_rodata"
2326

2427
def hasRodataSyms(self) -> bool:
2528
return len(self.rodataSyms) > 0 or len(self.lateRodataSyms) > 0
2629

2730
def writeToFile(self, f: TextIO, writeFunction: bool=True):
2831
if len(self.rodataSyms) > 0:
2932
# Write the rdata
30-
f.write(f".section .rodata{common.GlobalConfig.LINE_ENDS}")
33+
f.write(f".section {self.sectionRodata}{common.GlobalConfig.LINE_ENDS}")
3134
for sym in self.rodataSyms:
3235
f.write(sym.disassemble(migrate=True, useGlobalLabel=True, isSplittedSymbol=True))
3336
f.write(common.GlobalConfig.LINE_ENDS)
3437

3538
if len(self.lateRodataSyms) > 0:
3639
assert self.function is not None
3740
# Write the late_rodata
38-
f.write(f".section .late_rodata{common.GlobalConfig.LINE_ENDS}")
41+
f.write(f".section {self.sectionLateRodata}{common.GlobalConfig.LINE_ENDS}")
3942

4043
lateRodataSize = 0
4144
for sym in self.lateRodataSyms:
@@ -53,7 +56,7 @@ def writeToFile(self, f: TextIO, writeFunction: bool=True):
5356

5457
if self.function is not None:
5558
if len(self.rodataSyms) > 0 or len(self.lateRodataSyms) > 0:
56-
f.write(f"{common.GlobalConfig.LINE_ENDS}.section .text{common.GlobalConfig.LINE_ENDS}")
59+
f.write(f"{common.GlobalConfig.LINE_ENDS}.section {self.sectionText}{common.GlobalConfig.LINE_ENDS}")
5760

5861
if writeFunction:
5962
# Write the function itself

0 commit comments

Comments
 (0)