| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
We're currently spending 50% of our time in `mu edit` performing refcount
updates.
|
|
|
|
| |
Time to make my ad hoc commented out code fragments a first-class feature.
|
|
|
|
|
|
|
|
|
|
| |
It's always confusing when `break` refers to a `switch` but `continue`
refers to the loop around the `switch`. But we've done ugly things like
this and `goto` for expedience. However, we're starting to run into cases
where we now need to insert code at every `continue` or `continue`-mimicking
`goto` inside the core interpreter loop. Better to make the loop single-entry-single-exit.
Common things to run after every instruction will now happen inside the
`finish_instruction` function rather than at the `finish_instruction` label.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
One more place we were missing expanding type abbreviations: inside
container definitions.
|
| |
|
|
|
|
|
| |
Stop inlining functions because that will complicate separate
compilation. It also simplifies the code without impacting performance.
|
|
|
|
|
|
|
|
| |
Always show instruction before any transforms in error messages.
This is likely going to make some errors unclear because they *need* to
show the original instruction. But if we don't have tests for those
situations did they ever really work?
|
|
|
|
| |
Add number-of-instructions recipe to Mu
|
|
Layers 0-29 are now a complete rudimentary platform except for pointers
and indirection.
|