Nicholas Ward
99fb730aea
rearranging and cleanup
2022-10-03 14:07:21 -07:00
Nicholas Ward
9ee861fb15
minor fixes
2022-10-03 13:43:03 -07:00
Nicholas Ward
1e03c438e0
moved memory functions to memory ASM file (not sha2)
2022-10-03 13:34:16 -07:00
Nicholas Ward
cad56263f4
fix
2022-10-03 13:34:16 -07:00
Nicholas Ward
e652ef922b
simplification and documentation
2022-10-03 13:34:16 -07:00
Nicholas Ward
0394fa3fba
cleaned up test
2022-10-03 13:34:16 -07:00
Nicholas Ward
67e19fd7c9
fix of message schedule
2022-10-03 13:34:16 -07:00
Nicholas Ward
42019264ad
compression
2022-10-03 13:34:16 -07:00
Nicholas Ward
79e4d80d5b
fmt
2022-10-03 13:34:16 -07:00
Nicholas Ward
b1b95e7b65
clippy
2022-10-03 13:34:16 -07:00
Nicholas Ward
4624ce515b
fmt
2022-10-03 13:34:16 -07:00
Nicholas Ward
faa1023bd4
fix
2022-10-03 13:34:16 -07:00
Nicholas Ward
d6f6fc7599
fixes
2022-10-03 13:34:16 -07:00
Nicholas Ward
e4521c481f
a great many fixes
2022-10-03 13:34:16 -07:00
Nicholas Ward
87e06946b9
first test, and fixes
2022-10-03 13:34:16 -07:00
Nicholas Ward
eb6095cd04
message schedule progress
2022-10-03 13:34:16 -07:00
Nicholas Ward
94e2e98430
fixes
2022-10-03 13:34:16 -07:00
Nicholas Ward
4378ff0fc2
progress
2022-10-03 13:34:16 -07:00
Daniel Lubarov
9f9143d6f6
Finish some misc storage logic
2022-10-02 11:14:19 -07:00
Daniel Lubarov
12247047ae
MPT hashing logic, part 1
2022-09-30 17:02:25 -07:00
Daniel Lubarov
c721155e23
Main function, txn processing loop
2022-09-29 23:15:33 -07:00
Daniel Lubarov
c7b03cfe9a
More MPT logic
2022-09-24 20:49:19 -07:00
Daniel Lubarov
37d92b55ac
Basic MPT logic
...
For now this contains most of the basic framework/structure. Logic for things like insertions will come later.
2022-09-22 11:25:37 -07:00
Jacqueline Nabaglo
4c52d37546
Save columns by verifying invalid opcodes in software ( #701 )
...
* Save columns by verifying invalid opcodes in software
* Autogenerate invalid opcode bitfield (Daniel comment)
* Remove unnecessary panic label
2022-08-30 13:06:03 -07:00
Daniel Lubarov
cc61c7211c
Core transaction processing logic
...
With lots of TODOs to fill in afterward; this is just a start.
2022-08-12 17:20:18 -07:00
Daniel Lubarov
ccc4202de3
Packing memory operations
2022-08-05 13:44:08 -04:00
Daniel Lubarov
7423124e36
Split up memory asm and add more helper functions
2022-08-03 22:18:29 -07:00
Daniel Lubarov
90be4749ef
Merge branch 'main' into optimizer
2022-08-03 09:58:54 -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
497b26dee6
Some simple optimization rules
...
Depends on #647 .
2022-07-31 13:00:27 -07:00
Daniel Lubarov
7a6d996fe7
Move couple asm files
2022-07-31 09:28:16 -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
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
87640d7e98
PR feedback
2022-07-28 10:35:53 +02:00
Jacqueline Nabaglo
c160c4032d
Inter-row program counter constraints ( #639 )
...
* Beginning of control flow support
* Fixes to halt spin loop
2022-07-27 11:36:33 -07:00
wborgeaud
8053215841
Inverse for other fields
2022-07-27 16:49:26 +02:00
Daniel Lubarov
0ba6078984
Merge branch 'main' into rlp_3
2022-07-25 19:47:43 -07:00
Daniel Lubarov
1db5b7374d
Move storage asm
2022-07-24 08:42:06 -07:00
Daniel Lubarov
544c84b420
Transaction (RLP) parsing
...
Will add tests once we have the interpreter support for other segmnets.
2022-07-23 21:39:01 -07:00
Daniel Lubarov
78fb34a9b6
Minor
2022-07-20 00:10:52 -07:00
Daniel Lubarov
80d32f89b6
fixes
2022-07-18 15:58:12 -07:00
Daniel Lubarov
50144a638f
Enable assertions, now working
2022-07-18 13:48:51 -07:00
Daniel Lubarov
71b9705a0d
Merge pull request #618 from mir-protocol/asm_assertions
...
More basic ASM macros
2022-07-18 09:31:34 -07:00
wborgeaud
a268677936
Merge branch 'main' into ecrecover_kernel
...
# Conflicts:
# evm/src/cpu/kernel/aggregator.rs
2022-07-18 14:01:10 +02:00
wborgeaud
fd991a4eef
Merge pull request #614 from mir-protocol/evm_interpreter_memory
...
Implement memory for the EVM interpreter
2022-07-18 13:52:39 +02:00
Daniel Lubarov
4aaceabd18
Include assertions, disabled for now
2022-07-17 16:08:58 -07:00
Daniel Lubarov
ab5abc391d
Organize segments in an enum
...
It's a bit more type-safe (can't mix up segment with context or virtual addr), and this way uniqueness of ordinals is enforced, partially addressing a concern raised in #591 .
To avoid making `Segment` public (which I don't think would be appropriate), I had to make some other visibility changes, and had to move `generate_random_memory_ops` into the test module.
2022-07-16 10:16:12 -07:00