Skip to content

Madyasthal patchables plumbing - #267

Merged
xTrayambak merged 22 commits into
masterfrom
patchables
Jan 7, 2026
Merged

Madyasthal patchables plumbing#267
xTrayambak merged 22 commits into
masterfrom
patchables

Conversation

@xTrayambak

Copy link
Copy Markdown
Member
  • xxx: update copyright year in mkdocs
  • fix: niche: don't crash if reassignment is null
  • fix: parser: use reassignVal(string, MAtom)
  • add: madhyasthal: LTI instruction
  • add: madhyasthal/dumper: dumpInst(ir::Inst) -> string
  • fix: madhyasthal/dce: mark LTI as use
  • add: patch.js benchmark
  • add: jit/x64: conditional jump patching
  • add: jit/amd64: getRawInt() impl
  • add: jit/x64: LesserThanInt impl in midtier IR+codegen

Here comes the first patchset of the year, yay.

Just trying to implement mid-function patching, which'd probably help performance a lot.

Overload hell strikes again
Laying down the groundwork for conditional operations to work
This gives a ~49% performance increase in `benchmarks/script/patch.js`,
as the entirity of the code path can be compiled down now.
I really should not be allowed to write an interpreter ever again in my
entire life. This was horrible.

With the weird impossible-edge-cases assuming `getClause()` gone,
there's massive speedups here.
This is part of a larger effort to merge builtins (they are weird!) into
the VM itself, making the VM less generic.
It is quite unstable, maybe I'll fix it eventually.
@xTrayambak
xTrayambak merged commit ed5893b into master Jan 7, 2026
0 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant