mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-06-28 15:28:30 +00:00
Make improvements
- More timspec_*() and timeval_*() APIs have been introduced. - The copyfd() function is now simplified thanks to POSIX rules. - More Cosmo-specific APIs have been moved behind the COSMO define. - The setitimer() polyfill for Windows NT is now much higher quality. - Fixed build error for MODE=aarch64 due to -mstringop-strategy=loop. - This change introduces `make MODE=nox87 toolchain` which makes it possible to build programs using your cosmocc toolchain that don't have legacy fpu instructions. This is useful, for example, if you want to have a ~22kb tinier blink virtual machine.
This commit is contained in:
parent
8dc11afcf6
commit
c3440d040c
132 changed files with 539 additions and 587 deletions
|
@ -20,6 +20,7 @@
|
|||
#include "libc/mem/mem.h"
|
||||
#include "libc/x/x.h"
|
||||
#include "third_party/gdtoa/gdtoa.h"
|
||||
#if !(LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024)
|
||||
|
||||
/**
|
||||
* Converts long double to string the easy way.
|
||||
|
@ -31,9 +32,13 @@ char *xdtoal(long double d) {
|
|||
#if LDBL_MANT_DIG == 113
|
||||
p = xmalloc(64);
|
||||
g_Qfmt_p(p, &d, 16, 64, NIK(2, 0, 0));
|
||||
#else
|
||||
#elif LDBL_MANT_DIG == 64
|
||||
p = xmalloc(32);
|
||||
g_xfmt_p(p, &d, 16, 32, NIK(2, 0, 0));
|
||||
#else
|
||||
#error "unsupported long double"
|
||||
#endif
|
||||
return p;
|
||||
}
|
||||
|
||||
#endif /* long double is long */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue