Liam Lai
771c2f34f3
enable 0x prefix for devnet code rpcs
2024-03-08 15:52:50 +11:00
Daniel Liu
6c80c09cb8
Merge pull request #480 from gzliudan/lru
...
common/lru: add generic LRU implementation
2024-03-07 23:04:25 +08:00
Daniel Liu
6a2f753cee
Merge pull request #472 from XinFinOrg/eip3855
...
core/vm: implement EIP-3855: PUSH0 instruction.
2024-03-07 23:01:33 +08:00
geruiwang
863d4f14e3
eth/tracers/js: fix isPush for push0 ( #28520 )
...
Fixes so that `push0` opcode is correctly reported as `true` by the `IsPush` function
---------
Co-authored-by: Martin Holst Swende <martin@swende.se>
2024-03-07 22:31:19 +08:00
geruiwang
968440ce3d
core/vm: implement EIP-3855: PUSH0 instruction.
2024-03-07 21:44:37 +08:00
Wang Gerui
0e36b5be42
fix typo in EIPs
2024-03-07 21:37:33 +08:00
Daniel Liu
6ba7c26703
common/lru: add generic LRU implementation ( #26162 )
2024-03-07 20:59:16 +08:00
Wanwiset Peerapatanapokin
ae10d7090c
Rollback privacy ( #477 )
...
Rollback the previous test removal or privacy package on devnet.
This reverts commit 4f79e535b37dc85144e2d38c2f2570b0ce4305b2.
This reverts commit 5a2722c268ec4f03f3117b1af2dee2411af4b13a.
2024-03-07 10:40:55 +04:00
Daniel Liu
476bda6515
Merge pull request #479 from gzliudan/get-account-info
...
add method `eth_getAccountInfo`
2024-03-06 21:00:27 +08:00
Daniel Liu
ece58f00b5
ethapi: add method eth_getAccountInfo
2024-03-06 14:11:15 +08:00
Daniel Liu
bbe08ac6e6
core/state: add function GetStorageRoot
2024-03-06 14:10:08 +08:00
Daniel Liu
5223454dee
Merge pull request #469 from gzliudan/http-server-timeout
...
add http.TimeoutHandler for rpc http server
2024-03-04 19:07:37 +08:00
Liam
753729c28c
Disable xdcx related tx creation ( #430 )
...
* stop create xdcx tx
* refactor disable flag
* disable miner only
2024-03-04 22:06:47 +11:00
Banana-J
07d40a0038
fix: add lock for haserror variable in timeout.go ( #443 )
...
Co-authored-by: wjrjerome <wjrjerome@babylonchain.io>
2024-03-04 22:05:19 +11:00
Daniel Liu
7bd39e6bf9
rpc: add http.TimeoutHandler for http server
2024-03-04 16:33:56 +08:00
Liam
38a192e672
Merge pull request #459 from XinFinOrg/eip4399
...
implement EIP-4399, PREVRANDAO opcode
2024-03-04 17:50:56 +11:00
Liam
46ef5e10ad
add testnet and mainnet node for latest code testing ( #467 )
2024-03-04 17:13:50 +11:00
Wanwiset Peerapatanapokin
b86c7f646f
Try remove privacy pkg ( #466 )
...
* try removing privacy pkg
* rm more reference
* trigger CI
2024-03-04 07:59:45 +04:00
Gerui Wang
72e5ee0645
lint for params/config.go
2024-03-04 00:34:49 +08:00
Gerui Wang
a31489541d
implement EIP-4399, PREVRANDAO opcode.
...
and remove unused LondonBlock and BerlinBlock in `params/config.go` (already defined in constants.go)
2024-03-04 00:32:14 +08:00
Banana-J
e324d7d18f
fix: race condition of x.signer in v1 consensus ( #445 )
...
Co-authored-by: wjrjerome <wjrjerome@babylonchain.io>
2024-03-03 22:27:01 +11:00
Liam
317dc4cdf6
remove all CI warning by upgrade to nodejs 20 image ( #461 )
...
* upgrade to nodejs 20
* disable travis ci
2024-03-03 16:20:38 +11:00
Liam
cf221952c5
Use github action ( #460 )
2024-03-03 15:41:00 +11:00
Daniel Liu
3e74a2f0a5
Merge pull request #458 from gzliudan/eip3198
...
implement EIP-3198 and opcode BASEFEE
2024-03-02 16:58:48 +08:00
Daniel Liu
928a0691ca
implement EIP-3198
2024-03-01 15:04:32 +08:00
Daniel Liu
df2384eb9a
Merge pull request #452 from gzliudan/new-vm
...
preparation for solidity v0.8.23 upgrade
2024-03-01 15:00:45 +08:00
lmittmann
b36678f7ad
core/vm: performance tweak of OpCode.String() ( #28453 )
...
make `opCodeToString` a `[256]string` array
Co-authored-by: lmittmann <lmittmann@users.noreply.github.com>
2024-03-01 14:13:24 +08:00
Leon
8b6db6d87a
core/vm: better handle error on eip activation check ( #25131 )
...
* core/vm: correct logic for eip check of NewEVMInterpreter
* refactor
2024-03-01 14:13:24 +08:00
Qian Bin
032b98e942
core/vm: optimize Memory.Set32 ( #24847 )
...
* core/vm: remove unnecessary memset for Memory.Set32
* core/vm: optimize Memory.Set32
2024-03-01 14:13:24 +08:00
s7v7nislands
62b62da730
core/vm: separate opcode group for 0x20 range ( #24850 )
2024-03-01 14:13:24 +08:00
s7v7nislands
ac35f0ecec
core/vm: clean up some dead functions ( #24851 )
2024-03-01 14:13:24 +08:00
Andrei Maiboroda
b022ba2c5d
core/vm: make INVALID a defined opcode ( #24017 )
...
* core/vm: Define 0xfe opcode as INVALID
* core/vm: Remove opInvalid as opUndefined handles it
Co-authored-by: Alex Beregszaszi <alex@rtfs.hu>
2024-03-01 14:13:24 +08:00
Paweł Bylica
6e92486296
core/vm: reverse bit order in bytes of code bitmap ( #24120 )
...
* core/vm: reverse bit order in bytes of code bitmap
This bit order is more natural for bit manipulation operations and we
can eliminate some small number of CPU instructions.
* core/vm: drop lookup table
2024-03-01 14:13:24 +08:00
Alex Beregszaszi
2ce30010bc
core/vm: remove unused code (IsStaticJump) ( #24085 )
2024-03-01 14:13:24 +08:00
Martin Holst Swende
fbc1cc11ba
core/vm: remove no-recursion option from config (24066)
2024-03-01 14:13:24 +08:00
Andrei Maiboroda
4c27910a77
core/vm: move interpreter interruption check to jump instructions ( #24026 )
...
* core/vm: Remove interpreter loop interruption check
* core/vm: Unit test for interpreter loop interruption
* core/vm: Check for interpreter loop abort on every jump
2024-03-01 14:13:24 +08:00
Paweł Bylica
7d3c783bb9
core/vm: fill gaps in jump table with opUndefined ( #24031 )
2024-03-01 14:13:24 +08:00
Alex Beregszaszi
ae267d3da7
core/vm: remove stack.pushN ( #24040 )
2024-03-01 14:13:24 +08:00
Alex Beregszaszi
b1c03864e6
core/vm: rename opSuicide to opSelfdestruct ( #24022 )
...
The opcode was renamed in the codebase in 2017, but the functions were kept unchanged.
2024-03-01 14:13:24 +08:00
Alex Beregszaszi
bfbb678309
core/vm: move interpreter.ReadOnly check into the opcode implementations ( #23970 )
...
* core/vm: Move interpreter.ReadOnly check into the opcode implementations
Also remove the same check from the interpreter inner loop.
* core/vm: Remove obsolete operation.writes flag
* core/vm: Capture fault states in logger
Co-authored-by: Martin Holst Swende <martin@swende.se>
* core/vm: Remove panic added for testing
Co-authored-by: Martin Holst Swende <martin@swende.se>
2024-03-01 14:13:24 +08:00
Andrei Maiboroda
002be52ae9
core/vm: don't copy JumpTable when no EIP mods are needed ( #23977 )
2024-03-01 14:13:24 +08:00
Alex Beregszaszi
c097e565fd
core/vm: rename SHA3 instruction to KECCAK256 ( #23976 )
...
This was proposed in 2016, Solidity uses this since 2017, and evmone and other VMs use the keccak256 name. This brings geth in line with those.
2024-03-01 14:13:24 +08:00
Paweł Bylica
823ec33484
core/vm: simplify error handling in interpreter loop ( #23952 )
...
* core/vm: break loop on any error
* core/vm: move ErrExecutionReverted to opRevert()
* core/vm: use "stop token" to stop the loop
* core/vm: unconditionally pc++ in the loop
* core/vm: set return data in instruction impls
2024-03-01 14:13:24 +08:00
Andrei Maiboroda
6415934da9
core/vm: simplify op lookup in contract ( #23974 )
2024-03-01 14:13:23 +08:00
Martin Holst Swende
f7c6b1abd4
core/vm, core/state/snapshot: remove unused code ( #23956 )
...
* core/state/snapshot: remove wiper functionality
* core/vm: remove unused 'unofficial' opcodes
2024-03-01 14:13:23 +08:00
Paweł Bylica
3d3cc6c6d7
core/vm: use proper JumpTable type ( #23967 )
2024-03-01 14:13:23 +08:00
Martin Holst Swende
f9e14af6fd
core/vm: don't use iota for opcode definitions ( #23928 )
2024-03-01 14:13:23 +08:00
Paweł Bylica
dc8cdf3e62
core/vm: rework jumpdest analysis benchmarks ( #23499 )
...
* core/vm: rework jumpdest analysis benchmarks
For BenchmarkJumpdestOpAnalysis use fixed code size of ~1.2MB
and classic benchmark loop.
* core/vm: clear bitvec in jumpdest analysis benchmark
2024-03-01 14:13:23 +08:00
Guillaume Ballet
f05fa009e2
core/vm: fix typo in comment ( #23450 )
2024-03-01 14:13:23 +08:00
Daniel Liu
7a55b9f788
core/state: remove unused methods ReturnGas ( #23092 )
2024-03-01 14:13:23 +08:00