ladybird/Userland/Libraries/LibC
Peter Bindels 0a0089fc11 LibC strtod: Reduce incremental error to nearly nothing
Instead of scaling by 1/10th N times, scale 10^N and then divide by
that. Avoid doing this beyond double-infinity. This decreases the
progressive error for numbers outside of integer range immensely. Not
a full 100% fix; there is still a single ULP difference detected by a
Javascript test
2021-07-18 12:45:10 +01:00
..
arch LibC: Use our implementation of crti.o and crtn.o 2021-07-14 13:12:25 +02:00
arpa Userland: Treat inet_pton returning 0 as an error 2021-05-27 22:56:21 +02:00
bits LibC+LibPthread: Add PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP 2021-07-05 23:30:15 +02:00
net LibC: Add definitions/stubs for IPv6 functionality 2021-05-09 21:16:11 +02:00
netinet LibC: Add definitions/stubs for IPv6 functionality 2021-05-09 21:16:11 +02:00
sys LibC: Make makedev()/minor()/major() static 2021-07-09 15:36:50 +02:00
alloca.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
assert.cpp LibC: Use correct macro to disable assert() 2021-07-12 12:26:52 +02:00
assert.h LibC: Use C-style void cast in assert() 2021-07-13 19:02:20 +01:00
byteswap.h Everywhere: Use "the SerenityOS developers." in copyright headers 2021-04-29 00:59:26 +02:00
CMakeLists.txt LibC: Use our implementation of crti.o and crtn.o 2021-07-14 13:12:25 +02:00
crt0.cpp LibC: Use 64-bit stack smash value for 64-bit mode 2021-07-17 01:45:20 +02:00
crt0_shared.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ctype.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ctype.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
cxxabi.cpp LibC: Don't use C++ attribute syntax in C-visible headers 2021-07-03 01:56:31 +04:30
dirent.cpp LibC: Fix struct layout for sys_dirent on x86_64 2021-06-29 20:03:36 +02:00
dirent.h LibC: Implement scandir(...) to enumerate directories. 2021-05-02 13:33:41 +02:00
dlfcn.cpp LibC+LibELF: Implement dladdr() 2021-06-06 22:16:11 +02:00
elf.h Userland: Prefer using ARCH() over __LP64__ 2021-07-13 23:19:33 +02:00
endian.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
errno.h LibC: Don't clear errno on success 2021-05-30 19:37:32 +02:00
errno_numbers.h LibC: Add definition for EDQUOT 2021-05-08 18:11:52 +02:00
fcntl.cpp Userland+LibCore: Update FileWatcher + its users for InodeWatcher 2.0 2021-05-12 22:38:20 +02:00
fcntl.h Kernel+LibC: Add fstatat 2021-05-14 23:32:10 +02:00
fd_set.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
fenv.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
fenv.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
float.h LibC: Don't include fenv.h from float.h 2021-07-08 10:11:00 +02:00
getopt.cpp LibC+Utilities: Add gnu::format attributes 2021-07-08 10:11:00 +02:00
getopt.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
grp.cpp LibC: Add putgrent 2021-07-15 11:16:58 +02:00
grp.h LibC: Fix grp.h includes 2021-07-17 13:00:33 +02:00
iconv.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
inttypes.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
inttypes.h LibC: Don't include AK headers in system headers 2021-07-15 23:51:59 +02:00
ioctl.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
libcinit.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
libgen.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
libgen.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
limits.h Userland: Move HOST_NAME_MAX to limits.h 2021-04-27 23:06:16 +02:00
link.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
link.h Userland: Prefer using ARCH() over __LP64__ 2021-07-13 23:19:33 +02:00
locale.cpp LibC: Let setlocale() pretend that setting the locale succeeded 2021-06-05 10:56:37 +02:00
locale.h LibC: Add definition for LC_MESSAGES 2021-05-08 19:14:21 +02:00
malloc.cpp LibC: Re-run clang-format on malloc.cpp 2021-07-09 14:14:22 +02:00
mallocdefs.h LibC: Increase minimum alignment for malloc() to 16 bytes 2021-07-13 17:31:22 +02:00
memory.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
mntent.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
mntent.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
net.cpp LibC: Add definitions/stubs for IPv6 functionality 2021-05-09 21:16:11 +02:00
netdb.cpp LibC: Replace fprintf(stderr) with warnln() 2021-05-31 17:43:54 +01:00
netdb.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
paths.h Everywhere: Use "the SerenityOS developers." in copyright headers 2021-04-29 00:59:26 +02:00
poll.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
poll.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
pthread_forward.cpp LibC+AK: Remove our custom macros from <assert.h> 2021-06-08 17:29:57 +02:00
pthread_integration.cpp LibC: Only set owner on recursive mutexes 2021-07-06 17:25:34 +02:00
pthread_tls.cpp Toolchain+Userland: Enable TLS for x86_64 2021-07-04 01:07:28 +02:00
pty.cpp LibC: openpty error handling update 2021-05-30 08:41:17 +02:00
pty.h LibC: Remove 'int* aslave' parameter from forkpty() 2021-05-06 13:52:46 +01:00
pwd.cpp LibC: Do not include errno.h inside unistd.h 2021-05-14 22:24:02 +02:00
pwd.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
qsort.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
regex.h LibRegex+LibC: Make re_nsub available to the user 2021-07-13 07:04:06 +02:00
scanf.cpp LibC: Make scanf always copy its va_list 2021-07-17 00:43:34 +02:00
sched.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
sched.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
serenity.cpp Kernel+KeyboardSettings: Remove numlock syscall and implement ioctl 2021-07-07 10:44:20 +02:00
serenity.h LibC+LibPthread: Use FUTEX_PRIVATE_FLAG in more places 2021-07-07 17:08:40 +02:00
setjmp.h LibC: Fix jmp_buf layout on x86_64 2021-07-01 12:05:59 +02:00
shadow.cpp LibC: Allow empty spwd members when writing shadow entries via putspent 2021-05-30 17:42:03 +01:00
shadow.h LibCore: Fix building the library on macOS 2021-05-01 15:56:16 +02:00
signal.cpp LibC: Add stub implementation for sigsuspend 2021-06-09 19:41:23 +01:00
signal.h LibC: Fix typo in signal.h: ol_dset -> old_set 2021-04-26 11:27:13 +02:00
signal_numbers.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
spawn.cpp LibC: Do not include errno.h inside unistd.h 2021-05-14 22:24:02 +02:00
spawn.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ssp.cpp LibC: Use 64-bit stack smash value for 64-bit mode 2021-07-17 01:45:20 +02:00
stat.cpp Kernel+LibC: Add fstatat 2021-05-14 23:32:10 +02:00
stdarg.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
stddef.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
stdint.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
stdio.cpp Everywhere: Fix some alignment issues 2021-07-03 01:56:31 +04:30
stdio.h LibC: Add P_tmpdir macro 2021-06-21 12:21:03 +02:00
stdio_ext.h LibC: Implement __fpurge 2021-05-30 14:56:50 +01:00
stdlib.cpp LibC strtod: Reduce incremental error to nearly nothing 2021-07-18 12:45:10 +01:00
stdlib.h LibC: Implement mblen() 2021-06-04 10:39:41 +02:00
string.cpp LibC: Implement memcpy and memset for x86_64 2021-06-28 22:29:28 +02:00
string.h LibC: Implement strerror_r() 2021-05-25 17:36:02 +02:00
strings.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
strings.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
stubs.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
sysexits.h LibC: Use EX_IOERR instead of EX_IOER 2021-06-10 20:21:08 +01:00
syslog.cpp LibC: Convert StringBuilder::appendf() => AK::Format 2021-05-07 21:12:09 +02:00
syslog.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
termcap.cpp LibC: Make tgetnum() return -1 if capability is not available 2021-06-09 19:41:23 +01:00
termcap.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
termios.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
termios.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
time.cpp Revert "Userland: static vs non-static constexpr variables" 2021-05-21 10:30:52 +01:00
time.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
times.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ulimit.cpp LibC: Add stubs for getrlimit()/setrlimit() 2021-05-08 19:14:21 +02:00
ulimit.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
unistd.cpp Kernel+LibC: Remove sys$donate() 2021-07-05 23:30:15 +02:00
unistd.h Kernel+LibC: Remove sys$donate() 2021-07-05 23:30:15 +02:00
utime.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
utime.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
utmp.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
utsname.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
wchar.cpp LibC: Stub out btowc 2021-05-30 14:56:50 +01:00
wchar.h LibC: Add stubs for wctype and iswctype 2021-05-30 14:56:50 +01:00
wctype.cpp LibC: Add stubs for wctype and iswctype 2021-05-30 14:56:50 +01:00
wctype.h LibC: Add stubs for wctype and iswctype 2021-05-30 14:56:50 +01:00