SSiva Chandra Reddy[libc] Add dirent.h functions opendir, readdir, closedir and dirfd.
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[libc] Add a simple StringStream class. This class will be used in future changes to construct simple strings. Reviewed By: michaelrj Differential Revision: https://reviews.llvm.org/D130334 | 3 年前 | |
[libc] Implement sinf function that is correctly rounded to all rounding modes. Implement sinf function that is correctly rounded to all rounding modes. - We use a simple range reduction for pi/16 < |x| : Let k = round(x / pi) and y = (x/pi) - k. So k is an integer and -0.5 <= y <= 0.5. Then sin(x) = sin(y*pi + k*pi) = (-1)^(k & 1) * sin(y*pi) ~ (-1)^(k & 1) * y * P(y^2) where y*P(y^2) is a degree-15 minimax polynomial generated by Sollya with: > P = fpminimax(sin(x*pi)/x, [|0, 2, 4, 6, 8, 10, 12, 14|], [|D...|], [0, 0.5]); - Performance benchmark using perf tool from CORE-MATH project (https://gitlab.inria.fr/core-math/core-math/-/tree/master) on Ryzen 1700: Before this patch (not correctly rounded): $ CORE_MATH_PERF_MODE="rdtsc" ./perf.sh sinf CORE-MATH reciprocal throughput : 17.892 System LIBC reciprocal throughput : 25.559 LIBC reciprocal throughput : 29.381 After this patch (correctly rounded): `` $ CORE_MATH_PERF_MODE="rdtsc" ./perf.sh sinf CORE-MATH reciprocal throughput : 17.896 System LIBC reciprocal throughput : 25.740 LIBC reciprocal throughput : 27.872 LIBC reciprocal throughput : 20.012 (with -msse4.2 flag) LIBC reciprocal throughput : 14.244 (with -mfma flag) `` Reviewed By: zimmermann6 Differential Revision: https://reviews.llvm.org/D123154 | 3 年前 | |
[libc] Add dirent.h functions opendir, readdir, closedir and dirfd. Reviewed By: lntue Differential Revision: https://reviews.llvm.org/D130459 | 3 年前 | |
[libc][NFC] Add src.__support.OSUtil targets conditionally. Before this change, they were unconditionally added, irrespective of the availability of the architecture specific pieces. | 3 年前 | |
[libc] Add implementations of pthread_equal and pthread_self. Reviewed By: michaelrj, lntue Differential Revision: https://reviews.llvm.org/D129729 | 3 年前 | |
[libc] Add a convenience class and function for integer to string conversion. Printf's integer converter has been modified to use the new converter. In future, it will be used to implement other parts of the libc. Reviewed By: michaelrj Differential Revision: https://reviews.llvm.org/D130227 | 3 年前 | |
[libc] Automatically add -mfma flag for architectures supporting FMA. Detect if the architecture supports FMA instructions and if the targets depend on fma. Reviewed By: gchatelet Differential Revision: https://reviews.llvm.org/D123615 | 3 年前 | |
[libc] Add holder class for va_lists This class is intended to be used in cases where a class is being used on a va_list. It provides destruction and copy semantics with small overhead. This is intended to be used in printf. Reviewed By: sivachandra, lntue Differential Revision: https://reviews.llvm.org/D123061 | 4 年前 | |
[libc] Guard common macro names Differential revision: https://reviews.llvm.org/D127692 | 3 年前 | |
[libc][NFC] Add explicit casts to ctype functions Reviewed By: sivachandra Differential Revision: https://reviews.llvm.org/D106902 | 4 年前 | |
[libc] apply new lint rules This patch applies the lint rules described in the previous patch. There was also a significant amount of effort put into manually fixing things, since all of the templated functions, or structs defined in /spec, were not updated and had to be handled manually. Reviewed By: sivachandra, lntue Differential Revision: https://reviews.llvm.org/D114302 | 4 年前 | |
[libc] apply new lint rules This patch applies the lint rules described in the previous patch. There was also a significant amount of effort put into manually fixing things, since all of the templated functions, or structs defined in /spec, were not updated and had to be handled manually. Reviewed By: sivachandra, lntue Differential Revision: https://reviews.llvm.org/D114302 | 4 年前 | |
[libc] fix strtofloatingpoint on rare edge case Currently, there are two string parsers that can be used in a call to strtofloatingpoint. There is the main parser used by Clinger's fast path and Eisel-Lemire, and the backup parser used by Simple Decimal Conversion. There was a bug in the backup parser where if the number had more than 800 digits (the size of the SDC buffer) before the decimal point, it would just ignore the digits after the 800th and not count them into the exponent. This patch fixes that issue and adds regression tests. Reviewed By: lntue Differential Revision: https://reviews.llvm.org/D130032 | 3 年前 | |
[libc] apply new lint rules This patch applies the lint rules described in the previous patch. There was also a significant amount of effort put into manually fixing things, since all of the templated functions, or structs defined in /spec, were not updated and had to be handled manually. Reviewed By: sivachandra, lntue Differential Revision: https://reviews.llvm.org/D114302 | 4 年前 | |
[libc] Add a convenience class and function for integer to string conversion. Printf's integer converter has been modified to use the new converter. In future, it will be used to implement other parts of the libc. Reviewed By: michaelrj Differential Revision: https://reviews.llvm.org/D130227 | 3 年前 | |
[libc][Obvious][NFC] A bunch of cosmetic cleanup. * Added missing header guards. * Fixed license header format in a few files. * Renamed files to more suitable names. | 4 年前 | |
[libc] Add explicit casts for gcc | 3 年前 | |
[libc] apply new lint rules This patch applies the lint rules described in the previous patch. There was also a significant amount of effort put into manually fixing things, since all of the templated functions, or structs defined in /spec, were not updated and had to be handled manually. Reviewed By: sivachandra, lntue Differential Revision: https://reviews.llvm.org/D114302 | 4 年前 |