Author: Armin Rigo <[email protected]>
Branch: reverse-debugger
Changeset: r90322:ff1be8a8ca2a
Date: 2017-02-23 14:15 +0100
http://bitbucket.org/pypy/pypy/changeset/ff1be8a8ca2a/
Log: Give id()s that are generally multiple of 8. Helps running rpython
tests.
diff --git a/rpython/translator/revdb/src-revdb/revdb.c
b/rpython/translator/revdb/src-revdb/revdb.c
--- a/rpython/translator/revdb/src-revdb/revdb.c
+++ b/rpython/translator/revdb/src-revdb/revdb.c
@@ -452,7 +452,14 @@
warning_printed = 1;
}
}
- return (Signed)(obj->h_uid);
+ /* on 64-bit, the range is large enough anyway, so shift 3 times
+ to get a result that is a multiple of 8. The Boehm translation
+ will additionally return the 'int_invert' of that. So
+ we add 7 to make the user-level id() be a multiple of 8. */
+ if (sizeof(obj->h_uid) == sizeof(Signed))
+ return (obj->h_uid << 3) + 7;
+ else
+ return (Signed)(obj->h_uid);
}
}
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit