[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <E1ooSWP-000FDy-5t@rmk-PC.armlinux.org.uk>
Date: Fri, 28 Oct 2022 17:47:53 +0100
From: "Russell King (Oracle)" <rmk+kernel@...linux.org.uk>
To: Yury Norov <yury.norov@...il.com>
Cc: Catalin Marinas <catalin.marinas@....com>,
Mark Rutland <mark.rutland@....com>,
Will Deacon <will@...nel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Linus Torvalds <torvalds@...ux-foundation.org>,
linux-arm-kernel@...ts.infradead.org
Subject: [PATCH 1/5] ARM: findbit: document ARMv5 bit offset calculation
Document the ARMv5 bit offset calculation code.
Signed-off-by: Russell King (Oracle) <rmk+kernel@...linux.org.uk>
---
arch/arm/lib/findbit.S | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/arch/arm/lib/findbit.S b/arch/arm/lib/findbit.S
index 7fd3600db8ef..4c584bc4704b 100644
--- a/arch/arm/lib/findbit.S
+++ b/arch/arm/lib/findbit.S
@@ -172,10 +172,10 @@ ENDPROC(_find_next_bit_be)
.L_found:
#if __LINUX_ARM_ARCH__ >= 5
rsb r0, r3, #0
- and r3, r3, r0
- clz r3, r3
- rsb r3, r3, #31
- add r0, r2, r3
+ and r3, r3, r0 @ mask out lowest bit set
+ clz r3, r3 @ count high zero bits
+ rsb r3, r3, #31 @ offset of first set bit
+ add r0, r2, r3 @ add offset of first set bit
#else
tst r3, #0x0f
addeq r2, r2, #4
--
2.30.2
Powered by blists - more mailing lists