Enexpected Pi ROM sizes.
David Pitt (3386) 1248 posts |
Long and short descriptor Pi ROMs were built today. Given that in Wimp 5.82 about 50KB of ROM space was saved by reducing the size of the ROM sprites the spare bytes values reported at the end of the builds were surprisingly small. Short descriptors Image has 17255 bytes spare (16.85K) Long descriptors Image has 7110 bytes spare (6.94K) An IOMD ROM was then built as that had been known to be getting a tight fit, but that now does have more spare space. Image has 48765 bytes spare (47.62K). This is intended only to query something unexpected rather to start further debate about future builds. |
Jeffrey Lee (213) 6048 posts |
The 50KB that was reclaimed in Wimp 5.82 was gobbled up a couple of weeks later when an OS_AbortTrap implementation was added to the kernel. The reason that IOMD now has comparatively more space than the Pi ROM is that the AbortTrap code is tailored for the range of CPUs that the ROM supports. IOMD (ARMv3-v4) only has a handful of load/store instructions compared to a Pi (ARMv6-v8), so by only including support for the required instructions, a lot of ROM space is saved (and it should hopefully run a bit more efficiently). |
David Pitt (3386) 1248 posts |
Thanks for the explanation. I also managed to remember that the IOMD build had its HALsize reduced in Env 1.46 |