You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When soft-float support was added, CRT LTO was removed with this commit to prevent bloat.
However, the linker does not appear to be properly removing unused library code for an unknown reason. For the same codebase that utilizes some divide and shift operations, on SDK release v8.0.1 using LTO leaves behind only the following methods comprising a total size of 577 bytes.
If you need a codebase for comparison, the example came from compiling a pre-release of an NES game I have been creating located at my neschess repository. As this currently targets the NROM cartridge, v8.0.1 generated a binary close to maximum size, but with the additional size of v8.1, the binary ROM size is exceeded.
The text was updated successfully, but these errors were encountered:
When soft-float support was added, CRT LTO was removed with this commit to prevent bloat.
However, the linker does not appear to be properly removing unused library code for an unknown reason. For the same codebase that utilizes some divide and shift operations, on SDK release v8.0.1 using LTO leaves behind only the following methods comprising a total size of 577 bytes.
By changing to release v8.1.0, the following methods are included in the text section, most of them unused, inflating the size to 6729 bytes:
If you need a codebase for comparison, the example came from compiling a pre-release of an NES game I have been creating located at my neschess repository. As this currently targets the NROM cartridge, v8.0.1 generated a binary close to maximum size, but with the additional size of v8.1, the binary ROM size is exceeded.
The text was updated successfully, but these errors were encountered: