Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes15kdownloads
pycore_opcode_metadata.h2118 linesDownload Raw Back to internal
1// This file is generated by Tools/cases_generator/opcode_metadata_generator.py2// from:3//   Python/bytecodes.c4// Do not edit!5 6#ifndef Py_CORE_OPCODE_METADATA_H7#define Py_CORE_OPCODE_METADATA_H8#ifdef __cplusplus9extern "C" {10#endif11 12#ifndef Py_BUILD_CORE13#  error "this header requires Py_BUILD_CORE define"14#endif15 16#include <stdbool.h>              // bool17#include "opcode_ids.h"18 19 20#define IS_PSEUDO_INSTR(OP)  ( \21    ((OP) == LOAD_CLOSURE) || \22    ((OP) == STORE_FAST_MAYBE_NULL) || \23    ((OP) == ANNOTATIONS_PLACEHOLDER) || \24    ((OP) == JUMP) || \25    ((OP) == JUMP_NO_INTERRUPT) || \26    ((OP) == JUMP_IF_FALSE) || \27    ((OP) == JUMP_IF_TRUE) || \28    ((OP) == SETUP_FINALLY) || \29    ((OP) == SETUP_CLEANUP) || \30    ((OP) == SETUP_WITH) || \31    ((OP) == POP_BLOCK) || \32    0)33 34#include "pycore_uop_ids.h"35extern int _PyOpcode_num_popped(int opcode, int oparg);36#ifdef NEED_OPCODE_METADATA37int _PyOpcode_num_popped(int opcode, int oparg)  {38    switch(opcode) {39        case ANNOTATIONS_PLACEHOLDER:40            return 0;41        case BINARY_OP:42            return 2;43        case BINARY_OP_ADD_FLOAT:44            return 2;45        case BINARY_OP_ADD_INT:46            return 2;47        case BINARY_OP_ADD_UNICODE:48            return 2;49        case BINARY_OP_EXTEND:50            return 2;51        case BINARY_OP_INPLACE_ADD_UNICODE:52            return 2;53        case BINARY_OP_MULTIPLY_FLOAT:54            return 2;55        case BINARY_OP_MULTIPLY_INT:56            return 2;57        case BINARY_OP_SUBSCR_DICT:58            return 2;59        case BINARY_OP_SUBSCR_GETITEM:60            return 2;61        case BINARY_OP_SUBSCR_LIST_INT:62            return 2;63        case BINARY_OP_SUBSCR_LIST_SLICE:64            return 2;65        case BINARY_OP_SUBSCR_STR_INT:66            return 2;67        case BINARY_OP_SUBSCR_TUPLE_INT:68            return 2;69        case BINARY_OP_SUBTRACT_FLOAT:70            return 2;71        case BINARY_OP_SUBTRACT_INT:72            return 2;73        case BINARY_SLICE:74            return 3;75        case BUILD_INTERPOLATION:76            return 2 + (oparg & 1);77        case BUILD_LIST:78            return oparg;79        case BUILD_MAP:80            return oparg*2;81        case BUILD_SET:82            return oparg;83        case BUILD_SLICE:84            return oparg;85        case BUILD_STRING:86            return oparg;87        case BUILD_TEMPLATE:88            return 2;89        case BUILD_TUPLE:90            return oparg;91        case CACHE:92            return 0;93        case CALL:94            return 2 + oparg;95        case CALL_ALLOC_AND_ENTER_INIT:96            return 2 + oparg;97        case CALL_BOUND_METHOD_EXACT_ARGS:98            return 2 + oparg;99        case CALL_BOUND_METHOD_GENERAL:100            return 2 + oparg;101        case CALL_BUILTIN_CLASS:102            return 2 + oparg;103        case CALL_BUILTIN_FAST:104            return 2 + oparg;105        case CALL_BUILTIN_FAST_WITH_KEYWORDS:106            return 2 + oparg;107        case CALL_BUILTIN_O:108            return 2 + oparg;109        case CALL_FUNCTION_EX:110            return 4;111        case CALL_INTRINSIC_1:112            return 1;113        case CALL_INTRINSIC_2:114            return 2;115        case CALL_ISINSTANCE:116            return 2 + oparg;117        case CALL_KW:118            return 3 + oparg;119        case CALL_KW_BOUND_METHOD:120            return 3 + oparg;121        case CALL_KW_NON_PY:122            return 3 + oparg;123        case CALL_KW_PY:124            return 3 + oparg;125        case CALL_LEN:126            return 3;127        case CALL_LIST_APPEND:128            return 3;129        case CALL_METHOD_DESCRIPTOR_FAST:130            return 2 + oparg;131        case CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS:132            return 2 + oparg;133        case CALL_METHOD_DESCRIPTOR_NOARGS:134            return 2 + oparg;135        case CALL_METHOD_DESCRIPTOR_O:136            return 2 + oparg;137        case CALL_NON_PY_GENERAL:138            return 2 + oparg;139        case CALL_PY_EXACT_ARGS:140            return 2 + oparg;141        case CALL_PY_GENERAL:142            return 2 + oparg;143        case CALL_STR_1:144            return 3;145        case CALL_TUPLE_1:146            return 3;147        case CALL_TYPE_1:148            return 3;149        case CHECK_EG_MATCH:150            return 2;151        case CHECK_EXC_MATCH:152            return 2;153        case CLEANUP_THROW:154            return 3;155        case COMPARE_OP:156            return 2;157        case COMPARE_OP_FLOAT:158            return 2;159        case COMPARE_OP_INT:160            return 2;161        case COMPARE_OP_STR:162            return 2;163        case CONTAINS_OP:164            return 2;165        case CONTAINS_OP_DICT:166            return 2;167        case CONTAINS_OP_SET:168            return 2;169        case CONVERT_VALUE:170            return 1;171        case COPY:172            return 1 + (oparg-1);173        case COPY_FREE_VARS:174            return 0;175        case DELETE_ATTR:176            return 1;177        case DELETE_DEREF:178            return 0;179        case DELETE_FAST:180            return 0;181        case DELETE_GLOBAL:182            return 0;183        case DELETE_NAME:184            return 0;185        case DELETE_SUBSCR:186            return 2;187        case DICT_MERGE:188            return 5 + (oparg - 1);189        case DICT_UPDATE:190            return 2 + (oparg - 1);191        case END_ASYNC_FOR:192            return 2;193        case END_FOR:194            return 1;195        case END_SEND:196            return 2;197        case ENTER_EXECUTOR:198            return 0;199        case EXIT_INIT_CHECK:200            return 1;201        case EXTENDED_ARG:202            return 0;203        case FORMAT_SIMPLE:204            return 1;205        case FORMAT_WITH_SPEC:206            return 2;207        case FOR_ITER:208            return 1;209        case FOR_ITER_GEN:210            return 1;211        case FOR_ITER_LIST:212            return 1;213        case FOR_ITER_RANGE:214            return 1;215        case FOR_ITER_TUPLE:216            return 1;217        case GET_AITER:218            return 1;219        case GET_ANEXT:220            return 1;221        case GET_AWAITABLE:222            return 1;223        case GET_ITER:224            return 1;225        case GET_LEN:226            return 1;227        case GET_YIELD_FROM_ITER:228            return 1;229        case IMPORT_FROM:230            return 1;231        case IMPORT_NAME:232            return 2;233        case INSTRUMENTED_CALL:234            return 2 + oparg;235        case INSTRUMENTED_CALL_FUNCTION_EX:236            return 4;237        case INSTRUMENTED_CALL_KW:238            return 3 + oparg;239        case INSTRUMENTED_END_ASYNC_FOR:240            return 2;241        case INSTRUMENTED_END_FOR:242            return 2;243        case INSTRUMENTED_END_SEND:244            return 2;245        case INSTRUMENTED_FOR_ITER:246            return 1;247        case INSTRUMENTED_INSTRUCTION:248            return 0;249        case INSTRUMENTED_JUMP_BACKWARD:250            return 0;251        case INSTRUMENTED_JUMP_FORWARD:252            return 0;253        case INSTRUMENTED_LINE:254            return 0;255        case INSTRUMENTED_LOAD_SUPER_ATTR:256            return 3;257        case INSTRUMENTED_NOT_TAKEN:258            return 0;259        case INSTRUMENTED_POP_ITER:260            return 1;261        case INSTRUMENTED_POP_JUMP_IF_FALSE:262            return 1;263        case INSTRUMENTED_POP_JUMP_IF_NONE:264            return 1;265        case INSTRUMENTED_POP_JUMP_IF_NOT_NONE:266            return 1;267        case INSTRUMENTED_POP_JUMP_IF_TRUE:268            return 1;269        case INSTRUMENTED_RESUME:270            return 0;271        case INSTRUMENTED_RETURN_VALUE:272            return 1;273        case INSTRUMENTED_YIELD_VALUE:274            return 1;275        case INTERPRETER_EXIT:276            return 1;277        case IS_OP:278            return 2;279        case JUMP:280            return 0;281        case JUMP_BACKWARD:282            return 0;283        case JUMP_BACKWARD_JIT:284            return 0;285        case JUMP_BACKWARD_NO_INTERRUPT:286            return 0;287        case JUMP_BACKWARD_NO_JIT:288            return 0;289        case JUMP_FORWARD:290            return 0;291        case JUMP_IF_FALSE:292            return 1;293        case JUMP_IF_TRUE:294            return 1;295        case JUMP_NO_INTERRUPT:296            return 0;297        case LIST_APPEND:298            return 2 + (oparg-1);299        case LIST_EXTEND:300            return 2 + (oparg-1);301        case LOAD_ATTR:302            return 1;303        case LOAD_ATTR_CLASS:304            return 1;305        case LOAD_ATTR_CLASS_WITH_METACLASS_CHECK:306            return 1;307        case LOAD_ATTR_GETATTRIBUTE_OVERRIDDEN:308            return 1;309        case LOAD_ATTR_INSTANCE_VALUE:310            return 1;311        case LOAD_ATTR_METHOD_LAZY_DICT:312            return 1;313        case LOAD_ATTR_METHOD_NO_DICT:314            return 1;315        case LOAD_ATTR_METHOD_WITH_VALUES:316            return 1;317        case LOAD_ATTR_MODULE:318            return 1;319        case LOAD_ATTR_NONDESCRIPTOR_NO_DICT:320            return 1;321        case LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES:322            return 1;323        case LOAD_ATTR_PROPERTY:324            return 1;325        case LOAD_ATTR_SLOT:326            return 1;327        case LOAD_ATTR_WITH_HINT:328            return 1;329        case LOAD_BUILD_CLASS:330            return 0;331        case LOAD_CLOSURE:332            return 0;333        case LOAD_COMMON_CONSTANT:334            return 0;335        case LOAD_CONST:336            return 0;337        case LOAD_CONST_IMMORTAL:338            return 0;339        case LOAD_CONST_MORTAL:340            return 0;341        case LOAD_DEREF:342            return 0;343        case LOAD_FAST:344            return 0;345        case LOAD_FAST_AND_CLEAR:346            return 0;347        case LOAD_FAST_BORROW:348            return 0;349        case LOAD_FAST_BORROW_LOAD_FAST_BORROW:350            return 0;351        case LOAD_FAST_CHECK:352            return 0;353        case LOAD_FAST_LOAD_FAST:354            return 0;355        case LOAD_FROM_DICT_OR_DEREF:356            return 1;357        case LOAD_FROM_DICT_OR_GLOBALS:358            return 1;359        case LOAD_GLOBAL:360            return 0;361        case LOAD_GLOBAL_BUILTIN:362            return 0;363        case LOAD_GLOBAL_MODULE:364            return 0;365        case LOAD_LOCALS:366            return 0;367        case LOAD_NAME:368            return 0;369        case LOAD_SMALL_INT:370            return 0;371        case LOAD_SPECIAL:372            return 1;373        case LOAD_SUPER_ATTR:374            return 3;375        case LOAD_SUPER_ATTR_ATTR:376            return 3;377        case LOAD_SUPER_ATTR_METHOD:378            return 3;379        case MAKE_CELL:380            return 0;381        case MAKE_FUNCTION:382            return 1;383        case MAP_ADD:384            return 3 + (oparg - 1);385        case MATCH_CLASS:386            return 3;387        case MATCH_KEYS:388            return 2;389        case MATCH_MAPPING:390            return 1;391        case MATCH_SEQUENCE:392            return 1;393        case NOP:394            return 0;395        case NOT_TAKEN:396            return 0;397        case POP_BLOCK:398            return 0;399        case POP_EXCEPT:400            return 1;401        case POP_ITER:402            return 1;403        case POP_JUMP_IF_FALSE:404            return 1;405        case POP_JUMP_IF_NONE:406            return 1;407        case POP_JUMP_IF_NOT_NONE:408            return 1;409        case POP_JUMP_IF_TRUE:410            return 1;411        case POP_TOP:412            return 1;413        case PUSH_EXC_INFO:414            return 1;415        case PUSH_NULL:416            return 0;417        case RAISE_VARARGS:418            return oparg;419        case RERAISE:420            return 1 + oparg;421        case RESERVED:422            return 0;423        case RESUME:424            return 0;425        case RESUME_CHECK:426            return 0;427        case RETURN_GENERATOR:428            return 0;429        case RETURN_VALUE:430            return 1;431        case SEND:432            return 2;433        case SEND_GEN:434            return 2;435        case SETUP_ANNOTATIONS:436            return 0;437        case SETUP_CLEANUP:438            return 0;439        case SETUP_FINALLY:440            return 0;441        case SETUP_WITH:442            return 0;443        case SET_ADD:444            return 2 + (oparg-1);445        case SET_FUNCTION_ATTRIBUTE:446            return 2;447        case SET_UPDATE:448            return 2 + (oparg-1);449        case STORE_ATTR:450            return 2;451        case STORE_ATTR_INSTANCE_VALUE:452            return 2;453        case STORE_ATTR_SLOT:454            return 2;455        case STORE_ATTR_WITH_HINT:456            return 2;457        case STORE_DEREF:458            return 1;459        case STORE_FAST:460            return 1;461        case STORE_FAST_LOAD_FAST:462            return 1;463        case STORE_FAST_MAYBE_NULL:464            return 1;465        case STORE_FAST_STORE_FAST:466            return 2;467        case STORE_GLOBAL:468            return 1;469        case STORE_NAME:470            return 1;471        case STORE_SLICE:472            return 4;473        case STORE_SUBSCR:474            return 3;475        case STORE_SUBSCR_DICT:476            return 3;477        case STORE_SUBSCR_LIST_INT:478            return 3;479        case SWAP:480            return 2 + (oparg-2);481        case TO_BOOL:482            return 1;483        case TO_BOOL_ALWAYS_TRUE:484            return 1;485        case TO_BOOL_BOOL:486            return 1;487        case TO_BOOL_INT:488            return 1;489        case TO_BOOL_LIST:490            return 1;491        case TO_BOOL_NONE:492            return 1;493        case TO_BOOL_STR:494            return 1;495        case UNARY_INVERT:496            return 1;497        case UNARY_NEGATIVE:498            return 1;499        case UNARY_NOT:500            return 1;501        case UNPACK_EX:502            return 1;503        case UNPACK_SEQUENCE:504            return 1;505        case UNPACK_SEQUENCE_LIST:506            return 1;507        case UNPACK_SEQUENCE_TUPLE:508            return 1;509        case UNPACK_SEQUENCE_TWO_TUPLE:510            return 1;511        case WITH_EXCEPT_START:512            return 5;513        case YIELD_VALUE:514            return 1;515        default:516            return -1;517    }518}519 520#endif521 522extern int _PyOpcode_num_pushed(int opcode, int oparg);523#ifdef NEED_OPCODE_METADATA524int _PyOpcode_num_pushed(int opcode, int oparg)  {525    switch(opcode) {526        case ANNOTATIONS_PLACEHOLDER:527            return 0;528        case BINARY_OP:529            return 1;530        case BINARY_OP_ADD_FLOAT:531            return 1;532        case BINARY_OP_ADD_INT:533            return 1;534        case BINARY_OP_ADD_UNICODE:535            return 1;536        case BINARY_OP_EXTEND:537            return 1;538        case BINARY_OP_INPLACE_ADD_UNICODE:539            return 0;540        case BINARY_OP_MULTIPLY_FLOAT:541            return 1;542        case BINARY_OP_MULTIPLY_INT:543            return 1;544        case BINARY_OP_SUBSCR_DICT:545            return 1;546        case BINARY_OP_SUBSCR_GETITEM:547            return 0;548        case BINARY_OP_SUBSCR_LIST_INT:549            return 1;550        case BINARY_OP_SUBSCR_LIST_SLICE:551            return 1;552        case BINARY_OP_SUBSCR_STR_INT:553            return 1;554        case BINARY_OP_SUBSCR_TUPLE_INT:555            return 1;556        case BINARY_OP_SUBTRACT_FLOAT:557            return 1;558        case BINARY_OP_SUBTRACT_INT:559            return 1;560        case BINARY_SLICE:561            return 1;562        case BUILD_INTERPOLATION:563            return 1;564        case BUILD_LIST:565            return 1;566        case BUILD_MAP:567            return 1;568        case BUILD_SET:569            return 1;570        case BUILD_SLICE:571            return 1;572        case BUILD_STRING:573            return 1;574        case BUILD_TEMPLATE:575            return 1;576        case BUILD_TUPLE:577            return 1;578        case CACHE:579            return 0;580        case CALL:581            return 1;582        case CALL_ALLOC_AND_ENTER_INIT:583            return 0;584        case CALL_BOUND_METHOD_EXACT_ARGS:585            return 0;586        case CALL_BOUND_METHOD_GENERAL:587            return 0;588        case CALL_BUILTIN_CLASS:589            return 1;590        case CALL_BUILTIN_FAST:591            return 1;592        case CALL_BUILTIN_FAST_WITH_KEYWORDS:593            return 1;594        case CALL_BUILTIN_O:595            return 1;596        case CALL_FUNCTION_EX:597            return 1;598        case CALL_INTRINSIC_1:599            return 1;600        case CALL_INTRINSIC_2:601            return 1;602        case CALL_ISINSTANCE:603            return 1;604        case CALL_KW:605            return 1;606        case CALL_KW_BOUND_METHOD:607            return 0;608        case CALL_KW_NON_PY:609            return 1;610        case CALL_KW_PY:611            return 0;612        case CALL_LEN:613            return 1;614        case CALL_LIST_APPEND:615            return 0;616        case CALL_METHOD_DESCRIPTOR_FAST:617            return 1;618        case CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS:619            return 1;620        case CALL_METHOD_DESCRIPTOR_NOARGS:621            return 1;622        case CALL_METHOD_DESCRIPTOR_O:623            return 1;624        case CALL_NON_PY_GENERAL:625            return 1;626        case CALL_PY_EXACT_ARGS:627            return 0;628        case CALL_PY_GENERAL:629            return 0;630        case CALL_STR_1:631            return 1;632        case CALL_TUPLE_1:633            return 1;634        case CALL_TYPE_1:635            return 1;636        case CHECK_EG_MATCH:637            return 2;638        case CHECK_EXC_MATCH:639            return 2;640        case CLEANUP_THROW:641            return 2;642        case COMPARE_OP:643            return 1;644        case COMPARE_OP_FLOAT:645            return 1;646        case COMPARE_OP_INT:647            return 1;648        case COMPARE_OP_STR:649            return 1;650        case CONTAINS_OP:651            return 1;652        case CONTAINS_OP_DICT:653            return 1;654        case CONTAINS_OP_SET:655            return 1;656        case CONVERT_VALUE:657            return 1;658        case COPY:659            return 2 + (oparg-1);660        case COPY_FREE_VARS:661            return 0;662        case DELETE_ATTR:663            return 0;664        case DELETE_DEREF:665            return 0;666        case DELETE_FAST:667            return 0;668        case DELETE_GLOBAL:669            return 0;670        case DELETE_NAME:671            return 0;672        case DELETE_SUBSCR:673            return 0;674        case DICT_MERGE:675            return 4 + (oparg - 1);676        case DICT_UPDATE:677            return 1 + (oparg - 1);678        case END_ASYNC_FOR:679            return 0;680        case END_FOR:681            return 0;682        case END_SEND:683            return 1;684        case ENTER_EXECUTOR:685            return 0;686        case EXIT_INIT_CHECK:687            return 0;688        case EXTENDED_ARG:689            return 0;690        case FORMAT_SIMPLE:691            return 1;692        case FORMAT_WITH_SPEC:693            return 1;694        case FOR_ITER:695            return 2;696        case FOR_ITER_GEN:697            return 1;698        case FOR_ITER_LIST:699            return 2;700        case FOR_ITER_RANGE:701            return 2;702        case FOR_ITER_TUPLE:703            return 2;704        case GET_AITER:705            return 1;706        case GET_ANEXT:707            return 2;708        case GET_AWAITABLE:709            return 1;710        case GET_ITER:711            return 1;712        case GET_LEN:713            return 2;714        case GET_YIELD_FROM_ITER:715            return 1;716        case IMPORT_FROM:717            return 2;718        case IMPORT_NAME:719            return 1;720        case INSTRUMENTED_CALL:721            return 1;722        case INSTRUMENTED_CALL_FUNCTION_EX:723            return 1;724        case INSTRUMENTED_CALL_KW:725            return 1;726        case INSTRUMENTED_END_ASYNC_FOR:727            return 0;728        case INSTRUMENTED_END_FOR:729            return 1;730        case INSTRUMENTED_END_SEND:731            return 1;732        case INSTRUMENTED_FOR_ITER:733            return 2;734        case INSTRUMENTED_INSTRUCTION:735            return 0;736        case INSTRUMENTED_JUMP_BACKWARD:737            return 0;738        case INSTRUMENTED_JUMP_FORWARD:739            return 0;740        case INSTRUMENTED_LINE:741            return 0;742        case INSTRUMENTED_LOAD_SUPER_ATTR:743            return 1 + (oparg & 1);744        case INSTRUMENTED_NOT_TAKEN:745            return 0;746        case INSTRUMENTED_POP_ITER:747            return 0;748        case INSTRUMENTED_POP_JUMP_IF_FALSE:749            return 0;750        case INSTRUMENTED_POP_JUMP_IF_NONE:751            return 0;752        case INSTRUMENTED_POP_JUMP_IF_NOT_NONE:753            return 0;754        case INSTRUMENTED_POP_JUMP_IF_TRUE:755            return 0;756        case INSTRUMENTED_RESUME:757            return 0;758        case INSTRUMENTED_RETURN_VALUE:759            return 1;760        case INSTRUMENTED_YIELD_VALUE:761            return 1;762        case INTERPRETER_EXIT:763            return 0;764        case IS_OP:765            return 1;766        case JUMP:767            return 0;768        case JUMP_BACKWARD:769            return 0;770        case JUMP_BACKWARD_JIT:771            return 0;772        case JUMP_BACKWARD_NO_INTERRUPT:773            return 0;774        case JUMP_BACKWARD_NO_JIT:775            return 0;776        case JUMP_FORWARD:777            return 0;778        case JUMP_IF_FALSE:779            return 1;780        case JUMP_IF_TRUE:781            return 1;782        case JUMP_NO_INTERRUPT:783            return 0;784        case LIST_APPEND:785            return 1 + (oparg-1);786        case LIST_EXTEND:787            return 1 + (oparg-1);788        case LOAD_ATTR:789            return 1 + (oparg&1);790        case LOAD_ATTR_CLASS:791            return 1 + (oparg & 1);792        case LOAD_ATTR_CLASS_WITH_METACLASS_CHECK:793            return 1 + (oparg & 1);794        case LOAD_ATTR_GETATTRIBUTE_OVERRIDDEN:795            return 1;796        case LOAD_ATTR_INSTANCE_VALUE:797            return 1 + (oparg & 1);798        case LOAD_ATTR_METHOD_LAZY_DICT:799            return 2;800        case LOAD_ATTR_METHOD_NO_DICT:801            return 2;802        case LOAD_ATTR_METHOD_WITH_VALUES:803            return 2;804        case LOAD_ATTR_MODULE:805            return 1 + (oparg & 1);806        case LOAD_ATTR_NONDESCRIPTOR_NO_DICT:807            return 1;808        case LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES:809            return 1;810        case LOAD_ATTR_PROPERTY:811            return 0;812        case LOAD_ATTR_SLOT:813            return 1 + (oparg & 1);814        case LOAD_ATTR_WITH_HINT:815            return 1 + (oparg & 1);816        case LOAD_BUILD_CLASS:817            return 1;818        case LOAD_CLOSURE:819            return 1;820        case LOAD_COMMON_CONSTANT:821            return 1;822        case LOAD_CONST:823            return 1;824        case LOAD_CONST_IMMORTAL:825            return 1;826        case LOAD_CONST_MORTAL:827            return 1;828        case LOAD_DEREF:829            return 1;830        case LOAD_FAST:831            return 1;832        case LOAD_FAST_AND_CLEAR:833            return 1;834        case LOAD_FAST_BORROW:835            return 1;836        case LOAD_FAST_BORROW_LOAD_FAST_BORROW:837            return 2;838        case LOAD_FAST_CHECK:839            return 1;840        case LOAD_FAST_LOAD_FAST:841            return 2;842        case LOAD_FROM_DICT_OR_DEREF:843            return 1;844        case LOAD_FROM_DICT_OR_GLOBALS:845            return 1;846        case LOAD_GLOBAL:847            return 1 + (oparg & 1);848        case LOAD_GLOBAL_BUILTIN:849            return 1 + (oparg & 1);850        case LOAD_GLOBAL_MODULE:851            return 1 + (oparg & 1);852        case LOAD_LOCALS:853            return 1;854        case LOAD_NAME:855            return 1;856        case LOAD_SMALL_INT:857            return 1;858        case LOAD_SPECIAL:859            return 2;860        case LOAD_SUPER_ATTR:861            return 1 + (oparg & 1);862        case LOAD_SUPER_ATTR_ATTR:863            return 1;864        case LOAD_SUPER_ATTR_METHOD:865            return 2;866        case MAKE_CELL:867            return 0;868        case MAKE_FUNCTION:869            return 1;870        case MAP_ADD:871            return 1 + (oparg - 1);872        case MATCH_CLASS:873            return 1;874        case MATCH_KEYS:875            return 3;876        case MATCH_MAPPING:877            return 2;878        case MATCH_SEQUENCE:879            return 2;880        case NOP:881            return 0;882        case NOT_TAKEN:883            return 0;884        case POP_BLOCK:885            return 0;886        case POP_EXCEPT:887            return 0;888        case POP_ITER:889            return 0;890        case POP_JUMP_IF_FALSE:891            return 0;892        case POP_JUMP_IF_NONE:893            return 0;894        case POP_JUMP_IF_NOT_NONE:895            return 0;896        case POP_JUMP_IF_TRUE:897            return 0;898        case POP_TOP:899            return 0;900        case PUSH_EXC_INFO:901            return 2;902        case PUSH_NULL:903            return 1;904        case RAISE_VARARGS:905            return 0;906        case RERAISE:907            return oparg;908        case RESERVED:909            return 0;910        case RESUME:911            return 0;912        case RESUME_CHECK:913            return 0;914        case RETURN_GENERATOR:915            return 1;916        case RETURN_VALUE:917            return 1;918        case SEND:919            return 2;920        case SEND_GEN:921            return 1;922        case SETUP_ANNOTATIONS:923            return 0;924        case SETUP_CLEANUP:925            return 2;926        case SETUP_FINALLY:927            return 1;928        case SETUP_WITH:929            return 1;930        case SET_ADD:931            return 1 + (oparg-1);932        case SET_FUNCTION_ATTRIBUTE:933            return 1;934        case SET_UPDATE:935            return 1 + (oparg-1);936        case STORE_ATTR:937            return 0;938        case STORE_ATTR_INSTANCE_VALUE:939            return 0;940        case STORE_ATTR_SLOT:941            return 0;942        case STORE_ATTR_WITH_HINT:943            return 0;944        case STORE_DEREF:945            return 0;946        case STORE_FAST:947            return 0;948        case STORE_FAST_LOAD_FAST:949            return 1;950        case STORE_FAST_MAYBE_NULL:951            return 0;952        case STORE_FAST_STORE_FAST:953            return 0;954        case STORE_GLOBAL:955            return 0;956        case STORE_NAME:957            return 0;958        case STORE_SLICE:959            return 0;960        case STORE_SUBSCR:961            return 0;962        case STORE_SUBSCR_DICT:963            return 0;964        case STORE_SUBSCR_LIST_INT:965            return 0;966        case SWAP:967            return 2 + (oparg-2);968        case TO_BOOL:969            return 1;970        case TO_BOOL_ALWAYS_TRUE:971            return 1;972        case TO_BOOL_BOOL:973            return 1;974        case TO_BOOL_INT:975            return 1;976        case TO_BOOL_LIST:977            return 1;978        case TO_BOOL_NONE:979            return 1;980        case TO_BOOL_STR:981            return 1;982        case UNARY_INVERT:983            return 1;984        case UNARY_NEGATIVE:985            return 1;986        case UNARY_NOT:987            return 1;988        case UNPACK_EX:989            return 1 + (oparg & 0xFF) + (oparg >> 8);990        case UNPACK_SEQUENCE:991            return oparg;992        case UNPACK_SEQUENCE_LIST:993            return oparg;994        case UNPACK_SEQUENCE_TUPLE:995            return oparg;996        case UNPACK_SEQUENCE_TWO_TUPLE:997            return 2;998        case WITH_EXCEPT_START:999            return 6;1000        case YIELD_VALUE:1001            return 1;1002        default:1003            return -1;1004    }1005}1006 1007#endif1008 1009enum InstructionFormat {1010    INSTR_FMT_IB = 1,1011    INSTR_FMT_IBC = 2,1012    INSTR_FMT_IBC00 = 3,1013    INSTR_FMT_IBC000 = 4,1014    INSTR_FMT_IBC0000 = 5,1015    INSTR_FMT_IBC00000000 = 6,1016    INSTR_FMT_IX = 7,1017    INSTR_FMT_IXC = 8,1018    INSTR_FMT_IXC00 = 9,1019    INSTR_FMT_IXC000 = 10,1020    INSTR_FMT_IXC0000 = 11,1021};1022 1023#define IS_VALID_OPCODE(OP) \1024    (((OP) >= 0) && ((OP) < 267) && \1025     (_PyOpcode_opcode_metadata[(OP)].valid_entry))1026 1027#define HAS_ARG_FLAG (1)1028#define HAS_CONST_FLAG (2)1029#define HAS_NAME_FLAG (4)1030#define HAS_JUMP_FLAG (8)1031#define HAS_FREE_FLAG (16)1032#define HAS_LOCAL_FLAG (32)1033#define HAS_EVAL_BREAK_FLAG (64)1034#define HAS_DEOPT_FLAG (128)1035#define HAS_ERROR_FLAG (256)1036#define HAS_ESCAPES_FLAG (512)1037#define HAS_EXIT_FLAG (1024)1038#define HAS_PURE_FLAG (2048)1039#define HAS_PASSTHROUGH_FLAG (4096)1040#define HAS_OPARG_AND_1_FLAG (8192)1041#define HAS_ERROR_NO_POP_FLAG (16384)1042#define HAS_NO_SAVE_IP_FLAG (32768)1043#define OPCODE_HAS_ARG(OP) (_PyOpcode_opcode_metadata[OP].flags & (HAS_ARG_FLAG))1044#define OPCODE_HAS_CONST(OP) (_PyOpcode_opcode_metadata[OP].flags & (HAS_CONST_FLAG))1045#define OPCODE_HAS_NAME(OP) (_PyOpcode_opcode_metadata[OP].flags & (HAS_NAME_FLAG))1046#define OPCODE_HAS_JUMP(OP) (_PyOpcode_opcode_metadata[OP].flags & (HAS_JUMP_FLAG))1047#define OPCODE_HAS_FREE(OP) (_PyOpcode_opcode_metadata[OP].flags & (HAS_FREE_FLAG))1048#define OPCODE_HAS_LOCAL(OP) (_PyOpcode_opcode_metadata[OP].flags & (HAS_LOCAL_FLAG))1049#define OPCODE_HAS_EVAL_BREAK(OP) (_PyOpcode_opcode_metadata[OP].flags & (HAS_EVAL_BREAK_FLAG))1050#define OPCODE_HAS_DEOPT(OP) (_PyOpcode_opcode_metadata[OP].flags & (HAS_DEOPT_FLAG))1051#define OPCODE_HAS_ERROR(OP) (_PyOpcode_opcode_metadata[OP].flags & (HAS_ERROR_FLAG))1052#define OPCODE_HAS_ESCAPES(OP) (_PyOpcode_opcode_metadata[OP].flags & (HAS_ESCAPES_FLAG))1053#define OPCODE_HAS_EXIT(OP) (_PyOpcode_opcode_metadata[OP].flags & (HAS_EXIT_FLAG))1054#define OPCODE_HAS_PURE(OP) (_PyOpcode_opcode_metadata[OP].flags & (HAS_PURE_FLAG))1055#define OPCODE_HAS_PASSTHROUGH(OP) (_PyOpcode_opcode_metadata[OP].flags & (HAS_PASSTHROUGH_FLAG))1056#define OPCODE_HAS_OPARG_AND_1(OP) (_PyOpcode_opcode_metadata[OP].flags & (HAS_OPARG_AND_1_FLAG))1057#define OPCODE_HAS_ERROR_NO_POP(OP) (_PyOpcode_opcode_metadata[OP].flags & (HAS_ERROR_NO_POP_FLAG))1058#define OPCODE_HAS_NO_SAVE_IP(OP) (_PyOpcode_opcode_metadata[OP].flags & (HAS_NO_SAVE_IP_FLAG))1059 1060#define OPARG_SIMPLE 01061#define OPARG_CACHE_1 11062#define OPARG_CACHE_2 21063#define OPARG_CACHE_4 41064#define OPARG_TOP 51065#define OPARG_BOTTOM 61066#define OPARG_SAVE_RETURN_OFFSET 71067#define OPARG_REPLACED 91068#define OPERAND1_1 101069#define OPERAND1_2 111070#define OPERAND1_4 121071 1072struct opcode_metadata {1073    uint8_t valid_entry;1074    uint8_t instr_format;1075    uint16_t flags;1076};1077 1078extern const struct opcode_metadata _PyOpcode_opcode_metadata[267];1079#ifdef NEED_OPCODE_METADATA1080const struct opcode_metadata _PyOpcode_opcode_metadata[267] = {1081    [BINARY_OP] = { true, INSTR_FMT_IBC0000, HAS_ARG_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1082    [BINARY_OP_ADD_FLOAT] = { true, INSTR_FMT_IXC0000, HAS_EXIT_FLAG | HAS_ERROR_FLAG },1083    [BINARY_OP_ADD_INT] = { true, INSTR_FMT_IXC0000, HAS_EXIT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1084    [BINARY_OP_ADD_UNICODE] = { true, INSTR_FMT_IXC0000, HAS_EXIT_FLAG | HAS_ERROR_FLAG },1085    [BINARY_OP_EXTEND] = { true, INSTR_FMT_IXC0000, HAS_DEOPT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1086    [BINARY_OP_INPLACE_ADD_UNICODE] = { true, INSTR_FMT_IXC0000, HAS_LOCAL_FLAG | HAS_DEOPT_FLAG | HAS_EXIT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1087    [BINARY_OP_MULTIPLY_FLOAT] = { true, INSTR_FMT_IXC0000, HAS_EXIT_FLAG | HAS_ERROR_FLAG },1088    [BINARY_OP_MULTIPLY_INT] = { true, INSTR_FMT_IXC0000, HAS_EXIT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1089    [BINARY_OP_SUBSCR_DICT] = { true, INSTR_FMT_IXC0000, HAS_EXIT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1090    [BINARY_OP_SUBSCR_GETITEM] = { true, INSTR_FMT_IXC0000, HAS_DEOPT_FLAG },1091    [BINARY_OP_SUBSCR_LIST_INT] = { true, INSTR_FMT_IXC0000, HAS_DEOPT_FLAG | HAS_EXIT_FLAG | HAS_ESCAPES_FLAG },1092    [BINARY_OP_SUBSCR_LIST_SLICE] = { true, INSTR_FMT_IXC0000, HAS_EXIT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1093    [BINARY_OP_SUBSCR_STR_INT] = { true, INSTR_FMT_IXC0000, HAS_DEOPT_FLAG | HAS_EXIT_FLAG | HAS_ESCAPES_FLAG },1094    [BINARY_OP_SUBSCR_TUPLE_INT] = { true, INSTR_FMT_IXC0000, HAS_DEOPT_FLAG | HAS_EXIT_FLAG },1095    [BINARY_OP_SUBTRACT_FLOAT] = { true, INSTR_FMT_IXC0000, HAS_EXIT_FLAG | HAS_ERROR_FLAG },1096    [BINARY_OP_SUBTRACT_INT] = { true, INSTR_FMT_IXC0000, HAS_EXIT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1097    [BINARY_SLICE] = { true, INSTR_FMT_IX, HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1098    [BUILD_INTERPOLATION] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1099    [BUILD_LIST] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1100    [BUILD_MAP] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1101    [BUILD_SET] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1102    [BUILD_SLICE] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_ERROR_FLAG },1103    [BUILD_STRING] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_ERROR_FLAG },1104    [BUILD_TEMPLATE] = { true, INSTR_FMT_IX, HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1105    [BUILD_TUPLE] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG },1106    [CACHE] = { true, INSTR_FMT_IX, 0 },1107    [CALL] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_EVAL_BREAK_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1108    [CALL_ALLOC_AND_ENTER_INIT] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_DEOPT_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1109    [CALL_BOUND_METHOD_EXACT_ARGS] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_DEOPT_FLAG | HAS_EXIT_FLAG | HAS_ESCAPES_FLAG },1110    [CALL_BOUND_METHOD_GENERAL] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_DEOPT_FLAG | HAS_EXIT_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1111    [CALL_BUILTIN_CLASS] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_EVAL_BREAK_FLAG | HAS_DEOPT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1112    [CALL_BUILTIN_FAST] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_EVAL_BREAK_FLAG | HAS_DEOPT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1113    [CALL_BUILTIN_FAST_WITH_KEYWORDS] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_EVAL_BREAK_FLAG | HAS_DEOPT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1114    [CALL_BUILTIN_O] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_EVAL_BREAK_FLAG | HAS_EXIT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1115    [CALL_FUNCTION_EX] = { true, INSTR_FMT_IX, HAS_EVAL_BREAK_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1116    [CALL_INTRINSIC_1] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1117    [CALL_INTRINSIC_2] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1118    [CALL_ISINSTANCE] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_DEOPT_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1119    [CALL_KW] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1120    [CALL_KW_BOUND_METHOD] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_DEOPT_FLAG | HAS_EXIT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1121    [CALL_KW_NON_PY] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_EVAL_BREAK_FLAG | HAS_EXIT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1122    [CALL_KW_PY] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_DEOPT_FLAG | HAS_EXIT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1123    [CALL_LEN] = { true, INSTR_FMT_IXC00, HAS_DEOPT_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1124    [CALL_LIST_APPEND] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_DEOPT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1125    [CALL_METHOD_DESCRIPTOR_FAST] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_EVAL_BREAK_FLAG | HAS_EXIT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1126    [CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_EVAL_BREAK_FLAG | HAS_EXIT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1127    [CALL_METHOD_DESCRIPTOR_NOARGS] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_EVAL_BREAK_FLAG | HAS_EXIT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1128    [CALL_METHOD_DESCRIPTOR_O] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_EVAL_BREAK_FLAG | HAS_EXIT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1129    [CALL_NON_PY_GENERAL] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_EVAL_BREAK_FLAG | HAS_EXIT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1130    [CALL_PY_EXACT_ARGS] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_DEOPT_FLAG | HAS_EXIT_FLAG },1131    [CALL_PY_GENERAL] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_DEOPT_FLAG | HAS_EXIT_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1132    [CALL_STR_1] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_EVAL_BREAK_FLAG | HAS_DEOPT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1133    [CALL_TUPLE_1] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_EVAL_BREAK_FLAG | HAS_DEOPT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1134    [CALL_TYPE_1] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_DEOPT_FLAG | HAS_ESCAPES_FLAG },1135    [CHECK_EG_MATCH] = { true, INSTR_FMT_IX, HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1136    [CHECK_EXC_MATCH] = { true, INSTR_FMT_IX, HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1137    [CLEANUP_THROW] = { true, INSTR_FMT_IX, HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1138    [COMPARE_OP] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1139    [COMPARE_OP_FLOAT] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG | HAS_EXIT_FLAG },1140    [COMPARE_OP_INT] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG | HAS_DEOPT_FLAG | HAS_EXIT_FLAG },1141    [COMPARE_OP_STR] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG | HAS_EXIT_FLAG },1142    [CONTAINS_OP] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1143    [CONTAINS_OP_DICT] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG | HAS_EXIT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1144    [CONTAINS_OP_SET] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG | HAS_DEOPT_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1145    [CONVERT_VALUE] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1146    [COPY] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_PURE_FLAG },1147    [COPY_FREE_VARS] = { true, INSTR_FMT_IB, HAS_ARG_FLAG },1148    [DELETE_ATTR] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_NAME_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1149    [DELETE_DEREF] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_FREE_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1150    [DELETE_FAST] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_LOCAL_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1151    [DELETE_GLOBAL] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_NAME_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1152    [DELETE_NAME] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_NAME_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1153    [DELETE_SUBSCR] = { true, INSTR_FMT_IX, HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1154    [DICT_MERGE] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1155    [DICT_UPDATE] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1156    [END_ASYNC_FOR] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_JUMP_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1157    [END_FOR] = { true, INSTR_FMT_IX, HAS_ESCAPES_FLAG | HAS_NO_SAVE_IP_FLAG },1158    [END_SEND] = { true, INSTR_FMT_IX, HAS_ESCAPES_FLAG | HAS_PURE_FLAG },1159    [ENTER_EXECUTOR] = { true, INSTR_FMT_IB, HAS_ARG_FLAG },1160    [EXIT_INIT_CHECK] = { true, INSTR_FMT_IX, HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1161    [EXTENDED_ARG] = { true, INSTR_FMT_IB, HAS_ARG_FLAG },1162    [FORMAT_SIMPLE] = { true, INSTR_FMT_IX, HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1163    [FORMAT_WITH_SPEC] = { true, INSTR_FMT_IX, HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1164    [FOR_ITER] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG | HAS_JUMP_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1165    [FOR_ITER_GEN] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG | HAS_DEOPT_FLAG },1166    [FOR_ITER_LIST] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG | HAS_JUMP_FLAG | HAS_DEOPT_FLAG | HAS_EXIT_FLAG | HAS_ESCAPES_FLAG },1167    [FOR_ITER_RANGE] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG | HAS_JUMP_FLAG | HAS_EXIT_FLAG | HAS_ERROR_FLAG },1168    [FOR_ITER_TUPLE] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG | HAS_JUMP_FLAG | HAS_EXIT_FLAG | HAS_ESCAPES_FLAG },1169    [GET_AITER] = { true, INSTR_FMT_IX, HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1170    [GET_ANEXT] = { true, INSTR_FMT_IX, HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1171    [GET_AWAITABLE] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1172    [GET_ITER] = { true, INSTR_FMT_IX, HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1173    [GET_LEN] = { true, INSTR_FMT_IX, HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1174    [GET_YIELD_FROM_ITER] = { true, INSTR_FMT_IX, HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1175    [IMPORT_FROM] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_NAME_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1176    [IMPORT_NAME] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_NAME_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1177    [INSTRUMENTED_CALL] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_EVAL_BREAK_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1178    [INSTRUMENTED_CALL_FUNCTION_EX] = { true, INSTR_FMT_IX, HAS_EVAL_BREAK_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1179    [INSTRUMENTED_CALL_KW] = { true, INSTR_FMT_IBC00, HAS_ARG_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1180    [INSTRUMENTED_END_ASYNC_FOR] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_JUMP_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1181    [INSTRUMENTED_END_FOR] = { true, INSTR_FMT_IX, HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG | HAS_NO_SAVE_IP_FLAG },1182    [INSTRUMENTED_END_SEND] = { true, INSTR_FMT_IX, HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1183    [INSTRUMENTED_FOR_ITER] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG | HAS_JUMP_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1184    [INSTRUMENTED_INSTRUCTION] = { true, INSTR_FMT_IX, HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1185    [INSTRUMENTED_JUMP_BACKWARD] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG | HAS_EVAL_BREAK_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1186    [INSTRUMENTED_JUMP_FORWARD] = { true, INSTR_FMT_IB, HAS_ARG_FLAG },1187    [INSTRUMENTED_LINE] = { true, INSTR_FMT_IX, HAS_ESCAPES_FLAG },1188    [INSTRUMENTED_LOAD_SUPER_ATTR] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG | HAS_NAME_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1189    [INSTRUMENTED_NOT_TAKEN] = { true, INSTR_FMT_IX, 0 },1190    [INSTRUMENTED_POP_ITER] = { true, INSTR_FMT_IX, HAS_ESCAPES_FLAG },1191    [INSTRUMENTED_POP_JUMP_IF_FALSE] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG },1192    [INSTRUMENTED_POP_JUMP_IF_NONE] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG | HAS_ESCAPES_FLAG },1193    [INSTRUMENTED_POP_JUMP_IF_NOT_NONE] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG | HAS_ESCAPES_FLAG },1194    [INSTRUMENTED_POP_JUMP_IF_TRUE] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG },1195    [INSTRUMENTED_RESUME] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_EVAL_BREAK_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1196    [INSTRUMENTED_RETURN_VALUE] = { true, INSTR_FMT_IX, HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },1197    [INSTRUMENTED_YIELD_VALUE] = { true, INSTR_FMT_IB, HAS_ARG_FLAG | HAS_ERROR_FLAG | HAS_ERROR_NO_POP_FLAG | HAS_ESCAPES_FLAG },1198    [INTERPRETER_EXIT] = { true, INSTR_FMT_IX, HAS_ESCAPES_FLAG },1199    [IS_OP] = { true, INSTR_FMT_IB, HAS_ARG_FLAG },1200    [JUMP_BACKWARD] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG | HAS_JUMP_FLAG | HAS_EVAL_BREAK_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },

Showing the first 1,200 of 2118 lines. Download the file for the rest.

codekingpro/portable-devtools · Team Ai