- 18 11月, 2012 5 次提交
-
-
由 rofl0r 提交于
-
由 Rich Felker 提交于
fortunately the memory corruption could not hurt anything, but it prevented clearing the final newline and thus prevented the last path element from working.
-
由 Rich Felker 提交于
this is mostly junk, but a few programs with tape-drive support unconditionally include it, and it might be useful.
-
由 Rich Felker 提交于
priority inheritance is not yet supported, and priority protection probably will not be supported ever unless there's serious demand for it (it's a fairly heavy-weight feature). per-thread cpu clocks would be nice to have, but to my knowledge linux is still not capable of supporting them. glibc fakes them by using the _process_ cpu-time clock and subtracting the thread creation time, which gives seriously incorrect semantics (worse than not supporting the feature at all), so until there's a way to do it right, it will remain as a stub that always fails.
-
由 Rich Felker 提交于
this allows using the dynamic linker as a command to load programs.
-
- 17 11月, 2012 1 次提交
-
-
由 Rich Felker 提交于
incomplete but at least partly working. requires all files to be compiled in the new "secure" plt model, not the old one that put plt code in the data segment. TLS is untested but may work. invoking the dynamic linker explicitly to load a program does not yet handle argv correctly.
-
- 16 11月, 2012 4 次提交
-
-
由 Rich Felker 提交于
-
由 rofl0r 提交于
-
由 Rich Felker 提交于
although a number is reserved for it, this option is not implemented on Linux and does not work. defining it causes some applications to use it, and subsequently break due to its failure.
-
由 Rich Felker 提交于
-
- 15 11月, 2012 7 次提交
-
-
由 Rich Felker 提交于
-
由 Rich Felker 提交于
-
由 Rich Felker 提交于
-
由 Rich Felker 提交于
previous version did not compare at all; it was just a fancy atomic write. untested. further atomic fixes may be needed.
-
由 Rich Felker 提交于
-
由 Rich Felker 提交于
-
由 Rich Felker 提交于
-
- 14 11月, 2012 6 次提交
-
-
由 Szabolcs Nagy 提交于
-
由 Szabolcs Nagy 提交于
keeping only commonly used data in invtrigl
-
由 Szabolcs Nagy 提交于
this also fixes overflow/underflow raising and excess precision issues (as those are handled well in scalbn)
-
由 Szabolcs Nagy 提交于
the volatile hack in STRICT_ASSIGN is only needed if assignment is not respected and excess precision is kept. gcc -fexcess-precision=standard and -ffloat-store both respect assignment and musl use these flags by default. i kept the macro for now so the workaround may be used for bad compilers in the future.
-
由 rofl0r 提交于
-
由 Richard Pennington 提交于
-
- 13 11月, 2012 12 次提交
-
-
由 Szabolcs Nagy 提交于
-
由 Szabolcs Nagy 提交于
old code was correct only if the result was stored (without the excess precision) or musl was compiled with -ffloat-store. now we use STRICT_ASSIGN to work around the issue. (see note 160 in c11 section 6.8.6.4)
-
由 Szabolcs Nagy 提交于
old code was correct only if the result was stored (without the excess precision) or musl was compiled with -ffloat-store. (see note 160 in n1570.pdf section 6.8.6.4)
-
由 Szabolcs Nagy 提交于
old code (return x+x;) returns correct value and raises correct flags only if the result is stored as double (or float)
-
由 Szabolcs Nagy 提交于
-
由 Szabolcs Nagy 提交于
-
由 Szabolcs Nagy 提交于
-
由 Szabolcs Nagy 提交于
-
由 Szabolcs Nagy 提交于
-
由 Szabolcs Nagy 提交于
-
由 Szabolcs Nagy 提交于
-
由 Szabolcs Nagy 提交于
-
- 12 11月, 2012 4 次提交
-
-
由 Rich Felker 提交于
POSIX includes mostly-useless attribute-get functions for each attribute-set function, presumably out of some object-oriented dogmatism. the get functions are not useful with the simple idiomatic usage of attributes. there are of course possible valid uses of them (like writing wrappers for pthread init functions that perform special actions on the presence of certain attributes), but considering how tiny these functions are anyway, little is lost by putting them all in one file, and some build-time cost and archive-file-size benefits are achieved.
-
由 Rich Felker 提交于
also update another newish feature in sysconf, stackaddr
-
由 Rich Felker 提交于
linux's sched_* syscalls actually implement the TPS (thread scheduling) functionality, not the PS (process scheduling) functionality which the sched_* functions are supposed to have. omitting support for the PS option (and having the sched_* interfaces fail with ENOSYS rather than omitting them, since some broken software assumes they exist) seems to be the only conforming way to do this on linux.
-
由 Rich Felker 提交于
this function does not obey the normal calling convention; like a syscall instruction, it's expected not to clobber any registers except the return value. clobbering edx could break callers that were reusing the value cached in edx after the syscall returns.
-
- 10 11月, 2012 1 次提交
-
-
由 Rich Felker 提交于
per interpretation for austin group issue #626, fflush(0) and exit() must block waiting for a lock if another thread has locked a memory stream with flockfile. this adds some otherwise-unnecessary synchronization cost to use of memory streams, but there was already a synchronization cost calling malloc anyway. previously the stream was only added to the open file list in single-threaded programs, so that upon subsequent call to pthread_create, locking could be turned on for the stream.
-