===== BASIC METRICS -- Number of files: 114 -- Total bytecode bytes: 466765 -- Total instructions: 171095 Duplicate path/name path code_name n 1 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc __init__ 171 2 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc _AbbreviatedTree 171 3 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc AbbreviatedTree 171 4 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc PrettyTree 171 5 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc __init__ 46 6 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc _AbbreviatedTree 46 ===== BIG STRINGS path code_name type len_or_val 1 _build/oil/bytecode-opy/qsn_/qsn.pyc str 469 2 _build/oil/bytecode-opy/osh/builtin_comp.pyc _DefineFlags str 324 3 _build/oil/bytecode-opy/qsn_/qsn.pyc str 323 4 _build/oil/bytecode-opy/asdl/format.pyc FileHeader str 188 5 _build/oil/bytecode-opy/frontend/lexer_def.pyc str 177 6 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc str 139 7 _build/oil/bytecode-opy/core/main_loop.pyc _Loop str 132 8 _build/oil/bytecode-opy/osh/cmd_parse.pyc ParseSimpleCommand str 108 9 _build/oil/bytecode-opy/osh/builtin_comp.pyc _DefineFlags str 103 10 _build/oil/bytecode-opy/frontend/flag_def.pyc str 101 11 _build/oil/bytecode-opy/osh/cmd_parse.pyc ParseSimpleCommand str 101 12 _build/oil/bytecode-opy/osh/builtin_assign.pyc Run str 95 13 _build/oil/bytecode-opy/core/executor.pyc RunSimpleCommand str 92 14 _build/oil/bytecode-opy/core/oven.pyc RunSimpleCommand str 92 15 _build/oil/bytecode-opy/core/shell.pyc OnChange str 91 16 _build/oil/bytecode-opy/osh/builtin_comp.pyc _DefineOptions str 90 17 _build/oil/bytecode-opy/oil_lang/expr_eval.pyc _MutateClassLiteral str 89 18 _build/oil/bytecode-opy/osh/builtin_comp.pyc _DefineFlags str 89 19 _build/oil/bytecode-opy/core/executor.pyc RunCommandSub str 82 20 _build/oil/bytecode-opy/oil_lang/regex_translate.pyc AsPosixEre str 78 -- total string bytes: 72203 ===== FRAMES Frames with many consts path code_name n 1 _build/oil/bytecode-opy/_devbuild/gen/id_kind_asdl.pyc 812 2 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc PrettyTree 784 3 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc 780 4 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc _AbbreviatedTree 703 5 _build/oil/bytecode-opy/_devbuild/gen/id_kind_asdl.pyc Id 383 6 _build/oil/bytecode-opy/frontend/id_kind_def.pyc AddKinds 324 7 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc 277 8 _build/oil/bytecode-opy/_devbuild/gen/option_asdl.pyc 273 9 _build/oil/bytecode-opy/frontend/lexer_def.pyc 240 10 _build/oil/bytecode-opy/_devbuild/gen/help_.pyc 210 11 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc PrettyTree 184 12 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc _AbbreviatedTree 179 13 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc __init__ 171 14 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc AbbreviatedTree 171 15 _build/oil/bytecode-opy/frontend/flag_def.pyc 120 16 _build/oil/bytecode-opy/_devbuild/gen/arg_types.pyc __init__ 114 17 _build/oil/bytecode-opy/frontend/option_def.pyc 109 18 _build/oil/bytecode-opy/_devbuild/gen/option_asdl.pyc option_i 101 19 _build/oil/bytecode-opy/_devbuild/gen/grammar_nt.pyc 89 20 _build/oil/bytecode-opy/core/state.pyc 89 Frames with many ops path code_name n 1 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc PrettyTree 12704 2 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc _AbbreviatedTree 9626 3 _build/oil/bytecode-opy/_devbuild/gen/id_kind.pyc 3295 4 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc 3222 5 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc __init__ 2903 6 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch 2589 7 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc PrettyTree 2289 8 _build/oil/bytecode-opy/frontend/lexer_def.pyc 2236 9 _build/oil/bytecode-opy/_devbuild/gen/id_kind_asdl.pyc 2140 10 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc _AbbreviatedTree 2099 11 _build/oil/bytecode-opy/core/completion.pyc Matches 1749 12 _build/oil/bytecode-opy/core/shell.pyc Main 1616 13 _build/oil/bytecode-opy/oil_lang/expr_eval.pyc EvalExpr 1468 14 _build/oil/bytecode-opy/tools/osh2oil.pyc DoCommand 1268 15 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc 1234 16 _build/oil/bytecode-opy/osh/builtin_pure.pyc Run 1196 17 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc AbbreviatedTree 1106 18 _build/oil/bytecode-opy/_devbuild/gen/arg_types.pyc __init__ 1088 19 _build/oil/bytecode-opy/core/shell_native.pyc Main 980 20 _build/oil/bytecode-opy/core/oven.pyc Main 971 Frames with large stacksize path code_name argcount nlocals stacksize bytecode_bytes 1 _build/oil/bytecode-opy/_devbuild/gen/help_.pyc 0 0 209 637 2 _build/oil/bytecode-opy/core/shell.pyc Main 6 317 112 4502 3 _build/oil/bytecode-opy/core/shell_native.pyc Main 6 232 97 2770 4 _build/oil/bytecode-opy/core/oven.pyc Main 6 231 93 2743 5 _build/oil/bytecode-opy/frontend/lexer_def.pyc 0 0 93 6472 6 _build/oil/bytecode-opy/oil_lang/expr_eval.pyc EvalExpr 2 204 75 4138 7 _build/oil/bytecode-opy/osh/builtin_assign.pyc _PrintVariables 5 90 75 2066 8 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch 3 333 67 7271 9 _build/oil/bytecode-opy/osh/sh_expr_eval.pyc Eval 2 127 63 2656 10 _build/oil/bytecode-opy/core/completion.pyc Matches 2 115 62 2792 Frames with many locals path code_name argcount nlocals stacksize bytecode_bytes 1 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch 3 333 67 7271 2 _build/oil/bytecode-opy/core/shell.pyc Main 6 317 112 4502 3 _build/oil/bytecode-opy/core/shell_native.pyc Main 6 232 97 2770 4 _build/oil/bytecode-opy/core/oven.pyc Main 6 231 93 2743 5 _build/oil/bytecode-opy/oil_lang/expr_eval.pyc EvalExpr 2 204 75 4138 6 _build/oil/bytecode-opy/osh/word_eval.pyc _EvalWordPart 4 130 50 1897 7 _build/oil/bytecode-opy/osh/sh_expr_eval.pyc Eval 2 127 63 2656 8 _build/oil/bytecode-opy/core/completion.pyc Matches 2 115 62 2792 9 _build/oil/bytecode-opy/oil_lang/expr_parse.pyc _PushOilTokens 4 106 50 1656 10 _build/oil/bytecode-opy/tools/osh2oil.pyc DoCommand 4 106 52 3436 ===== NAMES Common types kind n 1 name 42766 2 var 37744 3 free 11 4 cell 10 Common names name n 1 self 4089 2 None 1584 3 append 1273 4 AssertionError 914 5 NewRecord 896 6 fields 890 7 L 878 8 out_node 868 9 field 808 10 x0 796 11 __name__ 698 12 __module__ 654 13 _AbbreviatedTree 652 14 x1 566 15 hnode 560 16 __init__ 554 17 children 550 18 color_e 528 19 AbbreviatedTree 518 20 len 518 -- Total length of all 80531 names: 590541 -- Total length of 4804 unique names: 47350 ===== CONSTS Types of constants type n 1 str 7074 2 code 3264 3 int 2965 4 NoneType 2656 5 tuple 1147 6 float 7 ===== FLAGS Common flags flag n 1 CO_NEWLOCALS 3264 2 CO_OPTIMIZED 2612 3 CO_FUTURE_PRINT_FUNCTION 1418 4 CO_VARARGS 35 5 CO_GENERATOR 26 6 CO_VARKEYWORDS 10 ===== OPS Ops Used by Frequency op_name n 1 LOAD_FAST 26895 2 LOAD_ATTR 21860 3 LOAD_CONST 20968 4 CALL_FUNCTION 14735 5 LOAD_GLOBAL 14123 6 STORE_FAST 8240 7 STORE_NAME 8235 8 POP_TOP 5986 9 RETURN_VALUE 5854 10 JUMP_FORWARD 4534 11 POP_JUMP_IF_FALSE 4478 12 LOAD_NAME 4101 13 COMPARE_OP 3450 14 MAKE_FUNCTION 3257 15 IMPORT_FROM 2170 16 DUP_TOP 1833 17 STORE_ATTR 1746 18 STORE_SUBSCR 1739 19 BUILD_TUPLE 1524 20 ROT_THREE 1471 21 IMPORT_NAME 1245 22 POP_BLOCK 1079 23 BUILD_LIST 1045 24 BINARY_SUBSCR 896 25 RAISE_VARARGS 874 26 JUMP_ABSOLUTE 865 27 SETUP_LOOP 755 28 FOR_ITER 712 29 GET_ITER 712 30 BUILD_CLASS 652 31 LOAD_LOCALS 652 32 POP_JUMP_IF_TRUE 520 33 UNPACK_SEQUENCE 350 34 END_FINALLY 324 35 BINARY_MODULO 322 36 BINARY_ADD 317 37 JUMP_IF_FALSE_OR_POP 239 38 UNARY_NOT 208 39 UNARY_NEGATIVE 204 40 SETUP_EXCEPT 173 41 BUILD_MAP 166 42 ROT_TWO 164 43 LOAD_DEREF 163 44 SETUP_FINALLY 151 45 WITH_CLEANUP 137 46 BREAK_LOOP 125 47 SLICE+1 104 48 INPLACE_ADD 99 49 DELETE_FAST 82 50 JUMP_IF_TRUE_OR_POP 81 51 BINARY_SUBTRACT 75 52 LIST_APPEND 55 53 BINARY_AND 51 54 YIELD_VALUE 38 55 SLICE+3 35 56 SLICE+2 30 57 BINARY_LSHIFT 27 58 BINARY_MULTIPLY 26 59 INPLACE_OR 18 60 BINARY_OR 15 61 BINARY_RSHIFT 15 62 DELETE_SLICE+0 12 63 INPLACE_SUBTRACT 12 64 LOAD_CLOSURE 11 65 CALL_FUNCTION_VAR_KW 10 66 DELETE_SUBSCR 10 67 BINARY_DIVIDE 7 68 MAKE_CLOSURE 7 69 STORE_DEREF 7 70 CALL_FUNCTION_VAR 4 71 BINARY_XOR 3 72 STORE_GLOBAL 3 73 UNARY_INVERT 3 74 BINARY_FLOOR_DIVIDE 2 75 BINARY_POWER 1 76 DUP_TOPX 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 CONTINUE_LOOP 6 DELETE_ATTR 7 DELETE_GLOBAL 8 DELETE_NAME 9 DELETE_SLICE+1 10 DELETE_SLICE+2 11 DELETE_SLICE+3 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_MAP 36 STORE_SLICE+0 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 21860 2 ATTR STORE_ATTR 1746 3 CLOSURE LOAD_CLOSURE 11 4 CONST LOAD_CONST 20968 5 DEREF LOAD_DEREF 163 6 DEREF STORE_DEREF 7 7 FAST LOAD_FAST 26895 8 FAST STORE_FAST 8240 9 FAST DELETE_FAST 82 10 GLOBAL LOAD_GLOBAL 14123 11 GLOBAL STORE_GLOBAL 3 12 LOCALS LOAD_LOCALS 652 13 NAME STORE_NAME 8235 14 NAME LOAD_NAME 4101 15 SUBSCR STORE_SUBSCR 1739 Imports: op_name n 1 IMPORT_FROM 2170 2 IMPORT_NAME 1245 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 7239 2 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch POP_JUMP_IF_FALSE 7232 3 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch BREAK_LOOP 7232 4 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch SETUP_FINALLY 7220 5 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch POP_JUMP_IF_FALSE 7218 6 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch POP_JUMP_IF_FALSE 7094 7 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch JUMP_ABSOLUTE 7015 8 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch POP_BLOCK 7015 9 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch JUMP_ABSOLUTE 6999 10 _build/oil/bytecode-opy/osh/cmd_eval.pyc _Dispatch POP_BLOCK 6999 ===== 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 51  2 _build/oil/bytecode-opy/osh/cmd_parse.pyc 51  3 _build/oil/bytecode-opy/osh/string_ops.pyc 51  4 _build/oil/bytecode-opy/osh/sh_expr_eval.pyc 54  5 _build/oil/bytecode-opy/core/comp_ui.pyc 55  6 _build/oil/bytecode-opy/osh/word_eval.pyc 56  7 _build/oil/bytecode-opy/core/completion.pyc 57  8 _build/oil/bytecode-opy/core/state.pyc 57  9 _build/oil/bytecode-opy/osh/cmd_eval.pyc 57 10 _build/oil/bytecode-opy/oil_lang/expr_eval.pyc 61 Unique ops for files that just parse: # A tibble: 11 x 2 # Groups: path [11] 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/frontend/py_reader.pyc 26  4 _build/oil/bytecode-opy/frontend/reader.pyc 28  5 _build/oil/bytecode-opy/osh/bool_parse.pyc 31  6 _build/oil/bytecode-opy/frontend/parse_lib.pyc 34  7 _build/oil/bytecode-opy/pgen2/parse.pyc 35  8 _build/oil/bytecode-opy/frontend/lexer.pyc 36  9 _build/oil/bytecode-opy/oil_lang/expr_parse.pyc 43 10 _build/oil/bytecode-opy/osh/word_parse.pyc 46 11 _build/oil/bytecode-opy/osh/cmd_parse.pyc 51 -- Unique opcodes for parsing: 56