aboutsummaryrefslogtreecommitdiffstats
path: root/vm/vm_debug.go
diff options
context:
space:
mode:
Diffstat (limited to 'vm/vm_debug.go')
-rw-r--r--vm/vm_debug.go20
1 files changed, 2 insertions, 18 deletions
diff --git a/vm/vm_debug.go b/vm/vm_debug.go
index 1b9c480f8..6ad385fd0 100644
--- a/vm/vm_debug.go
+++ b/vm/vm_debug.go
@@ -83,29 +83,13 @@ func (self *DebugVm) Run(me, caller ContextRef, code []byte, value, gas, price *
jump = func(from uint64, to *big.Int) {
p := to.Uint64()
- self.Printf(" ~> %v", to)
- /* NOTE: new model. Will change soon
nop := OpCode(context.GetOp(p))
- if nop != JUMPDEST {
+ if !destinations.Has(p) {
panic(fmt.Sprintf("invalid jump destination (%v) %v", nop, p))
}
+ self.Printf(" ~> %v", to)
pc = to.Uint64()
- */
- // Return to start
- if p == 0 {
- pc = 0
- } else {
- nop := OpCode(context.GetOp(p))
- if !(nop == JUMPDEST || destinations[from] != nil) {
- panic(fmt.Sprintf("invalid jump destination (%v) %v", nop, p))
- } else if nop == JUMP || nop == JUMPI {
- panic(fmt.Sprintf("not allowed to JUMP(I) in to JUMP"))
- }
-
- pc = to.Uint64()
-
- }
self.Endl()
}