aboutsummaryrefslogtreecommitdiffstats
path: root/core/vm
diff options
context:
space:
mode:
authorJeffrey Wilcke <jeffrey@ethereum.org>2017-05-13 03:35:45 +0800
committerJeffrey Wilcke <jeffrey@ethereum.org>2017-05-18 15:05:58 +0800
commita5f6a1cb7c5e5dde130391e9bed7625ef9ff36b5 (patch)
tree251d24c632d746ad32af6874fe115b1e86ae9b03 /core/vm
parente6aff513dbe04b105db1ae44501c1732a7ab7af3 (diff)
downloadgo-tangerine-a5f6a1cb7c5e5dde130391e9bed7625ef9ff36b5.tar
go-tangerine-a5f6a1cb7c5e5dde130391e9bed7625ef9ff36b5.tar.gz
go-tangerine-a5f6a1cb7c5e5dde130391e9bed7625ef9ff36b5.tar.bz2
go-tangerine-a5f6a1cb7c5e5dde130391e9bed7625ef9ff36b5.tar.lz
go-tangerine-a5f6a1cb7c5e5dde130391e9bed7625ef9ff36b5.tar.xz
go-tangerine-a5f6a1cb7c5e5dde130391e9bed7625ef9ff36b5.tar.zst
go-tangerine-a5f6a1cb7c5e5dde130391e9bed7625ef9ff36b5.zip
consensus, core, core/vm, parems: review fixes
Diffstat (limited to 'core/vm')
-rw-r--r--core/vm/interpreter.go12
-rw-r--r--core/vm/jump_table.go10
2 files changed, 13 insertions, 9 deletions
diff --git a/core/vm/interpreter.go b/core/vm/interpreter.go
index 07971f876..e54c72575 100644
--- a/core/vm/interpreter.go
+++ b/core/vm/interpreter.go
@@ -45,7 +45,7 @@ type Config struct {
DisableGasMetering bool
// Enable recording of SHA3/keccak preimages
EnablePreimageRecording bool
- // JumpTable contains the in instruction table. This
+ // JumpTable contains the EVM instruction table. This
// may me left uninitialised and will be set the default
// table.
JumpTable [256]operation
@@ -74,7 +74,7 @@ func NewInterpreter(evm *EVM, cfg Config) *Interpreter {
case evm.ChainConfig().IsHomestead(evm.BlockNumber):
cfg.JumpTable = homesteadInstructionSet
default:
- cfg.JumpTable = baseInstructionSet
+ cfg.JumpTable = frontierInstructionSet
}
}
@@ -131,14 +131,14 @@ func (in *Interpreter) Run(snapshot int, contract *Contract, input []byte) (ret
}
}()
- log.Debug("in running contract", "hash", codehash[:])
+ log.Debug("interpreter running contract", "hash", codehash[:])
tstart := time.Now()
- defer log.Debug("in finished running contract", "hash", codehash[:], "elapsed", time.Since(tstart))
+ defer log.Debug("interpreter finished running contract", "hash", codehash[:], "elapsed", time.Since(tstart))
// The Interpreter main run loop (contextual). This loop runs until either an
// explicit STOP, RETURN or SELFDESTRUCT is executed, an error occurred during
- // the execution of one of the operations or until the in.done is set by
- // the parent context.Context.
+ // the execution of one of the operations or until the done flag is set by the
+ // parent context.
for atomic.LoadInt32(&in.evm.abort) == 0 {
// Get the memory location of pc
op = contract.GetOp(pc)
diff --git a/core/vm/jump_table.go b/core/vm/jump_table.go
index c4a1430b2..a6d49166e 100644
--- a/core/vm/jump_table.go
+++ b/core/vm/jump_table.go
@@ -56,12 +56,14 @@ type operation struct {
}
var (
- baseInstructionSet = NewBaseInstructionSet()
+ frontierInstructionSet = NewFrontierInstructionSet()
homesteadInstructionSet = NewHomesteadInstructionSet()
)
+// NewHomesteadInstructionSet returns the frontier and homestead
+// instructions that can be executed during the homestead phase.
func NewHomesteadInstructionSet() [256]operation {
- instructionSet := NewBaseInstructionSet()
+ instructionSet := NewFrontierInstructionSet()
instructionSet[DELEGATECALL] = operation{
execute: opDelegateCall,
gasCost: gasDelegateCall,
@@ -72,7 +74,9 @@ func NewHomesteadInstructionSet() [256]operation {
return instructionSet
}
-func NewBaseInstructionSet() [256]operation {
+// NewFrontierInstructionSet returns the frontier instructions
+// that can be executed during the frontier phase.
+func NewFrontierInstructionSet() [256]operation {
return [256]operation{
STOP: {
execute: opStop,