@aztec/simulator 0.0.1-commit.d431d1c → 0.0.1-commit.d6f2b3f94
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/private/acvm/acvm.d.ts +4 -2
- package/dest/private/acvm/acvm.d.ts.map +1 -1
- package/dest/private/acvm/acvm.js +4 -3
- package/dest/private/acvm_native.d.ts +5 -3
- package/dest/private/acvm_native.d.ts.map +1 -1
- package/dest/private/acvm_native.js +8 -6
- package/dest/private/acvm_wasm.d.ts +4 -3
- package/dest/private/acvm_wasm.d.ts.map +1 -1
- package/dest/private/acvm_wasm.js +4 -4
- package/dest/private/circuit_recording/circuit_recorder.d.ts +4 -3
- package/dest/private/circuit_recording/circuit_recorder.d.ts.map +1 -1
- package/dest/private/circuit_recording/circuit_recorder.js +5 -3
- package/dest/private/circuit_recording/file_circuit_recorder.d.ts +3 -2
- package/dest/private/circuit_recording/file_circuit_recorder.d.ts.map +1 -1
- package/dest/private/circuit_recording/file_circuit_recorder.js +2 -2
- package/dest/private/circuit_recording/memory_circuit_recorder.d.ts +7 -2
- package/dest/private/circuit_recording/memory_circuit_recorder.d.ts.map +1 -1
- package/dest/private/circuit_recording/memory_circuit_recorder.js +4 -4
- package/dest/private/factory.d.ts +3 -3
- package/dest/private/factory.d.ts.map +1 -1
- package/dest/private/factory.js +7 -4
- package/dest/public/avm/avm_context.d.ts +3 -3
- package/dest/public/avm/avm_context.d.ts.map +1 -1
- package/dest/public/avm/avm_contract_call_result.d.ts +6 -6
- package/dest/public/avm/avm_contract_call_result.d.ts.map +1 -1
- package/dest/public/avm/avm_contract_call_result.js +3 -3
- package/dest/public/avm/avm_execution_environment.d.ts +6 -5
- package/dest/public/avm/avm_execution_environment.d.ts.map +1 -1
- package/dest/public/avm/avm_machine_state.d.ts +6 -5
- package/dest/public/avm/avm_machine_state.d.ts.map +1 -1
- package/dest/public/avm/avm_machine_state.js +3 -2
- package/dest/public/avm/avm_memory_types.d.ts +1 -1
- package/dest/public/avm/avm_memory_types.d.ts.map +1 -1
- package/dest/public/avm/avm_memory_types.js +3 -0
- package/dest/public/avm/avm_simulator.d.ts +3 -2
- package/dest/public/avm/avm_simulator.d.ts.map +1 -1
- package/dest/public/avm/avm_simulator.js +5 -4
- package/dest/public/avm/calldata.d.ts +51 -0
- package/dest/public/avm/calldata.d.ts.map +1 -0
- package/dest/public/avm/calldata.js +63 -0
- package/dest/public/avm/fixtures/account_proof_fetcher.d.ts +2 -0
- package/dest/public/avm/fixtures/account_proof_fetcher.d.ts.map +1 -0
- package/dest/public/avm/fixtures/account_proof_fetcher.js +152 -0
- package/dest/public/avm/fixtures/avm_simulation_tester.d.ts +1 -1
- package/dest/public/avm/fixtures/avm_simulation_tester.d.ts.map +1 -1
- package/dest/public/avm/fixtures/avm_simulation_tester.js +3 -2
- package/dest/public/avm/fixtures/initializers.d.ts +1 -1
- package/dest/public/avm/fixtures/initializers.d.ts.map +1 -1
- package/dest/public/avm/fixtures/initializers.js +2 -1
- package/dest/public/avm/opcodes/accrued_substate.d.ts +3 -4
- package/dest/public/avm/opcodes/accrued_substate.d.ts.map +1 -1
- package/dest/public/avm/opcodes/accrued_substate.js +12 -12
- package/dest/public/avm/opcodes/contract.d.ts +1 -1
- package/dest/public/avm/opcodes/contract.d.ts.map +1 -1
- package/dest/public/avm/opcodes/contract.js +4 -4
- package/dest/public/avm/opcodes/external_calls.d.ts +1 -1
- package/dest/public/avm/opcodes/external_calls.d.ts.map +1 -1
- package/dest/public/avm/opcodes/external_calls.js +7 -7
- package/dest/public/avm/opcodes/memory.js +1 -1
- package/dest/public/avm/opcodes/storage.d.ts +13 -12
- package/dest/public/avm/opcodes/storage.d.ts.map +1 -1
- package/dest/public/avm/opcodes/storage.js +30 -20
- package/dest/public/debug_fn_name.d.ts +4 -4
- package/dest/public/debug_fn_name.d.ts.map +1 -1
- package/dest/public/debug_fn_name.js +7 -5
- package/dest/public/executor_metrics.d.ts +1 -1
- package/dest/public/executor_metrics.d.ts.map +1 -1
- package/dest/public/executor_metrics.js +7 -2
- package/dest/public/fixtures/opcode_spammer.d.ts +3 -4
- package/dest/public/fixtures/opcode_spammer.d.ts.map +1 -1
- package/dest/public/fixtures/opcode_spammer.js +30 -58
- package/dest/public/fuzzing/avm_simulator_bin.js +7 -4
- package/dest/public/public_db_sources.d.ts +4 -3
- package/dest/public/public_db_sources.d.ts.map +1 -1
- package/dest/public/public_db_sources.js +4 -4
- package/dest/public/public_processor/public_processor.d.ts +5 -3
- package/dest/public/public_processor/public_processor.d.ts.map +1 -1
- package/dest/public/public_processor/public_processor.js +8 -5
- package/dest/public/public_processor/public_processor_metrics.d.ts +2 -2
- package/dest/public/public_processor/public_processor_metrics.d.ts.map +1 -1
- package/dest/public/public_processor/public_processor_metrics.js +20 -4
- package/dest/public/public_tx_simulator/contract_provider_for_cpp.d.ts +3 -2
- package/dest/public/public_tx_simulator/contract_provider_for_cpp.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/contract_provider_for_cpp.js +2 -2
- package/dest/public/public_tx_simulator/cpp_public_tx_simulator.d.ts +5 -5
- package/dest/public/public_tx_simulator/cpp_public_tx_simulator.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/cpp_public_tx_simulator.js +8 -8
- package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.d.ts +4 -4
- package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.js +5 -5
- package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.d.ts +4 -4
- package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.js +6 -6
- package/dest/public/public_tx_simulator/dumping_cpp_public_tx_simulator.d.ts +3 -2
- package/dest/public/public_tx_simulator/dumping_cpp_public_tx_simulator.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/dumping_cpp_public_tx_simulator.js +2 -2
- package/dest/public/public_tx_simulator/factories.d.ts +3 -2
- package/dest/public/public_tx_simulator/factories.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/factories.js +3 -3
- package/dest/public/public_tx_simulator/public_tx_context.d.ts +4 -3
- package/dest/public/public_tx_simulator/public_tx_context.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/public_tx_context.js +8 -8
- package/dest/public/public_tx_simulator/public_tx_simulator.d.ts +4 -3
- package/dest/public/public_tx_simulator/public_tx_simulator.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/public_tx_simulator.js +9 -6
- package/dest/public/side_effect_trace.d.ts +4 -4
- package/dest/public/side_effect_trace.d.ts.map +1 -1
- package/dest/public/side_effect_trace.js +3 -3
- package/dest/public/state_manager/state_manager.d.ts +10 -4
- package/dest/public/state_manager/state_manager.d.ts.map +1 -1
- package/dest/public/state_manager/state_manager.js +12 -5
- package/dest/public/test_executor_metrics.d.ts +3 -2
- package/dest/public/test_executor_metrics.d.ts.map +1 -1
- package/dest/public/test_executor_metrics.js +2 -2
- package/package.json +16 -16
- package/src/private/acvm/acvm.ts +4 -3
- package/src/private/acvm_native.ts +11 -5
- package/src/private/acvm_wasm.ts +7 -3
- package/src/private/circuit_recording/circuit_recorder.ts +5 -3
- package/src/private/circuit_recording/file_circuit_recorder.ts +7 -2
- package/src/private/circuit_recording/memory_circuit_recorder.ts +6 -4
- package/src/private/factory.ts +7 -4
- package/src/public/avm/avm_context.ts +2 -2
- package/src/public/avm/avm_contract_call_result.ts +8 -6
- package/src/public/avm/avm_execution_environment.ts +9 -4
- package/src/public/avm/avm_machine_state.ts +6 -5
- package/src/public/avm/avm_memory_types.ts +4 -0
- package/src/public/avm/avm_simulator.ts +8 -5
- package/src/public/avm/calldata.ts +100 -0
- package/src/public/avm/fixtures/account_proof.json +553 -0
- package/src/public/avm/fixtures/account_proof_fetcher.ts +166 -0
- package/src/public/avm/fixtures/avm_simulation_tester.ts +8 -2
- package/src/public/avm/fixtures/initializers.ts +2 -1
- package/src/public/avm/opcodes/accrued_substate.ts +13 -15
- package/src/public/avm/opcodes/contract.ts +1 -4
- package/src/public/avm/opcodes/external_calls.ts +8 -7
- package/src/public/avm/opcodes/memory.ts +1 -1
- package/src/public/avm/opcodes/storage.ts +28 -20
- package/src/public/debug_fn_name.ts +10 -8
- package/src/public/executor_metrics.ts +4 -1
- package/src/public/fixtures/opcode_spammer.ts +49 -53
- package/src/public/fuzzing/avm_simulator_bin.ts +11 -1
- package/src/public/public_db_sources.ts +15 -5
- package/src/public/public_processor/public_processor.ts +18 -5
- package/src/public/public_processor/public_processor_metrics.ts +10 -4
- package/src/public/public_tx_simulator/contract_provider_for_cpp.ts +6 -3
- package/src/public/public_tx_simulator/cpp_public_tx_simulator.ts +9 -6
- package/src/public/public_tx_simulator/cpp_public_tx_simulator_with_hinted_dbs.ts +6 -4
- package/src/public/public_tx_simulator/cpp_vs_ts_public_tx_simulator.ts +7 -5
- package/src/public/public_tx_simulator/dumping_cpp_public_tx_simulator.ts +3 -1
- package/src/public/public_tx_simulator/factories.ts +4 -2
- package/src/public/public_tx_simulator/public_tx_context.ts +13 -6
- package/src/public/public_tx_simulator/public_tx_simulator.ts +14 -5
- package/src/public/side_effect_trace.ts +5 -2
- package/src/public/state_manager/state_manager.ts +27 -4
- package/src/public/test_executor_metrics.ts +3 -3
|
@@ -23,13 +23,12 @@ export declare class EmitNoteHash extends Instruction {
|
|
|
23
23
|
}
|
|
24
24
|
export declare class NullifierExists extends Instruction {
|
|
25
25
|
private addressingMode;
|
|
26
|
-
private
|
|
27
|
-
private addressOffset;
|
|
26
|
+
private siloedNullifierOffset;
|
|
28
27
|
private existsOffset;
|
|
29
28
|
static type: string;
|
|
30
29
|
static readonly opcode: Opcode;
|
|
31
30
|
static readonly wireFormat: OperandType[];
|
|
32
|
-
constructor(addressingMode: number,
|
|
31
|
+
constructor(addressingMode: number, siloedNullifierOffset: number, existsOffset: number);
|
|
33
32
|
execute(context: AvmContext): Promise<void>;
|
|
34
33
|
}
|
|
35
34
|
export declare class EmitNullifier extends Instruction {
|
|
@@ -72,4 +71,4 @@ export declare class SendL2ToL1Message extends Instruction {
|
|
|
72
71
|
constructor(addressingMode: number, recipientOffset: number, contentOffset: number);
|
|
73
72
|
execute(context: AvmContext): Promise<void>;
|
|
74
73
|
}
|
|
75
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjcnVlZF9zdWJzdGF0ZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3B1YmxpYy9hdm0vb3Bjb2Rlcy9hY2NydWVkX3N1YnN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBR3BELE9BQU8sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFFcEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRS9DLHFCQUFhLGNBQWUsU0FBUSxXQUFXO0lBYTNDLE9BQU8sQ0FBQyxjQUFjO0lBQ3RCLE9BQU8sQ0FBQyxjQUFjO0lBQ3RCLE9BQU8sQ0FBQyxlQUFlO0lBQ3ZCLE9BQU8sQ0FBQyxZQUFZO0lBZnRCLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFvQjtJQUN2QyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQXlCO0lBRXZELE1BQU0sQ0FBQyxRQUFRLENBQUMsVUFBVSxnQkFNeEI7SUFFRixZQUNVLGNBQWMsRUFBRSxNQUFNLEVBQ3RCLGNBQWMsRUFBRSxNQUFNLEVBQ3RCLGVBQWUsRUFBRSxNQUFNLEVBQ3ZCLFlBQVksRUFBRSxNQUFNLEVBRzdCO0lBRVksT0FBTyxDQUFDLE9BQU8sRUFBRSxVQUFVLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQWtCdkQ7Q0FDRjtBQUVELHFCQUFhLFlBQWEsU0FBUSxXQUFXO0lBT3pDLE9BQU8sQ0FBQyxjQUFjO0lBQ3RCLE9BQU8sQ0FBQyxjQUFjO0lBUHhCLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFrQjtJQUNyQyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQXVCO0lBRXJELE1BQU0sQ0FBQyxRQUFRLENBQUMsVUFBVSxnQkFBOEQ7SUFFeEYsWUFDVSxjQUFjLEVBQUUs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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accrued_substate.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/opcodes/accrued_substate.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"accrued_substate.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/opcodes/accrued_substate.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { MAX_ETH_ADDRESS_VALUE } from '@aztec/constants';
|
|
1
2
|
import { NullifierCollisionError } from '../../side_effect_errors.js';
|
|
2
3
|
import { TypeTag, Uint1 } from '../avm_memory_types.js';
|
|
3
4
|
import { InstructionExecutionError, StaticCallAlterationError } from '../errors.js';
|
|
@@ -73,8 +74,7 @@ export class EmitNoteHash extends Instruction {
|
|
|
73
74
|
}
|
|
74
75
|
export class NullifierExists extends Instruction {
|
|
75
76
|
addressingMode;
|
|
76
|
-
|
|
77
|
-
addressOffset;
|
|
77
|
+
siloedNullifierOffset;
|
|
78
78
|
existsOffset;
|
|
79
79
|
static type = 'NULLIFIEREXISTS';
|
|
80
80
|
static opcode = Opcode.NULLIFIEREXISTS;
|
|
@@ -83,26 +83,23 @@ export class NullifierExists extends Instruction {
|
|
|
83
83
|
OperandType.UINT8,
|
|
84
84
|
OperandType.UINT8,
|
|
85
85
|
OperandType.UINT16,
|
|
86
|
-
OperandType.UINT16,
|
|
87
86
|
OperandType.UINT16
|
|
88
87
|
];
|
|
89
|
-
constructor(addressingMode,
|
|
90
|
-
super(), this.addressingMode = addressingMode, this.
|
|
88
|
+
constructor(addressingMode, siloedNullifierOffset, existsOffset){
|
|
89
|
+
super(), this.addressingMode = addressingMode, this.siloedNullifierOffset = siloedNullifierOffset, this.existsOffset = existsOffset;
|
|
91
90
|
}
|
|
92
91
|
async execute(context) {
|
|
93
92
|
const memory = context.machineState.memory;
|
|
94
93
|
const addressing = Addressing.fromWire(this.addressingMode);
|
|
95
94
|
context.machineState.consumeGas(this.baseGasCost(addressing.indirectOperandsCount(), addressing.relativeOperandsCount()));
|
|
96
95
|
const operands = [
|
|
97
|
-
this.
|
|
98
|
-
this.addressOffset,
|
|
96
|
+
this.siloedNullifierOffset,
|
|
99
97
|
this.existsOffset
|
|
100
98
|
];
|
|
101
|
-
const [
|
|
102
|
-
memory.
|
|
103
|
-
const
|
|
104
|
-
const
|
|
105
|
-
const exists = await context.persistableState.checkNullifierExists(address, nullifier);
|
|
99
|
+
const [siloedNullifierOffset, existsOffset] = addressing.resolve(operands, memory);
|
|
100
|
+
memory.checkTag(TypeTag.FIELD, siloedNullifierOffset);
|
|
101
|
+
const siloedNullifier = memory.get(siloedNullifierOffset).toFr();
|
|
102
|
+
const exists = await context.persistableState.checkSiloedNullifierExists(siloedNullifier);
|
|
106
103
|
memory.set(existsOffset, exists ? new Uint1(1) : new Uint1(0));
|
|
107
104
|
}
|
|
108
105
|
}
|
|
@@ -249,6 +246,9 @@ export class SendL2ToL1Message extends Instruction {
|
|
|
249
246
|
const [recipientOffset, contentOffset] = addressing.resolve(operands, memory);
|
|
250
247
|
memory.checkTags(TypeTag.FIELD, recipientOffset, contentOffset);
|
|
251
248
|
const recipient = memory.get(recipientOffset).toFr();
|
|
249
|
+
if (recipient.toBigInt() > MAX_ETH_ADDRESS_VALUE) {
|
|
250
|
+
throw new InstructionExecutionError(`SENDL2TOL1MSG: Recipient address is too large`);
|
|
251
|
+
}
|
|
252
252
|
const content = memory.get(contentOffset).toFr();
|
|
253
253
|
context.persistableState.writeL2ToL1Message(context.environment.address, recipient, content);
|
|
254
254
|
}
|
|
@@ -17,4 +17,4 @@ export declare class GetContractInstance extends Instruction {
|
|
|
17
17
|
constructor(addressingMode: number, addressOffset: number, dstOffset: number, memberEnum: number);
|
|
18
18
|
execute(context: AvmContext): Promise<void>;
|
|
19
19
|
}
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3QuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wdWJsaWMvYXZtL29wY29kZXMvY29udHJhY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFHcEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUVwRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFL0Msb0JBQVksc0JBQXNCO0lBQ2hDLFFBQVEsSUFBQTtJQUNSLFFBQVEsSUFBQTtJQUNSLFNBQVMsSUFBQTtDQUNWO0FBRUQscUJBQWEsbUJBQW9CLFNBQVEsV0FBVztJQWFoRCxPQUFPLENBQUMsY0FBYztJQUN0QixPQUFPLENBQUMsYUFBYTtJQUNyQixPQUFPLENBQUMsU0FBUztJQUNqQixPQUFPLENBQUMsVUFBVTtJQWZwQixNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxNQUFNLENBQXlCO0lBQ3JELE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBOEI7SUFFNUQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsV0FBVyxFQUFFLENBTXZDO0lBRUYsWUFDVSxjQUFjLEVBQUUsTUFBTSxFQUN0QixhQUFhLEVBQUUsTUFBTSxFQUNyQixTQUFTLEVBQUUsTUFBTSxFQUNqQixVQUFVLEVBQUUsTUFBTSxFQUczQjtJQUVLLE9BQU8sQ0FBQyxPQUFPLEVBQUUsVUFBVSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FvQ2hEO0NBQ0YifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/opcodes/contract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAEpF,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,oBAAY,sBAAsB;IAChC,QAAQ,IAAA;IACR,QAAQ,IAAA;IACR,SAAS,IAAA;CACV;AAED,qBAAa,mBAAoB,SAAQ,WAAW;IAahD,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,UAAU;IAfpB,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAyB;IACrD,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAA8B;IAE5D,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,EAAE,CAMvC;IAEF,YACU,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAG3B;IAEK,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/opcodes/contract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAEpF,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,oBAAY,sBAAsB;IAChC,QAAQ,IAAA;IACR,QAAQ,IAAA;IACR,SAAS,IAAA;CACV;AAED,qBAAa,mBAAoB,SAAQ,WAAW;IAahD,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,UAAU;IAfpB,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAyB;IACrD,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAA8B;IAE5D,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,EAAE,CAMvC;IAEF,YACU,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAG3B;IAEK,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAoChD;CACF"}
|
|
@@ -57,9 +57,9 @@ export class GetContractInstance extends Instruction {
|
|
|
57
57
|
break;
|
|
58
58
|
}
|
|
59
59
|
}
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
60
|
+
memory.setSlice(dstOffset, [
|
|
61
|
+
new Uint1(exists ? 1 : 0),
|
|
62
|
+
memberValue
|
|
63
|
+
]);
|
|
64
64
|
}
|
|
65
65
|
}
|
|
@@ -56,4 +56,4 @@ export declare class Revert extends Instruction {
|
|
|
56
56
|
handlesPC(): boolean;
|
|
57
57
|
}
|
|
58
58
|
export {};
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWxfY2FsbHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wdWJsaWMvYXZtL29wY29kZXMvZXh0ZXJuYWxfY2FsbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFJcEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUVwRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFL0MsdUJBQWUsWUFBYSxTQUFRLFdBQVc7SUFhM0MsT0FBTyxDQUFDLGNBQWM7SUFDdEIsT0FBTyxDQUFDLFdBQVc7SUFDbkIsT0FBTyxDQUFDLFdBQVc7SUFDbkIsT0FBTyxDQUFDLFVBQVU7SUFDbEIsT0FBTyxDQUFDLGNBQWM7SUFDdEIsT0FBTyxDQUFDLFVBQVU7SUFoQnBCLE1BQU0sQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLFdBQVcsRUFBRSxDQVF2QztJQUVGLFlBQ1UsY0FBYyxFQUFFLE1BQU0sRUFDdEIsV0FBVyxFQUFFLE1BQU0sRUFDbkIsV0FBVyxFQUFFLE1BQU0sRUFDbkIsVUFBVSxFQUFFLE1BQU0sRUFDbEIsY0FBYyxFQUFFLE1BQU0sRUFDdEIsVUFBVSxFQUFFLE1BQU0sRUFHM0I7SUFFWSxPQUFPLENBQUMsT0FBTyxFQUFFLFVBQVUsaUJBMkV2QztJQUVELGFBQTZCLElBQUksSUFBSSxNQUFNLEdBQUcsWUFBWSxDQUFDO0NBQzVEO0FBRUQscUJBQWEsSUFBSyxTQUFRLFlBQVk7SUFDcEMsTUFBTSxDQUFDLElBQUksU0FBbUI7SUFDOUIsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFlO0lBRTdDLElBQVcsSUFBSSxXQUVkO0NBQ0Y7QUFFRCxxQkFBYSxVQUFXLFNBQVEsWUFBWTtJQUMxQyxNQUFNLENBQUMsSUFBSSxlQUF5QjtJQUNwQyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQXFCO0lBRW5ELElBQVcsSUFBSSxpQkFFZDtDQUNGO0FBRUQscUJBQWEsV0FBWSxTQUFRLFdBQVc7SUFXeEMsT0FBTyxDQUFDLGNBQWM7SUFDdEIsT0FBTyxDQUFDLFNBQVM7SUFYbkIsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQWlCO0lBQ3BDLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBc0I7SUFFcEQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsV0FBVyxFQUFFLENBSXZDO0lBRUYsWUFDVSxjQUFjLEVBQUUsTUFBTSxFQUN0QixTQUFTLEVBQUUsTUFBTSxFQUcxQjtJQUVZLE9BQU8sQ0FBQyxPQUFPLEVBQUUsVUFBVSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FnQnZEO0NBQ0Y7QUFFRCxxQkFBYSxNQUFPLFNBQVEsV0FBVztJQVluQyxPQUFPLENBQUMsY0FBYztJQUN0QixPQUFPLENBQUMsZ0JBQWdCO0lBQ3hCLE9BQU8sQ0FBQyxZQUFZO0lBYnRCLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFZO0lBQy9CLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBaUI7SUFFL0MsTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsV0FBVyxFQUFFLENBS3ZDO0lBRUYsWUFDVSxjQUFjLEVBQUUsTUFBTSxFQUN0QixnQkFBZ0IsRUFBRSxNQUFNLEVBQ3hCLFlBQVksRUFBRSxNQUFNLEVBRzdCO0lBRVksT0FBTyxDQUFDLE9BQU8sRUFBRSxVQUFVLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQWlCdkQ7SUFFZSxTQUFTLElBQUksT0FBTyxDQUVuQztDQUNGO0FBRUQscUJBQWEsTUFBTyxTQUFRLFdBQVc7SUFrQm5DLE9BQU8sQ0FBQyxjQUFjO0lBQ3RCLE9BQU8sQ0FBQyxhQUFhO0lBQ3JCLE9BQU8sQ0FBQyxZQUFZO0lBbkJ0QixNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBWTtJQUMvQixNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQW1CO0lBRWpELE1BQU0sQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLFdBQVcsRUFBRSxDQUt4QztJQUNGLE1BQU0sQ0FBQyxRQUFRLENBQUMsWUFBWSxFQUFFLFdBQVcsRUFBRSxDQUt6QztJQUVGLFlBQ1UsY0FBYyxFQUFFLE1BQU0sRUFDdEIsYUFBYSxFQUFFLE1BQU0sRUFDckIsWUFBWSxFQUFFLE1BQU0sRUFHN0I7SUFFWSxPQUFPLENBQUMsT0FBTyxFQUFFLFVBQVUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBZ0J2RDtJQUllLFNBQVMsSUFBSSxPQUFPLENBRW5DO0NBQ0YifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"external_calls.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/opcodes/external_calls.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"external_calls.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/opcodes/external_calls.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAIpD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAEpF,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,uBAAe,YAAa,SAAQ,WAAW;IAa3C,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,UAAU;IAhBpB,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,EAAE,CAQvC;IAEF,YACU,cAAc,EAAE,MAAM,EACtB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,UAAU,EAAE,MAAM,EAG3B;IAEY,OAAO,CAAC,OAAO,EAAE,UAAU,iBA2EvC;IAED,aAA6B,IAAI,IAAI,MAAM,GAAG,YAAY,CAAC;CAC5D;AAED,qBAAa,IAAK,SAAQ,YAAY;IACpC,MAAM,CAAC,IAAI,SAAmB;IAC9B,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAe;IAE7C,IAAW,IAAI,WAEd;CACF;AAED,qBAAa,UAAW,SAAQ,YAAY;IAC1C,MAAM,CAAC,IAAI,eAAyB;IACpC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAqB;IAEnD,IAAW,IAAI,iBAEd;CACF;AAED,qBAAa,WAAY,SAAQ,WAAW;IAWxC,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,SAAS;IAXnB,MAAM,CAAC,IAAI,EAAE,MAAM,CAAiB;IACpC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAsB;IAEpD,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,EAAE,CAIvC;IAEF,YACU,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,MAAM,EAG1B;IAEY,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBvD;CACF;AAED,qBAAa,MAAO,SAAQ,WAAW;IAYnC,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,YAAY;IAbtB,MAAM,CAAC,IAAI,EAAE,MAAM,CAAY;IAC/B,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAiB;IAE/C,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,EAAE,CAKvC;IAEF,YACU,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,MAAM,EACxB,YAAY,EAAE,MAAM,EAG7B;IAEY,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBvD;IAEe,SAAS,IAAI,OAAO,CAEnC;CACF;AAED,qBAAa,MAAO,SAAQ,WAAW;IAkBnC,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,YAAY;IAnBtB,MAAM,CAAC,IAAI,EAAE,MAAM,CAAY;IAC/B,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAmB;IAEjD,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,EAAE,CAKxC;IACF,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,WAAW,EAAE,CAKzC;IAEF,YACU,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,EAG7B;IAEY,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBvD;IAIe,SAAS,IAAI,OAAO,CAEnC;CACF"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { TypeTag, Uint1 } from '../avm_memory_types.js';
|
|
2
|
+
import { CallDataMemory, ReturnDataMemory } from '../calldata.js';
|
|
2
3
|
import { Opcode, OperandType } from '../serialization/instruction_serialization.js';
|
|
3
4
|
import { Addressing } from './addressing_mode.js';
|
|
4
5
|
import { Instruction } from './instruction.js';
|
|
@@ -39,8 +40,7 @@ class ExternalCall extends Instruction {
|
|
|
39
40
|
memory.checkTag(TypeTag.FIELD, addrOffset);
|
|
40
41
|
memory.checkTag(TypeTag.UINT32, argsSizeOffset);
|
|
41
42
|
const calldataSize = memory.get(argsSizeOffset).toNumber();
|
|
42
|
-
|
|
43
|
-
const calldata = memory.getSlice(argsOffset, calldataSize).map((f)=>f.toFr());
|
|
43
|
+
const calldata = new CallDataMemory(memory, argsOffset, calldataSize);
|
|
44
44
|
const callAddress = memory.getAs(addrOffset);
|
|
45
45
|
// If we are already in a static call, we propagate the environment.
|
|
46
46
|
const callType = context.environment.isStaticCall ? 'STATICCALL' : this.type;
|
|
@@ -61,8 +61,8 @@ class ExternalCall extends Instruction {
|
|
|
61
61
|
const nestedCallResults = await simulator.execute();
|
|
62
62
|
const success = !nestedCallResults.reverted;
|
|
63
63
|
// Save return/revert data for later.
|
|
64
|
-
const
|
|
65
|
-
context.machineState.nestedReturndata =
|
|
64
|
+
const returnData = nestedCallResults.output;
|
|
65
|
+
context.machineState.nestedReturndata = returnData;
|
|
66
66
|
// Track the success status directly
|
|
67
67
|
context.machineState.nestedCallSuccess = success;
|
|
68
68
|
// Account for all instructions executed in the nested call
|
|
@@ -74,7 +74,7 @@ class ExternalCall extends Instruction {
|
|
|
74
74
|
// (in Noir code).
|
|
75
75
|
if (!success) {
|
|
76
76
|
context.machineState.collectedRevertInfo = {
|
|
77
|
-
revertDataRepresentative:
|
|
77
|
+
revertDataRepresentative: returnData.bestEffortReadAll(),
|
|
78
78
|
recursiveRevertReason: nestedCallResults.revertReason
|
|
79
79
|
};
|
|
80
80
|
}
|
|
@@ -157,7 +157,7 @@ export class Return extends Instruction {
|
|
|
157
157
|
const [returnSizeOffset, returnOffset] = addressing.resolve(operands, memory);
|
|
158
158
|
memory.checkTag(TypeTag.UINT32, returnSizeOffset);
|
|
159
159
|
const returnSize = memory.get(returnSizeOffset).toNumber();
|
|
160
|
-
const output = memory
|
|
160
|
+
const output = new ReturnDataMemory(memory, returnOffset, returnSize);
|
|
161
161
|
context.machineState.return(output);
|
|
162
162
|
}
|
|
163
163
|
handlesPC() {
|
|
@@ -196,7 +196,7 @@ export class Revert extends Instruction {
|
|
|
196
196
|
const [retSizeOffset, returnOffset] = addressing.resolve(operands, memory);
|
|
197
197
|
memory.checkTag(TypeTag.UINT32, retSizeOffset);
|
|
198
198
|
const retSize = memory.get(retSizeOffset).toNumber();
|
|
199
|
-
const output = memory
|
|
199
|
+
const output = new ReturnDataMemory(memory, returnOffset, retSize);
|
|
200
200
|
context.machineState.revert(output);
|
|
201
201
|
}
|
|
202
202
|
// We don't want to increase the PC after reverting because it breaks messages.
|
|
@@ -210,7 +210,7 @@ export class ReturndataSize extends Instruction {
|
|
|
210
210
|
this.dstOffset
|
|
211
211
|
];
|
|
212
212
|
const [dstOffset] = addressing.resolve(operands, memory);
|
|
213
|
-
memory.set(dstOffset, new Uint32(context.machineState.nestedReturndata.length));
|
|
213
|
+
memory.set(dstOffset, new Uint32(context.machineState.nestedReturndata.length()));
|
|
214
214
|
}
|
|
215
215
|
}
|
|
216
216
|
export class ReturndataCopy extends Instruction {
|
|
@@ -1,24 +1,25 @@
|
|
|
1
1
|
import type { AvmContext } from '../avm_context.js';
|
|
2
2
|
import { Opcode, OperandType } from '../serialization/instruction_serialization.js';
|
|
3
3
|
import { Instruction } from './instruction.js';
|
|
4
|
-
declare
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
static readonly wireFormat: OperandType[];
|
|
9
|
-
constructor(addressingMode: number, aOffset: number, bOffset: number);
|
|
10
|
-
}
|
|
11
|
-
export declare class SStore extends BaseStorageInstruction {
|
|
4
|
+
export declare class SStore extends Instruction {
|
|
5
|
+
private addressingMode;
|
|
6
|
+
private srcOffset;
|
|
7
|
+
private slotOffset;
|
|
12
8
|
static readonly type: string;
|
|
13
9
|
static readonly opcode = Opcode.SSTORE;
|
|
10
|
+
static readonly wireFormat: OperandType[];
|
|
14
11
|
constructor(addressingMode: number, srcOffset: number, slotOffset: number);
|
|
15
12
|
execute(context: AvmContext): Promise<void>;
|
|
16
13
|
}
|
|
17
|
-
export declare class SLoad extends
|
|
14
|
+
export declare class SLoad extends Instruction {
|
|
15
|
+
private addressingMode;
|
|
16
|
+
private slotOffset;
|
|
17
|
+
private contractAddressOffset;
|
|
18
|
+
private dstOffset;
|
|
18
19
|
static readonly type: string;
|
|
19
20
|
static readonly opcode = Opcode.SLOAD;
|
|
20
|
-
|
|
21
|
+
static readonly wireFormat: OperandType[];
|
|
22
|
+
constructor(addressingMode: number, slotOffset: number, contractAddressOffset: number, dstOffset: number);
|
|
21
23
|
execute(context: AvmContext): Promise<void>;
|
|
22
24
|
}
|
|
23
|
-
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3B1YmxpYy9hdm0vb3Bjb2Rlcy9zdG9yYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBR3BELE9BQU8sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFFcEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRS9DLHVCQUFlLHNCQUF1QixTQUFRLFdBQVc7SUFVckQsU0FBUyxDQUFDLGNBQWMsRUFBRSxNQUFNO0lBQ2hDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsTUFBTTtJQUN6QixTQUFTLENBQUMsT0FBTyxFQUFFLE1BQU07SUFWM0IsZ0JBQXVCLFVBQVUsRUFBRSxXQUFXLEVBQUUsQ0FLOUM7SUFFRixZQUNZLGNBQWMsRUFBRSxNQUFNLEVBQ3RCLE9BQU8sRUFBRSxNQUFNLEVBQ2YsT0FBTyxFQUFFLE1BQU0sRUFHMUI7Q0FDRjtBQUVELHFCQUFhLE1BQU8sU0FBUSxzQkFBc0I7SUFDaEQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFZO0lBQ3hDLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxpQkFBaUI7SUFFdkMsWUFBWSxjQUFjLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFFeEU7SUFFWSxPQUFPLENBQUMsT0FBTyxFQUFFLFVBQVUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBMEJ2RDtDQUNGO0FBRUQscUJBQWEsS0FBTSxTQUFRLHNCQUFzQjtJQUMvQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxNQUFNLENBQVc7SUFDdkMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLGdCQUFnQjtJQUV0QyxZQUFZLGNBQWMsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUV4RTtJQUVZLE9BQU8sQ0FBQyxPQUFPLEVBQUUsVUFBVSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FldkQ7Q0FDRiJ9
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3B1YmxpYy9hdm0vb3Bjb2Rlcy9zdG9yYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBR3BELE9BQU8sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFFcEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRS9DLHFCQUFhLE1BQU8sU0FBUSxXQUFXO0lBWW5DLE9BQU8sQ0FBQyxjQUFjO0lBQ3RCLE9BQU8sQ0FBQyxTQUFTO0lBQ2pCLE9BQU8sQ0FBQyxVQUFVO0lBYnBCLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBWTtJQUN4QyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0saUJBQWlCO0lBRXZDLGdCQUF1QixVQUFVLEVBQUUsV0FBVyxFQUFFLENBSzlDO0lBRUYsWUFDVSxjQUFjLEVBQUUsTUFBTSxFQUN0QixTQUFTLEVBQUUsTUFBTSxFQUNqQixVQUFVLEVBQUUsTUFBTSxFQUczQjtJQUVZLE9BQU8sQ0FBQyxPQUFPLEVBQUUsVUFBVSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0EwQnZEO0NBQ0Y7QUFFRCxxQkFBYSxLQUFNLFNBQVEsV0FBVztJQWFsQyxPQUFPLENBQUMsY0FBYztJQUN0QixPQUFPLENBQUMsVUFBVTtJQUNsQixPQUFPLENBQUMscUJBQXFCO0lBQzdCLE9BQU8sQ0FBQyxTQUFTO0lBZm5CLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBVztJQUN2QyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sZ0JBQWdCO0lBRXRDLGdCQUF1QixVQUFVLEVBQUUsV0FBVyxFQUFFLENBTTlDO0lBRUYsWUFDVSxjQUFjLEVBQUUsTUFBTSxFQUN0QixVQUFVLEVBQUUsTUFBTSxFQUNsQixxQkFBcUIsRUFBRSxNQUFNLEVBQzdCLFNBQVMsRUFBRSxNQUFNLEVBRzFCO0lBRVksT0FBTyxDQUFDLE9BQU8sRUFBRSxVQUFVLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQWlCdkQ7Q0FDRiJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/opcodes/storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAEpF,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,
|
|
1
|
+
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/opcodes/storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAEpF,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,qBAAa,MAAO,SAAQ,WAAW;IAYnC,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,UAAU;IAbpB,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAY;IACxC,MAAM,CAAC,QAAQ,CAAC,MAAM,iBAAiB;IAEvC,gBAAuB,UAAU,EAAE,WAAW,EAAE,CAK9C;IAEF,YACU,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAG3B;IAEY,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CA0BvD;CACF;AAED,qBAAa,KAAM,SAAQ,WAAW;IAalC,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,qBAAqB;IAC7B,OAAO,CAAC,SAAS;IAfnB,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAW;IACvC,MAAM,CAAC,QAAQ,CAAC,MAAM,gBAAgB;IAEtC,gBAAuB,UAAU,EAAE,WAAW,EAAE,CAM9C;IAEF,YACU,cAAc,EAAE,MAAM,EACtB,UAAU,EAAE,MAAM,EAClB,qBAAqB,EAAE,MAAM,EAC7B,SAAS,EAAE,MAAM,EAG1B;IAEY,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBvD;CACF"}
|
|
@@ -3,10 +3,12 @@ import { StaticCallAlterationError } from '../errors.js';
|
|
|
3
3
|
import { Opcode, OperandType } from '../serialization/instruction_serialization.js';
|
|
4
4
|
import { Addressing } from './addressing_mode.js';
|
|
5
5
|
import { Instruction } from './instruction.js';
|
|
6
|
-
class
|
|
6
|
+
export class SStore extends Instruction {
|
|
7
7
|
addressingMode;
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
srcOffset;
|
|
9
|
+
slotOffset;
|
|
10
|
+
static type = 'SSTORE';
|
|
11
|
+
static opcode = Opcode.SSTORE;
|
|
10
12
|
// Informs (de)serialization. See Instruction.deserialize.
|
|
11
13
|
static wireFormat = [
|
|
12
14
|
OperandType.UINT8,
|
|
@@ -14,15 +16,8 @@ class BaseStorageInstruction extends Instruction {
|
|
|
14
16
|
OperandType.UINT16,
|
|
15
17
|
OperandType.UINT16
|
|
16
18
|
];
|
|
17
|
-
constructor(addressingMode, aOffset, bOffset){
|
|
18
|
-
super(), this.addressingMode = addressingMode, this.aOffset = aOffset, this.bOffset = bOffset;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
export class SStore extends BaseStorageInstruction {
|
|
22
|
-
static type = 'SSTORE';
|
|
23
|
-
static opcode = Opcode.SSTORE;
|
|
24
19
|
constructor(addressingMode, srcOffset, slotOffset){
|
|
25
|
-
super(addressingMode, srcOffset, slotOffset
|
|
20
|
+
super(), this.addressingMode = addressingMode, this.srcOffset = srcOffset, this.slotOffset = slotOffset;
|
|
26
21
|
}
|
|
27
22
|
async execute(context) {
|
|
28
23
|
if (context.environment.isStaticCall) {
|
|
@@ -32,8 +27,8 @@ export class SStore extends BaseStorageInstruction {
|
|
|
32
27
|
const addressing = Addressing.fromWire(this.addressingMode);
|
|
33
28
|
context.machineState.consumeGas(this.baseGasCost(addressing.indirectOperandsCount(), addressing.relativeOperandsCount()));
|
|
34
29
|
const operands = [
|
|
35
|
-
this.
|
|
36
|
-
this.
|
|
30
|
+
this.srcOffset,
|
|
31
|
+
this.slotOffset
|
|
37
32
|
];
|
|
38
33
|
const [srcOffset, slotOffset] = addressing.resolve(operands, memory);
|
|
39
34
|
// We read before tag checking since it's needed for gas cost calculation
|
|
@@ -45,24 +40,39 @@ export class SStore extends BaseStorageInstruction {
|
|
|
45
40
|
await context.persistableState.writeStorage(context.environment.address, slot, value);
|
|
46
41
|
}
|
|
47
42
|
}
|
|
48
|
-
export class SLoad extends
|
|
43
|
+
export class SLoad extends Instruction {
|
|
44
|
+
addressingMode;
|
|
45
|
+
slotOffset;
|
|
46
|
+
contractAddressOffset;
|
|
47
|
+
dstOffset;
|
|
49
48
|
static type = 'SLOAD';
|
|
50
49
|
static opcode = Opcode.SLOAD;
|
|
51
|
-
|
|
52
|
-
|
|
50
|
+
// Informs (de)serialization. See Instruction.deserialize.
|
|
51
|
+
static wireFormat = [
|
|
52
|
+
OperandType.UINT8,
|
|
53
|
+
OperandType.UINT8,
|
|
54
|
+
OperandType.UINT16,
|
|
55
|
+
OperandType.UINT16,
|
|
56
|
+
OperandType.UINT16
|
|
57
|
+
];
|
|
58
|
+
constructor(addressingMode, slotOffset, contractAddressOffset, dstOffset){
|
|
59
|
+
super(), this.addressingMode = addressingMode, this.slotOffset = slotOffset, this.contractAddressOffset = contractAddressOffset, this.dstOffset = dstOffset;
|
|
53
60
|
}
|
|
54
61
|
async execute(context) {
|
|
55
62
|
const memory = context.machineState.memory;
|
|
56
63
|
const addressing = Addressing.fromWire(this.addressingMode);
|
|
57
64
|
context.machineState.consumeGas(this.baseGasCost(addressing.indirectOperandsCount(), addressing.relativeOperandsCount()));
|
|
58
65
|
const operands = [
|
|
59
|
-
this.
|
|
60
|
-
this.
|
|
66
|
+
this.slotOffset,
|
|
67
|
+
this.contractAddressOffset,
|
|
68
|
+
this.dstOffset
|
|
61
69
|
];
|
|
62
|
-
const [slotOffset, dstOffset] = addressing.resolve(operands, memory);
|
|
70
|
+
const [slotOffset, contractAddressOffset, dstOffset] = addressing.resolve(operands, memory);
|
|
63
71
|
memory.checkTag(TypeTag.FIELD, slotOffset);
|
|
72
|
+
memory.checkTag(TypeTag.FIELD, contractAddressOffset);
|
|
64
73
|
const slot = memory.get(slotOffset).toFr();
|
|
65
|
-
const
|
|
74
|
+
const contractAddress = memory.get(contractAddressOffset).toAztecAddress();
|
|
75
|
+
const value = await context.persistableState.readStorage(contractAddress, slot);
|
|
66
76
|
memory.set(dstOffset, new Field(value));
|
|
67
77
|
}
|
|
68
78
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import type { Fr } from '@aztec/foundation/curves/bn254';
|
|
2
1
|
import { FunctionSelector } from '@aztec/stdlib/abi';
|
|
3
2
|
import type { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
3
|
+
import type { CallData } from './avm/calldata.js';
|
|
4
4
|
import type { PublicContractsDBInterface } from './db_interfaces.js';
|
|
5
|
-
export declare function getPublicFunctionDebugName(db: PublicContractsDBInterface, contractAddress: AztecAddress, calldata:
|
|
5
|
+
export declare function getPublicFunctionDebugName(db: PublicContractsDBInterface, contractAddress: AztecAddress, calldata: CallData): Promise<string>;
|
|
6
6
|
/**
|
|
7
7
|
* Get the function selector and optional debug name for a public function.
|
|
8
8
|
* Returns the selector and name separately, with name only populated if a debug name is available.
|
|
@@ -11,8 +11,8 @@ export declare function getPublicFunctionDebugName(db: PublicContractsDBInterfac
|
|
|
11
11
|
* @param calldata - The calldata (selector is in calldata[0])
|
|
12
12
|
* @returns An object with functionSelector (always if calldata[0] exists) and functionName (only if debug name found)
|
|
13
13
|
*/
|
|
14
|
-
export declare function getPublicFunctionSelectorAndName(db: PublicContractsDBInterface, contractAddress: AztecAddress, calldata:
|
|
14
|
+
export declare function getPublicFunctionSelectorAndName(db: PublicContractsDBInterface, contractAddress: AztecAddress, calldata: CallData): Promise<{
|
|
15
15
|
functionSelector?: FunctionSelector;
|
|
16
16
|
functionName?: string;
|
|
17
17
|
}>;
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVidWdfZm5fbmFtZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3B1YmxpYy9kZWJ1Z19mbl9uYW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3JELE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRWhFLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sS0FBSyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFckUsd0JBQXNCLDBCQUEwQixDQUM5QyxFQUFFLEVBQUUsMEJBQTBCLEVBQzlCLGVBQWUsRUFBRSxZQUFZLEVBQzdCLFFBQVEsRUFBRSxRQUFRLEdBQ2pCLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FZakI7QUFFRDs7Ozs7OztHQU9HO0FBQ0gsd0JBQXNCLGdDQUFnQyxDQUNwRCxFQUFFLEVBQUUsMEJBQTBCLEVBQzlCLGVBQWUsRUFBRSxZQUFZLEVBQzdCLFFBQVEsRUFBRSxRQUFRLEdBQ2pCLE9BQU8sQ0FBQztJQUFFLGdCQUFnQixDQUFDLEVBQUUsZ0JBQWdCLENBQUM7SUFBQyxZQUFZLENBQUMsRUFBRSxNQUFNLENBQUE7Q0FBRSxDQUFDLENBZXpFIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"debug_fn_name.d.ts","sourceRoot":"","sources":["../../src/public/debug_fn_name.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"debug_fn_name.d.ts","sourceRoot":"","sources":["../../src/public/debug_fn_name.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAErE,wBAAsB,0BAA0B,CAC9C,EAAE,EAAE,0BAA0B,EAC9B,eAAe,EAAE,YAAY,EAC7B,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC,MAAM,CAAC,CAYjB;AAED;;;;;;;GAOG;AACH,wBAAsB,gCAAgC,CACpD,EAAE,EAAE,0BAA0B,EAC9B,eAAe,EAAE,YAAY,EAC7B,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC;IAAE,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAezE"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { FunctionSelector } from '@aztec/stdlib/abi';
|
|
2
2
|
export async function getPublicFunctionDebugName(db, contractAddress, calldata) {
|
|
3
3
|
// Public function is dispatched and therefore the target function is passed in the first argument.
|
|
4
|
-
|
|
4
|
+
const selectorField = calldata.read(0);
|
|
5
|
+
if (!selectorField) {
|
|
5
6
|
return `<calldata[0] undefined> (Contract Address: ${contractAddress})`;
|
|
6
7
|
}
|
|
7
|
-
const fallbackName = `<calldata[0]:${
|
|
8
|
-
const selector = FunctionSelector.fromFieldOrUndefined(
|
|
8
|
+
const fallbackName = `<calldata[0]:${selectorField.toString()}> (Contract Address: ${contractAddress})`;
|
|
9
|
+
const selector = FunctionSelector.fromFieldOrUndefined(selectorField);
|
|
9
10
|
if (!selector) {
|
|
10
11
|
return fallbackName;
|
|
11
12
|
}
|
|
@@ -20,10 +21,11 @@ export async function getPublicFunctionDebugName(db, contractAddress, calldata)
|
|
|
20
21
|
* @returns An object with functionSelector (always if calldata[0] exists) and functionName (only if debug name found)
|
|
21
22
|
*/ export async function getPublicFunctionSelectorAndName(db, contractAddress, calldata) {
|
|
22
23
|
// Public function is dispatched and therefore the target function is passed in the first argument.
|
|
23
|
-
|
|
24
|
+
const selectorField = calldata.read(0);
|
|
25
|
+
if (!selectorField) {
|
|
24
26
|
return {};
|
|
25
27
|
}
|
|
26
|
-
const selector = FunctionSelector.fromFieldOrUndefined(
|
|
28
|
+
const selector = FunctionSelector.fromFieldOrUndefined(selectorField);
|
|
27
29
|
if (!selector) {
|
|
28
30
|
return {};
|
|
29
31
|
}
|
|
@@ -18,4 +18,4 @@ export declare class ExecutorMetrics implements ExecutorMetricsInterface {
|
|
|
18
18
|
recordEnqueuedCallSimulationFailure(_fnName: string, _durationMs: number, _manaUsed: number, _totalInstructionsExecuted: number): void;
|
|
19
19
|
recordPrivateEffectsInsertion(durationUs: number, type: 'revertible' | 'non-revertible'): void;
|
|
20
20
|
}
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0b3JfbWV0cmljcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3B1YmxpYy9leGVjdXRvcl9tZXRyaWNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFJTCxLQUFLLGVBQWUsRUFDcEIsS0FBSyxNQUFNLEVBR1osTUFBTSx5QkFBeUIsQ0FBQztBQUVqQyxPQUFPLEtBQUssRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRWhGLHFCQUFhLGVBQWdCLFlBQVcsd0JBQXdCO0lBQzlELFNBQWdCLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFDL0IsT0FBTyxDQUFDLE9BQU8sQ0FBZ0I7SUFDL0IsT0FBTyxDQUFDLFVBQVUsQ0FBWTtJQUM5QixPQUFPLENBQUMsYUFBYSxDQUFZO0lBQ2pDLE9BQU8sQ0FBQyxRQUFRLENBQVk7SUFDNUIsT0FBTyxDQUFDLHlCQUF5QixDQUFZO0lBQzdDLE9BQU8sQ0FBQyxTQUFTLENBQVk7SUFDN0IsT0FBTyxDQUFDLHdCQUF3QixDQUFZO0lBRTVDLFlBQVksTUFBTSxFQUFFLGVBQWUsRUFBRSxJQUFJLFNBQW1CLEVBbUIzRDtJQUVELDBCQUEwQixDQUFDLFFBQVEsRUFBRSxNQUFNLFFBRTFDO0lBRUQseUJBQXlCLENBQUMsUUFBUSxFQUFFLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxPQUFPLEVBQUUsYUFBYSxDQUFDLEVBQUUsVUFBVSxRQUV6RjtJQUVELDRCQUE0QixDQUMxQixNQUFNLEVBQUUsTUFBTSxFQUNkLFVBQVUsRUFBRSxNQUFNLEVBQ2xCLFFBQVEsRUFBRSxNQUFNLEVBQ2hCLHlCQUF5QixFQUFFLE1BQU0sUUFxQmxDO0lBRUQsbUNBQW1DLENBQ2pDLE9BQU8sRUFBRSxNQUFNLEVBQ2YsV0FBVyxFQUFFLE1BQU0sRUFDbkIsU0FBUyxFQUFFLE1BQU0sRUFDakIsMEJBQTBCLEVBQUUsTUFBTSxRQUtuQztJQUVELDZCQUE2QixDQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFlBQVksR0FBRyxnQkFBZ0IsUUFJdEY7Q0FDRiJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor_metrics.d.ts","sourceRoot":"","sources":["../../src/public/executor_metrics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAIL,KAAK,eAAe,EACpB,KAAK,MAAM,
|
|
1
|
+
{"version":3,"file":"executor_metrics.d.ts","sourceRoot":"","sources":["../../src/public/executor_metrics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAIL,KAAK,eAAe,EACpB,KAAK,MAAM,EAGZ,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAEhF,qBAAa,eAAgB,YAAW,wBAAwB;IAC9D,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,UAAU,CAAY;IAC9B,OAAO,CAAC,aAAa,CAAY;IACjC,OAAO,CAAC,QAAQ,CAAY;IAC5B,OAAO,CAAC,yBAAyB,CAAY;IAC7C,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,wBAAwB,CAAY;IAE5C,YAAY,MAAM,EAAE,eAAe,EAAE,IAAI,SAAmB,EAmB3D;IAED,0BAA0B,CAAC,QAAQ,EAAE,MAAM,QAE1C;IAED,yBAAyB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,UAAU,QAEzF;IAED,4BAA4B,CAC1B,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,yBAAyB,EAAE,MAAM,QAqBlC;IAED,mCAAmC,CACjC,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,0BAA0B,EAAE,MAAM,QAKnC;IAED,6BAA6B,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,gBAAgB,QAItF;CACF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Attributes, Metrics } from '@aztec/telemetry-client';
|
|
1
|
+
import { Attributes, Metrics, createUpDownCounterWithDefault } from '@aztec/telemetry-client';
|
|
2
2
|
export class ExecutorMetrics {
|
|
3
3
|
tracer;
|
|
4
4
|
fnCount;
|
|
@@ -11,7 +11,12 @@ export class ExecutorMetrics {
|
|
|
11
11
|
constructor(client, name = 'PublicExecutor'){
|
|
12
12
|
this.tracer = client.getTracer(name);
|
|
13
13
|
const meter = client.getMeter(name);
|
|
14
|
-
this.fnCount = meter
|
|
14
|
+
this.fnCount = createUpDownCounterWithDefault(meter, Metrics.PUBLIC_EXECUTOR_SIMULATION_COUNT, {
|
|
15
|
+
[Attributes.OK]: [
|
|
16
|
+
true,
|
|
17
|
+
false
|
|
18
|
+
]
|
|
19
|
+
});
|
|
15
20
|
this.fnDuration = meter.createHistogram(Metrics.PUBLIC_EXECUTOR_SIMULATION_DURATION);
|
|
16
21
|
this.manaPerSecond = meter.createHistogram(Metrics.PUBLIC_EXECUTOR_SIMULATION_MANA_PER_SECOND);
|
|
17
22
|
this.manaUsed = meter.createHistogram(Metrics.PUBLIC_EXECUTOR_SIMULATION_MANA_USED);
|
|
@@ -58,9 +58,8 @@ export interface SpamConfigsForOpcode {
|
|
|
58
58
|
*/
|
|
59
59
|
export declare const WARM_NOTE_HASH: Fr;
|
|
60
60
|
export declare const WARM_L1_TO_L2_MSG: Fr;
|
|
61
|
-
/** Warm nullifier
|
|
62
|
-
export declare const
|
|
63
|
-
export declare const WARM_NULLIFIER_ADDRESS: AztecAddress;
|
|
61
|
+
/** Warm nullifier constant - a pre-siloed nullifier value inserted directly into the tree */
|
|
62
|
+
export declare const WARM_SILOED_NULLIFIER: Fr;
|
|
64
63
|
/** Warm storage constants - storage is inserted for the deployed contract's address */
|
|
65
64
|
export declare const WARM_STORAGE_SLOT: Fr;
|
|
66
65
|
export declare const WARM_STORAGE_VALUE: Fr;
|
|
@@ -120,4 +119,4 @@ export declare function createOpcodeSpamBytecode(config: SpamConfig): Buffer;
|
|
|
120
119
|
export declare function createSideEffectSpamBytecode(config: SpamConfig): Buffer;
|
|
121
120
|
export declare function testOpcodeSpamCase(tester: PublicTxSimulationTester, config: SpamConfig, expectToBeTrue?: (x: boolean) => void): Promise<PublicTxResult>;
|
|
122
121
|
export {};
|
|
123
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
122
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3Bjb2RlX3NwYW1tZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wdWJsaWMvZml4dHVyZXMvb3Bjb2RlX3NwYW1tZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBa0tBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM5RCxPQUFPLEVBQTJDLEtBQUssY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTNELE9BQU8sS0FBSyxFQUFFLHlCQUF5QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFLakYsT0FBTyxFQUFTLEtBQUssV0FBVyxFQUFnRCxNQUFNLDRCQUE0QixDQUFDO0FBa0RuSCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFFM0UsT0FBTyxLQUFLLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQU1qRjs7R0FFRztBQUNILFVBQVUsUUFBUTtJQUNoQixNQUFNLEVBQUUsTUFBTSxDQUFDO0lBQ2YsS0FBSyxFQUFFLFdBQVcsQ0FBQztDQUNwQjtBQUVEOzs7R0FHRztBQUNILEtBQUssU0FBUyxHQUFHLFFBQVEsR0FBRyxDQUFDLE1BQU0sVUFBVSxFQUFFLENBQUMsQ0FBQztBQUVqRDs7R0FFRztBQUNILE1BQU0sV0FBVyxVQUFVO0lBQ3pCLGlDQUFpQztJQUNqQyxLQUFLLEVBQUUsU0FBUyxFQUFFLENBQUM7SUFFbkIsc0RBQXNEO0lBQ3RELGtCQUFrQixFQUFFLE1BQU0sVUFBVSxFQUFFLENBQUM7SUFFdkMsMkRBQTJEO0lBQzNELG1CQUFtQixDQUFDLEVBQUUsTUFBTSxVQUFVLEVBQUUsQ0FBQztJQUV6Qzs7Ozs7OztPQU9HO0lBQ0gsS0FBSyxDQUFDLEVBQUUsTUFBTSxDQUFDO0lBRWYsc0VBQXNFO0lBQ3RFLEtBQUssQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUVmLDBEQUEwRDtJQUMxRCxpQkFBaUIsQ0FBQyxFQUFFLE9BQU8sQ0FBQztDQUM3QjtBQUVEOzs7R0FHRztBQUNILE1BQU0sV0FBVyxvQkFBb0I7SUFDbkMsa0NBQWtDO0lBQ2xDLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFFZixxREFBcUQ7SUFDckQsT0FBTyxFQUFFLFVBQVUsRUFBRSxDQUFDO0NBQ3ZCO0FBTUQ7OztHQUdHO0FBQ0gsZUFBTyxNQUFNLGNBQWMsSUFBc0IsQ0FBQztBQUNsRCxlQUFPLE1BQU0saUJBQWlCLElBQThCLENBQUM7QUFFN0QsNkZBQTZGO0FBQzdGLGVBQU8sTUFBTSxxQkFBcUIsSUFBMEIsQ0FBQztBQUU3RCx1RkFBdUY7QUFDdkYsZUFBTyxNQUFNLGlCQUFpQixJQUEwQixDQUFDO0FBQ3pELGVBQU8sTUFBTSxrQkFBa0IsSUFBMEIsQ0FBQztBQUUxRDs7OztHQUlHO0FBQ0gsZUFBTyxNQUFNLHlCQUF5QixLQUFLLENBQUM7QUFDNUMsZUFBTyxNQUFNLDRCQUE0QixLQUFLLENBQUM7QUFFL0M7Ozs7Ozs7OztHQVNHO0FBQ0gsd0JBQXNCLHFCQUFxQixDQUN6QyxXQUFXLEVBQUUseUJBQXlCLEVBQ3RDLGVBQWUsRUFBRSxZQUFZLEdBQzVCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FjZjtBQW1HRDs7R0FFRztBQUNILGVBQU8sTUFBTSxvQkFBb0IsRUFBRSxVQTBCbEMsQ0FBQztBQWtDRjs7OztHQUlHO0FBQ0gsZUFBTyxNQUFNLFlBQVksRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQTA4QjlELENBQUM7QUFFRjs7Ozs7Ozs7Ozs7R0FXRztBQUNILHdCQUFnQix1QkFBdUIsQ0FBQyxtQkFBbUIsR0FBRSxNQUFpQixHQUFHLG9CQUFvQixFQUFFLENBc0J0RztBQTRGRDs7O0dBR0c7QUFDSCx3QkFBZ0Isd0JBQXdCLENBQUMsTUFBTSxFQUFFLFVBQVUsR0FBRyxNQUFNLENBZW5FO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsd0JBQWdCLDRCQUE0QixDQUFDLE1BQU0sRUFBRSxVQUFVLEdBQUcsTUFBTSxDQW1CdkU7QUE0REQsd0JBQXNCLGtCQUFrQixDQUN0QyxNQUFNLEVBQUUsd0JBQXdCLEVBQ2hDLE1BQU0sRUFBRSxVQUFVLEVBQ2xCLGNBQWMsR0FBRSxDQUFDLENBQUMsRUFBRSxPQUFPLEtBQUssSUFBZSxHQUM5QyxPQUFPLENBQUMsY0FBYyxDQUFDLENBS3pCIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opcode_spammer.d.ts","sourceRoot":"","sources":["../../../src/public/fixtures/opcode_spammer.ts"],"names":[],"mappings":"AAkKA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAA2C,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACjG,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAKjF,OAAO,EAAS,KAAK,WAAW,EAAgD,MAAM,4BAA4B,CAAC;AAkDnH,OAAO,EAAE,MAAM,EAAE,MAAM,mDAAmD,CAAC;AAE3E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAMjF;;GAEG;AACH,UAAU,QAAQ;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,WAAW,CAAC;CACpB;AAED;;;GAGG;AACH,KAAK,SAAS,GAAG,QAAQ,GAAG,CAAC,MAAM,UAAU,EAAE,CAAC,CAAC;AAEjD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,iCAAiC;IACjC,KAAK,EAAE,SAAS,EAAE,CAAC;IAEnB,sDAAsD;IACtD,kBAAkB,EAAE,MAAM,UAAU,EAAE,CAAC;IAEvC,2DAA2D;IAC3D,mBAAmB,CAAC,EAAE,MAAM,UAAU,EAAE,CAAC;IAEzC;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,sEAAsE;IACtE,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,0DAA0D;IAC1D,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,kCAAkC;IAClC,MAAM,EAAE,MAAM,CAAC;IAEf,qDAAqD;IACrD,OAAO,EAAE,UAAU,EAAE,CAAC;CACvB;AAMD;;;GAGG;AACH,eAAO,MAAM,cAAc,IAAsB,CAAC;AAClD,eAAO,MAAM,iBAAiB,IAA8B,CAAC;AAE7D,
|
|
1
|
+
{"version":3,"file":"opcode_spammer.d.ts","sourceRoot":"","sources":["../../../src/public/fixtures/opcode_spammer.ts"],"names":[],"mappings":"AAkKA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAA2C,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACjG,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAKjF,OAAO,EAAS,KAAK,WAAW,EAAgD,MAAM,4BAA4B,CAAC;AAkDnH,OAAO,EAAE,MAAM,EAAE,MAAM,mDAAmD,CAAC;AAE3E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAMjF;;GAEG;AACH,UAAU,QAAQ;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,WAAW,CAAC;CACpB;AAED;;;GAGG;AACH,KAAK,SAAS,GAAG,QAAQ,GAAG,CAAC,MAAM,UAAU,EAAE,CAAC,CAAC;AAEjD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,iCAAiC;IACjC,KAAK,EAAE,SAAS,EAAE,CAAC;IAEnB,sDAAsD;IACtD,kBAAkB,EAAE,MAAM,UAAU,EAAE,CAAC;IAEvC,2DAA2D;IAC3D,mBAAmB,CAAC,EAAE,MAAM,UAAU,EAAE,CAAC;IAEzC;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,sEAAsE;IACtE,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,0DAA0D;IAC1D,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,kCAAkC;IAClC,MAAM,EAAE,MAAM,CAAC;IAEf,qDAAqD;IACrD,OAAO,EAAE,UAAU,EAAE,CAAC;CACvB;AAMD;;;GAGG;AACH,eAAO,MAAM,cAAc,IAAsB,CAAC;AAClD,eAAO,MAAM,iBAAiB,IAA8B,CAAC;AAE7D,6FAA6F;AAC7F,eAAO,MAAM,qBAAqB,IAA0B,CAAC;AAE7D,uFAAuF;AACvF,eAAO,MAAM,iBAAiB,IAA0B,CAAC;AACzD,eAAO,MAAM,kBAAkB,IAA0B,CAAC;AAE1D;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAC5C,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAE/C;;;;;;;;;GASG;AACH,wBAAsB,qBAAqB,CACzC,WAAW,EAAE,yBAAyB,EACtC,eAAe,EAAE,YAAY,GAC5B,OAAO,CAAC,IAAI,CAAC,CAcf;AAmGD;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,UA0BlC,CAAC;AAkCF;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,CA08B9D,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,wBAAgB,uBAAuB,CAAC,mBAAmB,GAAE,MAAiB,GAAG,oBAAoB,EAAE,CAsBtG;AA4FD;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAenE;AAED;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAmBvE;AA4DD,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,wBAAwB,EAChC,MAAM,EAAE,UAAU,EAClB,cAAc,GAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAe,GAC9C,OAAO,CAAC,cAAc,CAAC,CAKzB"}
|