tests/tcg/s390x: Add bal.S

Add a small test to prevent regressions.

Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20221103130011.2670186-1-iii@linux.ibm.com>
Message-Id: <20230220184052.163465-6-richard.henderson@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
This commit is contained in:
Ilya Leoshkevich 2023-02-20 08:40:30 -10:00 committed by Thomas Huth
parent 2b0fa727f7
commit c78d926975
2 changed files with 25 additions and 0 deletions

View file

@ -7,3 +7,4 @@ QEMU_OPTS=-action panic=exit-failure -kernel
-Wl,--build-id=none $< -o $@
TESTS += unaligned-lowcore
TESTS += bal

24
tests/tcg/s390x/bal.S Normal file
View file

@ -0,0 +1,24 @@
.org 0x200 /* lowcore padding */
.globl _start
_start:
lpswe start24_psw
_start24:
lgrl %r0,initial_r0
lgrl %r1,expected_r0
bal %r0,0f
0:
cgrjne %r0,%r1,1f
lpswe success_psw
1:
lpswe failure_psw
.align 8
start24_psw:
.quad 0x160000000000,_start24 /* 24-bit mode, cc = 1, pm = 6 */
initial_r0:
.quad 0x1234567887654321
expected_r0:
.quad 0x1234567896000000 + 0b /* ilc = 2, cc = 1, pm = 6 */
success_psw:
.quad 0x2000000000000,0xfff /* see is_special_wait_psw() */
failure_psw:
.quad 0x2000000000000,0 /* disabled wait */