===== BASIC METRICS -- Number of files: 118 -- Total bytecode bytes: 483821 -- Total instructions: 177643 Duplicate path/name path code_name n 1 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc __init__ 182 2 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc _AbbreviatedTree 182 3 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc AbbreviatedTree 182 4 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc PrettyTree 182 5 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc Create 171 6 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc __init__ 46 ===== BIG STRINGS path code_name type len_or_val 1 _build/oil/bytecode-opy/tools/osh2oil.pyc str 825 2 _build/oil/bytecode-opy/core/state.pyc ErrExitDisabledSpanId str 506 3 _build/oil/bytecode-opy/qsn_/qsn.pyc str 469 4 _build/oil/bytecode-opy/frontend/flag_def.pyc _DefineCompletionFlags str 323 5 _build/oil/bytecode-opy/qsn_/qsn.pyc str 323 6 _build/oil/bytecode-opy/asdl/format.pyc FileHeader str 188 7 _build/oil/bytecode-opy/frontend/lexer_def.pyc str 177 8 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc str 139 9 _build/oil/bytecode-opy/core/main_loop.pyc _Loop str 132 10 _build/oil/bytecode-opy/frontend/flag_def.pyc _DefineCompletionFlags str 103 11 _build/oil/bytecode-opy/oil_lang/expr_eval.pyc _EvalClassLiteralTerm str 103 12 _build/oil/bytecode-opy/frontend/flag_def.pyc str 101 13 _build/oil/bytecode-opy/osh/cmd_parse.pyc ParseSimpleCommand str 96 14 _build/oil/bytecode-opy/osh/builtin_assign.pyc Run str 95 15 _build/oil/bytecode-opy/core/executor.pyc RunSimpleCommand str 92 16 _build/oil/bytecode-opy/frontend/flag_def.pyc _DefineCompletionOptions str 90 17 _build/oil/bytecode-opy/frontend/flag_def.pyc _DefineCompletionFlags str 89 18 _build/oil/bytecode-opy/core/executor.pyc RunProcessSub str 81 19 _build/oil/bytecode-opy/oil_lang/regex_translate.pyc AsPosixEre str 78 20 _build/oil/bytecode-opy/osh/cmd_parse.pyc ParseCase str 77 -- total string bytes: 75448 ===== FRAMES Frames with many consts path code_name n 1 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc 843 2 _build/oil/bytecode-opy/_devbuild/gen/id_kind_asdl.pyc 814 3 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc PrettyTree 799 4 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc _AbbreviatedTree 754 5 _build/oil/bytecode-opy/_devbuild/gen/id_kind_asdl.pyc Id 384 6 _build/oil/bytecode-opy/frontend/id_kind_def.pyc AddKinds 324 7 _build/oil/bytecode-opy/_devbuild/gen/option_asdl.pyc 289 8 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc 286 9 _build/oil/bytecode-opy/frontend/lexer_def.pyc 244 10 _build/oil/bytecode-opy/_devbuild/gen/help_.pyc 226 11 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc Create 226 12 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc _AbbreviatedTree 182 13 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc PrettyTree 182 14 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc __init__ 182 15 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc AbbreviatedTree 182 16 _build/oil/bytecode-opy/frontend/flag_def.pyc 138 17 _build/oil/bytecode-opy/_devbuild/gen/arg_types.pyc __init__ 133 18 _build/oil/bytecode-opy/osh/builtin_pure.pyc Run 120 19 _build/oil/bytecode-opy/frontend/option_def.pyc 113 20 _build/oil/bytecode-opy/_devbuild/gen/option_asdl.pyc option_i 107 Frames with many ops path code_name n 1 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc PrettyTree 12305 2 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc _AbbreviatedTree 10505 3 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc 3504 4 _build/oil/bytecode-opy/_devbuild/gen/id_kind.pyc 3302 5 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch 2877 6 _build/oil/bytecode-opy/frontend/lexer_def.pyc 2247 7 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc _AbbreviatedTree 2204 8 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc PrettyTree 2204 9 _build/oil/bytecode-opy/_devbuild/gen/id_kind_asdl.pyc 2145 10 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc __init__ 1891 11 _build/oil/bytecode-opy/osh/builtin_pure.pyc Run 1872 12 _build/oil/bytecode-opy/core/completion.pyc Matches 1804 13 _build/oil/bytecode-opy/core/shell.pyc Main 1686 14 _build/oil/bytecode-opy/oil_lang/expr_eval.pyc _EvalExpr 1639 15 _build/oil/bytecode-opy/_devbuild/gen/arg_types.pyc __init__ 1351 16 _build/oil/bytecode-opy/tools/osh2oil.pyc DoCommand 1345 17 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc Create 1311 18 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc 1275 19 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc AbbreviatedTree 1164 20 _build/oil/bytecode-opy/frontend/consts.pyc 973 Frames with large stacksize path code_name argcount nlocals stacksize bytecode_bytes 1 _build/oil/bytecode-opy/_devbuild/gen/help_.pyc 0 0 225 685 2 _build/oil/bytecode-opy/core/shell.pyc Main 6 328 160 4710 3 _build/oil/bytecode-opy/frontend/lexer_def.pyc 0 0 90 6493 4 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch 3 352 80 8089 5 _build/oil/bytecode-opy/oil_lang/expr_eval.pyc _EvalExpr 2 240 79 4601 6 _build/oil/bytecode-opy/osh/builtin_assign.pyc _PrintVariables 5 90 75 2066 7 _build/oil/bytecode-opy/core/completion.pyc Matches 2 125 68 2961 8 _build/oil/bytecode-opy/osh/sh_expr_eval.pyc Eval 2 129 63 2675 9 _build/oil/bytecode-opy/oil_lang/expr_to_ast.pyc Expr 2 96 61 2040 10 _build/oil/bytecode-opy/osh/builtin_printf.pyc _Format 5 106 55 2212 Frames with many locals path code_name argcount nlocals stacksize bytecode_bytes 1 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch 3 352 80 8089 2 _build/oil/bytecode-opy/core/shell.pyc Main 6 328 160 4710 3 _build/oil/bytecode-opy/oil_lang/expr_eval.pyc _EvalExpr 2 240 79 4601 4 _build/oil/bytecode-opy/tools/osh2oil.pyc DoCommand 4 133 46 3645 5 _build/oil/bytecode-opy/osh/sh_expr_eval.pyc Eval 2 129 63 2675 6 _build/oil/bytecode-opy/core/completion.pyc Matches 2 125 68 2961 7 _build/oil/bytecode-opy/osh/word_eval.pyc _EvalWordPart 4 114 45 1491 8 _build/oil/bytecode-opy/oil_lang/expr_parse.pyc _PushOilTokens 5 109 49 1729 9 _build/oil/bytecode-opy/osh/cmd_parse.pyc ParseCommand 1 108 49 1453 10 _build/oil/bytecode-opy/osh/sh_expr_eval.pyc EvalB 2 107 47 1632 ===== NAMES Common types kind n 1 name 45155 2 var 39627 3 cell 4 4 free 4 Common names name n 1 self 4343 2 None 1764 3 append 1305 4 AssertionError 986 5 NewRecord 938 6 fields 934 7 L 922 8 out_node 912 9 field 842 10 x0 830 11 __name__ 723 12 __module__ 691 13 _AbbreviatedTree 685 14 __init__ 606 15 x1 576 16 AbbreviatedTree 557 17 PrettyTree 551 18 hnode 532 19 name 526 20 len 522 -- Total length of all 84790 names: 629644 -- Total length of 5037 unique names: 49853 ===== CONSTS Types of constants type n 1 str 7151 2 code 3669 3 int 3086 4 NoneType 3027 5 tuple 1205 6 float 10 ===== FLAGS Common flags flag n 1 CO_NEWLOCALS 3669 2 CO_OPTIMIZED 2980 3 CO_FUTURE_PRINT_FUNCTION 1529 4 CO_GENERATOR 23 5 CO_VARARGS 20 6 CO_VARKEYWORDS 3 ===== OPS Ops Used by Frequency op_name n 1 LOAD_FAST 27122 2 LOAD_ATTR 22179 3 LOAD_CONST 22014 4 CALL_FUNCTION 15757 5 LOAD_GLOBAL 15374 6 STORE_NAME 8994 7 STORE_FAST 8491 8 RETURN_VALUE 6573 9 POP_TOP 6047 10 JUMP_FORWARD 4386 11 POP_JUMP_IF_FALSE 4333 12 LOAD_NAME 3898 13 MAKE_FUNCTION 3665 14 COMPARE_OP 3525 15 IMPORT_FROM 2400 16 DUP_TOP 1897 17 STORE_ATTR 1781 18 STORE_SUBSCR 1741 19 BUILD_TUPLE 1589 20 ROT_THREE 1500 21 IMPORT_NAME 1295 22 POP_BLOCK 1080 23 BUILD_LIST 1034 24 RAISE_VARARGS 964 25 BINARY_SUBSCR 929 26 JUMP_ABSOLUTE 847 27 SETUP_LOOP 730 28 FOR_ITER 693 29 GET_ITER 693 30 BUILD_CLASS 689 31 LOAD_LOCALS 689 32 POP_JUMP_IF_TRUE 589 33 BINARY_MODULO 470 34 UNPACK_SEQUENCE 355 35 END_FINALLY 350 36 BINARY_ADD 332 37 UNARY_NEGATIVE 258 38 JUMP_IF_FALSE_OR_POP 248 39 UNARY_NOT 231 40 ROT_TWO 202 41 SETUP_FINALLY 182 42 WITH_CLEANUP 177 43 SETUP_EXCEPT 168 44 BUILD_MAP 156 45 BREAK_LOOP 121 46 DELETE_FAST 103 47 SLICE+1 100 48 INPLACE_ADD 93 49 JUMP_IF_TRUE_OR_POP 74 50 BINARY_SUBTRACT 73 51 LOAD_DEREF 63 52 LIST_APPEND 59 53 BINARY_AND 54 54 SLICE+3 39 55 YIELD_VALUE 35 56 BINARY_LSHIFT 27 57 BINARY_MULTIPLY 27 58 SLICE+2 25 59 INPLACE_OR 22 60 BINARY_OR 15 61 BINARY_RSHIFT 15 62 DELETE_SLICE+0 13 63 INPLACE_SUBTRACT 12 64 BINARY_DIVIDE 7 65 CALL_FUNCTION_VAR_KW 5 66 DELETE_SUBSCR 5 67 LOAD_CLOSURE 4 68 MAKE_CLOSURE 4 69 STORE_GLOBAL 4 70 BINARY_XOR 3 71 UNARY_INVERT 3 72 BINARY_FLOOR_DIVIDE 2 73 CALL_FUNCTION_VAR 2 74 CONTINUE_LOOP 2 75 STORE_SLICE+0 2 76 BINARY_POWER 1 77 INPLACE_MULTIPLY 1 78 INPLACE_RSHIFT 1 -- Total unique opcodes: 78 Unused opcodes: op_name 1 BINARY_TRUE_DIVIDE 2 BUILD_SET 3 BUILD_SLICE 4 CALL_FUNCTION_KW 5 DELETE_ATTR 6 DELETE_GLOBAL 7 DELETE_NAME 8 DELETE_SLICE+1 9 DELETE_SLICE+2 10 DELETE_SLICE+3 11 DUP_TOPX 12 EXEC_STMT 13 EXTENDED_ARG 14 IMPORT_STAR 15 INPLACE_AND 16 INPLACE_DIVIDE 17 INPLACE_FLOOR_DIVIDE 18 INPLACE_LSHIFT 19 INPLACE_MODULO 20 INPLACE_POWER 21 INPLACE_TRUE_DIVIDE 22 INPLACE_XOR 23 MAP_ADD 24 NOP 25 PRINT_EXPR 26 PRINT_ITEM 27 PRINT_ITEM_TO 28 PRINT_NEWLINE 29 PRINT_NEWLINE_TO 30 ROT_FOUR 31 SETUP_WITH 32 SET_ADD 33 SLICE+0 34 STOP_CODE 35 STORE_DEREF 36 STORE_MAP 37 STORE_SLICE+1 38 STORE_SLICE+2 39 STORE_SLICE+3 40 UNARY_CONVERT 41 UNARY_POSITIVE Memory Operations: kind op_name n 1 ATTR LOAD_ATTR 22179 2 ATTR STORE_ATTR 1781 3 CLOSURE LOAD_CLOSURE 4 4 CONST LOAD_CONST 22014 5 DEREF LOAD_DEREF 63 6 FAST LOAD_FAST 27122 7 FAST STORE_FAST 8491 8 FAST DELETE_FAST 103 9 GLOBAL LOAD_GLOBAL 15374 10 GLOBAL STORE_GLOBAL 4 11 LOCALS LOAD_LOCALS 689 12 NAME STORE_NAME 8994 13 NAME LOAD_NAME 3898 14 SLICE STORE_SLICE+0 2 15 SUBSCR STORE_SUBSCR 1741 Imports: op_name n 1 IMPORT_FROM 2400 2 IMPORT_NAME 1295 Large op_arg (jump targets): path code_name op_name op_arg 1 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch POP_JUMP_IF_FALSE 8057 2 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch POP_JUMP_IF_FALSE 8050 3 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch BREAK_LOOP 8050 4 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch SETUP_FINALLY 8038 5 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch POP_JUMP_IF_FALSE 8036 6 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch POP_JUMP_IF_FALSE 7912 7 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch JUMP_ABSOLUTE 7833 8 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch POP_BLOCK 7833 9 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch JUMP_ABSOLUTE 7817 10 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch POP_BLOCK 7817 ===== UNIQUE OPS Files with few ops: # A tibble: 20 x 2 # Groups: path [20] path n 1 _build/oil/bytecode-opy/_devbuild/__init__.pyc 2 2 _build/oil/bytecode-opy/_devbuild/gen/__init__.pyc 2 3 _build/oil/bytecode-opy/asdl/__init__.pyc 2 4 _build/oil/bytecode-opy/bin/__init__.pyc 2 5 _build/oil/bytecode-opy/core/__init__.pyc 2 6 _build/oil/bytecode-opy/frontend/__init__.pyc 2 7 _build/oil/bytecode-opy/mycpp/__init__.pyc 2 8 _build/oil/bytecode-opy/oil_lang/__init__.pyc 2 9 _build/oil/bytecode-opy/osh/__init__.pyc 2 10 _build/oil/bytecode-opy/pgen2/__init__.pyc 2 11 _build/oil/bytecode-opy/pylib/__init__.pyc 2 12 _build/oil/bytecode-opy/qsn_/__init__.pyc 2 13 _build/oil/bytecode-opy/tea/__init__.pyc 2 14 _build/oil/bytecode-opy/tools/__init__.pyc 2 15 _build/oil/bytecode-opy/_devbuild/gen/grammar_nt.pyc 3 16 _build/oil/bytecode-opy/_devbuild/gen/help_.pyc 4 17 _build/oil/bytecode-opy/core/ansi.pyc 6 18 _build/oil/bytecode-opy/typing.pyc 6 19 _build/oil/bytecode-opy/pylib/cgi.pyc 8 20 _build/oil/bytecode-opy/stat.pyc 10 Files with many ops: # A tibble: 10 x 2 # Groups: path [10] path n 1 _build/oil/bytecode-opy/core/process.pyc 50 2 _build/oil/bytecode-opy/osh/builtin_pure.pyc 50 3 _build/oil/bytecode-opy/osh/cmd_parse.pyc 51 4 _build/oil/bytecode-opy/osh/string_ops.pyc 51 5 _build/oil/bytecode-opy/core/completion.pyc 53 6 _build/oil/bytecode-opy/osh/word_eval.pyc 53 7 _build/oil/bytecode-opy/osh/sh_expr_eval.pyc 54 8 _build/oil/bytecode-opy/core/state.pyc 56 9 _build/oil/bytecode-opy/osh/cmd_eval.pyc 56 10 _build/oil/bytecode-opy/oil_lang/expr_eval.pyc 65 Unique ops for files that just parse: # A tibble: 10 x 2 # Groups: path [10] path n 1 _build/oil/bytecode-opy/osh/arith_parse.pyc 20 2 _build/oil/bytecode-opy/frontend/lexer_def.pyc 25 3 _build/oil/bytecode-opy/osh/bool_parse.pyc 32 4 _build/oil/bytecode-opy/frontend/reader.pyc 33 5 _build/oil/bytecode-opy/frontend/parse_lib.pyc 34 6 _build/oil/bytecode-opy/pgen2/parse.pyc 35 7 _build/oil/bytecode-opy/frontend/lexer.pyc 37 8 _build/oil/bytecode-opy/osh/word_parse.pyc 46 9 _build/oil/bytecode-opy/oil_lang/expr_parse.pyc 48 10 _build/oil/bytecode-opy/osh/cmd_parse.pyc 51 -- Unique opcodes for parsing: 57