diff options
author | H. Peter Anvin <hpa@zytor.com> | 2006-06-26 12:57:05 -0700 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2006-06-26 12:57:05 -0700 |
commit | 6fbd8fafdcc793135988733996d72b0298afe934 (patch) | |
tree | 2c210b118e1b5f71b89f0c108ea9259a718cc788 | |
parent | 0e5b4a43fa43578cc5268a5bb09ef0e5285871a2 (diff) | |
download | klibc-6fbd8fafdcc793135988733996d72b0298afe934.tar.gz |
[klibc] Remove __clzdi2; it is unused and causes problems.klibc-1.4.7
clzdi2 doesn't have any consumers in klibc as it currently sits
(clzsi2 does, however); furthermore, "bootstrapping" from __builtin_clz
doesn't work on older gcc.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
-rw-r--r-- | usr/klibc/arch/arm/Makefile.inc | 2 | ||||
-rw-r--r-- | usr/klibc/arch/mips/Makefile.inc | 1 | ||||
-rw-r--r-- | usr/klibc/arch/s390/Makefile.inc | 1 | ||||
-rw-r--r-- | usr/klibc/arch/sparc/Makefile.inc | 2 | ||||
-rw-r--r-- | usr/klibc/libgcc/__clzdi2.c | 25 |
5 files changed, 2 insertions, 29 deletions
diff --git a/usr/klibc/arch/arm/Makefile.inc b/usr/klibc/arch/arm/Makefile.inc index 92229183097ec..62065df66651f 100644 --- a/usr/klibc/arch/arm/Makefile.inc +++ b/usr/klibc/arch/arm/Makefile.inc @@ -19,5 +19,5 @@ KLIBCARCHOBJS = \ libgcc/__umoddi3.o \ libgcc/__udivmoddi4.o \ libgcc/__clzsi2.o \ - libgcc/__clzdi2.o \ + diff --git a/usr/klibc/arch/mips/Makefile.inc b/usr/klibc/arch/mips/Makefile.inc index 311bdfccc4ab9..adbfc384d07a6 100644 --- a/usr/klibc/arch/mips/Makefile.inc +++ b/usr/klibc/arch/mips/Makefile.inc @@ -13,7 +13,6 @@ KLIBCARCHOBJS = \ arch/$(KLIBCARCH)/setjmp.o \ arch/$(KLIBCARCH)/syscall.o \ libgcc/__clzsi2.o \ - libgcc/__clzdi2.o \ libgcc/__ashldi3.o \ libgcc/__ashrdi3.o \ libgcc/__lshrdi3.o \ diff --git a/usr/klibc/arch/s390/Makefile.inc b/usr/klibc/arch/s390/Makefile.inc index 7c1cb424a6cc8..8a35d73b70d79 100644 --- a/usr/klibc/arch/s390/Makefile.inc +++ b/usr/klibc/arch/s390/Makefile.inc @@ -14,7 +14,6 @@ KLIBCARCHOBJS = \ arch/$(KLIBCARCHDIR)/mmap.o \ arch/$(KLIBCARCHDIR)/syscall.o \ libgcc/__clzsi2.o \ - libgcc/__clzdi2.o \ libgcc/__ashldi3.o \ libgcc/__ashrdi3.o \ libgcc/__lshrdi3.o \ diff --git a/usr/klibc/arch/sparc/Makefile.inc b/usr/klibc/arch/sparc/Makefile.inc index 208a549484f9d..6fa93275045ae 100644 --- a/usr/klibc/arch/sparc/Makefile.inc +++ b/usr/klibc/arch/sparc/Makefile.inc @@ -27,7 +27,7 @@ KLIBCARCHOBJS = $(m4-targets) \ libgcc/__umoddi3.o \ libgcc/__udivmoddi4.o \ libgcc/__clzsi2.o \ - libgcc/__clzdi2.o + adir := $(obj)/arch/$(KLIBCARCH) diff --git a/usr/klibc/libgcc/__clzdi2.c b/usr/klibc/libgcc/__clzdi2.c deleted file mode 100644 index 13e636c59dbe3..0000000000000 --- a/usr/klibc/libgcc/__clzdi2.c +++ /dev/null @@ -1,25 +0,0 @@ -/* - * libgcc/__clzdi2.c - * - * Returns the leading number of 0 bits in the argument - */ - -#include <stdint.h> -#include <stddef.h> - -uint64_t __clzdi2(uint64_t v) -{ - uint32_t vhi = (uint32_t) (v >> 32); - uint32_t vx; - int dp; - - if (vhi) { - vx = vhi; - dp = 0; - } else { - vx = (uint32_t) v; - dp = 32; - } - - return dp + __builtin_clz(vx); -} |