summaryrefslogtreecommitdiffstats
path: root/contrib/go/_std_1.25/src/internal/bytealg/compare_wasm.s
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/go/_std_1.25/src/internal/bytealg/compare_wasm.s')
-rw-r--r--contrib/go/_std_1.25/src/internal/bytealg/compare_wasm.s115
1 files changed, 0 insertions, 115 deletions
diff --git a/contrib/go/_std_1.25/src/internal/bytealg/compare_wasm.s b/contrib/go/_std_1.25/src/internal/bytealg/compare_wasm.s
deleted file mode 100644
index dc8fb33cfb3..00000000000
--- a/contrib/go/_std_1.25/src/internal/bytealg/compare_wasm.s
+++ /dev/null
@@ -1,115 +0,0 @@
-// Copyright 2018 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-#include "go_asm.h"
-#include "textflag.h"
-
-TEXT ·Compare(SB), NOSPLIT, $0-56
- Get SP
- I64Load a_base+0(FP)
- I64Load a_len+8(FP)
- I64Load b_base+24(FP)
- I64Load b_len+32(FP)
- Call cmpbody<>(SB)
- I64Store ret+48(FP)
- RET
-
-TEXT runtime·cmpstring(SB), NOSPLIT, $0-40
- Get SP
- I64Load a_base+0(FP)
- I64Load a_len+8(FP)
- I64Load b_base+16(FP)
- I64Load b_len+24(FP)
- Call cmpbody<>(SB)
- I64Store ret+32(FP)
- RET
-
-// params: a, alen, b, blen
-// ret: -1/0/1
-TEXT cmpbody<>(SB), NOSPLIT, $0-0
- // len = min(alen, blen)
- Get R1
- Get R3
- Get R1
- Get R3
- I64LtU
- Select
- Set R4
-
- Get R0
- I32WrapI64
- Get R2
- I32WrapI64
- Get R4
- I32WrapI64
- Call memcmp<>(SB)
- I64ExtendI32S
- Tee R5
-
- I64Eqz
- If
- // check length
- Get R1
- Get R3
- I64Sub
- Set R5
- End
-
- I64Const $0
- I64Const $-1
- I64Const $1
- Get R5
- I64Const $0
- I64LtS
- Select
- Get R5
- I64Eqz
- Select
- Return
-
-// compiled with emscripten
-// params: a, b, len
-// ret: <0/0/>0
-TEXT memcmp<>(SB), NOSPLIT, $0-0
- Get R2
- If $1
- Loop
- Get R0
- I32Load8S $0
- Tee R3
- Get R1
- I32Load8S $0
- Tee R4
- I32Eq
- If
- Get R0
- I32Const $1
- I32Add
- Set R0
- Get R1
- I32Const $1
- I32Add
- Set R1
- I32Const $0
- Get R2
- I32Const $-1
- I32Add
- Tee R2
- I32Eqz
- BrIf $3
- Drop
- Br $1
- End
- End
- Get R3
- I32Const $255
- I32And
- Get R4
- I32Const $255
- I32And
- I32Sub
- Else
- I32Const $0
- End
- Return