Author: Maciej Fijalkowski <fij...@gmail.com> Branch: backend-vector-ops Changeset: r52015:51f070072eca Date: 2012-02-01 14:56 +0200 http://bitbucket.org/pypy/pypy/changeset/51f070072eca/
Log: following armin's suggestion remove the VECTOR type diff --git a/pypy/jit/backend/x86/regalloc.py b/pypy/jit/backend/x86/regalloc.py --- a/pypy/jit/backend/x86/regalloc.py +++ b/pypy/jit/backend/x86/regalloc.py @@ -5,7 +5,7 @@ import os from pypy.jit.metainterp.history import (Box, Const, ConstInt, ConstPtr, ResOperation, BoxPtr, ConstFloat, - BoxFloat, INT, REF, FLOAT, VECTOR, + BoxFloat, INT, REF, FLOAT, TargetToken, JitCellToken) from pypy.jit.backend.x86.regloc import * from pypy.rpython.lltypesystem import lltype, rffi, rstr @@ -87,7 +87,7 @@ class X86XMMRegisterManager(RegisterManager): - box_types = [FLOAT, VECTOR] + box_types = [FLOAT] all_regs = [xmm0, xmm1, xmm2, xmm3, xmm4, xmm5, xmm6, xmm7] # we never need lower byte I hope save_around_call_regs = all_regs @@ -256,7 +256,7 @@ return pass_on_stack def possibly_free_var(self, var): - if var.type in self.xrm.box_types: + if var.type == FLOAT: self.xrm.possibly_free_var(var) else: self.rm.possibly_free_var(var) @@ -274,7 +274,7 @@ def make_sure_var_in_reg(self, var, forbidden_vars=[], selected_reg=None, need_lower_byte=False): - if var.type in self.xrm.box_types: + if var.type == FLOAT: if isinstance(var, ConstFloat): return FloatImmedLoc(var.getfloatstorage()) return self.xrm.make_sure_var_in_reg(var, forbidden_vars, @@ -285,7 +285,7 @@ def force_allocate_reg(self, var, forbidden_vars=[], selected_reg=None, need_lower_byte=False): - if var.type in self.xrm.box_types: + if var.type == FLOAT: return self.xrm.force_allocate_reg(var, forbidden_vars, selected_reg, need_lower_byte) else: @@ -293,7 +293,7 @@ selected_reg, need_lower_byte) def force_spill_var(self, var): - if var.type in self.xrm.box_types: + if var.type == FLOAT: return self.xrm.force_spill_var(var) else: return self.rm.force_spill_var(var) @@ -530,7 +530,7 @@ def loc(self, v): if v is None: # xxx kludgy return None - if v.type in self.xrm.box_types: + if v.type == FLOAT: return self.xrm.loc(v) return self.rm.loc(v) diff --git a/pypy/jit/metainterp/history.py b/pypy/jit/metainterp/history.py --- a/pypy/jit/metainterp/history.py +++ b/pypy/jit/metainterp/history.py @@ -17,7 +17,6 @@ INT = 'i' REF = 'r' FLOAT = 'f' -VECTOR = 'e' STRUCT = 's' HOLE = '_' VOID = 'v' @@ -482,15 +481,6 @@ def repr_rpython(self): return repr_rpython(self, 'bi') -class BoxVector(Box): - type = VECTOR - - def __init__(self): - pass - - def _getrepr_(self): - return '' - class BoxFloat(Box): type = FLOAT _attrs_ = ('value',) @@ -523,6 +513,12 @@ def repr_rpython(self): return repr_rpython(self, 'bf') +class BoxVector(BoxFloat): + value = float('nan') + + def _getrepr_(self): + return '' + class BoxPtr(Box): type = REF _attrs_ = ('value',) _______________________________________________ pypy-commit mailing list pypy-commit@python.org http://mail.python.org/mailman/listinfo/pypy-commit