3.13 Floating Point Support

SDCC supports (single precision 4 bytes) floating point numbers; the format is somewhat similar to IEEE, but it is not IEEE; in particular, denormalized floating -point numbers are not supported. The floating point support routines are derived from gcc's floatlib.c and consist of the following routines:

Function Description
_fsadd.c add floating point numbers
_fssub.c subtract floating point numbers
_fsdiv.c divide floating point numbers
_fsmul.c multiply floating point numbers
_fs2uchar.c convert floating point to unsigned char
_fs2schar.c convert floating point to signed char
_fs2uint.c convert floating point to unsigned int
_fs2sint.c convert floating point to signed int
_fs2ulong.c convert floating point to unsigned long
_fs2slong.c convert floating point to signed long
_uchar2fs.c convert unsigned char to floating point
_schar2fs.c convert signed char to floating point
_uint2fs.c convert unsigned int to floating point
_sint2fs.c convert signed int to floating point
_ulong2fs.c convert unsigned long to floating point
_slong2fs.c convert signed long to floating point
_ulonglong2fs.c convert unsigned long long to floating point
_slonglong2fs.c convert singed long long to floating point