Minor improvements and fixes to the new vm structure
This commit is contained in:
@@ -25,7 +25,7 @@ func Disassemble(script []byte) (asm []string) {
|
||||
pc.Add(pc, ethutil.Big1)
|
||||
a := int64(op) - int64(PUSH1) + 1
|
||||
if int(pc.Int64()+a) > len(script) {
|
||||
return nil
|
||||
return
|
||||
}
|
||||
|
||||
data := script[pc.Int64() : pc.Int64()+a]
|
||||
@@ -40,5 +40,5 @@ func Disassemble(script []byte) (asm []string) {
|
||||
pc.Add(pc, ethutil.Big1)
|
||||
}
|
||||
|
||||
return
|
||||
return asm
|
||||
}
|
||||
|
@@ -563,10 +563,9 @@ func (vm *Vm) RunClosure(closure *Closure) (ret []byte, err error) {
|
||||
}
|
||||
|
||||
code := closure.Script[cOff : cOff+l]
|
||||
//fmt.Println("len:", l, "code off:", cOff, "mem off:", mOff)
|
||||
fmt.Println("len:", l, "code off:", cOff, "mem off:", mOff)
|
||||
|
||||
mem.Set(mOff, l, code)
|
||||
//fmt.Println(Code(mem.Get(mOff, l)))
|
||||
case GASPRICE:
|
||||
stack.Push(closure.Price)
|
||||
|
||||
@@ -673,6 +672,8 @@ func (vm *Vm) RunClosure(closure *Closure) (ret []byte, err error) {
|
||||
stack.Push(pc)
|
||||
case MSIZE:
|
||||
stack.Push(big.NewInt(int64(mem.Len())))
|
||||
|
||||
vm.Printf(" => %v", mem.Len()).Endl()
|
||||
case GAS:
|
||||
stack.Push(closure.Gas)
|
||||
// 0x60 range
|
||||
|
Reference in New Issue
Block a user