this repo has no description
at trunk 81 lines 2.6 kB view raw
1# Copyright (c) Facebook, Inc. and its affiliates. (http://www.facebook.com) 2from .opcode38cinder import opcode as opcode38cinder 3from .opcodebase import Opcode 4 5opcode: Opcode = opcode38cinder.copy() 6opcode.def_op("INVOKE_METHOD", 164) 7opcode.hasconst.add(164) 8opcode.def_op("LOAD_FIELD", 165) 9opcode.hasconst.add(165) 10opcode.def_op("STORE_FIELD", 166) 11opcode.hasconst.add(166) 12opcode.def_op("SEQUENCE_REPEAT", 167) 13opcode.def_op("CAST", 170) 14opcode.hasconst.add(170) 15opcode.def_op("LOAD_LOCAL", 171) 16opcode.hasconst.add(171) 17opcode.def_op("STORE_LOCAL", 172) 18opcode.hasconst.add(172) 19opcode.def_op("INT_LOAD_CONST_OLD", 173) 20opcode.def_op("PRIMITIVE_BOX", 174) 21opcode.jabs_op("POP_JUMP_IF_ZERO", 175) 22opcode.jabs_op("POP_JUMP_IF_NONZERO", 176) 23opcode.def_op("PRIMITIVE_UNBOX", 177) 24opcode.def_op("PRIMITIVE_BINARY_OP", 178) 25opcode.def_op("PRIMITIVE_UNARY_OP", 179) 26opcode.def_op("INT_COMPARE_OP", 180) 27opcode.def_op("LOAD_ITERABLE_ARG", 181) 28opcode.def_op("LOAD_MAPPING_ARG", 182) 29opcode.def_op("INVOKE_FUNCTION", 183) 30opcode.hasconst.add(183) 31opcode.jabs_op("JUMP_IF_ZERO_OR_POP", 184) 32opcode.jabs_op("JUMP_IF_NONZERO_OR_POP", 185) 33opcode.def_op("FAST_LEN", 186) 34opcode.def_op("CONVERT_PRIMITIVE", 187) 35opcode.def_op("CHECK_ARGS", 188) 36opcode.hasconst.add(188) 37opcode.def_op("BUILD_CHECKED_MAP", 191) 38opcode.hasconst.add(191) 39opcode.def_op("SEQUENCE_GET", 192) 40opcode.def_op("SEQUENCE_SET", 193) 41opcode.def_op("LIST_DEL", 194) 42opcode.def_op("REFINE_TYPE", 195) 43opcode.hasconst.add(195) 44opcode.def_op("PRIMITIVE_LOAD_CONST", 196) 45opcode.hasconst.add(196) 46opcode.def_op("RETURN_INT", 197) 47 48opcode.stack_effects.update( # noqa: C408 49 # Static opcodes 50 BUILD_CHECKED_MAP=lambda oparg, jmp: 1 - 2 * oparg[1], 51 CAST=0, 52 CHECK_ARGS=0, 53 CONVERT_PRIMITIVE=0, 54 FAST_LEN=0, 55 PRIMITIVE_BINARY_OP=lambda oparg, jmp: -1, 56 PRIMITIVE_BOX=0, 57 INT_COMPARE_OP=lambda oparg, jmp: -1, 58 INT_DUP_TOP_TWO=2, 59 PRIMITIVE_LOAD_CONST=1, 60 INT_LOAD_CONST_OLD=1, 61 PRIMITIVE_UNARY_OP=lambda oparg, jmp: 0, 62 PRIMITIVE_UNBOX=0, 63 INVOKE_FUNCTION=lambda oparg, jmp=0: (-oparg[1]) + 1, 64 INVOKE_METHOD=lambda oparg, jmp: -oparg[1], 65 JUMP_IF_NONZERO_OR_POP=lambda oparg, jmp=0: 0 if jmp else -1, 66 JUMP_IF_ZERO_OR_POP=lambda oparg, jmp=0: 0 if jmp else -1, 67 LIST_DEL=-2, 68 SEQUENCE_GET=-1, 69 SEQUENCE_SET=-3, 70 LOAD_FIELD=0, 71 LOAD_ITERABLE_ARG=1, 72 LOAD_LOCAL=1, 73 LOAD_MAPPING_ARG=lambda oparg, jmp=0: -1 if oparg == 2 else 1, 74 POP_JUMP_IF_NONZERO=-1, 75 POP_JUMP_IF_ZERO=-1, 76 STORE_FIELD=-2, 77 STORE_LOCAL=-1, 78 SEQUENCE_REPEAT=-1, 79 REFINE_TYPE=0, 80 RETURN_INT=-1, 81)