wborgeaud
a831fab8f8
Working secp add
2022-07-13 19:22:32 +02:00
wborgeaud
a68d8ff586
Avoid duplicate macros
2022-07-13 18:54:43 +02:00
wborgeaud
c8c3cc9a8f
Files shuffling
2022-07-13 18:48:25 +02:00
wborgeaud
b1bc48197c
Fix jumpdest check
2022-07-13 10:51:49 +02:00
Daniel Lubarov
ef3addea2c
Merge branch 'main' into evm_generation
2022-07-11 17:24:37 -07:00
Nicholas Ward
afc5a4dc4f
fixes
2022-07-11 10:44:48 -07:00
Nicholas Ward
6655ee68e4
restored timestamp column to CTL
2022-07-11 10:44:48 -07:00
Nicholas Ward
a98f267ff0
initial change
2022-07-11 10:44:48 -07:00
Daniel Lubarov
8a2a035411
Merge branch 'main' into evm_generation
2022-07-11 09:58:38 -07:00
Daniel Lubarov
58889e7649
Allow constants to be passed from Rust into our assembly ( #598 )
...
Roughly like environment variables. So we don't have to declare things like segment IDs twice.
2022-07-08 08:56:46 -07:00
wborgeaud
12ca084620
PR feedback
2022-07-08 09:58:52 +02:00
wborgeaud
a280e1c60a
Merge branch 'ec_use_macro_params' into evm_interpreter
2022-07-07 19:28:22 +02:00
wborgeaud
a3c2e9a295
More macros
2022-07-07 19:28:11 +02:00
wborgeaud
122188c817
Merge branch 'ec_use_macro_params' into evm_interpreter
2022-07-07 19:17:31 +02:00
wborgeaud
4316be96cd
Test exp kernel function
2022-07-07 19:15:39 +02:00
wborgeaud
7bf5118f69
Test exp kernel function
2022-07-07 18:46:20 +02:00
wborgeaud
f8987b7e80
Minor
2022-07-07 18:27:15 +02:00
wborgeaud
9c4947e0f0
EC ops test
2022-07-07 18:06:24 +02:00
Daniel Lubarov
beb8a90773
Macros with arguments ( #595 )
...
* Macros with arguments
See `basic_macros.rs` for an example.
* rename
2022-07-07 08:59:53 -07:00
wborgeaud
3ec2d307e5
EVM interpreter
2022-07-07 16:53:06 +02:00
wborgeaud
434615a03c
PR feedback + comments
2022-07-07 08:26:57 +02:00
wborgeaud
e2b1e51280
Minor
2022-07-06 09:40:11 +02:00
wborgeaud
9747343ac2
PR feedback
2022-07-06 09:25:41 +02:00
wborgeaud
5bae732ea0
Minor
2022-07-05 21:24:51 +02:00
wborgeaud
8ffd25c127
Add zero case for mul
2022-07-05 21:22:05 +02:00
wborgeaud
fb8a67b0d9
Working ecmul
2022-07-05 21:12:11 +02:00
wborgeaud
006b74f4dc
Merge branch 'main' into elliptic_curve_asm
2022-07-05 20:29:21 +02:00
wborgeaud
9e90d7d115
Add check for zero point
2022-07-05 20:27:55 +02:00
wborgeaud
fd1d9fe85e
Add range check
2022-07-05 17:37:34 +02:00
wborgeaud
8e711d413a
Minor
2022-07-05 16:41:28 +02:00
wborgeaud
ee80fa4a39
Minor
2022-07-05 16:19:23 +02:00
wborgeaud
8873eaba11
Find labels before assembly
2022-07-05 16:11:55 +02:00
wborgeaud
7364248e60
Fixes
2022-07-05 15:43:41 +02:00
wborgeaud
eed7cde388
Add moddiv for testing
2022-07-05 15:01:40 +02:00
wborgeaud
8a44c557c5
Curve mul assembly
2022-07-05 12:11:35 +02:00
wborgeaud
4d37685744
Comment
2022-07-05 11:12:56 +02:00
wborgeaud
a5988d6c26
Simplify
2022-07-05 11:09:25 +02:00
wborgeaud
4cdbb8c1a9
Minor
2022-07-05 10:47:29 +02:00
wborgeaud
6db8539bc8
Minor
2022-07-05 10:46:07 +02:00
wborgeaud
683efc0d74
Impl double
2022-07-05 10:45:26 +02:00
wborgeaud
92bb8d5fa9
Merge branch 'main' into elliptic_curve_asm
...
# Conflicts:
# evm/src/cpu/kernel/ast.rs
2022-07-05 09:03:19 +02:00
Daniel Lubarov
5d74a19ad6
Add test (won't work for a while, but to illustrate)
2022-07-04 18:10:03 -07:00
Daniel Lubarov
28603b85d1
fixes
2022-07-01 10:09:57 -07:00
Daniel Lubarov
e7b480deaf
Begin work on witness generation and kernel bootstrapping
2022-07-01 10:09:57 -07:00
Daniel Lubarov
f6d48f1328
Serialize zero as [0] rather than [] in bytecode ( #592 )
2022-07-01 09:29:56 -07:00
wborgeaud
797bece7bd
First attempt
2022-07-01 18:28:22 +02:00
Jacqueline Nabaglo
bc9e618967
Structured wrapper over CPU table row ( #589 )
...
* Structured wrapper over CPU table row
* Lints
* minor style
* Minor cleanup
2022-06-29 16:23:44 -07:00
Jacqueline Nabaglo
e3834a5335
Util for assembling EVM code to hex ( #586 )
...
This is just for debugging the kernel. It's fully disposable.
2022-06-27 18:08:03 -07:00
Daniel Lubarov
34e73db42b
Memory naming tweaks ( #579 )
...
* Memory naming tweaks
- Define the channel count and value limbs in a single place, so they're easy to adjust.
- Standardize on "channels" which I think is more explicit, since e.g. `num_mem_ops` used to mean either the channel count or total operation count in a trace.
* feedback
* tweaks
* fmt
2022-06-27 16:03:56 -07:00
Daniel Lubarov
e73d01a037
packed_field -> packed (#584 )
...
* `packed_field` -> `packed`
For cleaner imports; "field" is usually clear from context
* fix
2022-06-27 15:07:52 -07:00