Defined in rt_sys.h, this is the library exit function. All exits from the library eventually call _sys_exit().
void _sys_exit(int return_code);
This function must not return. You can intercept application exit at a higher level by either:
Implementing the C library function exit() as part of your application. You lose atexit() processing and library shutdown if you do this.
Implementing the function __rt_exit(int n) as part of your application. You lose library shutdown if you do this, but atexit() processing is still performed when exit() is called or main() returns.
The return code is advisory. An implementation might attempt to pass it to the execution environment.