aboutsummaryrefslogtreecommitdiffstats
path: root/core/vm/evm.go
diff options
context:
space:
mode:
authorWei-Ning Huang <w@cobinhood.com>2018-10-02 13:25:24 +0800
committerWei-Ning Huang <w@byzantine-lab.io>2019-06-12 17:23:38 +0800
commit0ebc9f001e87e764ac1013471365dcebf841bea0 (patch)
tree433c03eed16ef3794bd09122bd9e2bf385cab052 /core/vm/evm.go
parent593c5d4c9efa80916cc4819797bfc42348a43502 (diff)
downloadgo-tangerine-0ebc9f001e87e764ac1013471365dcebf841bea0.tar
go-tangerine-0ebc9f001e87e764ac1013471365dcebf841bea0.tar.gz
go-tangerine-0ebc9f001e87e764ac1013471365dcebf841bea0.tar.bz2
go-tangerine-0ebc9f001e87e764ac1013471365dcebf841bea0.tar.lz
go-tangerine-0ebc9f001e87e764ac1013471365dcebf841bea0.tar.xz
go-tangerine-0ebc9f001e87e764ac1013471365dcebf841bea0.tar.zst
go-tangerine-0ebc9f001e87e764ac1013471365dcebf841bea0.zip
core: vm: add governance contract skeleton
Diffstat (limited to 'core/vm/evm.go')
-rw-r--r--core/vm/evm.go3
1 files changed, 3 insertions, 0 deletions
diff --git a/core/vm/evm.go b/core/vm/evm.go
index 31902621b..fcab628e1 100644
--- a/core/vm/evm.go
+++ b/core/vm/evm.go
@@ -43,6 +43,9 @@ type (
// run runs the given contract and takes care of running precompiles with a fallback to the byte code interpreter.
func run(evm *EVM, contract *Contract, input []byte, readOnly bool) ([]byte, error) {
if contract.CodeAddr != nil {
+ if *contract.CodeAddr == GovernanceContractAddress {
+ return RunGovernanceContract(evm, input, contract)
+ }
precompiles := PrecompiledContractsHomestead
if evm.ChainConfig().IsByzantium(evm.BlockNumber) {
precompiles = PrecompiledContractsByzantium