core/vm/runtime: added simple execution runtime#1964
core/vm/runtime: added simple execution runtime#1964obscuren merged 1 commit intoethereum:developfrom
Conversation
Updated: Wed Nov 18 13:38:06 UTC 2015 |
|
Yeah, but couldn't wait for one so I've implemented my own :)) Will look though this one though :) |
There was a problem hiding this comment.
Nitpicking, but you might want to bump the year.
There was a problem hiding this comment.
build/update-license.go will fix it when we run it.
Current coverage is
|
|
This is what I've used when I played with the EVM: https://gist.github.com/karalabe/6c200d783586a6c6b29c Feel free to cherry pick anything you like. |
There was a problem hiding this comment.
You didn't initialize the remainder of the big.Ints, which will crash the first time accessed. (e.g. Try running "D" ;) )
There was a problem hiding this comment.
You're right. I must have overlooked this. I'll add some tests to test these fields thru the EVM calling the specific opcodes.
|
@karalabe PTAL |
|
I think it would be valuable to return the generated logs too, beside the result of the execution (i.e. like this https://gist.github.com/karalabe/6c200d783586a6c6b29c#file-evm-go-L15). This would be very useful in scenarios where the code generates actual logs and you would like to inspect them / check that they are indeed correct, etc. |
|
@karalabe i'm not sure about that. That's what the |
|
👍 |
|
Debug is ok for manually inspecting the execution logs, but what I was really looking for is a way to programatically inspect the contract's generated events/logs. Specifically so that I can unit test that a compiled code indeed fires the events it's supposed to. |
|
@karalabe sure. I'll make it return the |
|
Aaaahh, gotcha. Confused the two things apparently. Dunno what the best way On Wed, Nov 18, 2015 at 3:30 PM, Jeffrey Wilcke notifications@github.com
|
1f7918c to
570ee25
Compare
|
@karalabe addressed it. PTAL :-) |
There was a problem hiding this comment.
Maybe rename to GasPrice? To keep it consistent with the yellow paper and the rest of the code base?
570ee25 to
03df569
Compare
The runtime environment can be used for simple basic execution of contract code without the requirement of setting up a full stack and operates fully in memory.
03df569 to
1372b99
Compare
core/vm/runtime: added simple execution runtime
The runtime environment can be used for simple basic execution of
contract code without the requirement of setting up a full stack and
operates fully in memory.
@frozeman required some benchmarking of the EVM and execution of many calls. I recall @karalabe requesting a simple execution model for the execution of EVM byte code and hence I've created a PR for such cases.