Thursday, November 5, 2020

SSTNPL: broad performance boost.

While, its not possible to adequately depict here, SSTNPL has recently gotten a HUGE performance improvement across the board. the reason? fairly simple actually....

Null

null is an SBTCVM Assembly keyword that maps to the opcode 0 in the SBTCVM G2x ISA. for a unfortunate amount of time SSTNPL has been using nulls as an easy way to target the next block of generated assembly with a label, there were two problems with this, however:

  • This took up extra TROM space for no real reason.
  • This actually has slowed down SSTNPL's flow control (including the new 0.4.x code blocks)

zerosize 

enter zerosize. this fairly obviously named assembler keyword, doesn't generate much of anything at all... its sole purpose is to make it possible for compilers, like SSTNPL's compiler, to target the next line of assembly code, without writing that line first.

Conclusion:

as simple a change as this may be, its definitely improved performance of many different SSTNPL modules and applications.




No comments:

Post a Comment