[pypy-svn] r63618 - pypy/branch/pyjitpl5-simplify/pypy/rpython/lltypesystem

fijal at codespeak.net fijal at codespeak.net
Sat Apr 4 17:25:05 CEST 2009


Author: fijal
Date: Sat Apr  4 17:25:03 2009
New Revision: 63618

Modified:
   pypy/branch/pyjitpl5-simplify/pypy/rpython/lltypesystem/rdict.py
   pypy/branch/pyjitpl5-simplify/pypy/rpython/lltypesystem/rstr.py
Log:
a couple of missing oopspecs


Modified: pypy/branch/pyjitpl5-simplify/pypy/rpython/lltypesystem/rdict.py
==============================================================================
--- pypy/branch/pyjitpl5-simplify/pypy/rpython/lltypesystem/rdict.py	(original)
+++ pypy/branch/pyjitpl5-simplify/pypy/rpython/lltypesystem/rdict.py	Sat Apr  4 17:25:03 2009
@@ -696,6 +696,7 @@
         return entries[i].value
     else: 
         return default
+ll_get.oopspec = 'dict.get(key, default)'
 
 def ll_setdefault(dict, key, default):
     i = ll_dict_lookup(dict, key, dict.keyhash(key))
@@ -705,6 +706,7 @@
     else:
         ll_dict_setitem(dict, key, default)
         return default
+ll_setdefault.oopspec = 'dict.setdefault(key, default)'
 
 def ll_copy(dict):
     DICT = lltype.typeOf(dict).TO
@@ -727,6 +729,7 @@
         if hasattr(ENTRY, 'f_hash'):     d_entry.f_hash     = entry.f_hash
         i += 1
     return d
+ll_copy.oopspec = 'dict.copy()'
 
 def ll_clear(d):
     if len(d.entries) == d.num_pristine_entries == DICT_INITSIZE:
@@ -736,6 +739,7 @@
     d.num_items = 0
     d.num_pristine_entries = DICT_INITSIZE
     old_entries.delete()
+ll_clear.oopspec = 'dict.clear'
 
 def ll_update(dic1, dic2):
     entries = dic2.entries
@@ -746,6 +750,7 @@
             entry = entries[i]
             ll_dict_setitem(dic1, entry.key, entry.value)
         i += 1
+ll_update.oopspect = 'dict.update'
 
 # this is an implementation of keys(), values() and items()
 # in a single function.

Modified: pypy/branch/pyjitpl5-simplify/pypy/rpython/lltypesystem/rstr.py
==============================================================================
--- pypy/branch/pyjitpl5-simplify/pypy/rpython/lltypesystem/rstr.py	(original)
+++ pypy/branch/pyjitpl5-simplify/pypy/rpython/lltypesystem/rstr.py	Sat Apr  4 17:25:03 2009
@@ -288,6 +288,7 @@
                 raise UnicodeDecodeError
             s.chars[i] = cast_primitive(UniChar, str.chars[i])
         return s
+    ll_str2unicode.oopspec = 'str.unicode()'
 
     def ll_strhash(s):
         # unlike CPython, there is no reason to avoid to return -1



More information about the Pypy-commit mailing list