[pypy-dev] PPC64 backend compile_framework_7_interior failure

Armin Rigo arigo at tunes.org
Fri Aug 24 19:39:38 CEST 2012


Hi David,

>From your mail, "904" seems to be a typeid.  It cannot be a variable
computed as "n + 100 * i + ...", because it appears directly in
assembler as "li r3, 904".  It seems the problem is more subtle than
that, reusing bogus memory and falling over a "904" that is a typeid
when reading "16(r3)", which should not be possible.

This problem might be caused by randomness hard to debug, or maybe
precisely by what the test is really about (see the comment at the
start): the write barrier doesn't work correctly.  Such a write
barrier should turn out as a COND_CALL_GC_WB resop.

Another path of investigation would be to check that
SETINTERIORFIELD_GC behaves correctly in all cases.  Right now I see
that test_runner.py only checks with all arguments being boxes, and
not with combinations of boxes and consts.


A bientôt,

Armin.


More information about the pypy-dev mailing list