@aztec/simulator 4.0.0-nightly.20260112 → 4.0.0-nightly.20260113
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/public/avm/opcodes/accrued_substate.d.ts +15 -15
- package/dest/public/avm/opcodes/accrued_substate.d.ts.map +1 -1
- package/dest/public/avm/opcodes/accrued_substate.js +28 -28
- package/dest/public/avm/opcodes/arithmetic.js +1 -1
- package/dest/public/avm/opcodes/bitwise.d.ts +3 -3
- package/dest/public/avm/opcodes/bitwise.d.ts.map +1 -1
- package/dest/public/avm/opcodes/bitwise.js +5 -5
- package/dest/public/avm/opcodes/comparators.js +1 -1
- package/dest/public/avm/opcodes/contract.d.ts +3 -3
- 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/control_flow.d.ts +3 -3
- package/dest/public/avm/opcodes/control_flow.d.ts.map +1 -1
- package/dest/public/avm/opcodes/control_flow.js +4 -4
- package/dest/public/avm/opcodes/conversion.d.ts +3 -3
- package/dest/public/avm/opcodes/conversion.d.ts.map +1 -1
- package/dest/public/avm/opcodes/conversion.js +4 -4
- package/dest/public/avm/opcodes/ec_add.d.ts +3 -3
- package/dest/public/avm/opcodes/ec_add.d.ts.map +1 -1
- package/dest/public/avm/opcodes/ec_add.js +4 -4
- package/dest/public/avm/opcodes/environment_getters.d.ts +3 -3
- package/dest/public/avm/opcodes/environment_getters.d.ts.map +1 -1
- package/dest/public/avm/opcodes/environment_getters.js +4 -4
- package/dest/public/avm/opcodes/external_calls.d.ts +9 -9
- package/dest/public/avm/opcodes/external_calls.d.ts.map +1 -1
- package/dest/public/avm/opcodes/external_calls.js +16 -16
- package/dest/public/avm/opcodes/hashing.d.ts +7 -7
- package/dest/public/avm/opcodes/hashing.d.ts.map +1 -1
- package/dest/public/avm/opcodes/hashing.js +12 -12
- package/dest/public/avm/opcodes/instruction_impl.d.ts +4 -4
- package/dest/public/avm/opcodes/instruction_impl.d.ts.map +1 -1
- package/dest/public/avm/opcodes/instruction_impl.js +4 -4
- package/dest/public/avm/opcodes/memory.d.ts +13 -13
- package/dest/public/avm/opcodes/memory.d.ts.map +1 -1
- package/dest/public/avm/opcodes/memory.js +24 -24
- package/dest/public/avm/opcodes/misc.d.ts +3 -3
- package/dest/public/avm/opcodes/misc.d.ts.map +1 -1
- package/dest/public/avm/opcodes/misc.js +4 -4
- package/dest/public/avm/opcodes/storage.d.ts +5 -5
- package/dest/public/avm/opcodes/storage.d.ts.map +1 -1
- package/dest/public/avm/opcodes/storage.js +9 -9
- package/dest/public/fixtures/custom_bytecode_tests.d.ts +1 -1
- package/dest/public/fixtures/custom_bytecode_tests.d.ts.map +1 -1
- package/dest/public/fixtures/custom_bytecode_tests.js +18 -18
- package/dest/public/fixtures/minimal_public_tx.js +2 -2
- package/dest/public/fixtures/opcode_spammer.d.ts +1 -1
- package/dest/public/fixtures/opcode_spammer.d.ts.map +1 -1
- package/dest/public/fixtures/opcode_spammer.js +76 -76
- package/package.json +16 -16
- package/src/public/avm/opcodes/accrued_substate.ts +14 -14
- package/src/public/avm/opcodes/arithmetic.ts +1 -1
- package/src/public/avm/opcodes/bitwise.ts +3 -3
- package/src/public/avm/opcodes/comparators.ts +1 -1
- package/src/public/avm/opcodes/contract.ts +3 -3
- package/src/public/avm/opcodes/control_flow.ts +2 -2
- package/src/public/avm/opcodes/conversion.ts +3 -3
- package/src/public/avm/opcodes/ec_add.ts +2 -2
- package/src/public/avm/opcodes/environment_getters.ts +3 -3
- package/src/public/avm/opcodes/external_calls.ts +9 -9
- package/src/public/avm/opcodes/hashing.ts +6 -6
- package/src/public/avm/opcodes/instruction_impl.ts +2 -2
- package/src/public/avm/opcodes/memory.ts +18 -18
- package/src/public/avm/opcodes/misc.ts +2 -2
- package/src/public/avm/opcodes/storage.ts +7 -7
- package/src/public/fixtures/custom_bytecode_tests.ts +27 -18
- package/src/public/fixtures/minimal_public_tx.ts +2 -2
- package/src/public/fixtures/opcode_spammer.ts +164 -77
|
@@ -2,74 +2,74 @@ 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
4
|
export declare class NoteHashExists extends Instruction {
|
|
5
|
-
private
|
|
5
|
+
private addressingMode;
|
|
6
6
|
private noteHashOffset;
|
|
7
7
|
private leafIndexOffset;
|
|
8
8
|
private existsOffset;
|
|
9
9
|
static type: string;
|
|
10
10
|
static readonly opcode: Opcode;
|
|
11
11
|
static readonly wireFormat: OperandType[];
|
|
12
|
-
constructor(
|
|
12
|
+
constructor(addressingMode: number, noteHashOffset: number, leafIndexOffset: number, existsOffset: number);
|
|
13
13
|
execute(context: AvmContext): Promise<void>;
|
|
14
14
|
}
|
|
15
15
|
export declare class EmitNoteHash extends Instruction {
|
|
16
|
-
private
|
|
16
|
+
private addressingMode;
|
|
17
17
|
private noteHashOffset;
|
|
18
18
|
static type: string;
|
|
19
19
|
static readonly opcode: Opcode;
|
|
20
20
|
static readonly wireFormat: OperandType[];
|
|
21
|
-
constructor(
|
|
21
|
+
constructor(addressingMode: number, noteHashOffset: number);
|
|
22
22
|
execute(context: AvmContext): Promise<void>;
|
|
23
23
|
}
|
|
24
24
|
export declare class NullifierExists extends Instruction {
|
|
25
|
-
private
|
|
25
|
+
private addressingMode;
|
|
26
26
|
private nullifierOffset;
|
|
27
27
|
private addressOffset;
|
|
28
28
|
private existsOffset;
|
|
29
29
|
static type: string;
|
|
30
30
|
static readonly opcode: Opcode;
|
|
31
31
|
static readonly wireFormat: OperandType[];
|
|
32
|
-
constructor(
|
|
32
|
+
constructor(addressingMode: number, nullifierOffset: number, addressOffset: number, existsOffset: number);
|
|
33
33
|
execute(context: AvmContext): Promise<void>;
|
|
34
34
|
}
|
|
35
35
|
export declare class EmitNullifier extends Instruction {
|
|
36
|
-
private
|
|
36
|
+
private addressingMode;
|
|
37
37
|
private nullifierOffset;
|
|
38
38
|
static type: string;
|
|
39
39
|
static readonly opcode: Opcode;
|
|
40
40
|
static readonly wireFormat: OperandType[];
|
|
41
|
-
constructor(
|
|
41
|
+
constructor(addressingMode: number, nullifierOffset: number);
|
|
42
42
|
execute(context: AvmContext): Promise<void>;
|
|
43
43
|
}
|
|
44
44
|
export declare class L1ToL2MessageExists extends Instruction {
|
|
45
|
-
private
|
|
45
|
+
private addressingMode;
|
|
46
46
|
private msgHashOffset;
|
|
47
47
|
private msgLeafIndexOffset;
|
|
48
48
|
private existsOffset;
|
|
49
49
|
static type: string;
|
|
50
50
|
static readonly opcode: Opcode;
|
|
51
51
|
static readonly wireFormat: OperandType[];
|
|
52
|
-
constructor(
|
|
52
|
+
constructor(addressingMode: number, msgHashOffset: number, msgLeafIndexOffset: number, existsOffset: number);
|
|
53
53
|
execute(context: AvmContext): Promise<void>;
|
|
54
54
|
}
|
|
55
55
|
export declare class EmitUnencryptedLog extends Instruction {
|
|
56
|
-
private
|
|
56
|
+
private addressingMode;
|
|
57
57
|
private logSizeOffset;
|
|
58
58
|
private logOffset;
|
|
59
59
|
static type: string;
|
|
60
60
|
static readonly opcode: Opcode;
|
|
61
61
|
static readonly wireFormat: OperandType[];
|
|
62
|
-
constructor(
|
|
62
|
+
constructor(addressingMode: number, logSizeOffset: number, logOffset: number);
|
|
63
63
|
execute(context: AvmContext): Promise<void>;
|
|
64
64
|
}
|
|
65
65
|
export declare class SendL2ToL1Message extends Instruction {
|
|
66
|
-
private
|
|
66
|
+
private addressingMode;
|
|
67
67
|
private recipientOffset;
|
|
68
68
|
private contentOffset;
|
|
69
69
|
static type: string;
|
|
70
70
|
static readonly opcode: Opcode;
|
|
71
71
|
static readonly wireFormat: OperandType[];
|
|
72
|
-
constructor(
|
|
72
|
+
constructor(addressingMode: number, recipientOffset: number, contentOffset: number);
|
|
73
73
|
execute(context: AvmContext): Promise<void>;
|
|
74
74
|
}
|
|
75
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjcnVlZF9zdWJzdGF0ZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3B1YmxpYy9hdm0vb3Bjb2Rlcy9hY2NydWVkX3N1YnN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBR3BELE9BQU8sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFFcEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRS9DLHFCQUFhLGNBQWUsU0FBUSxXQUFXO0lBYTNDLE9BQU8sQ0FBQyxjQUFjO0lBQ3RCLE9BQU8sQ0FBQyxjQUFjO0lBQ3RCLE9BQU8sQ0FBQyxlQUFlO0lBQ3ZCLE9BQU8sQ0FBQyxZQUFZO0lBZnRCLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFvQjtJQUN2QyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQXlCO0lBRXZELE1BQU0sQ0FBQyxRQUFRLENBQUMsVUFBVSxnQkFNeEI7SUFFRixZQUNVLGNBQWMsRUFBRSxNQUFNLEVBQ3RCLGNBQWMsRUFBRSxNQUFNLEVBQ3RCLGVBQWUsRUFBRSxNQUFNLEVBQ3ZCLFlBQVksRUFBRSxNQUFNLEVBRzdCO0lBRVksT0FBTyxDQUFDLE9BQU8sRUFBRSxVQUFVLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQWtCdkQ7Q0FDRjtBQUVELHFCQUFhLFlBQWEsU0FBUSxXQUFXO0lBT3pDLE9BQU8sQ0FBQyxjQUFjO0lBQ3RCLE9BQU8sQ0FBQyxjQUFjO0lBUHhCLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFrQjtJQUNyQyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQXVCO0lBRXJELE1BQU0sQ0FBQyxRQUFRLENBQUMsVUFBVSxnQkFBOEQ7SUFFeEYsWUFDVSxjQUFjLEVBQUUs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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":"AACA,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,cAAe,SAAQ,WAAW;IAa3C,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"accrued_substate.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/opcodes/accrued_substate.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +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
|
export class NoteHashExists extends Instruction {
|
|
8
|
-
|
|
8
|
+
addressingMode;
|
|
9
9
|
noteHashOffset;
|
|
10
10
|
leafIndexOffset;
|
|
11
11
|
existsOffset;
|
|
@@ -19,12 +19,12 @@ export class NoteHashExists extends Instruction {
|
|
|
19
19
|
OperandType.UINT16,
|
|
20
20
|
OperandType.UINT16
|
|
21
21
|
];
|
|
22
|
-
constructor(
|
|
23
|
-
super(), this.
|
|
22
|
+
constructor(addressingMode, noteHashOffset, leafIndexOffset, existsOffset){
|
|
23
|
+
super(), this.addressingMode = addressingMode, this.noteHashOffset = noteHashOffset, this.leafIndexOffset = leafIndexOffset, this.existsOffset = existsOffset;
|
|
24
24
|
}
|
|
25
25
|
async execute(context) {
|
|
26
26
|
const memory = context.machineState.memory;
|
|
27
|
-
const addressing = Addressing.fromWire(this.
|
|
27
|
+
const addressing = Addressing.fromWire(this.addressingMode);
|
|
28
28
|
context.machineState.consumeGas(this.baseGasCost(addressing.indirectOperandsCount(), addressing.relativeOperandsCount()));
|
|
29
29
|
const operands = [
|
|
30
30
|
this.noteHashOffset,
|
|
@@ -42,7 +42,7 @@ export class NoteHashExists extends Instruction {
|
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
44
|
export class EmitNoteHash extends Instruction {
|
|
45
|
-
|
|
45
|
+
addressingMode;
|
|
46
46
|
noteHashOffset;
|
|
47
47
|
static type = 'EMITNOTEHASH';
|
|
48
48
|
static opcode = Opcode.EMITNOTEHASH;
|
|
@@ -52,12 +52,12 @@ export class EmitNoteHash extends Instruction {
|
|
|
52
52
|
OperandType.UINT8,
|
|
53
53
|
OperandType.UINT16
|
|
54
54
|
];
|
|
55
|
-
constructor(
|
|
56
|
-
super(), this.
|
|
55
|
+
constructor(addressingMode, noteHashOffset){
|
|
56
|
+
super(), this.addressingMode = addressingMode, this.noteHashOffset = noteHashOffset;
|
|
57
57
|
}
|
|
58
58
|
async execute(context) {
|
|
59
59
|
const memory = context.machineState.memory;
|
|
60
|
-
const addressing = Addressing.fromWire(this.
|
|
60
|
+
const addressing = Addressing.fromWire(this.addressingMode);
|
|
61
61
|
context.machineState.consumeGas(this.baseGasCost(addressing.indirectOperandsCount(), addressing.relativeOperandsCount()));
|
|
62
62
|
const operands = [
|
|
63
63
|
this.noteHashOffset
|
|
@@ -72,7 +72,7 @@ export class EmitNoteHash extends Instruction {
|
|
|
72
72
|
}
|
|
73
73
|
}
|
|
74
74
|
export class NullifierExists extends Instruction {
|
|
75
|
-
|
|
75
|
+
addressingMode;
|
|
76
76
|
nullifierOffset;
|
|
77
77
|
addressOffset;
|
|
78
78
|
existsOffset;
|
|
@@ -86,12 +86,12 @@ export class NullifierExists extends Instruction {
|
|
|
86
86
|
OperandType.UINT16,
|
|
87
87
|
OperandType.UINT16
|
|
88
88
|
];
|
|
89
|
-
constructor(
|
|
90
|
-
super(), this.
|
|
89
|
+
constructor(addressingMode, nullifierOffset, addressOffset, existsOffset){
|
|
90
|
+
super(), this.addressingMode = addressingMode, this.nullifierOffset = nullifierOffset, this.addressOffset = addressOffset, this.existsOffset = existsOffset;
|
|
91
91
|
}
|
|
92
92
|
async execute(context) {
|
|
93
93
|
const memory = context.machineState.memory;
|
|
94
|
-
const addressing = Addressing.fromWire(this.
|
|
94
|
+
const addressing = Addressing.fromWire(this.addressingMode);
|
|
95
95
|
context.machineState.consumeGas(this.baseGasCost(addressing.indirectOperandsCount(), addressing.relativeOperandsCount()));
|
|
96
96
|
const operands = [
|
|
97
97
|
this.nullifierOffset,
|
|
@@ -107,7 +107,7 @@ export class NullifierExists extends Instruction {
|
|
|
107
107
|
}
|
|
108
108
|
}
|
|
109
109
|
export class EmitNullifier extends Instruction {
|
|
110
|
-
|
|
110
|
+
addressingMode;
|
|
111
111
|
nullifierOffset;
|
|
112
112
|
static type = 'EMITNULLIFIER';
|
|
113
113
|
static opcode = Opcode.EMITNULLIFIER;
|
|
@@ -117,15 +117,15 @@ export class EmitNullifier extends Instruction {
|
|
|
117
117
|
OperandType.UINT8,
|
|
118
118
|
OperandType.UINT16
|
|
119
119
|
];
|
|
120
|
-
constructor(
|
|
121
|
-
super(), this.
|
|
120
|
+
constructor(addressingMode, nullifierOffset){
|
|
121
|
+
super(), this.addressingMode = addressingMode, this.nullifierOffset = nullifierOffset;
|
|
122
122
|
}
|
|
123
123
|
async execute(context) {
|
|
124
124
|
if (context.environment.isStaticCall) {
|
|
125
125
|
throw new StaticCallAlterationError();
|
|
126
126
|
}
|
|
127
127
|
const memory = context.machineState.memory;
|
|
128
|
-
const addressing = Addressing.fromWire(this.
|
|
128
|
+
const addressing = Addressing.fromWire(this.addressingMode);
|
|
129
129
|
context.machineState.consumeGas(this.baseGasCost(addressing.indirectOperandsCount(), addressing.relativeOperandsCount()));
|
|
130
130
|
const operands = [
|
|
131
131
|
this.nullifierOffset
|
|
@@ -146,7 +146,7 @@ export class EmitNullifier extends Instruction {
|
|
|
146
146
|
}
|
|
147
147
|
}
|
|
148
148
|
export class L1ToL2MessageExists extends Instruction {
|
|
149
|
-
|
|
149
|
+
addressingMode;
|
|
150
150
|
msgHashOffset;
|
|
151
151
|
msgLeafIndexOffset;
|
|
152
152
|
existsOffset;
|
|
@@ -160,12 +160,12 @@ export class L1ToL2MessageExists extends Instruction {
|
|
|
160
160
|
OperandType.UINT16,
|
|
161
161
|
OperandType.UINT16
|
|
162
162
|
];
|
|
163
|
-
constructor(
|
|
164
|
-
super(), this.
|
|
163
|
+
constructor(addressingMode, msgHashOffset, msgLeafIndexOffset, existsOffset){
|
|
164
|
+
super(), this.addressingMode = addressingMode, this.msgHashOffset = msgHashOffset, this.msgLeafIndexOffset = msgLeafIndexOffset, this.existsOffset = existsOffset;
|
|
165
165
|
}
|
|
166
166
|
async execute(context) {
|
|
167
167
|
const memory = context.machineState.memory;
|
|
168
|
-
const addressing = Addressing.fromWire(this.
|
|
168
|
+
const addressing = Addressing.fromWire(this.addressingMode);
|
|
169
169
|
context.machineState.consumeGas(this.baseGasCost(addressing.indirectOperandsCount(), addressing.relativeOperandsCount()));
|
|
170
170
|
const operands = [
|
|
171
171
|
this.msgHashOffset,
|
|
@@ -182,7 +182,7 @@ export class L1ToL2MessageExists extends Instruction {
|
|
|
182
182
|
}
|
|
183
183
|
}
|
|
184
184
|
export class EmitUnencryptedLog extends Instruction {
|
|
185
|
-
|
|
185
|
+
addressingMode;
|
|
186
186
|
logSizeOffset;
|
|
187
187
|
logOffset;
|
|
188
188
|
// TODO(#11124): rename unencrypted -> public
|
|
@@ -195,15 +195,15 @@ export class EmitUnencryptedLog extends Instruction {
|
|
|
195
195
|
OperandType.UINT16,
|
|
196
196
|
OperandType.UINT16
|
|
197
197
|
];
|
|
198
|
-
constructor(
|
|
199
|
-
super(), this.
|
|
198
|
+
constructor(addressingMode, logSizeOffset, logOffset){
|
|
199
|
+
super(), this.addressingMode = addressingMode, this.logSizeOffset = logSizeOffset, this.logOffset = logOffset;
|
|
200
200
|
}
|
|
201
201
|
async execute(context) {
|
|
202
202
|
if (context.environment.isStaticCall) {
|
|
203
203
|
throw new StaticCallAlterationError();
|
|
204
204
|
}
|
|
205
205
|
const memory = context.machineState.memory;
|
|
206
|
-
const addressing = Addressing.fromWire(this.
|
|
206
|
+
const addressing = Addressing.fromWire(this.addressingMode);
|
|
207
207
|
context.machineState.consumeGas(this.baseGasCost(addressing.indirectOperandsCount(), addressing.relativeOperandsCount()));
|
|
208
208
|
const operands = [
|
|
209
209
|
this.logSizeOffset,
|
|
@@ -220,7 +220,7 @@ export class EmitUnencryptedLog extends Instruction {
|
|
|
220
220
|
}
|
|
221
221
|
}
|
|
222
222
|
export class SendL2ToL1Message extends Instruction {
|
|
223
|
-
|
|
223
|
+
addressingMode;
|
|
224
224
|
recipientOffset;
|
|
225
225
|
contentOffset;
|
|
226
226
|
static type = 'SENDL2TOL1MSG';
|
|
@@ -232,15 +232,15 @@ export class SendL2ToL1Message extends Instruction {
|
|
|
232
232
|
OperandType.UINT16,
|
|
233
233
|
OperandType.UINT16
|
|
234
234
|
];
|
|
235
|
-
constructor(
|
|
236
|
-
super(), this.
|
|
235
|
+
constructor(addressingMode, recipientOffset, contentOffset){
|
|
236
|
+
super(), this.addressingMode = addressingMode, this.recipientOffset = recipientOffset, this.contentOffset = contentOffset;
|
|
237
237
|
}
|
|
238
238
|
async execute(context) {
|
|
239
239
|
if (context.environment.isStaticCall) {
|
|
240
240
|
throw new StaticCallAlterationError();
|
|
241
241
|
}
|
|
242
242
|
const memory = context.machineState.memory;
|
|
243
|
-
const addressing = Addressing.fromWire(this.
|
|
243
|
+
const addressing = Addressing.fromWire(this.addressingMode);
|
|
244
244
|
context.machineState.consumeGas(this.baseGasCost(addressing.indirectOperandsCount(), addressing.relativeOperandsCount()));
|
|
245
245
|
const operands = [
|
|
246
246
|
this.recipientOffset,
|
|
@@ -6,7 +6,7 @@ import { ThreeOperandInstruction } from './instruction_impl.js';
|
|
|
6
6
|
export class ThreeOperandArithmeticInstruction extends ThreeOperandInstruction {
|
|
7
7
|
async execute(context) {
|
|
8
8
|
const memory = context.machineState.memory;
|
|
9
|
-
const addressing = Addressing.fromWire(this.
|
|
9
|
+
const addressing = Addressing.fromWire(this.addressingMode);
|
|
10
10
|
context.machineState.consumeGas(this.baseGasCost(addressing.indirectOperandsCount(), addressing.relativeOperandsCount()));
|
|
11
11
|
const operands = [
|
|
12
12
|
this.aOffset,
|
|
@@ -28,15 +28,15 @@ export declare class Xor extends ThreeOperandBitwiseInstruction {
|
|
|
28
28
|
protected getDynamicMultiplier(lhsTag: TypeTag): number;
|
|
29
29
|
}
|
|
30
30
|
export declare class Not extends Instruction {
|
|
31
|
-
private
|
|
31
|
+
private addressingMode;
|
|
32
32
|
private srcOffset;
|
|
33
33
|
private dstOffset;
|
|
34
34
|
static readonly type: string;
|
|
35
35
|
static readonly opcode: Opcode;
|
|
36
36
|
static readonly wireFormat8: OperandType[];
|
|
37
37
|
static readonly wireFormat16: OperandType[];
|
|
38
|
-
constructor(
|
|
38
|
+
constructor(addressingMode: number, srcOffset: number, dstOffset: number);
|
|
39
39
|
execute(context: AvmContext): Promise<void>;
|
|
40
40
|
}
|
|
41
41
|
export {};
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYml0d2lzZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3B1YmxpYy9hdm0vb3Bjb2Rlcy9iaXR3aXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXBELE9BQU8sRUFBRSxLQUFLLGFBQWEsRUFBZ0IsS0FBSyxxQkFBcUIsRUFBRSxPQUFPLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMvRyxPQUFPLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBRXBGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVoRSx1QkFBZSw4QkFBK0IsU0FBUSx1QkFBdUI7SUFDOUQsT0FBTyxDQUFDLE9BQU8sRUFBRSxVQUFVLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQW9CdkQ7SUFFRCxTQUFTLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsYUFBYSxFQUFFLENBQUMsRUFBRSxhQUFhLEdBQUcsYUFBYSxDQUFDO0lBQzlFLFNBQVMsQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLHFCQUFxQixFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sUUFHbEY7SUFFRCxTQUFTLENBQUMsb0JBQW9CLENBQUMsT0FBTyxFQUFFLE9BQU8sR0FBRyxNQUFNLENBRXZEO0NBQ0Y7QUFFRCxxQkFBYSxHQUFJLFNBQVEsOEJBQThCO0lBQ3JELE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBUztJQUNyQyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sU0FBZ0I7SUFFdEMsVUFBbUIsT0FBTyxDQUFDLENBQUMsRUFBRSxhQUFhLEVBQUUsQ0FBQyxFQUFFLGFBQWEsR0FBRyxhQUFhLENBRTVFO0lBRUQsVUFBbUIsb0JBQW9CLENBQUMsTUFBTSxFQUFFLE9BQU8sR0FBRyxNQUFNLENBRS9EO0NBQ0Y7QUFFRCxxQkFBYSxFQUFHLFNBQVEsOEJBQThCO0lBQ3BELE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBUTtJQUNwQyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sU0FBZTtJQUVyQyxVQUFtQixPQUFPLENBQUMsQ0FBQyxFQUFFLGFBQWEsRUFBRSxDQUFDLEVBQUUsYUFBYSxHQUFHLGFBQWEsQ0FFNUU7SUFFRCxVQUFtQixvQkFBb0IsQ0FBQyxNQUFNLEVBQUUsT0FBTyxHQUFHLE1BQU0sQ0FFL0Q7Q0FDRjtBQUVELHFCQUFhLEdBQUksU0FBUSw4QkFBOEI7SUFDckQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFTO0lBQ3JDLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxTQUFnQjtJQUV0QyxVQUFtQixPQUFPLENBQUMsQ0FBQyxFQUFFLGFBQWEsRUFBRSxDQUFDLEVBQUUsYUFBYSxHQUFHLGFBQWEsQ0FFNUU7SUFFRCxVQUFtQixvQkFBb0IsQ0FBQyxNQUFNLEVBQUUsT0FBTyxHQUFHLE1BQU0sQ0FFL0Q7Q0FDRjtBQUVELHFCQUFhLEdBQUksU0FBUSxXQUFXO0lBUWhDLE9BQU8sQ0FBQyxjQUFjO0lBQ3RCLE9BQU8sQ0FBQyxTQUFTO0lBQ2pCLE9BQU8sQ0FBQyxTQUFTO0lBVG5CLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBUztJQUNyQyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sU0FBZ0I7SUFFdEMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxXQUFXLGdCQUFnRjtJQUMzRyxNQUFNLENBQUMsUUFBUSxDQUFDLFlBQVksZ0JBQWtGO0lBRTlHLFlBQ1UsY0FBYyxFQUFFLE1BQU0sRUFDdEIsU0FBUyxFQUFFLE1BQU0sRUFDakIsU0FBUyxFQUFFLE1BQU0sRUFHMUI7SUFFWSxPQUFPLENBQUMsT0FBTyxFQUFFLFVBQVUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBZXZEO0NBQ0YifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bitwise.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/opcodes/bitwise.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,KAAK,aAAa,EAAgB,KAAK,qBAAqB,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAC/G,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAEpF,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,uBAAe,8BAA+B,SAAQ,uBAAuB;IAC9D,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAoBvD;IAED,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,aAAa,GAAG,aAAa,CAAC;IAC9E,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,QAGlF;IAED,SAAS,CAAC,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAEvD;CACF;AAED,qBAAa,GAAI,SAAQ,8BAA8B;IACrD,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAS;IACrC,MAAM,CAAC,QAAQ,CAAC,MAAM,SAAgB;IAEtC,UAAmB,OAAO,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,aAAa,GAAG,aAAa,CAE5E;IAED,UAAmB,oBAAoB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAE/D;CACF;AAED,qBAAa,EAAG,SAAQ,8BAA8B;IACpD,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAQ;IACpC,MAAM,CAAC,QAAQ,CAAC,MAAM,SAAe;IAErC,UAAmB,OAAO,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,aAAa,GAAG,aAAa,CAE5E;IAED,UAAmB,oBAAoB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAE/D;CACF;AAED,qBAAa,GAAI,SAAQ,8BAA8B;IACrD,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAS;IACrC,MAAM,CAAC,QAAQ,CAAC,MAAM,SAAgB;IAEtC,UAAmB,OAAO,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,aAAa,GAAG,aAAa,CAE5E;IAED,UAAmB,oBAAoB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAE/D;CACF;AAED,qBAAa,GAAI,SAAQ,WAAW;IAQhC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"bitwise.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/opcodes/bitwise.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,KAAK,aAAa,EAAgB,KAAK,qBAAqB,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAC/G,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAEpF,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,uBAAe,8BAA+B,SAAQ,uBAAuB;IAC9D,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAoBvD;IAED,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,aAAa,GAAG,aAAa,CAAC;IAC9E,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,QAGlF;IAED,SAAS,CAAC,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAEvD;CACF;AAED,qBAAa,GAAI,SAAQ,8BAA8B;IACrD,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAS;IACrC,MAAM,CAAC,QAAQ,CAAC,MAAM,SAAgB;IAEtC,UAAmB,OAAO,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,aAAa,GAAG,aAAa,CAE5E;IAED,UAAmB,oBAAoB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAE/D;CACF;AAED,qBAAa,EAAG,SAAQ,8BAA8B;IACpD,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAQ;IACpC,MAAM,CAAC,QAAQ,CAAC,MAAM,SAAe;IAErC,UAAmB,OAAO,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,aAAa,GAAG,aAAa,CAE5E;IAED,UAAmB,oBAAoB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAE/D;CACF;AAED,qBAAa,GAAI,SAAQ,8BAA8B;IACrD,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAS;IACrC,MAAM,CAAC,QAAQ,CAAC,MAAM,SAAgB;IAEtC,UAAmB,OAAO,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,aAAa,GAAG,aAAa,CAE5E;IAED,UAAmB,oBAAoB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAE/D;CACF;AAED,qBAAa,GAAI,SAAQ,WAAW;IAQhC,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,SAAS;IATnB,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAS;IACrC,MAAM,CAAC,QAAQ,CAAC,MAAM,SAAgB;IAEtC,MAAM,CAAC,QAAQ,CAAC,WAAW,gBAAgF;IAC3G,MAAM,CAAC,QAAQ,CAAC,YAAY,gBAAkF;IAE9G,YACU,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EAG1B;IAEY,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAevD;CACF"}
|
|
@@ -7,7 +7,7 @@ import { ThreeOperandInstruction } from './instruction_impl.js';
|
|
|
7
7
|
class ThreeOperandBitwiseInstruction extends ThreeOperandInstruction {
|
|
8
8
|
async execute(context) {
|
|
9
9
|
const memory = context.machineState.memory;
|
|
10
|
-
const addressing = Addressing.fromWire(this.
|
|
10
|
+
const addressing = Addressing.fromWire(this.addressingMode);
|
|
11
11
|
context.machineState.consumeGas(this.baseGasCost(addressing.indirectOperandsCount(), addressing.relativeOperandsCount()));
|
|
12
12
|
const operands = [
|
|
13
13
|
this.aOffset,
|
|
@@ -62,7 +62,7 @@ export class Xor extends ThreeOperandBitwiseInstruction {
|
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
64
|
export class Not extends Instruction {
|
|
65
|
-
|
|
65
|
+
addressingMode;
|
|
66
66
|
srcOffset;
|
|
67
67
|
dstOffset;
|
|
68
68
|
static type = 'NOT';
|
|
@@ -79,12 +79,12 @@ export class Not extends Instruction {
|
|
|
79
79
|
OperandType.UINT16,
|
|
80
80
|
OperandType.UINT16
|
|
81
81
|
];
|
|
82
|
-
constructor(
|
|
83
|
-
super(), this.
|
|
82
|
+
constructor(addressingMode, srcOffset, dstOffset){
|
|
83
|
+
super(), this.addressingMode = addressingMode, this.srcOffset = srcOffset, this.dstOffset = dstOffset;
|
|
84
84
|
}
|
|
85
85
|
async execute(context) {
|
|
86
86
|
const memory = context.machineState.memory;
|
|
87
|
-
const addressing = Addressing.fromWire(this.
|
|
87
|
+
const addressing = Addressing.fromWire(this.addressingMode);
|
|
88
88
|
context.machineState.consumeGas(this.baseGasCost(addressing.indirectOperandsCount(), addressing.relativeOperandsCount()));
|
|
89
89
|
const operands = [
|
|
90
90
|
this.srcOffset,
|
|
@@ -5,7 +5,7 @@ import { ThreeOperandInstruction } from './instruction_impl.js';
|
|
|
5
5
|
class ComparatorInstruction extends ThreeOperandInstruction {
|
|
6
6
|
async execute(context) {
|
|
7
7
|
const memory = context.machineState.memory;
|
|
8
|
-
const addressing = Addressing.fromWire(this.
|
|
8
|
+
const addressing = Addressing.fromWire(this.addressingMode);
|
|
9
9
|
context.machineState.consumeGas(this.baseGasCost(addressing.indirectOperandsCount(), addressing.relativeOperandsCount()));
|
|
10
10
|
const operands = [
|
|
11
11
|
this.aOffset,
|
|
@@ -7,14 +7,14 @@ export declare enum ContractInstanceMember {
|
|
|
7
7
|
INIT_HASH = 2
|
|
8
8
|
}
|
|
9
9
|
export declare class GetContractInstance extends Instruction {
|
|
10
|
-
private
|
|
10
|
+
private addressingMode;
|
|
11
11
|
private addressOffset;
|
|
12
12
|
private dstOffset;
|
|
13
13
|
private memberEnum;
|
|
14
14
|
static readonly type: string;
|
|
15
15
|
static readonly opcode: Opcode;
|
|
16
16
|
static readonly wireFormat: OperandType[];
|
|
17
|
-
constructor(
|
|
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,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,
|
|
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"}
|
|
@@ -10,7 +10,7 @@ export var ContractInstanceMember = /*#__PURE__*/ function(ContractInstanceMembe
|
|
|
10
10
|
return ContractInstanceMember;
|
|
11
11
|
}({});
|
|
12
12
|
export class GetContractInstance extends Instruction {
|
|
13
|
-
|
|
13
|
+
addressingMode;
|
|
14
14
|
addressOffset;
|
|
15
15
|
dstOffset;
|
|
16
16
|
memberEnum;
|
|
@@ -24,12 +24,12 @@ export class GetContractInstance extends Instruction {
|
|
|
24
24
|
OperandType.UINT16,
|
|
25
25
|
OperandType.UINT8
|
|
26
26
|
];
|
|
27
|
-
constructor(
|
|
28
|
-
super(), this.
|
|
27
|
+
constructor(addressingMode, addressOffset, dstOffset, memberEnum){
|
|
28
|
+
super(), this.addressingMode = addressingMode, this.addressOffset = addressOffset, this.dstOffset = dstOffset, this.memberEnum = memberEnum;
|
|
29
29
|
}
|
|
30
30
|
async execute(context) {
|
|
31
31
|
const memory = context.machineState.memory;
|
|
32
|
-
const addressing = Addressing.fromWire(this.
|
|
32
|
+
const addressing = Addressing.fromWire(this.addressingMode);
|
|
33
33
|
context.machineState.consumeGas(this.baseGasCost(addressing.indirectOperandsCount(), addressing.relativeOperandsCount()));
|
|
34
34
|
if (!(this.memberEnum in ContractInstanceMember)) {
|
|
35
35
|
throw new InstructionExecutionError(`Invalid GETCONSTRACTINSTANCE member enum ${this.memberEnum}`);
|
|
@@ -11,13 +11,13 @@ export declare class Jump extends Instruction {
|
|
|
11
11
|
handlesPC(): boolean;
|
|
12
12
|
}
|
|
13
13
|
export declare class JumpI extends Instruction {
|
|
14
|
-
private
|
|
14
|
+
private addressingMode;
|
|
15
15
|
private condOffset;
|
|
16
16
|
private loc;
|
|
17
17
|
static type: string;
|
|
18
18
|
static readonly opcode: Opcode;
|
|
19
19
|
static readonly wireFormat: OperandType[];
|
|
20
|
-
constructor(
|
|
20
|
+
constructor(addressingMode: number, condOffset: number, loc: number);
|
|
21
21
|
execute(context: AvmContext): Promise<void>;
|
|
22
22
|
handlesPC(): boolean;
|
|
23
23
|
}
|
|
@@ -38,4 +38,4 @@ export declare class InternalReturn extends Instruction {
|
|
|
38
38
|
execute(context: AvmContext): Promise<void>;
|
|
39
39
|
handlesPC(): boolean;
|
|
40
40
|
}
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbF9mbG93LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcHVibGljL2F2bS9vcGNvZGVzL2NvbnRyb2xfZmxvdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUdwRCxPQUFPLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBRXBGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUUvQyxxQkFBYSxJQUFLLFNBQVEsV0FBVztJQU12QixPQUFPLENBQUMsVUFBVTtJQUw5QixNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBVTtJQUM3QixNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQWtCO0lBRWhELE1BQU0sQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLFdBQVcsRUFBRSxDQUEyQztJQUVwRixZQUFvQixVQUFVLEVBQUUsTUFBTSxFQUVyQztJQUVZLE9BQU8sQ0FBQyxPQUFPLEVBQUUsVUFBVSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FJdkQ7SUFFZSxTQUFTLElBQUksT0FBTyxDQUVuQztDQUNGO0FBRUQscUJBQWEsS0FBTSxTQUFRLFdBQVc7SUFhbEMsT0FBTyxDQUFDLGNBQWM7SUFDdEIsT0FBTyxDQUFDLFVBQVU7SUFDbEIsT0FBTyxDQUFDLEdBQUc7SUFkYixNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBVztJQUM5QixNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQW1CO0lBR2pELE1BQU0sQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLFdBQVcsRUFBRSxDQUt2QztJQUVGLFlBQ1UsY0FBYyxFQUFFLE1BQU0sRUFDdEIsVUFBVSxFQUFFLE1BQU0sRUFDbEIsR0FBRyxFQUFFLE1BQU0sRUFHcEI7SUFFWSxPQUFPLENBQUMsT0FBTyxFQUFFLFVBQVUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBbUJ2RDtJQUVlLFNBQVMsSUFBSSxPQUFPLENBRW5DO0NBQ0Y7QUFFRCxxQkFBYSxZQUFhLFNBQVEsV0FBVztJQU0vQixPQUFPLENBQUMsR0FBRztJQUx2QixNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxNQUFNLENBQWtCO0lBQzlDLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBdUI7SUFFckQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsV0FBVyxFQUFFLENBQTJDO0lBRXBGLFlBQW9CLEdBQUcsRUFBRSxNQUFNLEVBRTlCO0lBRVksT0FBTyxDQUFDLE9BQU8sRUFBRSxVQUFVLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQVF2RDtJQUVlLFNBQVMsSUFBSSxPQUFPLENBRW5DO0NBQ0Y7QUFFRCxxQkFBYSxjQUFlLFNBQVEsV0FBVztJQUM3QyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxNQUFNLENBQW9CO0lBQ2hELE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBeUI7SUFFdkQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsV0FBVyxFQUFFLENBQXVCO0lBRWhFLGNBRUM7SUFFWSxPQUFPLENBQUMsT0FBTyxFQUFFLFVBQVUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBUXZEO0lBRWUsU0FBUyxJQUFJLE9BQU8sQ0FFbkM7Q0FDRiJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"control_flow.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/opcodes/control_flow.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,IAAK,SAAQ,WAAW;IAMvB,OAAO,CAAC,UAAU;IAL9B,MAAM,CAAC,IAAI,EAAE,MAAM,CAAU;IAC7B,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAkB;IAEhD,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,EAAE,CAA2C;IAEpF,YAAoB,UAAU,EAAE,MAAM,EAErC;IAEY,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAIvD;IAEe,SAAS,IAAI,OAAO,CAEnC;CACF;AAED,qBAAa,KAAM,SAAQ,WAAW;IAalC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"control_flow.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/opcodes/control_flow.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,IAAK,SAAQ,WAAW;IAMvB,OAAO,CAAC,UAAU;IAL9B,MAAM,CAAC,IAAI,EAAE,MAAM,CAAU;IAC7B,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAkB;IAEhD,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,EAAE,CAA2C;IAEpF,YAAoB,UAAU,EAAE,MAAM,EAErC;IAEY,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAIvD;IAEe,SAAS,IAAI,OAAO,CAEnC;CACF;AAED,qBAAa,KAAM,SAAQ,WAAW;IAalC,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,GAAG;IAdb,MAAM,CAAC,IAAI,EAAE,MAAM,CAAW;IAC9B,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAmB;IAGjD,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,EAAE,CAKvC;IAEF,YACU,cAAc,EAAE,MAAM,EACtB,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,EAGpB;IAEY,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBvD;IAEe,SAAS,IAAI,OAAO,CAEnC;CACF;AAED,qBAAa,YAAa,SAAQ,WAAW;IAM/B,OAAO,CAAC,GAAG;IALvB,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAkB;IAC9C,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAuB;IAErD,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,EAAE,CAA2C;IAEpF,YAAoB,GAAG,EAAE,MAAM,EAE9B;IAEY,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAQvD;IAEe,SAAS,IAAI,OAAO,CAEnC;CACF;AAED,qBAAa,cAAe,SAAQ,WAAW;IAC7C,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAoB;IAChD,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAyB;IAEvD,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,EAAE,CAAuB;IAEhE,cAEC;IAEY,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAQvD;IAEe,SAAS,IAAI,OAAO,CAEnC;CACF"}
|
|
@@ -24,7 +24,7 @@ export class Jump extends Instruction {
|
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
26
|
export class JumpI extends Instruction {
|
|
27
|
-
|
|
27
|
+
addressingMode;
|
|
28
28
|
condOffset;
|
|
29
29
|
loc;
|
|
30
30
|
static type = 'JUMPI';
|
|
@@ -36,12 +36,12 @@ export class JumpI extends Instruction {
|
|
|
36
36
|
OperandType.UINT16,
|
|
37
37
|
OperandType.UINT32
|
|
38
38
|
];
|
|
39
|
-
constructor(
|
|
40
|
-
super(), this.
|
|
39
|
+
constructor(addressingMode, condOffset, loc){
|
|
40
|
+
super(), this.addressingMode = addressingMode, this.condOffset = condOffset, this.loc = loc;
|
|
41
41
|
}
|
|
42
42
|
async execute(context) {
|
|
43
43
|
const memory = context.machineState.memory;
|
|
44
|
-
const addressing = Addressing.fromWire(this.
|
|
44
|
+
const addressing = Addressing.fromWire(this.addressingMode);
|
|
45
45
|
context.machineState.consumeGas(this.baseGasCost(addressing.indirectOperandsCount(), addressing.relativeOperandsCount()));
|
|
46
46
|
const operands = [
|
|
47
47
|
this.condOffset
|
|
@@ -2,7 +2,7 @@ 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
4
|
export declare class ToRadixBE extends Instruction {
|
|
5
|
-
private
|
|
5
|
+
private addressingMode;
|
|
6
6
|
private srcOffset;
|
|
7
7
|
private radixOffset;
|
|
8
8
|
private numLimbsOffset;
|
|
@@ -11,8 +11,8 @@ export declare class ToRadixBE extends Instruction {
|
|
|
11
11
|
static type: string;
|
|
12
12
|
static readonly opcode: Opcode;
|
|
13
13
|
static readonly wireFormat: OperandType[];
|
|
14
|
-
constructor(
|
|
14
|
+
constructor(addressingMode: number, srcOffset: number, radixOffset: number, numLimbsOffset: number, outputBitsOffset: number, dstOffset: number);
|
|
15
15
|
execute(context: AvmContext): Promise<void>;
|
|
16
16
|
}
|
|
17
17
|
export declare const MODULUS_LIMBS_PER_RADIX: number[];
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2lvbi5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3B1YmxpYy9hdm0vb3Bjb2Rlcy9jb252ZXJzaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBR3BELE9BQU8sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFFcEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRS9DLHFCQUFhLFNBQVUsU0FBUSxXQUFXO0lBZ0J0QyxPQUFPLENBQUMsY0FBYztJQUN0QixPQUFPLENBQUMsU0FBUztJQUNqQixPQUFPLENBQUMsV0FBVztJQUNuQixPQUFPLENBQUMsY0FBYztJQUN0QixPQUFPLENBQUMsZ0JBQWdCO0lBQ3hCLE9BQU8sQ0FBQyxTQUFTO0lBcEJuQixNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBZTtJQUNsQyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQW9CO0lBR2xELE1BQU0sQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLFdBQVcsRUFBRSxDQVF2QztJQUVGLFlBQ1UsY0FBYyxFQUFFLE1BQU0sRUFDdEIsU0FBUyxFQUFFLE1BQU0sRUFDakIsV0FBVyxFQUFFLE1BQU0sRUFDbkIsY0FBYyxFQUFFLE1BQU0sRUFDdEIsZ0JBQWdCLEVBQUUsTUFBTSxFQUN4QixTQUFTLEVBQUUsTUFBTSxFQUcxQjtJQUVZLE9BQU8sQ0FBQyxPQUFPLEVBQUUsVUFBVSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0F3RHZEO0NBQ0Y7QUFHRCxlQUFPLE1BQU0sdUJBQXVCLEVBQUUsTUFBTSxFQVUzQyxDQUFDIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversion.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/opcodes/conversion.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,SAAU,SAAQ,WAAW;IAgBtC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"conversion.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/opcodes/conversion.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,SAAU,SAAQ,WAAW;IAgBtC,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,SAAS;IApBnB,MAAM,CAAC,IAAI,EAAE,MAAM,CAAe;IAClC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAoB;IAGlD,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,EAAE,CAQvC;IAEF,YACU,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,MAAM,EACxB,SAAS,EAAE,MAAM,EAG1B;IAEY,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAwDvD;CACF;AAGD,eAAO,MAAM,uBAAuB,EAAE,MAAM,EAU3C,CAAC"}
|
|
@@ -4,7 +4,7 @@ import { Opcode, OperandType } from '../serialization/instruction_serialization.
|
|
|
4
4
|
import { Addressing } from './addressing_mode.js';
|
|
5
5
|
import { Instruction } from './instruction.js';
|
|
6
6
|
export class ToRadixBE extends Instruction {
|
|
7
|
-
|
|
7
|
+
addressingMode;
|
|
8
8
|
srcOffset;
|
|
9
9
|
radixOffset;
|
|
10
10
|
numLimbsOffset;
|
|
@@ -22,12 +22,12 @@ export class ToRadixBE extends Instruction {
|
|
|
22
22
|
OperandType.UINT16,
|
|
23
23
|
OperandType.UINT16
|
|
24
24
|
];
|
|
25
|
-
constructor(
|
|
26
|
-
super(), this.
|
|
25
|
+
constructor(addressingMode, srcOffset, radixOffset, numLimbsOffset, outputBitsOffset, dstOffset){
|
|
26
|
+
super(), this.addressingMode = addressingMode, this.srcOffset = srcOffset, this.radixOffset = radixOffset, this.numLimbsOffset = numLimbsOffset, this.outputBitsOffset = outputBitsOffset, this.dstOffset = dstOffset;
|
|
27
27
|
}
|
|
28
28
|
async execute(context) {
|
|
29
29
|
const memory = context.machineState.memory;
|
|
30
|
-
const addressing = Addressing.fromWire(this.
|
|
30
|
+
const addressing = Addressing.fromWire(this.addressingMode);
|
|
31
31
|
context.machineState.consumeGas(this.baseGasCost(addressing.indirectOperandsCount(), addressing.relativeOperandsCount()));
|
|
32
32
|
const operands = [
|
|
33
33
|
this.srcOffset,
|
|
@@ -2,7 +2,7 @@ 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
4
|
export declare class EcAdd extends Instruction {
|
|
5
|
-
private
|
|
5
|
+
private addressingMode;
|
|
6
6
|
private p1XOffset;
|
|
7
7
|
private p1YOffset;
|
|
8
8
|
private p1IsInfiniteOffset;
|
|
@@ -13,7 +13,7 @@ export declare class EcAdd extends Instruction {
|
|
|
13
13
|
static type: string;
|
|
14
14
|
static readonly opcode: Opcode;
|
|
15
15
|
static readonly wireFormat: OperandType[];
|
|
16
|
-
constructor(
|
|
16
|
+
constructor(addressingMode: number, p1XOffset: number, p1YOffset: number, p1IsInfiniteOffset: number, p2XOffset: number, p2YOffset: number, p2IsInfiniteOffset: number, dstOffset: number);
|
|
17
17
|
execute(context: AvmContext): Promise<void>;
|
|
18
18
|
}
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNfYWRkLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcHVibGljL2F2bS9vcGNvZGVzL2VjX2FkZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUdwRCxPQUFPLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBRXBGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUUvQyxxQkFBYSxLQUFNLFNBQVEsV0FBVztJQWtCbEMsT0FBTyxDQUFDLGNBQWM7SUFDdEIsT0FBTyxDQUFDLFNBQVM7SUFDakIsT0FBTyxDQUFDLFNBQVM7SUFDakIsT0FBTyxDQUFDLGtCQUFrQjtJQUMxQixPQUFPLENBQUMsU0FBUztJQUNqQixPQUFPLENBQUMsU0FBUztJQUNqQixPQUFPLENBQUMsa0JBQWtCO0lBQzFCLE9BQU8sQ0FBQyxTQUFTO0lBeEJuQixNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBVztJQUM5QixNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sU0FBZ0I7SUFHdEMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsV0FBVyxFQUFFLENBVXZDO0lBRUYsWUFDVSxjQUFjLEVBQUUsTUFBTSxFQUN0QixTQUFTLEVBQUUsTUFBTSxFQUNqQixTQUFTLEVBQUUsTUFBTSxFQUNqQixrQkFBa0IsRUFBRSxNQUFNLEVBQzFCLFNBQVMsRUFBRSxNQUFNLEVBQ2pCLFNBQVMsRUFBRSxNQUFNLEVBQ2pCLGtCQUFrQixFQUFFLE1BQU0sRUFDMUIsU0FBUyxFQUFFLE1BQU0sRUFHMUI7SUFFWSxPQUFPLENBQUMsT0FBTyxFQUFFLFVBQVUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBc0R2RDtDQUNGIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ec_add.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/opcodes/ec_add.ts"],"names":[],"mappings":"AAGA,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,KAAM,SAAQ,WAAW;IAkBlC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"ec_add.d.ts","sourceRoot":"","sources":["../../../../src/public/avm/opcodes/ec_add.ts"],"names":[],"mappings":"AAGA,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,KAAM,SAAQ,WAAW;IAkBlC,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,kBAAkB;IAC1B,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,kBAAkB;IAC1B,OAAO,CAAC,SAAS;IAxBnB,MAAM,CAAC,IAAI,EAAE,MAAM,CAAW;IAC9B,MAAM,CAAC,QAAQ,CAAC,MAAM,SAAgB;IAGtC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,EAAE,CAUvC;IAEF,YACU,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,kBAAkB,EAAE,MAAM,EAC1B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,kBAAkB,EAAE,MAAM,EAC1B,SAAS,EAAE,MAAM,EAG1B;IAEY,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAsDvD;CACF"}
|