@aztec/simulator 0.0.1-commit.d1f2d6c → 0.0.1-commit.d431d1c

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.
@@ -272,4 +272,4 @@ export declare class TaggedMemory implements TaggedMemoryInterface {
272
272
  static buildFromTagTruncating(v: bigint | number, tag: TypeTag): MemoryValue;
273
273
  }
274
274
  export {};
275
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZtX21lbW9yeV90eXBlcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3B1YmxpYy9hdm0vYXZtX21lbW9yeV90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFVQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxFQUFFLEtBQUssTUFBTSxFQUFnQixNQUFNLHVCQUF1QixDQUFDO0FBQ2xFLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzNELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQU0zRCxzRUFBc0U7QUFDdEUsOEJBQXNCLFdBQVc7SUFDL0IsU0FBZ0IsR0FBRyxDQUFDLEdBQUcsRUFBRSxXQUFXLEdBQUcsV0FBVyxDQUFDO0lBQ25ELFNBQWdCLEdBQUcsQ0FBQyxHQUFHLEVBQUUsV0FBVyxHQUFHLFdBQVcsQ0FBQztJQUNuRCxTQUFnQixHQUFHLENBQUMsR0FBRyxFQUFFLFdBQVcsR0FBRyxXQUFXLENBQUM7SUFDbkQsU0FBZ0IsR0FBRyxDQUFDLEdBQUcsRUFBRSxXQUFXLEdBQUcsV0FBVyxDQUFDO0lBRW5ELFNBQWdCLE1BQU0sQ0FBQyxHQUFHLEVBQUUsV0FBVyxHQUFHLE9BQU8sQ0FBQztJQUNsRCxTQUFnQixFQUFFLENBQUMsR0FBRyxFQUFFLFdBQVcsR0FBRyxPQUFPLENBQUM7SUFHOUMsU0FBZ0IsS0FBSyxDQUFDLENBQUMsRUFBRSxNQUFNLEdBQUcsV0FBVyxDQUFDO0lBRzlDLFNBQWdCLFFBQVEsSUFBSSxNQUFNLENBQUM7SUFDNUIsTUFBTSxJQUFJLE9BQU8sQ0FFdkI7SUFHRCxTQUFnQixRQUFRLElBQUksTUFBTSxDQUFDO0lBRzVCLElBQUksSUFBSSxFQUFFLENBRWhCO0lBRU0sY0FBYyxJQUFJLFlBQVksQ0FFcEM7SUFHTSxRQUFRLElBQUksTUFBTSxDQUV4QjtJQUVNLFFBQVEsSUFB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
275
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZtX21lbW9yeV90eXBlcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3B1YmxpYy9hdm0vYXZtX21lbW9yeV90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFVQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxFQUFFLEtBQUssTUFBTSxFQUFnQixNQUFNLHVCQUF1QixDQUFDO0FBQ2xFLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzNELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQU0zRCxzRUFBc0U7QUFDdEUsOEJBQXNCLFdBQVc7SUFDL0IsU0FBZ0IsR0FBRyxDQUFDLEdBQUcsRUFBRSxXQUFXLEdBQUcsV0FBVyxDQUFDO0lBQ25ELFNBQWdCLEdBQUcsQ0FBQyxHQUFHLEVBQUUsV0FBVyxHQUFHLFdBQVcsQ0FBQztJQUNuRCxTQUFnQixHQUFHLENBQUMsR0FBRyxFQUFFLFdBQVcsR0FBRyxXQUFXLENBQUM7SUFDbkQsU0FBZ0IsR0FBRyxDQUFDLEdBQUcsRUFBRSxXQUFXLEdBQUcsV0FBVyxDQUFDO0lBRW5ELFNBQWdCLE1BQU0sQ0FBQyxHQUFHLEVBQUUsV0FBVyxHQUFHLE9BQU8sQ0FBQztJQUNsRCxTQUFnQixFQUFFLENBQUMsR0FBRyxFQUFFLFdBQVcsR0FBRyxPQUFPLENBQUM7SUFHOUMsU0FBZ0IsS0FBSyxDQUFDLENBQUMsRUFBRSxNQUFNLEdBQUcsV0FBVyxDQUFDO0lBRzlDLFNBQWdCLFFBQVEsSUFBSSxNQUFNLENBQUM7SUFDNUIsTUFBTSxJQUFJLE9BQU8sQ0FFdkI7SUFHRCxTQUFnQixRQUFRLElBQUksTUFBTSxDQUFDO0lBRzVCLElBQUksSUFBSSxFQUFFLENBRWhCO0lBRU0sY0FBYyxJQUFJLFlBQVksQ0FFcEM7SUFHTSxRQUFRLElBQUksTUFBTSxDQUV4QjtJQUVNLFFBQVEsSUFBSSxNQUFNLENBRXhCO0NBQ0Y7QUFFRCxpRkFBaUY7QUFDakYsOEJBQXNCLGFBQWMsU0FBUSxXQUFXO0lBQ3JELFNBQWdCLEdBQUcsQ0FBQyxHQUFHLEVBQUUsYUFBYSxHQUFHLGFBQWEsQ0FBQztJQUN2RCxTQUFnQixHQUFHLENBQUMsR0FBRyxFQUFFLGFBQWEsR0FBRyxhQUFhLENBQUM7SUFDdkQsU0FBZ0IsR0FBRyxDQUFDLEdBQUcsRUFBRSxhQUFhLEdBQUcsYUFBYSxDQUFDO0lBQ3ZELFNBQWdCLEVBQUUsQ0FBQyxHQUFHLEVBQUUsYUFBYSxHQUFHLGFBQWEsQ0FBQztJQUN0RCxTQUFnQixHQUFHLENBQUMsR0FBRyxFQUFFLGFBQWEsR0FBRyxhQUFhLENBQUM7SUFDdkQsU0FBZ0IsR0FBRyxJQUFJLGFBQWEsQ0FBQztDQUN0Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFtR0QscUJBQWEsS0FBTSxTQUFRLFVBQThCO0NBQUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQzVELHFCQUFhLEtBQU0sU0FBUSxVQUE4QjtDQUFHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUM1RCxxQkFBYSxNQUFPLFNBQVEsV0FBK0I7Q0FBRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDOUQscUJBQWEsTUFBTyxTQUFRLFdBQStCO0NBQUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQzlELHFCQUFhLE1BQU8sU0FBUSxXQUErQjtDQUFHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUM5RCxxQkFBYSxPQUFRLFNBQVEsWUFBZ0M7Q0FBRztBQUVoRSxxQkFBYSxLQUFNLFNBQVEsV0FBVztJQUNwQyxnQkFBdUIsT0FBTyxFQUFFLE1BQU0sQ0FBYztJQUNwRCxPQUFPLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBSztJQUV6QixZQUFZLENBQUMsRUFBRSxNQUFNLEdBQUcsTUFBTSxHQUFHLEVBQUUsR0FBRyxNQUFNLEVBRzNDO0lBRU0sS0FBSyxDQUFDLENBQUMsRUFBRSxNQUFNLEdBQUcsS0FBSyxDQUU3QjtJQUVNLEdBQUcsQ0FBQyxHQUFHLEVBQUUsS0FBSyxHQUFHLEtBQUssQ0FFNUI7SUFFTSxHQUFHLENBQUMsR0FBRyxFQUFFLEtBQUssR0FBRyxLQUFLLENBRTVCO0lBRU0sR0FBRyxDQUFDLEdBQUcsRUFBRSxLQUFLLEdBQUcsS0FBSyxDQUU1QjtJQUdNLEdBQUcsQ0FBQyxHQUFHLEVBQUUsS0FBSyxHQUFHLEtBQUssQ0FFNUI7SUFHTSxJQUFJLENBQUMsR0FBRyxFQUFFLEtBQUssR0FBRyxLQUFLLENBRTdCO0lBRU0sTUFBTSxDQUFDLEdBQUcsRUFBRSxLQUFLLEdBQUcsT0FBTyxDQUVqQztJQUVNLEVBQUUsQ0FBQyxHQUFHLEVBQUUsS0FBSyxHQUFHLE9BQU8sQ0FFN0I7SUFFTSxRQUFRLElBQUksTUFBTSxDQUV4QjtJQUVNLFFBQVEsSUFBSSxNQUFNLENBRXhCO0NBQ0Y7QUFFRCxvQkFBWSxPQUFPO0lBQ2pCLEtBQUssSUFBYTtJQUNsQixLQUFLLElBQWE7SUFDbEIsS0FBSyxJQUFhO0lBQ2xCLE1BQU0sSUFBYztJQUNwQixNQUFNLElBQWM7SUFDcEIsTUFBTSxJQUFjO0lBQ3BCLE9BQU8sSUFBZTtJQUN0QixPQUFPLElBQW1CO0NBQzNCO0FBR0QsTUFBTSxNQUFNLHFCQUFxQixHQUFHLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQztBQUU5RCxxQkFBYSxZQUFhLFlBQVcscUJBQXFCO0lBQ3hELE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBd0M7SUFHbkUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxxQkFBcUIsVUFBbUM7SUFLeEUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxlQUFlLFNBQXFCO0lBQ3BELE9BQU8sQ0FBQyxJQUFJLENBQTJCO0lBRXZDLGNBRUM7SUFFTSxnQkFBZ0IsSUFBSSxNQUFNLENBRWhDO0lBRU0sR0FBRyxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsV0FBVyxDQUV0QztJQUVNLEtBQUssQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLE1BQU0sR0FBRyxDQUFDLENBU2pDO0lBRU0sUUFBUSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sR0FBRyxXQUFXLEVBQUUsQ0FlM0Q7SUFFTSxVQUFVLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FFdEQ7SUFFTSxZQUFZLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxHQUFHLE9BQU8sRUFBRSxDQUUzRDtJQUVNLEdBQUcsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxXQUFXLFFBSXhDO0lBRU0sUUFBUSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxRQVduRDtJQUVNLE1BQU0sQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FHckM7SUFFRDs7T0FFRztJQUNJLFFBQVEsQ0FBQyxHQUFHLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBSzNDO0lBRUQsT0FBYyx1QkFBdUIsQ0FBQyxHQUFHLEVBQUUsT0FBTyx5QkFFakQ7SUFFRCxPQUFjLGtCQUFrQixDQUFDLEdBQUcsRUFBRSxPQUFPLFFBSTVDO0lBRUQsT0FBYyxlQUFlLENBQUMsU0FBUyxFQUFFLE1BQU0sUUFJOUM7SUFFRDs7T0FFRztJQUNJLFNBQVMsQ0FBQyxHQUFHLEVBQUUsT0FBTyxFQUFFLEdBQUcsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUlsRDtJQUVEOztPQUVHO0lBQ0ksZ0JBQWdCLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsTUFBTSxRQUd2RDtJQUVEOztPQUVHO0lBQ0ksY0FBYyxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxRQUlwRTtJQUVELE9BQWMsTUFBTSxDQUFDLENBQUMsRUFBRSxXQUFXLEdBQUcsU0FBUyxHQUFHLE9BQU8sQ0FNeEQ7SUFHRCxPQUFjLHNCQUFzQixDQUFDLENBQUMsRUFBRSxNQUFNLEdBQUcsTUFBTSxFQUFFLEdBQUcsRUFBRSxPQUFPLEdBQUcsV0FBVyxDQW9CbEY7Q0FDRiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"avm_memory_types.d.ts","sourceRoot":"","sources":["../../../src/public/avm/avm_memory_types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"avm_memory_types.d.ts","sourceRoot":"","sources":["../../../src/public/avm/avm_memory_types.ts"],"names":[],"mappings":"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"}
@@ -268,9 +268,6 @@ export class TaggedMemory {
268
268
  /**
269
269
  * Check tags for all memory in the specified range.
270
270
  */ checkTagsRange(tag, startOffset, size) {
271
- if (startOffset + size > TaggedMemory.MAX_MEMORY_SIZE) {
272
- throw new MemorySliceOutOfRangeError(startOffset, size);
273
- }
274
271
  for(let offset = startOffset; offset < startOffset + size; offset++){
275
272
  this.checkTag(tag, offset);
276
273
  }
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3QuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wdWJsaWMvYXZtL29wY29kZXMvY29udHJhY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFHcEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUVwRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFL0Msb0JBQVksc0JBQXNCO0lBQ2hDLFFBQVEsSUFBQTtJQUNSLFFBQVEsSUFBQTtJQUNSLFNBQVMsSUFBQTtDQUNWO0FBRUQscUJBQWEsbUJBQW9CLFNBQVEsV0FBVztJQWFoRCxPQUFPLENBQUMsY0FBYztJQUN0QixPQUFPLENBQUMsYUFBYTtJQUNyQixPQUFPLENBQUMsU0FBUztJQUNqQixPQUFPLENBQUMsVUFBVTtJQWZwQixNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxNQUFNLENBQXlCO0lBQ3JELE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBOEI7SUFFNUQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsV0FBVyxFQUFFLENBTXZDO0lBRUYsWUFDVSxjQUFjLEVBQUUsTUFBTSxFQUN0QixhQUFhLEVBQUUsTUFBTSxFQUNyQixTQUFTLEVBQUUsTUFBTSxFQUNqQixVQUFVLEVBQUUsTUFBTSxFQUczQjtJQUVLLE9BQU8sQ0FBQyxPQUFPLEVBQUUsVUFBVSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FvQ2hEO0NBQ0YifQ==
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3QuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wdWJsaWMvYXZtL29wY29kZXMvY29udHJhY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFHcEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUVwRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFL0Msb0JBQVksc0JBQXNCO0lBQ2hDLFFBQVEsSUFBQTtJQUNSLFFBQVEsSUFBQTtJQUNSLFNBQVMsSUFBQTtDQUNWO0FBRUQscUJBQWEsbUJBQW9CLFNBQVEsV0FBVztJQWFoRCxPQUFPLENBQUMsY0FBYztJQUN0QixPQUFPLENBQUMsYUFBYTtJQUNyQixPQUFPLENBQUMsU0FBUztJQUNqQixPQUFPLENBQUMsVUFBVTtJQWZwQixNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxNQUFNLENBQXlCO0lBQ3JELE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBOEI7SUFFNUQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsV0FBVyxFQUFFLENBTXZDO0lBRUYsWUFDVSxjQUFjLEVBQUUsTUFBTSxFQUN0QixhQUFhLEVBQUUsTUFBTSxFQUNyQixTQUFTLEVBQUUsTUFBTSxFQUNqQixVQUFVLEVBQUUsTUFBTSxFQUczQjtJQUVLLE9BQU8sQ0FBQyxPQUFPLEVBQUUsVUFBVSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0F1Q2hEO0NBQ0YifQ==
@@ -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,CAoChD;CACF"}
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,CAuChD;CACF"}
@@ -57,9 +57,9 @@ export class GetContractInstance extends Instruction {
57
57
  break;
58
58
  }
59
59
  }
60
- memory.setSlice(dstOffset, [
61
- new Uint1(exists ? 1 : 0),
62
- memberValue
63
- ]);
60
+ const existsOffset = dstOffset;
61
+ const memberValueOffset = dstOffset + 1;
62
+ memory.set(existsOffset, new Uint1(exists ? 1 : 0));
63
+ memory.set(memberValueOffset, memberValue);
64
64
  }
65
65
  }
@@ -1,25 +1,24 @@
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
- export declare class SStore extends Instruction {
5
- private addressingMode;
6
- private srcOffset;
7
- private slotOffset;
4
+ declare abstract class BaseStorageInstruction extends Instruction {
5
+ protected addressingMode: number;
6
+ protected aOffset: number;
7
+ protected bOffset: number;
8
+ static readonly wireFormat: OperandType[];
9
+ constructor(addressingMode: number, aOffset: number, bOffset: number);
10
+ }
11
+ export declare class SStore extends BaseStorageInstruction {
8
12
  static readonly type: string;
9
13
  static readonly opcode = Opcode.SSTORE;
10
- static readonly wireFormat: OperandType[];
11
14
  constructor(addressingMode: number, srcOffset: number, slotOffset: number);
12
15
  execute(context: AvmContext): Promise<void>;
13
16
  }
14
- export declare class SLoad extends Instruction {
15
- private addressingMode;
16
- private slotOffset;
17
- private contractAddressOffset;
18
- private dstOffset;
17
+ export declare class SLoad extends BaseStorageInstruction {
19
18
  static readonly type: string;
20
19
  static readonly opcode = Opcode.SLOAD;
21
- static readonly wireFormat: OperandType[];
22
- constructor(addressingMode: number, slotOffset: number, contractAddressOffset: number, dstOffset: number);
20
+ constructor(addressingMode: number, slotOffset: number, dstOffset: number);
23
21
  execute(context: AvmContext): Promise<void>;
24
22
  }
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3B1YmxpYy9hdm0vb3Bjb2Rlcy9zdG9yYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBR3BELE9BQU8sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFFcEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRS9DLHFCQUFhLE1BQU8sU0FBUSxXQUFXO0lBWW5DLE9BQU8sQ0FBQyxjQUFjO0lBQ3RCLE9BQU8sQ0FBQyxTQUFTO0lBQ2pCLE9BQU8sQ0FBQyxVQUFVO0lBYnBCLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBWTtJQUN4QyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0saUJBQWlCO0lBRXZDLGdCQUF1QixVQUFVLEVBQUUsV0FBVyxFQUFFLENBSzlDO0lBRUYsWUFDVSxjQUFjLEVBQUUsTUFBTSxFQUN0QixTQUFTLEVBQUUsTUFBTSxFQUNqQixVQUFVLEVBQUUsTUFBTSxFQUczQjtJQUVZLE9BQU8sQ0FBQyxPQUFPLEVBQUUsVUFBVSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0EwQnZEO0NBQ0Y7QUFFRCxxQkFBYSxLQUFNLFNBQVEsV0FBVztJQWFsQyxPQUFPLENBQUMsY0FBYztJQUN0QixPQUFPLENBQUMsVUFBVTtJQUNsQixPQUFPLENBQUMscUJBQXFCO0lBQzdCLE9BQU8sQ0FBQyxTQUFTO0lBZm5CLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBVztJQUN2QyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sZ0JBQWdCO0lBRXRDLGdCQUF1QixVQUFVLEVBQUUsV0FBVyxFQUFFLENBTTlDO0lBRUYsWUFDVSxjQUFjLEVBQUUsTUFBTSxFQUN0QixVQUFVLEVBQUUsTUFBTSxFQUNsQixxQkFBcUIsRUFBRSxNQUFNLEVBQzdCLFNBQVMsRUFBRSxNQUFNLEVBRzFCO0lBRVksT0FBTyxDQUFDLE9BQU8sRUFBRSxVQUFVLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQWlCdkQ7Q0FDRiJ9
23
+ export {};
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3B1YmxpYy9hdm0vb3Bjb2Rlcy9zdG9yYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBR3BELE9BQU8sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFFcEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRS9DLHVCQUFlLHNCQUF1QixTQUFRLFdBQVc7SUFVckQsU0FBUyxDQUFDLGNBQWMsRUFBRSxNQUFNO0lBQ2hDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsTUFBTTtJQUN6QixTQUFTLENBQUMsT0FBTyxFQUFFLE1BQU07SUFWM0IsZ0JBQXVCLFVBQVUsRUFBRSxXQUFXLEVBQUUsQ0FLOUM7SUFFRixZQUNZLGNBQWMsRUFBRSxNQUFNLEVBQ3RCLE9BQU8sRUFBRSxNQUFNLEVBQ2YsT0FBTyxFQUFFLE1BQU0sRUFHMUI7Q0FDRjtBQUVELHFCQUFhLE1BQU8sU0FBUSxzQkFBc0I7SUFDaEQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFZO0lBQ3hDLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxpQkFBaUI7SUFFdkMsWUFBWSxjQUFjLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFFeEU7SUFFWSxPQUFPLENBQUMsT0FBTyxFQUFFLFVBQVUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBMEJ2RDtDQUNGO0FBRUQscUJBQWEsS0FBTSxTQUFRLHNCQUFzQjtJQUMvQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxNQUFNLENBQVc7SUFDdkMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLGdCQUFnQjtJQUV0QyxZQUFZLGNBQWMsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUV4RTtJQUVZLE9BQU8sQ0FBQyxPQUFPLEVBQUUsVUFBVSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FldkQ7Q0FDRiJ9
@@ -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,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"}
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,uBAAe,sBAAuB,SAAQ,WAAW;IAUrD,SAAS,CAAC,cAAc,EAAE,MAAM;IAChC,SAAS,CAAC,OAAO,EAAE,MAAM;IACzB,SAAS,CAAC,OAAO,EAAE,MAAM;IAV3B,gBAAuB,UAAU,EAAE,WAAW,EAAE,CAK9C;IAEF,YACY,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EAG1B;CACF;AAED,qBAAa,MAAO,SAAQ,sBAAsB;IAChD,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAY;IACxC,MAAM,CAAC,QAAQ,CAAC,MAAM,iBAAiB;IAEvC,YAAY,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAExE;IAEY,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CA0BvD;CACF;AAED,qBAAa,KAAM,SAAQ,sBAAsB;IAC/C,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAW;IACvC,MAAM,CAAC,QAAQ,CAAC,MAAM,gBAAgB;IAEtC,YAAY,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAExE;IAEY,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAevD;CACF"}
@@ -3,12 +3,10 @@ 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
- export class SStore extends Instruction {
6
+ class BaseStorageInstruction extends Instruction {
7
7
  addressingMode;
8
- srcOffset;
9
- slotOffset;
10
- static type = 'SSTORE';
11
- static opcode = Opcode.SSTORE;
8
+ aOffset;
9
+ bOffset;
12
10
  // Informs (de)serialization. See Instruction.deserialize.
13
11
  static wireFormat = [
14
12
  OperandType.UINT8,
@@ -16,8 +14,15 @@ export class SStore extends Instruction {
16
14
  OperandType.UINT16,
17
15
  OperandType.UINT16
18
16
  ];
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;
19
24
  constructor(addressingMode, srcOffset, slotOffset){
20
- super(), this.addressingMode = addressingMode, this.srcOffset = srcOffset, this.slotOffset = slotOffset;
25
+ super(addressingMode, srcOffset, slotOffset);
21
26
  }
22
27
  async execute(context) {
23
28
  if (context.environment.isStaticCall) {
@@ -27,8 +32,8 @@ export class SStore extends Instruction {
27
32
  const addressing = Addressing.fromWire(this.addressingMode);
28
33
  context.machineState.consumeGas(this.baseGasCost(addressing.indirectOperandsCount(), addressing.relativeOperandsCount()));
29
34
  const operands = [
30
- this.srcOffset,
31
- this.slotOffset
35
+ this.aOffset,
36
+ this.bOffset
32
37
  ];
33
38
  const [srcOffset, slotOffset] = addressing.resolve(operands, memory);
34
39
  // We read before tag checking since it's needed for gas cost calculation
@@ -40,39 +45,24 @@ export class SStore extends Instruction {
40
45
  await context.persistableState.writeStorage(context.environment.address, slot, value);
41
46
  }
42
47
  }
43
- export class SLoad extends Instruction {
44
- addressingMode;
45
- slotOffset;
46
- contractAddressOffset;
47
- dstOffset;
48
+ export class SLoad extends BaseStorageInstruction {
48
49
  static type = 'SLOAD';
49
50
  static opcode = Opcode.SLOAD;
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;
51
+ constructor(addressingMode, slotOffset, dstOffset){
52
+ super(addressingMode, slotOffset, dstOffset);
60
53
  }
61
54
  async execute(context) {
62
55
  const memory = context.machineState.memory;
63
56
  const addressing = Addressing.fromWire(this.addressingMode);
64
57
  context.machineState.consumeGas(this.baseGasCost(addressing.indirectOperandsCount(), addressing.relativeOperandsCount()));
65
58
  const operands = [
66
- this.slotOffset,
67
- this.contractAddressOffset,
68
- this.dstOffset
59
+ this.aOffset,
60
+ this.bOffset
69
61
  ];
70
- const [slotOffset, contractAddressOffset, dstOffset] = addressing.resolve(operands, memory);
62
+ const [slotOffset, dstOffset] = addressing.resolve(operands, memory);
71
63
  memory.checkTag(TypeTag.FIELD, slotOffset);
72
- memory.checkTag(TypeTag.FIELD, contractAddressOffset);
73
64
  const slot = memory.get(slotOffset).toFr();
74
- const contractAddress = memory.get(contractAddressOffset).toAztecAddress();
75
- const value = await context.persistableState.readStorage(contractAddress, slot);
65
+ const value = await context.persistableState.readStorage(context.environment.address, slot);
76
66
  memory.set(dstOffset, new Field(value));
77
67
  }
78
68
  }
@@ -120,4 +120,4 @@ export declare function createOpcodeSpamBytecode(config: SpamConfig): Buffer;
120
120
  export declare function createSideEffectSpamBytecode(config: SpamConfig): Buffer;
121
121
  export declare function testOpcodeSpamCase(tester: PublicTxSimulationTester, config: SpamConfig, expectToBeTrue?: (x: boolean) => void): Promise<PublicTxResult>;
122
122
  export {};
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3Bjb2RlX3NwYW1tZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wdWJsaWMvZml4dHVyZXMvb3Bjb2RlX3NwYW1tZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBa0tBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM5RCxPQUFPLEVBQTJDLEtBQUssY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTNELE9BQU8sS0FBSyxFQUFFLHlCQUF5QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFLakYsT0FBTyxFQUFTLEtBQUssV0FBVyxFQUFnRCxNQUFNLDRCQUE0QixDQUFDO0FBa0RuSCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFFM0UsT0FBTyxLQUFLLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQU1qRjs7R0FFRztBQUNILFVBQVUsUUFBUTtJQUNoQixNQUFNLEVBQUUsTUFBTSxDQUFDO0lBQ2YsS0FBSyxFQUFFLFdBQVcsQ0FBQztDQUNwQjtBQUVEOzs7R0FHRztBQUNILEtBQUssU0FBUyxHQUFHLFFBQVEsR0FBRyxDQUFDLE1BQU0sVUFBVSxFQUFFLENBQUMsQ0FBQztBQUVqRDs7R0FFRztBQUNILE1BQU0sV0FBVyxVQUFVO0lBQ3pCLGlDQUFpQztJQUNqQyxLQUFLLEVBQUUsU0FBUyxFQUFFLENBQUM7SUFFbkIsc0RBQXNEO0lBQ3RELGtCQUFrQixFQUFFLE1BQU0sVUFBVSxFQUFFLENBQUM7SUFFdkMsMkRBQTJEO0lBQzNELG1CQUFtQixDQUFDLEVBQUUsTUFBTSxVQUFVLEVBQUUsQ0FBQztJQUV6Qzs7Ozs7OztPQU9HO0lBQ0gsS0FBSyxDQUFDLEVBQUUsTUFBTSxDQUFDO0lBRWYsc0VBQXNFO0lBQ3RFLEtBQUssQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUVmLDBEQUEwRDtJQUMxRCxpQkFBaUIsQ0FBQyxFQUFFLE9BQU8sQ0FBQztDQUM3QjtBQUVEOzs7R0FHRztBQUNILE1BQU0sV0FBVyxvQkFBb0I7SUFDbkMsa0NBQWtDO0lBQ2xDLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFFZixxREFBcUQ7SUFDckQsT0FBTyxFQUFFLFVBQVUsRUFBRSxDQUFDO0NBQ3ZCO0FBTUQ7OztHQUdHO0FBQ0gsZUFBTyxNQUFNLGNBQWMsSUFBc0IsQ0FBQztBQUNsRCxlQUFPLE1BQU0saUJBQWlCLElBQThCLENBQUM7QUFFN0QsdUdBQXVHO0FBQ3ZHLGVBQU8sTUFBTSxjQUFjLElBQTBCLENBQUM7QUFDdEQsZUFBTyxNQUFNLHNCQUFzQixjQUFrQyxDQUFDO0FBRXRFLHVGQUF1RjtBQUN2RixlQUFPLE1BQU0saUJBQWlCLElBQTBCLENBQUM7QUFDekQsZUFBTyxNQUFNLGtCQUFrQixJQUEwQixDQUFDO0FBRTFEOzs7O0dBSUc7QUFDSCxlQUFPLE1BQU0seUJBQXlCLEtBQUssQ0FBQztBQUM1QyxlQUFPLE1BQU0sNEJBQTRCLEtBQUssQ0FBQztBQUUvQzs7Ozs7Ozs7O0dBU0c7QUFDSCx3QkFBc0IscUJBQXFCLENBQ3pDLFdBQVcsRUFBRSx5QkFBeUIsRUFDdEMsZUFBZSxFQUFFLFlBQVksR0FDNUIsT0FBTyxDQUFDLElBQUksQ0FBQyxDQWVmO0FBbUdEOztHQUVHO0FBQ0gsZUFBTyxNQUFNLG9CQUFvQixFQUFFLFVBMEJsQyxDQUFDO0FBa0NGOzs7O0dBSUc7QUFDSCxlQUFPLE1BQU0sWUFBWSxFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBeStCOUQsQ0FBQztBQUVGOzs7Ozs7Ozs7OztHQVdHO0FBQ0gsd0JBQWdCLHVCQUF1QixDQUFDLG1CQUFtQixHQUFFLE1BQWlCLEdBQUcsb0JBQW9CLEVBQUUsQ0FzQnRHO0FBNEZEOzs7R0FHRztBQUNILHdCQUFnQix3QkFBd0IsQ0FBQyxNQUFNLEVBQUUsVUFBVSxHQUFHLE1BQU0sQ0FlbkU7QUFFRDs7Ozs7O0dBTUc7QUFDSCx3QkFBZ0IsNEJBQTRCLENBQUMsTUFBTSxFQUFFLFVBQVUsR0FBRyxNQUFNLENBbUJ2RTtBQTRERCx3QkFBc0Isa0JBQWtCLENBQ3RDLE1BQU0sRUFBRSx3QkFBd0IsRUFDaEMsTUFBTSxFQUFFLFVBQVUsRUFDbEIsY0FBYyxHQUFFLENBQUMsQ0FBQyxFQUFFLE9BQU8sS0FBSyxJQUFlLEdBQzlDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FLekIifQ==
123
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3Bjb2RlX3NwYW1tZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wdWJsaWMvZml4dHVyZXMvb3Bjb2RlX3NwYW1tZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBa0tBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM5RCxPQUFPLEVBQTJDLEtBQUssY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTNELE9BQU8sS0FBSyxFQUFFLHlCQUF5QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFLakYsT0FBTyxFQUFTLEtBQUssV0FBVyxFQUFnRCxNQUFNLDRCQUE0QixDQUFDO0FBa0RuSCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFFM0UsT0FBTyxLQUFLLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQU1qRjs7R0FFRztBQUNILFVBQVUsUUFBUTtJQUNoQixNQUFNLEVBQUUsTUFBTSxDQUFDO0lBQ2YsS0FBSyxFQUFFLFdBQVcsQ0FBQztDQUNwQjtBQUVEOzs7R0FHRztBQUNILEtBQUssU0FBUyxHQUFHLFFBQVEsR0FBRyxDQUFDLE1BQU0sVUFBVSxFQUFFLENBQUMsQ0FBQztBQUVqRDs7R0FFRztBQUNILE1BQU0sV0FBVyxVQUFVO0lBQ3pCLGlDQUFpQztJQUNqQyxLQUFLLEVBQUUsU0FBUyxFQUFFLENBQUM7SUFFbkIsc0RBQXNEO0lBQ3RELGtCQUFrQixFQUFFLE1BQU0sVUFBVSxFQUFFLENBQUM7SUFFdkMsMkRBQTJEO0lBQzNELG1CQUFtQixDQUFDLEVBQUUsTUFBTSxVQUFVLEVBQUUsQ0FBQztJQUV6Qzs7Ozs7OztPQU9HO0lBQ0gsS0FBSyxDQUFDLEVBQUUsTUFBTSxDQUFDO0lBRWYsc0VBQXNFO0lBQ3RFLEtBQUssQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUVmLDBEQUEwRDtJQUMxRCxpQkFBaUIsQ0FBQyxFQUFFLE9BQU8sQ0FBQztDQUM3QjtBQUVEOzs7R0FHRztBQUNILE1BQU0sV0FBVyxvQkFBb0I7SUFDbkMsa0NBQWtDO0lBQ2xDLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFFZixxREFBcUQ7SUFDckQsT0FBTyxFQUFFLFVBQVUsRUFBRSxDQUFDO0NBQ3ZCO0FBTUQ7OztHQUdHO0FBQ0gsZUFBTyxNQUFNLGNBQWMsSUFBc0IsQ0FBQztBQUNsRCxlQUFPLE1BQU0saUJBQWlCLElBQThCLENBQUM7QUFFN0QsdUdBQXVHO0FBQ3ZHLGVBQU8sTUFBTSxjQUFjLElBQTBCLENBQUM7QUFDdEQsZUFBTyxNQUFNLHNCQUFzQixjQUFrQyxDQUFDO0FBRXRFLHVGQUF1RjtBQUN2RixlQUFPLE1BQU0saUJBQWlCLElBQTBCLENBQUM7QUFDekQsZUFBTyxNQUFNLGtCQUFrQixJQUEwQixDQUFDO0FBRTFEOzs7O0dBSUc7QUFDSCxlQUFPLE1BQU0seUJBQXlCLEtBQUssQ0FBQztBQUM1QyxlQUFPLE1BQU0sNEJBQTRCLEtBQUssQ0FBQztBQUUvQzs7Ozs7Ozs7O0dBU0c7QUFDSCx3QkFBc0IscUJBQXFCLENBQ3pDLFdBQVcsRUFBRSx5QkFBeUIsRUFDdEMsZUFBZSxFQUFFLFlBQVksR0FDNUIsT0FBTyxDQUFDLElBQUksQ0FBQyxDQWVmO0FBbUdEOztHQUVHO0FBQ0gsZUFBTyxNQUFNLG9CQUFvQixFQUFFLFVBMEJsQyxDQUFDO0FBa0NGOzs7O0dBSUc7QUFDSCxlQUFPLE1BQU0sWUFBWSxFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBNDhCOUQsQ0FBQztBQUVGOzs7Ozs7Ozs7OztHQVdHO0FBQ0gsd0JBQWdCLHVCQUF1QixDQUFDLG1CQUFtQixHQUFFLE1BQWlCLEdBQUcsb0JBQW9CLEVBQUUsQ0FzQnRHO0FBNEZEOzs7R0FHRztBQUNILHdCQUFnQix3QkFBd0IsQ0FBQyxNQUFNLEVBQUUsVUFBVSxHQUFHLE1BQU0sQ0FlbkU7QUFFRDs7Ozs7O0dBTUc7QUFDSCx3QkFBZ0IsNEJBQTRCLENBQUMsTUFBTSxFQUFFLFVBQVUsR0FBRyxNQUFNLENBbUJ2RTtBQTRERCx3QkFBc0Isa0JBQWtCLENBQ3RDLE1BQU0sRUFBRSx3QkFBd0IsRUFDaEMsTUFBTSxFQUFFLFVBQVUsRUFDbEIsY0FBYyxHQUFFLENBQUMsQ0FBQyxFQUFFLE9BQU8sS0FBSyxJQUFlLEdBQzlDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FLekIifQ==
@@ -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,uGAAuG;AACvG,eAAO,MAAM,cAAc,IAA0B,CAAC;AACtD,eAAO,MAAM,sBAAsB,cAAkC,CAAC;AAEtE,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,CAef;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,CAy+B9D,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"}
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,uGAAuG;AACvG,eAAO,MAAM,cAAc,IAA0B,CAAC;AACtD,eAAO,MAAM,sBAAsB,cAAkC,CAAC;AAEtE,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,CAef;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,CA48B9D,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"}
@@ -897,14 +897,10 @@ const STATIC_CALL_CONFIG = {
897
897
  {
898
898
  offset: 0,
899
899
  value: new Field(Fr.random())
900
- },
901
- ()=>[
902
- // Get current contract address into offset 1
903
- new GetEnvVar(/*addressing_mode=*/ 0, /*dstOffset=*/ 1, /*varEnum=*/ 0).as(Opcode.GETENVVAR_16, GetEnvVar.wireFormat16)
904
- ]
900
+ }
905
901
  ],
906
902
  targetInstructions: ()=>[
907
- new SLoad(/*addressing_mode=*/ 0, /*slotOffset=*/ 0, /*contractAddressOffset=*/ 1, /*dstOffset=*/ 2)
903
+ new SLoad(/*addressing_mode=*/ 0, /*slotOffset=*/ 0, /*dstOffset=*/ 1)
908
904
  ]
909
905
  },
910
906
  {
@@ -914,19 +910,15 @@ const STATIC_CALL_CONFIG = {
914
910
  {
915
911
  offset: 0,
916
912
  value: new Field(WARM_STORAGE_SLOT)
917
- },
918
- ()=>[
919
- // Get current contract address into offset 1
920
- new GetEnvVar(/*addressing_mode=*/ 0, /*dstOffset=*/ 1, /*varEnum=*/ 0).as(Opcode.GETENVVAR_16, GetEnvVar.wireFormat16)
921
- ]
913
+ }
922
914
  ],
923
915
  targetInstructions: ()=>[
924
- new SLoad(/*addressing_mode=*/ 0, /*slotOffset=*/ 0, /*contractAddressOffset=*/ 1, /*dstOffset=*/ 2)
916
+ new SLoad(/*addressing_mode=*/ 0, /*slotOffset=*/ 0, /*dstOffset=*/ 1)
925
917
  ]
926
918
  },
927
919
  {
928
920
  label: 'Warm read (SSTORE first, unique slot per SLOAD)',
929
- // Memory layout: slot (incremented), value, constant 1, contract address (from GETENVVAR), revertSize, loaded value
921
+ // Memory layout: slot (incremented), value, constant 1, revertSize, loaded value
930
922
  setup: [
931
923
  {
932
924
  offset: 0,
@@ -940,22 +932,18 @@ const STATIC_CALL_CONFIG = {
940
932
  offset: 2,
941
933
  value: new Field(1n)
942
934
  },
943
- ()=>[
944
- // Get current contract address into offset 3
945
- new GetEnvVar(/*addressing_mode=*/ 0, /*dstOffset=*/ 3, /*varEnum=*/ 0).as(Opcode.GETENVVAR_16, GetEnvVar.wireFormat16)
946
- ],
947
935
  {
948
- offset: 4,
936
+ offset: 3,
949
937
  value: new Uint32(0n)
950
938
  }
951
939
  ],
952
940
  targetInstructions: ()=>[
953
941
  new SStore(/*addressing_mode=*/ 0, /*srcOffset=*/ 1, /*slotOffset=*/ 0),
954
- new SLoad(/*addressing_mode=*/ 0, /*slotOffset=*/ 0, /*contractAddressOffset=*/ 3, /*dstOffset=*/ 5),
942
+ new SLoad(/*addressing_mode=*/ 0, /*slotOffset=*/ 0, /*dstOffset=*/ 4),
955
943
  new Add(/*addressing_mode=*/ 0, /*aOffset=*/ 0, /*bOffset=*/ 2, /*dstOffset=*/ 0).as(Opcode.ADD_8, Add.wireFormat8)
956
944
  ],
957
945
  cleanupInstructions: ()=>[
958
- new Revert(/*addressing_mode=*/ 0, /*retSizeOffset=*/ 4, /*returnOffset=*/ 0).as(Opcode.REVERT_8, Revert.wireFormat8)
946
+ new Revert(/*addressing_mode=*/ 0, /*retSizeOffset=*/ 3, /*returnOffset=*/ 0).as(Opcode.REVERT_8, Revert.wireFormat8)
959
947
  ],
960
948
  limit: MAX_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX
961
949
  }
@@ -1,5 +1,5 @@
1
1
  import { EthAddress } from '@aztec/foundation/eth-address';
2
- import { PublicTxEffect, deserializeFromMessagePack, serializeWithMessagePack } from '@aztec/stdlib/avm';
2
+ import { deserializeFromMessagePack, serializeWithMessagePack } from '@aztec/stdlib/avm';
3
3
  import { TreeSnapshots } from '@aztec/stdlib/tx';
4
4
  import { NativeWorldStateService } from '@aztec/world-state';
5
5
  import { createInterface } from 'readline';
@@ -54,8 +54,7 @@ async function simulateWithFuzzer(dataDir, mapSizeKb, txHint, globals, rawContra
54
54
  reverted: !result.revertCode.isOK(),
55
55
  output,
56
56
  revertReason: result.findRevertReason()?.message,
57
- publicInputs: result.publicInputs,
58
- publicTxEffect: result.publicTxEffect
57
+ publicInputs: result.publicInputs
59
58
  };
60
59
  }
61
60
  async function execute(base64Line) {
@@ -71,8 +70,7 @@ async function execute(base64Line) {
71
70
  reverted: result.reverted,
72
71
  output: result.output,
73
72
  revertReason: result.revertReason ?? '',
74
- endTreeSnapshots: result.publicInputs.endTreeSnapshots,
75
- publicTxEffect: result.publicTxEffect
73
+ endTreeSnapshots: result.publicInputs.endTreeSnapshots
76
74
  });
77
75
  const base64Response = resultBuffer.toString('base64') + '\n';
78
76
  await writeOutput(base64Response);
@@ -82,8 +80,7 @@ async function execute(base64Line) {
82
80
  reverted: true,
83
81
  output: [],
84
82
  revertReason: `Unexpected Error ${error.message}`,
85
- endTreeSnapshots: TreeSnapshots.empty(),
86
- publicTxEffect: PublicTxEffect.empty()
83
+ endTreeSnapshots: TreeSnapshots.empty()
87
84
  });
88
85
  await writeOutput(errorResult.toString('base64') + '\n');
89
86
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/simulator",
3
- "version": "0.0.1-commit.d1f2d6c",
3
+ "version": "0.0.1-commit.d431d1c",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  "./server": "./dest/server.js",
@@ -64,26 +64,26 @@
64
64
  ]
65
65
  },
66
66
  "dependencies": {
67
- "@aztec/constants": "0.0.1-commit.d1f2d6c",
68
- "@aztec/foundation": "0.0.1-commit.d1f2d6c",
69
- "@aztec/native": "0.0.1-commit.d1f2d6c",
70
- "@aztec/noir-acvm_js": "0.0.1-commit.d1f2d6c",
71
- "@aztec/noir-noirc_abi": "0.0.1-commit.d1f2d6c",
72
- "@aztec/noir-protocol-circuits-types": "0.0.1-commit.d1f2d6c",
73
- "@aztec/noir-types": "0.0.1-commit.d1f2d6c",
74
- "@aztec/protocol-contracts": "0.0.1-commit.d1f2d6c",
75
- "@aztec/stdlib": "0.0.1-commit.d1f2d6c",
76
- "@aztec/telemetry-client": "0.0.1-commit.d1f2d6c",
77
- "@aztec/world-state": "0.0.1-commit.d1f2d6c",
67
+ "@aztec/constants": "0.0.1-commit.d431d1c",
68
+ "@aztec/foundation": "0.0.1-commit.d431d1c",
69
+ "@aztec/native": "0.0.1-commit.d431d1c",
70
+ "@aztec/noir-acvm_js": "0.0.1-commit.d431d1c",
71
+ "@aztec/noir-noirc_abi": "0.0.1-commit.d431d1c",
72
+ "@aztec/noir-protocol-circuits-types": "0.0.1-commit.d431d1c",
73
+ "@aztec/noir-types": "0.0.1-commit.d431d1c",
74
+ "@aztec/protocol-contracts": "0.0.1-commit.d431d1c",
75
+ "@aztec/stdlib": "0.0.1-commit.d431d1c",
76
+ "@aztec/telemetry-client": "0.0.1-commit.d431d1c",
77
+ "@aztec/world-state": "0.0.1-commit.d431d1c",
78
78
  "lodash.clonedeep": "^4.5.0",
79
79
  "lodash.merge": "^4.6.2",
80
80
  "tslib": "^2.4.0"
81
81
  },
82
82
  "devDependencies": {
83
- "@aztec/kv-store": "0.0.1-commit.d1f2d6c",
84
- "@aztec/merkle-tree": "0.0.1-commit.d1f2d6c",
85
- "@aztec/noir-contracts.js": "0.0.1-commit.d1f2d6c",
86
- "@aztec/noir-test-contracts.js": "0.0.1-commit.d1f2d6c",
83
+ "@aztec/kv-store": "0.0.1-commit.d431d1c",
84
+ "@aztec/merkle-tree": "0.0.1-commit.d431d1c",
85
+ "@aztec/noir-contracts.js": "0.0.1-commit.d431d1c",
86
+ "@aztec/noir-test-contracts.js": "0.0.1-commit.d431d1c",
87
87
  "@jest/globals": "^30.0.0",
88
88
  "@types/jest": "^30.0.0",
89
89
  "@types/lodash.clonedeep": "^4.5.7",
@@ -369,10 +369,6 @@ export class TaggedMemory implements TaggedMemoryInterface {
369
369
  * Check tags for all memory in the specified range.
370
370
  */
371
371
  public checkTagsRange(tag: TypeTag, startOffset: number, size: number) {
372
- if (startOffset + size > TaggedMemory.MAX_MEMORY_SIZE) {
373
- throw new MemorySliceOutOfRangeError(startOffset, size);
374
- }
375
-
376
372
  for (let offset = startOffset; offset < startOffset + size; offset++) {
377
373
  this.checkTag(tag, offset);
378
374
  }
@@ -67,6 +67,9 @@ export class GetContractInstance extends Instruction {
67
67
  }
68
68
  }
69
69
 
70
- memory.setSlice(dstOffset, [new Uint1(exists ? 1 : 0), memberValue]);
70
+ const existsOffset = dstOffset;
71
+ const memberValueOffset = dstOffset + 1;
72
+ memory.set(existsOffset, new Uint1(exists ? 1 : 0));
73
+ memory.set(memberValueOffset, memberValue);
71
74
  }
72
75
  }
@@ -5,9 +5,7 @@ import { Opcode, OperandType } from '../serialization/instruction_serialization.
5
5
  import { Addressing } from './addressing_mode.js';
6
6
  import { Instruction } from './instruction.js';
7
7
 
8
- export class SStore extends Instruction {
9
- static readonly type: string = 'SSTORE';
10
- static readonly opcode = Opcode.SSTORE;
8
+ abstract class BaseStorageInstruction extends Instruction {
11
9
  // Informs (de)serialization. See Instruction.deserialize.
12
10
  public static readonly wireFormat: OperandType[] = [
13
11
  OperandType.UINT8,
@@ -17,12 +15,21 @@ export class SStore extends Instruction {
17
15
  ];
18
16
 
19
17
  constructor(
20
- private addressingMode: number,
21
- private srcOffset: number,
22
- private slotOffset: number,
18
+ protected addressingMode: number,
19
+ protected aOffset: number,
20
+ protected bOffset: number,
23
21
  ) {
24
22
  super();
25
23
  }
24
+ }
25
+
26
+ export class SStore extends BaseStorageInstruction {
27
+ static readonly type: string = 'SSTORE';
28
+ static readonly opcode = Opcode.SSTORE;
29
+
30
+ constructor(addressingMode: number, srcOffset: number, slotOffset: number) {
31
+ super(addressingMode, srcOffset, slotOffset);
32
+ }
26
33
 
27
34
  public async execute(context: AvmContext): Promise<void> {
28
35
  if (context.environment.isStaticCall) {
@@ -36,7 +43,7 @@ export class SStore extends Instruction {
36
43
  this.baseGasCost(addressing.indirectOperandsCount(), addressing.relativeOperandsCount()),
37
44
  );
38
45
 
39
- const operands = [this.srcOffset, this.slotOffset];
46
+ const operands = [this.aOffset, this.bOffset];
40
47
  const [srcOffset, slotOffset] = addressing.resolve(operands, memory);
41
48
  // We read before tag checking since it's needed for gas cost calculation
42
49
  const slot = memory.get(slotOffset).toFr();
@@ -53,25 +60,12 @@ export class SStore extends Instruction {
53
60
  }
54
61
  }
55
62
 
56
- export class SLoad extends Instruction {
63
+ export class SLoad extends BaseStorageInstruction {
57
64
  static readonly type: string = 'SLOAD';
58
65
  static readonly opcode = Opcode.SLOAD;
59
- // Informs (de)serialization. See Instruction.deserialize.
60
- public static readonly wireFormat: OperandType[] = [
61
- OperandType.UINT8,
62
- OperandType.UINT8,
63
- OperandType.UINT16,
64
- OperandType.UINT16,
65
- OperandType.UINT16,
66
- ];
67
66
 
68
- constructor(
69
- private addressingMode: number,
70
- private slotOffset: number,
71
- private contractAddressOffset: number,
72
- private dstOffset: number,
73
- ) {
74
- super();
67
+ constructor(addressingMode: number, slotOffset: number, dstOffset: number) {
68
+ super(addressingMode, slotOffset, dstOffset);
75
69
  }
76
70
 
77
71
  public async execute(context: AvmContext): Promise<void> {
@@ -82,14 +76,12 @@ export class SLoad extends Instruction {
82
76
  this.baseGasCost(addressing.indirectOperandsCount(), addressing.relativeOperandsCount()),
83
77
  );
84
78
 
85
- const operands = [this.slotOffset, this.contractAddressOffset, this.dstOffset];
86
- const [slotOffset, contractAddressOffset, dstOffset] = addressing.resolve(operands, memory);
79
+ const operands = [this.aOffset, this.bOffset];
80
+ const [slotOffset, dstOffset] = addressing.resolve(operands, memory);
87
81
  memory.checkTag(TypeTag.FIELD, slotOffset);
88
- memory.checkTag(TypeTag.FIELD, contractAddressOffset);
89
82
 
90
83
  const slot = memory.get(slotOffset).toFr();
91
- const contractAddress = memory.get(contractAddressOffset).toAztecAddress();
92
- const value = await context.persistableState.readStorage(contractAddress, slot);
84
+ const value = await context.persistableState.readStorage(context.environment.address, slot);
93
85
  memory.set(dstOffset, new Field(value));
94
86
  }
95
87
  }
@@ -966,63 +966,34 @@ export const SPAM_CONFIGS: Partial<Record<Opcode, SpamConfig[]>> = {
966
966
  [Opcode.SLOAD]: [
967
967
  {
968
968
  label: 'Cold read (slot not written)',
969
- setup: [
970
- { offset: 0, value: new Field(Fr.random()) }, // random slot
971
- () => [
972
- // Get current contract address into offset 1
973
- new GetEnvVar(/*addressing_mode=*/ 0, /*dstOffset=*/ 1, /*varEnum=*/ 0).as(
974
- Opcode.GETENVVAR_16,
975
- GetEnvVar.wireFormat16,
976
- ),
977
- ],
978
- ],
979
- targetInstructions: () => [
980
- new SLoad(/*addressing_mode=*/ 0, /*slotOffset=*/ 0, /*contractAddressOffset=*/ 1, /*dstOffset=*/ 2),
981
- ],
969
+ setup: [{ offset: 0, value: new Field(Fr.random()) }], // random slot
970
+ targetInstructions: () => [new SLoad(/*addressing_mode=*/ 0, /*slotOffset=*/ 0, /*dstOffset=*/ 1)],
982
971
  },
983
972
  {
984
973
  label: 'Warm read (from tree)',
985
974
  // Uses pre-inserted storage from insertWarmTreeEntries() which is called after contract deployment
986
- setup: [
987
- { offset: 0, value: new Field(WARM_STORAGE_SLOT) }, // pre-inserted slot
988
- () => [
989
- // Get current contract address into offset 1
990
- new GetEnvVar(/*addressing_mode=*/ 0, /*dstOffset=*/ 1, /*varEnum=*/ 0).as(
991
- Opcode.GETENVVAR_16,
992
- GetEnvVar.wireFormat16,
993
- ),
994
- ],
995
- ],
996
- targetInstructions: () => [
997
- new SLoad(/*addressing_mode=*/ 0, /*slotOffset=*/ 0, /*contractAddressOffset=*/ 1, /*dstOffset=*/ 2),
998
- ],
975
+ setup: [{ offset: 0, value: new Field(WARM_STORAGE_SLOT) }], // pre-inserted slot
976
+ targetInstructions: () => [new SLoad(/*addressing_mode=*/ 0, /*slotOffset=*/ 0, /*dstOffset=*/ 1)],
999
977
  },
1000
978
  {
1001
979
  label: 'Warm read (SSTORE first, unique slot per SLOAD)',
1002
- // Memory layout: slot (incremented), value, constant 1, contract address (from GETENVVAR), revertSize, loaded value
980
+ // Memory layout: slot (incremented), value, constant 1, revertSize, loaded value
1003
981
  setup: [
1004
982
  { offset: 0, value: new Field(Fr.random()) }, // slot (will be incremented)
1005
983
  { offset: 1, value: new Field(Fr.random()) }, // value to store
1006
984
  { offset: 2, value: new Field(1n) }, // constant 1 for ADD
1007
- () => [
1008
- // Get current contract address into offset 3
1009
- new GetEnvVar(/*addressing_mode=*/ 0, /*dstOffset=*/ 3, /*varEnum=*/ 0).as(
1010
- Opcode.GETENVVAR_16,
1011
- GetEnvVar.wireFormat16,
1012
- ),
1013
- ],
1014
- { offset: 4, value: new Uint32(0n) }, // revertSize
985
+ { offset: 3, value: new Uint32(0n) }, // revertSize
1015
986
  ],
1016
987
  targetInstructions: () => [
1017
988
  new SStore(/*addressing_mode=*/ 0, /*srcOffset=*/ 1, /*slotOffset=*/ 0),
1018
- new SLoad(/*addressing_mode=*/ 0, /*slotOffset=*/ 0, /*contractAddressOffset=*/ 3, /*dstOffset=*/ 5),
989
+ new SLoad(/*addressing_mode=*/ 0, /*slotOffset=*/ 0, /*dstOffset=*/ 4),
1019
990
  new Add(/*addressing_mode=*/ 0, /*aOffset=*/ 0, /*bOffset=*/ 2, /*dstOffset=*/ 0).as(
1020
991
  Opcode.ADD_8,
1021
992
  Add.wireFormat8,
1022
993
  ), // slot++
1023
994
  ],
1024
995
  cleanupInstructions: () => [
1025
- new Revert(/*addressing_mode=*/ 0, /*retSizeOffset=*/ 4, /*returnOffset=*/ 0).as(
996
+ new Revert(/*addressing_mode=*/ 0, /*retSizeOffset=*/ 3, /*returnOffset=*/ 0).as(
1026
997
  Opcode.REVERT_8,
1027
998
  Revert.wireFormat8,
1028
999
  ),
@@ -3,7 +3,6 @@ import { EthAddress } from '@aztec/foundation/eth-address';
3
3
  import {
4
4
  AvmCircuitPublicInputs,
5
5
  type AvmTxHint,
6
- PublicTxEffect,
7
6
  deserializeFromMessagePack,
8
7
  serializeWithMessagePack,
9
8
  } from '@aztec/stdlib/avm';
@@ -59,13 +58,7 @@ async function simulateWithFuzzer(
59
58
  rawPublicDataWrites: any[], // Public data tree writes to apply before simulation
60
59
  rawNoteHashes: any[], // Note hashes to apply before simulation
61
60
  protocolContracts: ProtocolContracts, // Protocol contracts mapping from C++
62
- ): Promise<{
63
- reverted: boolean;
64
- output: Fr[];
65
- revertReason?: string;
66
- publicInputs: AvmCircuitPublicInputs;
67
- publicTxEffect: PublicTxEffect;
68
- }> {
61
+ ): Promise<{ reverted: boolean; output: Fr[]; revertReason?: string; publicInputs: AvmCircuitPublicInputs }> {
69
62
  const worldStateService = await openExistingWorldState(dataDir, mapSizeKb);
70
63
 
71
64
  const simulator = await AvmFuzzerSimulator.create(worldStateService, globals, protocolContracts);
@@ -97,7 +90,6 @@ async function simulateWithFuzzer(
97
90
  output,
98
91
  revertReason: result.findRevertReason()?.message,
99
92
  publicInputs: result.publicInputs!,
100
- publicTxEffect: result.publicTxEffect,
101
93
  };
102
94
  }
103
95
 
@@ -127,7 +119,6 @@ async function execute(base64Line: string): Promise<void> {
127
119
  output: result.output,
128
120
  revertReason: result.revertReason ?? '',
129
121
  endTreeSnapshots: result.publicInputs.endTreeSnapshots,
130
- publicTxEffect: result.publicTxEffect,
131
122
  });
132
123
  const base64Response = resultBuffer.toString('base64') + '\n';
133
124
  await writeOutput(base64Response);
@@ -138,7 +129,6 @@ async function execute(base64Line: string): Promise<void> {
138
129
  output: [] as Fr[],
139
130
  revertReason: `Unexpected Error ${error.message}`,
140
131
  endTreeSnapshots: TreeSnapshots.empty(),
141
- publicTxEffect: PublicTxEffect.empty(),
142
132
  });
143
133
  await writeOutput(errorResult.toString('base64') + '\n');
144
134
  }