From 20ac52d801bba2258fcd3befbd0e19e3db69ac08 Mon Sep 17 00:00:00 2001 From: Michael Hansen Date: Tue, 5 Dec 2023 13:43:50 -0800 Subject: [PATCH] Remove PythonBytecode.txt. The format was somewhat awkward and often redundant. Anything that was previously documented in the file is now moved to relevant code comments or tables instead. --- PythonBytecode.txt | 883 --------------------------------------------- pyc_code.cpp | 24 ++ pyc_object.h | 62 ++-- 3 files changed, 55 insertions(+), 914 deletions(-) delete mode 100644 PythonBytecode.txt diff --git a/PythonBytecode.txt b/PythonBytecode.txt deleted file mode 100644 index 822f377..0000000 --- a/PythonBytecode.txt +++ /dev/null @@ -1,883 +0,0 @@ -Python MAGIC Python MAGIC Python MAGIC -1.0 0x00999902 2.0 0x0A0DC687 3.0 0x0A0D0C3A -1.1 0x00999903 2.1 0x0A0DEB2A 3.1 0x0A0D0C4E -1.2 0x00999903 2.2 0x0A0DED2D 3.2 0x0A0D0C6C -1.3 0x0A0D2E89 2.3 0x0A0DF23B 3.3 0x0A0D0C9E -1.4 0x0A0D1704 2.4 0x0A0DF26D 3.4 0x0A0D0CEE -1.5 0x0A0D4E99 2.5 0x0A0DF2B3 3.5 0x0A0D0D16 -1.6 0x0A0DC4FC 2.6 0x0A0DF2D1 3.5.3 0x0A0D0D17 - 2.7 0x0A0DF303 3.6 0x0A0D0D33 - 3.7 0x0A0D0D42 - 3.8 0x0A0D0D55 - 3.9 0x0A0D0D61 - 3.10 0x0A0D0D6F - 3.11 0x0A0D0DA7 - 3.12 0x0A0D0DCB - - - 1.0 1.1 1.2 1.3 1.4 1.5 1.6 -STOP_CODE [X] [X] [X] [X] [X] [X] [X] -POP_TOP [X] [X] [X] [X] [X] [X] [X] -ROT_TWO [X] [X] [X] [X] [X] [X] [X] -ROT_THREE [X] [X] [X] [X] [X] [X] [X] -DUP_TOP [X] [X] [X] [X] [X] [X] [X] -<5> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<6> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<7> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<8> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<9> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -UNARY_POSITIVE [X] [X] [X] [X] [X] [X] [X] -UNARY_NEGATIVE [X] [X] [X] [X] [X] [X] [X] -UNARY_NOT [X] [X] [X] [X] [X] [X] [X] -UNARY_CONVERT [X] [X] [X] [X] [X] [X] [X] -UNARY_CALL [X] [X] [X] [ ] [ ] [ ] [ ] -UNARY_INVERT [X] [X] [X] [X] [X] [X] [X] -<16> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<17> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<18> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -BINARY_POWER [ ] [ ] [ ] [ ] [X] [X] [X] -BINARY_MULTIPLY [X] [X] [X] [X] [X] [X] [X] -BINARY_DIVIDE [X] [X] [X] [X] [X] [X] [X] -BINARY_MODULO [X] [X] [X] [X] [X] [X] [X] -BINARY_ADD [X] [X] [X] [X] [X] [X] [X] -BINARY_SUBTRACT [X] [X] [X] [X] [X] [X] [X] -BINARY_SUBSCR [X] [X] [X] [X] [X] [X] [X] -BINARY_CALL [X] [X] [X] [ ] [ ] [ ] [ ] -<27> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<28> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<29> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -SLICE+0 [X] [X] [X] [X] [X] [X] [X] -SLICE+1 [X] [X] [X] [X] [X] [X] [X] -SLICE+2 [X] [X] [X] [X] [X] [X] [X] -SLICE+3 [X] [X] [X] [X] [X] [X] [X] -<34> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<35> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<36> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<37> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<38> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<39> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -STORE_SLICE+0 [X] [X] [X] [X] [X] [X] [X] -STORE_SLICE+1 [X] [X] [X] [X] [X] [X] [X] -STORE_SLICE+2 [X] [X] [X] [X] [X] [X] [X] -STORE_SLICE+3 [X] [X] [X] [X] [X] [X] [X] -<44> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<45> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<46> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<47> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<48> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<49> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -DELETE_SLICE+0 [X] [X] [X] [X] [X] [X] [X] -DELETE_SLICE+1 [X] [X] [X] [X] [X] [X] [X] -DELETE_SLICE+2 [X] [X] [X] [X] [X] [X] [X] -DELETE_SLICE+3 [X] [X] [X] [X] [X] [X] [X] -<54> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<55> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<56> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<57> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<58> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<59> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -STORE_SUBSCR [X] [X] [X] [X] [X] [X] [X] -DELETE_SUBSCR [X] [X] [X] [X] [X] [X] [X] -BINARY_LSHIFT [X] [X] [X] [X] [X] [X] [X] -BINARY_RSHIFT [X] [X] [X] [X] [X] [X] [X] -BINARY_AND [X] [X] [X] [X] [X] [X] [X] -BINARY_XOR [X] [X] [X] [X] [X] [X] [X] -BINARY_OR [X] [X] [X] [X] [X] [X] [X] -<67> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<68> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<69> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -PRINT_EXPR [X] [X] [X] [X] [X] [X] [X] -PRINT_ITEM [X] [X] [X] [X] [X] [X] [X] -PRINT_NEWLINE [X] [X] [X] [X] [X] [X] [X] -<73> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<74> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<75> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<76> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<77> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<78> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<79> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -BREAK_LOOP [X] [X] [X] [X] [X] [X] [X] -RAISE_EXCEPTION [X] [X] [X] [ ] [ ] [ ] [ ] -LOAD_LOCALS [X] [X] [X] [X] [X] [X] [X] -RETURN_VALUE [X] [X] [X] [X] [X] [X] [X] -LOAD_GLOBALS [X] [X] [X] [ ] [ ] [ ] [ ] -EXEC_STMT [X] [X] [X] [X] [X] [X] [X] -BUILD_FUNCTION [X] [X] [X] [ ] [ ] [ ] [ ] -POP_BLOCK [X] [X] [X] [X] [X] [X] [X] -END_FINALLY [X] [X] [X] [X] [X] [X] [X] -BUILD_CLASS [X] [X] [X] [X] [X] [X] [X] -STORE_NAME [X] [X] [X] [X] [X] [X] [X] -DELETE_NAME [X] [X] [X] [X] [X] [X] [X] -UNPACK_TUPLE [X] [X] [X] [X] [X] [X] [X] -UNPACK_LIST [X] [X] [X] [X] [X] [X] [X] -UNPACK_ARG [X] [X] [X] [X] [X] [ ] [ ] -STORE_ATTR [X] [X] [X] [X] [X] [X] [X] -DELETE_ATTR [X] [X] [X] [X] [X] [X] [X] -STORE_GLOBAL [X] [X] [X] [X] [X] [X] [X] -DELETE_GLOBAL [X] [X] [X] [X] [X] [X] [X] -UNPACK_VARARG [X] [X] [X] [X] [X] [ ] [ ] -LOAD_CONST [X] [X] [X] [X] [X] [X] [X] -LOAD_NAME [X] [X] [X] [X] [X] [X] [X] -BUILD_TUPLE [X] [X] [X] [X] [X] [X] [X] -BUILD_LIST [X] [X] [X] [X] [X] [X] [X] -BUILD_MAP [X] [X] [X] [X] [X] [X] [X] -LOAD_ATTR [X] [X] [X] [X] [X] [X] [X] -COMPARE_OP [X] [X] [X] [X] [X] [X] [X] -IMPORT_NAME [X] [X] [X] [X] [X] [X] [X] -IMPORT_FROM [X] [X] [X] [X] [X] [X] [X] -ACCESS_MODE [X] [X] [X] [X] [X] [ ] [ ] -JUMP_FORWARD [X] [X] [X] [X] [X] [X] [X] -JUMP_IF_FALSE [X] [X] [X] [X] [X] [X] [X] -JUMP_IF_TRUE [X] [X] [X] [X] [X] [X] [X] -JUMP_ABSOLUTE [X] [X] [X] [X] [X] [X] [X] -FOR_LOOP [X] [X] [X] [X] [X] [X] [X] -LOAD_LOCAL [X] [X] [X] [X] [X] [ ] [ ] -LOAD_GLOBAL [X] [X] [X] [X] [X] [X] [X] -SET_FUNC_ARGS [ ] [X] [X] [X] [X] [ ] [ ] -<118> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<119> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -SETUP_LOOP [X] [X] [X] [X] [X] [X] [X] -SETUP_EXCEPT [X] [X] [X] [X] [X] [X] [X] -SETUP_FINALLY [X] [X] [X] [X] [X] [X] [X] -RESERVE_FAST [X] [X] [X] [ ] [ ] [ ] [ ] -LOAD_FAST [X] [X] [X] [X] [X] [X] [X] -STORE_FAST [X] [X] [X] [X] [X] [X] [X] -DELETE_FAST [X] [X] [X] [X] [X] [X] [X] -SET_LINENO [X] [X] [X] [X] [X] [X] [X] -<128> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<129> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -RAISE_VARARGS [ ] [ ] [ ] [X] [X] [X] [X] -CALL_FUNCTION [ ] [ ] [ ] [X] [X] [X] [X] -MAKE_FUNCTION [ ] [ ] [ ] [X] [X] [X] [X] -BUILD_SLICE [ ] [ ] [ ] [ ] [X] [X] [X] -<134> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<135> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<136> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<137> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<138> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<139> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -CALL_FUNCTION_VAR [ ] [ ] [ ] [ ] [ ] [ ] [X] -CALL_FUNCTION_KW [ ] [ ] [ ] [ ] [ ] [ ] [X] -CALL_FUNCTION_VAR_KW [ ] [ ] [ ] [ ] [ ] [ ] [X] -<143> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<144> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<145> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<146> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<147> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<148> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<149> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<150> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<151> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<152> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<153> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<154> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<155> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<156> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<157> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<158> [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<159> [ ] [ ] [ ] [ ] [ ] [ ] [ ] - . - . - . - - - 2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.7 -STOP_CODE [X] [X] [X] [X] [X] [X] [X] [X] -POP_TOP [X] [X] [X] [X] [X] [X] [X] [X] -ROT_TWO [X] [X] [X] [X] [X] [X] [X] [X] -ROT_THREE [X] [X] [X] [X] [X] [X] [X] [X] -DUP_TOP [X] [X] [X] [X] [X] [X] [X] [X] -ROT_FOUR [X] [X] [X] [X] [X] [X] [X] [X] -<6> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<7> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<8> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -NOP [ ] [ ] [ ] [ ] [X] [X] [X] [X] -UNARY_POSITIVE [X] [X] [X] [X] [X] [X] [X] [X] -UNARY_NEGATIVE [X] [X] [X] [X] [X] [X] [X] [X] -UNARY_NOT [X] [X] [X] [X] [X] [X] [X] [X] -UNARY_CONVERT [X] [X] [X] [X] [X] [X] [X] [X] -<14> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -UNARY_INVERT [X] [X] [X] [X] [X] [X] [X] [X] -<16> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<17> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -LIST_APPEND [ ] [ ] [ ] [ ] [X] [X] [X] [ ] -BINARY_POWER [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_MULTIPLY [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_DIVIDE [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_MODULO [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_ADD [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_SUBTRACT [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_SUBSCR [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_FLOOR_DIVIDE [ ] [ ] [X] [X] [X] [X] [X] [X] -BINARY_TRUE_DIVIDE [ ] [ ] [X] [X] [X] [X] [X] [X] -INPLACE_FLOOR_DIVIDE [ ] [ ] [X] [X] [X] [X] [X] [X] -INPLACE_TRUE_DIVIDE [ ] [ ] [X] [X] [X] [X] [X] [X] -SLICE+0 [X] [X] [X] [X] [X] [X] [X] [X] -SLICE+1 [X] [X] [X] [X] [X] [X] [X] [X] -SLICE+2 [X] [X] [X] [X] [X] [X] [X] [X] -SLICE+3 [X] [X] [X] [X] [X] [X] [X] [X] -<34> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<35> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<36> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<37> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<38> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<39> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -STORE_SLICE+0 [X] [X] [X] [X] [X] [X] [X] [X] -STORE_SLICE+1 [X] [X] [X] [X] [X] [X] [X] [X] -STORE_SLICE+2 [X] [X] [X] [X] [X] [X] [X] [X] -STORE_SLICE+3 [X] [X] [X] [X] [X] [X] [X] [X] -<44> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<45> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<46> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<47> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<48> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<49> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -DELETE_SLICE+0 [X] [X] [X] [X] [X] [X] [X] [X] -DELETE_SLICE+1 [X] [X] [X] [X] [X] [X] [X] [X] -DELETE_SLICE+2 [X] [X] [X] [X] [X] [X] [X] [X] -DELETE_SLICE+3 [X] [X] [X] [X] [X] [X] [X] [X] -STORE_MAP [ ] [ ] [ ] [ ] [ ] [ ] [X] [X] -INPLACE_ADD [X] [X] [X] [X] [X] [X] [X] [X] -INPLACE_SUBTRACT [X] [X] [X] [X] [X] [X] [X] [X] -INPLACE_MULTIPLY [X] [X] [X] [X] [X] [X] [X] [X] -INPLACE_DIVIDE [X] [X] [X] [X] [X] [X] [X] [X] -INPLACE_MODULO [X] [X] [X] [X] [X] [X] [X] [X] -STORE_SUBSCR [X] [X] [X] [X] [X] [X] [X] [X] -DELETE_SUBSCR [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_LSHIFT [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_RSHIFT [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_AND [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_XOR [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_OR [X] [X] [X] [X] [X] [X] [X] [X] -INPLACE_POWER [X] [X] [X] [X] [X] [X] [X] [X] -GET_ITER [ ] [ ] [X] [X] [X] [X] [X] [X] -<69> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -PRINT_EXPR [X] [X] [X] [X] [X] [X] [X] [X] -PRINT_ITEM [X] [X] [X] [X] [X] [X] [X] [X] -PRINT_NEWLINE [X] [X] [X] [X] [X] [X] [X] [X] -PRINT_ITEM_TO [X] [X] [X] [X] [X] [X] [X] [X] -PRINT_NEWLINE_TO [X] [X] [X] [X] [X] [X] [X] [X] -INPLACE_LSHIFT [X] [X] [X] [X] [X] [X] [X] [X] -INPLACE_RSHIFT [X] [X] [X] [X] [X] [X] [X] [X] -INPLACE_AND [X] [X] [X] [X] [X] [X] [X] [X] -INPLACE_XOR [X] [X] [X] [X] [X] [X] [X] [X] -INPLACE_OR [X] [X] [X] [X] [X] [X] [X] [X] -BREAK_LOOP [X] [X] [X] [X] [X] [X] [X] [X] -WITH_CLEANUP [ ] [ ] [ ] [ ] [ ] [X] [X] [X] -LOAD_LOCALS [X] [X] [X] [X] [X] [X] [X] [X] -RETURN_VALUE [X] [X] [X] [X] [X] [X] [X] [X] -IMPORT_STAR [X] [X] [X] [X] [X] [X] [X] [X] -EXEC_STMT [X] [X] [X] [X] [X] [X] [X] [X] -YIELD_VALUE [ ] [ ] [X] [X] [X] [X] [X] [X] -POP_BLOCK [X] [X] [X] [X] [X] [X] [X] [X] -END_FINALLY [X] [X] [X] [X] [X] [X] [X] [X] -BUILD_CLASS [X] [X] [X] [X] [X] [X] [X] [X] -STORE_NAME [X] [X] [X] [X] [X] [X] [X] [X] -DELETE_NAME [X] [X] [X] [X] [X] [X] [X] [X] -UNPACK_SEQUENCE [X] [X] [X] [X] [X] [X] [X] [X] -FOR_ITER [ ] [ ] [X] [X] [X] [X] [X] [X] -LIST_APPEND [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] -STORE_ATTR [X] [X] [X] [X] [X] [X] [X] [X] -DELETE_ATTR [X] [X] [X] [X] [X] [X] [X] [X] -STORE_GLOBAL [X] [X] [X] [X] [X] [X] [X] [X] -DELETE_GLOBAL [X] [X] [X] [X] [X] [X] [X] [X] -DUP_TOPX [X] [X] [X] [X] [X] [X] [X] [X] -LOAD_CONST [X] [X] [X] [X] [X] [X] [X] [X] -LOAD_NAME [X] [X] [X] [X] [X] [X] [X] [X] -BUILD_TUPLE [X] [X] [X] [X] [X] [X] [X] [X] -BUILD_LIST [X] [X] [X] [X] [X] [X] [X] [X] -BUILD_SET ! [X] -BUILD_MAP ! [X] [X] [X] [X] [X] [X] [X] [X] -LOAD_ATTR ! [X] [X] [X] [X] [X] [X] [X] [X] -COMPARE_OP ! [X] [X] [X] [X] [X] [X] [X] [X] -IMPORT_NAME ! [X] [X] [X] [X] [X] [X] [X] [X] -IMPORT_FROM ! [X] [X] [X] [X] [X] [X] [X] [X] -<109> ! [ ] [ ] [ ] [ ] [ ] [ ] [ ] -JUMP_FORWARD [X] [X] [X] [X] [X] [X] [X] [X] -JUMP_IF_FALSE (_OR_POP) [X] [X] [X] [X] [X] [X] [X] [+] -JUMP_IF_TRUE (_OR_POP) [X] [X] [X] [X] [X] [X] [X] [+] -JUMP_ABSOLUTE [X] [X] [X] [X] [X] [X] [X] [X] -FOR_LOOP ! [X] [X] [X] [ ] [ ] [ ] [ ] -<115> ! [ ] [ ] [ ] [ ] [ ] [ ] [ ] -POP_JUMP_IF_FALSE ! [X] -POP_JUMP_IF_TRUE ! [X] -LOAD_GLOBAL [X] [X] [X] [X] [X] [X] [X] [X] -<117> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<118> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -CONTINUE_LOOP [ ] [X] [X] [X] [X] [X] [X] [X] -SETUP_LOOP [X] [X] [X] [X] [X] [X] [X] [X] -SETUP_EXCEPT [X] [X] [X] [X] [X] [X] [X] [X] -SETUP_FINALLY [X] [X] [X] [X] [X] [X] [X] [X] -<123> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -LOAD_FAST [X] [X] [X] [X] [X] [X] [X] [X] -STORE_FAST [X] [X] [X] [X] [X] [X] [X] [X] -DELETE_FAST [X] [X] [X] [X] [X] [X] [X] [X] -SET_LINENO [X] [X] [X] [ ] [ ] [ ] [ ] [ ] -<128> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<129> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -RAISE_VARARGS [X] [X] [X] [X] [X] [X] [X] [X] -CALL_FUNCTION [X] [X] [X] [X] [X] [X] [X] [X] -MAKE_FUNCTION [X] [X] [X] [X] [X] [X] [X] [X] -BUILD_SLICE [X] [X] [X] [X] [X] [X] [X] [X] -MAKE_CLOSURE [ ] [X] [X] [X] [X] [X] [X] [X] -LOAD_CLOSURE [ ] [X] [X] [X] [X] [X] [X] [X] -LOAD_DEREF [ ] [X] [X] [X] [X] [X] [X] [X] -STORE_DEREF [ ] [X] [X] [X] [X] [X] [X] [X] -<138> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<139> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -CALL_FUNCTION_VAR [X] [X] [X] [X] [X] [X] [X] [X] -CALL_FUNCTION_KW [X] [X] [X] [X] [X] [X] [X] [X] -CALL_FUNCTION_VAR_KW [X] [X] [X] [X] [X] [X] [X] [X] -EXTENDED_ARG ! [X] [X] [X] [X] [X] [X] [X] -SETUP_WITH ! [X] -<144> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<145> ! [ ] [ ] [ ] [ ] [ ] [ ] [ ] -EXTENDED_ARG ! [X] -SET_ADD [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] -MAP_ADD [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] -<148> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<149> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<150> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<151> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<152> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<153> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<154> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<155> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<156> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<157> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<158> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<159> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] - . - . - . - - - 3.0 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 3.10 -STOP_CODE [X] [X] [X] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -POP_TOP [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -ROT_TWO [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -ROT_THREE [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -DUP_TOP [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -ROT_FOUR ! [X] [X] -DUP_TOP_TWO ! [X] [X] [X] [X] [X] [X] [X] [X] [X] -ROT_FOUR [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] [X] [X] -<7> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<8> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -NOP [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -UNARY_POSITIVE [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -UNARY_NEGATIVE [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -UNARY_NOT [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -<13> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<14> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -UNARY_INVERT [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_MATRIX_MULTIPLY [ ] [ ] [ ] [ ] [ ] [X] [X] [X] [X] [X] [X] -SET_ADD ! [X] [ ] [ ] [ ] [ ] -INPLACE_MATRIX_MULTIPLY ! [X] [X] [X] [X] [X] [X] -LIST_APPEND [X] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -BINARY_POWER [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_MULTIPLY [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -<21> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -BINARY_MODULO [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_ADD [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_SUBTRACT [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_SUBSCR [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_FLOOR_DIVIDE [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_TRUE_DIVIDE [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -INPLACE_FLOOR_DIVIDE [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -INPLACE_TRUE_DIVIDE [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -GET_LEN [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] -MATCH_MAPPING [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] -MATCH_SEQUENCE [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] -MATCH_KEYS [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] -COPY_DICT_WITHOUT_KEYS [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] -<35> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<36> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<37> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<38> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<39> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<40> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<41> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<42> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<43> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<44> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<45> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<46> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -<47> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -RERAISE [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] [ ] -WITH_EXCEPT_START [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] [X] -GET_AITER [ ] [ ] [ ] [ ] [ ] [X] [X] [X] [X] [X] [X] -GET_ANEXT [ ] [ ] [ ] [ ] [ ] [X] [X] [X] [X] [X] [X] -BEFORE_ASYNC_WITH [ ] [ ] [ ] [ ] [ ] [X] [X] [X] [X] [X] [X] -BEGIN_FINALLY [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] [ ] [ ] -STORE_MAP ! [X] [X] [X] [X] [X] [ ] [ ] [ ] -END_ASYNC_FOR ! [X] [X] [X] -INPLACE_ADD [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -INPLACE_SUBTRACT [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -INPLACE_MULTIPLY [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -<58> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -INPLACE_MODULO [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -STORE_SUBSCR [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -DELETE_SUBSCR [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_LSHIFT [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_RSHIFT [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_AND [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_XOR [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -BINARY_OR [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -INPLACE_POWER [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -GET_ITER [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -STORE_LOCALS ! [X] [X] [X] [X] [ ] -GET_YIELD_FROM_ITER ! [X] [X] [X] [X] [X] [X] -PRINT_EXPR [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -LOAD_BUILD_CLASS [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -YIELD_FROM [ ] [ ] [ ] [X] [X] [X] [X] [X] [X] [X] [X] -GET_AWAITABLE [ ] [ ] [ ] [ ] [ ] [X] [X] [X] [X] [X] [X] -LOAD_ASSERTION_ERROR [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] [X] -INPLACE_LSHIFT [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -INPLACE_RSHIFT [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -INPLACE_AND [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -INPLACE_XOR [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -INPLACE_OR [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -BREAK_LOOP [X] [X] [X] [X] [X] [X] [X] [X] [ ] [ ] [ ] -WITH_CLEANUP ! [X] [X] [X] [X] [X] -WITH_CLEANUP_START ! [X] [X] [X] [X] [ ] [ ] -WITH_CLEANUP_FINISH ! [ ] [ ] [ ] [ ] [ ] [X] [X] [X] [X] -LIST_TO_TUPLE ! [X] [X] -RETURN_VALUE [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -IMPORT_STAR [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -SETUP_ANNOTATIONS [ ] [ ] [ ] [ ] [ ] [ ] [X] [X] [X] [X] [X] -YIELD_VALUE [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -POP_BLOCK [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -END_FINALLY [X] [X] [X] [X] [X] [X] [X] [X] [X] [ ] [ ] -POP_EXCEPT [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -STORE_NAME [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -DELETE_NAME [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -UNPACK_SEQUENCE [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -FOR_ITER [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -UNPACK_EX [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -STORE_ATTR [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -DELETE_ATTR [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -STORE_GLOBAL [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -DELETE_GLOBAL [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -DUP_TOPX ! [X] [X] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -ROT_N ! [X] -LOAD_CONST [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -LOAD_NAME [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -BUILD_TUPLE [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -BUILD_LIST [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -BUILD_SET [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -BUILD_MAP [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -LOAD_ATTR [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -COMPARE_OP [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -IMPORT_NAME [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -IMPORT_FROM [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -JUMP_FORWARD [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -JUMP_IF_FALSE (_OR_POP) [X] [+] [+] [+] [+] [+] [+] [+] [+] [+] [+] -JUMP_IF_TRUE (_OR_POP) [X] [+] [+] [+] [+] [+] [+] [+] [+] [+] [+] -JUMP_ABSOLUTE [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -POP_JUMP_IF_FALSE [ ] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -POP_JUMP_IF_TRUE [ ] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -LOAD_GLOBAL [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -IS_OP [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] [X] -CONTAINS_OP [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] [X] -CONTINUE_LOOP ! [X] [X] [X] [X] [X] [X] [X] [X] [ ] [ ] -RERAISE ! [X] -SETUP_LOOP [X] [X] [X] [X] [X] [X] [X] [X] [ ] [ ] [ ] -SETUP_EXCEPT ! [X] [X] [X] [X] [X] [X] [X] [X] [ ] -JUMP_IF_NOT_EXC_MATCH ! [X] [X] -SETUP_FINALLY [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -<123> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -LOAD_FAST [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -STORE_FAST [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -DELETE_FAST [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -STORE_ANNOTATION [ ] [ ] [ ] [ ] [ ] [ ] [X] [ ] [ ] [ ] [ ] -<128> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -GEN_START [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] -RAISE_VARARGS [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -CALL_FUNCTION [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -MAKE_FUNCTION [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -BUILD_SLICE [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -MAKE_CLOSURE [X] [X] [X] [X] [X] [X] [ ] [ ] [ ] [ ] [ ] -LOAD_CLOSURE [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -LOAD_DEREF [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -STORE_DEREF [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -DELETE_DEREF [ ] [ ] [X] [X] [X] [X] [X] [X] [X] [X] [X] -<139> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -CALL_FUNCTION_VAR [X] [X] [X] [X] [X] [X] [ ] [ ] [ ] [ ] [ ] -CALL_FUNCTION_KW [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -CALL_FUNCTION_VAR_KW ! [X] [X] [X] [X] [X] [X] -CALL_FUNCTION_EX ! [X] [X] [X] [X] [X] -EXTENDED_ARG ! [X] [X] -SETUP_WITH ! [X] [X] [X] [X] [X] [X] [X] [X] [X] -<144> ! [ ] [ ] -EXTENDED_ARG ! [X] [X] [X] [X] [X] [X] [X] [X] [X] -LIST_APPEND [ ] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -SET_ADD [ ] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -MAP_ADD [ ] [X] [X] [X] [X] [X] [X] [X] [X] [X] [X] -LOAD_CLASSDEREF [ ] [ ] [ ] [ ] [X] [X] [X] [X] [X] [X] [X] -BUILD_LIST_UNPACK [ ] [ ] [ ] [ ] [ ] [X] [X] [X] [X] [ ] [ ] -BUILD_MAP_UNPACK [ ] [ ] [ ] [ ] [ ] [X] [X] [X] [X] [ ] [ ] -BUILD_MAP_UNPACK_WITH_CALL [ ] [ ] [ ] [ ] [ ] [X] [X] [X] [X] [ ] [ ] -BUILD_TUPLE_UNPACK ! [ ] [ ] [ ] [ ] [ ] [X] [X] [X] [X] [ ] -MATCH_CLASS ! [X] -BUILD_SET_UNPACK [ ] [ ] [ ] [ ] [ ] [X] [X] [X] [X] [ ] [ ] -SETUP_ASYNC_WITH [ ] [ ] [ ] [ ] [ ] [X] [X] [X] [X] [X] [X] -FORMAT_VALUE [ ] [ ] [ ] [ ] [ ] [ ] [X] [X] [X] [X] [X] -BUILD_CONST_KEY_MAP [ ] [ ] [ ] [ ] [ ] [ ] [X] [X] [X] [X] [X] -BUILD_STRING [ ] [ ] [ ] [ ] [ ] [ ] [X] [X] [X] [X] [X] -BUILD_TUPLE_UNPACK_WITH_CALL[ ] [ ] [ ] [ ] [ ] [ ] [X] [X] [X] [ ] [ ] -<159> [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] -LOAD_METHOD [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] [X] [X] [X] -CALL_METHOD [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] [X] [X] [X] -CALL_FINALLY ! [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] -LIST_EXTEND ! [X] [X] -POP_FINALLY ! [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] -SET_UPDATE ! [X] [X] -DICT_MERGE [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] [X] -DICT_UPDATE [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] [X] -<166> -<167> -<168> -<169> - . - . - . - - - 3.11 3.12 -CACHE [X] [X] -POP_TOP [X] [X] -PUSH_NULL [X] [X] -INTERPRETER_EXIT [ ] [X] -END_FOR [ ] [X] -END_SEND [ ] [X] -<6> [ ] [ ] -<7> [ ] [ ] -<8> [ ] [ ] -NOP [X] [X] -UNARY_POSITIVE [X] [ ] -UNARY_NEGATIVE [X] [X] -UNARY_NOT [X] [X] -<13> [ ] [ ] -<14> [ ] [ ] -UNARY_INVERT [X] [X] -<16> [ ] [ ] -RESERVED [ ] [X] -<18> [ ] [ ] -<19> [ ] [ ] -<20> [ ] [ ] -<21> [ ] [ ] -<22> [ ] [ ] -<23> [ ] [ ] -<24> [ ] [ ] -BINARY_SUBSCR [X] [X] -BINARY_SLICE [ ] [X] -STORE_SLICE [ ] [X] -<28> [ ] [ ] -<29> [ ] [ ] -GET_LEN [X] [X] -MATCH_MAPPING [X] [X] -MATCH_SEQUENCE [X] [X] -MATCH_KEYS [X] [X] -<34> [ ] [ ] -PUSH_EXC_INFO [X] [X] -CHECK_EXC_MATCH [X] [X] -CHECK_EG_MATCH [X] [X] -<38> [ ] [ ] -<39> [ ] [ ] -<40> [ ] [ ] -<41> [ ] [ ] -<42> [ ] [ ] -<43> [ ] [ ] -<44> [ ] [ ] -<45> [ ] [ ] -<46> [ ] [ ] -<47> [ ] [ ] -<48> [ ] [ ] -WITH_EXCEPT_START [X] [X] -GET_AITER [X] [X] -GET_ANEXT [X] [X] -BEFORE_ASYNC_WITH [X] [X] -BEFORE_WITH [X] [X] -END_ASYNC_FOR [X] [X] -CLEANUP_THROW [ ] [X] -<56> [ ] [ ] -<57> [ ] [ ] -<58> [ ] [ ] -<59> [ ] [ ] -STORE_SUBSCR [X] [X] -DELETE_SUBSCR [X] [X] -<62> [ ] [ ] -<63> [ ] [ ] -<64> [ ] [ ] -<65> [ ] [ ] -<66> [ ] [ ] -<67> [ ] [ ] -GET_ITER [X] [X] -GET_YIELD_FROM_ITER [X] [X] -PRINT_EXPR [X] [ ] -LOAD_BUILD_CLASS [X] [X] -<72> [ ] [ ] -<73> [ ] [ ] -LOAD_ASSERTION_ERROR [X] [X] -RETURN_GENERATOR [X] [X] -<76> [ ] [ ] -<77> [ ] [ ] -<78> [ ] [ ] -<79> [ ] [ ] -<80> [ ] [ ] -<81> [ ] [ ] -LIST_TO_TUPLE [X] [ ] -RETURN_VALUE [X] [X] -IMPORT_STAR [X] [ ] -SETUP_ANNOTATIONS [X] [X] -YIELD_VALUE [X] [ ] -ASYNC_GEN_WRAP ! [X] -LOAD_LOCALS ! [X] -PREP_RERAISE_STAR [X] [ ] -POP_EXCEPT [X] [X] -STORE_NAME [X] [X] -DELETE_NAME [X] [X] -UNPACK_SEQUENCE [X] [X] -FOR_ITER [X] [X] -UNPACK_EX [X] [X] -STORE_ATTR [X] [X] -DELETE_ATTR [X] [X] -STORE_GLOBAL [X] [X] -DELETE_GLOBAL [X] [X] -SWAP [X] [X] -LOAD_CONST [X] [X] -LOAD_NAME [X] [X] -BUILD_TUPLE [X] [X] -BUILD_LIST [X] [X] -BUILD_SET [X] [X] -BUILD_MAP [X] [X] -LOAD_ATTR [X] [X] -COMPARE_OP [X] [X] -IMPORT_NAME [X] [X] -IMPORT_FROM [X] [X] -JUMP_FORWARD [X] [X] -JUMP_IF_FALSE_OR_POP [X] [ ] -JUMP_IF_TRUE_OR_POP [X] [ ] -<113> [ ] [ ] -POP_JUMP_FORWARD_IF_FALSE ! [X] -POP_JUMP_IF_FALSE ! [X] -POP_JUMP_FORWARD_IF_TRUE ! [X] -POP_JUMP_IF_TRUE ! [X] -LOAD_GLOBAL [X] [X] -IS_OP [X] [X] -CONTAINS_OP [X] [X] -RERAISE [X] [X] -COPY [X] [X] -RETURN_CONST [ ] [X] -BINARY_OP [X] [X] -SEND [X] [X] -LOAD_FAST [X] [X] -STORE_FAST [X] [X] -DELETE_FAST [X] [X] -LOAD_FAST_CHECK [ ] [X] -POP_JUMP_FORWARD_IF_NOT_NONE ! [X] -POP_JUMP_IF_NOT_NONE ! [X] -POP_JUMP_FORWARD_IF_NONE ! [X] -POP_JUMP_IF_NONE ! [X] -RAISE_VARARGS [X] [X] -GET_AWAITABLE [X] [X] -MAKE_FUNCTION [X] [X] -BUILD_SLICE [X] [X] -JUMP_BACKWARD_NO_INTERRUPT [X] [X] -MAKE_CELL [X] [X] -LOAD_CLOSURE [X] [X] -LOAD_DEREF [X] [X] -STORE_DEREF [X] [X] -DELETE_DEREF [X] [X] -JUMP_BACKWARD [X] [X] -LOAD_SUPER_ATTR [ ] [X] -CALL_FUNCTION_EX [X] [X] -LOAD_FAST_AND_CLEAR [ ] [X] -EXTENDED_ARG [X] [X] -LIST_APPEND [X] [X] -SET_ADD [X] [X] -MAP_ADD [X] [X] -LOAD_CLASSDEREF [X] [ ] -COPY_FREE_VARS [X] [X] -YIELD_VALUE [ ] [X] -RESUME [X] [X] -MATCH_CLASS [X] [X] -<153> [ ] [ ] -<154> [ ] [ ] -FORMAT_VALUE [X] [X] -BUILD_CONST_KEY_MAP [X] [X] -BUILD_STRING [X] [X] -<158> [ ] [ ] -<159> [ ] [ ] -LOAD_METHOD [X] [ ] -<161> [ ] [ ] -LIST_EXTEND [X] [X] -SET_UPDATE [X] [X] -DICT_MERGE [X] [X] -DICT_UPDATE [X] [X] -PRECALL [X] [ ] -<167> [ ] [ ] -<168> [ ] [ ] -<169> [ ] [ ] -<170> [ ] [ ] -CALL [X] [X] -KW_NAMES [X] [X] -POP_JUMP_BACKWARD_IF_NOT_NONE ! [X] -CALL_INTRINSIC_1 ! [X] -POP_JUMP_BACKWARD_IF_NONE ! [X] -CALL_INTRINSIC_2 ! [X] -POP_JUMP_BACKWARD_IF_FALSE ! [X] -LOAD_FROM_DICT_OR_GLOBALS ! [X] -POP_JUMP_BACKWARD_IF_TRUE ! [X] -LOAD_FROM_DICT_OR_DEREF ! [X] -<177> -<178> -<179> - . - . - . -<234> -<235> -<236> -INSTRUMENTED_LOAD_SUPER_ATTR [ ] [X] -INSTRUMENTED_POP_JUMP_IF_NONE [ ] [X] -INSTRUMENTED_POP_JUMP_IF_NOT_NONE [ ] [X] -INSTRUMENTED_RESUME [ ] [X] -INSTRUMENTED_CALL [ ] [X] -INSTRUMENTED_RETURN_VALUE [ ] [X] -INSTRUMENTED_YIELD_VALUE [ ] [X] -INSTRUMENTED_CALL_FUNCTION_EX [ ] [X] -INSTRUMENTED_JUMP_FORWARD [ ] [X] -INSTRUMENTED_JUMP_BACKWARD [ ] [X] -INSTRUMENTED_RETURN_CONST [ ] [X] -INSTRUMENTED_FOR_ITER [ ] [X] -INSTRUMENTED_POP_JUMP_IF_FALSE [ ] [X] -INSTRUMENTED_POP_JUMP_IF_TRUE [ ] [X] -INSTRUMENTED_END_FOR [ ] [X] -INSTRUMENTED_END_SEND [ ] [X] -INSTRUMENTED_INSTRUCTION [ ] [X] -INSTRUMENTED_LINE [ ] [X] -<255> - - -[Intrinsic 1] 3.12 -INVALID [X] -PRINT [X] -IMPORT_STAR [X] -STOPITERATION_ERROR [X] -ASYNC_GEN_WRAP [X] -UNARY_POSITIVE [X] -LIST_TO_TUPLE [X] -TYPEVAR [X] -PARAMSPEC [X] -TYPEVARTUPLE [X] -SUBSCRIPT_GENERIC [X] -TYPEALIAS [X] - - -[Intrinsic 2] 3.12 -INVALID [X] -PREP_RERAISE_STAR [X] -TYPEVAR_WITH_BOUND [X] -TYPEVAR_WITH_CONSTRAINTS [X] -SET_FUNCTION_TYPE_PARAMS [X] - - - 1.0 1.3 1.4 1.5 1.6 -TYPE_NULL '0' '0' '0' '0' '0' -TYPE_NONE 'N' 'N' 'N' 'N' 'N' -TYPE_ELLIPSIS '.' '.' '.' -TYPE_INT 'i' 'i' 'i' 'i' 'i' -TYPE_INT64 'I' 'I' -TYPE_FLOAT 'f' 'f' 'f' 'f' 'f' -TYPE_COMPLEX 'x' 'x' 'x' -TYPE_LONG 'l' 'l' 'l' 'l' 'l' -TYPE_STRING 's' 's' 's' 's' 's' -TYPE_TUPLE '(' '(' '(' '(' '(' -TYPE_LIST '[' '[' '[' '[' '[' -TYPE_DICT '{' '{' '{' '{' '{' -TYPE_CODE 'C' 'c' 'c' 'c' 'c' -TYPE_UNICODE 'u' -TYPE_UNKNOWN '?' '?' '?' '?' '?' - - - 2.0 2.2 2.3 2.4 2.5 -TYPE_NULL '0' '0' '0' '0' '0' -TYPE_NONE 'N' 'N' 'N' 'N' 'N' -TYPE_FALSE 'F' 'F' 'F' -TYPE_TRUE 'T' 'T' 'T' -TYPE_STOPITER 'S' 'S' 'S' 'S' -TYPE_ELLIPSIS '.' '.' '.' '.' '.' -TYPE_INT 'i' 'i' 'i' 'i' 'i' -TYPE_INT64 'I' 'I' 'I' 'I' 'I' -TYPE_FLOAT 'f' 'f' 'f' 'f' 'f' -TYPE_BINARY_FLOAT 'g' -TYPE_COMPLEX 'x' 'x' 'x' 'x' 'x' -TYPE_BINARY_COMPLEX 'y' -TYPE_LONG 'l' 'l' 'l' 'l' 'l' -TYPE_STRING 's' 's' 's' 's' 's' -TYPE_INTERNED 't' 't' -TYPE_STRINGREF 'R' 'R' -TYPE_TUPLE '(' '(' '(' '(' '(' -TYPE_LIST '[' '[' '[' '[' '[' -TYPE_DICT '{' '{' '{' '{' '{' -TYPE_CODE 'c' 'c' 'c' 'c' 'c' -TYPE_UNICODE 'u' 'u' 'u' 'u' 'u' -TYPE_UNKNOWN '?' '?' '?' '?' '?' -TYPE_SET '<' -TYPE_FROZENSET '>' - - - 3.0 3.4 -TYPE_NULL '0' '0' -TYPE_NONE 'N' 'N' -TYPE_FALSE 'F' 'F' -TYPE_TRUE 'T' 'T' -TYPE_STOPITER 'S' 'S' -TYPE_ELLIPSIS '.' '.' -TYPE_INT 'i' 'i' -TYPE_INT64 'I' -TYPE_FLOAT 'f' 'f' -TYPE_BINARY_FLOAT 'g' 'g' -TYPE_COMPLEX 'x' 'x' -TYPE_BINARY_COMPLEX 'y' 'y' -TYPE_LONG 'l' 'l' -TYPE_STRING 's' 's' -TYPE_INTERNED 't' -TYPE_REF 'r' -TYPE_TUPLE '(' '(' -TYPE_LIST '[' '[' -TYPE_DICT '{' '{' -TYPE_CODE 'c' 'c' -TYPE_UNICODE 'u' 'u' -TYPE_UNKNOWN '?' '?' -TYPE_SET '<' '<' -TYPE_FROZENSET '>' '>' -TYPE_ASCII 'a' -TYPE_ASCII_INTERNED 'A' -TYPE_SMALL_TUPLE ')' -TYPE_SHORT_ASCII 'z' -TYPE_SHORT_ASCII_INTERNED 'Z' - - -[TYPE_CODE] 1.0 1.3 1.5 2.1 2.3 3.0 3.8 3.11 -argcount short short short long long long long -posonlyargc long long -kwonlyargc long long long -nlocals short short short long long long -stacksize short short long long long long -flags short short short long long long long -code Obj Obj Obj Obj Obj Obj Obj Obj -consts Obj Obj Obj Obj Obj Obj Obj Obj -names Obj Obj Obj Obj Obj Obj Obj Obj -varnames Obj Obj Obj Obj Obj Obj -freevars Obj Obj Obj Obj -cellvars Obj Obj Obj Obj -locals+names Obj -locals+kinds Obj -filename Obj Obj Obj Obj Obj Obj Obj Obj -name Obj Obj Obj Obj Obj Obj Obj Obj -qualname Obj -firstline short short long long long long -lntable Obj Obj Obj Obj Obj Obj -exceptiontable Obj diff --git a/pyc_code.cpp b/pyc_code.cpp index acc2eb8..2b57107 100644 --- a/pyc_code.cpp +++ b/pyc_code.cpp @@ -2,6 +2,30 @@ #include "pyc_module.h" #include "data.h" +/* == Marshal structure for Code object == + 1.0 1.3 1.5 2.1 2.3 3.0 3.8 3.11 +argcount short short short long long long long +posonlyargc long long +kwonlyargc long long long +nlocals short short short long long long +stacksize short short long long long long +flags short short short long long long long +code Obj Obj Obj Obj Obj Obj Obj Obj +consts Obj Obj Obj Obj Obj Obj Obj Obj +names Obj Obj Obj Obj Obj Obj Obj Obj +varnames Obj Obj Obj Obj Obj Obj +freevars Obj Obj Obj Obj +cellvars Obj Obj Obj Obj +locals+names Obj +locals+kinds Obj +filename Obj Obj Obj Obj Obj Obj Obj Obj +name Obj Obj Obj Obj Obj Obj Obj Obj +qualname Obj +firstline short short long long long long +lntable Obj Obj Obj Obj Obj Obj +exceptiontable Obj +*/ + void PycCode::load(PycData* stream, PycModule* mod) { if (mod->verCompare(1, 3) >= 0 && mod->verCompare(2, 3) < 0) diff --git a/pyc_object.h b/pyc_object.h index 19ca574..ade46c7 100644 --- a/pyc_object.h +++ b/pyc_object.h @@ -96,37 +96,37 @@ class PycObject { public: enum Type { // From the Python Marshallers - TYPE_NULL = '0', - TYPE_NONE = 'N', - TYPE_FALSE = 'F', - TYPE_TRUE = 'T', - TYPE_STOPITER = 'S', - TYPE_ELLIPSIS = '.', - TYPE_INT = 'i', - TYPE_INT64 = 'I', - TYPE_FLOAT = 'f', - TYPE_BINARY_FLOAT = 'g', - TYPE_COMPLEX = 'x', - TYPE_BINARY_COMPLEX = 'y', - TYPE_LONG = 'l', - TYPE_STRING = 's', - TYPE_INTERNED = 't', - TYPE_STRINGREF = 'R', - TYPE_OBREF = 'r', - TYPE_TUPLE = '(', - TYPE_LIST = '[', - TYPE_DICT = '{', - TYPE_CODE = 'c', - TYPE_CODE2 = 'C', // Used in Python 1.0 - 1.2 - TYPE_UNICODE = 'u', - TYPE_UNKNOWN = '?', - TYPE_SET = '<', - TYPE_FROZENSET = '>', - TYPE_ASCII = 'a', - TYPE_ASCII_INTERNED = 'A', - TYPE_SMALL_TUPLE = ')', - TYPE_SHORT_ASCII = 'z', - TYPE_SHORT_ASCII_INTERNED = 'Z', + TYPE_NULL = '0', // Python 1.0 -> + TYPE_NONE = 'N', // Python 1.0 -> + TYPE_FALSE = 'F', // Python 2.3 -> + TYPE_TRUE = 'T', // Python 2.3 -> + TYPE_STOPITER = 'S', // Python 2.2 -> + TYPE_ELLIPSIS = '.', // Python 1.4 -> + TYPE_INT = 'i', // Python 1.0 -> + TYPE_INT64 = 'I', // Python 1.5 - 3.3 + TYPE_FLOAT = 'f', // Python 1.0 -> + TYPE_BINARY_FLOAT = 'g', // Python 2.5 -> + TYPE_COMPLEX = 'x', // Python 1.4 -> + TYPE_BINARY_COMPLEX = 'y', // Python 2.5 -> + TYPE_LONG = 'l', // Python 1.0 -> + TYPE_STRING = 's', // Python 1.0 -> + TYPE_INTERNED = 't', // Python 2.4 - 2.7, 3.4 -> + TYPE_STRINGREF = 'R', // Python 2.4 - 2.7 + TYPE_OBREF = 'r', // Python 3.4 -> + TYPE_TUPLE = '(', // Python 1.0 -> + TYPE_LIST = '[', // Python 1.0 -> + TYPE_DICT = '{', // Python 1.0 -> + TYPE_CODE = 'c', // Python 1.3 -> + TYPE_CODE2 = 'C', // Python 1.0 - 1.2 + TYPE_UNICODE = 'u', // Python 1.6 -> + TYPE_UNKNOWN = '?', // Python 1.0 -> + TYPE_SET = '<', // Python 2.5 -> + TYPE_FROZENSET = '>', // Python 2.5 -> + TYPE_ASCII = 'a', // Python 3.4 -> + TYPE_ASCII_INTERNED = 'A', // Python 3.4 -> + TYPE_SMALL_TUPLE = ')', // Python 3.4 -> + TYPE_SHORT_ASCII = 'z', // Python 3.4 -> + TYPE_SHORT_ASCII_INTERNED = 'Z', // Python 3.4 -> }; PycObject(int type = TYPE_UNKNOWN) : m_refs(0), m_type(type) { }