Skip to content

Conversation

@dibyendumajumdar
Copy link
Contributor

Initial implementation of simple bytecode interpreter

…his to build typestate per basic block

Set max local reg and max stack size

Rename FunctionBuilder to BytecodeFunction

Revised call instruction

Revised temp register assignment to start from maxLocalReg rather than 0 so that we have a single set of registers per function

Initial work on Interpreter

Generate more specific array store/load and field set/get instructions rather than move.

More specific instructions for creating new instances of arrays and structs

Revised handling of call instruction -- copy args to new frame and copy result back
unary op in interpreter

Revised handling of call instruction -- copy args to new frame and copy result back
unary op in interpreter

Fix issue with return a[1]
Add support for arrays and structs in the interpreter.

Renames in stackvm module

Register type

fix refactor

fix refactor

Update README

Update README

Update README
@dibyendumajumdar dibyendumajumdar merged commit 7036bf3 into main Dec 9, 2024
1 check 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.

2 participants