[pypy-commit] pypy kill-gen-store-back-in: rename virtualizable2 to virtualizable. Remove the ootype part (it never

fijal noreply at buildbot.pypy.org
Thu Jun 27 11:04:49 CEST 2013


Author: Maciej Fijalkowski <fijall at gmail.com>
Branch: kill-gen-store-back-in
Changeset: r65034:5bf501d6e094
Date: 2013-06-27 11:02 +0200
http://bitbucket.org/pypy/pypy/changeset/5bf501d6e094/

Log:	rename virtualizable2 to virtualizable. Remove the ootype part (it
	never worked I think)

diff --git a/pypy/doc/jit/virtualizable.rst b/pypy/doc/jit/virtualizable.rst
--- a/pypy/doc/jit/virtualizable.rst
+++ b/pypy/doc/jit/virtualizable.rst
@@ -26,7 +26,7 @@
 virtualizable works like this:
 
     class Frame(object):
-       _virtualizable2_ = ['locals[*]', 'stackdepth']
+       _virtualizable_ = ['locals[*]', 'stackdepth']
 
 And we use them in ``JitDriver`` like this::
 
diff --git a/pypy/module/pypyjit/interp_jit.py b/pypy/module/pypyjit/interp_jit.py
--- a/pypy/module/pypyjit/interp_jit.py
+++ b/pypy/module/pypyjit/interp_jit.py
@@ -15,15 +15,15 @@
 from pypy.interpreter.pyopcode import ExitFrame
 from opcode import opmap
 
-PyFrame._virtualizable2_ = ['last_instr', 'pycode',
-                            'valuestackdepth', 'locals_stack_w[*]',
-                            'cells[*]',
-                            'last_exception',
-                            'lastblock',
-                            'is_being_profiled',
-                            'w_globals',
-                            'w_f_trace',
-                            ]
+PyFrame._virtualizable_ = ['last_instr', 'pycode',
+                           'valuestackdepth', 'locals_stack_w[*]',
+                           'cells[*]',
+                           'last_exception',
+                           'lastblock',
+                           'is_being_profiled',
+                           'w_globals',
+                           'w_f_trace',
+                           ]
 
 JUMP_ABSOLUTE = opmap['JUMP_ABSOLUTE']
 
diff --git a/rpython/annotator/test/test_annrpython.py b/rpython/annotator/test/test_annrpython.py
--- a/rpython/annotator/test/test_annrpython.py
+++ b/rpython/annotator/test/test_annrpython.py
@@ -3059,7 +3059,7 @@
         from rpython.rlib.jit import hint
 
         class A:
-            _virtualizable2_ = []
+            _virtualizable_ = []
         class B(A):
             def meth(self):
                 return self
@@ -3099,7 +3099,7 @@
         from rpython.rlib.jit import hint
 
         class A:
-            _virtualizable2_ = []
+            _virtualizable_ = []
 
         class I:
             pass
diff --git a/rpython/jit/backend/llsupport/test/ztranslation_test.py b/rpython/jit/backend/llsupport/test/ztranslation_test.py
--- a/rpython/jit/backend/llsupport/test/ztranslation_test.py
+++ b/rpython/jit/backend/llsupport/test/ztranslation_test.py
@@ -23,7 +23,7 @@
         # - floats neg and abs
 
         class Frame(object):
-            _virtualizable2_ = ['i']
+            _virtualizable_ = ['i']
 
             def __init__(self, i):
                 self.i = i
@@ -98,7 +98,7 @@
                 self.val = val
 
         class Frame(object):
-            _virtualizable2_ = ['thing']
+            _virtualizable_ = ['thing']
 
         driver = JitDriver(greens = ['codeno'], reds = ['i', 'frame'],
                            virtualizables = ['frame'],
diff --git a/rpython/jit/codewriter/test/test_policy.py b/rpython/jit/codewriter/test/test_policy.py
--- a/rpython/jit/codewriter/test/test_policy.py
+++ b/rpython/jit/codewriter/test/test_policy.py
@@ -131,7 +131,7 @@
 
 def test_access_directly_but_not_seen():
     class X:
-        _virtualizable2_ = ["a"]
+        _virtualizable_ = ["a"]
     def h(x, y):
         w = 0
         for i in range(y):
diff --git a/rpython/jit/metainterp/test/test_recursive.py b/rpython/jit/metainterp/test/test_recursive.py
--- a/rpython/jit/metainterp/test/test_recursive.py
+++ b/rpython/jit/metainterp/test/test_recursive.py
@@ -643,7 +643,7 @@
         # exactly the same logic as the previous test, but with 'frame.j'
         # instead of just 'j'
         class Frame(object):
-            _virtualizable2_ = ['j']
+            _virtualizable_ = ['j']
             def __init__(self, j):
                 self.j = j
 
@@ -767,7 +767,7 @@
                 self.val = val
 
         class Frame(object):
-            _virtualizable2_ = ['thing']
+            _virtualizable_ = ['thing']
 
         driver = JitDriver(greens = ['codeno'], reds = ['i', 's', 'frame'],
                            virtualizables = ['frame'],
@@ -809,7 +809,7 @@
                 self.val = val
 
         class Frame(object):
-            _virtualizable2_ = ['thing']
+            _virtualizable_ = ['thing']
 
         driver = JitDriver(greens = ['codeno'], reds = ['i', 'frame'],
                            virtualizables = ['frame'],
@@ -860,7 +860,7 @@
                 self.val = val
 
         class Frame(object):
-            _virtualizable2_ = ['thing']
+            _virtualizable_ = ['thing']
 
         driver = JitDriver(greens = ['codeno'], reds = ['i', 'frame'],
                            virtualizables = ['frame'],
@@ -911,7 +911,7 @@
                                 virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['l[*]', 's']
+            _virtualizable_ = ['l[*]', 's']
 
             def __init__(self, l, s):
                 self = hint(self, access_directly=True,
@@ -954,7 +954,7 @@
                 self.val = val
 
         class Frame(object):
-            _virtualizable2_ = ['thing']
+            _virtualizable_ = ['thing']
 
         driver = JitDriver(greens = ['codeno'], reds = ['i', 'frame'],
                            virtualizables = ['frame'],
diff --git a/rpython/jit/metainterp/test/test_tracingopts.py b/rpython/jit/metainterp/test/test_tracingopts.py
--- a/rpython/jit/metainterp/test/test_tracingopts.py
+++ b/rpython/jit/metainterp/test/test_tracingopts.py
@@ -344,7 +344,7 @@
                                     virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['l[*]', 's']
+            _virtualizable_ = ['l[*]', 's']
 
             def __init__(self, a, s):
                 self = jit.hint(self, access_directly=True, fresh_virtualizable=True)
diff --git a/rpython/jit/metainterp/test/test_virtualizable.py b/rpython/jit/metainterp/test/test_virtualizable.py
--- a/rpython/jit/metainterp/test/test_virtualizable.py
+++ b/rpython/jit/metainterp/test/test_virtualizable.py
@@ -46,8 +46,8 @@
         ('vable_token', llmemory.GCREF),
         ('inst_x', lltype.Signed),
         ('inst_node', lltype.Ptr(LLtypeMixin.NODE)),
-        hints = {'virtualizable2_accessor': FieldListAccessor()})
-    XY._hints['virtualizable2_accessor'].initialize(
+        hints = {'virtualizable_accessor': FieldListAccessor()})
+    XY._hints['virtualizable_accessor'].initialize(
         XY, {'inst_x': IR_IMMUTABLE, 'inst_node': IR_IMMUTABLE})
 
     xy_vtable = lltype.malloc(rclass.OBJECT_VTABLE, immortal=True)
@@ -214,8 +214,8 @@
         ('inst_x', lltype.Signed),
         ('inst_l1', lltype.Ptr(lltype.GcArray(lltype.Signed))),
         ('inst_l2', lltype.Ptr(lltype.GcArray(lltype.Signed))),
-        hints = {'virtualizable2_accessor': FieldListAccessor()})
-    XY2._hints['virtualizable2_accessor'].initialize(
+        hints = {'virtualizable_accessor': FieldListAccessor()})
+    XY2._hints['virtualizable_accessor'].initialize(
         XY2, {'inst_x': IR_IMMUTABLE,
               'inst_l1': IR_IMMUTABLE_ARRAY, 'inst_l2': IR_IMMUTABLE_ARRAY})
 
@@ -445,7 +445,7 @@
                                 virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['x', 'y']
+            _virtualizable_ = ['x', 'y']
 
             def __init__(self, x, y):
                 self.x = x
@@ -474,7 +474,7 @@
                                 virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['l[*]', 's']
+            _virtualizable_ = ['l[*]', 's']
 
             def __init__(self, l, s):
                 self.l = l
@@ -509,7 +509,7 @@
                                 virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['x', 'y']
+            _virtualizable_ = ['x', 'y']
 
             def __init__(self, x, y):
                 self.x = x
@@ -537,7 +537,7 @@
                               virtualizables = ['frame'])
 
         class BaseFrame(object):
-            _virtualizable2_ = ['x[*]']
+            _virtualizable_ = ['x[*]']
 
             def __init__(self, x):
                 self.x = x
@@ -568,7 +568,7 @@
                               virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['x', 'y']
+            _virtualizable_ = ['x', 'y']
 
         class SomewhereElse:
             pass
@@ -601,7 +601,7 @@
                               virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['x', 'y']
+            _virtualizable_ = ['x', 'y']
 
         class SomewhereElse:
             pass
@@ -641,7 +641,7 @@
                               virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['x', 'y']
+            _virtualizable_ = ['x', 'y']
 
         class SomewhereElse:
             pass
@@ -674,7 +674,7 @@
                               virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['x', 'y']
+            _virtualizable_ = ['x', 'y']
 
         class SomewhereElse:
             pass
@@ -711,7 +711,7 @@
                               virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['x', 'y']
+            _virtualizable_ = ['x', 'y']
 
         class Y:
             pass
@@ -756,7 +756,7 @@
                               virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['x', 'y']
+            _virtualizable_ = ['x', 'y']
 
         class Y:
             pass
@@ -806,7 +806,7 @@
                               virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['x', 'y']
+            _virtualizable_ = ['x', 'y']
 
         class FooBarError(Exception):
             pass
@@ -850,7 +850,7 @@
                               virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['x', 'y']
+            _virtualizable_ = ['x', 'y']
 
         class SomewhereElse:
             pass
@@ -887,7 +887,7 @@
                               virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['x', 'y']
+            _virtualizable_ = ['x', 'y']
 
         class SomewhereElse:
             pass
@@ -939,7 +939,7 @@
                               virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['x', 'y']
+            _virtualizable_ = ['x', 'y']
 
         class SomewhereElse:
             pass
@@ -976,7 +976,7 @@
                               virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['x', 'y']
+            _virtualizable_ = ['x', 'y']
 
         class SomewhereElse:
             pass
@@ -1010,7 +1010,7 @@
                               virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['stackpos', 'stack[*]']
+            _virtualizable_ = ['stackpos', 'stack[*]']
 
         def f(n):
             frame = Frame()
@@ -1039,7 +1039,7 @@
                                 virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['x', 'y']
+            _virtualizable_ = ['x', 'y']
 
             def __init__(self, x, y):
                 self = hint(self, access_directly=True)
@@ -1093,7 +1093,7 @@
                                 virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['x', 'y']
+            _virtualizable_ = ['x', 'y']
 
             def __init__(self, x, y):
                 self = hint(self, access_directly=True)
@@ -1125,7 +1125,7 @@
                                 virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['x', 'y', 'z']
+            _virtualizable_ = ['x', 'y', 'z']
 
             def __init__(self, x, y, z=1):
                 self = hint(self, access_directly=True)
@@ -1160,7 +1160,7 @@
                                 virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['x[*]']
+            _virtualizable_ = ['x[*]']
 
             def __init__(self, x, y):
                 self = hint(self, access_directly=True,
@@ -1192,7 +1192,7 @@
                                 virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['x', 'y']
+            _virtualizable_ = ['x', 'y']
 
             def __init__(self, x, y):
                 self = hint(self, access_directly=True)
@@ -1231,7 +1231,7 @@
                                 virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['x', 'y']
+            _virtualizable_ = ['x', 'y']
 
             def __init__(self, x, y):
                 self.x = x
@@ -1271,7 +1271,7 @@
                                 virtualizables = ['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['x', 'y']
+            _virtualizable_ = ['x', 'y']
 
             def __init__(self, x, y):
                 self = hint(self, access_directly=True)
@@ -1315,7 +1315,7 @@
 
     def test_inlining(self):
         class Frame(object):
-            _virtualizable2_ = ['x', 'next']
+            _virtualizable_ = ['x', 'next']
 
             def __init__(self, x):
                 self = hint(self, access_directly=True)
@@ -1350,7 +1350,7 @@
     def test_guard_failure_in_inlined_function(self):
 
         class Frame(object):
-            _virtualizable2_ = ['n', 'next']
+            _virtualizable_ = ['n', 'next']
 
             def __init__(self, n):
                 self = hint(self, access_directly=True)
@@ -1404,7 +1404,7 @@
                 self.val = val
 
         class Frame(object):
-            _virtualizable2_ = ['thing']
+            _virtualizable_ = ['thing']
 
         driver = JitDriver(greens = ['codeno'], reds = ['i', 'frame'],
                            virtualizables = ['frame'],
@@ -1455,7 +1455,7 @@
         )
 
         class Frame(object):
-            _virtualizable2_ = ['x']
+            _virtualizable_ = ['x']
 
         def main(n):
             f = Frame()
@@ -1481,7 +1481,7 @@
                             virtualizables=['frame'])
 
         class Frame(object):
-            _virtualizable2_ = ['x']
+            _virtualizable_ = ['x']
 
         def g(frame):
             driver2.jit_merge_point(frame=frame)
@@ -1517,10 +1517,10 @@
                             virtualizables=['subframe'])
 
         class Frame(object):
-            _virtualizable2_ = ['x']
+            _virtualizable_ = ['x']
 
         class SubFrame(object):
-            _virtualizable2_ = ['x']
+            _virtualizable_ = ['x']
 
         def g(subframe):
             driver2.jit_merge_point(subframe=subframe)
@@ -1544,6 +1544,7 @@
         res = self.meta_interp(f, [])
         assert res == f()
 
+
 class TestLLtype(ExplicitVirtualizableTests,
                  ImplicitVirtualizableTests,
                  LLJitMixin):
diff --git a/rpython/jit/metainterp/virtualizable.py b/rpython/jit/metainterp/virtualizable.py
--- a/rpython/jit/metainterp/virtualizable.py
+++ b/rpython/jit/metainterp/virtualizable.py
@@ -3,7 +3,7 @@
 from rpython.jit.metainterp.typesystem import deref, fieldType, arrayItem
 from rpython.jit.metainterp.warmstate import wrap, unwrap
 from rpython.rlib.unroll import unrolling_iterable
-from rpython.rtyper import rvirtualizable2
+from rpython.rtyper import rvirtualizable
 from rpython.rtyper.lltypesystem import lltype, llmemory
 from rpython.rtyper.ootypesystem import ootype
 from rpython.rtyper.rclass import IR_IMMUTABLE_ARRAY, IR_IMMUTABLE
@@ -21,13 +21,13 @@
         self.cpu = cpu
         self.BoxArray = cpu.ts.BoxRef
         #
-        while 'virtualizable2_accessor' not in deref(VTYPEPTR)._hints:
+        while 'virtualizable_accessor' not in deref(VTYPEPTR)._hints:
             VTYPEPTR = cpu.ts.get_superclass(VTYPEPTR)
         self.VTYPEPTR = VTYPEPTR
         self.VTYPE = VTYPE = deref(VTYPEPTR)
         self.vable_token_descr = cpu.fielddescrof(VTYPE, 'vable_token')
         #
-        accessor = VTYPE._hints['virtualizable2_accessor']
+        accessor = VTYPE._hints['virtualizable_accessor']
         all_fields = accessor.fields
         static_fields = []
         array_fields = []
@@ -294,7 +294,7 @@
         (_, FUNCPTR) = ts.get_FuncType([self.VTYPEPTR], lltype.Void)
         funcptr = self.warmrunnerdesc.helper_func(
             FUNCPTR, force_virtualizable_if_necessary)
-        rvirtualizable2.replace_force_virtualizable_with_call(
+        rvirtualizable.replace_force_virtualizable_with_call(
             all_graphs, self.VTYPEPTR, funcptr)
         (_, FUNCPTR) = ts.get_FuncType([llmemory.GCREF], lltype.Void)
         self.clear_vable_ptr = self.warmrunnerdesc.helper_func(
@@ -308,7 +308,7 @@
         return virtualizable_box.getref(llmemory.GCREF)
 
     def is_vtypeptr(self, TYPE):
-        return rvirtualizable2.match_virtualizable_type(TYPE, self.VTYPEPTR)
+        return rvirtualizable.match_virtualizable_type(TYPE, self.VTYPEPTR)
 
 # ____________________________________________________________
 #
diff --git a/rpython/jit/metainterp/virtualref.py b/rpython/jit/metainterp/virtualref.py
--- a/rpython/jit/metainterp/virtualref.py
+++ b/rpython/jit/metainterp/virtualref.py
@@ -39,7 +39,7 @@
         return True
 
     def replace_force_virtual_with_call(self, graphs):
-        # similar to rvirtualizable2.replace_force_virtualizable_with_call().
+        # similar to rvirtualizable.replace_force_virtualizable_with_call().
         c_force_virtual_ptr = None
         c_is_virtual_ptr = None
         force_virtual_count = 0
diff --git a/rpython/jit/tl/tinyframe/tinyframe.py b/rpython/jit/tl/tinyframe/tinyframe.py
--- a/rpython/jit/tl/tinyframe/tinyframe.py
+++ b/rpython/jit/tl/tinyframe/tinyframe.py
@@ -214,7 +214,7 @@
                    virtualizables = ['self'])
 
 class Frame(object):
-    _virtualizable2_ = ['registers[*]', 'code']
+    _virtualizable_ = ['registers[*]', 'code']
     
     def __init__(self, code, arg=None):
         self = hint(self, access_directly=True, fresh_virtualizable=True)
diff --git a/rpython/jit/tl/tl.py b/rpython/jit/tl/tl.py
--- a/rpython/jit/tl/tl.py
+++ b/rpython/jit/tl/tl.py
@@ -11,7 +11,7 @@
     return t
 
 class Stack(object):
-    _virtualizable2_ = ['stackpos', 'stack[*]']
+    _virtualizable_ = ['stackpos', 'stack[*]']
 
     def __init__(self, size):
         self = hint(self, access_directly=True, fresh_virtualizable=True)
diff --git a/rpython/jit/tl/tla/tla.py b/rpython/jit/tl/tla/tla.py
--- a/rpython/jit/tl/tla/tla.py
+++ b/rpython/jit/tl/tla/tla.py
@@ -80,7 +80,7 @@
                       get_printable_location=get_printable_location)
 
 class Frame(object):
-    _virtualizable2_ = ['stackpos', 'stack[*]']
+    _virtualizable_ = ['stackpos', 'stack[*]']
     
     def __init__(self, bytecode):
         self.bytecode = bytecode
diff --git a/rpython/rlib/jit.py b/rpython/rlib/jit.py
--- a/rpython/rlib/jit.py
+++ b/rpython/rlib/jit.py
@@ -235,7 +235,7 @@
             if isinstance(s_x, annmodel.SomeInstance):
                 from rpython.flowspace.model import Constant
                 classdesc = s_x.classdef.classdesc
-                virtualizable = classdesc.read_attribute('_virtualizable2_',
+                virtualizable = classdesc.read_attribute('_virtualizable_',
                                                          Constant(None)).value
                 if virtualizable is not None:
                     flags = s_x.flags.copy()
diff --git a/rpython/rtyper/lltypesystem/rvirtualizable2.py b/rpython/rtyper/lltypesystem/rvirtualizable.py
rename from rpython/rtyper/lltypesystem/rvirtualizable2.py
rename to rpython/rtyper/lltypesystem/rvirtualizable.py
--- a/rpython/rtyper/lltypesystem/rvirtualizable2.py
+++ b/rpython/rtyper/lltypesystem/rvirtualizable.py
@@ -1,27 +1,12 @@
-from rpython.rtyper.rmodel import inputconst
-from rpython.rtyper.lltypesystem import lltype, llmemory
-from rpython.rtyper.lltypesystem.rclass import InstanceRepr, OBJECTPTR
-from rpython.rtyper.rvirtualizable2 import AbstractVirtualizable2InstanceRepr
+from rpython.rtyper.lltypesystem import llmemory
+from rpython.rtyper.lltypesystem.rclass import InstanceRepr
+from rpython.rtyper.rvirtualizable import AbstractVirtualizableInstanceRepr
 
 
-class Virtualizable2InstanceRepr(AbstractVirtualizable2InstanceRepr, InstanceRepr):
-
+class VirtualizableInstanceRepr(AbstractVirtualizableInstanceRepr,
+                                InstanceRepr):
     def _setup_repr_llfields(self):
         llfields = []
         if self.top_of_virtualizable_hierarchy:
             llfields.append(('vable_token', llmemory.GCREF))
         return llfields
-
-##  The code below is commented out because vtable_token is always
-##  initialized to NULL anyway.
-##
-##    def set_vable(self, llops, vinst, force_cast=False):
-##        if self.top_of_virtualizable_hierarchy:
-##            if force_cast:
-##                vinst = llops.genop('cast_pointer', [vinst], resulttype=self)
-##            cname = inputconst(lltype.Void, 'vable_token')
-##            cvalue = inputconst(llmemory.GCREF,
-##                                lltype.nullptr(llmemory.GCREF.TO))
-##            llops.genop('setfield', [vinst, cname, cvalue])
-##        else:
-##            self.rbase.set_vable(llops, vinst, force_cast=True)
diff --git a/rpython/rtyper/ootypesystem/rvirtualizable2.py b/rpython/rtyper/ootypesystem/rvirtualizable2.py
deleted file mode 100644
--- a/rpython/rtyper/ootypesystem/rvirtualizable2.py
+++ /dev/null
@@ -1,18 +0,0 @@
-from rpython.rtyper.rmodel import inputconst
-from rpython.rtyper.ootypesystem import ootype
-from rpython.rtyper.ootypesystem.rclass import InstanceRepr, mangle, OBJECT
-from rpython.rtyper.rvirtualizable2 import AbstractVirtualizable2InstanceRepr
-
-VABLERTI = OBJECT
-
-
-class Virtualizable2InstanceRepr(AbstractVirtualizable2InstanceRepr, InstanceRepr):
-
-    def _setup_repr_llfields(self):
-        llfields = []
-        if self.top_of_virtualizable_hierarchy:
-            llfields.append(('vable_token', VABLERTI))
-        return llfields
-
-    def set_vable(self, llops, vinst, force_cast=False):
-        pass # TODO
diff --git a/rpython/rtyper/rclass.py b/rpython/rtyper/rclass.py
--- a/rpython/rtyper/rclass.py
+++ b/rpython/rtyper/rclass.py
@@ -78,20 +78,20 @@
 
     if classdef is None:
         unboxed = []
-        virtualizable2 = False
+        virtualizable = False
     else:
         unboxed = [subdef for subdef in classdef.getallsubdefs()
                           if subdef.classdesc.pyobj is not None and
                              issubclass(subdef.classdesc.pyobj, UnboxedValue)]
-        virtualizable2 = classdef.classdesc.read_attribute('_virtualizable2_',
+        virtualizable = classdef.classdesc.read_attribute('_virtualizable_',
                                                            Constant(False)).value
     config = rtyper.annotator.translator.config
     usetagging = len(unboxed) != 0 and config.translation.taggedpointers
 
-    if virtualizable2:
+    if virtualizable:
         assert len(unboxed) == 0
         assert gcflavor == 'gc'
-        return rtyper.type_system.rvirtualizable2.Virtualizable2InstanceRepr(rtyper, classdef)
+        return rtyper.type_system.rvirtualizable.VirtualizableInstanceRepr(rtyper, classdef)
     elif usetagging and rtyper.type_system.name == 'lltypesystem':
         # the UnboxedValue class and its parent classes need a
         # special repr for their instances
@@ -298,7 +298,7 @@
                         fieldname, base, self))
 
     def hook_access_field(self, vinst, cname, llops, flags):
-        pass        # for virtualizables; see rvirtualizable2.py
+        pass        # for virtualizables; see rvirtualizable.py
 
     def hook_setfield(self, vinst, fieldname, llops):
         if self.is_quasi_immutable(fieldname):
diff --git a/rpython/rtyper/rvirtualizable2.py b/rpython/rtyper/rvirtualizable.py
rename from rpython/rtyper/rvirtualizable2.py
rename to rpython/rtyper/rvirtualizable.py
--- a/rpython/rtyper/rvirtualizable2.py
+++ b/rpython/rtyper/rvirtualizable.py
@@ -4,17 +4,20 @@
 from rpython.rtyper.rclass import AbstractInstanceRepr, FieldListAccessor
 
 
-class AbstractVirtualizable2InstanceRepr(AbstractInstanceRepr):
+class AbstractVirtualizableInstanceRepr(AbstractInstanceRepr):
 
     def _super(self):
-        return super(AbstractVirtualizable2InstanceRepr, self)
+        return super(AbstractVirtualizableInstanceRepr, self)
 
     def __init__(self, rtyper, classdef):
         self._super().__init__(rtyper, classdef)
         classdesc = classdef.classdesc
         if '_virtualizable2_' in classdesc.classdict:
+            raise Exception("_virtualizable2_ is now called _virtualizable_, "
+                            "please rename")
+        if '_virtualizable_' in classdesc.classdict:
             basedesc = classdesc.basedesc
-            assert basedesc is None or basedesc.lookup('_virtualizable2_') is None
+            assert basedesc is None or basedesc.lookup('_virtualizable_') is None
             self.top_of_virtualizable_hierarchy = True
             self.accessor = FieldListAccessor()
         else:
@@ -28,13 +31,13 @@
 
     def _setup_repr(self):
         if self.top_of_virtualizable_hierarchy:
-            hints = {'virtualizable2_accessor': self.accessor}
+            hints = {'virtualizable_accessor': self.accessor}
             llfields = self._setup_repr_llfields()
             if llfields:
                 self._super()._setup_repr(llfields, hints = hints)
             else:
                 self._super()._setup_repr(hints = hints)
-            c_vfields = self.classdef.classdesc.classdict['_virtualizable2_']
+            c_vfields = self.classdef.classdesc.classdict['_virtualizable_']
             self.my_redirected_fields = self._parse_field_list(c_vfields.value,
                                                                self.accessor)
         else:
diff --git a/rpython/rtyper/test/test_rvirtualizable2.py b/rpython/rtyper/test/test_rvirtualizable.py
rename from rpython/rtyper/test/test_rvirtualizable2.py
rename to rpython/rtyper/test/test_rvirtualizable.py
--- a/rpython/rtyper/test/test_rvirtualizable2.py
+++ b/rpython/rtyper/test/test_rvirtualizable.py
@@ -1,7 +1,7 @@
 import py
 from rpython.rtyper.lltypesystem import lltype, llmemory
 from rpython.rtyper.test.tool import BaseRtypingTest, LLRtypeMixin, OORtypeMixin
-from rpython.rtyper.rvirtualizable2 import replace_force_virtualizable_with_call
+from rpython.rtyper.rvirtualizable import replace_force_virtualizable_with_call
 from rpython.rlib.jit import hint
 from rpython.flowspace.model import summary
 from rpython.rtyper.llinterp import LLInterpreter
@@ -10,7 +10,7 @@
 
 
 class V(object):
-    _virtualizable2_ = ['v']
+    _virtualizable_ = ['v']
     v = -12
     w = -62
 
@@ -22,12 +22,12 @@
     pass
 
 class VArray(object):
-    _virtualizable2_ = ['lst[*]']
+    _virtualizable_ = ['lst[*]']
 
     def __init__(self, lst):
         self.lst = lst
 class B(object):
-    _virtualizable2_ = ['v0']
+    _virtualizable_ = ['v0']
 
     x = "XX"
     
@@ -102,7 +102,7 @@
         class Base(object):
             pass
         class V(Base):
-            _virtualizable2_ = ['v1', 'v2[*]']
+            _virtualizable_ = ['v1', 'v2[*]']
         class W(V):
             pass
         #
@@ -115,7 +115,7 @@
         _, _, graph = self.gengraph(fn1, [int])
         v_inst = graph.getreturnvar()
         TYPE = self.gettype(v_inst)
-        accessor = TYPE._hints['virtualizable2_accessor']
+        accessor = TYPE._hints['virtualizable_accessor']
         assert accessor.TYPE == TYPE
         assert accessor.fields == {self.prefix + 'v1': IR_IMMUTABLE,
                                    self.prefix + 'v2': IR_IMMUTABLE_ARRAY}
@@ -129,7 +129,7 @@
         _, _, graph = self.gengraph(fn2, [int])
         w_inst = graph.getreturnvar()
         TYPE = self.gettype(w_inst)
-        assert 'virtualizable2_accessor' not in TYPE._hints
+        assert 'virtualizable_accessor' not in TYPE._hints
 
     def replace_force_virtualizable(self, rtyper, graphs):
         from rpython.annotator import model as annmodel
@@ -285,7 +285,7 @@
 
     def test_access_directly_method(self):
         class A:
-            _virtualizable2_ = ['v0']
+            _virtualizable_ = ['v0']
 
             def __init__(self, v):
                 self.v0 = v
@@ -315,7 +315,7 @@
         from rpython.rlib.jit import dont_look_inside
 
         class A:
-            _virtualizable2_ = ['x']
+            _virtualizable_ = ['x']
 
         def h(a):
             g(a)
diff --git a/rpython/rtyper/typesystem.py b/rpython/rtyper/typesystem.py
--- a/rpython/rtyper/typesystem.py
+++ b/rpython/rtyper/typesystem.py
@@ -22,7 +22,7 @@
                 return None
         if name in ('rclass', 'rpbc', 'rbuiltin', 'rtuple', 'rlist',
                     'rslice', 'rdict', 'rrange', 'rstr',
-                    'll_str', 'rbuilder', 'rvirtualizable2', 'rbytearray',
+                    'll_str', 'rbuilder', 'rvirtualizable', 'rbytearray',
                     'exceptiondata'):
             mod = load(name)
             if mod is not None:


More information about the pypy-commit mailing list