@aztec/simulator 0.37.0 → 0.39.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dest/acvm/acvm.d.ts +1 -1
- package/dest/acvm/acvm.d.ts.map +1 -1
- package/dest/acvm/acvm.js +2 -2
- package/dest/acvm/oracle/oracle.d.ts +6 -5
- package/dest/acvm/oracle/oracle.d.ts.map +1 -1
- package/dest/acvm/oracle/oracle.js +26 -30
- package/dest/acvm/oracle/typed_oracle.d.ts +5 -5
- package/dest/acvm/oracle/typed_oracle.d.ts.map +1 -1
- package/dest/acvm/oracle/typed_oracle.js +9 -9
- package/dest/avm/avm_execution_environment.d.ts +4 -3
- package/dest/avm/avm_execution_environment.d.ts.map +1 -1
- package/dest/avm/avm_execution_environment.js +17 -11
- package/dest/avm/avm_gas.d.ts.map +1 -1
- package/dest/avm/avm_gas.js +4 -1
- package/dest/avm/avm_machine_state.d.ts +5 -8
- package/dest/avm/avm_machine_state.d.ts.map +1 -1
- package/dest/avm/avm_machine_state.js +10 -22
- package/dest/avm/avm_memory_types.d.ts +1 -1
- package/dest/avm/avm_memory_types.d.ts.map +1 -1
- package/dest/avm/avm_message_call_result.d.ts +5 -8
- package/dest/avm/avm_message_call_result.d.ts.map +1 -1
- package/dest/avm/avm_message_call_result.js +1 -4
- package/dest/avm/avm_simulator.d.ts.map +1 -1
- package/dest/avm/avm_simulator.js +19 -13
- package/dest/avm/errors.d.ts +43 -2
- package/dest/avm/errors.d.ts.map +1 -1
- package/dest/avm/errors.js +86 -4
- package/dest/avm/journal/journal.d.ts +20 -1
- package/dest/avm/journal/journal.d.ts.map +1 -1
- package/dest/avm/journal/journal.js +70 -9
- package/dest/avm/journal/nullifiers.d.ts +3 -1
- package/dest/avm/journal/nullifiers.d.ts.map +1 -1
- package/dest/avm/journal/nullifiers.js +14 -6
- package/dest/avm/journal/public_storage.d.ts +10 -1
- package/dest/avm/journal/public_storage.d.ts.map +1 -1
- package/dest/avm/journal/public_storage.js +17 -2
- package/dest/avm/journal/trace.d.ts +1 -4
- package/dest/avm/journal/trace.d.ts.map +1 -1
- package/dest/avm/journal/trace.js +4 -5
- package/dest/avm/journal/trace_types.d.ts +1 -0
- package/dest/avm/journal/trace_types.d.ts.map +1 -1
- package/dest/avm/journal/trace_types.js +1 -1
- package/dest/avm/opcodes/bitwise.d.ts +4 -1
- package/dest/avm/opcodes/bitwise.d.ts.map +1 -1
- package/dest/avm/opcodes/bitwise.js +14 -2
- package/dest/avm/opcodes/conversion.d.ts +16 -0
- package/dest/avm/opcodes/conversion.d.ts.map +1 -0
- package/dest/avm/opcodes/conversion.js +48 -0
- package/dest/avm/opcodes/environment_getters.d.ts +16 -12
- package/dest/avm/opcodes/environment_getters.d.ts.map +1 -1
- package/dest/avm/opcodes/environment_getters.js +19 -48
- package/dest/avm/opcodes/external_calls.d.ts.map +1 -1
- package/dest/avm/opcodes/external_calls.js +24 -13
- package/dest/avm/serialization/bytecode_serialization.d.ts.map +1 -1
- package/dest/avm/serialization/bytecode_serialization.js +6 -2
- package/dest/avm/serialization/instruction_serialization.d.ts +40 -38
- package/dest/avm/serialization/instruction_serialization.d.ts.map +1 -1
- package/dest/avm/serialization/instruction_serialization.js +42 -39
- package/dest/client/client_execution_context.d.ts +59 -19
- package/dest/client/client_execution_context.d.ts.map +1 -1
- package/dest/client/client_execution_context.js +97 -45
- package/dest/client/db_oracle.d.ts +4 -11
- package/dest/client/db_oracle.d.ts.map +1 -1
- package/dest/client/execution_result.d.ts +22 -15
- package/dest/client/execution_result.d.ts.map +1 -1
- package/dest/client/execution_result.js +59 -13
- package/dest/client/logs_cache.d.ts +33 -0
- package/dest/client/logs_cache.d.ts.map +1 -0
- package/dest/client/logs_cache.js +59 -0
- package/dest/client/private_execution.d.ts +2 -2
- package/dest/client/private_execution.d.ts.map +1 -1
- package/dest/client/private_execution.js +5 -7
- package/dest/client/simulator.d.ts +4 -34
- package/dest/client/simulator.d.ts.map +1 -1
- package/dest/client/simulator.js +5 -43
- package/dest/client/unconstrained_execution.d.ts +2 -2
- package/dest/client/unconstrained_execution.d.ts.map +1 -1
- package/dest/client/unconstrained_execution.js +1 -1
- package/dest/client/view_data_oracle.d.ts +0 -7
- package/dest/client/view_data_oracle.d.ts.map +1 -1
- package/dest/client/view_data_oracle.js +1 -10
- package/dest/common/errors.d.ts +5 -0
- package/dest/common/errors.d.ts.map +1 -1
- package/dest/common/errors.js +6 -1
- package/dest/index.d.ts +1 -0
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +2 -1
- package/dest/mocks/fixtures.d.ts.map +1 -1
- package/dest/mocks/fixtures.js +3 -1
- package/dest/public/abstract_phase_manager.d.ts +10 -4
- package/dest/public/abstract_phase_manager.d.ts.map +1 -1
- package/dest/public/abstract_phase_manager.js +50 -19
- package/dest/public/app_logic_phase_manager.d.ts +1 -0
- package/dest/public/app_logic_phase_manager.d.ts.map +1 -1
- package/dest/public/app_logic_phase_manager.js +3 -3
- package/dest/public/execution.d.ts +9 -0
- package/dest/public/execution.d.ts.map +1 -1
- package/dest/public/execution.js +1 -1
- package/dest/public/executor.d.ts +2 -2
- package/dest/public/executor.d.ts.map +1 -1
- package/dest/public/executor.js +34 -17
- package/dest/public/hints_builder.d.ts +3 -3
- package/dest/public/hints_builder.d.ts.map +1 -1
- package/dest/public/hints_builder.js +3 -3
- package/dest/public/public_execution_context.d.ts +10 -4
- package/dest/public/public_execution_context.d.ts.map +1 -1
- package/dest/public/public_execution_context.js +19 -6
- package/dest/public/public_processor.d.ts.map +1 -1
- package/dest/public/public_processor.js +5 -3
- package/dest/public/setup_phase_manager.d.ts +1 -0
- package/dest/public/setup_phase_manager.d.ts.map +1 -1
- package/dest/public/setup_phase_manager.js +3 -2
- package/dest/public/tail_phase_manager.d.ts +1 -1
- package/dest/public/tail_phase_manager.d.ts.map +1 -1
- package/dest/public/tail_phase_manager.js +4 -26
- package/dest/public/teardown_phase_manager.d.ts +1 -0
- package/dest/public/teardown_phase_manager.d.ts.map +1 -1
- package/dest/public/teardown_phase_manager.js +3 -2
- package/dest/public/transitional_adaptors.d.ts +4 -17
- package/dest/public/transitional_adaptors.d.ts.map +1 -1
- package/dest/public/transitional_adaptors.js +27 -119
- package/dest/rollup/index.d.ts +2 -0
- package/dest/rollup/index.d.ts.map +1 -0
- package/dest/rollup/index.js +2 -0
- package/dest/rollup/rollup.d.ts +77 -0
- package/dest/rollup/rollup.d.ts.map +1 -0
- package/dest/rollup/rollup.js +78 -0
- package/dest/stats/index.d.ts +2 -0
- package/dest/stats/index.d.ts.map +1 -0
- package/dest/stats/index.js +2 -0
- package/dest/stats/stats.d.ts +4 -0
- package/dest/stats/stats.d.ts.map +1 -0
- package/dest/stats/stats.js +11 -0
- package/package.json +8 -8
- package/src/acvm/acvm.ts +2 -2
- package/src/acvm/oracle/oracle.ts +62 -36
- package/src/acvm/oracle/typed_oracle.ts +19 -11
- package/src/avm/avm_execution_environment.ts +34 -42
- package/src/avm/avm_gas.ts +3 -0
- package/src/avm/avm_machine_state.ts +14 -25
- package/src/avm/avm_memory_types.ts +1 -1
- package/src/avm/avm_message_call_result.ts +3 -14
- package/src/avm/avm_simulator.ts +24 -12
- package/src/avm/errors.ts +94 -4
- package/src/avm/journal/journal.ts +134 -9
- package/src/avm/journal/nullifiers.ts +19 -8
- package/src/avm/journal/public_storage.ts +23 -2
- package/src/avm/journal/trace.ts +3 -4
- package/src/avm/journal/trace_types.ts +1 -0
- package/src/avm/opcodes/bitwise.ts +18 -7
- package/src/avm/opcodes/conversion.ts +59 -0
- package/src/avm/opcodes/environment_getters.ts +21 -65
- package/src/avm/opcodes/external_calls.ts +32 -16
- package/src/avm/serialization/bytecode_serialization.ts +5 -0
- package/src/avm/serialization/instruction_serialization.ts +3 -0
- package/src/client/client_execution_context.ts +142 -46
- package/src/client/db_oracle.ts +4 -18
- package/src/client/execution_result.ts +75 -25
- package/src/client/logs_cache.ts +65 -0
- package/src/client/private_execution.ts +6 -10
- package/src/client/simulator.ts +8 -84
- package/src/client/unconstrained_execution.ts +2 -2
- package/src/client/view_data_oracle.ts +0 -10
- package/src/common/errors.ts +5 -0
- package/src/index.ts +1 -0
- package/src/mocks/fixtures.ts +2 -0
- package/src/public/abstract_phase_manager.ts +59 -23
- package/src/public/app_logic_phase_manager.ts +2 -1
- package/src/public/execution.ts +9 -0
- package/src/public/executor.ts +47 -14
- package/src/public/hints_builder.ts +5 -5
- package/src/public/public_execution_context.ts +18 -4
- package/src/public/public_processor.ts +8 -2
- package/src/public/setup_phase_manager.ts +16 -8
- package/src/public/tail_phase_manager.ts +8 -35
- package/src/public/teardown_phase_manager.ts +16 -8
- package/src/public/transitional_adaptors.ts +39 -177
- package/src/rollup/index.ts +1 -0
- package/src/rollup/rollup.ts +160 -0
- package/src/stats/index.ts +1 -0
- package/src/stats/stats.ts +20 -0
|
@@ -25,44 +25,46 @@ export declare enum Opcode {
|
|
|
25
25
|
SENDER = 17,
|
|
26
26
|
FEEPERL2GAS = 18,
|
|
27
27
|
FEEPERDAGAS = 19,
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
28
|
+
TRANSACTIONFEE = 20,
|
|
29
|
+
CONTRACTCALLDEPTH = 21,
|
|
30
|
+
CHAINID = 22,
|
|
31
|
+
VERSION = 23,
|
|
32
|
+
BLOCKNUMBER = 24,
|
|
33
|
+
TIMESTAMP = 25,
|
|
34
|
+
COINBASE = 26,
|
|
35
|
+
BLOCKL2GASLIMIT = 27,
|
|
36
|
+
BLOCKDAGASLIMIT = 28,
|
|
37
|
+
CALLDATACOPY = 29,
|
|
38
|
+
L2GASLEFT = 30,
|
|
39
|
+
DAGASLEFT = 31,
|
|
40
|
+
JUMP = 32,
|
|
41
|
+
JUMPI = 33,
|
|
42
|
+
INTERNALCALL = 34,
|
|
43
|
+
INTERNALRETURN = 35,
|
|
44
|
+
SET = 36,
|
|
45
|
+
MOV = 37,
|
|
46
|
+
CMOV = 38,
|
|
47
|
+
SLOAD = 39,
|
|
48
|
+
SSTORE = 40,
|
|
49
|
+
NOTEHASHEXISTS = 41,
|
|
50
|
+
EMITNOTEHASH = 42,
|
|
51
|
+
NULLIFIEREXISTS = 43,
|
|
52
|
+
EMITNULLIFIER = 44,
|
|
53
|
+
L1TOL2MSGEXISTS = 45,
|
|
54
|
+
HEADERMEMBER = 46,
|
|
55
|
+
GETCONTRACTINSTANCE = 47,
|
|
56
|
+
EMITUNENCRYPTEDLOG = 48,
|
|
57
|
+
SENDL2TOL1MSG = 49,
|
|
58
|
+
CALL = 50,
|
|
59
|
+
STATICCALL = 51,
|
|
60
|
+
DELEGATECALL = 52,
|
|
61
|
+
RETURN = 53,
|
|
62
|
+
REVERT = 54,
|
|
63
|
+
KECCAK = 55,
|
|
64
|
+
POSEIDON2 = 56,
|
|
65
|
+
SHA256 = 57,// temp - may be removed, but alot of contracts rely on it
|
|
66
|
+
PEDERSEN = 58,// temp - may be removed, but alot of contracts rely on it
|
|
67
|
+
TORADIXLE = 59
|
|
66
68
|
}
|
|
67
69
|
export declare enum OperandType {
|
|
68
70
|
UINT8 = 0,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instruction_serialization.d.ts","sourceRoot":"","sources":["../../../src/avm/serialization/instruction_serialization.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD;;;GAGG;AACH,oBAAY,MAAM;IAEhB,GAAG,IAAA;IACH,GAAG,IAAA;IACH,GAAG,IAAA;IACH,GAAG,IAAA;IACH,IAAI,IAAA;IACJ,EAAE,IAAA;IACF,EAAE,IAAA;IACF,GAAG,IAAA;IACH,GAAG,IAAA;IACH,EAAE,IAAA;IACF,GAAG,KAAA;IACH,GAAG,KAAA;IACH,GAAG,KAAA;IACH,GAAG,KAAA;IACH,IAAI,KAAA;IAEJ,OAAO,KAAA;IACP,cAAc,KAAA;IACd,MAAM,KAAA;IACN,WAAW,KAAA;IACX,WAAW,KAAA;IACX,iBAAiB,KAAA;IACjB,OAAO,KAAA;IACP,OAAO,KAAA;IACP,WAAW,KAAA;IACX,SAAS,KAAA;IACT,QAAQ,KAAA;IACR,eAAe,KAAA;IACf,eAAe,KAAA;IACf,YAAY,KAAA;IAEZ,SAAS,KAAA;IACT,SAAS,KAAA;IAET,IAAI,KAAA;IACJ,KAAK,KAAA;IACL,YAAY,KAAA;IACZ,cAAc,KAAA;IAEd,GAAG,KAAA;IACH,GAAG,KAAA;IACH,IAAI,KAAA;IAEJ,KAAK,KAAA;IACL,MAAM,KAAA;IACN,cAAc,KAAA;IACd,YAAY,KAAA;IACZ,eAAe,KAAA;IACf,aAAa,KAAA;IACb,eAAe,KAAA;IACf,YAAY,KAAA;IACZ,mBAAmB,KAAA;IACnB,kBAAkB,KAAA;IAClB,aAAa,KAAA;IAEb,IAAI,KAAA;IACJ,UAAU,KAAA;IACV,YAAY,KAAA;IACZ,MAAM,KAAA;IACN,MAAM,KAAA;IAEN,MAAM,KAAA;IACN,SAAS,KAAA;IACT,MAAM,KAAA,CAAE,0DAA0D;IAClE,QAAQ,KAAA;
|
|
1
|
+
{"version":3,"file":"instruction_serialization.d.ts","sourceRoot":"","sources":["../../../src/avm/serialization/instruction_serialization.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD;;;GAGG;AACH,oBAAY,MAAM;IAEhB,GAAG,IAAA;IACH,GAAG,IAAA;IACH,GAAG,IAAA;IACH,GAAG,IAAA;IACH,IAAI,IAAA;IACJ,EAAE,IAAA;IACF,EAAE,IAAA;IACF,GAAG,IAAA;IACH,GAAG,IAAA;IACH,EAAE,IAAA;IACF,GAAG,KAAA;IACH,GAAG,KAAA;IACH,GAAG,KAAA;IACH,GAAG,KAAA;IACH,IAAI,KAAA;IAEJ,OAAO,KAAA;IACP,cAAc,KAAA;IACd,MAAM,KAAA;IACN,WAAW,KAAA;IACX,WAAW,KAAA;IACX,cAAc,KAAA;IACd,iBAAiB,KAAA;IACjB,OAAO,KAAA;IACP,OAAO,KAAA;IACP,WAAW,KAAA;IACX,SAAS,KAAA;IACT,QAAQ,KAAA;IACR,eAAe,KAAA;IACf,eAAe,KAAA;IACf,YAAY,KAAA;IAEZ,SAAS,KAAA;IACT,SAAS,KAAA;IAET,IAAI,KAAA;IACJ,KAAK,KAAA;IACL,YAAY,KAAA;IACZ,cAAc,KAAA;IAEd,GAAG,KAAA;IACH,GAAG,KAAA;IACH,IAAI,KAAA;IAEJ,KAAK,KAAA;IACL,MAAM,KAAA;IACN,cAAc,KAAA;IACd,YAAY,KAAA;IACZ,eAAe,KAAA;IACf,aAAa,KAAA;IACb,eAAe,KAAA;IACf,YAAY,KAAA;IACZ,mBAAmB,KAAA;IACnB,kBAAkB,KAAA;IAClB,aAAa,KAAA;IAEb,IAAI,KAAA;IACJ,UAAU,KAAA;IACV,YAAY,KAAA;IACZ,MAAM,KAAA;IACN,MAAM,KAAA;IAEN,MAAM,KAAA;IACN,SAAS,KAAA;IACT,MAAM,KAAA,CAAE,0DAA0D;IAClE,QAAQ,KAAA,CAAE,0DAA0D;IAEpE,SAAS,KAAA;CACV;AAMD,oBAAY,WAAW;IACrB,KAAK,IAAA;IACL,MAAM,IAAA;IACN,MAAM,IAAA;IACN,MAAM,IAAA;IACN,OAAO,IAAA;CACR;AAgCD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAcvG;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,CAqBnE"}
|
|
@@ -28,50 +28,53 @@ export var Opcode;
|
|
|
28
28
|
Opcode[Opcode["SENDER"] = 17] = "SENDER";
|
|
29
29
|
Opcode[Opcode["FEEPERL2GAS"] = 18] = "FEEPERL2GAS";
|
|
30
30
|
Opcode[Opcode["FEEPERDAGAS"] = 19] = "FEEPERDAGAS";
|
|
31
|
-
Opcode[Opcode["
|
|
32
|
-
Opcode[Opcode["
|
|
33
|
-
Opcode[Opcode["
|
|
34
|
-
Opcode[Opcode["
|
|
35
|
-
Opcode[Opcode["
|
|
36
|
-
Opcode[Opcode["
|
|
37
|
-
Opcode[Opcode["
|
|
38
|
-
Opcode[Opcode["
|
|
39
|
-
Opcode[Opcode["
|
|
31
|
+
Opcode[Opcode["TRANSACTIONFEE"] = 20] = "TRANSACTIONFEE";
|
|
32
|
+
Opcode[Opcode["CONTRACTCALLDEPTH"] = 21] = "CONTRACTCALLDEPTH";
|
|
33
|
+
Opcode[Opcode["CHAINID"] = 22] = "CHAINID";
|
|
34
|
+
Opcode[Opcode["VERSION"] = 23] = "VERSION";
|
|
35
|
+
Opcode[Opcode["BLOCKNUMBER"] = 24] = "BLOCKNUMBER";
|
|
36
|
+
Opcode[Opcode["TIMESTAMP"] = 25] = "TIMESTAMP";
|
|
37
|
+
Opcode[Opcode["COINBASE"] = 26] = "COINBASE";
|
|
38
|
+
Opcode[Opcode["BLOCKL2GASLIMIT"] = 27] = "BLOCKL2GASLIMIT";
|
|
39
|
+
Opcode[Opcode["BLOCKDAGASLIMIT"] = 28] = "BLOCKDAGASLIMIT";
|
|
40
|
+
Opcode[Opcode["CALLDATACOPY"] = 29] = "CALLDATACOPY";
|
|
40
41
|
// Gas
|
|
41
|
-
Opcode[Opcode["L2GASLEFT"] =
|
|
42
|
-
Opcode[Opcode["DAGASLEFT"] =
|
|
42
|
+
Opcode[Opcode["L2GASLEFT"] = 30] = "L2GASLEFT";
|
|
43
|
+
Opcode[Opcode["DAGASLEFT"] = 31] = "DAGASLEFT";
|
|
43
44
|
// Control flow
|
|
44
|
-
Opcode[Opcode["JUMP"] =
|
|
45
|
-
Opcode[Opcode["JUMPI"] =
|
|
46
|
-
Opcode[Opcode["INTERNALCALL"] =
|
|
47
|
-
Opcode[Opcode["INTERNALRETURN"] =
|
|
45
|
+
Opcode[Opcode["JUMP"] = 32] = "JUMP";
|
|
46
|
+
Opcode[Opcode["JUMPI"] = 33] = "JUMPI";
|
|
47
|
+
Opcode[Opcode["INTERNALCALL"] = 34] = "INTERNALCALL";
|
|
48
|
+
Opcode[Opcode["INTERNALRETURN"] = 35] = "INTERNALRETURN";
|
|
48
49
|
// Memory
|
|
49
|
-
Opcode[Opcode["SET"] =
|
|
50
|
-
Opcode[Opcode["MOV"] =
|
|
51
|
-
Opcode[Opcode["CMOV"] =
|
|
50
|
+
Opcode[Opcode["SET"] = 36] = "SET";
|
|
51
|
+
Opcode[Opcode["MOV"] = 37] = "MOV";
|
|
52
|
+
Opcode[Opcode["CMOV"] = 38] = "CMOV";
|
|
52
53
|
// World state
|
|
53
|
-
Opcode[Opcode["SLOAD"] =
|
|
54
|
-
Opcode[Opcode["SSTORE"] =
|
|
55
|
-
Opcode[Opcode["NOTEHASHEXISTS"] =
|
|
56
|
-
Opcode[Opcode["EMITNOTEHASH"] =
|
|
57
|
-
Opcode[Opcode["NULLIFIEREXISTS"] =
|
|
58
|
-
Opcode[Opcode["EMITNULLIFIER"] =
|
|
59
|
-
Opcode[Opcode["L1TOL2MSGEXISTS"] =
|
|
60
|
-
Opcode[Opcode["HEADERMEMBER"] =
|
|
61
|
-
Opcode[Opcode["GETCONTRACTINSTANCE"] =
|
|
62
|
-
Opcode[Opcode["EMITUNENCRYPTEDLOG"] =
|
|
63
|
-
Opcode[Opcode["SENDL2TOL1MSG"] =
|
|
54
|
+
Opcode[Opcode["SLOAD"] = 39] = "SLOAD";
|
|
55
|
+
Opcode[Opcode["SSTORE"] = 40] = "SSTORE";
|
|
56
|
+
Opcode[Opcode["NOTEHASHEXISTS"] = 41] = "NOTEHASHEXISTS";
|
|
57
|
+
Opcode[Opcode["EMITNOTEHASH"] = 42] = "EMITNOTEHASH";
|
|
58
|
+
Opcode[Opcode["NULLIFIEREXISTS"] = 43] = "NULLIFIEREXISTS";
|
|
59
|
+
Opcode[Opcode["EMITNULLIFIER"] = 44] = "EMITNULLIFIER";
|
|
60
|
+
Opcode[Opcode["L1TOL2MSGEXISTS"] = 45] = "L1TOL2MSGEXISTS";
|
|
61
|
+
Opcode[Opcode["HEADERMEMBER"] = 46] = "HEADERMEMBER";
|
|
62
|
+
Opcode[Opcode["GETCONTRACTINSTANCE"] = 47] = "GETCONTRACTINSTANCE";
|
|
63
|
+
Opcode[Opcode["EMITUNENCRYPTEDLOG"] = 48] = "EMITUNENCRYPTEDLOG";
|
|
64
|
+
Opcode[Opcode["SENDL2TOL1MSG"] = 49] = "SENDL2TOL1MSG";
|
|
64
65
|
// External calls
|
|
65
|
-
Opcode[Opcode["CALL"] =
|
|
66
|
-
Opcode[Opcode["STATICCALL"] =
|
|
67
|
-
Opcode[Opcode["DELEGATECALL"] =
|
|
68
|
-
Opcode[Opcode["RETURN"] =
|
|
69
|
-
Opcode[Opcode["REVERT"] =
|
|
66
|
+
Opcode[Opcode["CALL"] = 50] = "CALL";
|
|
67
|
+
Opcode[Opcode["STATICCALL"] = 51] = "STATICCALL";
|
|
68
|
+
Opcode[Opcode["DELEGATECALL"] = 52] = "DELEGATECALL";
|
|
69
|
+
Opcode[Opcode["RETURN"] = 53] = "RETURN";
|
|
70
|
+
Opcode[Opcode["REVERT"] = 54] = "REVERT";
|
|
70
71
|
// Gadgets
|
|
71
|
-
Opcode[Opcode["KECCAK"] =
|
|
72
|
-
Opcode[Opcode["POSEIDON2"] =
|
|
73
|
-
Opcode[Opcode["SHA256"] =
|
|
74
|
-
Opcode[Opcode["PEDERSEN"] =
|
|
72
|
+
Opcode[Opcode["KECCAK"] = 55] = "KECCAK";
|
|
73
|
+
Opcode[Opcode["POSEIDON2"] = 56] = "POSEIDON2";
|
|
74
|
+
Opcode[Opcode["SHA256"] = 57] = "SHA256";
|
|
75
|
+
Opcode[Opcode["PEDERSEN"] = 58] = "PEDERSEN";
|
|
76
|
+
// Conversion
|
|
77
|
+
Opcode[Opcode["TORADIXLE"] = 59] = "TORADIXLE";
|
|
75
78
|
})(Opcode || (Opcode = {}));
|
|
76
79
|
// Possible types for an instruction's operand in its wire format. (Keep in sync with CPP code.
|
|
77
80
|
// See vm/avm_trace/avm_deserialization.cpp)
|
|
@@ -154,4 +157,4 @@ export function serialize(operands, cls) {
|
|
|
154
157
|
}
|
|
155
158
|
return Buffer.concat(chunks);
|
|
156
159
|
}
|
|
157
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
160
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdHJ1Y3Rpb25fc2VyaWFsaXphdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hdm0vc2VyaWFsaXphdGlvbi9pbnN0cnVjdGlvbl9zZXJpYWxpemF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLElBQUksTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVsRDs7O0dBR0c7QUFDSCxNQUFNLENBQU4sSUFBWSxNQXNFWDtBQXRFRCxXQUFZLE1BQU07SUFDaEIsVUFBVTtJQUNWLGlDQUFHLENBQUE7SUFDSCxpQ0FBRyxDQUFBO0lBQ0gsaUNBQUcsQ0FBQTtJQUNILGlDQUFHLENBQUE7SUFDSCxtQ0FBSSxDQUFBO0lBQ0osK0JBQUUsQ0FBQTtJQUNGLCtCQUFFLENBQUE7SUFDRixpQ0FBRyxDQUFBO0lBQ0gsaUNBQUcsQ0FBQTtJQUNILCtCQUFFLENBQUE7SUFDRixrQ0FBRyxDQUFBO0lBQ0gsa0NBQUcsQ0FBQTtJQUNILGtDQUFHLENBQUE7SUFDSCxrQ0FBRyxDQUFBO0lBQ0gsb0NBQUksQ0FBQTtJQUNKLHdCQUF3QjtJQUN4QiwwQ0FBTyxDQUFBO0lBQ1Asd0RBQWMsQ0FBQTtJQUNkLHdDQUFNLENBQUE7SUFDTixrREFBVyxDQUFBO0lBQ1gsa0RBQVcsQ0FBQTtJQUNYLHdEQUFjLENBQUE7SUFDZCw4REFBaUIsQ0FBQTtJQUNqQiwwQ0FBTyxDQUFBO0lBQ1AsMENBQU8sQ0FBQTtJQUNQLGtEQUFXLENBQUE7SUFDWCw4Q0FBUyxDQUFBO0lBQ1QsNENBQVEsQ0FBQTtJQUNSLDBEQUFlLENBQUE7SUFDZiwwREFBZSxDQUFBO0lBQ2Ysb0RBQVksQ0FBQTtJQUNaLE1BQU07SUFDTiw4Q0FBUyxDQUFBO0lBQ1QsOENBQVMsQ0FBQTtJQUNULGVBQWU7SUFDZixvQ0FBSSxDQUFBO0lBQ0osc0NBQUssQ0FB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
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
-
import { type AuthWitness, type AztecNode, EncryptedFunctionL2Logs, type NoteStatus, UnencryptedFunctionL2Logs, type UnencryptedL2Log } from '@aztec/circuit-types';
|
|
3
|
-
import { CallContext, FunctionSelector, type Header,
|
|
2
|
+
import { type AuthWitness, type AztecNode, EncryptedFunctionL2Logs, EncryptedL2Log, type NoteStatus, UnencryptedFunctionL2Logs, type UnencryptedL2Log } from '@aztec/circuit-types';
|
|
3
|
+
import { CallContext, FunctionSelector, type Header, PublicCallRequest, type TxContext } from '@aztec/circuits.js';
|
|
4
4
|
import { type FunctionAbi } from '@aztec/foundation/abi';
|
|
5
5
|
import { type AztecAddress } from '@aztec/foundation/aztec-address';
|
|
6
6
|
import { Fr, type Point } from '@aztec/foundation/fields';
|
|
@@ -8,7 +8,8 @@ import { type NoteData } from '../acvm/index.js';
|
|
|
8
8
|
import { type PackedValuesCache } from '../common/packed_values_cache.js';
|
|
9
9
|
import { type DBOracle } from './db_oracle.js';
|
|
10
10
|
import { type ExecutionNoteCache } from './execution_note_cache.js';
|
|
11
|
-
import { type ExecutionResult, type NoteAndSlot
|
|
11
|
+
import { CountedLog, type ExecutionResult, type NoteAndSlot } from './execution_result.js';
|
|
12
|
+
import { type LogsCache } from './logs_cache.js';
|
|
12
13
|
import { ViewDataOracle } from './view_data_oracle.js';
|
|
13
14
|
/**
|
|
14
15
|
* The execution context for a client tx simulation.
|
|
@@ -22,6 +23,7 @@ export declare class ClientExecutionContext extends ViewDataOracle {
|
|
|
22
23
|
protected readonly historicalHeader: Header;
|
|
23
24
|
private readonly packedValuesCache;
|
|
24
25
|
private readonly noteCache;
|
|
26
|
+
private readonly logsCache;
|
|
25
27
|
private node;
|
|
26
28
|
protected sideEffectCounter: number;
|
|
27
29
|
/**
|
|
@@ -41,17 +43,18 @@ export declare class ClientExecutionContext extends ViewDataOracle {
|
|
|
41
43
|
* because these notes are meant to be maintained on a per-call basis
|
|
42
44
|
* They should act as references for the read requests output by an app circuit via public inputs.
|
|
43
45
|
*/
|
|
44
|
-
private
|
|
46
|
+
private noteHashLeafIndexMap;
|
|
45
47
|
private nullifiedNoteHashCounters;
|
|
46
48
|
private encryptedLogs;
|
|
47
49
|
private unencryptedLogs;
|
|
48
50
|
private nestedExecutions;
|
|
49
51
|
private enqueuedPublicFunctionCalls;
|
|
52
|
+
private publicTeardownFunctionCall;
|
|
50
53
|
constructor(contractAddress: AztecAddress, argsHash: Fr, txContext: TxContext, callContext: CallContext,
|
|
51
54
|
/** Header of a block whose state is used during private execution (not the block the transaction is included in). */
|
|
52
55
|
historicalHeader: Header,
|
|
53
56
|
/** List of transient auth witnesses to be used during this simulation */
|
|
54
|
-
authWitnesses: AuthWitness[], packedValuesCache: PackedValuesCache, noteCache: ExecutionNoteCache, db: DBOracle, node: AztecNode, sideEffectCounter?: number, log?: import("@aztec/foundation/log").Logger);
|
|
57
|
+
authWitnesses: AuthWitness[], packedValuesCache: PackedValuesCache, noteCache: ExecutionNoteCache, logsCache: LogsCache, db: DBOracle, node: AztecNode, sideEffectCounter?: number, log?: import("@aztec/foundation/log").Logger);
|
|
55
58
|
/**
|
|
56
59
|
* Writes the function inputs to the initial witness.
|
|
57
60
|
* @param abi - The function ABI.
|
|
@@ -59,29 +62,32 @@ export declare class ClientExecutionContext extends ViewDataOracle {
|
|
|
59
62
|
*/
|
|
60
63
|
getInitialWitness(abi: FunctionAbi): Map<number, string>;
|
|
61
64
|
/**
|
|
62
|
-
*
|
|
63
|
-
*
|
|
64
|
-
* or to flag non-transient reads with their leafIndex.
|
|
65
|
-
* The KernelProver will use this to fully populate witnesses and provide hints to
|
|
66
|
-
* the kernel regarding which commitments each transient read request corresponds to.
|
|
67
|
-
* @param noteHashReadRequests - SideEffect containing Note hashed of the notes being read and counter.
|
|
68
|
-
* @returns An array of partially filled in read request membership witnesses.
|
|
65
|
+
* The KernelProver will use this to fully populate witnesses and provide hints to the kernel circuit
|
|
66
|
+
* regarding which note hash each settled read request corresponds to.
|
|
69
67
|
*/
|
|
70
|
-
|
|
68
|
+
getNoteHashLeafIndexMap(): Map<bigint, bigint>;
|
|
71
69
|
/**
|
|
72
70
|
* Get the data for the newly created notes.
|
|
73
71
|
* @param innerNoteHashes - Inner note hashes for the notes.
|
|
74
72
|
*/
|
|
75
73
|
getNewNotes(): NoteAndSlot[];
|
|
76
|
-
getNullifiedNoteHashCounters():
|
|
74
|
+
getNullifiedNoteHashCounters(): Map<number, number>;
|
|
77
75
|
/**
|
|
78
76
|
* Return the encrypted logs emitted during this execution.
|
|
79
77
|
*/
|
|
80
|
-
getEncryptedLogs():
|
|
78
|
+
getEncryptedLogs(): CountedLog<EncryptedL2Log>[];
|
|
79
|
+
/**
|
|
80
|
+
* Return the encrypted logs emitted during this execution and nested executions.
|
|
81
|
+
*/
|
|
82
|
+
getAllEncryptedLogs(): EncryptedFunctionL2Logs;
|
|
81
83
|
/**
|
|
82
84
|
* Return the encrypted logs emitted during this execution.
|
|
83
85
|
*/
|
|
84
|
-
getUnencryptedLogs():
|
|
86
|
+
getUnencryptedLogs(): CountedLog<UnencryptedL2Log>[];
|
|
87
|
+
/**
|
|
88
|
+
* Return the unencrypted logs emitted during this execution and nested executions.
|
|
89
|
+
*/
|
|
90
|
+
getAllUnencryptedLogs(): UnencryptedFunctionL2Logs;
|
|
85
91
|
/**
|
|
86
92
|
* Return the nested execution results during this execution.
|
|
87
93
|
*/
|
|
@@ -90,6 +96,10 @@ export declare class ClientExecutionContext extends ViewDataOracle {
|
|
|
90
96
|
* Return the enqueued public function calls during this execution.
|
|
91
97
|
*/
|
|
92
98
|
getEnqueuedPublicFunctionCalls(): PublicCallRequest[];
|
|
99
|
+
/**
|
|
100
|
+
* Return the public teardown function call set during this execution.
|
|
101
|
+
*/
|
|
102
|
+
getPublicTeardownFunctionCall(): PublicCallRequest;
|
|
93
103
|
/**
|
|
94
104
|
* Pack the given array of arguments.
|
|
95
105
|
* @param args - Arguments to pack
|
|
@@ -152,12 +162,20 @@ export declare class ClientExecutionContext extends ViewDataOracle {
|
|
|
152
162
|
* @param publicKey - The public key of the account that can decrypt the log.
|
|
153
163
|
* @param log - The log contents.
|
|
154
164
|
*/
|
|
155
|
-
emitEncryptedLog(contractAddress: AztecAddress, storageSlot: Fr, noteTypeId: Fr, publicKey: Point, log: Fr[]):
|
|
165
|
+
emitEncryptedLog(contractAddress: AztecAddress, storageSlot: Fr, noteTypeId: Fr, publicKey: Point, log: Fr[], counter: number): Buffer;
|
|
156
166
|
/**
|
|
157
167
|
* Emit an unencrypted log.
|
|
158
168
|
* @param log - The unencrypted log to be emitted.
|
|
159
169
|
*/
|
|
160
|
-
emitUnencryptedLog(log: UnencryptedL2Log):
|
|
170
|
+
emitUnencryptedLog(log: UnencryptedL2Log, counter: number): void;
|
|
171
|
+
/**
|
|
172
|
+
* Emit a contract class unencrypted log.
|
|
173
|
+
* This fn exists separately from emitUnencryptedLog because sha hashing the preimage
|
|
174
|
+
* is too large to compile (16,200 fields, 518,400 bytes) => the oracle hashes it.
|
|
175
|
+
* See private_context.nr
|
|
176
|
+
* @param log - The unencrypted log to be emitted.
|
|
177
|
+
*/
|
|
178
|
+
emitContractClassUnencryptedLog(log: UnencryptedL2Log, counter: number): Fr;
|
|
161
179
|
/**
|
|
162
180
|
* Calls a private function as a nested execution.
|
|
163
181
|
* @param targetContractAddress - The address of the contract to call.
|
|
@@ -170,7 +188,17 @@ export declare class ClientExecutionContext extends ViewDataOracle {
|
|
|
170
188
|
*/
|
|
171
189
|
callPrivateFunction(targetContractAddress: AztecAddress, functionSelector: FunctionSelector, argsHash: Fr, sideEffectCounter: number, isStaticCall: boolean, isDelegateCall: boolean): Promise<import("@aztec/circuits.js").PrivateCallStackItem>;
|
|
172
190
|
/**
|
|
173
|
-
* Creates a PublicCallStackItem object representing the request to call a public function.
|
|
191
|
+
* Creates a PublicCallStackItem object representing the request to call a public function.
|
|
192
|
+
* @param targetContractAddress - The address of the contract to call.
|
|
193
|
+
* @param functionSelector - The function selector of the function to call.
|
|
194
|
+
* @param argsHash - The packed arguments to pass to the function.
|
|
195
|
+
* @param sideEffectCounter - The side effect counter at the start of the call.
|
|
196
|
+
* @param isStaticCall - Whether the call is a static call.
|
|
197
|
+
* @returns The public call stack item with the request information.
|
|
198
|
+
*/
|
|
199
|
+
protected createPublicCallRequest(callType: 'enqueued' | 'teardown', targetContractAddress: AztecAddress, functionSelector: FunctionSelector, argsHash: Fr, sideEffectCounter: number, isStaticCall: boolean, isDelegateCall: boolean): Promise<PublicCallRequest>;
|
|
200
|
+
/**
|
|
201
|
+
* Creates and enqueues a PublicCallStackItem object representing the request to call a public function. No function
|
|
174
202
|
* is actually called, since that must happen on the sequencer side. All the fields related to the result
|
|
175
203
|
* of the execution are empty.
|
|
176
204
|
* @param targetContractAddress - The address of the contract to call.
|
|
@@ -181,6 +209,18 @@ export declare class ClientExecutionContext extends ViewDataOracle {
|
|
|
181
209
|
* @returns The public call stack item with the request information.
|
|
182
210
|
*/
|
|
183
211
|
enqueuePublicFunctionCall(targetContractAddress: AztecAddress, functionSelector: FunctionSelector, argsHash: Fr, sideEffectCounter: number, isStaticCall: boolean, isDelegateCall: boolean): Promise<PublicCallRequest>;
|
|
212
|
+
/**
|
|
213
|
+
* Creates a PublicCallStackItem and sets it as the public teardown function. No function
|
|
214
|
+
* is actually called, since that must happen on the sequencer side. All the fields related to the result
|
|
215
|
+
* of the execution are empty.
|
|
216
|
+
* @param targetContractAddress - The address of the contract to call.
|
|
217
|
+
* @param functionSelector - The function selector of the function to call.
|
|
218
|
+
* @param argsHash - The packed arguments to pass to the function.
|
|
219
|
+
* @param sideEffectCounter - The side effect counter at the start of the call.
|
|
220
|
+
* @param isStaticCall - Whether the call is a static call.
|
|
221
|
+
* @returns The public call stack item with the request information.
|
|
222
|
+
*/
|
|
223
|
+
setPublicTeardownFunctionCall(targetContractAddress: AztecAddress, functionSelector: FunctionSelector, argsHash: Fr, sideEffectCounter: number, isStaticCall: boolean, isDelegateCall: boolean): Promise<PublicCallRequest>;
|
|
184
224
|
/**
|
|
185
225
|
* Derives the call context for a nested execution.
|
|
186
226
|
* @param targetContractAddress - The address of the contract being called.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client_execution_context.d.ts","sourceRoot":"","sources":["../../src/client/client_execution_context.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,uBAAuB,
|
|
1
|
+
{"version":3,"file":"client_execution_context.d.ts","sourceRoot":"","sources":["../../src/client/client_execution_context.ts"],"names":[],"mappings":"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"}
|