You copied the Doc URL to your clipboard.

Integer and floating-point compiler functions and building an application without the C library

There are several compiler helper functions that the compiler uses to handle operations that do not have a short machine code equivalent. These functions require __rt_raise().

For example, integer divide uses a function that is implicitly called by the compiler if there is no divide instruction available in the target instruction set. (Arm®v7‑R and Armv7‑M architectures use the instructions SDIV and UDIV in Thumb state. Other versions of the Arm architecture also use compiler functions that are implicitly invoked.)

Integer divide, and all the floating-point functions if you use a floating-point mode that involves throwing exceptions, require __rt_raise() to handle math errors. Re-implementing __rt_raise() enables all the math functions, and it avoids having to link in all the signal-handling library code.

Was this page helpful? Yes No