Author: Armin Rigo <ar...@tunes.org> Branch: Changeset: r52500:02dc2f6160ee Date: 2012-02-15 09:48 +0100 http://bitbucket.org/pypy/pypy/changeset/02dc2f6160ee/
Log: Add some more sign-extending instructions. Two of them were already elsewhere in the list. diff --git a/pypy/translator/c/gcc/trackgcroot.py b/pypy/translator/c/gcc/trackgcroot.py --- a/pypy/translator/c/gcc/trackgcroot.py +++ b/pypy/translator/c/gcc/trackgcroot.py @@ -471,8 +471,8 @@ return [] IGNORE_OPS_WITH_PREFIXES = dict.fromkeys([ - 'cmp', 'test', 'set', 'sahf', 'lahf', 'cltd', 'cld', 'std', - 'rep', 'movs', 'lods', 'stos', 'scas', 'cwtl', 'cwde', 'prefetch', + 'cmp', 'test', 'set', 'sahf', 'lahf', 'cld', 'std', + 'rep', 'movs', 'lods', 'stos', 'scas', 'cwde', 'prefetch', # floating-point operations cannot produce GC pointers 'f', 'cvt', 'ucomi', 'comi', 'subs', 'subp' , 'adds', 'addp', 'xorp', @@ -485,6 +485,8 @@ 'bswap', 'bt', 'rdtsc', 'punpck', 'pshufd', 'pcmp', 'pand', 'psllw', 'pslld', 'psllq', 'paddq', 'pinsr', + # sign-extending moves should not produce GC pointers + 'cbtw', 'cwtl', 'cwtd', 'cltd', 'cltq', 'cqto', # zero-extending moves should not produce GC pointers 'movz', # locked operations should not move GC pointers, at least so far _______________________________________________ pypy-commit mailing list pypy-commit@python.org http://mail.python.org/mailman/listinfo/pypy-commit