@tekknolagi one random thought: an arguments trampoline. Break argument computation out of your graph entirely; do argument computation as a separate compilation that jumps into the (now always the same) entry point with nice graph.
@mgaudet I edited the article to make it more clear that it is possible to have code execution in argument setup, including raising exceptions, modifying locals, etc
@mgaudet :') I'm working on a JIT patch that will be interesting fodder for a blog post detailing the heroics we go to to keep Ruby locals in SSA values / registers