[pypy-svn] r32031 - pypy/dist/pypy/translator/c

arigo at codespeak.net arigo at codespeak.net
Wed Sep 6 19:24:21 CEST 2006


Author: arigo
Date: Wed Sep  6 19:24:19 2006
New Revision: 32031

Modified:
   pypy/dist/pypy/translator/c/exceptiontransform.py
Log:
(pedronis, arigo)

There is ptr_nonzero and ptr_iszero, that's more convenient.


Modified: pypy/dist/pypy/translator/c/exceptiontransform.py
==============================================================================
--- pypy/dist/pypy/translator/c/exceptiontransform.py	(original)
+++ pypy/dist/pypy/translator/c/exceptiontransform.py	Wed Sep  6 19:24:19 2006
@@ -139,7 +139,6 @@
         self.ExcData_repr = rclass.getinstancerepr(translator.rtyper, ExcDataDef)
         exc_data_ptr = self.ExcData_repr.convert_const(exc_data)
         self.cexcdata = Constant(exc_data_ptr, self.ExcData_repr.lowleveltype)
-        self.cnulltype = Constant(null_type, self.lltype_of_exception_type)
         
         self.lltype_to_classdef = translator.rtyper.lltype_to_classdef_mapping()
 
@@ -313,13 +312,13 @@
                     
         if alloc_shortcut:
             T = spaceop.result.concretetype
-            var_exc_occured = llops.genop('ptr_eq', [spaceop.result,
-                                                     Constant(lltype.nullptr(T.TO), T)],
+            var_exc_occured = llops.genop('ptr_iszero', [spaceop.result],
                                           lltype.Bool)            
         else:
             v_exc_type = self.ExcData_repr.getfield(self.cexcdata, 'exc_type', llops)
             llops.genop('debug_log_exc', [v_exc_type], lltype.Void)
-            var_exc_occured = llops.genop('ptr_ne', [v_exc_type, self.cnulltype], lltype.Bool)
+            var_exc_occured = llops.genop('ptr_nonzero', [v_exc_type],
+                                          lltype.Bool)
 
         block.operations.extend(llops)
         



More information about the Pypy-commit mailing list