oracular (3) util_parity.3avr.gz

NAME
util_parity - <util/parity.h>: Parity bit generation
SYNOPSIS
Macros #define parity_even_bit(val)
Detailed Description
#include <util/parity.h> This header file contains optimized assembler code to calculate the parity bit for a byte.
Macro Definition Documentation
#define parity_even_bit(val) Value:.PP (__extension__({ \ unsigned char __t; \ __asm__ ( \ "mov __tmp_reg__,%0" "\n\t" \ "swap %0" "\n\t" \ "eor %0,__tmp_reg__" "\n\t" \ "mov __tmp_reg__,%0" "\n\t" \ "lsr %0" "\n\t" \ "lsr %0" "\n\t" \ "eor %0,__tmp_reg__" \ : "=r" (__t) \ : "0" ((unsigned char)(val)) \ : "r0" \ ); \ (((__t + 1) >> 1) & 1); \ })) Returns 1 if val has an odd number of bits set.
Author
Generated automatically by Doxygen for avr-libc from the source code.