Package: src:pypy Version: 2.4.0+dfsg-2 Severity: serious Tags: patch Justification: fails to build from source (but built successfully in the past)
============================================================================== gcc -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused -Wformat -Werror=format-s ecurity -DPy_BUILD_CORE -DPYPY_USE_ASMGCC -DPYPY_CPU_HAS_STANDARD_PRECISION -DPy_ BUILD_CORE -frandom-seed=implement_6.c -o implement_6.s -S implement_6.c -I"/«BUI LDDIR»/pypy-2.4.0+dfsg/rpython"/translator/c -I/«BUILDDIR»/pypy-2.4.0+dfsg/pypy/m odule/cpyext/include -I.. -I/«BUILDDIR»/pypy-2.4.0+dfsg/pypy/module/_multibytecod ec -I/«BUILDDIR»/pypy-2.4.0+dfsg/pypy/module/operator -I/usr/include/ncursesw python "/«BUILDDIR»/pypy-2.4.0+dfsg/rpython"/translator/c/gcc/trackgcroot.py -t i mplement_6.s > implement_6.gctmp Traceback (most recent call last): File "/«BUILDDIR»/pypy-2.4.0+dfsg/rpython/translator/c/gcc/trackgcroot.py", lin e 2088, in <module> tracker.process(f, g, filename=fn) File "/«BUILDDIR»/pypy-2.4.0+dfsg/rpython/translator/c/gcc/trackgcroot.py", lin e 1981, in process tracker = parser.process_function(lines, filename) File "/«BUILDDIR»/pypy-2.4.0+dfsg/rpython/translator/c/gcc/trackgcroot.py", lin e 1496, in process_function table = tracker.computegcmaptable(self.verbose) File "/«BUILDDIR»/pypy-2.4.0+dfsg/rpython/translator/c/gcc/trackgcroot.py", lin e 53, in computegcmaptable self.parse_instructions() File "/«BUILDDIR»/pypy-2.4.0+dfsg/rpython/translator/c/gcc/trackgcroot.py", lin e 215, in parse_instructions self.find_missing_visit_method(opname) File "/«BUILDDIR»/pypy-2.4.0+dfsg/rpython/translator/c/gcc/trackgcroot.py", lin e 245, in find_missing_visit_method raise UnrecognizedOperation(opname) __main__.UnrecognizedOperation: cmovnb make[2]: *** [implement_6.gcmap] Error 1 ============================================================================== Looks like gcc has started emitting instructions that it hadn't in the past, and trackgcroot.py got confused. It was easy enough to add support for the missing instructions. --- a/rpython/translator/c/gcc/trackgcroot.py +++ b/rpython/translator/c/gcc/trackgcroot.py @@ -590,7 +590,7 @@ # The various cmov* operations for name in ''' - e ne g ge l le a ae b be p np s ns o no + e ne g ge l le a ae b be nb p np s ns o no '''.split(): locals()['visit_cmov' + name] = binary_insn locals()['visit_cmov' + name + 'l'] = binary_insn @@ -837,6 +837,7 @@ visit_jb = conditional_jump visit_jbe = conditional_jump visit_jp = conditional_jump + visit_jnb = conditional_jump visit_jnp = conditional_jump visit_js = conditional_jump visit_jns = conditional_jump -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org