-
Notifications
You must be signed in to change notification settings - Fork 51
/
Copy pathbytes-length.zkasm
39 lines (30 loc) · 1.04 KB
/
bytes-length.zkasm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
VAR GLOBAL continueExecution
CONSTL %errorCode = 0x55AA55AA55AA55AA55AA55AA55AA55AAn
start:
1 => D
0x01 => A :CALL(checkNonLeadingZeros)
A :ASSERT
2 => D
zkPC+2 :MSTORE(continueExecution)
0x01 => A :CALL(checkNonLeadingZeros)
%errorCode :ASSERT
0 => A
1 => D
0xFF => A :CALL(checkNonLeadingZeros)
A :ASSERT
32 => D
zkPC+2 :MSTORE(continueExecution)
0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFn => A :CALL(checkNonLeadingZeros)
%errorCode :ASSERT
0 => A
32 => D
0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFn => A :CALL(checkNonLeadingZeros)
A :ASSERT
endExecution:
0 => A,B,C,D,E,CTX, SP, PC, GAS, SR, HASHPOS, RR
:JMP(finalizeExecution)
INCLUDE "../main/main.zkasm"
invalidTxRLP:
%errorCode => A
$ => RR :MLOAD(continueExecution)
:RETURN