1
- import { NumeralSystem } from "@/context/NumeralSystem" ;
2
- import { ArgumentType , Args , ProgramDecoder , BasicBlocks } from "@typeberry/pvm-debugger-adapter " ;
1
+ import { NumeralSystem } from "@/context/NumeralSystem.tsx " ;
2
+ import { pvm } from "@typeberry/lib " ;
3
3
import { ArgumentBitLengths , ArgsDecoder } from "@/packages/pvm/pvm/args-decoder" ;
4
4
5
5
export const valueToNumeralSystem = (
@@ -31,25 +31,25 @@ export enum argType {
31
31
export const getArgumentBitLengths = (
32
32
argsDecoder : ArgsDecoder ,
33
33
pc : number ,
34
- argType : ArgumentType ,
34
+ argType : pvm . ArgumentType ,
35
35
) : ArgumentBitLengths => {
36
36
return argsDecoder . calculateArgumentBitLengths ( pc , argType ) ;
37
37
} ;
38
38
39
39
export const decodeAndGetArgsDecoder = ( program : number [ ] ) => {
40
40
// Create an instance of ArgsDecoder to calculate bit lengths
41
- const programDecoder = new ProgramDecoder ( new Uint8Array ( program ) ) ;
41
+ const programDecoder = new pvm . ProgramDecoder ( new Uint8Array ( program ) ) ;
42
42
const code = programDecoder . getCode ( ) ;
43
43
const mask = programDecoder . getMask ( ) ;
44
- const blocks = new BasicBlocks ( ) ;
44
+ const blocks = new pvm . BasicBlocks ( ) ;
45
45
blocks . reset ( code , mask ) ;
46
46
const argsDecoder = new ArgsDecoder ( ) ;
47
47
argsDecoder . reset ( code , mask ) ;
48
48
return argsDecoder ;
49
49
} ;
50
50
51
51
export const mapInstructionsArgsByType = (
52
- args : Args | null ,
52
+ args : pvm . Args | null ,
53
53
numeralSystem : NumeralSystem ,
54
54
counter : number ,
55
55
argsDecoder : ArgsDecoder ,
@@ -68,12 +68,12 @@ export const mapInstructionsArgsByType = (
68
68
69
69
// Calculate bit lengths for the current instruction
70
70
const bitLengths =
71
- args . type !== ArgumentType . NO_ARGUMENTS ? getArgumentBitLengths ( argsDecoder , counter , args . type ) : undefined ;
71
+ args . type !== pvm . ArgumentType . NO_ARGUMENTS ? getArgumentBitLengths ( argsDecoder , counter , args . type ) : undefined ;
72
72
73
73
switch ( args . type ) {
74
- case ArgumentType . NO_ARGUMENTS :
74
+ case pvm . ArgumentType . NO_ARGUMENTS :
75
75
return [ ] ;
76
- case ArgumentType . ONE_IMMEDIATE :
76
+ case pvm . ArgumentType . ONE_IMMEDIATE :
77
77
return [
78
78
{
79
79
type : argType . IMMEDIATE ,
@@ -83,7 +83,7 @@ export const mapInstructionsArgsByType = (
83
83
hiddenFromDetails : bitLengths ?. immediateDecoderBits === 0 ,
84
84
} ,
85
85
] ;
86
- case ArgumentType . TWO_IMMEDIATES :
86
+ case pvm . ArgumentType . TWO_IMMEDIATES :
87
87
return [
88
88
{
89
89
type : argType . IMMEDIATE_LENGTH ,
@@ -107,7 +107,7 @@ export const mapInstructionsArgsByType = (
107
107
hiddenFromDetails : bitLengths ?. secondImmediateDecoderBits === 0 ,
108
108
} ,
109
109
] ;
110
- case ArgumentType . ONE_OFFSET :
110
+ case pvm . ArgumentType . ONE_OFFSET :
111
111
return [
112
112
{
113
113
type : argType . OFFSET ,
@@ -117,7 +117,7 @@ export const mapInstructionsArgsByType = (
117
117
hiddenFromDetails : bitLengths ?. offsetBits === 0 ,
118
118
} ,
119
119
] ;
120
- case ArgumentType . ONE_REGISTER_ONE_IMMEDIATE :
120
+ case pvm . ArgumentType . ONE_REGISTER_ONE_IMMEDIATE :
121
121
return [
122
122
{
123
123
type : argType . REGISTER ,
@@ -134,7 +134,7 @@ export const mapInstructionsArgsByType = (
134
134
hiddenFromDetails : bitLengths ?. immediateDecoderBits === 0 ,
135
135
} ,
136
136
] ;
137
- case ArgumentType . ONE_REGISTER_TWO_IMMEDIATES :
137
+ case pvm . ArgumentType . ONE_REGISTER_TWO_IMMEDIATES :
138
138
return [
139
139
{
140
140
type : argType . REGISTER ,
@@ -165,7 +165,7 @@ export const mapInstructionsArgsByType = (
165
165
hiddenFromDetails : bitLengths ?. secondImmediateDecoderBits === 0 ,
166
166
} ,
167
167
] ;
168
- case ArgumentType . ONE_REGISTER_ONE_IMMEDIATE_ONE_OFFSET :
168
+ case pvm . ArgumentType . ONE_REGISTER_ONE_IMMEDIATE_ONE_OFFSET :
169
169
return [
170
170
{
171
171
type : argType . REGISTER ,
@@ -196,7 +196,7 @@ export const mapInstructionsArgsByType = (
196
196
hiddenFromDetails : bitLengths ?. offsetBits === 0 ,
197
197
} ,
198
198
] ;
199
- case ArgumentType . ONE_REGISTER_ONE_EXTENDED_WIDTH_IMMEDIATE :
199
+ case pvm . ArgumentType . ONE_REGISTER_ONE_EXTENDED_WIDTH_IMMEDIATE :
200
200
return [
201
201
{
202
202
type : argType . REGISTER ,
@@ -213,7 +213,7 @@ export const mapInstructionsArgsByType = (
213
213
hiddenFromDetails : bitLengths ?. immediateDecoderBits === 0 ,
214
214
} ,
215
215
] ;
216
- case ArgumentType . TWO_REGISTERS :
216
+ case pvm . ArgumentType . TWO_REGISTERS :
217
217
return [
218
218
{
219
219
type : argType . REGISTER ,
@@ -230,7 +230,7 @@ export const mapInstructionsArgsByType = (
230
230
argumentBitLength : bitLengths ?. secondRegisterIndexBits || 4 ,
231
231
} ,
232
232
] ;
233
- case ArgumentType . TWO_REGISTERS_ONE_IMMEDIATE :
233
+ case pvm . ArgumentType . TWO_REGISTERS_ONE_IMMEDIATE :
234
234
return [
235
235
{
236
236
type : argType . REGISTER ,
@@ -254,7 +254,7 @@ export const mapInstructionsArgsByType = (
254
254
hiddenFromDetails : bitLengths ?. immediateDecoderBits === 0 ,
255
255
} ,
256
256
] ;
257
- case ArgumentType . TWO_REGISTERS_ONE_OFFSET :
257
+ case pvm . ArgumentType . TWO_REGISTERS_ONE_OFFSET :
258
258
return [
259
259
{
260
260
type : argType . REGISTER ,
@@ -278,7 +278,7 @@ export const mapInstructionsArgsByType = (
278
278
hiddenFromDetails : bitLengths ?. offsetBits === 0 ,
279
279
} ,
280
280
] ;
281
- case ArgumentType . TWO_REGISTERS_TWO_IMMEDIATES :
281
+ case pvm . ArgumentType . TWO_REGISTERS_TWO_IMMEDIATES :
282
282
return [
283
283
{
284
284
type : argType . REGISTER ,
@@ -316,7 +316,7 @@ export const mapInstructionsArgsByType = (
316
316
hiddenFromDetails : bitLengths ?. secondImmediateDecoderBits === 0 ,
317
317
} ,
318
318
] ;
319
- case ArgumentType . THREE_REGISTERS :
319
+ case pvm . ArgumentType . THREE_REGISTERS :
320
320
return [
321
321
{
322
322
type : argType . REGISTER ,
@@ -346,7 +346,7 @@ export const mapInstructionsArgsByType = (
346
346
} ;
347
347
348
348
export const getASMInstructionValueHtml = (
349
- args : Args ,
349
+ args : pvm . Args ,
350
350
numeralSystem : number ,
351
351
counter : number ,
352
352
argsDecoder : ArgsDecoder ,
0 commit comments