From 03761421f8958ceb7c564c8a91041f05ffaf3b67 Mon Sep 17 00:00:00 2001 From: Evgenii Stratonikov Date: Fri, 24 Apr 2020 12:24:08 +0300 Subject: [PATCH] vm: reorder Array/Map opcodes Also SIZE can be used for both Arrays/Maps and ByteArrays. --- pkg/compiler/codegen.go | 12 +- pkg/rpc/request/tx_builder_test.go | 20 ++-- pkg/rpc/server/server_test.go | 6 +- pkg/rpc/server/testdata/test_contract.avm | Bin 841 -> 841 bytes pkg/rpc/server/testdata/testblocks.acc | Bin 204257 -> 204257 bytes pkg/vm/opcode/opcode.go | 33 +++--- pkg/vm/opcode/opcode_string.go | 130 +++++++++++----------- pkg/vm/vm.go | 9 +- pkg/vm/vm_test.go | 38 +++---- 9 files changed, 119 insertions(+), 129 deletions(-) diff --git a/pkg/compiler/codegen.go b/pkg/compiler/codegen.go index 510cacabe..9199e5607 100644 --- a/pkg/compiler/codegen.go +++ b/pkg/compiler/codegen.go @@ -398,7 +398,7 @@ func (c *codegen) Visit(node ast.Node) ast.Visitor { ast.Walk(c, n.High) } else { emit.Opcode(c.prog.BinWriter, opcode.OVER) - emit.Opcode(c.prog.BinWriter, opcode.ARRAYSIZE) + emit.Opcode(c.prog.BinWriter, opcode.SIZE) } emit.Opcode(c.prog.BinWriter, opcode.OVER) @@ -858,7 +858,7 @@ func (c *codegen) Visit(node ast.Node) ast.Visitor { ast.Walk(c, n.X) - emit.Opcode(c.prog.BinWriter, opcode.ARRAYSIZE) + emit.Opcode(c.prog.BinWriter, opcode.SIZE) emit.Opcode(c.prog.BinWriter, opcode.PUSH0) c.pushStackLabel(label, 2) @@ -1030,13 +1030,7 @@ func (c *codegen) convertBuiltin(expr *ast.CallExpr) { switch name { case "len": - arg := expr.Args[0] - typ := c.typeInfo.Types[arg].Type - if isStringType(typ) { - emit.Opcode(c.prog.BinWriter, opcode.SIZE) - } else { - emit.Opcode(c.prog.BinWriter, opcode.ARRAYSIZE) - } + emit.Opcode(c.prog.BinWriter, opcode.SIZE) case "append": arg := expr.Args[0] typ := c.typeInfo.Types[arg].Type diff --git a/pkg/rpc/request/tx_builder_test.go b/pkg/rpc/request/tx_builder_test.go index f6f04958b..74fcc394c 100644 --- a/pkg/rpc/request/tx_builder_test.go +++ b/pkg/rpc/request/tx_builder_test.go @@ -28,34 +28,34 @@ func TestInvocationScriptCreationGood(t *testing.T) { script: "0c023432676f459162ceeb248b071ec157d9e4f6fd26fdbe50", }, { ps: Params{{Type: StringT, Value: "a"}, {Type: ArrayT, Value: []Param{}}}, - script: "10c10c0161676f459162ceeb248b071ec157d9e4f6fd26fdbe50", + script: "10c00c0161676f459162ceeb248b071ec157d9e4f6fd26fdbe50", }, { ps: Params{{Type: StringT, Value: "a"}, {Type: ArrayT, Value: []Param{{Type: FuncParamT, Value: FuncParam{Type: smartcontract.ByteArrayType, Value: Param{Type: StringT, Value: "50befd26fdf6e4d957c11e078b24ebce6291456f"}}}}}}, - script: "0c1450befd26fdf6e4d957c11e078b24ebce6291456f11c10c0161676f459162ceeb248b071ec157d9e4f6fd26fdbe50", + script: "0c1450befd26fdf6e4d957c11e078b24ebce6291456f11c00c0161676f459162ceeb248b071ec157d9e4f6fd26fdbe50", }, { ps: Params{{Type: StringT, Value: "a"}, {Type: ArrayT, Value: []Param{{Type: FuncParamT, Value: FuncParam{Type: smartcontract.SignatureType, Value: Param{Type: StringT, Value: "4edf5005771de04619235d5a4c7a9a11bb78e008541f1da7725f654c33380a3c87e2959a025da706d7255cb3a3fa07ebe9c6559d0d9e6213c68049168eb1056f"}}}}}}, - script: "0c404edf5005771de04619235d5a4c7a9a11bb78e008541f1da7725f654c33380a3c87e2959a025da706d7255cb3a3fa07ebe9c6559d0d9e6213c68049168eb1056f11c10c0161676f459162ceeb248b071ec157d9e4f6fd26fdbe50", + script: "0c404edf5005771de04619235d5a4c7a9a11bb78e008541f1da7725f654c33380a3c87e2959a025da706d7255cb3a3fa07ebe9c6559d0d9e6213c68049168eb1056f11c00c0161676f459162ceeb248b071ec157d9e4f6fd26fdbe50", }, { ps: Params{{Type: StringT, Value: "a"}, {Type: ArrayT, Value: []Param{{Type: FuncParamT, Value: FuncParam{Type: smartcontract.StringType, Value: Param{Type: StringT, Value: "50befd26fdf6e4d957c11e078b24ebce6291456f"}}}}}}, - script: "0c283530626566643236666466366534643935376331316530373862323465626365363239313435366611c10c0161676f459162ceeb248b071ec157d9e4f6fd26fdbe50", + script: "0c283530626566643236666466366534643935376331316530373862323465626365363239313435366611c00c0161676f459162ceeb248b071ec157d9e4f6fd26fdbe50", }, { ps: Params{{Type: StringT, Value: "a"}, {Type: ArrayT, Value: []Param{{Type: FuncParamT, Value: FuncParam{Type: smartcontract.Hash160Type, Value: Param{Type: StringT, Value: "50befd26fdf6e4d957c11e078b24ebce6291456f"}}}}}}, - script: "0c146f459162ceeb248b071ec157d9e4f6fd26fdbe5011c10c0161676f459162ceeb248b071ec157d9e4f6fd26fdbe50", + script: "0c146f459162ceeb248b071ec157d9e4f6fd26fdbe5011c00c0161676f459162ceeb248b071ec157d9e4f6fd26fdbe50", }, { ps: Params{{Type: StringT, Value: "a"}, {Type: ArrayT, Value: []Param{{Type: FuncParamT, Value: FuncParam{Type: smartcontract.Hash256Type, Value: Param{Type: StringT, Value: "602c79718b16e442de58778e148d0b1084e3b2dffd5de6b7b16cee7969282de7"}}}}}}, - script: "0c20e72d286979ee6cb1b7e65dfddfb2e384100b8d148e7758de42e4168b71792c6011c10c0161676f459162ceeb248b071ec157d9e4f6fd26fdbe50", + script: "0c20e72d286979ee6cb1b7e65dfddfb2e384100b8d148e7758de42e4168b71792c6011c00c0161676f459162ceeb248b071ec157d9e4f6fd26fdbe50", }, { ps: Params{{Type: StringT, Value: "a"}, {Type: ArrayT, Value: []Param{{Type: FuncParamT, Value: FuncParam{Type: smartcontract.PublicKeyType, Value: Param{Type: StringT, Value: "03c089d7122b840a4935234e82e26ae5efd0c2acb627239dc9f207311337b6f2c1"}}}}}}, - script: "0c2103c089d7122b840a4935234e82e26ae5efd0c2acb627239dc9f207311337b6f2c111c10c0161676f459162ceeb248b071ec157d9e4f6fd26fdbe50", + script: "0c2103c089d7122b840a4935234e82e26ae5efd0c2acb627239dc9f207311337b6f2c111c00c0161676f459162ceeb248b071ec157d9e4f6fd26fdbe50", }, { ps: Params{{Type: StringT, Value: "a"}, {Type: ArrayT, Value: []Param{{Type: FuncParamT, Value: FuncParam{Type: smartcontract.IntegerType, Value: Param{Type: NumberT, Value: 42}}}}}}, - script: "002a11c10c0161676f459162ceeb248b071ec157d9e4f6fd26fdbe50", + script: "002a11c00c0161676f459162ceeb248b071ec157d9e4f6fd26fdbe50", }, { ps: Params{{Type: StringT, Value: "a"}, {Type: ArrayT, Value: []Param{{Type: FuncParamT, Value: FuncParam{Type: smartcontract.BoolType, Value: Param{Type: StringT, Value: "true"}}}}}}, - script: "1111c10c0161676f459162ceeb248b071ec157d9e4f6fd26fdbe50", + script: "1111c00c0161676f459162ceeb248b071ec157d9e4f6fd26fdbe50", }, { ps: Params{{Type: StringT, Value: "a"}, {Type: ArrayT, Value: []Param{{Type: FuncParamT, Value: FuncParam{Type: smartcontract.BoolType, Value: Param{Type: StringT, Value: "false"}}}}}}, - script: "1011c10c0161676f459162ceeb248b071ec157d9e4f6fd26fdbe50", + script: "1011c00c0161676f459162ceeb248b071ec157d9e4f6fd26fdbe50", }} for _, ps := range paramScripts { script, err := CreateFunctionInvocationScript(contract, ps.ps) diff --git a/pkg/rpc/server/server_test.go b/pkg/rpc/server/server_test.go index 65f46dbe0..49a494a65 100644 --- a/pkg/rpc/server/server_test.go +++ b/pkg/rpc/server/server_test.go @@ -48,18 +48,18 @@ type rpcTestCase struct { check func(t *testing.T, e *executor, result interface{}) } -const testContractHash = "6b9e88be61028590ebbb1296cbee09beed4ae75d" +const testContractHash = "7858559a8405f4e4e1834fcff274ddf4f1b8f407" var rpcTestCases = map[string][]rpcTestCase{ "getapplicationlog": { { name: "positive", - params: `["4459d8050e0abb0a42a9ec5a84dee1c5f8c449b11859265ef45a47c5ea369bc5"]`, + params: `["4108062977676178e8453a8ef84a702e01bb35af8a65c7529d04704fcb5f1e0e"]`, result: func(e *executor) interface{} { return &result.ApplicationLog{} }, check: func(t *testing.T, e *executor, acc interface{}) { res, ok := acc.(*result.ApplicationLog) require.True(t, ok) - expectedTxHash, err := util.Uint256DecodeStringLE("4459d8050e0abb0a42a9ec5a84dee1c5f8c449b11859265ef45a47c5ea369bc5") + expectedTxHash, err := util.Uint256DecodeStringLE("4108062977676178e8453a8ef84a702e01bb35af8a65c7529d04704fcb5f1e0e") require.NoError(t, err) assert.Equal(t, expectedTxHash, res.TxHash) assert.Equal(t, 1, len(res.Executions)) diff --git a/pkg/rpc/server/testdata/test_contract.avm b/pkg/rpc/server/testdata/test_contract.avm index 07f9c80eda3c75cbd81b775cd11e8f4fa6010ed9..725dc9a810b3268ed118d60f3c890abb81198f08 100755 GIT binary patch delta 406 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 J*h@r`{{=XqA20v_ delta 67967 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 diff --git a/pkg/vm/opcode/opcode.go b/pkg/vm/opcode/opcode.go index 3e4a5d640..c2d9d8611 100644 --- a/pkg/vm/opcode/opcode.go +++ b/pkg/vm/opcode/opcode.go @@ -98,7 +98,6 @@ const ( SUBSTR Opcode = 0x7F LEFT Opcode = 0x80 RIGHT Opcode = 0x81 - SIZE Opcode = 0x82 // Bitwise logic INVERT Opcode = 0x83 @@ -144,20 +143,24 @@ const ( CHECKMULTISIG Opcode = 0xAE // Advanced data structures (arrays, structures, maps) - ARRAYSIZE Opcode = 0xC0 - PACK Opcode = 0xC1 - UNPACK Opcode = 0xC2 - PICKITEM Opcode = 0xC3 - SETITEM Opcode = 0xC4 - NEWARRAY Opcode = 0xC5 - NEWSTRUCT Opcode = 0xC6 - NEWMAP Opcode = 0xC7 - APPEND Opcode = 0xC8 - REVERSE Opcode = 0xC9 - REMOVE Opcode = 0xCA - HASKEY Opcode = 0xCB - KEYS Opcode = 0xCC - VALUES Opcode = 0xCD + PACK Opcode = 0xC0 + UNPACK Opcode = 0xC1 + // NEWARRAY0 Opcode = 0xC2 + NEWARRAY Opcode = 0xC3 + // NEWARRAYT Opcode = 0xC4 + // NEWSTRUCT0 Opcode = 0xC5 + NEWSTRUCT Opcode = 0xC6 + NEWMAP Opcode = 0xC8 + SIZE Opcode = 0xCA + HASKEY Opcode = 0xCB + KEYS Opcode = 0xCC + VALUES Opcode = 0xCD + PICKITEM Opcode = 0xCE + APPEND Opcode = 0xCF + SETITEM Opcode = 0xD0 + REVERSEITEMS Opcode = 0xD1 + REMOVE Opcode = 0xD2 + // CLEARITEMS Opcode = 0xD3 // Exceptions THROW Opcode = 0xF0 diff --git a/pkg/vm/opcode/opcode_string.go b/pkg/vm/opcode/opcode_string.go index 3b34e8fdd..46102b2aa 100644 --- a/pkg/vm/opcode/opcode_string.go +++ b/pkg/vm/opcode/opcode_string.go @@ -85,7 +85,6 @@ func _() { _ = x[SUBSTR-127] _ = x[LEFT-128] _ = x[RIGHT-129] - _ = x[SIZE-130] _ = x[INVERT-131] _ = x[AND-132] _ = x[OR-133] @@ -123,25 +122,25 @@ func _() { _ = x[CHECKSIG-172] _ = x[VERIFY-173] _ = x[CHECKMULTISIG-174] - _ = x[ARRAYSIZE-192] - _ = x[PACK-193] - _ = x[UNPACK-194] - _ = x[PICKITEM-195] - _ = x[SETITEM-196] - _ = x[NEWARRAY-197] + _ = x[PACK-192] + _ = x[UNPACK-193] + _ = x[NEWARRAY-195] _ = x[NEWSTRUCT-198] - _ = x[NEWMAP-199] - _ = x[APPEND-200] - _ = x[REVERSE-201] - _ = x[REMOVE-202] + _ = x[NEWMAP-200] + _ = x[SIZE-202] _ = x[HASKEY-203] _ = x[KEYS-204] _ = x[VALUES-205] + _ = x[PICKITEM-206] + _ = x[APPEND-207] + _ = x[SETITEM-208] + _ = x[REVERSEITEMS-209] + _ = x[REMOVE-210] _ = x[THROW-240] _ = x[THROWIFNOT-241] } -const _Opcode_name = "PUSHINT8PUSHINT16PUSHINT32PUSHINT64PUSHINT128PUSHINT256PUSHNULLPUSHDATA1PUSHDATA2PUSHDATA4PUSHM1PUSH0PUSH1PUSH2PUSH3PUSH4PUSH5PUSH6PUSH7PUSH8PUSH9PUSH10PUSH11PUSH12PUSH13PUSH14PUSH15PUSH16NOPJMPJMP_LJMPIFJMPIF_LJMPIFNOTJMPIFNOT_LJMPEQJMPEQ_LJMPNEJMPNE_LJMPGTJMPGT_LJMPGEJMPGE_LJMPLTJMPLT_LJMPLEJMPLE_LCALLCALL_LOLDPUSH1RETAPPCALLSYSCALLTAILCALLDUPFROMALTSTACKTOALTSTACKFROMALTSTACKXDROPISNULLXSWAPXTUCKDEPTHDROPDUPNIPOVERPICKROLLROTSWAPTUCKCATSUBSTRLEFTRIGHTSIZEINVERTANDORXOREQUALINCDECSIGNNEGATEABSNOTNZADDSUBMULDIVMODSHLSHRBOOLANDBOOLORNUMEQUALNUMNOTEQUALLTGTLTEGTEMINMAXWITHINSHA1SHA256HASH160HASH256CHECKSIGVERIFYCHECKMULTISIGARRAYSIZEPACKUNPACKPICKITEMSETITEMNEWARRAYNEWSTRUCTNEWMAPAPPENDREVERSEREMOVEHASKEYKEYSVALUESTHROWTHROWIFNOT" +const _Opcode_name = "PUSHINT8PUSHINT16PUSHINT32PUSHINT64PUSHINT128PUSHINT256PUSHNULLPUSHDATA1PUSHDATA2PUSHDATA4PUSHM1PUSH0PUSH1PUSH2PUSH3PUSH4PUSH5PUSH6PUSH7PUSH8PUSH9PUSH10PUSH11PUSH12PUSH13PUSH14PUSH15PUSH16NOPJMPJMP_LJMPIFJMPIF_LJMPIFNOTJMPIFNOT_LJMPEQJMPEQ_LJMPNEJMPNE_LJMPGTJMPGT_LJMPGEJMPGE_LJMPLTJMPLT_LJMPLEJMPLE_LCALLCALL_LOLDPUSH1RETAPPCALLSYSCALLTAILCALLDUPFROMALTSTACKTOALTSTACKFROMALTSTACKXDROPISNULLXSWAPXTUCKDEPTHDROPDUPNIPOVERPICKROLLROTSWAPTUCKCATSUBSTRLEFTRIGHTINVERTANDORXOREQUALINCDECSIGNNEGATEABSNOTNZADDSUBMULDIVMODSHLSHRBOOLANDBOOLORNUMEQUALNUMNOTEQUALLTGTLTEGTEMINMAXWITHINSHA1SHA256HASH160HASH256CHECKSIGVERIFYCHECKMULTISIGPACKUNPACKNEWARRAYNEWSTRUCTNEWMAPSIZEHASKEYKEYSVALUESPICKITEMAPPENDSETITEMREVERSEITEMSREMOVETHROWTHROWIFNOT" var _Opcode_map = map[Opcode]string{ 0: _Opcode_name[0:8], @@ -219,60 +218,59 @@ var _Opcode_map = map[Opcode]string{ 127: _Opcode_name[443:449], 128: _Opcode_name[449:453], 129: _Opcode_name[453:458], - 130: _Opcode_name[458:462], - 131: _Opcode_name[462:468], - 132: _Opcode_name[468:471], - 133: _Opcode_name[471:473], - 134: _Opcode_name[473:476], - 135: _Opcode_name[476:481], - 139: _Opcode_name[481:484], - 140: _Opcode_name[484:487], - 141: _Opcode_name[487:491], - 143: _Opcode_name[491:497], - 144: _Opcode_name[497:500], - 145: _Opcode_name[500:503], - 146: _Opcode_name[503:505], - 147: _Opcode_name[505:508], - 148: _Opcode_name[508:511], - 149: _Opcode_name[511:514], - 150: _Opcode_name[514:517], - 151: _Opcode_name[517:520], - 152: _Opcode_name[520:523], - 153: _Opcode_name[523:526], - 154: _Opcode_name[526:533], - 155: _Opcode_name[533:539], - 156: _Opcode_name[539:547], - 158: _Opcode_name[547:558], - 159: _Opcode_name[558:560], - 160: _Opcode_name[560:562], - 161: _Opcode_name[562:565], - 162: _Opcode_name[565:568], - 163: _Opcode_name[568:571], - 164: _Opcode_name[571:574], - 165: _Opcode_name[574:580], - 167: _Opcode_name[580:584], - 168: _Opcode_name[584:590], - 169: _Opcode_name[590:597], - 170: _Opcode_name[597:604], - 172: _Opcode_name[604:612], - 173: _Opcode_name[612:618], - 174: _Opcode_name[618:631], - 192: _Opcode_name[631:640], - 193: _Opcode_name[640:644], - 194: _Opcode_name[644:650], - 195: _Opcode_name[650:658], - 196: _Opcode_name[658:665], - 197: _Opcode_name[665:673], - 198: _Opcode_name[673:682], - 199: _Opcode_name[682:688], - 200: _Opcode_name[688:694], - 201: _Opcode_name[694:701], - 202: _Opcode_name[701:707], - 203: _Opcode_name[707:713], - 204: _Opcode_name[713:717], - 205: _Opcode_name[717:723], - 240: _Opcode_name[723:728], - 241: _Opcode_name[728:738], + 131: _Opcode_name[458:464], + 132: _Opcode_name[464:467], + 133: _Opcode_name[467:469], + 134: _Opcode_name[469:472], + 135: _Opcode_name[472:477], + 139: _Opcode_name[477:480], + 140: _Opcode_name[480:483], + 141: _Opcode_name[483:487], + 143: _Opcode_name[487:493], + 144: _Opcode_name[493:496], + 145: _Opcode_name[496:499], + 146: _Opcode_name[499:501], + 147: _Opcode_name[501:504], + 148: _Opcode_name[504:507], + 149: _Opcode_name[507:510], + 150: _Opcode_name[510:513], + 151: _Opcode_name[513:516], + 152: _Opcode_name[516:519], + 153: _Opcode_name[519:522], + 154: _Opcode_name[522:529], + 155: _Opcode_name[529:535], + 156: _Opcode_name[535:543], + 158: _Opcode_name[543:554], + 159: _Opcode_name[554:556], + 160: _Opcode_name[556:558], + 161: _Opcode_name[558:561], + 162: _Opcode_name[561:564], + 163: _Opcode_name[564:567], + 164: _Opcode_name[567:570], + 165: _Opcode_name[570:576], + 167: _Opcode_name[576:580], + 168: _Opcode_name[580:586], + 169: _Opcode_name[586:593], + 170: _Opcode_name[593:600], + 172: _Opcode_name[600:608], + 173: _Opcode_name[608:614], + 174: _Opcode_name[614:627], + 192: _Opcode_name[627:631], + 193: _Opcode_name[631:637], + 195: _Opcode_name[637:645], + 198: _Opcode_name[645:654], + 200: _Opcode_name[654:660], + 202: _Opcode_name[660:664], + 203: _Opcode_name[664:670], + 204: _Opcode_name[670:674], + 205: _Opcode_name[674:680], + 206: _Opcode_name[680:688], + 207: _Opcode_name[688:694], + 208: _Opcode_name[694:701], + 209: _Opcode_name[701:713], + 210: _Opcode_name[713:719], + 240: _Opcode_name[719:724], + 241: _Opcode_name[724:734], } func (i Opcode) String() string { diff --git a/pkg/vm/vm.go b/pkg/vm/vm.go index f6a88ac8c..8068e2bec 100644 --- a/pkg/vm/vm.go +++ b/pkg/vm/vm.go @@ -1058,7 +1058,7 @@ func (v *VM) execute(ctx *Context, op opcode.Opcode, parameter []byte) (err erro panic(fmt.Sprintf("SETITEM: invalid item type %s", t)) } - case opcode.REVERSE: + case opcode.REVERSEITEMS: a := v.estack.Pop().Array() if len(a) > 1 { for i, j := 0, len(a)-1; i <= j; i, j = i+1, j-1 { @@ -1100,7 +1100,7 @@ func (v *VM) execute(ctx *Context, op opcode.Opcode, parameter []byte) (err erro panic("REMOVE: invalid type") } - case opcode.ARRAYSIZE: + case opcode.SIZE: elem := v.estack.Pop() // Cause there is no native (byte) item type here, hence we need to check // the type of the item for array size operations. @@ -1113,11 +1113,6 @@ func (v *VM) execute(ctx *Context, op opcode.Opcode, parameter []byte) (err erro v.estack.PushVal(len(elem.Bytes())) } - case opcode.SIZE: - elem := v.estack.Pop() - arr := elem.Bytes() - v.estack.PushVal(len(arr)) - case opcode.JMP, opcode.JMPL, opcode.JMPIF, opcode.JMPIFL, opcode.JMPIFNOT, opcode.JMPIFNOTL, opcode.JMPEQ, opcode.JMPEQL, opcode.JMPNE, opcode.JMPNEL, opcode.JMPGT, opcode.JMPGTL, opcode.JMPGE, opcode.JMPGEL, diff --git a/pkg/vm/vm_test.go b/pkg/vm/vm_test.go index 29a793f5f..e633247f6 100644 --- a/pkg/vm/vm_test.go +++ b/pkg/vm/vm_test.go @@ -1581,8 +1581,8 @@ func TestSIZEBool(t *testing.T) { assert.Equal(t, makeStackItem(1), vm.estack.Pop().value) } -func TestARRAYSIZEArray(t *testing.T) { - prog := makeProgram(opcode.ARRAYSIZE) +func TestSIZEArray(t *testing.T) { + prog := makeProgram(opcode.SIZE) vm := load(prog) vm.estack.PushVal([]StackItem{ makeStackItem(1), @@ -1593,8 +1593,8 @@ func TestARRAYSIZEArray(t *testing.T) { assert.Equal(t, makeStackItem(2), vm.estack.Pop().value) } -func TestARRAYSIZEMap(t *testing.T) { - prog := makeProgram(opcode.ARRAYSIZE) +func TestSIZEMap(t *testing.T) { + prog := makeProgram(opcode.SIZE) vm := load(prog) m := NewMapItem() @@ -2534,19 +2534,19 @@ func TestUNPACKGood(t *testing.T) { assert.Equal(t, int64(1), vm.estack.Peek(len(elements)+1).BigInt().Int64()) } -func TestREVERSEBadNotArray(t *testing.T) { - prog := makeProgram(opcode.REVERSE) +func TestREVERSEITEMSBadNotArray(t *testing.T) { + prog := makeProgram(opcode.REVERSEITEMS) vm := load(prog) vm.estack.PushVal(1) checkVMFailed(t, vm) } -func testREVERSEIssue437(t *testing.T, i1, i2 opcode.Opcode, reversed bool) { +func testREVERSEITEMSIssue437(t *testing.T, i1, i2 opcode.Opcode, reversed bool) { prog := makeProgram( opcode.PUSH0, i1, opcode.DUP, opcode.PUSH1, opcode.APPEND, opcode.DUP, opcode.PUSH2, opcode.APPEND, - opcode.DUP, i2, opcode.REVERSE) + opcode.DUP, i2, opcode.REVERSEITEMS) vm := load(prog) vm.Run() @@ -2567,15 +2567,15 @@ func testREVERSEIssue437(t *testing.T, i1, i2 opcode.Opcode, reversed bool) { } } -func TestREVERSEIssue437(t *testing.T) { - t.Run("Array+Array", func(t *testing.T) { testREVERSEIssue437(t, opcode.NEWARRAY, opcode.NEWARRAY, true) }) - t.Run("Struct+Struct", func(t *testing.T) { testREVERSEIssue437(t, opcode.NEWSTRUCT, opcode.NEWSTRUCT, true) }) - t.Run("Array+Struct", func(t *testing.T) { testREVERSEIssue437(t, opcode.NEWARRAY, opcode.NEWSTRUCT, false) }) - t.Run("Struct+Array", func(t *testing.T) { testREVERSEIssue437(t, opcode.NEWSTRUCT, opcode.NEWARRAY, false) }) +func TestREVERSEITEMSIssue437(t *testing.T) { + t.Run("Array+Array", func(t *testing.T) { testREVERSEITEMSIssue437(t, opcode.NEWARRAY, opcode.NEWARRAY, true) }) + t.Run("Struct+Struct", func(t *testing.T) { testREVERSEITEMSIssue437(t, opcode.NEWSTRUCT, opcode.NEWSTRUCT, true) }) + t.Run("Array+Struct", func(t *testing.T) { testREVERSEITEMSIssue437(t, opcode.NEWARRAY, opcode.NEWSTRUCT, false) }) + t.Run("Struct+Array", func(t *testing.T) { testREVERSEITEMSIssue437(t, opcode.NEWSTRUCT, opcode.NEWARRAY, false) }) } -func TestREVERSEGoodOneElem(t *testing.T) { - prog := makeProgram(opcode.DUP, opcode.REVERSE) +func TestREVERSEITEMSGoodOneElem(t *testing.T) { + prog := makeProgram(opcode.DUP, opcode.REVERSEITEMS) elements := []int{22} vm := load(prog) vm.estack.PushVal(1) @@ -2588,13 +2588,13 @@ func TestREVERSEGoodOneElem(t *testing.T) { assert.Equal(t, int64(elements[0]), e.Int64()) } -func TestREVERSEGoodStruct(t *testing.T) { +func TestREVERSEITEMSGoodStruct(t *testing.T) { eodd := []int{22, 34, 42, 55, 81} even := []int{22, 34, 42, 55, 81, 99} eall := [][]int{eodd, even} for _, elements := range eall { - prog := makeProgram(opcode.DUP, opcode.REVERSE) + prog := makeProgram(opcode.DUP, opcode.REVERSEITEMS) vm := load(prog) vm.estack.PushVal(1) @@ -2616,13 +2616,13 @@ func TestREVERSEGoodStruct(t *testing.T) { } } -func TestREVERSEGood(t *testing.T) { +func TestREVERSEITEMSGood(t *testing.T) { eodd := []int{22, 34, 42, 55, 81} even := []int{22, 34, 42, 55, 81, 99} eall := [][]int{eodd, even} for _, elements := range eall { - prog := makeProgram(opcode.DUP, opcode.REVERSE) + prog := makeProgram(opcode.DUP, opcode.REVERSEITEMS) vm := load(prog) vm.estack.PushVal(1) vm.estack.PushVal(elements)