Hi, this is a re-layout of mentioned section in extend.texi.
Purpose is to have a unified layout where the explanation has a farther indentation than the item (function) to be explained. Ok for trunk? Johann gcc/ * doc/invoke.texi (AVR Built-in Functions): Re-layout section.
Index: doc/extend.texi =================================================================== --- doc/extend.texi (revision 250302) +++ doc/extend.texi (working copy) @@ -12748,54 +12748,37 @@ or if not a specific built-in is impleme @code{__builtin_avr_nop} is available the macro @code{__BUILTIN_AVR_NOP} is defined to @code{1} and undefined otherwise. -The following built-in functions map to the respective machine +@table @code + +@item void __builtin_avr_nop (void) +@itemx void __builtin_avr_sei (void) +@itemx void __builtin_avr_cli (void) +@itemx void __builtin_avr_sleep (void) +@itemx void __builtin_avr_wdr (void) +@itemx unsigned char __builtin_avr_swap (unsigned char) +@itemx unsigned int __builtin_avr_fmul (unsigned char, unsigned char) +@itemx int __builtin_avr_fmuls (char, char) +@itemx int __builtin_avr_fmulsu (char, unsigned char) +These built-in functions map to the respective machine instruction, i.e.@: @code{nop}, @code{sei}, @code{cli}, @code{sleep}, @code{wdr}, @code{swap}, @code{fmul}, @code{fmuls} resp. @code{fmulsu}. The three @code{fmul*} built-ins are implemented as library call if no hardware multiplier is available. -@smallexample -void __builtin_avr_nop (void) -void __builtin_avr_sei (void) -void __builtin_avr_cli (void) -void __builtin_avr_sleep (void) -void __builtin_avr_wdr (void) -unsigned char __builtin_avr_swap (unsigned char) -unsigned int __builtin_avr_fmul (unsigned char, unsigned char) -int __builtin_avr_fmuls (char, char) -int __builtin_avr_fmulsu (char, unsigned char) -@end smallexample - -In order to delay execution for a specific number of cycles, GCC -implements -@smallexample -void __builtin_avr_delay_cycles (unsigned long ticks) -@end smallexample - -@noindent -@code{ticks} is the number of ticks to delay execution. Note that this +@item void __builtin_avr_delay_cycles (unsigned long ticks) +Delay execution for @var{ticks} cycles. Note that this built-in does not take into account the effect of interrupts that -might increase delay time. @code{ticks} must be a compile-time +might increase delay time. @var{ticks} must be a compile-time integer constant; delays with a variable number of cycles are not supported. -@smallexample -char __builtin_avr_flash_segment (const __memx void*) -@end smallexample - -@noindent +@item char __builtin_avr_flash_segment (const __memx void*) This built-in takes a byte address to the 24-bit @ref{AVR Named Address Spaces,address space} @code{__memx} and returns the number of the flash segment (the 64 KiB chunk) where the address points to. Counting starts at @code{0}. If the address does not point to flash memory, return @code{-1}. -@smallexample -unsigned char __builtin_avr_insert_bits (unsigned long map, - unsigned char bits, - unsigned char val) -@end smallexample - -@noindent +@item uint8_t __builtin_avr_insert_bits (uint32_t map, uint8_t bits, uint8_t val) Insert bits from @var{bits} into @var{val} and return the resulting value. The nibbles of @var{map} determine how the insertion is performed: Let @var{X} be the @var{n}-th nibble of @var{map} @@ -12840,14 +12823,12 @@ __builtin_avr_insert_bits (0xffff3210, b __builtin_avr_insert_bits (0x01234567, bits, 0) @end smallexample -@smallexample -void __builtin_avr_nops (unsigned count) -@end smallexample - -@noindent -Insert @code{count} @code{NOP} instructions. +@item void __builtin_avr_nops (unsigned count) +Insert @var{count} @code{NOP} instructions. The number of instructions must be a compile-time integer constant. +@end table + @node Blackfin Built-in Functions @subsection Blackfin Built-in Functions