Daniel Lubarov
f951345556
Update evm/src/cpu/kernel/global_metadata.rs
...
Co-authored-by: Jacqueline Nabaglo <jakub@mirprotocol.org>
2022-08-02 09:09:48 -07:00
Daniel Lubarov
74fc3b4cfc
Merge pull request #650 from mir-protocol/type_0_test
...
Test for parsing type 0 transactions
2022-08-02 09:08:46 -07:00
Daniel Lubarov
215be25cf8
Feedback
2022-08-02 09:08:24 -07:00
Daniel Lubarov
be0a5269ab
UserspaceProgramCounter
2022-08-01 21:21:35 -07:00
Daniel Lubarov
3f08cca116
More constants for kernel ASM
...
- `GlobalMetadata` - offsets for global kernel variables in memory
- `ContextMetadata` - offsets for context-specific kernel variables in memory
- `GAS_CONSTANTS`, based on the yellowpaper
Also move constants to a separate module since `aggregator` was getting long.
2022-08-01 18:18:22 -07:00
Daniel Lubarov
b34ace4c90
More succinct deadbeef
2022-08-01 17:40:16 -07:00
Daniel Lubarov
94c9b1b09c
Misc
2022-08-01 11:20:56 -07:00
Daniel Lubarov
b737aeaf03
Tweak py-evm code
2022-08-01 11:13:33 -07:00
Daniel Lubarov
3618793706
Test for parsing type 0 transactions
...
I made a couple related changes to `Interpreter`:
- Only enforce the `JUMPDEST` rule if we're in kernel mode.
- Convenience methods for dealing with the RLP and txn field segments of memory.
2022-08-01 11:03:05 -07:00
Daniel Lubarov
4fc7f3cd6e
Merge pull request #649 from mir-protocol/rlp_tests
...
RLP decoding tests
2022-08-01 09:54:42 -07:00
Daniel Lubarov
98c4a372fb
More binops
2022-08-01 09:22:01 -07:00
Daniel Lubarov
d1c9e150b3
remove_swaps_commutative
2022-08-01 09:02:39 -07:00
Daniel Lubarov
63c8568b17
remove_ignored_values
2022-08-01 08:47:07 -07:00
Daniel Lubarov
3cf69a4e3e
Merge pull request #647 from mir-protocol/change_literal_types
...
Store literals as `U256` (or `u8` for `BYTES`)
2022-08-01 08:26:14 -07:00
Daniel Lubarov
8db1ff53d1
Merge pull request #646 from mir-protocol/stack_labels
...
Allow `%stack` to work with labels
2022-08-01 08:25:50 -07:00
Daniel Lubarov
94183f723c
fixes
2022-07-31 20:43:58 -07:00
Daniel Lubarov
61a9839f2f
Feedback
2022-07-31 20:37:05 -07:00
Daniel Lubarov
d6b5193c9b
RLP decoding tests
2022-07-31 20:29:57 -07:00
Daniel Lubarov
d639d0b311
clippy
2022-07-31 15:55:02 -07:00
Daniel Lubarov
2b9600e50c
Misc
2022-07-31 13:22:17 -07:00
Daniel Lubarov
a34a4c8184
fix
2022-07-31 13:03:07 -07:00
Daniel Lubarov
497b26dee6
Some simple optimization rules
...
Depends on #647 .
2022-07-31 13:00:27 -07:00
Daniel Lubarov
7e91720088
Store literals as U256 (or u8 for BYTES)
...
Instead of the original strings. Will make optimizations simpler.
2022-07-31 12:12:35 -07:00
Daniel Lubarov
bd6847e8fc
Allow %stack to work with labels
...
There's no syntax to distinguish named stack items from labels, so this simply searches the former first. I.e. labels can be shadowed by stack items.
2022-07-31 12:12:17 -07:00
Daniel Lubarov
7a6d996fe7
Move couple asm files
2022-07-31 09:28:16 -07:00
Daniel Lubarov
d91e1bf3d7
Merge pull request #645 from mir-protocol/curve_dir
...
Add a `asm/curve/` directory
2022-07-31 09:24:42 -07:00
Daniel Lubarov
718b3c0961
Move ecrecover
2022-07-31 09:24:04 -07:00
Daniel Lubarov
56d814e467
fix
2022-07-31 09:22:13 -07:00
Daniel Lubarov
f49170a8b8
fix
2022-07-30 22:31:07 -07:00
Daniel Lubarov
86a797b1db
Add a asm/curve/ directory
2022-07-30 22:24:11 -07:00
wborgeaud
d2141581de
Merge pull request #643 from mir-protocol/interpreter_remove_stack_code
...
Remove stack and code in interpreter
2022-07-30 14:44:17 +02:00
Jacqueline Nabaglo
24bb632358
Implement PANIC instruction ( #644 )
...
* Implement PANIC instruction
* Minor: comments
2022-07-29 12:04:42 -07:00
Daniel Lubarov
760a111a63
Merge pull request #642 from mir-protocol/type_0_fix
...
Small fix for type 0 txns
2022-07-29 09:28:20 -07:00
wborgeaud
209dc26dc9
Remove stack and code in interpreter
2022-07-29 14:29:10 +02:00
wborgeaud
2bae8f92f0
Merge pull request #635 from mir-protocol/nondeterministic_ec_ops
...
Use non-determinism in EC ops
2022-07-29 13:05:12 +02:00
wborgeaud
eb96216278
Typo
2022-07-29 11:32:55 +02:00
Jacqueline Nabaglo
16c2bee4b9
Increment program counter on native instructions ( #641 )
2022-07-28 17:30:20 -07:00
Daniel Lubarov
563de9e1c5
Small fix for type 0 txns
...
Always parse "to" as a scalar. No need for a branch; it's left over from when I was trying to enforce canonical RLP (in which case "to" must be 0 or 20 bytes).
The old code would be wrong if we had multiple txns per proof, as if to=0 we wouldn't write that field to memory, so it could have an old value from a previous txn.
2022-07-28 15:51:33 -07:00
Daniel Lubarov
55d0eddecb
profiling
2022-07-28 14:46:56 -07:00
Daniel Lubarov
431bb5e66e
Merge pull request #621 from mir-protocol/cpu_shared_cols
...
Shared CPU columns
2022-07-28 14:10:34 -07:00
Daniel Lubarov
cc9e9fe753
Merge branch 'main' into cpu_shared_cols
2022-07-28 13:42:12 -07:00
Daniel Lubarov
b2f09881c0
Merge branch 'main' into cpu_shared_cols
2022-07-28 13:41:46 -07:00
Daniel Lubarov
bb45c8c850
Merge pull request #629 from proxima-one/maybe-rayon
...
add rayon shim
2022-07-28 11:38:56 -07:00
wborgeaud
87640d7e98
PR feedback
2022-07-28 10:35:53 +02:00
Sebastien La Duca
8ad0924bbb
apparently i need to update rust
2022-07-28 00:24:54 -04:00
Sebastien La Duca
fd0af3fa3e
allow unused mut when feature disabled
2022-07-28 00:21:21 -04:00
Sebastien La Duca
9f2fa07e12
add rest of files
2022-07-28 00:09:11 -04:00
Sebastien La Duca
b7fa5e81c4
add timing to starky, evm, and system_zero
2022-07-28 00:08:51 -04:00
Sebastien La Duca
85111b0f02
fix missing underscore
2022-07-27 23:58:16 -04:00
Sebastien La Duca
a6931d4555
fmt
2022-07-27 23:53:33 -04:00