| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[libc] Make the sidebar colors have a higher constract in the white background. Reviewed By: jeffbailey Differential Revision: https://reviews.llvm.org/D141039 | 3 年前 | |
[libc][Obvious] Fix docs warning. | 3 年前 | |
[libc] Remove test RPC opcodes from the exported header This patch does the noisy work of removing the test opcodes from the exported interface to an interface that is only visible in libc. The benefit of this is that we both test the exported RPC registration more directly, and we do not need to give this interface to users. I have decided to export any opcode that is not a "core" libc feature as having its MSB set in the opcode. We can think of these as non-libc "extensions". Reviewed By: JonChesterfield Differential Revision: https://reviews.llvm.org/D154848 | 2 年前 | |
[libc][math] Implement erff function correctly rounded to all rounding modes. Implement correctly rounded erff functions. For x >= 4, erff(x) = 1 for FE_TONEAREST or FE_UPWARD, 0x1.ffffep-1 for FE_DOWNWARD or FE_TOWARDZERO. For 0 <= x < 4, we divide into 32 sub-intervals of length 1/8, and use a degree-15 odd polynomial to approximate erff(x) in each sub-interval: erff(x) ~ x * (c0 + c1 * x^2 + c2 * x^4 + ... + c7 * x^14). For x < 0, we can use the same formula as above, since the odd part is factored out. Performance tested with perf.sh tool from the CORE-MATH project on AMD Ryzen 9 5900X: Reciprocal throughput (clock cycles / op) $ ./perf.sh erff --path2 GNU libc version: 2.35 GNU libc release: stable -- CORE-MATH reciprocal throughput -- with -march=native (with FMA instructions) [####################] 100 % Ntrial = 20 ; Min = 11.790 + 0.182 clc/call; Median-Min = 0.154 clc/call; Max = 12.255 clc/call; -- CORE-MATH reciprocal throughput -- with -march=x86-64-v2 (without FMA instructions) [####################] 100 % Ntrial = 20 ; Min = 14.205 + 0.151 clc/call; Median-Min = 0.159 clc/call; Max = 15.893 clc/call; -- System LIBC reciprocal throughput -- [####################] 100 % Ntrial = 20 ; Min = 45.519 + 0.445 clc/call; Median-Min = 0.552 clc/call; Max = 46.345 clc/call; -- LIBC reciprocal throughput -- with -mavx2 -mfma (with FMA instructions) [####################] 100 % Ntrial = 20 ; Min = 9.595 + 0.214 clc/call; Median-Min = 0.220 clc/call; Max = 9.887 clc/call; -- LIBC reciprocal throughput -- with -msse4.2 (without FMA instructions) [####################] 100 % Ntrial = 20 ; Min = 10.223 + 0.190 clc/call; Median-Min = 0.222 clc/call; Max = 10.474 clc/call; and latency (clock cycles / op): $ ./perf.sh erff --path2 GNU libc version: 2.35 GNU libc release: stable -- CORE-MATH latency -- with -march=native (with FMA instructions) [####################] 100 % Ntrial = 20 ; Min = 38.566 + 0.391 clc/call; Median-Min = 0.503 clc/call; Max = 39.170 clc/call; -- CORE-MATH latency -- with -march=x86-64-v2 (without FMA instructions) [####################] 100 % Ntrial = 20 ; Min = 43.223 + 0.667 clc/call; Median-Min = 0.680 clc/call; Max = 43.913 clc/call; -- System LIBC latency -- [####################] 100 % Ntrial = 20 ; Min = 111.613 + 1.267 clc/call; Median-Min = 1.696 clc/call; Max = 113.444 clc/call; -- LIBC latency -- with -mavx2 -mfma (with FMA instructions) [####################] 100 % Ntrial = 20 ; Min = 40.138 + 0.410 clc/call; Median-Min = 0.536 clc/call; Max = 40.729 clc/call; -- LIBC latency -- with -msse4.2 (without FMA instructions) [####################] 100 % Ntrial = 20 ; Min = 44.858 + 0.872 clc/call; Median-Min = 0.814 clc/call; Max = 46.019 clc/call; Reviewed By: michaelrj Differential Revision: https://reviews.llvm.org/D153683 | 3 年前 | |
Move LLVM Proposal to doc directory, create index The LLVM Libc project is no longer just a proposal and should have a webpage tracking the status of the project. This changes puts the pieces into the right place so that the webpage can be created. Reviewed By: sivachandra Differential Revision: https://reviews.llvm.org/D117436 | 4 年前 | |
Move LLVM Proposal to doc directory, create index The LLVM Libc project is no longer just a proposal and should have a webpage tracking the status of the project. This changes puts the pieces into the right place so that the webpage can be created. Reviewed By: sivachandra Differential Revision: https://reviews.llvm.org/D117436 | 4 年前 | |
[libc][bazel] Add bazel targets and unit tests for math functions. Add bazel targets and unit tests for single precision exponential, logarithm, trigonometric, inverse trig, hyperbolic, and inverse hyperbolic functions. Reviewed By: sivachandra Differential Revision: https://reviews.llvm.org/D143275 | 3 年前 | |
[libc][cleanup] Docs clean up * Make consistent heading names * Factor out |check| into an include for reuse * Use it everywhere (No more YES or UTF-8) * Remove unneeded summary from pages. People know why they're there. * Ensure source location headers everywhere. Differential Revision: https://reviews.llvm.org/D136016 | 3 年前 | |
[libc] Fix typos in documentation | 3 年前 | |
[NFC][Py Reformat] Reformat python files in the rest of the dirs This is an ongoing series of commits that are reformatting our Python code. This catches the last of the python files to reformat. Since they where so few I bunched them together. Reformatting is done with black. If you end up having problems merging this commit because you have made changes to a python file, the best way to handle that is to run git checkout --ours <yourfile> and then reformat it with black. If you run into any problems, post to discourse about it and we will try to help. RFC Thread below: https://discourse.llvm.org/t/rfc-document-and-standardize-python-code-style Reviewed By: jhenderson, #libc, Mordante, sivachandra Differential Revision: https://reviews.llvm.org/D150784 | 3 年前 | |
[libc] Fix typos in documentation | 3 年前 | |
[libc][docs] Update implementation status table for Date and Time Functions. Update implementation status table for Date and Time Functions to include different targets. Reviewed By: jeffbailey Differential Revision: https://reviews.llvm.org/D151809 | 3 年前 | |
[libc] Add two more recipes to do a cross build. Reviewed By: jeffbailey Differential Revision: https://reviews.llvm.org/D147350 | 3 年前 | |
[libc] Add instructions for linux headers Reviewed By: sivachandra Differential Revision: https://reviews.llvm.org/D146049 | 3 年前 | |
[libc] Add document for a recipe to do a full standalone cross-build. Reviewed By: jeffbailey Differential Revision: https://reviews.llvm.org/D141037 | 3 年前 | |
[libc] Add a TableGen based header generator. Summary: * The Python header generator has been removed. * Docs giving a highlevel overview of the header gen scheme have been added. Reviewers: phosek, abrachet Subscribers: mgorny, MaskRay, tschuett, libc-commits Tags: #libc-project Differential Revision: https://reviews.llvm.org/D70197 | 6 年前 | |
[libc][Docs] Begin improving documentation for the GPU libc This patch updates some of the documentation for the GPU libc project. There is a lot of work still to be done, but this sets the general outline. Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D149194 | 3 年前 | |
[libc] Fix typos in documentation | 3 年前 | |
[libc] Fix typos in documentation | 3 年前 | |
[libc] Add implementation of getchar added getchar and getchar_unlocked which are just wrappers getc and getc_unlocked respectively. Reviewed By: sivachandra, lntue, michaelrj Differential Revision: https://reviews.llvm.org/D147919 | 3 年前 | |
[reland][libc] Add bcopy Differential Revision: https://reviews.llvm.org/D138994 | 3 年前 | |
[libc] Add a doc about the libc overlay mode. Reviewed By: jeffbailey Differential Revision: https://reviews.llvm.org/D136810 | 3 年前 |
libc Documentation
The libc documentation is written using the Sphinx documentation generator. It is currently tested with Sphinx 1.1.3.
To build the documents into html configure libc with the following cmake options:
- -DLLVM_ENABLE_SPHINX=ON
- -DLIBC_INCLUDE_DOCS=ON
After configuring libc with these options the make rule docs-libc-html
should be available.