===== BASIC METRICS -- Number of files: 99 -- Total bytecode bytes: 371208 -- Total instructions: 136468 Duplicate path/name # A tibble: 6 x 3 path code_name n 1 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc AbbreviatedTree 155 2 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc _AbbreviatedTree 155 3 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc __init__ 155 4 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc PrettyTree 155 5 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc AbbreviatedTree 23 6 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc _AbbreviatedTree 23 ===== BIG STRINGS path code_name type len_or_val 1 _build/oil/bytecode-opy/osh/builtin_comp.pyc _DefineFlags str 324 2 _build/oil/bytecode-opy/asdl/format.pyc FileHeader str 188 3 _build/oil/bytecode-opy/frontend/lexer_def.pyc str 177 4 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc str 139 5 _build/oil/bytecode-opy/osh/cmd_parse.pyc ParseSimpleCommand str 108 6 _build/oil/bytecode-opy/osh/cmd_exec.pyc RunSimpleCommand str 106 7 _build/oil/bytecode-opy/osh/builtin_comp.pyc _DefineFlags str 103 8 _build/oil/bytecode-opy/osh/cmd_parse.pyc ParseSimpleCommand str 101 9 _build/oil/bytecode-opy/osh/builtin_assign.pyc Run str 95 10 _build/oil/bytecode-opy/osh/builtin_comp.pyc _DefineOptions str 90 11 _build/oil/bytecode-opy/oil_lang/expr_eval.pyc _MutateClassLiteral str 89 12 _build/oil/bytecode-opy/osh/builtin_comp.pyc _DefineFlags str 89 13 _build/oil/bytecode-opy/osh/cmd_exec.pyc _Execute str 86 14 _build/oil/bytecode-opy/oil_lang/regex_translate.pyc AsPosixEre str 78 15 _build/oil/bytecode-opy/osh/builtin_comp.pyc _DefineOptions str 72 16 _build/oil/bytecode-opy/core/completion.pyc Matches str 71 17 _build/oil/bytecode-opy/core/state.pyc _SetOption str 71 18 _build/oil/bytecode-opy/osh/builtin_comp.pyc str 70 19 _build/oil/bytecode-opy/pgen2/grammar.pyc dump_nonterminals_cpp str 70 20 _build/oil/bytecode-opy/tools/readlink.pyc str 69 -- total string bytes: 57745 ===== FRAMES Frames with many consts # A tibble: 20 x 3 path code_name n 1 _build/oil/bytecode-opy/_devbuild/gen/id_kind_asdl.pyc 713 2 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc PrettyTree 702 3 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc 699 4 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc _AbbreviatedTree 630 5 _build/oil/bytecode-opy/_devbuild/gen/id_kind_asdl.pyc Id 335 6 _build/oil/bytecode-opy/frontend/id_kind_def.pyc AddKinds 290 7 _build/oil/bytecode-opy/_devbuild/gen/option_asdl.pyc 225 8 _build/oil/bytecode-opy/frontend/lexer_def.pyc 218 9 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc 207 10 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc AbbreviatedTree 155 11 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc __init__ 155 12 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc PrettyTree 102 13 _build/oil/bytecode-opy/bin/oil.pyc 101 14 _build/oil/bytecode-opy/frontend/option_def.pyc 99 15 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc _AbbreviatedTree 97 16 _build/oil/bytecode-opy/_devbuild/gen/option_asdl.pyc option_i 82 17 _build/oil/bytecode-opy/osh/builtin_pure.pyc 70 18 _build/oil/bytecode-opy/_devbuild/gen/grammar_nt.pyc 68 19 _build/oil/bytecode-opy/_devbuild/gen/types_asdl.pyc 68 20 _build/oil/bytecode-opy/core/completion.pyc Matches 64 Frames with many ops # A tibble: 20 x 3 path code_name n 1 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc PrettyTree 11543 2 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc _AbbreviatedTree 8807 3 _build/oil/bytecode-opy/_devbuild/gen/id_kind.pyc 2946 4 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc 2896 5 _build/oil/bytecode-opy/osh/cmd_exec.pyc _Dispatch 2578 6 _build/oil/bytecode-opy/frontend/lexer_def.pyc 1901 7 _build/oil/bytecode-opy/_devbuild/gen/id_kind_asdl.pyc 1885 8 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc __init__ 1818 9 _build/oil/bytecode-opy/core/completion.pyc Matches 1735 10 _build/oil/bytecode-opy/bin/oil.pyc ShellMain 1630 11 _build/oil/bytecode-opy/osh/sh_expr_eval.pyc Eval 1480 12 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc PrettyTree 1409 13 _build/oil/bytecode-opy/tools/osh2oil.pyc DoCommand 1248 14 _build/oil/bytecode-opy/oil_lang/expr_eval.pyc EvalExpr 1241 15 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc _AbbreviatedTree 1219 16 _build/oil/bytecode-opy/osh/builtin_misc.pyc Run 1136 17 _build/oil/bytecode-opy/osh/word_eval.pyc _EvalBracedVarSub 1086 18 _build/oil/bytecode-opy/osh/builtin_pure.pyc Run 1049 19 _build/oil/bytecode-opy/_devbuild/gen/syntax_asdl.pyc AbbreviatedTree 1010 20 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc 918 Frames with large stacksize path code_name argcount nlocals stacksize bytecode_bytes 1 _build/oil/bytecode-opy/bin/oil.pyc ShellMain 4 327 96 4388 2 _build/oil/bytecode-opy/frontend/lexer_def.pyc 0 0 83 5525 3 _build/oil/bytecode-opy/osh/cmd_exec.pyc _Dispatch 3 338 70 7288 4 _build/oil/bytecode-opy/oil_lang/expr_eval.pyc EvalExpr 2 179 68 3503 5 _build/oil/bytecode-opy/osh/sh_expr_eval.pyc Eval 2 119 63 2602 6 _build/oil/bytecode-opy/core/completion.pyc Matches 2 114 62 2771 7 _build/oil/bytecode-opy/oil_lang/expr_to_ast.pyc Expr 2 87 60 1954 8 _build/oil/bytecode-opy/frontend/option_def.pyc 0 0 56 792 9 _build/oil/bytecode-opy/osh/builtin_printf.pyc Run 2 91 52 1320 10 _build/oil/bytecode-opy/tools/osh2oil.pyc DoCommand 4 103 52 3374 Frames with many locals path code_name argcount nlocals stacksize bytecode_bytes 1 _build/oil/bytecode-opy/osh/cmd_exec.pyc _Dispatch 3 338 70 7288 2 _build/oil/bytecode-opy/bin/oil.pyc ShellMain 4 327 96 4388 3 _build/oil/bytecode-opy/oil_lang/expr_eval.pyc EvalExpr 2 179 68 3503 4 _build/oil/bytecode-opy/osh/word_eval.pyc _EvalBracedVarSub 4 152 49 3118 5 _build/oil/bytecode-opy/osh/word_eval.pyc _EvalWordPart 5 126 50 1931 6 _build/oil/bytecode-opy/osh/sh_expr_eval.pyc Eval 2 119 63 2602 7 _build/oil/bytecode-opy/core/completion.pyc Matches 2 114 62 2771 8 _build/oil/bytecode-opy/tools/osh2oil.pyc DoCommand 4 103 52 3374 9 _build/oil/bytecode-opy/oil_lang/expr_parse.pyc _PushOilTokens 4 98 41 1581 10 _build/oil/bytecode-opy/osh/sh_expr_eval.pyc Eval 2 97 48 1584 ===== NAMES Common types # A tibble: 4 x 2 kind n 1 name 33747 2 var 29535 3 free 12 4 cell 11 Common names # A tibble: 20 x 2 name n 1 self 3275 2 None 1150 3 append 1055 4 AssertionError 840 5 NewRecord 740 6 fields 718 7 L 712 8 out_node 712 9 field 692 10 x0 680 11 __name__ 568 12 _AbbreviatedTree 535 13 __module__ 526 14 hnode 498 15 x1 496 16 color_e 456 17 spids 452 18 children 450 19 Id 448 20 AbbreviatedTree 431 -- Total length of all 63305 names: 464645 -- Total length of 4032 unique names: 39837 ===== CONSTS Types of constants # A tibble: 6 x 2 type n 1 str 5668 2 code 2580 3 int 2384 4 NoneType 2098 5 tuple 777 6 float 3 ===== FLAGS Common flags # A tibble: 6 x 2 flag n 1 CO_NEWLOCALS 2580 2 CO_OPTIMIZED 2056 3 CO_FUTURE_PRINT_FUNCTION 1047 4 CO_GENERATOR 29 5 CO_VARARGS 28 6 CO_VARKEYWORDS 10 ===== OPS Ops Used by Frequency # A tibble: 79 x 2 op_name n 1 LOAD_FAST 21169 2 LOAD_ATTR 17926 3 LOAD_CONST 16371 4 CALL_FUNCTION 11695 5 LOAD_GLOBAL 11000 6 STORE_FAST 6627 7 STORE_NAME 6462 8 POP_TOP 4724 9 RETURN_VALUE 4718 10 LOAD_NAME 3526 11 JUMP_FORWARD 3409 12 POP_JUMP_IF_FALSE 3343 13 MAKE_FUNCTION 2572 14 COMPARE_OP 2544 15 DUP_TOP 1633 16 IMPORT_FROM 1540 17 STORE_SUBSCR 1490 18 ROT_THREE 1351 19 STORE_ATTR 1349 20 BUILD_TUPLE 1279 21 POP_BLOCK 942 22 BUILD_LIST 873 23 IMPORT_NAME 856 24 RAISE_VARARGS 852 25 JUMP_ABSOLUTE 747 26 BINARY_SUBSCR 705 27 SETUP_LOOP 666 28 FOR_ITER 624 29 GET_ITER 624 30 BUILD_CLASS 524 31 LOAD_LOCALS 524 32 POP_JUMP_IF_TRUE 506 33 UNPACK_SEQUENCE 292 34 BINARY_ADD 278 35 END_FINALLY 276 36 JUMP_IF_TRUE_OR_POP 250 37 BINARY_MODULO 237 38 SETUP_EXCEPT 168 39 UNARY_NOT 165 40 LOAD_DEREF 162 41 JUMP_IF_FALSE_OR_POP 153 42 BUILD_MAP 141 43 UNARY_NEGATIVE 135 44 SLICE+1 110 45 SETUP_FINALLY 108 46 BREAK_LOOP 106 47 INPLACE_ADD 97 48 ROT_TWO 91 49 BINARY_SUBTRACT 68 50 WITH_CLEANUP 66 51 DELETE_FAST 65 52 LIST_APPEND 46 53 YIELD_VALUE 41 54 SLICE+2 28 55 SLICE+3 25 56 BINARY_MULTIPLY 24 57 BINARY_AND 23 58 BINARY_OR 13 59 INPLACE_SUBTRACT 12 60 LOAD_CLOSURE 12 61 BINARY_LSHIFT 11 62 BINARY_RSHIFT 11 63 DELETE_SLICE+0 11 64 CALL_FUNCTION_VAR_KW 9 65 DELETE_SUBSCR 9 66 MAKE_CLOSURE 8 67 STORE_DEREF 8 68 BINARY_DIVIDE 7 69 INPLACE_OR 6 70 CALL_FUNCTION_VAR 5 71 DUP_TOPX 4 72 BINARY_XOR 3 73 STORE_GLOBAL 3 74 UNARY_INVERT 3 75 BINARY_FLOOR_DIVIDE 2 76 INPLACE_MULTIPLY 2 77 BINARY_POWER 1 78 INPLACE_AND 1 79 INPLACE_RSHIFT 1 -- Total unique opcodes: 79 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_DIVIDE 16 INPLACE_FLOOR_DIVIDE 17 INPLACE_LSHIFT 18 INPLACE_MODULO 19 INPLACE_POWER 20 INPLACE_TRUE_DIVIDE 21 INPLACE_XOR 22 MAP_ADD 23 NOP 24 PRINT_EXPR 25 PRINT_ITEM 26 PRINT_ITEM_TO 27 PRINT_NEWLINE 28 PRINT_NEWLINE_TO 29 ROT_FOUR 30 SETUP_WITH 31 SET_ADD 32 SLICE+0 33 STOP_CODE 34 STORE_MAP 35 STORE_SLICE+0 36 STORE_SLICE+1 37 STORE_SLICE+2 38 STORE_SLICE+3 39 UNARY_CONVERT 40 UNARY_POSITIVE Memory Operations: # A tibble: 15 x 3 kind op_name n 1 ATTR LOAD_ATTR 17926 2 ATTR STORE_ATTR 1349 3 CLOSURE LOAD_CLOSURE 12 4 CONST LOAD_CONST 16371 5 DEREF LOAD_DEREF 162 6 DEREF STORE_DEREF 8 7 FAST LOAD_FAST 21169 8 FAST STORE_FAST 6627 9 FAST DELETE_FAST 65 10 GLOBAL LOAD_GLOBAL 11000 11 GLOBAL STORE_GLOBAL 3 12 LOCALS LOAD_LOCALS 524 13 NAME STORE_NAME 6462 14 NAME LOAD_NAME 3526 15 SUBSCR STORE_SUBSCR 1490 Imports: # A tibble: 2 x 2 op_name n 1 IMPORT_FROM 1540 2 IMPORT_NAME 856 Large op_arg (jump targets): path code_name op_name op_arg 1 _build/oil/bytecode-opy/osh/cmd_exec.pyc _Dispatch POP_JUMP_IF_FALSE 7250 2 _build/oil/bytecode-opy/osh/cmd_exec.pyc _Dispatch POP_JUMP_IF_FALSE 7243 3 _build/oil/bytecode-opy/osh/cmd_exec.pyc _Dispatch BREAK_LOOP 7243 4 _build/oil/bytecode-opy/osh/cmd_exec.pyc _Dispatch POP_JUMP_IF_FALSE 7229 5 _build/oil/bytecode-opy/osh/cmd_exec.pyc _Dispatch SETUP_FINALLY 7225 6 _build/oil/bytecode-opy/osh/cmd_exec.pyc _Dispatch POP_JUMP_IF_FALSE 7057 7 _build/oil/bytecode-opy/osh/cmd_exec.pyc _Dispatch JUMP_ABSOLUTE 6975 8 _build/oil/bytecode-opy/osh/cmd_exec.pyc _Dispatch POP_BLOCK 6975 9 _build/oil/bytecode-opy/osh/cmd_exec.pyc _Dispatch JUMP_ABSOLUTE 6959 10 _build/oil/bytecode-opy/osh/cmd_exec.pyc _Dispatch POP_BLOCK 6959 ===== UNIQUE OPS Files with few ops: # A tibble: 20 x 2 # Groups: path [20] path n 1 _build/oil/bytecode-opy/asdl/__init__.pyc 2 2 _build/oil/bytecode-opy/bin/__init__.pyc 2 3 _build/oil/bytecode-opy/core/__init__.pyc 2 4 _build/oil/bytecode-opy/_devbuild/gen/__init__.pyc 2 5 _build/oil/bytecode-opy/_devbuild/__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/tools/__init__.pyc 2 13 _build/oil/bytecode-opy/_devbuild/gen/grammar_nt.pyc 3 14 _build/oil/bytecode-opy/_devbuild/gen/help_index.pyc 4 15 _build/oil/bytecode-opy/_devbuild/gen/help_.pyc 4 16 _build/oil/bytecode-opy/typing.pyc 6 17 _build/oil/bytecode-opy/pylib/cgi.pyc 8 18 _build/oil/bytecode-opy/stat.pyc 10 19 _build/oil/bytecode-opy/_devbuild/gen/id_kind.pyc 12 20 _build/oil/bytecode-opy/core/vm.pyc 14 Files with many ops: # A tibble: 10 x 2 # Groups: path [10] path n 1 _build/oil/bytecode-opy/osh/string_ops.pyc 51 2 _build/oil/bytecode-opy/core/comp_ui.pyc 52 3 _build/oil/bytecode-opy/osh/sh_expr_eval.pyc 53 4 _build/oil/bytecode-opy/osh/word_eval.pyc 53 5 _build/oil/bytecode-opy/core/process.pyc 55 6 _build/oil/bytecode-opy/osh/cmd_exec.pyc 55 7 _build/oil/bytecode-opy/core/state.pyc 56 8 _build/oil/bytecode-opy/core/completion.pyc 57 9 _build/oil/bytecode-opy/osh/builtin_misc.pyc 57 10 _build/oil/bytecode-opy/oil_lang/expr_eval.pyc 60 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 26 3 _build/oil/bytecode-opy/frontend/py_reader.pyc 26 4 _build/oil/bytecode-opy/frontend/reader.pyc 27 5 _build/oil/bytecode-opy/osh/bool_parse.pyc 31 6 _build/oil/bytecode-opy/pgen2/parse.pyc 35 7 _build/oil/bytecode-opy/frontend/lexer.pyc 36 8 _build/oil/bytecode-opy/frontend/parse_lib.pyc 36 9 _build/oil/bytecode-opy/osh/word_parse.pyc 40 10 _build/oil/bytecode-opy/oil_lang/expr_parse.pyc 44 11 _build/oil/bytecode-opy/osh/cmd_parse.pyc 47 -- Unique opcodes for parsing: 54