===== BASIC METRICS -- Number of files: 99 -- Total bytecode bytes: 372108 -- Total instructions: 136822 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/bin/oil.pyc OnChange str 91 11 _build/oil/bytecode-opy/osh/builtin_comp.pyc _DefineOptions str 90 12 _build/oil/bytecode-opy/oil_lang/expr_eval.pyc _MutateClassLiteral str 89 13 _build/oil/bytecode-opy/osh/builtin_comp.pyc _DefineFlags str 89 14 _build/oil/bytecode-opy/osh/cmd_exec.pyc _Execute str 86 15 _build/oil/bytecode-opy/oil_lang/regex_translate.pyc AsPosixEre str 78 16 _build/oil/bytecode-opy/osh/builtin_comp.pyc _DefineOptions str 72 17 _build/oil/bytecode-opy/core/completion.pyc Matches 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: 57790 ===== 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 210 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/bin/oil.pyc 106 13 _build/oil/bytecode-opy/_devbuild/gen/runtime_asdl.pyc PrettyTree 102 14 _build/oil/bytecode-opy/frontend/option_def.pyc 98 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 1686 11 _build/oil/bytecode-opy/osh/sh_expr_eval.pyc Eval 1486 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 1084 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 928 Frames with large stacksize path code_name argcount nlocals stacksize bytecode_bytes 1 _build/oil/bytecode-opy/bin/oil.pyc ShellMain 4 341 104 4548 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 121 63 2611 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 52 775 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/bin/oil.pyc ShellMain 4 341 104 4548 2 _build/oil/bytecode-opy/osh/cmd_exec.pyc _Dispatch 3 338 70 7288 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 3112 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 121 63 2611 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/osh/sh_expr_eval.pyc Eval 2 99 48 1593 10 _build/oil/bytecode-opy/oil_lang/expr_parse.pyc _PushOilTokens 4 98 41 1581 ===== NAMES Common types # A tibble: 4 x 2 kind n 1 name 33875 2 var 29657 3 free 13 4 cell 12 Common names # A tibble: 20 x 2 name n 1 self 3279 2 None 1155 3 append 1055 4 AssertionError 838 5 NewRecord 740 6 fields 718 7 L 712 8 out_node 712 9 field 692 10 x0 680 11 __name__ 571 12 _AbbreviatedTree 535 13 __module__ 527 14 hnode 498 15 x1 496 16 color_e 456 17 spids 452 18 children 450 19 Id 446 20 AbbreviatedTree 431 -- Total length of all 63557 names: 466150 -- Total length of 4050 unique names: 39967 ===== CONSTS Types of constants # A tibble: 6 x 2 type n 1 str 5674 2 code 2598 3 int 2390 4 NoneType 2115 5 tuple 789 6 float 3 ===== FLAGS Common flags # A tibble: 6 x 2 flag n 1 CO_NEWLOCALS 2598 2 CO_OPTIMIZED 2073 3 CO_FUTURE_PRINT_FUNCTION 1066 4 CO_GENERATOR 32 5 CO_VARARGS 30 6 CO_VARKEYWORDS 11 ===== OPS Ops Used by Frequency # A tibble: 79 x 2 op_name n 1 LOAD_FAST 21205 2 LOAD_ATTR 17929 3 LOAD_CONST 16456 4 CALL_FUNCTION 11710 5 LOAD_GLOBAL 11015 6 STORE_FAST 6638 7 STORE_NAME 6492 8 POP_TOP 4753 9 RETURN_VALUE 4746 10 LOAD_NAME 3551 11 JUMP_FORWARD 3412 12 POP_JUMP_IF_FALSE 3347 13 MAKE_FUNCTION 2589 14 COMPARE_OP 2545 15 DUP_TOP 1637 16 IMPORT_FROM 1555 17 STORE_SUBSCR 1493 18 ROT_THREE 1354 19 STORE_ATTR 1345 20 BUILD_TUPLE 1291 21 POP_BLOCK 945 22 BUILD_LIST 871 23 IMPORT_NAME 867 24 RAISE_VARARGS 841 25 JUMP_ABSOLUTE 749 26 BINARY_SUBSCR 704 27 SETUP_LOOP 669 28 FOR_ITER 625 29 GET_ITER 625 30 BUILD_CLASS 525 31 LOAD_LOCALS 525 32 POP_JUMP_IF_TRUE 505 33 UNPACK_SEQUENCE 292 34 BINARY_ADD 278 35 END_FINALLY 276 36 JUMP_IF_TRUE_OR_POP 250 37 BINARY_MODULO 237 38 UNARY_NOT 169 39 SETUP_EXCEPT 168 40 LOAD_DEREF 163 41 JUMP_IF_FALSE_OR_POP 153 42 BUILD_MAP 140 43 UNARY_NEGATIVE 136 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 44 53 YIELD_VALUE 44 54 SLICE+2 28 55 SLICE+3 25 56 BINARY_MULTIPLY 24 57 BINARY_AND 23 58 BINARY_OR 13 59 INPLACE_SUBTRACT 13 60 LOAD_CLOSURE 13 61 BINARY_LSHIFT 11 62 BINARY_RSHIFT 11 63 DELETE_SLICE+0 11 64 CALL_FUNCTION_VAR_KW 10 65 DELETE_SUBSCR 9 66 MAKE_CLOSURE 9 67 STORE_DEREF 9 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 17929 2 ATTR STORE_ATTR 1345 3 CLOSURE LOAD_CLOSURE 13 4 CONST LOAD_CONST 16456 5 DEREF LOAD_DEREF 163 6 DEREF STORE_DEREF 9 7 FAST LOAD_FAST 21205 8 FAST STORE_FAST 6638 9 FAST DELETE_FAST 65 10 GLOBAL LOAD_GLOBAL 11015 11 GLOBAL STORE_GLOBAL 3 12 LOCALS LOAD_LOCALS 525 13 NAME STORE_NAME 6492 14 NAME LOAD_NAME 3551 15 SUBSCR STORE_SUBSCR 1493 Imports: # A tibble: 2 x 2 op_name n 1 IMPORT_FROM 1555 2 IMPORT_NAME 867 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/core/comp_ui.pyc 52 2 _build/oil/bytecode-opy/bin/oil.pyc 53 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