summaryrefslogtreecommitdiff
path: root/libc/stdlib
diff options
context:
space:
mode:
authorEric Andersen <andersen@codepoet.org>2002-08-25 22:04:43 +0000
committerEric Andersen <andersen@codepoet.org>2002-08-25 22:04:43 +0000
commit9a1eb39a6018cdf98de8518a9dd68c67098b6dcb (patch)
tree9064a01a4f45f3c68df901b7182f91debc2da7d7 /libc/stdlib
parente320f52df9f172fa3fee4218029a2f4dd4fefbfd (diff)
Kill the HAS_LONG_LONG option. It really did not make a lot of
sense to exclude it, gcc always supports long long, and we never fully excluded long long anyways (off64_t for example). -Erik
Diffstat (limited to 'libc/stdlib')
-rw-r--r--libc/stdlib/Makefile5
-rw-r--r--libc/stdlib/drand48-iter.c39
-rw-r--r--libc/stdlib/srand48_r.c6
3 files changed, 1 insertions, 49 deletions
diff --git a/libc/stdlib/Makefile b/libc/stdlib/Makefile
index abf0054cc..99a267056 100644
--- a/libc/stdlib/Makefile
+++ b/libc/stdlib/Makefile
@@ -30,10 +30,7 @@ ALL_SUBDIRS = malloc malloc-930716 malloc-simple
MSRC = stdlib.c
MOBJ = abs.o labs.o atoi.o atol.o strtol.o strtoul.o _stdlib_strto_l.o \
qsort.o bsearch.o
-
-ifeq ($(HAS_LONG_LONG),true)
- MOBJ += llabs.o atoll.o strtoll.o strtoull.o _stdlib_strto_ll.o
-endif
+MOBJ += llabs.o atoll.o strtoll.o strtoull.o _stdlib_strto_ll.o
ifeq ($(HAS_WCHAR),true)
MOBJ += mblen.o mbtowc.o wctomb.o mbstowcs.o wcstombs.o \
diff --git a/libc/stdlib/drand48-iter.c b/libc/stdlib/drand48-iter.c
index 3247bafbd..858253b5a 100644
--- a/libc/stdlib/drand48-iter.c
+++ b/libc/stdlib/drand48-iter.c
@@ -27,7 +27,6 @@
struct drand48_data __libc_drand48_data;
-#ifdef __UCLIBC_HAS_LONG_LONG__
int
__drand48_iterate (unsigned short int xsubi[3], struct drand48_data *buffer)
{
@@ -57,41 +56,3 @@ __drand48_iterate (unsigned short int xsubi[3], struct drand48_data *buffer)
return 0;
}
-#else
-int
-__drand48_iterate (unsigned short int xsubi[3], struct drand48_data *buffer)
-{
- uint32_t X0, X1;
- uint32_t result0, result1;
-
- /* Initialize buffer, if not yet done. */
- if (unlikely(!buffer->__init))
- {
- buffer->__a1 = 0x5;
- buffer->__a0 = 0xdeece66d;
- buffer->__c = 0xb;
- buffer->__init = 1;
- }
-
- /* Do the real work. We choose a data type which contains at least
- 48 bits. Because we compute the modulus it does not care how
- many bits really are computed. */
-
- /* X = X1*base32 + X0 */
- X1 = xsubi[2];
- X0 = xsubi[0] | (uint32_t) xsubi[1] << 16;
-
- result0 = buffer->__a0 * X0;
- result1 = (result0 > -buffer->__c ); /* Carry */
- /* If this overflows, the carry is already in result1 */
- result0 += buffer->__c;
-
- result1 += buffer->__a1*X0 + buffer->__a0*X1;
-
- xsubi[0] = result0 & 0xffff;
- xsubi[1] = result0 >> 16;
- xsubi[2] = result1 & 0xffff;
-
- return 0;
-}
-#endif
diff --git a/libc/stdlib/srand48_r.c b/libc/stdlib/srand48_r.c
index c7c510864..c0fa38e90 100644
--- a/libc/stdlib/srand48_r.c
+++ b/libc/stdlib/srand48_r.c
@@ -32,13 +32,7 @@ int srand48_r (seedval, buffer)
buffer->__x[1] = seedval & 0xffffl;
buffer->__x[0] = 0x330e;
-#ifdef __UCLIBC_HAS_LONG_LONG__
buffer->__a = 0x5deece66dull;
-#else
- buffer->__a1 = 0x5;
- buffer->__a0 = 0xdeece66d;
-#endif
-
buffer->__c = 0xb;
buffer->__init = 1;