Author: fijal
Branch: arm64
Changeset: r96942:5c1c80752f24
Date: 2019-07-03 18:31 +0200
http://bitbucket.org/pypy/pypy/changeset/5c1c80752f24/
Log: try to test guard_nonnull_class
diff --git a/rpython/jit/backend/llsupport/test/test_zrpy_gc_direct.py
b/rpython/jit/backend/llsupport/test/test_zrpy_gc_direct.py
--- a/rpython/jit/backend/llsupport/test/test_zrpy_gc_direct.py
+++ b/rpython/jit/backend/llsupport/test/test_zrpy_gc_direct.py
@@ -66,6 +66,14 @@
'faildescr': faildescr,
'vtable_B': vtable_B})
+ loop1a = parse("""
+ [p0]
+ guard_class(p0, ConstInt(vtable_B), descr=faildescr) []
+ finish(descr=finaldescr)
+ """, namespace={'finaldescr': finaldescr,
+ 'faildescr': faildescr,
+ 'vtable_B': vtable_B})
+
loop2 = parse("""
[p0]
guard_gc_type(p0, ConstInt(typeid_B), descr=faildescr) []
@@ -92,10 +100,12 @@
def g():
cpu.setup_once()
token1 = JitCellToken()
+ token1a = JitCellToken()
token2 = JitCellToken()
token3 = JitCellToken()
token4 = JitCellToken()
cpu.compile_loop(loop1.inputargs, loop1.operations, token1)
+ cpu.compile_loop(loop1a.inputargs, loop1a.operations, token1a)
cpu.compile_loop(loop2.inputargs, loop2.operations, token2)
cpu.compile_loop(loop3.inputargs, loop3.operations, token3)
cpu.compile_loop(loop4.inputargs, loop4.operations, token4)
@@ -105,6 +115,11 @@
(token1, rffi.cast(llmemory.GCREF, B())),
(token1, rffi.cast(llmemory.GCREF, C())),
+ (token1a, rffi.cast(llmemory.GCREF, A())),
+ (token1a, lltype.nullptr(llmemory.GCREF.TO)),
+ (token1a, rffi.cast(llmemory.GCREF, B())),
+ (token1a, rffi.cast(llmemory.GCREF, C())),
+
(token2, rffi.cast(llmemory.GCREF, A())),
(token2, rffi.cast(llmemory.GCREF, B())),
(token2, rffi.cast(llmemory.GCREF, C())),
@@ -175,6 +190,11 @@
'match\n'
'fail\n'
+ 'fail\n'
+ 'fail\n'
+ 'match\n'
+ 'fail\n'
+
'fail\n' '0\n'
'match\n' '1\n'
'fail\n' '0\n'
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit