Lines Matching +full:alternative +full:- +full:b
1 /* SPDX-License-Identifier: GPL-2.0 */
3 * S390 low-level entry points.
14 #include <asm/asm-extable.h>
15 #include <asm/alternative.h>
22 #include <asm/asm-offsets.h>
27 #include <asm/fpu-insn.h>
30 #include <asm/nospec-insn.h>
37 ALTERNATIVE "nop", ".insn s,0xb2010000,\address", ALT_FACILITY(193)
41 ALTERNATIVE "nop", ".insn s,0xb2000000,\address", ALT_FACILITY(193)
45 ALTERNATIVE_2 "b \lpswe;nopr", \
52 ALTERNATIVE "brcl 0,0", __stringify(mvc __PT_LAST_BREAK(8,\reg),__LC_LAST_BREAK(\lowcore)),\
58 nill %r14,0x10000 - THREAD_SIZE
75 * The TSTMSK macro generates a test-under-mask instruction by
78 * value to calculate the memory offset for the test-under-mask
92 off = \size - \bytepos - 1
97 ALTERNATIVE "nop", ".insn rrf,0xb2e80000,0,0,12,0", ALT_SPEC(82)
101 ALTERNATIVE "nop", ".insn rrf,0xb2e80000,0,0,13,0", ALT_SPEC(82)
105 ALTERNATIVE "TSTMSK \tif_ptr,\tif_mask; jz .+8; .insn rrf,0xb2e80000,0,0,13,0", \
111 ALTERNATIVE "jz .+8; .insn rrf,0xb2e80000,0,0,12,0", \
167 ALTERNATIVE "nop", "lpp _LPP_OFFSET(%r13)", ALT_FACILITY(40)
190 lmg %r0,%r13,0(%r4) # load guest gprs 0-13
216 stmg %r0,%r13,0(%r14) # save guest gprs 0-13
299 jo 3f # -> fault in user space
309 jnz 2f # -> enabled, can't be a double fault
311 jnz .Lpgm_svcper # -> single stepped svc
312 2: aghi %r15,-(STACK_FRAME_OVERHEAD + __PT_SIZE)
378 0: aghi %r15,-(STACK_FRAME_OVERHEAD + __PT_SIZE)
426 jo .Lmcck_panic # yes -> rest of mcck code invalid
428 jno .Lmcck_panic # control registers invalid -> panic
493 0: ALTERNATIVE "brcl 0,0", __stringify(lay %r12,__LC_LAST_BREAK_SAVE_AREA(%r13)),\
503 * to allow just one CPU-stopper and prevent concurrent CPUs from
509 cs %r5,%r6,0(%r7) # single CPU-stopper only
521 brc SIGP_CC_BUSY,1b
523 brct %r0,0b
525 brc SIGP_CC_BUSY,3b
526 4: j 4b
530 ALTERNATIVE "nop", "lpp _LPP_OFFSET", ALT_FACILITY(40)
550 jm 1f # negative -> skip source stop
552 brc 10,0b # wait for status stored
557 brc 2,2b
558 3: j 3b
565 aghi %r15,-(STACK_FRAME_OVERHEAD+__PT_SIZE)