Lines Matching +full:3 +full:- +full:8
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
8 #include <asm/asm-compat.h>
9 #include <asm/feature-fixups.h>
13 /* For big-endian, 0 == most CPUs, 1 == POWER6, 2 == Cell */
23 std r3,-STACKFRAMESIZE+STK_REG(R31)(r1) /* save destination pointer for return value */
31 /* dumb little-endian memcpy that will get replaced at runtime */
32 addi r9,r3,-1
33 addi r4,r4,-1
43 neg r6,r3 # LS 3 bits = # bytes to 8-byte dest bdry
60 addi r3,r3,-16
68 addi r4,r4,-8
72 addi r3,r3,8
73 addi r4,r4,8
75 blt cr1,3f
76 1: ld r9,8(r4)
77 std r8,8(r3)
81 3: std r8,8(r3)
82 beq 3f
86 lwz r9,8(r4)
91 lhz r9,8(r4)
95 2: bf cr7*4+3,3f
96 lbz r9,8(r4)
98 3: ld r3,-STACKFRAMESIZE+STK_REG(R31)(r1) /* return dest pointer */
102 srdi r6,r5,3
103 addi r5,r5,-16
106 sldi r10,r0,3
107 cmpdi cr6,r6,3
115 ld r9,0(r4) # 3+2n loads, 2+2n stores
116 ld r0,8(r4)
123 ld r0,8(r4)
127 0: ld r0,0(r4) # 4+2n loads, 3+2n stores
128 ldu r9,8(r4)
130 addi r3,r3,-8
132 ld r0,8(r4)
140 beq cr6,3f
144 ld r0,8(r4)
145 std r12,8(r3)
155 3: std r12,8(r3)
162 cmpwi cr1,r5,8
166 ld r0,8(r4)
178 2: bf cr7*4+3,3f
179 rotldi r9,r9,8
181 3: ld r3,-STACKFRAMESIZE+STK_REG(R31)(r1) /* return dest pointer */
185 PPC_MTOCRF(0x01,r6) # put #bytes to 8B bdry into cr7
189 bf cr7*4+3,1f
197 2: bf cr7*4+1,3f
200 3: PPC_MTOCRF(0x01,r5)
209 addi r4,r4,8
212 addi r3,r3,8
218 2: bf cr7*4+2,3f
223 3: bf cr7*4+3,4f
226 4: ld r3,-STACKFRAMESIZE+STK_REG(R31)(r1) /* return dest pointer */