mirror of
https://github.com/refraction-networking/utls.git
synced 2025-04-06 21:47:36 +03:00
Cleans things up quite a bit. There's still a few more, like runtime.cmpstring, which might also be worth fixing. Change-Id: Ide18dd621efc129cc686db223f47fa0b044b5580 Reviewed-on: https://go-review.googlesource.com/c/148578 Run-TryBot: Keith Randall <khr@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Austin Clements <austin@google.com>
34 lines
647 B
ArmAsm
34 lines
647 B
ArmAsm
// 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 ·IndexByte(SB),NOSPLIT,$0-20
|
|
MOVL b_base+0(FP), SI
|
|
MOVL b_len+4(FP), CX
|
|
MOVB c+12(FP), AL
|
|
MOVL SI, DI
|
|
CLD; REPN; SCASB
|
|
JZ 3(PC)
|
|
MOVL $-1, ret+16(FP)
|
|
RET
|
|
SUBL SI, DI
|
|
SUBL $1, DI
|
|
MOVL DI, ret+16(FP)
|
|
RET
|
|
|
|
TEXT ·IndexByteString(SB),NOSPLIT,$0-16
|
|
MOVL s_base+0(FP), SI
|
|
MOVL s_len+4(FP), CX
|
|
MOVB c+8(FP), AL
|
|
MOVL SI, DI
|
|
CLD; REPN; SCASB
|
|
JZ 3(PC)
|
|
MOVL $-1, ret+12(FP)
|
|
RET
|
|
SUBL SI, DI
|
|
SUBL $1, DI
|
|
MOVL DI, ret+12(FP)
|
|
RET
|