[pypy-svn] r26650 - pypy/dist/pypy/translator/cl
sanxiyn at codespeak.net
sanxiyn at codespeak.net
Tue May 2 08:29:14 CEST 2006
Author: sanxiyn
Date: Tue May 2 08:29:11 2006
New Revision: 26650
Modified:
pypy/dist/pypy/translator/cl/gencl.py
Log:
Move null instance check one level up
Modified: pypy/dist/pypy/translator/cl/gencl.py
==============================================================================
--- pypy/dist/pypy/translator/cl/gencl.py (original)
+++ pypy/dist/pypy/translator/cl/gencl.py Tue May 2 08:29:11 2006
@@ -3,7 +3,7 @@
from pypy.tool.udir import udir
from pypy.objspace.flow.model import Constant, c_last_exception, FunctionGraph
from pypy.translator.translator import graphof
-from pypy.rpython.ootypesystem.ootype import dynamicType, oodowncast, Record, Instance, _class, _static_meth, _meth, ROOT
+from pypy.rpython.ootypesystem.ootype import dynamicType, oodowncast, null, Record, Instance, _class, _static_meth, _meth, ROOT
from pypy.rpython.ootypesystem.rclass import OBJECT
from pypy.translator.cl.clrepr import clrepr
from pypy.translator.cl.opformatter import OpFormatter
@@ -38,6 +38,9 @@
def check_declaration(self, arg):
if isinstance(arg, Constant):
+ if isinstance(arg.concretetype, (Record, Instance)):
+ if arg.value is null(arg.concretetype):
+ return "nil"
if isinstance(arg.concretetype, Instance):
return self.declare_constant_instance(arg)
return clrepr(arg)
@@ -106,8 +109,6 @@
# const.concretetype is Instance
if const in self.declarations:
return self.declarations[const][0]
- if const.value is const.concretetype._null:
- return "nil"
name = "const" + str(self.constcount)
INST = dynamicType(const.value)
self.declare_class(INST)
More information about the Pypy-commit
mailing list