Lines Matching +full:alternative +full:- +full:b

4 #include <asm/asm-extable.h>
7 #include <asm/alternative-macros.h>
12 _asm_extable 100b, \lbl
17 ALTERNATIVE("j fallback_scalar_usercopy", "nop", 0, RISCV_ISA_EXT_ZVE32X, CONFIG_RISCV_ISA_V)
45ALTERNATIVE("j fallback_scalar_usercopy_sum_enabled", "nop", 0, RISCV_ISA_EXT_ZVE32X, CONFIG_RISCV…
65 * a0 - start of uncopied dst
66 * a1 - start of uncopied src
67 * a2 - size
68 * t0 - end of uncopied dst
76 li a3, 9*SZREG-1 /* size must >= (word_copy stride + SZREG-1) */
81 * a0 - start of dst
82 * t1 - start of aligned dst
84 addi t1, a0, SZREG-1
85 andi t1, t1, ~(SZREG-1)
89 /* a5 - one byte for copying data */
94 bltu a0, t1, 1b /* t1 - start of aligned dst */
99 * Use shift-copy if src is misaligned.
100 * Use word-copy if both src and dst are aligned because
101 * can not use shift-copy which do not require shifting
103 /* a1 - start of src */
104 andi a3, a1, SZREG-1
111 * a0 - start of aligned dst
112 * a1 - start of aligned src
113 * t0 - end of aligned dst
115 addi t0, t0, -(8*SZREG) /* not to over run */
135 bleu a0, t0, 2b
149 * a0 - start of aligned dst
150 * a1 - start of src
151 * a3 - a1 & mask:(SZREG-1)
152 * t0 - end of uncopied dst
153 * t1 - end of aligned dst
156 andi t1, t0, ~(SZREG-1)
158 andi a1, a1, ~(SZREG-1)
162 * t3 - prev shift
163 * t4 - current shift
175 * a0 - start of aligned dst
176 * a1 - start of aligned src
177 * t1 - end of aligned dst
188 bltu a0, t1, 3b
197 * a0 - start of remaining dst
198 * a1 - start of remaining src
199 * t0 - end of remaining dst
207 bltu a0, t0, 4b /* t0 - end of dst */
224 addi t0, a0, SZREG-1
225 andi t1, a3, ~(SZREG-1)
226 andi t0, t0, ~(SZREG-1)
229 * t0: lowest doubleword-aligned address in target region
230 * t1: highest doubleword-aligned address in target region
237 bltu a0, t1, 1b
249 bltu a0, t0, 4b
250 j 1b
254 bltu a0, a3, 5b
255 j 3b