Simplify the way leap handles conditionals.
This change removes the If(...) instruction, and instead introduces a `condition` attribute for each instruction. There are no user (method writer) visible changes; this change purely affects the backend (code generator and interpreter). By using a condition attribute rather than conditional edges, we can simplify reasoning about DAGs and hence the code generation process. The new code generator is much smaller and clearer than the previous one, while able to generate structured code of the same quality (mostly, with some optimizations left to implement).
Loading
-
mentioned in issue #63 (closed)
-
mentioned in issue #63 (closed)
Please register or sign in to comment