repo.or.cz
/
musl.git
/
blob
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
log
|
graphiclog1
|
graphiclog2
|
commit
|
commitdiff
|
tree
|
refs
|
edit
|
fork
blame
|
history
|
raw
|
HEAD
bits/syscall.h: add landlock syscalls from linux v5.13
[musl.git]
/
src
/
math
/
frexpf.c
blob
0787097527c22a4be256abb600b9a05061a2ec87
1
#include <math.h>
2
#include <stdint.h>
3
4
float
frexpf
(
float
x
,
int
*
e
)
5
{
6
union
{
float
f
;
uint32_t
i
; }
y
= {
x
};
7
int
ee
=
y
.
i
>>
23
&
0xff
;
8
9
if
(!
ee
) {
10
if
(
x
) {
11
x
=
frexpf
(
x
*
0x1
p
64
,
e
);
12
*
e
-=
64
;
13
}
else
*
e
=
0
;
14
return
x
;
15
}
else if
(
ee
==
0xff
) {
16
return
x
;
17
}
18
19
*
e
=
ee
-
0x7e
;
20
y
.
i
&=
0x807fffff
ul
;
21
y
.
i
|=
0x3f000000
ul
;
22
return
y
.
f
;
23
}