I wasn't clear on one point about profiler method re-jitting: does the process need to be started in a special mode, or can a profiler be attached at any point and request certain methods to be rejitted?

I wonder if this could be used to perform minor upgrades to systems while they're running.  I assume that it's not possible to add new types/methods via this API, but at least minor bugs might be patchable on systems that cannot be torn down.  I was always intrigued by how Erlang supports upgrading systems while they're running.