Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 23 Aug 2021 18:38:10 GMT
From:      Mateusz Guzik <mjg@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   git: ebc52eabdcc5 - main - mips: retire bcmp
Message-ID:  <202108231838.17NIcAhM005961@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by mjg:

URL: https://cgit.FreeBSD.org/src/commit/?id=ebc52eabdcc5971fee8eaf7e565cd5d970acbdbc

commit ebc52eabdcc5971fee8eaf7e565cd5d970acbdbc
Author:     Mateusz Guzik <mjg@FreeBSD.org>
AuthorDate: 2021-08-23 16:25:19 +0000
Commit:     Mateusz Guzik <mjg@FreeBSD.org>
CommitDate: 2021-08-23 18:38:04 +0000

    mips: retire bcmp
    
    Unused since ba96f37758412151 ("Use __builtin for various mem* and b* (e.g. bzero)
    routines.")
    
    Sponsored by:   Rubicon Communications, LLC ("Netgate")
---
 sys/mips/mips/support.S | 80 -------------------------------------------------
 1 file changed, 80 deletions(-)

diff --git a/sys/mips/mips/support.S b/sys/mips/mips/support.S
index 13a2d32a156c..4cf1f750fdad 100644
--- a/sys/mips/mips/support.S
+++ b/sys/mips/mips/support.S
@@ -473,86 +473,6 @@ smallclr:
 	nop
 END(bzero)
 
-
-/*
- * bcmp(s1, s2, n)
- */
-LEAF(bcmp)
-	.set	noreorder
-	blt	a2, 16, smallcmp	# is it worth any trouble?
-	xor	v0, a0, a1		# compare low two bits of addresses
-	and	v0, v0, 3
-	PTR_SUBU	a3, zero, a1		# compute # bytes to word align address
-	bne	v0, zero, unalignedcmp	# not possible to align addresses
-	and	a3, a3, 3
-
-	beq	a3, zero, 1f
-	PTR_SUBU	a2, a2, a3		# subtract from remaining count
-	move	v0, v1			# init v0,v1 so unmodified bytes match
-	LWHI	v0, 0(a0)		# read 1, 2, or 3 bytes
-	LWHI	v1, 0(a1)
-	PTR_ADDU	a1, a1, a3
-	bne	v0, v1, nomatch
-	PTR_ADDU	a0, a0, a3
-1:
-	and	a3, a2, ~3		# compute number of whole words left
-	PTR_SUBU	a2, a2, a3		#   which has to be >= (16-3) & ~3
-	PTR_ADDU	a3, a3, a0		# compute ending address
-2:
-	lw	v0, 0(a0)		# compare words
-	lw	v1, 0(a1)
-	PTR_ADDU	a0, a0, 4
-	bne	v0, v1, nomatch
-	PTR_ADDU	a1, a1, 4
-	bne	a0, a3, 2b
-	nop
-	b	smallcmp		# finish remainder
-	nop
-unalignedcmp:
-	beq	a3, zero, 2f
-	PTR_SUBU	a2, a2, a3		# subtract from remaining count
-	PTR_ADDU	a3, a3, a0		# compute ending address
-1:
-	lbu	v0, 0(a0)		# compare bytes until a1 word aligned
-	lbu	v1, 0(a1)
-	PTR_ADDU	a0, a0, 1
-	bne	v0, v1, nomatch
-	PTR_ADDU	a1, a1, 1
-	bne	a0, a3, 1b
-	nop
-2:
-	and	a3, a2, ~3		# compute number of whole words left
-	PTR_SUBU	a2, a2, a3		#   which has to be >= (16-3) & ~3
-	PTR_ADDU	a3, a3, a0		# compute ending address
-3:
-	LWHI	v0, 0(a0)		# compare words a0 unaligned, a1 aligned
-	LWLO	v0, 3(a0)
-	lw	v1, 0(a1)
-	PTR_ADDU	a0, a0, 4
-	bne	v0, v1, nomatch
-	PTR_ADDU	a1, a1, 4
-	bne	a0, a3, 3b
-	nop
-smallcmp:
-	ble	a2, zero, match
-	PTR_ADDU	a3, a2, a0		# compute ending address
-1:
-	lbu	v0, 0(a0)
-	lbu	v1, 0(a1)
-	PTR_ADDU	a0, a0, 1
-	bne	v0, v1, nomatch
-	PTR_ADDU	a1, a1, 1
-	bne	a0, a3, 1b
-	nop
-match:
-	j	ra
-	 move	v0, zero
-nomatch:
-	j	ra
-	li	v0, 1
-END(bcmp)
-
-
 /*
  * bit = ffs(value)
  */



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202108231838.17NIcAhM005961>