@fluffylabs/anan-as 1.2.0 → 1.3.0-0eb791a

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.
Files changed (110) hide show
  1. package/dist/bin/index.js +138 -5
  2. package/dist/bin/src/fuzz.js +2 -2
  3. package/dist/bin/src/test-json.js +2 -6
  4. package/dist/bin/src/trace-parse.js +1 -0
  5. package/dist/bin/src/trace-replay.js +14 -9
  6. package/dist/bin/src/tracer.js +16 -13
  7. package/dist/bin/src/utils.js +2 -2
  8. package/dist/build/compiler-inline.js +1 -1
  9. package/dist/build/compiler.d.ts +17 -13
  10. package/dist/build/compiler.js +13 -21
  11. package/dist/build/compiler.wasm +0 -0
  12. package/dist/build/debug-inline.js +1 -1
  13. package/dist/build/debug-raw-inline.js +1 -1
  14. package/dist/build/debug-raw.d.ts +50 -112
  15. package/dist/build/debug-raw.js +78 -139
  16. package/dist/build/debug-raw.wasm +0 -0
  17. package/dist/build/debug.d.ts +50 -112
  18. package/dist/build/debug.js +81 -147
  19. package/dist/build/debug.wasm +0 -0
  20. package/dist/build/js/assembly/api-debugger.d.ts +55 -0
  21. package/dist/build/js/assembly/api-debugger.js +245 -0
  22. package/dist/build/js/assembly/api-internal.d.ts +13 -0
  23. package/dist/build/js/assembly/api-internal.js +191 -0
  24. package/dist/build/js/assembly/api-types.d.ts +45 -0
  25. package/dist/build/js/assembly/api-types.js +52 -0
  26. package/dist/build/js/assembly/api-utils.d.ts +79 -0
  27. package/dist/build/js/assembly/api-utils.js +221 -0
  28. package/dist/build/js/assembly/arguments.d.ts +44 -0
  29. package/dist/build/js/assembly/arguments.js +164 -0
  30. package/dist/build/js/assembly/codec.d.ts +24 -0
  31. package/dist/build/js/assembly/codec.js +139 -0
  32. package/dist/build/js/assembly/gas.d.ts +11 -0
  33. package/dist/build/js/assembly/gas.js +33 -0
  34. package/dist/build/js/assembly/index-shared.d.ts +4 -0
  35. package/dist/build/js/assembly/index-shared.js +4 -0
  36. package/dist/build/js/assembly/instructions/bit.d.ts +11 -0
  37. package/dist/build/js/assembly/instructions/bit.js +53 -0
  38. package/dist/build/js/assembly/instructions/branch.d.ts +17 -0
  39. package/dist/build/js/assembly/instructions/branch.js +120 -0
  40. package/dist/build/js/assembly/instructions/jump.d.ts +5 -0
  41. package/dist/build/js/assembly/instructions/jump.js +21 -0
  42. package/dist/build/js/assembly/instructions/load.d.ts +17 -0
  43. package/dist/build/js/assembly/instructions/load.js +134 -0
  44. package/dist/build/js/assembly/instructions/logic.d.ts +10 -0
  45. package/dist/build/js/assembly/instructions/logic.js +47 -0
  46. package/dist/build/js/assembly/instructions/math.d.ts +28 -0
  47. package/dist/build/js/assembly/instructions/math.js +225 -0
  48. package/dist/build/js/assembly/instructions/misc.d.ts +6 -0
  49. package/dist/build/js/assembly/instructions/misc.js +22 -0
  50. package/dist/build/js/assembly/instructions/mov.d.ts +6 -0
  51. package/dist/build/js/assembly/instructions/mov.js +35 -0
  52. package/dist/build/js/assembly/instructions/outcome.d.ts +30 -0
  53. package/dist/build/js/assembly/instructions/outcome.js +88 -0
  54. package/dist/build/js/assembly/instructions/rot.d.ts +15 -0
  55. package/dist/build/js/assembly/instructions/rot.js +66 -0
  56. package/dist/build/js/assembly/instructions/set.d.ts +7 -0
  57. package/dist/build/js/assembly/instructions/set.js +36 -0
  58. package/dist/build/js/assembly/instructions/shift.d.ts +19 -0
  59. package/dist/build/js/assembly/instructions/shift.js +121 -0
  60. package/dist/build/js/assembly/instructions/store.d.ts +17 -0
  61. package/dist/build/js/assembly/instructions/store.js +101 -0
  62. package/dist/build/js/assembly/instructions/utils.d.ts +25 -0
  63. package/dist/build/js/assembly/instructions/utils.js +91 -0
  64. package/dist/build/js/assembly/instructions-exe.d.ts +2 -0
  65. package/dist/build/js/assembly/instructions-exe.js +245 -0
  66. package/dist/build/js/assembly/instructions.d.ts +10 -0
  67. package/dist/build/js/assembly/instructions.js +252 -0
  68. package/dist/build/js/assembly/interpreter.d.ts +28 -0
  69. package/dist/build/js/assembly/interpreter.js +221 -0
  70. package/dist/build/js/assembly/math.d.ts +6 -0
  71. package/dist/build/js/assembly/math.js +22 -0
  72. package/dist/build/js/assembly/memory-page.d.ts +36 -0
  73. package/dist/build/js/assembly/memory-page.js +74 -0
  74. package/dist/build/js/assembly/memory.d.ts +83 -0
  75. package/dist/build/js/assembly/memory.js +482 -0
  76. package/dist/build/js/assembly/portable.d.ts +24 -0
  77. package/dist/build/js/assembly/portable.js +363 -0
  78. package/dist/build/js/assembly/program-build.d.ts +2 -0
  79. package/dist/build/js/assembly/program-build.js +104 -0
  80. package/dist/build/js/assembly/program.d.ts +85 -0
  81. package/dist/build/js/assembly/program.js +340 -0
  82. package/dist/build/js/assembly/registers.d.ts +6 -0
  83. package/dist/build/js/assembly/registers.js +9 -0
  84. package/dist/build/js/assembly/spi.d.ts +92 -0
  85. package/dist/build/js/assembly/spi.js +152 -0
  86. package/dist/build/js/portable/bootstrap.d.ts +1 -0
  87. package/dist/build/js/portable/bootstrap.js +6 -0
  88. package/dist/build/js/portable/index.d.ts +4 -0
  89. package/dist/build/js/portable/index.js +6 -0
  90. package/dist/build/js/portable-bundle.js +4497 -0
  91. package/dist/build/release-inline.js +1 -1
  92. package/dist/build/release-mini-inline.js +1 -1
  93. package/dist/build/release-mini.d.ts +50 -112
  94. package/dist/build/release-mini.js +81 -147
  95. package/dist/build/release-mini.wasm +0 -0
  96. package/dist/build/release-stub-inline.js +1 -1
  97. package/dist/build/release-stub.d.ts +50 -112
  98. package/dist/build/release-stub.js +81 -147
  99. package/dist/build/release-stub.wasm +0 -0
  100. package/dist/build/release.d.ts +50 -112
  101. package/dist/build/release.js +81 -147
  102. package/dist/build/release.wasm +0 -0
  103. package/dist/build/test-inline.js +1 -1
  104. package/dist/build/test.wasm +0 -0
  105. package/dist/test/test-gas-cost.js +2 -3
  106. package/dist/test/test-trace-format.js +166 -0
  107. package/dist/test/test-w3f-common.js +125 -0
  108. package/dist/test/test-w3f-portable.js +5 -0
  109. package/dist/test/test-w3f.js +3 -120
  110. package/package.json +22 -11
@@ -6,33 +6,48 @@ export declare function __pin(ptr: number): number;
6
6
  export declare function __unpin(ptr: number): void;
7
7
  export declare function __collect(): void;
8
8
  export declare const __rtti_base: number;
9
+ /**
10
+ * assembly/api-internal/getAssembly
11
+ * @param p `assembly/program/Program`
12
+ * @returns `~lib/string/String`
13
+ */
14
+ export declare function getAssembly(p: __Internref35): string;
15
+ /**
16
+ * assembly/program-build/wrapAsProgram
17
+ * @param bytecode `~lib/typedarray/Uint8Array`
18
+ * @returns `~lib/typedarray/Uint8Array`
19
+ */
20
+ export declare function wrapAsProgram(bytecode: Uint8Array): Uint8Array;
9
21
  /**
10
22
  * assembly/api-debugger/resetJAM
11
23
  * @param program `~lib/array/Array<u8>`
12
24
  * @param pc `u32`
13
- * @param initialGas `i64`
25
+ * @param initialGas `u64`
14
26
  * @param args `~lib/array/Array<u8>`
15
27
  * @param hasMetadata `bool`
28
+ * @param useBlockGas `bool`
16
29
  */
17
- export declare function resetJAM(program: Array<number>, pc: number, initialGas: bigint, args: Array<number>, hasMetadata?: boolean): void;
30
+ export declare function resetJAM(program: Array<number>, pc: number, initialGas: bigint, args: Array<number>, hasMetadata?: boolean, useBlockGas?: boolean): void;
18
31
  /**
19
32
  * assembly/api-debugger/resetGeneric
20
33
  * @param program `~lib/array/Array<u8>`
21
34
  * @param flatRegisters `~lib/array/Array<u8>`
22
- * @param initialGas `i64`
35
+ * @param initialGas `u64`
23
36
  * @param hasMetadata `bool`
37
+ * @param useBlockGas `bool`
24
38
  */
25
- export declare function resetGeneric(program: Array<number>, flatRegisters: Array<number>, initialGas: bigint, hasMetadata?: boolean): void;
39
+ export declare function resetGeneric(program: Array<number>, flatRegisters: Array<number>, initialGas: bigint, hasMetadata?: boolean, useBlockGas?: boolean): void;
26
40
  /**
27
41
  * assembly/api-debugger/resetGenericWithMemory
28
42
  * @param program `~lib/array/Array<u8>`
29
43
  * @param flatRegisters `~lib/array/Array<u8>`
30
44
  * @param pageMap `~lib/typedarray/Uint8Array`
31
45
  * @param chunks `~lib/typedarray/Uint8Array`
32
- * @param initialGas `i64`
46
+ * @param initialGas `u64`
33
47
  * @param hasMetadata `bool`
48
+ * @param useBlockGas `bool`
34
49
  */
35
- export declare function resetGenericWithMemory(program: Array<number>, flatRegisters: Array<number>, pageMap: Uint8Array, chunks: Uint8Array, initialGas: bigint, hasMetadata?: boolean): void;
50
+ export declare function resetGenericWithMemory(program: Array<number>, flatRegisters: Array<number>, pageMap: Uint8Array, chunks: Uint8Array, initialGas: bigint, hasMetadata?: boolean, useBlockGas?: boolean): void;
36
51
  /**
37
52
  * assembly/api-debugger/nextStep
38
53
  * @returns `bool`
@@ -71,7 +86,7 @@ export declare function getExitArg(): number;
71
86
  export declare function getGasLeft(): bigint;
72
87
  /**
73
88
  * assembly/api-debugger/setGasLeft
74
- * @param gas `i64`
89
+ * @param gas `u64`
75
90
  */
76
91
  export declare function setGasLeft(gas: bigint): void;
77
92
  /**
@@ -110,47 +125,6 @@ export declare function getMemory(address: number, length: number): Uint8Array |
110
125
  * @returns `bool`
111
126
  */
112
127
  export declare function setMemory(address: number, data: Uint8Array): boolean;
113
- /**
114
- * assembly/api-internal/getAssembly
115
- * @param p `assembly/program/Program`
116
- * @returns `~lib/string/String`
117
- */
118
- export declare function getAssembly(p: __Internref26): string;
119
- /**
120
- * assembly/api-internal/buildMemory
121
- * @param builder `assembly/memory/MemoryBuilder`
122
- * @param pages `~lib/array/Array<assembly/api-types/InitialPage>`
123
- * @param chunks `~lib/array/Array<assembly/api-types/InitialChunk>`
124
- * @returns `assembly/memory/Memory`
125
- */
126
- export declare function buildMemory(builder: __Internref41, pages: Array<__Record44<undefined>>, chunks: Array<__Record46<undefined>>): __Internref15;
127
- /**
128
- * assembly/api-internal/vmInit
129
- * @param input `assembly/api-types/VmInput`
130
- * @param useSbrkGas `bool`
131
- * @returns `assembly/interpreter/Interpreter`
132
- */
133
- export declare function vmInit(input: __Internref49, useSbrkGas?: boolean): __Internref25;
134
- /**
135
- * assembly/api-internal/vmRunOnce
136
- * @param input `assembly/api-types/VmInput`
137
- * @param options `assembly/api-types/VmRunOptions`
138
- * @returns `assembly/api-types/VmOutput`
139
- */
140
- export declare function vmRunOnce(input: __Internref49, options: __Record50<undefined>): __Record51<never>;
141
- /**
142
- * assembly/api-internal/vmExecute
143
- * @param int `assembly/interpreter/Interpreter`
144
- * @param logs `bool`
145
- */
146
- export declare function vmExecute(int: __Internref25, logs?: boolean): void;
147
- /**
148
- * assembly/api-internal/vmDestroy
149
- * @param int `assembly/interpreter/Interpreter`
150
- * @param dumpMemory `bool`
151
- * @returns `assembly/api-types/VmOutput`
152
- */
153
- export declare function vmDestroy(int: __Internref25, dumpMemory?: boolean): __Record51<never>;
154
128
  /** assembly/api-utils/InputKind */
155
129
  export declare enum InputKind {
156
130
  /** @type `i32` */
@@ -166,13 +140,13 @@ export declare enum HasMetadata {
166
140
  No,
167
141
  }
168
142
  /**
169
- * assembly/api-utils/getGasCosts
143
+ * assembly/api-utils/getBlockGasCosts
170
144
  * @param input `~lib/array/Array<u8>`
171
145
  * @param kind `i32`
172
146
  * @param withMetadata `i32`
173
- * @returns `~lib/array/Array<assembly/gas-costs/BlockGasCost>`
147
+ * @returns `~lib/array/Array<assembly/api-utils/BlockGasCost>`
174
148
  */
175
- export declare function getGasCosts(input: Array<number>, kind: number, withMetadata: number): Array<__Record56<never>>;
149
+ export declare function getBlockGasCosts(input: Array<number>, kind: number, withMetadata: number): Array<__Record58<never>>;
176
150
  /**
177
151
  * assembly/api-utils/disassemble
178
152
  * @param input `~lib/array/Array<u8>`
@@ -191,33 +165,32 @@ export declare function disassemble(input: Array<number>, kind: number, withMeta
191
165
  * @param initialMemory `~lib/array/Array<assembly/api-types/InitialChunk>`
192
166
  * @param args `~lib/array/Array<u8>`
193
167
  * @param preallocateMemoryPages `u32`
168
+ * @param useBlockGas `bool`
194
169
  * @returns `assembly/spi/StandardProgram`
195
170
  */
196
- export declare function prepareProgram(kind: number, hasMetadata: number, program: Array<number>, initialRegisters: Array<bigint>, initialPageMap: Array<__Record44<undefined>>, initialMemory: Array<__Record46<undefined>>, args: Array<number>, preallocateMemoryPages: number): __Internref40;
171
+ export declare function prepareProgram(kind: number, hasMetadata: number, program: Array<number>, initialRegisters: Array<bigint>, initialPageMap: Array<__Record54<undefined>>, initialMemory: Array<__Record56<undefined>>, args: Array<number>, preallocateMemoryPages: number, useBlockGas: boolean): __Internref51;
197
172
  /**
198
173
  * assembly/api-utils/runProgram
199
174
  * @param program `assembly/spi/StandardProgram`
200
175
  * @param initialGas `i64`
201
176
  * @param programCounter `u32`
202
177
  * @param logs `bool`
203
- * @param useSbrkGas `bool`
204
178
  * @param dumpMemory `bool`
205
179
  * @returns `assembly/api-types/VmOutput`
206
180
  */
207
- export declare function runProgram(program: __Internref40, initialGas?: bigint, programCounter?: number, logs?: boolean, useSbrkGas?: boolean, dumpMemory?: boolean): __Record51<never>;
181
+ export declare function runProgram(program: __Internref51, initialGas?: bigint, programCounter?: number, logs?: boolean, dumpMemory?: boolean): __Record62<never>;
208
182
  /**
209
183
  * assembly/api-utils/pvmStart
210
184
  * @param program `assembly/spi/StandardProgram`
211
- * @param useSbrkGas `bool`
212
185
  * @returns `u32`
213
186
  */
214
- export declare function pvmStart(program: __Internref40, useSbrkGas?: boolean): number;
187
+ export declare function pvmStart(program: __Internref51): number;
215
188
  /**
216
189
  * assembly/api-utils/pvmDestroy
217
190
  * @param pvmId `u32`
218
191
  * @returns `assembly/api-types/VmOutput | null`
219
192
  */
220
- export declare function pvmDestroy(pvmId: number): __Record51<never> | null;
193
+ export declare function pvmDestroy(pvmId: number): __Record62<never> | null;
221
194
  /**
222
195
  * assembly/api-utils/pvmSetRegisters
223
196
  * @param pvmId `u32`
@@ -250,30 +223,26 @@ export declare function pvmWriteMemory(pvmId: number, address: number, data: Uin
250
223
  /**
251
224
  * assembly/api-utils/pvmResume
252
225
  * @param pvmId `u32`
253
- * @param gas `i64`
226
+ * @param gas `u64`
254
227
  * @param pc `u32`
255
228
  * @param logs `bool`
256
229
  * @returns `assembly/api-types/VmPause | null`
257
230
  */
258
- export declare function pvmResume(pvmId: number, gas: bigint, pc: number, logs?: boolean): __Record60<never> | null;
259
- /**
260
- * assembly/program-build/wrapAsProgram
261
- * @param bytecode `~lib/typedarray/Uint8Array`
262
- * @returns `~lib/typedarray/Uint8Array`
263
- */
264
- export declare function wrapAsProgram(bytecode: Uint8Array): Uint8Array;
231
+ export declare function pvmResume(pvmId: number, gas: bigint, pc: number, logs?: boolean): __Record68<never> | null;
265
232
  /** assembly/program/Program */
266
- declare class __Internref26 extends Number {
267
- private __nominal26: symbol;
233
+ declare class __Internref35 extends Number {
234
+ private __nominal35: symbol;
268
235
  private __nominal0: symbol;
269
236
  }
270
- /** assembly/memory/MemoryBuilder */
271
- declare class __Internref41 extends Number {
272
- private __nominal41: symbol;
273
- private __nominal0: symbol;
237
+ /** assembly/api-utils/BlockGasCost */
238
+ declare interface __Record58<TOmittable> {
239
+ /** @type `u32` */
240
+ pc: number | TOmittable;
241
+ /** @type `u64` */
242
+ gas: bigint | TOmittable;
274
243
  }
275
244
  /** assembly/api-types/InitialPage */
276
- declare interface __Record44<TOmittable> {
245
+ declare interface __Record54<TOmittable> {
277
246
  /** @type `u32` */
278
247
  address: number | TOmittable;
279
248
  /** @type `u32` */
@@ -282,67 +251,36 @@ declare interface __Record44<TOmittable> {
282
251
  access: number | TOmittable;
283
252
  }
284
253
  /** assembly/api-types/InitialChunk */
285
- declare interface __Record46<TOmittable> {
254
+ declare interface __Record56<TOmittable> {
286
255
  /** @type `u32` */
287
256
  address: number | TOmittable;
288
257
  /** @type `~lib/array/Array<u8>` */
289
258
  data: Array<number>;
290
259
  }
291
- /** assembly/memory/Memory */
292
- declare class __Internref15 extends Number {
293
- private __nominal15: symbol;
294
- private __nominal0: symbol;
295
- }
296
- /** assembly/api-types/VmInput */
297
- declare class __Internref49 extends Number {
298
- private __nominal49: symbol;
299
- private __nominal0: symbol;
300
- }
301
- /** assembly/interpreter/Interpreter */
302
- declare class __Internref25 extends Number {
303
- private __nominal25: symbol;
260
+ /** assembly/spi/StandardProgram */
261
+ declare class __Internref51 extends Number {
262
+ private __nominal51: symbol;
304
263
  private __nominal0: symbol;
305
264
  }
306
- /** assembly/api-types/VmRunOptions */
307
- declare interface __Record50<TOmittable> {
308
- /** @type `bool` */
309
- useSbrkGas: boolean | TOmittable;
310
- /** @type `bool` */
311
- logs: boolean | TOmittable;
312
- /** @type `bool` */
313
- dumpMemory: boolean | TOmittable;
314
- }
315
265
  /** assembly/api-types/VmOutput */
316
- declare interface __Record51<TOmittable> {
266
+ declare interface __Record62<TOmittable> {
317
267
  /** @type `i32` */
318
268
  status: number | TOmittable;
319
269
  /** @type `u32` */
320
270
  exitCode: number | TOmittable;
321
271
  /** @type `u32` */
322
272
  pc: number | TOmittable;
323
- /** @type `i64` */
273
+ /** @type `u64` */
324
274
  gas: bigint | TOmittable;
325
275
  /** @type `~lib/array/Array<u8>` */
326
276
  result: Array<number>;
327
277
  /** @type `~lib/array/Array<u64>` */
328
278
  registers: Array<bigint>;
329
279
  /** @type `~lib/array/Array<assembly/api-types/InitialChunk>` */
330
- memory: Array<__Record46<never>>;
331
- }
332
- /** assembly/gas-costs/BlockGasCost */
333
- declare interface __Record56<TOmittable> {
334
- /** @type `u32` */
335
- pc: number | TOmittable;
336
- /** @type `u64` */
337
- gas: bigint | TOmittable;
338
- }
339
- /** assembly/spi/StandardProgram */
340
- declare class __Internref40 extends Number {
341
- private __nominal40: symbol;
342
- private __nominal0: symbol;
280
+ memory: Array<__Record56<never>>;
343
281
  }
344
282
  /** assembly/api-types/VmPause */
345
- declare interface __Record60<TOmittable> {
283
+ declare interface __Record68<TOmittable> {
346
284
  /** @type `i32` */
347
285
  status: number | TOmittable;
348
286
  /** @type `u32` */
@@ -351,7 +289,7 @@ declare interface __Record60<TOmittable> {
351
289
  pc: number | TOmittable;
352
290
  /** @type `u32` */
353
291
  nextPc: number | TOmittable;
354
- /** @type `i64` */
292
+ /** @type `u64` */
355
293
  gas: bigint | TOmittable;
356
294
  /** @type `~lib/array/Array<u64>` */
357
295
  registers: Array<bigint>;