summaryrefslogtreecommitdiffstats
path: root/sys/lib/libkern/arch/powerpc64
diff options
context:
space:
mode:
Diffstat (limited to 'sys/lib/libkern/arch/powerpc64')
-rw-r--r--sys/lib/libkern/arch/powerpc64/ffs.S15
1 files changed, 15 insertions, 0 deletions
diff --git a/sys/lib/libkern/arch/powerpc64/ffs.S b/sys/lib/libkern/arch/powerpc64/ffs.S
new file mode 100644
index 00000000000..13fe17fb4f8
--- /dev/null
+++ b/sys/lib/libkern/arch/powerpc64/ffs.S
@@ -0,0 +1,15 @@
+/* $OpenBSD: ffs.S,v 1.1 2020/06/10 20:19:29 naddy Exp $ */
+/*
+ * Written by Christian Weisgerber <naddy@openbsd.org>.
+ * Public domain.
+ */
+
+#include <machine/asm.h>
+
+ENTRY(ffs)
+ neg %r4, %r3
+ and %r3, %r3, %r4
+ cntlzw %r3, %r3
+ subfic %r3, %r3, 32
+ blr
+END(ffs)