Skip to content

Commit 60e251a

Browse files
committed
loongarch: Fixed {sc/dz}amax LASX opt
1 parent a10dde5 commit 60e251a

1 file changed

Lines changed: 20 additions & 5 deletions

File tree

kernel/loongarch64/camax_lasx.S

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -107,15 +107,27 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
107107
#ifdef DOUBLE
108108
xvpickve.d x1, VM0, 0
109109
xvpickve.d x2, VM0, 1
110-
XVFMAX VM0, x1, x2
110+
XVFMAX VX0, x1, x2
111+
xvpickve.d x1, VM0, 2
112+
xvpickve.d x2, VM0, 3
113+
XVFMAX VX1, x1, x2
114+
XVFMAX VM0, VX0, VX1
111115
#else
112116
xvpickve.w x1, VM0, 0
113117
xvpickve.w x2, VM0, 1
114118
xvpickve.w x3, VM0, 2
115119
xvpickve.w x4, VM0, 3
120+
XVFMAX VX0, x1, x2
121+
XVFMAX VX1, x3, x4
122+
XVFMAX VX0, VX0, VX1
123+
xvpickve.w x1, VM0, 4
124+
xvpickve.w x2, VM0, 5
125+
xvpickve.w x3, VM0, 6
126+
xvpickve.w x4, VM0, 7
116127
XVFMAX VM0, x1, x2
117128
XVFMAX VM1, x3, x4
118129
XVFMAX VM0, VM0, VM1
130+
XVFMAX VM0, VM0, VX0
119131
#endif
120132
b .L23
121133
.align 3
@@ -150,7 +162,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
150162
FABS t4, t4
151163
ADD t1, t1, t2
152164
ADD t3, t3, t4
153-
FMAX s1, t1, t3
165+
FMAX s2, t1, t3
154166
LD t1, X, 0 * SIZE
155167
LD t2, X, 1 * SIZE
156168
add.d X, X, INCX
@@ -178,13 +190,16 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
178190
ADD t1, t1, t2
179191
ADD t3, t3, t4
180192
FMAX s4, t1, t3
193+
194+
FMAX s1, s1, s2
195+
FMAX s3, s3, s4
196+
FMAX a0, a0, s3
197+
FMAX a0, a0, s1
181198
blt $r0, I, .L21
182199
.align 3
183200

184201
.L22:
185-
FMAX s1, s1, s2
186-
FMAX s3, s3, s4
187-
FMAX s1, s1, s3
202+
MOV s1, a0
188203
.align 3
189204

190205
.L23: //N<8

0 commit comments

Comments
 (0)