2023-05-11 14:46:51 +03:00
|
|
|
/*
|
|
|
|
* Startup code for multiarch tests.
|
|
|
|
* Reuses the pc-bios/s390-ccw implementation.
|
|
|
|
*
|
|
|
|
* SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
*/
|
|
|
|
#define main main_pre
|
|
|
|
#include "../../../pc-bios/s390-ccw/start.S"
|
|
|
|
#undef main
|
|
|
|
|
2023-06-27 10:47:02 +03:00
|
|
|
.text
|
|
|
|
|
2023-05-11 14:46:51 +03:00
|
|
|
main_pre:
|
|
|
|
aghi %r15,-160 /* reserve stack for C code */
|
|
|
|
brasl %r14,sclp_setup
|
|
|
|
brasl %r14,main
|
|
|
|
larl %r1,success_psw /* check main() return code */
|
|
|
|
ltgr %r2,%r2
|
|
|
|
je 0f
|
|
|
|
larl %r1,failure_psw
|
|
|
|
0:
|
|
|
|
lpswe 0(%r1)
|
|
|
|
|
|
|
|
.align 8
|
|
|
|
success_psw:
|
|
|
|
.quad 0x2000180000000,0xfff /* see is_special_wait_psw() */
|
|
|
|
failure_psw:
|
|
|
|
.quad 0x2000180000000,0 /* disabled wait */
|