| 484 | } |
| 485 | |
| 486 | func opExtCodeCopy(pc *uint64, evm *EVM, contract *Contract, memory *Memory, stack *Stack) ([]byte, error) { |
| 487 | var ( |
| 488 | addr = common.BigToAddress(stack.pop()) |
| 489 | memOffset = stack.pop() |
| 490 | codeOffset = stack.pop() |
| 491 | length = stack.pop() |
| 492 | ) |
| 493 | codeCopy := getDataBig(evm.StateDB.GetCode(addr), codeOffset, length) |
| 494 | memory.Set(memOffset.Uint64(), length.Uint64(), codeCopy) |
| 495 | |
| 496 | evm.interpreter.intPool.put(memOffset, codeOffset, length) |
| 497 | return nil, nil |
| 498 | } |
| 499 | |
| 500 | func opGasprice(pc *uint64, evm *EVM, contract *Contract, memory *Memory, stack *Stack) ([]byte, error) { |
| 501 | stack.push(evm.interpreter.intPool.get().Set(evm.GasPrice)) |