The header file <inavr.h> defines a number of intrinsic functions of general use for the AVR processor. This file is written to be compatible, and in some cases an enhancement of, the corresponding file in version 3 of IAR's Embedded Workbench for AVR (EWAVR) product.

Status register manipulation functions
__bic_SR_register Clear bits in status register
__bis_SR_register Set bits in status register
__disable_interrupt Ddisable interrupts
__enable_interrupt Enable interrupts
__save_interrupt Save interrupt enable flag state
__restore_interrupt Restore interrupt enable flag state
Data manipulation
__swap_nibbles Swap nibbles within a byte
__swap_bytes Swap bytes within a word
Miscellaneous functions
__breakpoint Insert a BREAK instruction into code
__delay_cycles Delay processor for a number of cycles
__no_operation Insert a NOP instruction into code
__insert_opcode Insert an instruction into code
__sleep Insert a SLEEP instruction into code
__watchdog_reset Insert a WDR instruction into code