Author: Carl Friedrich Bolz <cfb...@gmx.de> Branch: Changeset: r87706:a9211eb5876b Date: 2016-10-11 15:07 +0200 http://bitbucket.org/pypy/pypy/changeset/a9211eb5876b/
Log: rename fields to be more explicit, add a helper method diff --git a/rpython/jit/metainterp/resume.py b/rpython/jit/metainterp/resume.py --- a/rpython/jit/metainterp/resume.py +++ b/rpython/jit/metainterp/resume.py @@ -167,13 +167,18 @@ self.liveboxes = {} self.current = [0] * size self._pos = 0 - self.n = 0 - self.v = 0 + self.num_boxes = 0 + self.num_virtuals = 0 - def append(self, item): + def append_short(self, item): self.current[self._pos] = item self._pos += 1 + def append_int(self, item): + short = rffi.cast(rffi.SHORT, item) + assert rffi.cast(lltype.Signed, short) == item + return self.append_short(short) + class ResumeDataLoopMemo(object): def __init__(self, metainterp_sd): @@ -227,8 +232,8 @@ def _number_boxes(self, iter, arr, optimizer, state): """ Number boxes from one snapshot """ - n = state.n - v = state.v + num_boxes = state.num_boxes + num_virtuals = state.num_virtuals liveboxes = state.liveboxes for item in arr: box = iter.get(rffi.cast(lltype.Signed, item)) @@ -247,15 +252,15 @@ info = optimizer.getrawptrinfo(box, create=False) is_virtual = (info is not None and info.is_virtual()) if is_virtual: - tagged = tag(v, TAGVIRTUAL) - v += 1 + tagged = tag(num_virtuals, TAGVIRTUAL) + num_virtuals += 1 else: - tagged = tag(n, TAGBOX) - n += 1 + tagged = tag(num_boxes, TAGBOX) + num_boxes += 1 liveboxes[box] = tagged - state.append(tagged) - state.n = n - state.v = v + state.append_short(tagged) + state.num_boxes = num_boxes + state.num_virtuals = num_virtuals def number(self, optimizer, position, trace): snapshot_iter = trace.get_snapshot_iter(position) @@ -263,24 +268,24 @@ arr = snapshot_iter.vable_array - state.append(rffi.cast(rffi.SHORT, len(arr))) + state.append_int(len(arr)) self._number_boxes(snapshot_iter, arr, optimizer, state) arr = snapshot_iter.vref_array n = len(arr) assert not (n & 1) - state.append(rffi.cast(rffi.SHORT, n >> 1)) + state.append_int(n >> 1) self._number_boxes(snapshot_iter, arr, optimizer, state) for snapshot in snapshot_iter.framestack: jitcode_index, pc = snapshot_iter.unpack_jitcode_pc(snapshot) - state.append(rffi.cast(rffi.SHORT, jitcode_index)) - state.append(rffi.cast(rffi.SHORT, pc)) + state.append_int(jitcode_index) + state.append_int(pc) self._number_boxes(snapshot_iter, snapshot.box_array, optimizer, state) numb = resumecode.create_numbering(state.current) - return numb, state.liveboxes, state.v + return numb, state.liveboxes, state.num_virtuals # caching for virtuals and boxes inside them @@ -421,14 +426,14 @@ resume_position = self.guard_op.rd_resume_position assert resume_position >= 0 # count stack depth - numb, liveboxes_from_env, v = self.memo.number(optimizer, + numb, liveboxes_from_env, num_virtuals = self.memo.number(optimizer, resume_position, self.optimizer.trace) self.liveboxes_from_env = liveboxes_from_env self.liveboxes = {} storage.rd_numb = numb # collect liveboxes and virtuals - n = len(liveboxes_from_env) - v + n = len(liveboxes_from_env) - num_virtuals liveboxes = [None] * n self.vfieldboxes = {} for box, tagged in liveboxes_from_env.iteritems(): @@ -459,7 +464,7 @@ assert info is not None and info.is_virtual() info.visitor_walk_recursive(fieldbox, self, optimizer) - self._number_virtuals(liveboxes, optimizer, v) + self._number_virtuals(liveboxes, optimizer, num_virtuals) self._add_pending_fields(optimizer, pending_setfields) storage.rd_consts = self.memo.consts _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit