Shop OBEX P1 Docs P2 Docs Learn Events
OpenSpin 1.00.77 Now with Unused Method Removal — Parallax Forums

OpenSpin 1.00.77 Now with Unused Method Removal

Roy ElthamRoy Eltham Posts: 3,000
edited 2015-05-29 02:13 in Propeller 1
Get it here: https://github.com/parallaxinc/OpenSpin/releases

The new Unused Method Removal feature is now working. It will remove unused Spin methods, and even whole unused objects. Even if it removes a whole object, the CON's in it will still be usable (e.g. object#conValue). It doesn't remove unused DAT sections unless the entire object is unused (no spin methods are ever called).

The only Spin methods it has trouble removing are ones called by coginit or cognew. Those will be left in even if the function containing the coginit/cognew is removed. It's something that may be addressed in a future update, but for now it's a pretty minor limitation.

It's reasonably solid now, but still needs more testing. Please check it out.


Edit: changed title version to 1.00.77

Comments

  • Heater.Heater. Posts: 21,230
    edited 2015-05-19 03:26
    Cool.

    I'll be trying to get it transpiled to JS for the web ASAP.
  • dgatelydgately Posts: 1,630
    edited 2015-05-19 09:15
    Nice!

    Ran a couple of tests from the command line on my Mac OS X system!

    Looks like SimpleIDE does not pass this as a "Spin Compiler Option" if I manually enter "-u" into the Compiler option field, though, so SimpleIDE will need an update to use this feature. (Hmm, PropellerIDE, as well!)

    dgately
  • Roy ElthamRoy Eltham Posts: 3,000
    edited 2015-05-19 10:07
    Heater,
    It uses a fair bit more memory (mostly static), sorry.

    dgately,
    Brett helped with testing early on, so I suspect he'll have PropellerIDE working with it soon.
  • Heater.Heater. Posts: 21,230
    edited 2015-05-19 10:25
    I'm sure a bit of extra memory usage will be fine in the normal browser.
  • base2designbase2design Posts: 78
    edited 2015-05-19 14:03
    Sorry I'm late to the party. This is pretty cool. If I wanted to use this outside PropellerIDE, is there a complimentary utility to this for loading the compiled code to RAM/EEPROM of the prop?
  • base2designbase2design Posts: 78
    edited 2015-05-19 14:42
    Derp. Search is my friend. For those of you with my particular kind of brain damage, here's a loader:

    https://github.com/dbetz/propeller-load
  • Roy ElthamRoy Eltham Posts: 3,000
    edited 2015-05-29 02:13
    Hey guys,

    I published an updated version (1.00.77) with a bug fix for the Unused Method Removal feature.
Sign In or Register to comment.