llvm-capstone/libc/docs
lntue bc7a3bd864
[libc][math] Implement powf function correctly rounded to all rounding modes. (#71188)
We compute `pow(x, y)` using the formula
```
  pow(x, y) = x^y = 2^(y * log2(x))
```
We follow similar steps as in `log2f(x)` and `exp2f(x)`, by breaking
down into `hi + mid + lo` parts, in which `hi` parts are computed using
the exponent field directly, `mid` parts will use look-up tables, and
`lo` parts are approximated by polynomials.

We add some speedup for common use-cases:
```
  pow(2, y) = exp2(y)
  pow(10, y) = exp10(y)
  pow(x, 2) = x * x
  pow(x, 1/2) = sqrt(x)
  pow(x, -1/2) = rsqrt(x) - to be added
```
2023-11-06 16:54:25 -05:00
..
_static [libc] Make the sidebar colors have a higher constract in the white background. 2023-01-05 09:43:59 -08:00
dev [libc] Mass replace enclosing namespace (#67032) 2023-09-26 11:45:04 +02:00
gpu [libc] Enable remaining string functions on the GPU (#68346) 2023-10-23 13:16:20 -04:00
math [libc][math] Implement powf function correctly rounded to all rounding modes. (#71188) 2023-11-06 16:54:25 -05:00
build_and_test.rst [libc][bazel] Add bazel targets and unit tests for math functions. 2023-02-03 15:11:20 -05:00
check.rst [libc][cleanup] Docs clean up 2022-10-15 15:29:48 +00:00
CMakeLists.txt
compiler_support.rst [libc] Fix typos in documentation 2023-05-06 11:26:32 -07:00
conf.py [NFC][Py Reformat] Reformat python files in the rest of the dirs 2023-05-25 11:17:05 +02:00
configure.rst [libc] Remove common_libc_tuners.cmake and move options into config.json. (#66226) 2023-09-13 22:17:00 -07:00
contributing.rst Fix typos in documentation 2023-08-13 23:46:44 -07:00
date_and_time.rst [libc][docs] Update implementation status table for Date and Time Functions. 2023-05-31 15:09:06 -04:00
full_cross_build.rst [libc] Add two more recipes to do a cross build. 2023-04-18 12:40:14 -07:00
full_host_build.rst [libc] Add instructions for linux headers 2023-03-15 03:02:16 +00:00
fullbuild_mode.rst [libc] Add document for a recipe to do a full standalone cross-build. 2023-01-05 09:37:21 -08:00
header_gen_scheme.svg
index.rst [libc] Generate configure.rst from the JSON config information. (#65791) 2023-09-08 13:11:09 -07:00
overlay_mode.rst [libc] Fix typos in documentation 2023-04-24 23:31:48 -07:00
porting.rst Fx typos in documentation 2023-08-18 23:36:04 -07:00
README.txt
stdio.rst [libc] Add implementation of getchar 2023-04-14 15:40:05 -07:00
strings.rst [reland][libc] Add bcopy 2022-12-01 10:07:04 +00:00
usage_modes.rst [libc] Add a doc about the libc overlay mode. 2022-10-26 21:53:29 -07:00

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.