@@ -76,14 +76,11 @@ export const hash: hash = {$: "hash"}
7676export type setcpArg = { $ : "setcpArg" , range : range }
7777export const setcpArg : setcpArg = { $ : "setcpArg" , range : range ( - 15n , 239n ) }
7878
79- export type args = simpleArgs | xchgArgs | dictpush
79+ export type args = simpleArgs | dictpush
8080
8181export type simpleArgs = { $ : "simpleArgs" , children : arg [ ] }
8282export const seq = ( ...args : arg [ ] ) : simpleArgs => ( { $ : "simpleArgs" , children : args } )
8383
84- export type xchgArgs = { $ : "xchgArgs" , range : range }
85- export const xchgArgs : xchgArgs = { $ : "xchgArgs" , range : range ( 1n , 16n ) }
86-
8784export type codeSlice = { $ : "codeSlice" , refs : arg , bits : arg }
8885export const codeSlice = ( refs : arg , bits : arg ) : codeSlice => ( { $ : "codeSlice" , refs, bits} )
8986
@@ -1289,7 +1286,7 @@ export const instructions: Record<string, Opcode> = {
12891286
12901287 XCHG_0I_LONG : cat ( "stack" , mkfixedn ( 0x11 , 8 , 8 , seq ( stack2 ( 8 , 1n ) ) , `exec_xchg0_l` ) ) ,
12911288 XCHG_0I : cat ( "stack" , mkfixedrangen ( 0x02 , 0x10 , 8 , 4 , seq ( stack2 ( 4 , 1n ) ) , `exec_xchg0` ) ) ,
1292- XCHG_IJ : cat ( "stack" , mkfixedn ( 0x10 , 8 , 8 , xchgArgs , `exec_xchg` ) ) ,
1289+ XCHG_IJ : cat ( "stack" , mkfixedn ( 0x10 , 8 , 8 , seq ( stack2 ( 4 , 1n ) , stack ( 4 ) ) , `exec_xchg` ) ) ,
12931290 XCHG_1I : cat ( "stack" , mkfixedrangen ( 0x12 , 0x20 , 8 , 4 , seq ( s1 , stack2 ( 4 , 2n ) ) , `exec_xchg1` ) ) ,
12941291
12951292 // special case: opcode with holes
0 commit comments