I realize this patch is gigantic and unreadable by itself because of the churn from moving things around. I've attached an outline of the new section structure (extracted with the help of grep, etc). I confirmed that I hadn't accidentally lost any hunks of text by also extracting all the @cindex entries (see r221614, where I made sure that every attribute had one) and comparing sorted before/after lists.
I'll commit this in a few days if I don't get any complaints that this is a dumb idea ;-) or specific suggestions or a request for more time to review the patch. At this point, though, I don't want to get too bogged down in polishing the text -- I'm trying to focus on fixing the document structure and making it easier to find things.
-Sandra
@section Declaring Attributes of Functions @subsection Common Function Attributes alias ("@var{target}") aligned (@var{alignment}) alloc_align alloc_size always_inline artificial assume_aligned bnd_instrument bnd_legacy cold const constructor destructor constructor (@var{priority}) destructor (@var{priority}) deprecated deprecated (@var{msg}) error ("@var{message}") warning ("@var{message}") externally_visible flatten format (@var{archetype}, @var{string-index}, @var{first-to-check}) format_arg (@var{string-index}) gnu_inline hot ifunc ("@var{resolver}") interrupt interrupt_handler leaf malloc no_icf no_instrument_function no_reorder no_sanitize_address no_address_safety_analysis no_sanitize_thread no_sanitize_undefined no_split_stack noclone noinline nonnull (@var{arg-index}, @dots{}) noreturn nothrow optimize pure returns_nonnull returns_twice section ("@var{section-name}") sentinel stack_protect target (@var{options}) unused used visibility ("@var{visibility_type}") warn_unused_result weak weakref weakref ("@var{target}") @subsection ARC Function Attributes interrupt long_call medium_call short_call @subsection ARM Function Attributes interrupt isr long_call short_call naked pcs @subsection AVR Function Attributes interrupt naked OS_main OS_task signal @subsection Blackfin Function Attributes exception_handler interrupt_handler kspisusp l1_text l2 longcall shortcall nesting nmi_handler saveall @subsection CR16 Function Attributes interrupt @subsection Epiphany Function Attributes disinterrupt forwarder_section interrupt long_call short_call @subsection H8/300 Function Attributes function_vector interrupt_handler saveall @subsection IA-64 Function Attributes syscall_linkage version_id @subsection M32C Function Attributes bank_switch fast_interrupt function_vector interrupt @subsection M32R/D Function Attributes interrupt model (@var{model-name}) @subsection m68k Function Attributes interrupt interrupt_handler interrupt_thread @subsection MCORE Function Attributes naked @subsection MeP Function Attributes disinterrupt interrupt near far vliw @subsection MicroBlaze Function Attributes save_volatiles break_handler @subsection Microsoft Windows Function Attributes dllexport dllimport @subsection MIPS Function Attributes interrupt long_call near far mips16 nomips16 micromips, MIPS nomicromips, MIPS nocompression @subsection MSP430 Function Attributes critical interrupt naked reentrant wakeup @subsection NDS32 Function Attributes exception interrupt naked reset @subsection Nios II Function Attributes target (@var{options}) @subsection PowerPC Function Attributes longcall shortcall target (@var{options}) @subsection RL78 Function Attributes interrupt brk_interrupt naked @subsection RX Function Attributes fast_interrupt interrupt naked vector @subsection S/390 Function Attributes hotpatch (@var{halfwords-before-function-label},@var{halfwords-after-function-label}) @subsection SH Function Attributes function_vector interrupt_handler nosave_low_regs renesas resbank sp_switch trap_exit trapa_handler @subsection SPU Function Attributes naked @subsection Symbian OS Function Attributes @subsection Visium Function Attributes interrupt @subsection x86 Function Attributes cdecl fastcall thiscall ms_abi sysv_abi callee_pop_aggregate_return (@var{number}) ms_hook_prologue regparm (@var{number}) sseregparm force_align_arg_pointer stdcall target (@var{options}) @subsection Xstormy16 Function Attributes interrupt
2015-04-23 Sandra Loosemore <san...@codesourcery.com> gcc/ * doc/extend.texi (Declaring Attributes of Functions): Split into subsections by target. Alphabetize the table of common attributes. Rewrite some of the introductory text to reflect the new structure. Update some cross-references to point to the new subsections. (Attribute Syntax): Put paragraph about "__" naming here. Remove duplicate copies in the discussion of function, label, and type attributes.
attr-doc-1.patch.gz
Description: GNU Zip compressed data