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
|
||||
return self._op(i, op, loop_i + loop_arg + 3)
|
||||
|
||||
#op_BUILD_CLASS = _op
|
||||
op_BUILD_CLASS = _op
|
||||
op_BUILD_LIST = _op
|
||||
op_BUILD_MAP = _op
|
||||
op_BUILD_SLICE = _op
|
||||
|
|
@ -147,7 +147,15 @@ class BytecodeFlowBuilder (BasicBlockVisitor):
|
|||
#op_EXTENDED_ARG = _op
|
||||
op_FOR_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_STAR = _op
|
||||
op_INPLACE_ADD = _op
|
||||
|
|
|
|||
|
|
@ -31,9 +31,9 @@ OPCODE_MAP = {
|
|||
'BINARY_TRUE_DIVIDE': (2, 1, None),
|
||||
'BINARY_XOR': (2, 1, None),
|
||||
'BREAK_LOOP': (0, None, 1),
|
||||
'BUILD_CLASS': (None, None, None),
|
||||
'BUILD_CLASS': (3, 1, None),
|
||||
'BUILD_LIST': (-1, 1, None),
|
||||
'BUILD_MAP': (None, None, None),
|
||||
'BUILD_MAP': (-1, 1, None),
|
||||
'BUILD_SET': (None, None, None),
|
||||
'BUILD_SLICE': (None, None, None),
|
||||
'BUILD_TUPLE': (-1, 1, None),
|
||||
|
|
@ -62,7 +62,7 @@ OPCODE_MAP = {
|
|||
'FOR_ITER': (1, 1, 1),
|
||||
'GET_ITER': (1, 1, None),
|
||||
'IMPORT_FROM': (None, None, None),
|
||||
'IMPORT_NAME': (None, None, None),
|
||||
'IMPORT_NAME': (2, 1, None),
|
||||
'IMPORT_STAR': (1, None, 1),
|
||||
'INPLACE_ADD': (2, 1, None),
|
||||
'INPLACE_AND': (2, 1, None),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue