tests/tcg/s390x: Fix test-svc with clang

clang does not support expressions involving symbols in instructions
like lghi yet, so building hello-s390x-asm.S with it fails.

Move the expression to the literal pool and load it from there.

Fixes: be4a4cb429 ("tests/tcg/s390x: Test single-stepping SVC")
Reported-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Message-Id: <20230707154242.457706-1-iii@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
master
Ilya Leoshkevich 2023-07-07 17:42:21 +02:00 committed by Thomas Huth
parent 6db77bb2c1
commit cb2d7e63d1
2 changed files with 4 additions and 2 deletions

View File

@ -25,7 +25,7 @@ def run_test():
gdb.execute("si")
report("larl\t" in gdb.execute("x/i $pc", False, True), "insn #2")
gdb.execute("si")
report("lghi\t" in gdb.execute("x/i $pc", False, True), "insn #3")
report("lgrl\t" in gdb.execute("x/i $pc", False, True), "insn #3")
gdb.execute("si")
report("svc\t" in gdb.execute("x/i $pc", False, True), "insn #4")
gdb.execute("si")

View File

@ -8,7 +8,7 @@ _start:
/* puts("Hello, World!"); */
lghi %r2,1
larl %r3,foo
lghi %r4,foo_end-foo
lgrl %r4,foo_len
svc 4
/* exit(0); */
@ -18,3 +18,5 @@ svc 1
.align 2
foo: .asciz "Hello, World!\n"
foo_end:
.align 8
foo_len: .quad foo_end-foo