<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/libc/src/math, branch users/mingmingl-llvm/samplefdo-profile-format</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/'/>
<entry>
<title>[libc][math][c++23] Add sqrtbf16 math function (#156654)</title>
<updated>2025-09-06T09:06:02+00:00</updated>
<author>
<name>Krishna Pandey</name>
<email>kpandey81930@gmail.com</email>
</author>
<published>2025-09-06T09:06:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=8dda18f83611803588c470be5e2c3c1203d3ae2b'/>
<id>8dda18f83611803588c470be5e2c3c1203d3ae2b</id>
<content type='text'>
This PR adds sqrtbf16 higher math function for BFloat16 type along with
the tests.

---------

Signed-off-by: Krishna Pandey &lt;kpandey81930@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This PR adds sqrtbf16 higher math function for BFloat16 type along with
the tests.

---------

Signed-off-by: Krishna Pandey &lt;kpandey81930@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[libc][math][c++23] Add fmodbf16 math function (#155575)</title>
<updated>2025-09-03T16:50:07+00:00</updated>
<author>
<name>Krishna Pandey</name>
<email>kpandey81930@gmail.com</email>
</author>
<published>2025-09-03T16:50:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=96b1dfb57fc822ea69bf75a8f0a69eb168776faa'/>
<id>96b1dfb57fc822ea69bf75a8f0a69eb168776faa</id>
<content type='text'>
This PR adds fmodbf16 basic math function for BFloat16 type along with
the tests.

---------

Signed-off-by: Krishna Pandey &lt;kpandey81930@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This PR adds fmodbf16 basic math function for BFloat16 type along with
the tests.

---------

Signed-off-by: Krishna Pandey &lt;kpandey81930@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[libc][math][c23] Implement C23 math function atanpif16 (#150400)</title>
<updated>2025-09-02T19:50:50+00:00</updated>
<author>
<name>Mohamed Emad</name>
<email>hulxxv@gmail.com</email>
</author>
<published>2025-09-02T19:50:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c1d1e0e32fcd8f457a1644a5859d23155ca666ac'/>
<id>c1d1e0e32fcd8f457a1644a5859d23155ca666ac</id>
<content type='text'>
This PR implements `atanpif16(x)` which computes
$\frac{\arctan(x)}{\pi}$ for half-precision floating-point numbers using
polynomial approximation with domain reduction.

## Mathematical Implementation

The implementation uses a 15th-degree Taylor polynomial expansion of
$\frac{\arctan(x)}{\pi}$ that's computed using
[`python-sympy`](https://www.sympy.org/en/index.html) and it's accurate
in $|x| \in [0, 0.5)$:

$$
g(x) = \frac{\arctan(x)}{\pi} \approx 
\begin{aligned}[t]
    &amp; 0.318309886183791x \\
    &amp; - 0.106103295394597x^3 \\
    &amp; + 0.0636619772367581x^5 \\
    &amp; - 0.0454728408833987x^7 \\
    &amp; + 0.0353677651315323x^9 \\
    &amp; - 0.0289372623803446x^{11} \\
    &amp; + 0.0244853758602916x^{13} \\
    &amp; - 0.0212206590789194x^{15} + O(x^{17})
\end{aligned}
$$


--- 

To ensure accuracy across all real inputs, the domain is divided into
three cases with appropriate transformations:

**Case 1: $|x| \leq 0.5$**  
Direct polynomial evaluation: 

$$\text{atanpi}(x) = \text{sign}(x) \cdot g(|x|)$$

**Case 2: $0.5 &lt; |x| \leq 1$**  
Double-angle reduction using:

$$\arctan(x) = 2\arctan\left(\frac{x}{1 + \sqrt{1 + x^2}}\right)$$

$$\text{atanpi}(x) = \text{sign}(x) \cdot 2g\left(\frac{|x|}{1 + \sqrt{1
+ x^2}}\right)$$

**Case 3: $|x| &gt; 1$**  
Reciprocal transformation using 

$$\arctan(x) = \frac{\pi}{2} - \arctan\left(\frac{1}{x}\right) \
\text{for} \ x \gt 0$$

$$\text{atanpi}(x) = \text{sign}(x) \cdot \left(\frac{1}{2} -
g\left(\frac{1}{|x|}\right)\right)$$


Closes #132212</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This PR implements `atanpif16(x)` which computes
$\frac{\arctan(x)}{\pi}$ for half-precision floating-point numbers using
polynomial approximation with domain reduction.

## Mathematical Implementation

The implementation uses a 15th-degree Taylor polynomial expansion of
$\frac{\arctan(x)}{\pi}$ that's computed using
[`python-sympy`](https://www.sympy.org/en/index.html) and it's accurate
in $|x| \in [0, 0.5)$:

$$
g(x) = \frac{\arctan(x)}{\pi} \approx 
\begin{aligned}[t]
    &amp; 0.318309886183791x \\
    &amp; - 0.106103295394597x^3 \\
    &amp; + 0.0636619772367581x^5 \\
    &amp; - 0.0454728408833987x^7 \\
    &amp; + 0.0353677651315323x^9 \\
    &amp; - 0.0289372623803446x^{11} \\
    &amp; + 0.0244853758602916x^{13} \\
    &amp; - 0.0212206590789194x^{15} + O(x^{17})
\end{aligned}
$$


--- 

To ensure accuracy across all real inputs, the domain is divided into
three cases with appropriate transformations:

**Case 1: $|x| \leq 0.5$**  
Direct polynomial evaluation: 

$$\text{atanpi}(x) = \text{sign}(x) \cdot g(|x|)$$

**Case 2: $0.5 &lt; |x| \leq 1$**  
Double-angle reduction using:

$$\arctan(x) = 2\arctan\left(\frac{x}{1 + \sqrt{1 + x^2}}\right)$$

$$\text{atanpi}(x) = \text{sign}(x) \cdot 2g\left(\frac{|x|}{1 + \sqrt{1
+ x^2}}\right)$$

**Case 3: $|x| &gt; 1$**  
Reciprocal transformation using 

$$\arctan(x) = \frac{\pi}{2} - \arctan\left(\frac{1}{x}\right) \
\text{for} \ x \gt 0$$

$$\text{atanpi}(x) = \text{sign}(x) \cdot \left(\frac{1}{2} -
g\left(\frac{1}{|x|}\right)\right)$$


Closes #132212</pre>
</div>
</content>
</entry>
<entry>
<title>[libc][math][c++23] Add scalb{,l}nbf16 math functions (#155569)</title>
<updated>2025-08-28T14:59:03+00:00</updated>
<author>
<name>Krishna Pandey</name>
<email>kpandey81930@gmail.com</email>
</author>
<published>2025-08-28T14:59:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=a985be6fdfe3aa3453b351dcbc61453b6f78fab5'/>
<id>a985be6fdfe3aa3453b351dcbc61453b6f78fab5</id>
<content type='text'>
This PR adds the following basic math functions for BFloat16 type along
with the tests:
- scalbnbf16
- scalblnbf16

---------

Signed-off-by: Krishna Pandey &lt;kpandey81930@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This PR adds the following basic math functions for BFloat16 type along
with the tests:
- scalbnbf16
- scalblnbf16

---------

Signed-off-by: Krishna Pandey &lt;kpandey81930@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[libc][math][c++23] Add totalorder{,mag}bf16 math functions (#155568)</title>
<updated>2025-08-28T14:07:07+00:00</updated>
<author>
<name>Krishna Pandey</name>
<email>kpandey81930@gmail.com</email>
</author>
<published>2025-08-28T14:07:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=691f2315793dbd07a0e4ecbd970284ade4188db3'/>
<id>691f2315793dbd07a0e4ecbd970284ade4188db3</id>
<content type='text'>
This PR adds the following basic math functions for BFloat16 type along
with the tests:
- totalorderbf16
- totalordermagbf16

---------

Signed-off-by: Krishna Pandey &lt;kpandey81930@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This PR adds the following basic math functions for BFloat16 type along
with the tests:
- totalorderbf16
- totalordermagbf16

---------

Signed-off-by: Krishna Pandey &lt;kpandey81930@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[libc][math][c++23] Add {canonicalize,iscanonical,fdim,copysign,issignaling}bf16 math functions (#155567)</title>
<updated>2025-08-27T17:01:17+00:00</updated>
<author>
<name>Krishna Pandey</name>
<email>kpandey81930@gmail.com</email>
</author>
<published>2025-08-27T17:01:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=3d2b2820440170f46fbf8514061b58c3e8dc07bc'/>
<id>3d2b2820440170f46fbf8514061b58c3e8dc07bc</id>
<content type='text'>
This PR adds the following basic math functions for BFloat16 type along
with the tests:
- canonicalizebf16
- iscanonicalbf16
- fdimbf16
- copysignbf16
- issignalingbf16

---------

Signed-off-by: Krishna Pandey &lt;kpandey81930@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This PR adds the following basic math functions for BFloat16 type along
with the tests:
- canonicalizebf16
- iscanonicalbf16
- fdimbf16
- copysignbf16
- issignalingbf16

---------

Signed-off-by: Krishna Pandey &lt;kpandey81930@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[libc][math][c++23] Add {modf,remainder,remquo}bf16 math functions (#154652)</title>
<updated>2025-08-27T06:12:09+00:00</updated>
<author>
<name>Krishna Pandey</name>
<email>kpandey81930@gmail.com</email>
</author>
<published>2025-08-27T06:12:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=f005e2cb7aea4ed74a62bfbb1dce51e063cd52a0'/>
<id>f005e2cb7aea4ed74a62bfbb1dce51e063cd52a0</id>
<content type='text'>
This PR adds the following basic math functions for BFloat16 type along
with the tests:
- modfbf16
- remainderbf16
- remquobf16

---------

Signed-off-by: Krishna Pandey &lt;kpandey81930@gmail.com&gt;
Co-authored-by: OverMighty &lt;its.overmighty@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This PR adds the following basic math functions for BFloat16 type along
with the tests:
- modfbf16
- remainderbf16
- remquobf16

---------

Signed-off-by: Krishna Pandey &lt;kpandey81930@gmail.com&gt;
Co-authored-by: OverMighty &lt;its.overmighty@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[libc][math][c++23] Add {frexp,ilogb,ldexp,llogb,logb}bf16 math functions (#154427)</title>
<updated>2025-08-25T06:16:25+00:00</updated>
<author>
<name>Krishna Pandey</name>
<email>kpandey81930@gmail.com</email>
</author>
<published>2025-08-25T06:16:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c11acac4dca452103c1f4c2a449dd89626845326'/>
<id>c11acac4dca452103c1f4c2a449dd89626845326</id>
<content type='text'>
This PR adds the following basic math functions for BFloat16 type along
with the tests:
- frexpbf16
- ilobbf16
- ldexpbf16
- llogbbf16
- logbbf16

---------

Signed-off-by: Krishna Pandey &lt;kpandey81930@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This PR adds the following basic math functions for BFloat16 type along
with the tests:
- frexpbf16
- ilobbf16
- ldexpbf16
- llogbbf16
- logbbf16

---------

Signed-off-by: Krishna Pandey &lt;kpandey81930@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[libc][math] Do not use float16 basic operations in hypotf16. (#155177)</title>
<updated>2025-08-25T00:01:00+00:00</updated>
<author>
<name>lntue</name>
<email>lntue@google.com</email>
</author>
<published>2025-08-25T00:01:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=af0f85ce0be02f9af028ca8a99248aca11f1b456'/>
<id>af0f85ce0be02f9af028ca8a99248aca11f1b456</id>
<content type='text'>
Compiler runtimes for float16 basic operations might not be correctly
rounded for all rounding modes.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Compiler runtimes for float16 basic operations might not be correctly
rounded for all rounding modes.</pre>
</div>
</content>
</entry>
<entry>
<title>[libc][math][c++23] Add {nearbyint,rint,lrint,llrint,lround,llround}bf16 math functions (#153882)</title>
<updated>2025-08-24T15:21:02+00:00</updated>
<author>
<name>Krishna Pandey</name>
<email>kpandey81930@gmail.com</email>
</author>
<published>2025-08-24T15:21:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=60743358d15f19b89e3ef5daa1b28e7b1bef453e'/>
<id>60743358d15f19b89e3ef5daa1b28e7b1bef453e</id>
<content type='text'>
This PR adds the following basic math functions for BFloat16 type along
with the tests:
- nearbyintbf16
- rintbf16
- lrintbf16
- llrintbf16
- lroundbf16
- llroundbf16

---------

Signed-off-by: Krishna Pandey &lt;kpandey81930@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This PR adds the following basic math functions for BFloat16 type along
with the tests:
- nearbyintbf16
- rintbf16
- lrintbf16
- llrintbf16
- lroundbf16
- llroundbf16

---------

Signed-off-by: Krishna Pandey &lt;kpandey81930@gmail.com&gt;</pre>
</div>
</content>
</entry>
</feed>
