28.2 Built-In Function Descriptions

This section describes the programmer interface to the compiler built-in functions.

The functions described in this section are “built in” and do not require a header file; however, we provide a file <builtins.h> that can be included to provide readable prototypes of these functions.

Also, there are no command-line switches associated with the built-in functions – they are always available. The built-in function names are chosen such that they belong to the compiler’s namespace (they all have the prefix __builtin_), so they will not conflict with function or variable names in the programmer’s namespace.

Table 28-1. Built-in Function List
Built-in Name and Link Built-in Name and Link Built-in Name and Link
__builtin_ACCL, __builtin_ACCH, __builtin_ACCU __builtin_fmax __builtin_sacd
__builtin_add __builtin_fmax_excess __builtin_sacr
__builtin_addab __builtin_fmaxv_excess __builtin_section_begin, __builtin_section_end
__builtin_addr_low, __builtin_addr_high, __builtin_addr __builtin_fmin __builtin_section_size
__builtin_ashiftrt_32_16 __builtin_fmin_excess __builtin_set_isr_state
__builtin_bitcopy __builtin_fminv_excess __builtin_sftac
__builtin_btg __builtin_get_isr_state __builtin_software_breakpoint
__builtin_clr __builtin_lac __builtin_subab
__builtin_clr_prefetch __builtin_lacd __builtin_swap
__builtin_clrwdt __builtin_lshiftrt_32_16 __builtin_swap_byte
__builtin_dataflashoffset __builtin_mac __builtin_tbladdress
__builtin_disable_interrupts __builtin_modsd __builtin_tbloffset
__builtin_disi __builtin_modud __builtin_tblpage
__builtin_divf __builtin_movsac __builtin_tblrdh
__builtin_divmodsd __builtin_mpy __builtin_tblrdl
__builtin_divmodud __builtin_mpyn __builtin_tblwth
__builtin_divsd __builtin_msc __builtin_tblwtl
__builtin_divud __builtin_mulss __builtin_write_CRYOTP
__builtin_dmaoffset __builtin_mulsu __builtin_write_DISICNT
__builtin_dmapage __builtin_mulus __builtin_write_NVM
__builtin_ed __builtin_muluu __builtin_write_NVM_secure
__builtin_edac __builtin_nop __builtin_write_OSCCONH
__builtin_edsoffset __builtin_popcount __builtin_write_OSCCONL
__builtin_edspage __builtin_popcountl __builtin_write_PWMSFR
__builtin_enable_interrupts __builtin_psvoffset __builtin_write_RPCON
__builtin_fbcl __builtin_psvpage __builtin_write_RTCC_WRLOCK
__builtin_flim __builtin_pwrsav __builtin_write_RTCWEN
__builtin_flim_excess __builtin_return_address
__builtin_flimv_excess __builtin_sac