[pypy-dev] Help with asmmemmgr.py:_copy_to_raw_memory()

M A teammember0x01 at gmail.com
Tue Oct 12 22:08:51 EDT 2021


Hi guys. I am having a problem with a function called _copy_to_raw_memory() in the file rpython/jit/backend/llsupport/asmmemmgr.py. After building PyPy there is always a crash in this function. Here is a partial backtrace I captured:

* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=2, address=0x104100000)
    frame #0: 0x0000000100c3a8b4 libpypy-c.dylib`pypy_g_InstrBuilder__copy_to_raw_memory + 268
  * frame #1: 0x0000000100bfec98 libpypy-c.dylib`pypy_g_InstrBuilder_copy_to_raw_memory + 40
    frame #2: 0x0000000100c3efd4 libpypy-c.dylib`pypy_g_InstrBuilder_materialize + 232
    frame #3: 0x0000000100c047e4 libpypy-c.dylib`pypy_g_AssemblerARM64__build_failure_recovery + 1208
    frame #4: 0x0000000100c3b5ec libpypy-c.dylib`pypy_g_BaseAssembler_setup_once + 80
    frame #5: 0x0000000100d31668 libpypy-c.dylib`pypy_g_compile_and_run_once___rpython_jit_metainterp_ji_29 + 364
    frame #6: 0x0000000100cd3ed4 libpypy-c.dylib`pypy_g_bound_reached__star_4_8 + 740
    frame #7: 0x0000000100b66510 libpypy-c.dylib`pypy_g_portal_29 + 104
    frame #8: 0x0000000100ca7804 libpypy-c.dylib`pypy_g_ll_portal_runner__pypy_objspace_std_typeobject_W_1 + 344


With the help of print() statements I was able to find the exact line that was causing the problem. It is this: 

dst[j] = block.data[j]

I have tried printing the values for these variables but that doesn't compile. I can't be sure the two variables are set correctly. Using type() on these two variables also doesn't compile. Even comparing the two variables to None doesn't work. How can I figure out what is wrong with this code? Please let me know if you need more information. Thank you.




More information about the pypy-dev mailing list