diff options
author | obscuren <geffobscura@gmail.com> | 2014-07-22 21:57:54 +0800 |
---|---|---|
committer | obscuren <geffobscura@gmail.com> | 2014-07-22 21:57:54 +0800 |
commit | 490ca410c01a1b8076214d00c21d2edf09c24f86 (patch) | |
tree | 9c206ffda9dcfc723ea25b26809a7371b08d328d /ethchain | |
parent | 1e8b54abfb7129fcdf4812ad01b6a7cd61e4f65d (diff) | |
download | go-tangerine-490ca410c01a1b8076214d00c21d2edf09c24f86.tar go-tangerine-490ca410c01a1b8076214d00c21d2edf09c24f86.tar.gz go-tangerine-490ca410c01a1b8076214d00c21d2edf09c24f86.tar.bz2 go-tangerine-490ca410c01a1b8076214d00c21d2edf09c24f86.tar.lz go-tangerine-490ca410c01a1b8076214d00c21d2edf09c24f86.tar.xz go-tangerine-490ca410c01a1b8076214d00c21d2edf09c24f86.tar.zst go-tangerine-490ca410c01a1b8076214d00c21d2edf09c24f86.zip |
Minor improvements and fixes to the new vm structure
Diffstat (limited to 'ethchain')
-rw-r--r-- | ethchain/asm.go | 4 | ||||
-rw-r--r-- | ethchain/vm.go | 5 |
2 files changed, 5 insertions, 4 deletions
diff --git a/ethchain/asm.go b/ethchain/asm.go index 2697953fd..9f99b0c48 100644 --- a/ethchain/asm.go +++ b/ethchain/asm.go @@ -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 } diff --git a/ethchain/vm.go b/ethchain/vm.go index a9bed1eca..4cbb4e1c4 100644 --- a/ethchain/vm.go +++ b/ethchain/vm.go @@ -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 |