| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Neither jump nor call instructions support immediates. Drop that.
The only form of absolute addressing relies on rm32.
|
| |
|
|
|
|
|
|
|
|
| |
Attempt #3 at fixing CI.
In the process the feature gets a lot less half-baked.
Ridiculously misleading that we had `has_metadata()` was special-cased
to one specific transform. I suck.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I'm going to continue using them for now, but I'm fairly certain now
that they're just a temporary device to help rapidly-prototype ideas.
The reason: there's just too many ways to abuse low-level features, and
it ends up taking too much code to disallow things soon after you allow
them.
New plan: stop trying to write checks, just treat them as temporary
conventions for now. Goal is now to just get the core sequence of passes
nailed down. Then we'll start reimplementing them from the ground up.
First implication of this new plan: ripping out most existing checks.
I'm still going to eventually build type checks. But no degenerate
checks for code just being too low-level.
(This decision is the outcome of a few days of noodling over Forth and
https://mastodon.social/@akkartik/100549913519614800.)
|
|
|
|
|
| |
We want to always print numbers in hex. This should make that a little
more comprehensive.
|
| |
|
|
|
|
|
|
|
|
|
| |
Targets you can jump to and ones you can call are conceptually disjoint
sets.
I'm highlighting these in Vim, but it's a pretty complex pattern.
Arguably errors shouldn't be highlighted. Only warnings that are easy to
be accidentally deployed.
|
|
|
|
|
| |
Side effect: better error messages when the tangler does something
unexpected.
|
|
|
|
|
| |
As we climb the ladder of abstraction we'll gradually pull the ladder up
behind ourselves.
|
| |
|
| |
|
| |
|
| |
|
|
|