1*a4f3ed62SAlex Bennée /*
2*a4f3ed62SAlex Bennée  * Common Float Helpers
3*a4f3ed62SAlex Bennée  *
4*a4f3ed62SAlex Bennée  * Copyright (c) 2019 Linaro
5*a4f3ed62SAlex Bennée  *
6*a4f3ed62SAlex Bennée  * SPDX-License-Identifier: GPL-3.0-or-later
7*a4f3ed62SAlex Bennée  */
8*a4f3ed62SAlex Bennée 
9*a4f3ed62SAlex Bennée #include <inttypes.h>
10*a4f3ed62SAlex Bennée 
11*a4f3ed62SAlex Bennée /* Number of constants in each table */
12*a4f3ed62SAlex Bennée int get_num_f16(void);
13*a4f3ed62SAlex Bennée int get_num_f32(void);
14*a4f3ed62SAlex Bennée int get_num_f64(void);
15*a4f3ed62SAlex Bennée 
16*a4f3ed62SAlex Bennée /* Accessor helpers, overflows will automatically wrap */
17*a4f3ed62SAlex Bennée uint16_t get_f16(int i); /* use _Float16 when we can */
18*a4f3ed62SAlex Bennée float    get_f32(int i);
19*a4f3ed62SAlex Bennée double   get_f64(int i);
20*a4f3ed62SAlex Bennée 
21*a4f3ed62SAlex Bennée /* Return format strings, free after use */
22*a4f3ed62SAlex Bennée char * fmt_f16(uint16_t);
23*a4f3ed62SAlex Bennée char * fmt_f32(float);
24*a4f3ed62SAlex Bennée char * fmt_f64(double);
25*a4f3ed62SAlex Bennée /* exception flags */
26*a4f3ed62SAlex Bennée char * fmt_flags(void);
27