diff options
author | Péter Szilágyi <peterke@gmail.com> | 2016-06-24 18:09:36 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-06-24 18:09:36 +0800 |
commit | 848dec3da2dae77ef50ea229cf430ff0171766ed (patch) | |
tree | 06f7458835408f94116572d13d1bf0bf48b278f3 /core/vm | |
parent | ae0880997b7427d6f19fb8501b37f0168623f0c8 (diff) | |
parent | ba784bdf36f2daf7827ec1ec864f3393ba8d86a0 (diff) | |
download | go-tangerine-848dec3da2dae77ef50ea229cf430ff0171766ed.tar go-tangerine-848dec3da2dae77ef50ea229cf430ff0171766ed.tar.gz go-tangerine-848dec3da2dae77ef50ea229cf430ff0171766ed.tar.bz2 go-tangerine-848dec3da2dae77ef50ea229cf430ff0171766ed.tar.lz go-tangerine-848dec3da2dae77ef50ea229cf430ff0171766ed.tar.xz go-tangerine-848dec3da2dae77ef50ea229cf430ff0171766ed.tar.zst go-tangerine-848dec3da2dae77ef50ea229cf430ff0171766ed.zip |
Merge pull request #2725 from karalabe/obscuren-softfork-dao-2
DAO soft-fork
Diffstat (limited to 'core/vm')
-rw-r--r-- | core/vm/environment.go | 3 | ||||
-rw-r--r-- | core/vm/jit_test.go | 9 | ||||
-rw-r--r-- | core/vm/runtime/env.go | 2 |
3 files changed, 10 insertions, 4 deletions
diff --git a/core/vm/environment.go b/core/vm/environment.go index 747627565..37817be9e 100644 --- a/core/vm/environment.go +++ b/core/vm/environment.go @@ -73,6 +73,8 @@ type Environment interface { DelegateCall(me ContractRef, addr common.Address, data []byte, gas, price *big.Int) ([]byte, error) // Create a new contract Create(me ContractRef, data []byte, gas, price, value *big.Int) ([]byte, common.Address, error) + // Mark the code hash that was executed + MarkCodeHash(hash common.Hash) } // Vm is the basic interface for an implementation of the EVM. @@ -96,6 +98,7 @@ type Database interface { GetCode(common.Address) []byte SetCode(common.Address, []byte) + GetCodeHash(common.Address) common.Hash AddRefund(*big.Int) GetRefund() *big.Int diff --git a/core/vm/jit_test.go b/core/vm/jit_test.go index 403c15a8d..a9ddd48a5 100644 --- a/core/vm/jit_test.go +++ b/core/vm/jit_test.go @@ -175,10 +175,11 @@ func NewEnv(noJit, forceJit bool) *Env { return env } -func (self *Env) RuleSet() RuleSet { return ruleSet{new(big.Int)} } -func (self *Env) Vm() Vm { return self.evm } -func (self *Env) Origin() common.Address { return common.Address{} } -func (self *Env) BlockNumber() *big.Int { return big.NewInt(0) } +func (self *Env) MarkCodeHash(common.Hash) {} +func (self *Env) RuleSet() RuleSet { return ruleSet{new(big.Int)} } +func (self *Env) Vm() Vm { return self.evm } +func (self *Env) Origin() common.Address { return common.Address{} } +func (self *Env) BlockNumber() *big.Int { return big.NewInt(0) } func (self *Env) AddStructLog(log StructLog) { } func (self *Env) StructLogs() []StructLog { diff --git a/core/vm/runtime/env.go b/core/vm/runtime/env.go index d8c98e545..94adb0287 100644 --- a/core/vm/runtime/env.go +++ b/core/vm/runtime/env.go @@ -79,6 +79,8 @@ func (self *Env) AddStructLog(log vm.StructLog) { self.logs = append(self.logs, log) } +func (self *Env) MarkCodeHash(hash common.Hash) {} + func (self *Env) RuleSet() vm.RuleSet { return self.ruleSet } func (self *Env) Vm() vm.Vm { return self.evm } func (self *Env) Origin() common.Address { return self.origin } |