xref: /openbmc/qemu/tests/tcg/s390x/icm.S (revision 05caa062)
1    .org 0x8e
2program_interruption_code:
3    .org 0x1d0                         /* program new PSW */
4    .quad 0,pgm
5    .org 0x200                         /* lowcore padding */
6    .globl _start
7_start:
8    lgrl %r0,op1
9    icm %r0,10,op2
10    cg %r0,exp
11    jne failure
12    lgrl %r1,bad_addr
13    icm %r0,0,0(%r1)
14failure:
15    lpswe failure_psw
16pgm:
17    chhsi program_interruption_code,5  /* addressing exception? */
18    jne failure
19    lpswe success_psw
20    .align 8
21op1:
22    .quad 0x1234567887654321
23op2:
24    .quad 0x0011223344556677
25exp:
26    .quad 0x1234567800651121
27bad_addr:
28    .quad 0xffffffff00000000
29success_psw:
30    .quad 0x2000000000000,0xfff        /* see is_special_wait_psw() */
31failure_psw:
32    .quad 0x2000000000000,0            /* disabled wait */
33