aboutsummaryrefslogtreecommitdiff
path: root/src/internal/bytealg
diff options
context:
space:
mode:
authorGuoqi Chen <chenguoqi@loongson.cn>2023-08-30 17:49:55 +0800
committerCherry Mui <cherryyz@google.com>2024-05-13 15:04:25 +0000
commitec711aaaaa31b551a47b3677d05014e8aa60f9ea (patch)
treec45b0fe0e81815706047149a753507a7f03e2e35 /src/internal/bytealg
parent5881ae742fc7eaa9b7d61b4ba37598c42aaa4753 (diff)
downloadgo-ec711aaaaa31b551a47b3677d05014e8aa60f9ea.tar.xz
all: delete loong64 non-register ABI fallback path
Change-Id: If1d3eba9a922ac6f9d78301bb8f07e445c712899 Reviewed-on: https://go-review.googlesource.com/c/go/+/525576 Run-TryBot: Cherry Mui <cherryyz@google.com> Reviewed-by: David Chase <drchase@google.com> Reviewed-by: sophie zhao <zhaoxiaolin@loongson.cn> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Cherry Mui <cherryyz@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Meidan Li <limeidan@loongson.cn> Commit-Queue: abner chenc <chenguoqi@loongson.cn> Run-TryBot: abner chenc <chenguoqi@loongson.cn>
Diffstat (limited to 'src/internal/bytealg')
-rw-r--r--src/internal/bytealg/compare_loong64.s18
-rw-r--r--src/internal/bytealg/equal_loong64.s24
-rw-r--r--src/internal/bytealg/indexbyte_loong64.s22
3 files changed, 0 insertions, 64 deletions
diff --git a/src/internal/bytealg/compare_loong64.s b/src/internal/bytealg/compare_loong64.s
index 311449ab18..df72a1122b 100644
--- a/src/internal/bytealg/compare_loong64.s
+++ b/src/internal/bytealg/compare_loong64.s
@@ -6,13 +6,6 @@
#include "textflag.h"
TEXT ·Compare<ABIInternal>(SB),NOSPLIT,$0-56
-#ifndef GOEXPERIMENT_regabiargs
- MOVV a_base+0(FP), R4
- MOVV a_len+8(FP), R5
- MOVV b_base+24(FP), R6
- MOVV b_len+32(FP), R7
- MOVV $ret+48(FP), R13
-#else
// R4 = a_base
// R5 = a_len
// R6 = a_cap (unused)
@@ -21,17 +14,9 @@ TEXT ·Compare<ABIInternal>(SB),NOSPLIT,$0-56
// R9 = b_cap (unused)
MOVV R7, R6
MOVV R8, R7
-#endif
JMP cmpbody<>(SB)
TEXT runtime·cmpstring<ABIInternal>(SB),NOSPLIT,$0-40
-#ifndef GOEXPERIMENT_regabiargs
- MOVV a_base+0(FP), R4
- MOVV b_base+16(FP), R6
- MOVV a_len+8(FP), R5
- MOVV b_len+24(FP), R7
- MOVV $ret+32(FP), R13
-#endif
// R4 = a_base
// R5 = a_len
// R6 = b_base
@@ -100,7 +85,4 @@ samebytes:
SUBV R9, R8, R4
ret:
-#ifndef GOEXPERIMENT_regabiargs
- MOVV R4, (R13)
-#endif
RET
diff --git a/src/internal/bytealg/equal_loong64.s b/src/internal/bytealg/equal_loong64.s
index a3ad5c1b35..830b09bd2c 100644
--- a/src/internal/bytealg/equal_loong64.s
+++ b/src/internal/bytealg/equal_loong64.s
@@ -9,20 +9,12 @@
// memequal(a, b unsafe.Pointer, size uintptr) bool
TEXT runtime·memequal<ABIInternal>(SB),NOSPLIT|NOFRAME,$0-25
-#ifndef GOEXPERIMENT_regabiargs
- MOVV a+0(FP), R4
- MOVV b+8(FP), R5
- MOVV size+16(FP), R6
-#endif
BEQ R4, R5, eq
ADDV R4, R6, R7
PCALIGN $16
loop:
BNE R4, R7, test
MOVV $1, R4
-#ifndef GOEXPERIMENT_regabiargs
- MOVB R4, ret+24(FP)
-#endif
RET
test:
MOVBU (R4), R9
@@ -32,23 +24,13 @@ test:
BEQ R9, R10, loop
MOVB R0, R4
-#ifndef GOEXPERIMENT_regabiargs
- MOVB R0, ret+24(FP)
-#endif
RET
eq:
MOVV $1, R4
-#ifndef GOEXPERIMENT_regabiargs
- MOVB R4, ret+24(FP)
-#endif
RET
// memequal_varlen(a, b unsafe.Pointer) bool
TEXT runtime·memequal_varlen<ABIInternal>(SB),NOSPLIT,$40-17
-#ifndef GOEXPERIMENT_regabiargs
- MOVV a+0(FP), R4
- MOVV b+8(FP), R5
-#endif
BEQ R4, R5, eq
MOVV 8(REGCTXT), R6 // compiler stores size at offset 8 in the closure
MOVV R4, 8(R3)
@@ -56,13 +38,7 @@ TEXT runtime·memequal_varlen<ABIInternal>(SB),NOSPLIT,$40-17
MOVV R6, 24(R3)
JAL runtime·memequal(SB)
MOVBU 32(R3), R4
-#ifndef GOEXPERIMENT_regabiargs
- MOVB R4, ret+16(FP)
-#endif
RET
eq:
MOVV $1, R4
-#ifndef GOEXPERIMENT_regabiargs
- MOVB R4, ret+16(FP)
-#endif
RET
diff --git a/src/internal/bytealg/indexbyte_loong64.s b/src/internal/bytealg/indexbyte_loong64.s
index 03e0660973..c9591b3cda 100644
--- a/src/internal/bytealg/indexbyte_loong64.s
+++ b/src/internal/bytealg/indexbyte_loong64.s
@@ -6,11 +6,6 @@
#include "textflag.h"
TEXT ·IndexByte<ABIInternal>(SB),NOSPLIT,$0-40
-#ifndef GOEXPERIMENT_regabiargs
- MOVV b_base+0(FP), R4
- MOVV b_len+8(FP), R5
- MOVBU c+24(FP), R7 // byte to find
-#endif
// R4 = b_base
// R5 = b_len
// R6 = b_cap (unused)
@@ -28,24 +23,13 @@ loop:
BNE R7, R8, loop
SUBV R6, R4 // remove base
-#ifndef GOEXPERIMENT_regabiargs
- MOVV R4, ret+32(FP)
-#endif
RET
notfound:
MOVV $-1, R4
-#ifndef GOEXPERIMENT_regabiargs
- MOVV R4, ret+32(FP)
-#endif
RET
TEXT ·IndexByteString<ABIInternal>(SB),NOSPLIT,$0-32
-#ifndef GOEXPERIMENT_regabiargs
- MOVV s_base+0(FP), R4
- MOVV s_len+8(FP), R5
- MOVBU c+16(FP), R6 // byte to find
-#endif
// R4 = s_base
// R5 = s_len
// R6 = byte to find
@@ -61,14 +45,8 @@ loop:
BNE R6, R8, loop
SUBV R7, R4 // remove base
-#ifndef GOEXPERIMENT_regabiargs
- MOVV R4, ret+24(FP)
-#endif
RET
notfound:
MOVV $-1, R4
-#ifndef GOEXPERIMENT_regabiargs
- MOVV R4, ret+24(FP)
-#endif
RET