5 typedef long double LLDBL;
18 #define fc_add(a, b) fc_calc((a), (b), FC_ADD)
19 #define fc_sub(a, b) fc_calc((a), (b), FC_SUB)
20 #define fc_mul(a, b) fc_calc((a), (b), FC_MUL)
21 #define fc_div(a, b) fc_calc((a), (b), FC_DIV)
22 #define fc_neg(a) fc_calc((a), NULL, FC_NEG)
24 const void *fc_get_buffer(void);
25 const int fc_get_buffer_length(void);
27 void fc_val_from_str(const char *str, unsigned int len);
28 void fc_val_from_float(LLDBL l);
29 LLDBL fc_val_to_float(const void *val);
31 void fc_get_min(unsigned int num_bits);
32 void fc_get_max(unsigned int num_bits);
33 void fc_get_nan(void);
34 void fc_get_inf(void);
36 void fc_calc(const void *a, const void *b, int opcode);
37 char *fc_print_dec(const void *a, char *buf, int buflen);
38 int fc_comp(const void *a, const void *b);
40 unsigned char fc_sub_bits(const void *val, unsigned num_bit, unsigned byte_ofs);
42 #endif /* _FLTCALC_H_ */