[pypy-issue] [issue1071] jit crash

D. S. McNeil tracker at bugs.pypy.org
Mon Feb 27 01:52:06 CET 2012


New submission from D. S. McNeil <dsm054 at gmail.com>:

The code

def shift(x):
    return x << 1

a = map(shift, range(10**3))

crashes 1.8.0 and pypy-c-jit-52672-b319183b838d-osx64 on osx.  When run as a script:

localhost-2:pypybug $ ./pypy-c-jit-52672-b319183b838d-osx64/bin/pypy shift.py
RPython traceback:
  File "jit_metainterp_compile.c", line 21288, in send_loop_to_backend
  File "jit_backend_x86_assembler.c", line 2593, in Assembler386_assemble_loop
  File "jit_backend_x86_regalloc.c", line 510, in RegAlloc_prepare_loop
  File "jit_backend_x86_regalloc.c", line 1162, in RegAlloc__prepare
  File "jit_backend_x86_regalloc.c", line 4106, in RegAlloc__compute_vars_longevity
Fatal RPython error: AssertionError
Abort trap

and when run at the console:

Python 2.7.2 (0e28b379d8b3, Feb 09 2012, 18:31:14)
[PyPy 1.8.0 with GCC 4.2.1] on darwin
Type "help", "copyright", "credits" or "license" for more information.
And now for something completely different: ``finally, mercurial migration is
happening!''
>>>> def shift(x):
....     return x << 1
.... 
>>>> a = map(shift, range(10**3))
RPython traceback:
  File "module_pypyjit_interp_jit.c", line 659, in jump_absolute__AccessDirect_None
  File "jit_metainterp_warmstate.c", line 491, in maybe_compile_and_run__star_5_1
  File "jit_metainterp_warmstate.c", line 5006, in execute_assembler__star_2
  File "jit_metainterp_compile.c", line 24662, in ResumeGuardDescr_handle_fail
  File "jit_metainterp_compile.c", line 27358, in
ResumeGuardDescr__trace_and_compile_from_bridge
  File "jit_metainterp_pyjitpl_2.c", line 56320, in MetaInterp_handle_guard_failure
  File "jit_metainterp_pyjitpl_2.c", line 57337, in MetaInterp__handle_guard_failure
  File "jit_metainterp_pyjitpl.c", line 7069, in MetaInterp_interpret
  File "jit_metainterp_pyjitpl.c", line 13350, in MetaInterp__interpret
  File "jit_metainterp_pyjitpl.c", line 18104, in MIFrame_run_one_step
  File "jit_metainterp_pyjitpl.c", line 64089, in MIFrame_opimpl_jit_merge_point
  File "jit_metainterp_pyjitpl_1.c", line 28196, in MetaInterp_reached_loop_header
  File "jit_metainterp_pyjitpl_1.c", line 48496, in MetaInterp_compile_loop
  File "jit_metainterp_compile.c", line 16752, in compile_retrace
  File "jit_metainterp_compile.c", line 20526, in send_bridge_to_backend
  File "jit_backend_x86_assembler.c", line 60698, in Assembler386_assemble_bridge
  File "jit_backend_x86_assembler.c", line 5377, in Assembler386__assemble
  File "jit_backend_x86_regalloc.c", line 2245, in RegAlloc_walk_operations
  File "jit_backend_x86_regalloc.c", line 12746, in RegAlloc_consider_label
  File "jit_backend_llsupport_regalloc.c", line 5176, in
RegisterManager_force_spill_var
  File "jit_backend_llsupport_regalloc.c", line 7836, in RegisterManager__sync_var
~~~ Crash in JIT! <KeyError object at 0x10159a4a0>
Abort trap

----------
messages: 4011
nosy: dsm, pypy-issue
priority: bug
release: ???
status: unread
title: jit crash

________________________________________
PyPy bug tracker <tracker at bugs.pypy.org>
<https://bugs.pypy.org/issue1071>
________________________________________


More information about the pypy-issue mailing list