Preview of Python 3.3 support
This commit is contained in:
2
Makefile
2
Makefile
@@ -21,7 +21,7 @@ BYTES = \
|
||||
python_10 python_11 python_13 python_14 python_15 python_16 \
|
||||
python_20 python_21 python_22 python_23 python_24 \
|
||||
python_25 python_26 python_27 \
|
||||
python_30 python_31 python_32
|
||||
python_30 python_31 python_32 python_33
|
||||
|
||||
BYTE_OBJS = $(BYTES:%=out/%.o)
|
||||
BYTE_SRCS = $(BYTES:%=bytes/%.cpp)
|
||||
|
@@ -2,7 +2,7 @@ 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
|
||||
1.3 0x0A0D2E89 2.3 0x0A0DF23B 3.3 0x0A0D0C94
|
||||
1.4 0x0A0D1704 2.4 0x0A0DF26D
|
||||
1.5 0x0A0D4E99 2.5 0x0A0DF2B3
|
||||
1.6 0x0A0DC4FC 2.6 0x0A0DF2D1
|
||||
@@ -346,170 +346,170 @@ MAP_ADD [ ] [ ] [ ] [ ] [ ] [ ] [ ]
|
||||
.
|
||||
|
||||
|
||||
3.0 3.1 3.2
|
||||
STOP_CODE [X] [X] [X]
|
||||
POP_TOP [X] [X] [X]
|
||||
ROT_TWO [X] [X] [X]
|
||||
ROT_THREE [X] [X] [X]
|
||||
DUP_TOP [X] [X] [X]
|
||||
3.0 3.1 3.2 3.3
|
||||
STOP_CODE [X] [X] [X] [ ]
|
||||
POP_TOP [X] [X] [X] [X]
|
||||
ROT_TWO [X] [X] [X] [X]
|
||||
ROT_THREE [X] [X] [X] [X]
|
||||
DUP_TOP [X] [X] [X] [X]
|
||||
ROT_FOUR ! [X] [X]
|
||||
DUP_TOP_TWO ! [X]
|
||||
<6> [ ] [ ] [ ]
|
||||
<7> [ ] [ ] [ ]
|
||||
<8> [ ] [ ] [ ]
|
||||
NOP [X] [X] [X]
|
||||
UNARY_POSITIVE [X] [X] [X]
|
||||
UNARY_NEGATIVE [X] [X] [X]
|
||||
UNARY_NOT [X] [X] [X]
|
||||
<13> [ ] [ ] [ ]
|
||||
<14> [ ] [ ] [ ]
|
||||
UNARY_INVERT [X] [X] [X]
|
||||
<16> [ ] [ ] [ ]
|
||||
SET_ADD [X] [ ] [ ]
|
||||
LIST_APPEND [X] [ ] [ ]
|
||||
BINARY_POWER [X] [X] [X]
|
||||
BINARY_MULTIPLY [X] [X] [X]
|
||||
<21> [ ] [ ] [ ]
|
||||
BINARY_MODULO [X] [X] [X]
|
||||
BINARY_ADD [X] [X] [X]
|
||||
BINARY_SUBTRACT [X] [X] [X]
|
||||
BINARY_SUBSCR [X] [X] [X]
|
||||
BINARY_FLOOR_DIVIDE [X] [X] [X]
|
||||
BINARY_TRUE_DIVIDE [X] [X] [X]
|
||||
INPLACE_FLOOR_DIVIDE [X] [X] [X]
|
||||
INPLACE_TRUE_DIVIDE [X] [X] [X]
|
||||
<30> [ ] [ ] [ ]
|
||||
<31> [ ] [ ] [ ]
|
||||
<32> [ ] [ ] [ ]
|
||||
<33> [ ] [ ] [ ]
|
||||
<34> [ ] [ ] [ ]
|
||||
<35> [ ] [ ] [ ]
|
||||
<36> [ ] [ ] [ ]
|
||||
<37> [ ] [ ] [ ]
|
||||
<38> [ ] [ ] [ ]
|
||||
<39> [ ] [ ] [ ]
|
||||
<40> [ ] [ ] [ ]
|
||||
<41> [ ] [ ] [ ]
|
||||
<42> [ ] [ ] [ ]
|
||||
<43> [ ] [ ] [ ]
|
||||
<44> [ ] [ ] [ ]
|
||||
<45> [ ] [ ] [ ]
|
||||
<46> [ ] [ ] [ ]
|
||||
<47> [ ] [ ] [ ]
|
||||
<48> [ ] [ ] [ ]
|
||||
<49> [ ] [ ] [ ]
|
||||
<50> [ ] [ ] [ ]
|
||||
<51> [ ] [ ] [ ]
|
||||
<52> [ ] [ ] [ ]
|
||||
<53> [ ] [ ] [ ]
|
||||
STORE_MAP [X] [X] [X]
|
||||
INPLACE_ADD [X] [X] [X]
|
||||
INPLACE_SUBTRACT [X] [X] [X]
|
||||
INPLACE_MULTIPLY [X] [X] [X]
|
||||
<58> [ ] [ ] [ ]
|
||||
INPLACE_MODULO [X] [X] [X]
|
||||
STORE_SUBSCR [X] [X] [X]
|
||||
DELETE_SUBSCR [X] [X] [X]
|
||||
BINARY_LSHIFT [X] [X] [X]
|
||||
BINARY_RSHIFT [X] [X] [X]
|
||||
BINARY_AND [X] [X] [X]
|
||||
BINARY_XOR [X] [X] [X]
|
||||
BINARY_OR [X] [X] [X]
|
||||
INPLACE_POWER [X] [X] [X]
|
||||
GET_ITER [X] [X] [X]
|
||||
STORE_LOCALS [X] [X] [X]
|
||||
PRINT_EXPR [X] [X] [X]
|
||||
LOAD_BUILD_CLASS [X] [X] [X]
|
||||
<72> [ ] [ ] [ ]
|
||||
<73> [ ] [ ] [ ]
|
||||
<74> [ ] [ ] [ ]
|
||||
INPLACE_LSHIFT [X] [X] [X]
|
||||
INPLACE_RSHIFT [X] [X] [X]
|
||||
INPLACE_AND [X] [X] [X]
|
||||
INPLACE_XOR [X] [X] [X]
|
||||
INPLACE_OR [X] [X] [X]
|
||||
BREAK_LOOP [X] [X] [X]
|
||||
WITH_CLEANUP [X] [X] [X]
|
||||
<82> [ ] [ ] [ ]
|
||||
RETURN_VALUE [X] [X] [X]
|
||||
IMPORT_STAR [X] [X] [X]
|
||||
<85> [ ] [ ] [ ]
|
||||
YIELD_VALUE [X] [X] [X]
|
||||
POP_BLOCK [X] [X] [X]
|
||||
END_FINALLY [X] [X] [X]
|
||||
POP_EXCEPT [X] [X] [X]
|
||||
STORE_NAME [X] [X] [X]
|
||||
DELETE_NAME [X] [X] [X]
|
||||
UNPACK_SEQUENCE [X] [X] [X]
|
||||
FOR_ITER [X] [X] [X]
|
||||
UNPACK_EX [X] [X] [X]
|
||||
STORE_ATTR [X] [X] [X]
|
||||
DELETE_ATTR [X] [X] [X]
|
||||
STORE_GLOBAL [X] [X] [X]
|
||||
DELETE_GLOBAL [X] [X] [X]
|
||||
DUP_TOPX [X] [X] [ ]
|
||||
LOAD_CONST [X] [X] [X]
|
||||
LOAD_NAME [X] [X] [X]
|
||||
BUILD_TUPLE [X] [X] [X]
|
||||
BUILD_LIST [X] [X] [X]
|
||||
BUILD_SET [X] [X] [X]
|
||||
BUILD_MAP [X] [X] [X]
|
||||
LOAD_ATTR [X] [X] [X]
|
||||
COMPARE_OP [X] [X] [X]
|
||||
IMPORT_NAME [X] [X] [X]
|
||||
IMPORT_FROM [X] [X] [X]
|
||||
JUMP_FORWARD [X] [X] [X]
|
||||
JUMP_IF_FALSE (_OR_POP) [X] [X] [+]
|
||||
JUMP_IF_TRUE (_OR_POP) [X] [X] [+]
|
||||
JUMP_ABSOLUTE [X] [X] [X]
|
||||
POP_JUMP_IF_FALSE [ ] [X] [X]
|
||||
POP_JUMP_IF_TRUE [ ] [X] [X]
|
||||
LOAD_GLOBAL [X] [X] [X]
|
||||
<117> [ ] [ ] [ ]
|
||||
<118> [ ] [ ] [ ]
|
||||
CONTINUE_LOOP [X] [X] [X]
|
||||
SETUP_LOOP [X] [X] [X]
|
||||
SETUP_EXCEPT [X] [X] [X]
|
||||
SETUP_FINALLY [X] [X] [X]
|
||||
<123> [ ] [ ] [ ]
|
||||
LOAD_FAST [X] [X] [X]
|
||||
STORE_FAST [X] [X] [X]
|
||||
DELETE_FAST [X] [X] [X]
|
||||
<127> [ ] [ ] [ ]
|
||||
<128> [ ] [ ] [ ]
|
||||
<129> [ ] [ ] [ ]
|
||||
RAISE_VARARGS [X] [X] [X]
|
||||
CALL_FUNCTION [X] [X] [X]
|
||||
MAKE_FUNCTION [X] [X] [X]
|
||||
BUILD_SLICE [X] [X] [X]
|
||||
MAKE_CLOSURE [X] [X] [X]
|
||||
LOAD_CLOSURE [X] [X] [X]
|
||||
LOAD_DEREF [X] [X] [X]
|
||||
STORE_DEREF [X] [X] [X]
|
||||
DELETE_DEREF [ ] [ ] [X]
|
||||
<139> [ ] [ ] [ ]
|
||||
CALL_FUNCTION_VAR [X] [X] [X]
|
||||
CALL_FUNCTION_KW [X] [X] [X]
|
||||
CALL_FUNCTION_VAR_KW [X] [X] [X]
|
||||
DUP_TOP_TWO ! [X] [X]
|
||||
<6> [ ] [ ] [ ] [ ]
|
||||
<7> [ ] [ ] [ ] [ ]
|
||||
<8> [ ] [ ] [ ] [ ]
|
||||
NOP [X] [X] [X] [X]
|
||||
UNARY_POSITIVE [X] [X] [X] [X]
|
||||
UNARY_NEGATIVE [X] [X] [X] [X]
|
||||
UNARY_NOT [X] [X] [X] [X]
|
||||
<13> [ ] [ ] [ ] [ ]
|
||||
<14> [ ] [ ] [ ] [ ]
|
||||
UNARY_INVERT [X] [X] [X] [X]
|
||||
<16> [ ] [ ] [ ] [ ]
|
||||
SET_ADD [X] [ ] [ ] [ ]
|
||||
LIST_APPEND [X] [ ] [ ] [ ]
|
||||
BINARY_POWER [X] [X] [X] [X]
|
||||
BINARY_MULTIPLY [X] [X] [X] [X]
|
||||
<21> [ ] [ ] [ ] [ ]
|
||||
BINARY_MODULO [X] [X] [X] [X]
|
||||
BINARY_ADD [X] [X] [X] [X]
|
||||
BINARY_SUBTRACT [X] [X] [X] [X]
|
||||
BINARY_SUBSCR [X] [X] [X] [X]
|
||||
BINARY_FLOOR_DIVIDE [X] [X] [X] [X]
|
||||
BINARY_TRUE_DIVIDE [X] [X] [X] [X]
|
||||
INPLACE_FLOOR_DIVIDE [X] [X] [X] [X]
|
||||
INPLACE_TRUE_DIVIDE [X] [X] [X] [X]
|
||||
<30> [ ] [ ] [ ] [ ]
|
||||
<31> [ ] [ ] [ ] [ ]
|
||||
<32> [ ] [ ] [ ] [ ]
|
||||
<33> [ ] [ ] [ ] [ ]
|
||||
<34> [ ] [ ] [ ] [ ]
|
||||
<35> [ ] [ ] [ ] [ ]
|
||||
<36> [ ] [ ] [ ] [ ]
|
||||
<37> [ ] [ ] [ ] [ ]
|
||||
<38> [ ] [ ] [ ] [ ]
|
||||
<39> [ ] [ ] [ ] [ ]
|
||||
<40> [ ] [ ] [ ] [ ]
|
||||
<41> [ ] [ ] [ ] [ ]
|
||||
<42> [ ] [ ] [ ] [ ]
|
||||
<43> [ ] [ ] [ ] [ ]
|
||||
<44> [ ] [ ] [ ] [ ]
|
||||
<45> [ ] [ ] [ ] [ ]
|
||||
<46> [ ] [ ] [ ] [ ]
|
||||
<47> [ ] [ ] [ ] [ ]
|
||||
<48> [ ] [ ] [ ] [ ]
|
||||
<49> [ ] [ ] [ ] [ ]
|
||||
<50> [ ] [ ] [ ] [ ]
|
||||
<51> [ ] [ ] [ ] [ ]
|
||||
<52> [ ] [ ] [ ] [ ]
|
||||
<53> [ ] [ ] [ ] [ ]
|
||||
STORE_MAP [X] [X] [X] [X]
|
||||
INPLACE_ADD [X] [X] [X] [X]
|
||||
INPLACE_SUBTRACT [X] [X] [X] [X]
|
||||
INPLACE_MULTIPLY [X] [X] [X] [X]
|
||||
<58> [ ] [ ] [ ] [ ]
|
||||
INPLACE_MODULO [X] [X] [X] [X]
|
||||
STORE_SUBSCR [X] [X] [X] [X]
|
||||
DELETE_SUBSCR [X] [X] [X] [X]
|
||||
BINARY_LSHIFT [X] [X] [X] [X]
|
||||
BINARY_RSHIFT [X] [X] [X] [X]
|
||||
BINARY_AND [X] [X] [X] [X]
|
||||
BINARY_XOR [X] [X] [X] [X]
|
||||
BINARY_OR [X] [X] [X] [X]
|
||||
INPLACE_POWER [X] [X] [X] [X]
|
||||
GET_ITER [X] [X] [X] [X]
|
||||
STORE_LOCALS [X] [X] [X] [X]
|
||||
PRINT_EXPR [X] [X] [X] [X]
|
||||
LOAD_BUILD_CLASS [X] [X] [X] [X]
|
||||
YIELD_FROM [ ] [ ] [ ] [X]
|
||||
<73> [ ] [ ] [ ] [ ]
|
||||
<74> [ ] [ ] [ ] [ ]
|
||||
INPLACE_LSHIFT [X] [X] [X] [X]
|
||||
INPLACE_RSHIFT [X] [X] [X] [X]
|
||||
INPLACE_AND [X] [X] [X] [X]
|
||||
INPLACE_XOR [X] [X] [X] [X]
|
||||
INPLACE_OR [X] [X] [X] [X]
|
||||
BREAK_LOOP [X] [X] [X] [X]
|
||||
WITH_CLEANUP [X] [X] [X] [X]
|
||||
<82> [ ] [ ] [ ] [ ]
|
||||
RETURN_VALUE [X] [X] [X] [X]
|
||||
IMPORT_STAR [X] [X] [X] [X]
|
||||
<85> [ ] [ ] [ ] [ ]
|
||||
YIELD_VALUE [X] [X] [X] [X]
|
||||
POP_BLOCK [X] [X] [X] [X]
|
||||
END_FINALLY [X] [X] [X] [X]
|
||||
POP_EXCEPT [X] [X] [X] [X]
|
||||
STORE_NAME [X] [X] [X] [X]
|
||||
DELETE_NAME [X] [X] [X] [X]
|
||||
UNPACK_SEQUENCE [X] [X] [X] [X]
|
||||
FOR_ITER [X] [X] [X] [X]
|
||||
UNPACK_EX [X] [X] [X] [X]
|
||||
STORE_ATTR [X] [X] [X] [X]
|
||||
DELETE_ATTR [X] [X] [X] [X]
|
||||
STORE_GLOBAL [X] [X] [X] [X]
|
||||
DELETE_GLOBAL [X] [X] [X] [X]
|
||||
DUP_TOPX [X] [X] [ ] [ ]
|
||||
LOAD_CONST [X] [X] [X] [X]
|
||||
LOAD_NAME [X] [X] [X] [X]
|
||||
BUILD_TUPLE [X] [X] [X] [X]
|
||||
BUILD_LIST [X] [X] [X] [X]
|
||||
BUILD_SET [X] [X] [X] [X]
|
||||
BUILD_MAP [X] [X] [X] [X]
|
||||
LOAD_ATTR [X] [X] [X] [X]
|
||||
COMPARE_OP [X] [X] [X] [X]
|
||||
IMPORT_NAME [X] [X] [X] [X]
|
||||
IMPORT_FROM [X] [X] [X] [X]
|
||||
JUMP_FORWARD [X] [X] [X] [X]
|
||||
JUMP_IF_FALSE (_OR_POP) [X] [X] [+] [+]
|
||||
JUMP_IF_TRUE (_OR_POP) [X] [X] [+] [+]
|
||||
JUMP_ABSOLUTE [X] [X] [X] [X]
|
||||
POP_JUMP_IF_FALSE [ ] [X] [X] [X]
|
||||
POP_JUMP_IF_TRUE [ ] [X] [X] [X]
|
||||
LOAD_GLOBAL [X] [X] [X] [X]
|
||||
<117> [ ] [ ] [ ] [ ]
|
||||
<118> [ ] [ ] [ ] [ ]
|
||||
CONTINUE_LOOP [X] [X] [X] [X]
|
||||
SETUP_LOOP [X] [X] [X] [X]
|
||||
SETUP_EXCEPT [X] [X] [X] [X]
|
||||
SETUP_FINALLY [X] [X] [X] [X]
|
||||
<123> [ ] [ ] [ ] [ ]
|
||||
LOAD_FAST [X] [X] [X] [X]
|
||||
STORE_FAST [X] [X] [X] [X]
|
||||
DELETE_FAST [X] [X] [X] [X]
|
||||
<127> [ ] [ ] [ ] [ ]
|
||||
<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] [X]
|
||||
MAKE_CLOSURE [X] [X] [X] [X]
|
||||
LOAD_CLOSURE [X] [X] [X] [X]
|
||||
LOAD_DEREF [X] [X] [X] [X]
|
||||
STORE_DEREF [X] [X] [X] [X]
|
||||
DELETE_DEREF [ ] [ ] [X] [X]
|
||||
<139> [ ] [ ] [ ] [ ]
|
||||
CALL_FUNCTION_VAR [X] [X] [X] [X]
|
||||
CALL_FUNCTION_KW [X] [X] [X] [X]
|
||||
CALL_FUNCTION_VAR_KW [X] [X] [X] [X]
|
||||
EXTENDED_ARG ! [X] [X]
|
||||
SETUP_WITH ! [X]
|
||||
SETUP_WITH ! [X] [X]
|
||||
<144> ! [ ] [ ]
|
||||
EXTENDED_ARG ! [X]
|
||||
LIST_APPEND [ ] [X] [X]
|
||||
SET_ADD [ ] [X] [X]
|
||||
MAP_ADD [ ] [X] [X]
|
||||
<148> [ ] [ ] [ ]
|
||||
<149> [ ] [ ] [ ]
|
||||
<150> [ ] [ ] [ ]
|
||||
<151> [ ] [ ] [ ]
|
||||
<152> [ ] [ ] [ ]
|
||||
<153> [ ] [ ] [ ]
|
||||
<154> [ ] [ ] [ ]
|
||||
<155> [ ] [ ] [ ]
|
||||
<156> [ ] [ ] [ ]
|
||||
<157> [ ] [ ] [ ]
|
||||
<158> [ ] [ ] [ ]
|
||||
<159> [ ] [ ] [ ]
|
||||
EXTENDED_ARG ! [X] [X]
|
||||
LIST_APPEND [ ] [X] [X] [X]
|
||||
SET_ADD [ ] [X] [X] [X]
|
||||
MAP_ADD [ ] [X] [X] [X]
|
||||
<148> [ ] [ ] [ ] [ ]
|
||||
<149> [ ] [ ] [ ] [ ]
|
||||
<150> [ ] [ ] [ ] [ ]
|
||||
<151> [ ] [ ] [ ] [ ]
|
||||
<152> [ ] [ ] [ ] [ ]
|
||||
<153> [ ] [ ] [ ] [ ]
|
||||
<154> [ ] [ ] [ ] [ ]
|
||||
<155> [ ] [ ] [ ] [ ]
|
||||
<156> [ ] [ ] [ ] [ ]
|
||||
<157> [ ] [ ] [ ] [ ]
|
||||
<158> [ ] [ ] [ ] [ ]
|
||||
<159> [ ] [ ] [ ] [ ]
|
||||
.
|
||||
.
|
||||
.
|
||||
@@ -560,29 +560,29 @@ TYPE_SET '<' '<'
|
||||
TYPE_FROZENSET '>' '>' '>'
|
||||
|
||||
|
||||
3.0 3.1 3.2
|
||||
TYPE_NULL '0' '0' '0'
|
||||
TYPE_NONE 'N' 'N' 'N'
|
||||
TYPE_FALSE 'F' 'F' 'F'
|
||||
TYPE_TRUE 'T' 'T' 'T'
|
||||
TYPE_STOPITER 'S' 'S' 'S'
|
||||
TYPE_ELLIPSIS '.' '.' '.'
|
||||
TYPE_INT 'i' 'i' 'i'
|
||||
TYPE_INT64 'I' 'I' 'I'
|
||||
TYPE_FLOAT 'f' 'f' 'f'
|
||||
TYPE_BINARY_FLOAT 'g' 'g' 'g'
|
||||
TYPE_COMPLEX 'x' 'x' 'x'
|
||||
TYPE_BINARY_COMPLEX 'y' 'y' 'y'
|
||||
TYPE_LONG 'l' 'l' 'l'
|
||||
TYPE_STRING 's' 's' 's'
|
||||
TYPE_TUPLE '(' '(' '('
|
||||
TYPE_LIST '[' '[' '['
|
||||
TYPE_DICT '{' '{' '{'
|
||||
TYPE_CODE 'c' 'c' 'c'
|
||||
TYPE_UNICODE 'u' 'u' 'u'
|
||||
TYPE_UNKNOWN '?' '?' '?'
|
||||
TYPE_SET '<' '<' '<'
|
||||
TYPE_FROZENSET '>' '>' '>'
|
||||
3.0 3.1 3.2 3.3
|
||||
TYPE_NULL '0' '0' '0' '0'
|
||||
TYPE_NONE 'N' 'N' 'N' 'N'
|
||||
TYPE_FALSE 'F' 'F' 'F' 'F'
|
||||
TYPE_TRUE 'T' 'T' 'T' 'T'
|
||||
TYPE_STOPITER 'S' 'S' 'S' 'S'
|
||||
TYPE_ELLIPSIS '.' '.' '.' '.'
|
||||
TYPE_INT 'i' 'i' 'i' 'i'
|
||||
TYPE_INT64 'I' 'I' 'I' 'I'
|
||||
TYPE_FLOAT 'f' 'f' 'f' 'f'
|
||||
TYPE_BINARY_FLOAT 'g' 'g' 'g' 'g'
|
||||
TYPE_COMPLEX 'x' 'x' 'x' 'x'
|
||||
TYPE_BINARY_COMPLEX 'y' 'y' 'y' 'y'
|
||||
TYPE_LONG 'l' 'l' 'l' 'l'
|
||||
TYPE_STRING 's' 's' 's' 's'
|
||||
TYPE_TUPLE '(' '(' '(' '('
|
||||
TYPE_LIST '[' '[' '[' '['
|
||||
TYPE_DICT '{' '{' '{' '{'
|
||||
TYPE_CODE 'c' 'c' 'c' 'c'
|
||||
TYPE_UNICODE 'u' 'u' 'u' 'u'
|
||||
TYPE_UNKNOWN '?' '?' '?' '?'
|
||||
TYPE_SET '<' '<' '<' '<'
|
||||
TYPE_FROZENSET '>' '>' '>' '>'
|
||||
|
||||
|
||||
[TYPE_CODE] 1.0 1.3 1.5 2.1 2.3 3.0
|
||||
|
@@ -26,6 +26,7 @@ DECLARE_PYTHON(2, 7)
|
||||
DECLARE_PYTHON(3, 0)
|
||||
DECLARE_PYTHON(3, 1)
|
||||
DECLARE_PYTHON(3, 2)
|
||||
DECLARE_PYTHON(3, 3)
|
||||
|
||||
const char* Pyc::OpcodeName(int opcode)
|
||||
{
|
||||
@@ -48,7 +49,7 @@ const char* Pyc::OpcodeName(int opcode)
|
||||
"GET_ITER", "PRINT_ITEM_TO", "PRINT_NEWLINE_TO", "INPLACE_LSHIFT",
|
||||
"INPLACE_RSHIFT", "INPLACE_AND", "INPLACE_XOR", "INPLACE_OR",
|
||||
"WITH_CLEANUP", "IMPORT_STAR", "YIELD_VALUE", "LOAD_BUILD_CLASS",
|
||||
"STORE_LOCALS", "POP_EXCEPT", "SET_ADD",
|
||||
"STORE_LOCALS", "POP_EXCEPT", "SET_ADD", "YIELD_FROM",
|
||||
|
||||
"STORE_NAME", "DELETE_NAME", "UNPACK_TUPLE", "UNPACK_LIST", "UNPACK_ARG",
|
||||
"STORE_ATTR", "DELETE_ATTR", "STORE_GLOBAL", "DELETE_GLOBAL",
|
||||
@@ -108,6 +109,7 @@ int Pyc::ByteToOpcode(int maj, int min, int opcode)
|
||||
case 0: return python_30_map(opcode);
|
||||
case 1: return python_31_map(opcode);
|
||||
case 2: return python_32_map(opcode);
|
||||
case 3: return python_33_map(opcode);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
@@ -23,7 +23,7 @@ enum Opcode {
|
||||
GET_ITER, PRINT_ITEM_TO, PRINT_NEWLINE_TO, INPLACE_LSHIFT,
|
||||
INPLACE_RSHIFT, INPLACE_AND, INPLACE_XOR, INPLACE_OR, WITH_CLEANUP,
|
||||
IMPORT_STAR, YIELD_VALUE, LOAD_BUILD_CLASS, STORE_LOCALS,
|
||||
POP_EXCEPT, SET_ADD,
|
||||
POP_EXCEPT, SET_ADD, YIELD_FROM,
|
||||
|
||||
/* Has parameter word */
|
||||
PYC_HAVE_ARG,
|
||||
|
@@ -17,7 +17,7 @@
|
||||
|
||||
maplist = [ 10, 11, 13, 14, 15, 16,
|
||||
20, 21, 22, 23, 24, 25, 26, 27,
|
||||
30, 31, 32 ]
|
||||
30, 31, 32, 33 ]
|
||||
|
||||
for mapver in maplist:
|
||||
infile = open('python_%d.map' % mapver, 'rt')
|
||||
|
101
bytes/python_33.map
Normal file
101
bytes/python_33.map
Normal file
@@ -0,0 +1,101 @@
|
||||
1 POP_TOP
|
||||
2 ROT_TWO
|
||||
3 ROT_THREE
|
||||
4 DUP_TOP
|
||||
5 DUP_TOP_TWO
|
||||
9 NOP
|
||||
10 UNARY_POSITIVE
|
||||
11 UNARY_NEGATIVE
|
||||
12 UNARY_NOT
|
||||
15 UNARY_INVERT
|
||||
19 BINARY_POWER
|
||||
20 BINARY_MULTIPLY
|
||||
22 BINARY_MODULO
|
||||
23 BINARY_ADD
|
||||
24 BINARY_SUBTRACT
|
||||
25 BINARY_SUBSCR
|
||||
26 BINARY_FLOOR_DIVIDE
|
||||
27 BINARY_TRUE_DIVIDE
|
||||
28 INPLACE_FLOOR_DIVIDE
|
||||
29 INPLACE_TRUE_DIVIDE
|
||||
54 STORE_MAP
|
||||
55 INPLACE_ADD
|
||||
56 INPLACE_SUBTRACT
|
||||
57 INPLACE_MULTIPLY
|
||||
59 INPLACE_MODULO
|
||||
60 STORE_SUBSCR
|
||||
61 DELETE_SUBSCR
|
||||
62 BINARY_LSHIFT
|
||||
63 BINARY_RSHIFT
|
||||
64 BINARY_AND
|
||||
65 BINARY_XOR
|
||||
66 BINARY_OR
|
||||
67 INPLACE_POWER
|
||||
68 GET_ITER
|
||||
69 STORE_LOCALS
|
||||
70 PRINT_EXPR
|
||||
71 LOAD_BUILD_CLASS
|
||||
72 YIELD_FROM
|
||||
75 INPLACE_LSHIFT
|
||||
76 INPLACE_RSHIFT
|
||||
77 INPLACE_AND
|
||||
78 INPLACE_XOR
|
||||
79 INPLACE_OR
|
||||
80 BREAK_LOOP
|
||||
81 WITH_CLEANUP
|
||||
83 RETURN_VALUE
|
||||
84 IMPORT_STAR
|
||||
86 YIELD_VALUE
|
||||
87 POP_BLOCK
|
||||
88 END_FINALLY
|
||||
89 POP_EXCEPT
|
||||
90 STORE_NAME_A
|
||||
91 DELETE_NAME_A
|
||||
92 UNPACK_SEQUENCE_A
|
||||
93 FOR_ITER_A
|
||||
94 UNPACK_EX_A
|
||||
95 STORE_ATTR_A
|
||||
96 DELETE_ATTR_A
|
||||
97 STORE_GLOBAL_A
|
||||
98 DELETE_GLOBAL_A
|
||||
100 LOAD_CONST_A
|
||||
101 LOAD_NAME_A
|
||||
102 BUILD_TUPLE_A
|
||||
103 BUILD_LIST_A
|
||||
104 BUILD_SET_A
|
||||
105 BUILD_MAP_A
|
||||
106 LOAD_ATTR_A
|
||||
107 COMPARE_OP_A
|
||||
108 IMPORT_NAME_A
|
||||
109 IMPORT_FROM_A
|
||||
110 JUMP_FORWARD_A
|
||||
111 JUMP_IF_FALSE_OR_POP_A
|
||||
112 JUMP_IF_TRUE_OR_POP_A
|
||||
113 JUMP_ABSOLUTE_A
|
||||
114 POP_JUMP_IF_FALSE_A
|
||||
115 POP_JUMP_IF_TRUE_A
|
||||
116 LOAD_GLOBAL_A
|
||||
119 CONTINUE_LOOP_A
|
||||
120 SETUP_LOOP_A
|
||||
121 SETUP_EXCEPT_A
|
||||
122 SETUP_FINALLY_A
|
||||
124 LOAD_FAST_A
|
||||
125 STORE_FAST_A
|
||||
126 DELETE_FAST_A
|
||||
130 RAISE_VARARGS_A
|
||||
131 CALL_FUNCTION_A
|
||||
132 MAKE_FUNCTION_A
|
||||
133 BUILD_SLICE_A
|
||||
134 MAKE_CLOSURE_A
|
||||
135 LOAD_CLOSURE_A
|
||||
136 LOAD_DEREF_A
|
||||
137 STORE_DEREF_A
|
||||
138 DELETE_DEREF_A
|
||||
140 CALL_FUNCTION_VAR_A
|
||||
141 CALL_FUNCTION_KW_A
|
||||
142 CALL_FUNCTION_VAR_KW_A
|
||||
143 SETUP_WITH_A
|
||||
144 EXTENDED_ARG_A
|
||||
145 LIST_APPEND_A
|
||||
146 SET_ADD_A
|
||||
147 MAP_ADD_A
|
@@ -116,6 +116,12 @@ void PycModule::setVersion(unsigned int magic)
|
||||
m_unicode = true;
|
||||
break;
|
||||
|
||||
case MAGIC_3_3:
|
||||
m_maj = 3;
|
||||
m_min = 3;
|
||||
m_unicode = true;
|
||||
break;
|
||||
|
||||
/* Bad Magic detected */
|
||||
default:
|
||||
m_maj = -1;
|
||||
@@ -137,6 +143,9 @@ void PycModule::loadFromFile(const char* filename)
|
||||
}
|
||||
in.get32(); // Timestamp -- who cares?
|
||||
|
||||
if (verCompare(3, 3) >= 0)
|
||||
in.get32(); // Size parameter added in Python 3.3
|
||||
|
||||
m_code = LoadObject(&in, this).cast<PycCode>();
|
||||
}
|
||||
|
||||
|
@@ -24,6 +24,7 @@ enum PycMagic {
|
||||
MAGIC_3_0 = 0x0A0D0C3A,
|
||||
MAGIC_3_1 = 0x0A0D0C4E,
|
||||
MAGIC_3_2 = 0x0A0D0C6C,
|
||||
MAGIC_3_3 = 0x0A0D0C94,
|
||||
};
|
||||
|
||||
#define PYC_VERSION(maj, min) MAGIC_##maj##_##min
|
||||
@@ -37,6 +38,14 @@ public:
|
||||
|
||||
unsigned int majorVer() const { return m_maj; }
|
||||
unsigned int minorVer() const { return m_min; }
|
||||
|
||||
int verCompare(int maj, int min) const
|
||||
{
|
||||
if (m_maj == maj)
|
||||
return m_min - min;
|
||||
return m_maj - maj;
|
||||
}
|
||||
|
||||
bool isUnicode() const { return m_unicode; }
|
||||
|
||||
PycRef<PycCode> code() const { return m_code; }
|
||||
|
@@ -64,7 +64,7 @@ PycRef<PycObject> CreateObject(int type)
|
||||
return new PycSet(PycObject::TYPE_FROZENSET);
|
||||
default:
|
||||
fprintf(stderr, "CreateObject: Got unsupported type 0x%X\n", type);
|
||||
return (PycObject*)0;
|
||||
return Pyc_NULL;
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user