Add support for more bytecodes.
This commit is contained in:
parent
8787af154e
commit
5ef00671e7
2 changed files with 13 additions and 5 deletions
|
|
@ -118,7 +118,7 @@ class BytecodeFlowBuilder (BasicBlockVisitor):
|
||||||
assert arg is None
|
assert arg is None
|
||||||
return self._op(i, op, loop_i + loop_arg + 3)
|
return self._op(i, op, loop_i + loop_arg + 3)
|
||||||
|
|
||||||
#op_BUILD_CLASS = _op
|
op_BUILD_CLASS = _op
|
||||||
op_BUILD_LIST = _op
|
op_BUILD_LIST = _op
|
||||||
op_BUILD_MAP = _op
|
op_BUILD_MAP = _op
|
||||||
op_BUILD_SLICE = _op
|
op_BUILD_SLICE = _op
|
||||||
|
|
@ -147,7 +147,15 @@ class BytecodeFlowBuilder (BasicBlockVisitor):
|
||||||
#op_EXTENDED_ARG = _op
|
#op_EXTENDED_ARG = _op
|
||||||
op_FOR_ITER = _op
|
op_FOR_ITER = _op
|
||||||
op_GET_ITER = _op
|
op_GET_ITER = _op
|
||||||
op_IMPORT_FROM = _op
|
|
||||||
|
def op_IMPORT_FROM (self, i, op, arg):
|
||||||
|
# References top of stack without popping, so we can't use the
|
||||||
|
# generic machinery.
|
||||||
|
opname = self.opmap[op][0]
|
||||||
|
ret_val = i, op, opname, arg, [self.stack[-1]]
|
||||||
|
self.stack.append(ret_val)
|
||||||
|
return ret_val
|
||||||
|
|
||||||
op_IMPORT_NAME = _op
|
op_IMPORT_NAME = _op
|
||||||
op_IMPORT_STAR = _op
|
op_IMPORT_STAR = _op
|
||||||
op_INPLACE_ADD = _op
|
op_INPLACE_ADD = _op
|
||||||
|
|
|
||||||
|
|
@ -31,9 +31,9 @@ OPCODE_MAP = {
|
||||||
'BINARY_TRUE_DIVIDE': (2, 1, None),
|
'BINARY_TRUE_DIVIDE': (2, 1, None),
|
||||||
'BINARY_XOR': (2, 1, None),
|
'BINARY_XOR': (2, 1, None),
|
||||||
'BREAK_LOOP': (0, None, 1),
|
'BREAK_LOOP': (0, None, 1),
|
||||||
'BUILD_CLASS': (None, None, None),
|
'BUILD_CLASS': (3, 1, None),
|
||||||
'BUILD_LIST': (-1, 1, None),
|
'BUILD_LIST': (-1, 1, None),
|
||||||
'BUILD_MAP': (None, None, None),
|
'BUILD_MAP': (-1, 1, None),
|
||||||
'BUILD_SET': (None, None, None),
|
'BUILD_SET': (None, None, None),
|
||||||
'BUILD_SLICE': (None, None, None),
|
'BUILD_SLICE': (None, None, None),
|
||||||
'BUILD_TUPLE': (-1, 1, None),
|
'BUILD_TUPLE': (-1, 1, None),
|
||||||
|
|
@ -62,7 +62,7 @@ OPCODE_MAP = {
|
||||||
'FOR_ITER': (1, 1, 1),
|
'FOR_ITER': (1, 1, 1),
|
||||||
'GET_ITER': (1, 1, None),
|
'GET_ITER': (1, 1, None),
|
||||||
'IMPORT_FROM': (None, None, None),
|
'IMPORT_FROM': (None, None, None),
|
||||||
'IMPORT_NAME': (None, None, None),
|
'IMPORT_NAME': (2, 1, None),
|
||||||
'IMPORT_STAR': (1, None, 1),
|
'IMPORT_STAR': (1, None, 1),
|
||||||
'INPLACE_ADD': (2, 1, None),
|
'INPLACE_ADD': (2, 1, None),
|
||||||
'INPLACE_AND': (2, 1, None),
|
'INPLACE_AND': (2, 1, None),
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue