| Routine | Attributes | Description |
|---|
| _atomic_ | intrinsic, reentrant | Inserts an ATOMIC assembler instruction. |
| _bfld_ | intrinsic, reentrant | Inserts a BFLDL and/or BFLDH assembler instruction. |
| _chkdouble_ | intrinsic, reentrant | Checks the status of a 64-bit floating-point number. |
| _chkfloat_ | intrinsic, reentrant | Checks the status of a 32-bit floating-point number. |
| _crol_ | intrinsic, reentrant | Rotates an unsigned char left a specified number of bits. |
| _cror_ | intrinsic, reentrant | Rotates an unsigned char right a specified number of bits. |
| _einit_ | intrinsic, reentrant | Inserts an EINIT assembler instruction. |
| _endatomic_ | intrinsic, reentrant | Checks the range of the ATOMIC instruction. |
| _idle_ | intrinsic, reentrant | Inserts an IDLE assembler instruction. |
| _irol_ | intrinsic, reentrant | Rotates an unsigned int left a specified number of bits. |
| _iror_ | intrinsic, reentrant | Rotates an unsigned int right a specified number of bits. |
| _lrol_ | intrinsic, reentrant | Rotates an unsigned long left a specified number of bits. |
| _lror_ | intrinsic, reentrant | Rotates an unsigned long right a specified number of bits. |
| _nop_ | intrinsic, reentrant | Inserts a NOP assembler instruction. |
| _pop_ | intrinsic, reentrant | Pops and returns a 16-bit value from the system stack using the POP assembler instruction. |
| _prior_ | intrinsic, reentrant | Uses the PRIOR instruction to calculate the number of single bit shifts required to normalize a 16-bit value. |
| _priord_ | intrinsic, reentrant | Uses the PRIOR instruction to calculate the number of single bit shifts required to normalize a 32-bit value. |
| _pwrdn_ | intrinsic, reentrant | Inserts a PWRDN assembler instruction. |
| _push_ | intrinsic, reentrant | Pushes a 16-bit value onto the system stack using the PUSH assembler instruction. |
| _sof_ | intrinsic, reentrant | Generates the segment-offset value of an address for PEC transfers. |
| _srvwdt_ | intrinsic, reentrant | Inserts a SRVWDT assembler instruction which services the watchdog timer. |
| _testclear_ | intrinsic, reentrant | Inserts a JBC instruction to test the value of a bit for 1 and clear it to 0 in a single, atomic instruction. |
| _testset_ | intrinsic, reentrant | Inserts a JNBS instruction to test the value of a bit for 0 and set it to 1 in a single, atomic instruction. |
| _trap_ | intrinsic, reentrant | Inserts a TRAP or SRST assembler instruction. |
The C166 Compiler supports a number of intrinsic library routines all of which are defined in the intrins.h include file. Code is generated inline for most intrinsic routines, however, some routines are implemented as functions to save code space.