aboutsummaryrefslogtreecommitdiffstats
path: root/internal/ethapi/tracer.go
Commit message (Collapse)AuthorAgeFilesLines
* cmd, core, eth/tracers: support fancier js tracing (#15516)Péter Szilágyi2017-12-211-364/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * cmd, core, eth/tracers: support fancier js tracing * eth, internal/web3ext: rework trace API, concurrency, chain tracing * eth/tracers: add three more JavaScript tracers * eth/tracers, vendor: swap ottovm to duktape for tracing * core, eth, internal: finalize call tracer and needed extras * eth, tests: prestate tracer, call test suite, rewinding * vendor: fix windows builds for tracer js engine * vendor: temporary duktape fix * eth/tracers: fix up 4byte and evmdis tracer * vendor: pull in latest duktape with my upstream fixes * eth: fix some review comments * eth: rename rewind to reexec to make it more obvious * core/vm: terminate tracing using defers
* internal/ethapi: avoid recreating JavaScript tracer wrappersPéter Szilágyi2017-11-241-43/+42
|
* internal/ethapi: fix js tracer to properly decode addresses (#15297)Pulyak Viktor2017-11-181-10/+10
| | | | | | * Add method getBalanceFromJs for work with address as bytes * expect []byte instead of common.Address in ethapi tracer
* cmd/evm, core/vm, internal/ethapi: Show error when exiting (#14985)Martin Holst Swende2017-08-231-1/+1
| | | | | | * cmd/evm, core/vm, internal/ethapi: Add 'err' to tracer interface CaptureEnd * cmd/evm: fix nullpointer when there is no error
* cmd/evm: add --prestate, --sender, --json flags for fuzzing (#14476)Martin Holst Swende2017-06-071-0/+7
|
* internal/ethapi: Add support for fetching information about the current call ↵Nick Johnson2017-04-111-22/+62
| | | | in JS traces
* core/vm: use uint64 instead of *big.Int in tracer (#3805)Yohann Leon2017-03-221-3/+3
|
* core/vm: improved EVM run loop & instruction calling (#3378)Jeffrey Wilcke2017-01-051-1/+1
| | | | | | | | | | | | | | | The run loop, which previously contained custom opcode executes have been removed and has been simplified to a few checks. Each operation consists of 4 elements: execution function, gas cost function, stack validation function and memory size function. The execution function implements the operation's runtime behaviour, the gas cost function implements the operation gas costs function and greatly depends on the memory and stack, the stack validation function validates the stack and makes sure that enough items can be popped off and pushed on and the memory size function calculates the memory required for the operation and returns it. This commit also allows the EVM to go unmetered. This is helpful for offline operations such as contract calls.
* core, core/vm: implemented a generic environment (#3348)Jeffrey Wilcke2016-12-061-3/+3
| | | | | | | | Environment is now a struct (not an interface). This reduces a lot of tech-debt throughout the codebase where a virtual machine environment had to be implemented in order to test or run it. The new environment is suitable to be used en the json tests, core consensus and light client.
* internal/debug, internal/ethapi, rpc, swarm/storage: Ran "go fmt"Kenji Siu2016-11-011-22/+22
|
* vm, ethapi: add `limit` option to traceTransactionYoichi Hirai2016-09-301-1/+2
| | | | | | | | | | | | that specifies the maximum number of elements in the `structLogs` output. This option is useful for debugging a transaction that involves a large number of repetition. For example, ``` debug.traceTransaction(tx, {disableStorage: true, limit: 2}) ``` shows at most the first two steps in the `structLogs`.
* internal/ethapi: Fix bug in opCodeWrapper usageNick Johnson2016-08-241-1/+3
|
* internal/ethapi: Improve tracer error reporting and serializationNick Johnson2016-08-241-9/+24
|
* core/vm, eth: Add support for javascript trace functionsNick Johnson2016-08-231-0/+300