[pypy-dev] [pypy-commit] pypy arm-backend-2: also remove test_compile_asmlen from runner_test after it was moved to the x86 backend
David Schneider
david.schneider at picle.org
Thu Jan 26 10:45:25 CET 2012
Maciej Fijalkowski wrote:
> Note that this is completely wrong - the test is precisely in
> runner_test because this is an expected JIT backend interface for jit
> hooks to work
>
> On Wed, Jan 18, 2012 at 1:35 PM, bivab <noreply at buildbot.pypy.org> wrote:
>> Author: David Schneider <david.schneider at picle.org>
>> Branch: arm-backend-2
>> Changeset: r51441:839659291f03
>> Date: 2012-01-18 12:33 +0100
>> http://bitbucket.org/pypy/pypy/changeset/839659291f03/
>>
>> Log: also remove test_compile_asmlen from runner_test after it was moved
>> to the x86 backend
>>
>> diff --git a/pypy/jit/backend/test/runner_test.py b/pypy/jit/backend/test/runner_test.py
>> --- a/pypy/jit/backend/test/runner_test.py
>> +++ b/pypy/jit/backend/test/runner_test.py
>> @@ -3188,55 +3188,6 @@
>> res = self.cpu.get_latest_value_int(0)
>> assert res == -10
>>
>> - def test_compile_asmlen(self):
>> - from pypy.jit.backend.llsupport.llmodel import AbstractLLCPU
>> - if not isinstance(self.cpu, AbstractLLCPU):
>> - py.test.skip("pointless test on non-asm")
>> - from pypy.jit.backend.x86.tool.viewcode import machine_code_dump
>> - import ctypes
>> - ops = """
>> - [i2]
>> - i0 = same_as(i2) # but forced to be in a register
>> - label(i0, descr=1)
>> - i1 = int_add(i0, i0)
>> - guard_true(i1, descr=faildesr) [i1]
>> - jump(i1, descr=1)
>> - """
>> - faildescr = BasicFailDescr(2)
>> - loop = parse(ops, self.cpu, namespace=locals())
>> - faildescr = loop.operations[-2].getdescr()
>> - jumpdescr = loop.operations[-1].getdescr()
>> - bridge_ops = """
>> - [i0]
>> - jump(i0, descr=jumpdescr)
>> - """
>> - bridge = parse(bridge_ops, self.cpu, namespace=locals())
>> - looptoken = JitCellToken()
>> - self.cpu.assembler.set_debug(False)
>> - info = self.cpu.compile_loop(loop.inputargs, loop.operations, looptoken)
>> - bridge_info = self.cpu.compile_bridge(faildescr, bridge.inputargs,
>> - bridge.operations,
>> - looptoken)
>> - self.cpu.assembler.set_debug(True) # always on untranslated
>> - assert info.asmlen != 0
>> - cpuname = autodetect_main_model_and_size()
>> - # XXX we have to check the precise assembler, otherwise
>> - # we don't quite know if borders are correct
>> -
>> - def checkops(mc, ops):
>> - assert len(mc) == len(ops)
>> - for i in range(len(mc)):
>> - assert mc[i].split("\t")[-1].startswith(ops[i])
>> -
>> - data = ctypes.string_at(info.asmaddr, info.asmlen)
>> - mc = list(machine_code_dump(data, info.asmaddr, cpuname))
>> - lines = [line for line in mc if line.count('\t') == 2]
>> - checkops(lines, self.add_loop_instructions)
>> - data = ctypes.string_at(bridge_info.asmaddr, bridge_info.asmlen)
>> - mc = list(machine_code_dump(data, bridge_info.asmaddr, cpuname))
>> - lines = [line for line in mc if line.count('\t') == 2]
>> - checkops(lines, self.bridge_loop_instructions)
>> -
>>
>> def test_compile_bridge_with_target(self):
>> # This test creates a loopy piece of code in a bridge, and builds another
>> _______________________________________________
>> pypy-commit mailing list
>> pypy-commit at python.org
>> http://mail.python.org/mailman/listinfo/pypy-commit
> _______________________________________________
> pypy-dev mailing list
> pypy-dev at python.org
> http://mail.python.org/mailman/listinfo/pypy-dev
Sorry, missed that. Refactored the test on the branch so it now works
with both backends.
Regards,
David
More information about the pypy-dev
mailing list