0xPolygonMiden / miden-vm

STARK-based virtual machine
MIT License
632 stars 161 forks source link

feat: `DYN` and `DYNCALL` takes a memory address instead of digest on stack #1535

Closed plafer closed 3 weeks ago

plafer commented 1 month ago

Closes #1091 Closes #1478

bobbinth commented 1 month ago

This change breaks how dyncall works (i.e. dyncall compiles to call(dyn)), since after the call, the memory is wiped since we entered a new context, and hence placing the procedure hash in memory before the call doesn't work.

We might need to do https://github.com/0xPolygonMiden/miden-vm/issues/1478 before we can merge this.

Ah yes - good point! I didn't think of this. Indeed, we may need to do #1478 first.

plafer commented 1 month ago

@bobbinth docs are ready for review

bobbinth commented 3 weeks ago

I'll merge this PR tomorrow (after miden-base has been migrated to the current next).

Let's hold off on merging this until we have a corresponding PR in miden-base (otherwise it'll break miden-base). @Fumuran will start working on this in the next day or so.