core, core/vm: state improvements and tx pool speed up

Removed full tx validation during state transitions
This commit is contained in:
obscuren
2015-06-17 17:09:39 +02:00
parent 753d62a4dd
commit f5abc9f188
3 changed files with 25 additions and 32 deletions

View File

@ -26,25 +26,16 @@ type Context struct {
Args []byte
}
var dests destinations
func init() {
dests = make(destinations)
}
// Create a new context for the given data items.
func NewContext(caller ContextRef, object ContextRef, value, gas, price *big.Int) *Context {
c := &Context{caller: caller, self: object, Args: nil}
/*
if parent, ok := caller.(*Context); ok {
// Reuse JUMPDEST analysis from parent context if available.
c.jumpdests = parent.jumpdests
} else {
c.jumpdests = make(destinations)
}
*/
c.jumpdests = dests
if parent, ok := caller.(*Context); ok {
// Reuse JUMPDEST analysis from parent context if available.
c.jumpdests = parent.jumpdests
} else {
c.jumpdests = make(destinations)
}
// Gas should be a pointer so it can safely be reduced through the run
// This pointer will be off the state transition