<div><br></div><div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Sun, Jan 26, 2025 at 6:19 PM Anton Blanchard <<a href="mailto:antonb@tenstorrent.com">antonb@tenstorrent.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)">Using __builtin_ffs when zbb is enabled takes __ffs from 26<br>
instructions to 5.<br>
---<br>
sysdeps/riscv/math-use-builtins-ffs.h | 7 +++++++<br>
1 file changed, 7 insertions(+)<br>
create mode 100644 sysdeps/riscv/math-use-builtins-ffs.h<br>
<br>
diff --git a/sysdeps/riscv/math-use-builtins-ffs.h b/sysdeps/riscv/math-use-builtins-ffs.h<br>
new file mode 100644<br>
index 0000000000..836958565b<br>
--- /dev/null<br>
+++ b/sysdeps/riscv/math-use-builtins-ffs.h<br>
@@ -0,0 +1,7 @@<br>
+#if __GNUC_PREREQ (12, 0) && defined __riscv_zbb</blockquote><div dir="auto"><br></div><div dir="auto">Do we need to check for gcc version ?</div><div dir="auto">It would be more portable if we did not have to </div><div dir="auto"><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)" dir="auto"><br>
+#define USE_FFS_BUILTIN 1<br>
+#define USE_FFSLL_BUILTIN 1<br>
+#else<br>
+#define USE_FFS_BUILTIN 0<br>
+#define USE_FFSLL_BUILTIN 0<br>
+#endif<br>
-- <br>
2.34.1<br>
<br>
</blockquote></div></div>