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>
36 ALTERNATIVE "nop", ".insn s,0xb2010000,\address", ALT_FACILITY(193)
40 ALTERNATIVE "nop", ".insn s,0xb2000000,\address", ALT_FACILITY(193)
44 ALTERNATIVE_2 "b \lpswe;nopr", \
51 ALTERNATIVE "brcl 0,0", __stringify(mvc __PT_LAST_BREAK(8,\reg),__LC_LAST_BREAK(\lowcore)),\
57 nill %r14,0x10000 - THREAD_SIZE
74 * The TSTMSK macro generates a test-under-mask instruction by
77 * value to calculate the memory offset for the test-under-mask
91 off = \size - \bytepos - 1
96 ALTERNATIVE "nop", ".insn rrf,0xb2e80000,0,0,12,0", ALT_SPEC(82)
100 ALTERNATIVE "nop", ".insn rrf,0xb2e80000,0,0,13,0", ALT_SPEC(82)
104 ALTERNATIVE "TSTMSK \tif_ptr,\tif_mask; jz .+8; .insn rrf,0xb2e80000,0,0,13,0", \
110 ALTERNATIVE "jz .+8; .insn rrf,0xb2e80000,0,0,12,0", \
166 ALTERNATIVE "nop", "lpp _LPP_OFFSET(%r13)", ALT_FACILITY(40)
189 lmg %r0,%r13,0(%r4) # load guest gprs 0-13
215 stmg %r0,%r13,0(%r14) # save guest gprs 0-13
303 j 3f # -> fault in user space
314 jnz 2f # -> enabled, can't be a double fault
316 jnz .Lpgm_svcper # -> single stepped svc
317 2: aghi %r15,-(STACK_FRAME_OVERHEAD + __PT_SIZE)
384 0: aghi %r15,-(STACK_FRAME_OVERHEAD + __PT_SIZE)
434 jo .Lmcck_panic # yes -> rest of mcck code invalid
436 jno .Lmcck_panic # control registers invalid -> panic
504 0: ALTERNATIVE "brcl 0,0", __stringify(lay %r12,__LC_LAST_BREAK_SAVE_AREA(%r13)),\
514 * to allow just one CPU-stopper and prevent concurrent CPUs from
520 cs %r5,%r6,0(%r7) # single CPU-stopper only
532 brc SIGP_CC_BUSY,1b
534 brct %r0,0b
536 brc SIGP_CC_BUSY,3b
537 4: j 4b
541 ALTERNATIVE "nop", "lpp _LPP_OFFSET", ALT_FACILITY(40)
561 jm 1f # negative -> skip source stop
563 brc 10,0b # wait for status stored
568 brc 2,2b
569 3: j 3b
576 aghi %r15,-(STACK_FRAME_OVERHEAD+__PT_SIZE)