mirror of
https://github.com/zrax/pycdc.git
synced 2026-06-23 11:34:07 +00:00
Add basic bytecode and disassembly support for Python 3.12
This commit is contained in:
parent
b32f231e33
commit
9b384ad1fa
12 changed files with 456 additions and 189 deletions
|
|
@ -12,6 +12,7 @@ Python MAGIC Python MAGIC Python MAGIC
|
|||
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
|
||||
|
|
@ -542,190 +543,244 @@ DICT_UPDATE [ ] [ ] [ ] [ ] [ ] [ ] [ ]
|
|||
.
|
||||
|
||||
|
||||
3.11
|
||||
CACHE [X]
|
||||
POP_TOP [X]
|
||||
PUSH_NULL [X]
|
||||
<3> [ ]
|
||||
<4> [ ]
|
||||
<5> [ ]
|
||||
<6> [ ]
|
||||
<7> [ ]
|
||||
<8> [ ]
|
||||
NOP [X]
|
||||
UNARY_POSITIVE [X]
|
||||
UNARY_NEGATIVE [X]
|
||||
UNARY_NOT [X]
|
||||
<13> [ ]
|
||||
<14> [ ]
|
||||
UNARY_INVERT [X]
|
||||
<16> [ ]
|
||||
<17> [ ]
|
||||
<18> [ ]
|
||||
<19> [ ]
|
||||
<20> [ ]
|
||||
<21> [ ]
|
||||
<22> [ ]
|
||||
<23> [ ]
|
||||
<24> [ ]
|
||||
BINARY_SUBSCR [X]
|
||||
<26> [ ]
|
||||
<27> [ ]
|
||||
<28> [ ]
|
||||
<29> [ ]
|
||||
GET_LEN [X]
|
||||
MATCH_MAPPING [X]
|
||||
MATCH_SEQUENCE [X]
|
||||
MATCH_KEYS [X]
|
||||
<34> [ ]
|
||||
PUSH_EXC_INFO [X]
|
||||
CHECK_EXC_MATCH [X]
|
||||
CHECK_EG_MATCH [X]
|
||||
<38> [ ]
|
||||
<39> [ ]
|
||||
<40> [ ]
|
||||
<41> [ ]
|
||||
<42> [ ]
|
||||
<43> [ ]
|
||||
<44> [ ]
|
||||
<45> [ ]
|
||||
<46> [ ]
|
||||
<47> [ ]
|
||||
<48> [ ]
|
||||
WITH_EXCEPT_START [X]
|
||||
GET_AITER [X]
|
||||
GET_ANEXT [X]
|
||||
BEFORE_ASYNC_WITH [X]
|
||||
BEFORE_WITH [X]
|
||||
END_ASYNC_FOR [X]
|
||||
<55> [ ]
|
||||
<56> [ ]
|
||||
<57> [ ]
|
||||
<58> [ ]
|
||||
<59> [ ]
|
||||
STORE_SUBSCR [X]
|
||||
DELETE_SUBSCR [X]
|
||||
<62> [ ]
|
||||
<63> [ ]
|
||||
<64> [ ]
|
||||
<65> [ ]
|
||||
<66> [ ]
|
||||
<67> [ ]
|
||||
GET_ITER [X]
|
||||
GET_YIELD_FROM_ITER [X]
|
||||
PRINT_EXPR [X]
|
||||
LOAD_BUILD_CLASS [X]
|
||||
<72> [ ]
|
||||
<73> [ ]
|
||||
LOAD_ASSERTION_ERROR [X]
|
||||
RETURN_GENERATOR [X]
|
||||
<76> [ ]
|
||||
<77> [ ]
|
||||
<78> [ ]
|
||||
<79> [ ]
|
||||
<80> [ ]
|
||||
<81> [ ]
|
||||
LIST_TO_TUPLE [X]
|
||||
RETURN_VALUE [X]
|
||||
IMPORT_STAR [X]
|
||||
SETUP_ANNOTATIONS [X]
|
||||
YIELD_VALUE [X]
|
||||
ASYNC_GEN_WRAP [X]
|
||||
PREP_RERAISE_STAR [X]
|
||||
POP_EXCEPT [X]
|
||||
STORE_NAME [X]
|
||||
DELETE_NAME [X]
|
||||
UNPACK_SEQUENCE [X]
|
||||
FOR_ITER [X]
|
||||
UNPACK_EX [X]
|
||||
STORE_ATTR [X]
|
||||
DELETE_ATTR [X]
|
||||
STORE_GLOBAL [X]
|
||||
DELETE_GLOBAL [X]
|
||||
SWAP [X]
|
||||
LOAD_CONST [X]
|
||||
LOAD_NAME [X]
|
||||
BUILD_TUPLE [X]
|
||||
BUILD_LIST [X]
|
||||
BUILD_SET [X]
|
||||
BUILD_MAP [X]
|
||||
LOAD_ATTR [X]
|
||||
COMPARE_OP [X]
|
||||
IMPORT_NAME [X]
|
||||
IMPORT_FROM [X]
|
||||
JUMP_FORWARD [X]
|
||||
JUMP_IF_FALSE_OR_POP [X]
|
||||
JUMP_IF_TRUE_OR_POP [X]
|
||||
<113> [ ]
|
||||
POP_JUMP_FORWARD_IF_FALSE [X]
|
||||
POP_JUMP_FORWARD_IF_TRUE [X]
|
||||
LOAD_GLOBAL [X]
|
||||
IS_OP [X]
|
||||
CONTAINS_OP [X]
|
||||
RERAISE [X]
|
||||
COPY [X]
|
||||
<121> [ ]
|
||||
BINARY_OP [X]
|
||||
SEND [X]
|
||||
LOAD_FAST [X]
|
||||
STORE_FAST [X]
|
||||
DELETE_FAST [X]
|
||||
<127> [ ]
|
||||
POP_JUMP_FORWARD_IF_NOT_NONE [X]
|
||||
POP_JUMP_FORWARD_IF_NONE [X]
|
||||
RAISE_VARARGS [X]
|
||||
GET_AWAITABLE [X]
|
||||
MAKE_FUNCTION [X]
|
||||
BUILD_SLICE [X]
|
||||
JUMP_BACKWARD_NO_INTERRUPT [X]
|
||||
MAKE_CELL [X]
|
||||
LOAD_CLOSURE [X]
|
||||
LOAD_DEREF [X]
|
||||
STORE_DEREF [X]
|
||||
DELETE_DEREF [X]
|
||||
JUMP_BACKWARD [X]
|
||||
<141> [ ]
|
||||
CALL_FUNCTION_EX [X]
|
||||
<143> [ ]
|
||||
EXTENDED_ARG [X]
|
||||
LIST_APPEND [X]
|
||||
SET_ADD [X]
|
||||
MAP_ADD [X]
|
||||
LOAD_CLASSDEREF [X]
|
||||
COPY_FREE_VARS [X]
|
||||
<150> [ ]
|
||||
RESUME [X]
|
||||
MATCH_CLASS [X]
|
||||
<153> [ ]
|
||||
<154> [ ]
|
||||
FORMAT_VALUE [X]
|
||||
BUILD_CONST_KEY_MAP [X]
|
||||
BUILD_STRING [X]
|
||||
<158> [ ]
|
||||
<159> [ ]
|
||||
LOAD_METHOD [X]
|
||||
<161> [ ]
|
||||
LIST_EXTEND [X]
|
||||
SET_UPDATE [X]
|
||||
DICT_MERGE [X]
|
||||
DICT_UPDATE [X]
|
||||
PRECALL [X]
|
||||
<167> [ ]
|
||||
<168> [ ]
|
||||
<169> [ ]
|
||||
<170> [ ]
|
||||
CALL [X]
|
||||
KW_NAMES [X]
|
||||
POP_JUMP_BACKWARD_IF_NOT_NONE [X]
|
||||
POP_JUMP_BACKWARD_IF_NONE [X]
|
||||
POP_JUMP_BACKWARD_IF_FALSE [X]
|
||||
POP_JUMP_BACKWARD_IF_TRUE [X]
|
||||
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
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue