Page MenuHomeFreeBSD

D10086.diff
No OneTemporary

D10086.diff

Index: head/contrib/compiler-rt/lib/builtins/README.txt
===================================================================
--- head/contrib/compiler-rt/lib/builtins/README.txt
+++ head/contrib/compiler-rt/lib/builtins/README.txt
@@ -45,6 +45,7 @@
si_int __ctzdi2(di_int a); // count trailing zeros
si_int __ctzti2(ti_int a); // count trailing zeros
+si_int __ffssi2(si_int a); // find least significant 1 bit
si_int __ffsdi2(di_int a); // find least significant 1 bit
si_int __ffsti2(ti_int a); // find least significant 1 bit
Index: head/contrib/compiler-rt/lib/builtins/ffssi2.c
===================================================================
--- head/contrib/compiler-rt/lib/builtins/ffssi2.c
+++ head/contrib/compiler-rt/lib/builtins/ffssi2.c
@@ -0,0 +1,29 @@
+/* ===-- ffssi2.c - Implement __ffssi2 -------------------------------------===
+ *
+ * The LLVM Compiler Infrastructure
+ *
+ * This file is dual licensed under the MIT and the University of Illinois Open
+ * Source Licenses. See LICENSE.TXT for details.
+ *
+ * ===----------------------------------------------------------------------===
+ *
+ * This file implements __ffssi2 for the compiler_rt library.
+ *
+ * ===----------------------------------------------------------------------===
+ */
+
+#include "int_lib.h"
+
+/* Returns: the index of the least significant 1-bit in a, or
+ * the value zero if a is zero. The least significant bit is index one.
+ */
+
+COMPILER_RT_ABI si_int
+__ffssi2(si_int a)
+{
+ if (a == 0)
+ {
+ return 0;
+ }
+ return __builtin_ctz(a) + 1;
+}
Index: head/lib/libcompiler_rt/Makefile.inc
===================================================================
--- head/lib/libcompiler_rt/Makefile.inc
+++ head/lib/libcompiler_rt/Makefile.inc
@@ -38,6 +38,7 @@
SRCF+= enable_execute_stack
SRCF+= eprintf
SRCF+= extendhfsf2
+SRCF+= ffssi2
SRCF+= ffsdi2
SRCF+= ffsti2
SRCF+= fixdfdi

File Metadata

Mime Type
text/plain
Expires
Fri, Feb 14, 9:18 PM (20 h, 49 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
16648070
Default Alt Text
D10086.diff (1 KB)

Event Timeline