Author: Carl Friedrich Bolz <[email protected]>
Branch: small-unroll-improvements
Changeset: r70645:68bcb1950761
Date: 2014-04-15 15:28 +0200
http://bitbucket.org/pypy/pypy/changeset/68bcb1950761/
Log: extract virtual state construction into a method
diff --git a/rpython/jit/metainterp/optimizeopt/unroll.py
b/rpython/jit/metainterp/optimizeopt/unroll.py
--- a/rpython/jit/metainterp/optimizeopt/unroll.py
+++ b/rpython/jit/metainterp/optimizeopt/unroll.py
@@ -54,6 +54,10 @@
self.optimizer = UnrollableOptimizer(metainterp_sd, loop,
optimizations)
self.boxes_created_this_iteration = None
+ def get_virtual_state(self, args):
+ modifier = VirtualStateAdder(self.optimizer)
+ return modifier.get_virtual_state(args)
+
def fix_snapshot(self, jump_args, snapshot):
if snapshot is None:
return None
@@ -161,8 +165,7 @@
original_jump_args = targetop.getarglist()
jump_args = [self.getvalue(a).get_key_box() for a in
original_jump_args]
- modifier = VirtualStateAdder(self.optimizer)
- virtual_state = modifier.get_virtual_state(jump_args)
+ virtual_state = self.get_virtual_state(jump_args)
values = [self.getvalue(arg) for arg in jump_args]
inputargs = virtual_state.make_inputargs(values, self.optimizer)
@@ -215,8 +218,7 @@
if not exported_state:
# No state exported, construct one without virtuals
self.short = None
- modifier = VirtualStateAdder(self.optimizer)
- virtual_state = modifier.get_virtual_state(self.inputargs)
+ virtual_state = self.get_virtual_state(self.inputargs)
self.initial_virtual_state = virtual_state
return
@@ -342,8 +344,7 @@
# Verify that the virtual state at the end of the loop is one
# that is compatible with the virtual state at the start of the loop
- modifier = VirtualStateAdder(self.optimizer)
- final_virtual_state = modifier.get_virtual_state(original_jumpargs)
+ final_virtual_state = self.get_virtual_state(original_jumpargs)
#debug_start('jit-log-virtualstate')
#virtual_state.debug_print('Closed loop with ')
bad = {}
@@ -513,8 +514,7 @@
return True
args = jumpop.getarglist()
- modifier = VirtualStateAdder(self.optimizer)
- virtual_state = modifier.get_virtual_state(args)
+ virtual_state = self.get_virtual_state(args)
values = [self.getvalue(arg)
for arg in jumpop.getarglist()]
debug_start('jit-log-virtualstate')
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit