|
|
1.1 root 1: This is Info file gcc.info, produced by Makeinfo-1.55 from the input
2: file gcc.texi.
3:
4: This file documents the use and the internals of the GNU compiler.
5:
6: Published by the Free Software Foundation 59 Temple Place - Suite 330
7: Boston, MA 02111-1307 USA
8:
9: Copyright (C) 1988, 1989, 1992, 1993, 1994, 1995 Free Software
10: Foundation, Inc.
11:
12: Permission is granted to make and distribute verbatim copies of this
13: manual provided the copyright notice and this permission notice are
14: preserved on all copies.
15:
16: Permission is granted to copy and distribute modified versions of
17: this manual under the conditions for verbatim copying, provided also
18: that the sections entitled "GNU General Public License," "Funding for
19: Free Software," and "Protect Your Freedom--Fight `Look And Feel'" are
20: included exactly as in the original, and provided that the entire
21: resulting derived work is distributed under the terms of a permission
22: notice identical to this one.
23:
24: Permission is granted to copy and distribute translations of this
25: manual into another language, under the above conditions for modified
26: versions, except that the sections entitled "GNU General Public
27: License," "Funding for Free Software," and "Protect Your Freedom--Fight
28: `Look And Feel'", and this permission notice, may be included in
29: translations approved by the Free Software Foundation instead of in the
30: original English.
31:
32:
33: File: gcc.info, Node: Index, Prev: Fragments, Up: Top
34:
35: Index
36: *****
37:
38: * Menu:
39:
40: * #pragma: Misc.
41: * $: Dollar Signs.
42: * ': Incompatibilities.
43: * (nil): RTL Objects.
44: * //: C++ Comments.
45: * <?: Min and Max.
46: * >?: Min and Max.
47: * ?: side effect: Conditionals.
48: * #pragma implementation, implied: C++ Interface.
49: * #pragma, reason for not using: Function Attributes.
50: * # in template: Output Template.
51: * * in template: Output Statement.
52: * -lgcc, use with -nodefaultlibs: Link Options.
53: * -lgcc, use with -nostdlib: Link Options.
54: * -nodefaultlibs and unresolved references: Link Options.
55: * -nostdlib and unresolved references: Link Options.
56: * ?: extensions: Conditionals.
57: * ?: extensions: Lvalues.
58: * absM2 instruction pattern: Standard Names.
59: * abs and attributes: Expressions.
60: * ACCUMULATE_OUTGOING_ARGS and stack frames: Function Entry.
61: * addM3 instruction pattern: Standard Names.
62: * addr_diff_vec, length of: Insn Lengths.
63: * addr_vec, length of: Insn Lengths.
64: * alias attribute: Function Attributes.
65: * aligned attribute: Type Attributes.
66: * aligned attribute: Variable Attributes.
67: * allocate_stack instruction pattern: Standard Names.
68: * alloca and SunOs: Installation.
69: * alloca vs variable-length arrays: Variable Length.
70: * alloca, for SunOs: Sun Install.
71: * alloca, for Unos: Configurations.
72: * andM3 instruction pattern: Standard Names.
73: * and and attributes: Expressions.
74: * and, canonicalization of: Insn Canonicalizations.
75: * ARG_POINTER_REGNUM and virtual registers: Regs and Memory.
76: * ashiftrt and attributes: Expressions.
77: * ashift and attributes: Expressions.
78: * ashlM3 instruction pattern: Standard Names.
79: * ashrM3 instruction pattern: Standard Names.
80: * asm_operands, RTL sharing: Sharing.
81: * asm_operands, usage: Assembler.
82: * asm expressions: Extended Asm.
83: * bCOND instruction pattern: Standard Names.
84: * bcopy, implicit usage: Library Calls.
85: * BITS_BIG_ENDIAN, effect on sign_extract: Bit Fields.
86: * BLKmode, and function return values: Calls.
87: * bzero, implicit usage: Library Calls.
88: * call_insn and /u: Flags.
89: * call_pop instruction pattern: Standard Names.
90: * call_value_pop instruction pattern: Standard Names.
91: * call_value instruction pattern: Standard Names.
92: * call instruction pattern: Standard Names.
93: * call usage: Calls.
94: * casesi instruction pattern: Standard Names.
95: * cc0, RTL sharing: Sharing.
96: * cmpM instruction pattern: Standard Names.
97: * cmpstrM instruction pattern: Standard Names.
98: * code_label and /i: Flags.
99: * compare, canonicalization of: Insn Canonicalizations.
100: * cond and attributes: Expressions.
101: * constructor function attribute: Function Attributes.
102: * const_double, RTL sharing: Sharing.
103: * const_int and attribute tests: Expressions.
104: * const_int and attributes: Expressions.
105: * const_int, RTL sharing: Sharing.
106: * const_string and attributes: Expressions.
107: * const applied to function: Function Attributes.
108: * const function attribute: Function Attributes.
109: * define_insn example: Example.
110: * destructor function attribute: Function Attributes.
111: * divM3 instruction pattern: Standard Names.
112: * divmodM4 instruction pattern: Standard Names.
113: * div and attributes: Expressions.
114: * EDOM, implicit usage: Library Calls.
115: * ENCODE_SECTION_INFO and address validation: Addressing Modes.
116: * ENCODE_SECTION_INFO usage: Instruction Output.
117: * eq and attributes: Expressions.
118: * errno, implicit usage: Library Calls.
119: * extendMN instruction pattern: Standard Names.
120: * extv instruction pattern: Standard Names.
121: * extzv instruction pattern: Standard Names.
122: * ffsM2 instruction pattern: Standard Names.
123: * FIRST_PARM_OFFSET and virtual registers: Regs and Memory.
124: * fixMN2 instruction pattern: Standard Names.
125: * fixunsMN2 instruction pattern: Standard Names.
126: * fixuns_truncMN2 instruction pattern: Standard Names.
127: * fix_truncMN2 instruction pattern: Standard Names.
128: * floatMN2 instruction pattern: Standard Names.
129: * floatunsMN2 instruction pattern: Standard Names.
130: * float as function value type: Incompatibilities.
131: * format function attribute: Function Attributes.
132: * FRAME_GROWS_DOWNWARD and virtual registers: Regs and Memory.
133: * FRAME_POINTER_REGNUM and virtual registers: Regs and Memory.
134: * fscanf, and constant strings: Incompatibilities.
135: * ftruncM2 instruction pattern: Standard Names.
136: * FUNCTION_EPILOGUE and trampolines: Trampolines.
137: * FUNCTION_PROLOGUE and trampolines: Trampolines.
138: * g++ 1.XX: Invoking G++.
139: * g++ older version: Invoking G++.
140: * g++, separate compiler: Invoking G++.
141: * genflags, crash on Sun 4: Installation Problems.
142: * geu and attributes: Expressions.
143: * ge and attributes: Expressions.
144: * goto in C++: Destructors and Goto.
145: * gprof: Debugging Options.
146: * gtu and attributes: Expressions.
147: * gt and attributes: Expressions.
148: * HImode, in insn: Insns.
149: * if_then_else and attributes: Expressions.
150: * if_then_else usage: Side Effects.
151: * indirect_jump instruction pattern: Standard Names.
152: * inline automatic for C++ member fns: Inline.
153: * insn and /i: Flags.
154: * insn and /s: Flags.
155: * insn and /u: Flags.
156: * insv instruction pattern: Standard Names.
157: * integrated, in insn: Flags.
158: * integrated, in reg: Flags.
159: * in_struct, in code_label: Flags.
160: * in_struct, in insn: Flags.
161: * in_struct, in insn: Flags.
162: * in_struct, in label_ref: Flags.
163: * in_struct, in mem: Flags.
164: * in_struct, in reg: Flags.
165: * in_struct, in subreg: Flags.
166: * iorM3 instruction pattern: Standard Names.
167: * ior and attributes: Expressions.
168: * ior, canonicalization of: Insn Canonicalizations.
169: * label_ref and /s: Flags.
170: * label_ref, RTL sharing: Sharing.
171: * leu and attributes: Expressions.
172: * le and attributes: Expressions.
173: * load_multiple instruction pattern: Standard Names.
174: * long long data types: Long Long.
175: * longjmp and automatic variables: Interface.
176: * longjmp and automatic variables: C Dialect Options.
177: * longjmp incompatibilities: Incompatibilities.
178: * longjmp warnings: Warning Options.
179: * lshiftrt and attributes: Expressions.
180: * lshrM3 instruction pattern: Standard Names.
181: * lt and attributes: Expressions.
182: * main and the exit status: VMS Misc.
183: * match_dup and attributes: Insn Lengths.
184: * match_operand and attributes: Expressions.
185: * maxM3 instruction pattern: Standard Names.
186: * memcpy, implicit usage: Library Calls.
187: * memset, implicit usage: Library Calls.
188: * mem and /s: Flags.
189: * mem and /u: Flags.
190: * mem and /v: Flags.
191: * mem, RTL sharing: Sharing.
192: * minM3 instruction pattern: Standard Names.
193: * minus and attributes: Expressions.
194: * minus, canonicalization of: Insn Canonicalizations.
195: * mktemp, and constant strings: Incompatibilities.
196: * modM3 instruction pattern: Standard Names.
197: * mode attribute: Variable Attributes.
198: * mod and attributes: Expressions.
199: * movMODEcc instruction pattern: Standard Names.
200: * movM instruction pattern: Standard Names.
201: * movstrM instruction pattern: Standard Names.
202: * movstrictM instruction pattern: Standard Names.
203: * mulM3 instruction pattern: Standard Names.
204: * mulhisi3 instruction pattern: Standard Names.
205: * mulqihi3 instruction pattern: Standard Names.
206: * mulsidi3 instruction pattern: Standard Names.
207: * mult and attributes: Expressions.
208: * mult, canonicalization of: Insn Canonicalizations.
209: * MUST_PASS_IN_STACK, and FUNCTION_ARG: Register Arguments.
210: * negM2 instruction pattern: Standard Names.
211: * neg and attributes: Expressions.
212: * neg, canonicalization of: Insn Canonicalizations.
213: * ne and attributes: Expressions.
214: * nocommon attribute: Variable Attributes.
215: * nop instruction pattern: Standard Names.
216: * noreturn function attribute: Function Attributes.
217: * not and attributes: Expressions.
218: * not, canonicalization of: Insn Canonicalizations.
219: * one_cmplM2 instruction pattern: Standard Names.
220: * packed attribute: Variable Attributes.
221: * pc and attributes: Insn Lengths.
222: * pc, RTL sharing: Sharing.
223: * plus and attributes: Expressions.
224: * plus, canonicalization of: Insn Canonicalizations.
225: * prof: Debugging Options.
226: * PUSH_ROUNDING, interaction with STACK_BOUNDARY: Storage Layout.
227: * QImode, in insn: Insns.
228: * qsort, and global register variables: Global Reg Vars.
229: * REG_PARM_STACK_SPACE, and FUNCTION_ARG: Register Arguments.
230: * reg and /i: Flags.
231: * reg and /s: Flags.
232: * reg and /u: Flags.
233: * reg and /v: Flags.
234: * reg, RTL sharing: Sharing.
235: * reload_in instruction pattern: Standard Names.
236: * reload_out instruction pattern: Standard Names.
237: * restore_stack_block instruction pattern: Standard Names.
238: * restore_stack_function instruction pattern: Standard Names.
239: * restore_stack_nonlocal instruction pattern: Standard Names.
240: * return instruction pattern: Standard Names.
241: * return, in C++ function header: Naming Results.
242: * rotlM3 instruction pattern: Standard Names.
243: * rotrM3 instruction pattern: Standard Names.
244: * sCOND instruction pattern: Standard Names.
245: * save_stack_block instruction pattern: Standard Names.
246: * save_stack_function instruction pattern: Standard Names.
247: * save_stack_nonlocal instruction pattern: Standard Names.
248: * scanf, and constant strings: Incompatibilities.
249: * scratch, RTL sharing: Sharing.
250: * section function attribute: Function Attributes.
251: * section variable attribute: Variable Attributes.
252: * setjmp incompatibilities: Incompatibilities.
253: * signature in C++, advantages: C++ Signatures.
254: * sign_extract, canonicalization of: Insn Canonicalizations.
255: * smulM3_highpart instruction pattern: Standard Names.
256: * sqrtM2 instruction pattern: Standard Names.
257: * sscanf, and constant strings: Incompatibilities.
258: * STACK_DYNAMIC_OFFSET and virtual registers: Regs and Memory.
259: * STACK_POINTER_OFFSET and virtual registers: Regs and Memory.
260: * STACK_POINTER_REGNUM and virtual registers: Regs and Memory.
261: * STARTING_FRAME_OFFSET and virtual registers: Regs and Memory.
262: * strlenM instruction pattern: Standard Names.
263: * subM3 instruction pattern: Standard Names.
264: * subreg and /s: Flags.
265: * subreg and /u: Flags.
266: * subreg, in strict_low_part: RTL Declarations.
267: * subreg, special reload handling: Regs and Memory.
268: * SYMBOL_REF_FLAG, in ENCODE_SECTION_INFO: Sections.
269: * symbol_ref and /u: Flags.
270: * symbol_ref and /v: Flags.
271: * symbol_ref, RTL sharing: Sharing.
272: * tablejump instruction pattern: Standard Names.
273: * tcov: Debugging Options.
274: * truncMN instruction pattern: Standard Names.
275: * tstM instruction pattern: Standard Names.
276: * udivM3 instruction pattern: Standard Names.
277: * udivmodM4 instruction pattern: Standard Names.
278: * umaxM3 instruction pattern: Standard Names.
279: * uminM3 instruction pattern: Standard Names.
280: * umodM3 instruction pattern: Standard Names.
281: * umulM3_highpart instruction pattern: Standard Names.
282: * umulhisi3 instruction pattern: Standard Names.
283: * umulqihi3 instruction pattern: Standard Names.
284: * umulsidi3 instruction pattern: Standard Names.
285: * unchanging, in call_insn: Flags.
286: * unchanging, in insn: Flags.
287: * unchanging, in reg and mem: Flags.
288: * unchanging, in subreg: Flags.
289: * unchanging, in symbol_ref: Flags.
290: * untyped_call instruction pattern: Standard Names.
291: * untyped_return instruction pattern: Standard Names.
292: * used, in symbol_ref: Flags.
293: * volatile applied to function: Function Attributes.
294: * volatil, in insn: Flags.
295: * volatil, in mem: Flags.
296: * volatil, in reg: Flags.
297: * volatil, in symbol_ref: Flags.
298: * weak attribute: Function Attributes.
299: * WORDS_BIG_ENDIAN, effect on subreg: Regs and Memory.
300: * xorM3 instruction pattern: Standard Names.
301: * xor, canonicalization of: Insn Canonicalizations.
302: * zero_extendMN instruction pattern: Standard Names.
303: * zero_extract, canonicalization of: Insn Canonicalizations.
304: * libgcc.a: Library Calls.
305: * stdarg.h and register arguments: Register Arguments.
306: * stdarg.h and RT PC: RT Options.
307: * t-TARGET: Target Fragment.
308: * tm.h macros: Target Macros.
309: * varargs.h and RT PC: RT Options.
310: * VAXCRTL: VMS Misc.
311: * x-HOST: Host Fragment.
312: * xm-MACHINE.h: Config.
313: * ! in constraint: Multi-Alternative.
314: * # in constraint: Modifiers.
315: * % in constraint: Modifiers.
316: * % in template: Output Template.
317: * & in constraint: Modifiers.
318: * * in constraint: Modifiers.
319: * + in constraint: Modifiers.
320: * /i in RTL dump: Flags.
321: * /s in RTL dump: Flags.
322: * /s in RTL dump: Flags.
323: * /u in RTL dump: Flags.
324: * /v in RTL dump: Flags.
325: * 0 in constraint: Simple Constraints.
326: * < in constraint: Simple Constraints.
327: * = in constraint: Modifiers.
328: * > in constraint: Simple Constraints.
329: * ? in constraint: Multi-Alternative.
330: * d in constraint: Simple Constraints.
331: * E in constraint: Simple Constraints.
332: * F in constraint: Simple Constraints.
333: * G in constraint: Simple Constraints.
334: * g in constraint: Simple Constraints.
335: * H in constraint: Simple Constraints.
336: * I in constraint: Simple Constraints.
337: * i in constraint: Simple Constraints.
338: * m in constraint: Simple Constraints.
339: * n in constraint: Simple Constraints.
340: * o in constraint: Simple Constraints.
341: * p in constraint: Simple Constraints.
342: * Q, in constraint: Simple Constraints.
343: * r in constraint: Simple Constraints.
344: * store_multiple instruction pattern: Standard Names.
345: * s in constraint: Simple Constraints.
346: * V in constraint: Simple Constraints.
347: * X in constraint: Simple Constraints.
348: * _ in variables in macros: Naming Types.
349: * abort: Portability.
350: * abort: C Dialect Options.
351: * abs: Arithmetic.
352: * abs: C Dialect Options.
353: * absolute value: Arithmetic.
354: * access to operands: Accessors.
355: * accessors: Accessors.
356: * ACCUMULATE_OUTGOING_ARGS: Stack Arguments.
357: * ADDITIONAL_REGISTER_NAMES: Instruction Output.
358: * address: RTL Template.
359: * address constraints: Simple Constraints.
360: * address of a label: Labels as Values.
361: * addressing modes: Addressing Modes.
362: * ADDRESS_COST: Costs.
363: * address_operand: Simple Constraints.
364: * addr_diff_vec: Side Effects.
365: * addr_vec: Side Effects.
366: * ADJUST_COST: Costs.
367: * ADJUST_INSN_LENGTH: Insn Lengths.
368: * aggregates as return values: Aggregate Return.
369: * alignment: Alignment.
370: * Alliant: Interoperation.
371: * alloca: C Dialect Options.
372: * ALLOCATE_TRAMPOLINE: Trampolines.
373: * ALL_REGS: Register Classes.
374: * alternate keywords: Alternate Keywords.
375: * AMD29K options: AMD29K Options.
376: * analysis, data flow: Passes.
377: * and: Arithmetic.
378: * ANSI support: C Dialect Options.
379: * apostrophes: Incompatibilities.
380: * APPLY_RESULT_SIZE: Scalar Return.
381: * ARGS_GROW_DOWNWARD: Frame Layout.
382: * argument passing: Interface.
383: * arguments in frame (88k): M88K Options.
384: * arguments in registers: Register Arguments.
385: * arguments on stack: Stack Arguments.
386: * ARG_POINTER_REGNUM: Frame Registers.
387: * arg_pointer_rtx: Frame Registers.
388: * arithmetic libraries: Interface.
389: * arithmetic shift: Arithmetic.
390: * arithmetic simplifications: Passes.
391: * arithmetic, in RTL: Arithmetic.
392: * ARM options: ARM Options.
393: * arrays of length zero: Zero Length.
394: * arrays of variable length: Variable Length.
395: * arrays, non-lvalue: Subscripting.
396: * ashift: Arithmetic.
397: * ashiftrt: Arithmetic.
398: * ASM_APP_OFF: File Framework.
399: * ASM_APP_ON: File Framework.
400: * ASM_BYTE_OP: Data Output.
401: * ASM_CLOSE_PAREN: Data Output.
402: * ASM_COMMENT_START: File Framework.
403: * ASM_DECLARE_FUNCTION_NAME: Label Output.
404: * ASM_DECLARE_FUNCTION_SIZE: Label Output.
405: * ASM_DECLARE_OBJECT_NAME: Label Output.
406: * ASM_FILE_END: File Framework.
407: * ASM_FILE_START: File Framework.
408: * ASM_FINAL_SPEC: Driver.
409: * ASM_FINISH_DECLARE_OBJECT: Label Output.
410: * ASM_FORMAT_PRIVATE_NAME: Label Output.
411: * asm_fprintf: Instruction Output.
412: * ASM_GENERATE_INTERNAL_LABEL: Label Output.
413: * ASM_GLOBALIZE_LABEL: Label Output.
414: * ASM_IDENTIFY_GCC: File Framework.
415: * asm_input: Side Effects.
416: * asm_noperands: Insns.
417: * ASM_NO_SKIP_IN_TEXT: Alignment Output.
418: * ASM_OPEN_PAREN: Data Output.
419: * ASM_OUTPUT_ADDR_DIFF_ELT: Dispatch Tables.
420: * ASM_OUTPUT_ADDR_VEC_ELT: Dispatch Tables.
421: * ASM_OUTPUT_ALIGN: Alignment Output.
422: * ASM_OUTPUT_ALIGNED_COMMON: Uninitialized Data.
423: * ASM_OUTPUT_ALIGNED_LOCAL: Uninitialized Data.
424: * ASM_OUTPUT_ALIGN_CODE: Alignment Output.
425: * ASM_OUTPUT_ASCII: Data Output.
426: * ASM_OUTPUT_BYTE: Data Output.
427: * ASM_OUTPUT_CASE_END: Dispatch Tables.
428: * ASM_OUTPUT_CASE_LABEL: Dispatch Tables.
429: * ASM_OUTPUT_CHAR: Data Output.
430: * ASM_OUTPUT_COMMON: Uninitialized Data.
431: * ASM_OUTPUT_CONSTRUCTOR: Macros for Initialization.
432: * ASM_OUTPUT_DEF: Label Output.
433: * ASM_OUTPUT_DESTRUCTOR: Macros for Initialization.
434: * ASM_OUTPUT_DOUBLE: Data Output.
435: * ASM_OUTPUT_DOUBLE_INT: Data Output.
436: * ASM_OUTPUT_EXTERNAL: Label Output.
437: * ASM_OUTPUT_EXTERNAL_LIBCALL: Label Output.
438: * ASM_OUTPUT_FLOAT: Data Output.
439: * ASM_OUTPUT_IDENT: File Framework.
440: * ASM_OUTPUT_INT: Data Output.
441: * ASM_OUTPUT_INTERNAL_LABEL: Label Output.
442: * ASM_OUTPUT_LABEL: Label Output.
443: * ASM_OUTPUT_LABELREF: Label Output.
444: * ASM_OUTPUT_LOCAL: Uninitialized Data.
445: * ASM_OUTPUT_LONG_DOUBLE: Data Output.
446: * ASM_OUTPUT_LOOP_ALIGN: Alignment Output.
447: * ASM_OUTPUT_OPCODE: Instruction Output.
448: * ASM_OUTPUT_POOL_PROLOGUE: Data Output.
449: * ASM_OUTPUT_QUADRUPLE_INT: Data Output.
450: * ASM_OUTPUT_REG_POP: Instruction Output.
451: * ASM_OUTPUT_REG_PUSH: Instruction Output.
452: * ASM_OUTPUT_SECTION_NAME: File Framework.
453: * ASM_OUTPUT_SHARED_COMMON: Uninitialized Data.
454: * ASM_OUTPUT_SHARED_LOCAL: Uninitialized Data.
455: * ASM_OUTPUT_SHORT: Data Output.
456: * ASM_OUTPUT_SKIP: Alignment Output.
457: * ASM_OUTPUT_SOURCE_FILENAME: File Framework.
458: * ASM_OUTPUT_SOURCE_LINE: File Framework.
459: * ASM_OUTPUT_SPECIAL_POOL_ENTRY: Data Output.
460: * ASM_SPEC: Driver.
461: * ASM_STABD_OP: DBX Options.
462: * ASM_STABN_OP: DBX Options.
463: * ASM_STABS_OP: DBX Options.
464: * ASM_WEAKEN_LABEL: Label Output.
465: * assembler format: File Framework.
466: * assembler instructions: Extended Asm.
467: * assembler instructions in RTL: Assembler.
468: * assembler names for identifiers: Asm Labels.
469: * assembler syntax, 88k: M88K Options.
470: * ASSEMBLER_DIALECT: Instruction Output.
471: * assemble_name: Label Output.
472: * assembly code, invalid: Bug Criteria.
473: * assigning attribute values to insns: Tagging Insns.
474: * asterisk in template: Output Statement.
475: * atof: Cross-compilation.
476: * attr: Tagging Insns.
477: * attribute expressions: Expressions.
478: * attribute of types: Type Attributes.
479: * attribute of variables: Variable Attributes.
480: * attribute specifications: Attr Example.
481: * attribute specifications example: Attr Example.
482: * attributes, defining: Defining Attributes.
483: * attr_flag: Expressions.
484: * autoincrement addressing, availability: Portability.
485: * autoincrement/decrement addressing: Simple Constraints.
486: * autoincrement/decrement analysis: Passes.
487: * automatic inline for C++ member fns: Inline.
488: * backslash: Output Template.
489: * backtrace for bug reports: Bug Reporting.
490: * barrier: Insns.
491: * BASE_REG_CLASS: Register Classes.
492: * basic blocks: Passes.
493: * bcmp: Config.
494: * BIGGEST_ALIGNMENT: Storage Layout.
495: * BIGGEST_FIELD_ALIGNMENT: Storage Layout.
496: * Bison parser generator: Installation.
497: * bit fields: Bit Fields.
498: * bit shift overflow (88k): M88K Options.
499: * BITFIELD_NBYTES_LIMITED: Storage Layout.
500: * BITS_BIG_ENDIAN: Storage Layout.
501: * BITS_PER_UNIT: Storage Layout.
502: * BITS_PER_WORD: Storage Layout.
503: * bitwise complement: Arithmetic.
504: * bitwise exclusive-or: Arithmetic.
505: * bitwise inclusive-or: Arithmetic.
506: * bitwise logical-and: Arithmetic.
507: * BLKmode: Machine Modes.
508: * BLOCK_PROFILER: Profiling.
509: * BLOCK_PROFILER_CODE: Profiling.
510: * BRANCH_COST: Costs.
511: * break_out_memory_refs: Addressing Modes.
512: * bug criteria: Bug Criteria.
513: * bug report mailing lists: Bug Lists.
514: * bugs: Bugs.
515: * bugs, known: Trouble.
516: * builtin functions: C Dialect Options.
517: * byte writes (29k): AMD29K Options.
518: * BYTES_BIG_ENDIAN: Storage Layout.
519: * byte_mode: Machine Modes.
520: * bzero: Config.
521: * C compilation options: Invoking GCC.
522: * C intermediate output, nonexistent: G++ and GCC.
523: * C language extensions: C Extensions.
524: * C language, traditional: C Dialect Options.
525: * C statements for assembler output: Output Statement.
526: * c++: Invoking G++.
527: * C++: G++ and GCC.
528: * C++ comments: C++ Comments.
529: * C++ compilation options: Invoking GCC.
530: * C++ interface and implementation headers: C++ Interface.
531: * C++ language extensions: C++ Extensions.
532: * C++ member fns, automatically inline: Inline.
533: * C++ misunderstandings: C++ Misunderstandings.
534: * C++ named return value: Naming Results.
535: * C++ options, command line: C++ Dialect Options.
536: * C++ pragmas, effect on inlining: C++ Interface.
537: * C++ signatures: C++ Signatures.
538: * C++ source file suffixes: Invoking G++.
539: * C++ static data, declaring and defining: Static Definitions.
540: * C++ subtype polymorphism: C++ Signatures.
541: * C++ type abstraction: C++ Signatures.
542: * call: Side Effects.
543: * call-clobbered register: Register Basics.
544: * call-saved register: Register Basics.
545: * call-used register: Register Basics.
546: * CALLER_SAVE_PROFITABLE: Caller Saves.
547: * calling conventions: Stack and Calling.
548: * calling functions in RTL: Calls.
549: * call_insn: Insns.
550: * CALL_INSN_FUNCTION_USAGE: Insns.
551: * CALL_USED_REGISTERS: Register Basics.
552: * call_used_regs: Register Basics.
553: * canonicalization of instructions: Insn Canonicalizations.
554: * CANONICALIZE_COMPARISON: Condition Code.
555: * CAN_DEBUG_WITHOUT_FP: Run-time Target.
556: * CAN_ELIMINATE: Elimination.
557: * case labels in initializers: Labeled Elements.
558: * case ranges: Case Ranges.
559: * case sensitivity and VMS: VMS Misc.
560: * CASE_DROPS_THROUGH: Misc.
561: * CASE_VALUES_THRESHOLD: Misc.
562: * CASE_VECTOR_MODE: Misc.
563: * CASE_VECTOR_PC_RELATIVE: Misc.
564: * cast to a union: Cast to Union.
565: * casts as lvalues: Lvalues.
566: * CC: Host Fragment.
567: * cc0: Regs and Memory.
568: * cc0_rtx: Regs and Memory.
569: * CC1PLUS_SPEC: Driver.
570: * CC1_SPEC: Driver.
571: * CCmode: Machine Modes.
572: * cc_status: Condition Code.
573: * CC_STATUS_MDEP: Condition Code.
574: * CC_STATUS_MDEP_INIT: Condition Code.
575: * CDImode: Machine Modes.
576: * change_address: Standard Names.
577: * CHAR_TYPE_SIZE: Type Layout.
578: * CHECK_FLOAT_VALUE: Storage Layout.
579: * CHImode: Machine Modes.
580: * class definitions, register: Register Classes.
581: * class preference constraints: Class Preferences.
582: * classes of RTX codes: Accessors.
583: * CLASS_LIKELY_SPILLED_P: Register Classes.
584: * CLASS_MAX_NREGS: Register Classes.
585: * CLEAR_INSN_CACHE: Trampolines.
586: * CLIB: Host Fragment.
587: * clobber: Side Effects.
588: * code generation conventions: Code Gen Options.
589: * code generation RTL sequences: Expander Definitions.
590: * code motion: Passes.
591: * codes, RTL expression: RTL Objects.
592: * code_label: Insns.
593: * CODE_LABEL_NUMBER: Insns.
594: * COImode: Machine Modes.
595: * COLLECT_EXPORT_LIST: Config.
596: * combiner pass: Regs and Memory.
597: * command options: Invoking GCC.
598: * comments, C++ style: C++ Comments.
599: * common subexpression elimination: Passes.
600: * compare: Arithmetic.
601: * compilation in a separate directory: Other Dir.
602: * compiler bugs, reporting: Bug Reporting.
603: * compiler compared to C++ preprocessor: G++ and GCC.
604: * compiler options, C++: C++ Dialect Options.
605: * compiler passes and files: Passes.
606: * compiler version, specifying: Target Options.
607: * COMPILER_PATH: Environment Variables.
608: * complement, bitwise: Arithmetic.
609: * complex numbers: Complex.
610: * compound expressions as lvalues: Lvalues.
611: * computed gotos: Labels as Values.
612: * computing the length of an insn: Insn Lengths.
613: * COMP_TYPE_ATTRIBUTES: Misc.
614: * cond: Comparisons.
615: * condition code register: Regs and Memory.
616: * condition code status: Condition Code.
617: * condition codes: Comparisons.
618: * conditional expressions as lvalues: Lvalues.
619: * conditional expressions, extensions: Conditionals.
620: * CONDITIONAL_REGISTER_USAGE: Register Basics.
621: * conditions, in patterns: Patterns.
622: * configuration file: Config.
623: * configurations supported by GNU CC: Configurations.
624: * conflicting types: Disappointments.
625: * const0_rtx: Constants.
626: * CONST0_RTX: Constants.
627: * const1_rtx: Constants.
628: * CONST1_RTX: Constants.
629: * CONST2_RTX: Constants.
630: * const2_rtx: Constants.
631: * constant attributes: Constant Attributes.
632: * constant folding: Passes.
633: * constant folding and floating point: Cross-compilation.
634: * constant propagation: Passes.
635: * constants in constraints: Simple Constraints.
636: * CONSTANT_ADDRESS_P: Addressing Modes.
637: * CONSTANT_ALIGNMENT: Storage Layout.
638: * CONSTANT_P: Addressing Modes.
639: * CONSTANT_POOL_ADDRESS_P: Flags.
640: * constm1_rtx: Constants.
641: * constraint modifier characters: Modifiers.
642: * constraint, matching: Simple Constraints.
643: * constraints: Constraints.
644: * constraints, machine specific: Machine Constraints.
645: * constructing calls: Constructing Calls.
646: * constructor expressions: Constructors.
647: * constructors vs goto: Destructors and Goto.
648: * constructors, automatic calls: Collect2.
649: * constructors, output of: Initialization.
650: * CONST_CALL_P: Flags.
651: * CONST_COSTS: Costs.
652: * const_double: Constants.
653: * CONST_DOUBLE_CHAIN: Constants.
654: * CONST_DOUBLE_LOW: Constants.
655: * CONST_DOUBLE_MEM: Constants.
656: * CONST_DOUBLE_OK_FOR_LETTER_P: Register Classes.
657: * const_int: Constants.
658: * CONST_OK_FOR_LETTER_P: Register Classes.
659: * const_string: Constants.
660: * const_true_rtx: Constants.
661: * contributors: Contributors.
662: * controlling register usage: Register Basics.
663: * controlling the compilation driver: Driver.
664: * conventions, run-time: Interface.
665: * conversions: Conversions.
666: * Convex options: Convex Options.
667: * copy_rtx_if_shared: Sharing.
668: * core dump: Bug Criteria.
669: * cos: C Dialect Options.
670: * costs of instructions: Costs.
671: * COSTS_N_INSNS: Costs.
672: * CPLUS_INCLUDE_PATH: Environment Variables.
673: * CPP_PREDEFINES: Run-time Target.
674: * CPP_SPEC: Driver.
675: * CQImode: Machine Modes.
676: * cross compilation and floating point: Cross-compilation.
677: * cross compiling: Target Options.
678: * cross-compiler, installation: Cross-Compiler.
679: * cross-jumping: Passes.
680: * CROSS_LIBGCC1: Target Fragment.
681: * CRTSTUFF_T_CFLAGS: Target Fragment.
682: * CSImode: Machine Modes.
683: * CTImode: Machine Modes.
684: * CUMULATIVE_ARGS: Register Arguments.
685: * current_function_epilogue_delay_list: Function Entry.
686: * current_function_outgoing_args_size: Stack Arguments.
687: * current_function_pops_args: Function Entry.
688: * current_function_pretend_args_size: Function Entry.
689: * C_INCLUDE_PATH: Environment Variables.
690: * data flow analysis: Passes.
691: * DATA_ALIGNMENT: Storage Layout.
692: * data_section: Sections.
693: * DATA_SECTION_ASM_OP: Sections.
694: * DBR_OUTPUT_SEQEND: Instruction Output.
695: * dbr_sequence_length: Instruction Output.
696: * DBX: Interoperation.
697: * DBX_BLOCKS_FUNCTION_RELATIVE: DBX Options.
698: * DBX_CONTIN_CHAR: DBX Options.
699: * DBX_CONTIN_LENGTH: DBX Options.
700: * DBX_DEBUGGING_INFO: DBX Options.
701: * DBX_FUNCTION_FIRST: DBX Options.
702: * DBX_LBRAC_FIRST: DBX Options.
703: * DBX_MEMPARM_STABS_LETTER: DBX Options.
704: * DBX_NO_XREFS: DBX Options.
705: * DBX_OUTPUT_ENUM: DBX Hooks.
706: * DBX_OUTPUT_FUNCTION_END: DBX Hooks.
707: * DBX_OUTPUT_LBRAC: DBX Hooks.
708: * DBX_OUTPUT_MAIN_SOURCE_DIRECTORY: File Names and DBX.
709: * DBX_OUTPUT_MAIN_SOURCE_FILENAME: File Names and DBX.
710: * DBX_OUTPUT_MAIN_SOURCE_FILE_END: File Names and DBX.
711: * DBX_OUTPUT_RBRAC: DBX Hooks.
712: * DBX_OUTPUT_SOURCE_FILENAME: File Names and DBX.
713: * DBX_OUTPUT_STANDARD_TYPES: DBX Hooks.
714: * DBX_REGISTER_NUMBER: All Debuggers.
715: * DBX_REGPARM_STABS_CODE: DBX Options.
716: * DBX_REGPARM_STABS_LETTER: DBX Options.
717: * DBX_STATIC_CONST_VAR_CODE: DBX Options.
718: * DBX_STATIC_STAB_DATA_SECTION: DBX Options.
719: * DBX_TYPE_DECL_STABS_CODE: DBX Options.
720: * DBX_WORKING_DIRECTORY: File Names and DBX.
721: * DCmode: Machine Modes.
722: * De Morgan's law: Insn Canonicalizations.
723: * dead code: Passes.
724: * dead_or_set_p: Peephole Definitions.
725: * deallocating variable length arrays: Variable Length.
726: * death notes: Obsolete Register Macros.
727: * DEBUGGER_ARG_OFFSET: All Debuggers.
728: * DEBUGGER_AUTO_OFFSET: All Debuggers.
729: * debugging information generation: Passes.
730: * debugging information options: Debugging Options.
731: * debugging, 88k OCS: M88K Options.
732: * debug_rtx: Bug Reporting.
733: * DEBUG_SYMS_TEXT: DBX Options.
734: * declaration scope: Incompatibilities.
735: * declarations inside expressions: Statement Exprs.
736: * declarations, RTL: RTL Declarations.
737: * declaring attributes of functions: Function Attributes.
738: * declaring static data in C++: Static Definitions.
739: * default implementation, signature member function: C++ Signatures.
740: * DEFAULT_CALLER_SAVES: Caller Saves.
741: * DEFAULT_GDB_EXTENSIONS: DBX Options.
742: * DEFAULT_MAIN_RETURN: Misc.
743: * DEFAULT_PCC_STRUCT_RETURN: Aggregate Return.
744: * DEFAULT_SHORT_ENUMS: Type Layout.
745: * DEFAULT_SIGNED_CHAR: Type Layout.
746: * define_asm_attributes: Tagging Insns.
747: * define_attr: Defining Attributes.
748: * define_delay: Delay Slots.
749: * define_expand: Expander Definitions.
750: * define_function_unit: Function Units.
751: * define_insn: Patterns.
752: * define_peephole: Expander Definitions.
753: * define_split: Insn Splitting.
754: * defining attributes and their values: Defining Attributes.
755: * defining jump instruction patterns: Jump Patterns.
756: * defining peephole optimizers: Peephole Definitions.
757: * defining RTL sequences for code generation: Expander Definitions.
758: * defining static data in C++: Static Definitions.
759: * delay slots, defining: Delay Slots.
760: * delayed branch scheduling: Passes.
761: * DELAY_SLOTS_FOR_EPILOGUE: Function Entry.
762: * dependencies for make as output: Environment Variables.
763: * dependencies, make: Preprocessor Options.
764: * DEPENDENCIES_OUTPUT: Environment Variables.
765: * Dependent Patterns: Dependent Patterns.
766: * destructors vs goto: Destructors and Goto.
767: * destructors, output of: Initialization.
768: * detecting -traditional: C Dialect Options.
769: * DFmode: Machine Modes.
770: * dialect options: C Dialect Options.
771: * digits in constraint: Simple Constraints.
772: * DImode: Machine Modes.
773: * directory options: Directory Options.
774: * DIR_SEPARATOR: Config.
775: * disabling certain registers: Register Basics.
776: * dispatch table: Dispatch Tables.
777: * div: Arithmetic.
778: * DIVDI3_LIBCALL: Library Calls.
779: * divide instruction, 88k: M88K Options.
780: * division: Arithmetic.
781: * division: Arithmetic.
782: * division: Arithmetic.
783: * DIVSI3_LIBCALL: Library Calls.
784: * dollar signs in identifier names: Dollar Signs.
785: * DOLLARS_IN_IDENTIFIERS: Misc.
786: * DONE: Expander Definitions.
787: * DONT_DECLARE_SYS_SIGLIST: Config.
788: * DONT_REDUCE_ADDR: Costs.
789: * double-word arithmetic: Long Long.
790: * DOUBLE_TYPE_SIZE: Type Layout.
791: * downward funargs: Nested Functions.
792: * driver: Driver.
793: * DW bit (29k): AMD29K Options.
794: * DWARF_DEBUGGING_INFO: SDB and DWARF.
795: * DYNAMIC_CHAIN_ADDRESS: Frame Layout.
796: * EASY_DIV_EXPR: Misc.
797: * ELIGIBLE_FOR_EPILOGUE_DELAY: Function Entry.
798: * ELIMINABLE_REGS: Elimination.
799: * empty constraints: No Constraints.
800: * EMPTY_FIELD_BOUNDARY: Storage Layout.
801: * ENCODE_SECTION_INFO: Sections.
802: * ENDFILE_SPEC: Driver.
803: * endianness: Portability.
804: * enum machine_mode: Machine Modes.
805: * enum reg_class: Register Classes.
806: * enumeration clash warnings: Warning Options.
807: * environment variables: Environment Variables.
808: * epilogue: Function Entry.
809: * eq: Comparisons.
810: * equal: Comparisons.
811: * eq_attr: Expressions.
812: * error messages: Warnings and Errors.
813: * escape sequences, traditional: C Dialect Options.
814: * exclamation point: Multi-Alternative.
815: * exclusive-or, bitwise: Arithmetic.
816: * EXECUTABLE_SUFFIX: Config.
817: * exit: C Dialect Options.
818: * exit status and VMS: VMS Misc.
819: * EXIT_BODY: Misc.
820: * EXIT_IGNORE_STACK: Function Entry.
821: * expander definitions: Expander Definitions.
822: * EXPAND_BUILTIN_SAVEREGS: Varargs.
823: * explicit register variables: Explicit Reg Vars.
824: * expression codes: RTL Objects.
825: * expressions containing statements: Statement Exprs.
826: * expressions, compound, as lvalues: Lvalues.
827: * expressions, conditional, as lvalues: Lvalues.
828: * expressions, constructor: Constructors.
829: * expr_list: Insns.
830: * extended asm: Extended Asm.
831: * extensible constraints: Simple Constraints.
832: * extensions, ?:: Conditionals.
833: * extensions, ?:: Lvalues.
834: * extensions, C language: C Extensions.
835: * extensions, C++ language: C++ Extensions.
836: * extern int target_flags: Run-time Target.
837: * external declaration scope: Incompatibilities.
838: * EXTRA_CC_MODES: Condition Code.
839: * EXTRA_CC_NAMES: Condition Code.
840: * EXTRA_CONSTRAINT: Register Classes.
841: * EXTRA_SECTIONS: Sections.
842: * EXTRA_SECTION_FUNCTIONS: Sections.
843: * fabs: C Dialect Options.
844: * FAIL: Expander Definitions.
845: * fatal signal: Bug Criteria.
846: * FATAL_EXIT_CODE: Config.
847: * features, optional, in system conventions: Run-time Target.
848: * ffs: C Dialect Options.
849: * ffs: Arithmetic.
850: * file name suffix: Overall Options.
851: * file names: Link Options.
852: * files and passes of the compiler: Passes.
853: * final pass: Passes.
854: * FINALIZE_PIC: PIC.
855: * FINAL_PRESCAN_INSN: Instruction Output.
856: * FINAL_REG_PARM_STACK_SPACE: Stack Arguments.
857: * final_scan_insn: Function Entry.
858: * final_sequence: Instruction Output.
859: * FIRST_INSN_ADDRESS: Insn Lengths.
860: * FIRST_PARM_OFFSET: Frame Layout.
861: * FIRST_PSEUDO_REGISTER: Register Basics.
862: * FIRST_STACK_REG: Stack Registers.
863: * FIRST_VIRTUAL_REGISTER: Regs and Memory.
864: * fix: Conversions.
865: * fix: Conversions.
866: * fixed register: Register Basics.
867: * FIXED_REGISTERS: Register Basics.
868: * fixed_regs: Register Basics.
869: * FIXUNS_TRUNC_LIKE_FIX_TRUNC: Misc.
870: * flags in RTL expression: Flags.
871: * float: Conversions.
872: * FLOATIFY: Library Calls.
873: * floating point and cross compilation: Cross-compilation.
874: * FLOAT_ARG_TYPE: Library Calls.
875: * float_extend: Conversions.
876: * FLOAT_STORE_FLAG_VALUE: Misc.
877: * float_truncate: Conversions.
878: * FLOAT_TYPE_SIZE: Type Layout.
879: * FLOAT_VALUE_TYPE: Library Calls.
880: * FLOAT_WORDS_BIG_ENDIAN: Storage Layout.
881: * force_reg: Standard Names.
882: * forwarding calls: Constructing Calls.
883: * frame layout: Frame Layout.
884: * FRAME_GROWS_DOWNWARD: Frame Layout.
885: * frame_pointer_needed: Function Entry.
886: * FRAME_POINTER_REGNUM: Frame Registers.
887: * FRAME_POINTER_REQUIRED: Elimination.
888: * frame_pointer_rtx: Frame Registers.
889: * function attributes: Function Attributes.
890: * function call conventions: Interface.
891: * function entry and exit: Function Entry.
892: * function pointers, arithmetic: Pointer Arith.
893: * function prototype declarations: Function Prototypes.
894: * function units, for scheduling: Function Units.
895: * function, size of pointer to: Pointer Arith.
896: * function-call insns: Calls.
897: * functions in arbitrary sections: Function Attributes.
898: * functions that are passed arguments in registers on the 386: Function Attributes.
899: * functions that are passed arguments in registers on the 386: Function Attributes.
900: * functions that do not pop the argument stack on the 386: Function Attributes.
901: * functions that do pop the argument stack on the 386: Function Attributes.
902: * functions that have no side effects: Function Attributes.
903: * functions that never return: Function Attributes.
904: * functions that pop the argument stack on the 386: Function Attributes.
905: * functions that pop the argument stack on the 386: Function Attributes.
906: * functions with printf or scanf style arguments: Function Attributes.
907: * functions, leaf: Leaf Functions.
908: * FUNCTION_ARG: Register Arguments.
909: * FUNCTION_ARG_ADVANCE: Register Arguments.
910: * FUNCTION_ARG_BOUNDARY: Register Arguments.
911: * FUNCTION_ARG_CALLEE_COPIES: Register Arguments.
912: * FUNCTION_ARG_PADDING: Register Arguments.
913: * FUNCTION_ARG_PARTIAL_NREGS: Register Arguments.
914: * FUNCTION_ARG_PASS_BY_REFERENCE: Register Arguments.
915: * FUNCTION_ARG_REGNO_P: Register Arguments.
916: * FUNCTION_BLOCK_PROFILER: Profiling.
917: * FUNCTION_BOUNDARY: Storage Layout.
918: * FUNCTION_CONVERSION_BUG: Config.
919: * FUNCTION_EPILOGUE: Function Entry.
920: * FUNCTION_INCOMING_ARG: Register Arguments.
921: * FUNCTION_MODE: Misc.
922: * FUNCTION_OUTGOING_VALUE: Scalar Return.
923: * FUNCTION_PROFILER: Profiling.
924: * FUNCTION_PROLOGUE: Function Entry.
925: * FUNCTION_VALUE: Scalar Return.
926: * FUNCTION_VALUE_REGNO_P: Scalar Return.
927: * G++: G++ and GCC.
928: * g++: Invoking G++.
929: * GCC: G++ and GCC.
930: * GCC_EXEC_PREFIX: Environment Variables.
931: * ge: Comparisons.
932: * gencodes: Passes.
933: * genconfig: Passes.
934: * generalized lvalues: Lvalues.
935: * general_operand: RTL Template.
936: * GENERAL_REGS: Register Classes.
937: * generating assembler output: Output Statement.
938: * generating insns: RTL Template.
939: * genflags: Passes.
940: * GEN_ERRNO_RTX: Library Calls.
941: * get_attr: Expressions.
942: * get_attr_length: Insn Lengths.
943: * GET_CLASS_NARROWEST_MODE: Machine Modes.
944: * GET_CODE: RTL Objects.
945: * get_frame_size: Elimination.
946: * get_insns: Insns.
947: * get_last_insn: Insns.
948: * GET_MODE: Machine Modes.
949: * GET_MODE_ALIGNMENT: Machine Modes.
950: * GET_MODE_BITSIZE: Machine Modes.
951: * GET_MODE_CLASS: Machine Modes.
952: * GET_MODE_MASK: Machine Modes.
953: * GET_MODE_NAME: Machine Modes.
954: * GET_MODE_NUNITS: Machine Modes.
955: * GET_MODE_SIZE: Machine Modes.
956: * GET_MODE_UNIT_SIZE: Machine Modes.
957: * GET_MODE_WIDER_MODE: Machine Modes.
958: * GET_RTX_CLASS: Accessors.
959: * GET_RTX_FORMAT: Accessors.
960: * GET_RTX_LENGTH: Accessors.
961: * geu: Comparisons.
962: * global offset table: Code Gen Options.
963: * global register after longjmp: Global Reg Vars.
964: * global register allocation: Passes.
965: * global register variables: Global Reg Vars.
966: * GLOBALDEF: Global Declarations.
967: * GLOBALREF: Global Declarations.
968: * GLOBALVALUEDEF: Global Declarations.
969: * GLOBALVALUEREF: Global Declarations.
970: * GNU CC and portability: Portability.
971: * GNU CC command options: Invoking GCC.
972: * goto with computed label: Labels as Values.
973: * GO_IF_LEGITIMATE_ADDRESS: Addressing Modes.
974: * GO_IF_MODE_DEPENDENT_ADDRESS: Addressing Modes.
975: * gp-relative references (MIPS): MIPS Options.
976: * greater than: Comparisons.
977: * greater than: Comparisons.
978: * greater than: Comparisons.
979: * grouping options: Invoking GCC.
980: * gt: Comparisons.
981: * gtu: Comparisons.
982: * HANDLE_PRAGMA: Misc.
983: * hard registers: Regs and Memory.
984: * hardware models and configurations, specifying: Submodel Options.
985: * HARD_FRAME_POINTER_REGNUM: Frame Registers.
986: * HARD_REGNO_MODE_OK: Values in Registers.
987: * HARD_REGNO_NREGS: Values in Registers.
988: * HAS_INIT_SECTION: Macros for Initialization.
989: * HAVE_ATEXIT: Misc.
990: * HAVE_POST_DECREMENT: Addressing Modes.
991: * HAVE_POST_INCREMENT: Addressing Modes.
992: * HAVE_PRE_DECREMENT: Addressing Modes.
993: * HAVE_PRE_INCREMENT: Addressing Modes.
994: * HAVE_PUTENV: Config.
995: * HAVE_VPRINTF: Config.
996: * header files and VMS: Include Files and VMS.
997: * high: Constants.
998: * HImode: Machine Modes.
999: * host makefile fragment: Host Fragment.
1000: * HOST_BITS_PER_CHAR: Config.
1001: * HOST_BITS_PER_INT: Config.
1002: * HOST_BITS_PER_LONG: Config.
1003: * HOST_BITS_PER_SHORT: Config.
1004: * HOST_FLOAT_FORMAT: Config.
1005: * HOST_FLOAT_WORDS_BIG_ENDIAN: Config.
1006: * HOST_WORDS_BIG_ENDIAN: Config.
1007: * HPPA Options: HPPA Options.
1008: * i386 Options: i386 Options.
1009: * IBM RS/6000 and PowerPC Options: RS/6000 and PowerPC Options.
1010: * IBM RT options: RT Options.
1011: * IBM RT PC: Interoperation.
1012: * identifier names, dollar signs in: Dollar Signs.
1013: * identifiers, names in assembler code: Asm Labels.
1014: * identifying source, compiler (88k): M88K Options.
1015: * IEEE_FLOAT_FORMAT: Storage Layout.
1016: * if_then_else: Comparisons.
1017: * immediate_operand: RTL Template.
1018: * IMMEDIATE_PREFIX: Instruction Output.
1019: * implicit argument: return value: Naming Results.
1020: * IMPLICIT_FIX_EXPR: Misc.
1021: * implied #pragma implementation: C++ Interface.
1022: * include files and VMS: Include Files and VMS.
1023: * INCLUDE_DEFAULTS: Driver.
1024: * inclusive-or, bitwise: Arithmetic.
1025: * INCOMING_REGNO: Register Basics.
1026: * incompatibilities of GNU CC: Incompatibilities.
1027: * increment operators: Bug Criteria.
1028: * INDEX_REG_CLASS: Register Classes.
1029: * initialization routines: Initialization.
1030: * initializations in expressions: Constructors.
1031: * initializers with labeled elements: Labeled Elements.
1032: * initializers, non-constant: Initializers.
1033: * INITIALIZE_TRAMPOLINE: Trampolines.
1034: * INITIAL_ELIMINATION_OFFSET: Elimination.
1035: * INITIAL_FRAME_POINTER_OFFSET: Elimination.
1036: * INIT_CUMULATIVE_ARGS: Register Arguments.
1037: * INIT_CUMULATIVE_INCOMING_ARGS: Register Arguments.
1038: * INIT_ENVIRONMENT: Driver.
1039: * INIT_SECTION_ASM_OP: Macros for Initialization.
1040: * INIT_SECTION_ASM_OP: Sections.
1041: * INIT_TARGET_OPTABS: Library Calls.
1042: * inline functions: Inline.
1043: * inline functions, omission of: Inline.
1044: * inline, automatic: Passes.
1045: * inlining and C++ pragmas: C++ Interface.
1046: * insn: Insns.
1047: * insn attributes: Insn Attributes.
1048: * insn canonicalization: Insn Canonicalizations.
1049: * insn lengths, computing: Insn Lengths.
1050: * insn splitting: Insn Splitting.
1051: * insn-attr.h: Defining Attributes.
1052: * insns: Insns.
1053: * insns, generating: RTL Template.
1054: * insns, recognizing: RTL Template.
1055: * INSN_ANNULLED_BRANCH_P: Flags.
1056: * INSN_CACHE_DEPTH: Trampolines.
1057: * INSN_CACHE_LINE_WIDTH: Trampolines.
1058: * INSN_CACHE_SIZE: Trampolines.
1059: * INSN_CLOBBERS_REGNO_P: Obsolete Register Macros.
1060: * INSN_CODE: Insns.
1061: * INSN_DELETED_P: Flags.
1062: * INSN_FROM_TARGET_P: Flags.
1063: * insn_list: Insns.
1064: * INSN_REFERENCES_ARE_DELAYED: Misc.
1065: * INSN_SETS_ARE_DELAYED: Misc.
1066: * INSN_UID: Insns.
1067: * INSTALL: Host Fragment.
1068: * installation trouble: Trouble.
1069: * installing GNU CC: Installation.
1070: * installing GNU CC on the Sun: Sun Install.
1071: * installing GNU CC on VMS: VMS Install.
1072: * instruction attributes: Insn Attributes.
1073: * instruction combination: Passes.
1074: * instruction patterns: Patterns.
1075: * instruction recognizer: Passes.
1076: * instruction scheduling: Passes.
1077: * instruction scheduling: Passes.
1078: * instruction splitting: Insn Splitting.
1079: * integrated: Flags.
1080: * INTEGRATE_THRESHOLD: Misc.
1081: * integrating function code: Inline.
1082: * Intel 386 Options: i386 Options.
1083: * Interdependence of Patterns: Dependent Patterns.
1084: * interface and implementation headers, C++: C++ Interface.
1085: * interfacing to GNU CC output: Interface.
1086: * intermediate C version, nonexistent: G++ and GCC.
1087: * INTIFY: Library Calls.
1088: * introduction: Top.
1089: * INT_TYPE_SIZE: Type Layout.
1090: * invalid assembly code: Bug Criteria.
1091: * invalid input: Bug Criteria.
1092: * INVOKE__main: Macros for Initialization.
1093: * invoking g++: Invoking G++.
1094: * in_data: Sections.
1095: * in_struct: Flags.
1096: * in_text: Sections.
1097: * ior: Arithmetic.
1098: * isinf: Cross-compilation.
1099: * isnan: Cross-compilation.
1100: * IS_ASM_LOGICAL_LINE_SEPARATOR: Data Output.
1101: * jump instruction patterns: Jump Patterns.
1102: * jump instructions and set: Side Effects.
1103: * jump optimization: Passes.
1104: * jump threading: Passes.
1105: * jump_insn: Insns.
1106: * JUMP_LABEL: Insns.
1107: * JUMP_TABLES_IN_TEXT_SECTION: Sections.
1108: * kernel and user registers (29k): AMD29K Options.
1109: * keywords, alternate: Alternate Keywords.
1110: * known causes of trouble: Trouble.
1111: * labeled elements in initializers: Labeled Elements.
1112: * labels as values: Labels as Values.
1113: * LABEL_NUSES: Insns.
1114: * LABEL_OUTSIDE_LOOP_P: Flags.
1115: * LABEL_PRESERVE_P: Flags.
1116: * label_ref: Constants.
1117: * labs: C Dialect Options.
1118: * language dialect options: C Dialect Options.
1119: * large bit shifts (88k): M88K Options.
1120: * large return values: Aggregate Return.
1121: * LAST_STACK_REG: Stack Registers.
1122: * LAST_VIRTUAL_REGISTER: Regs and Memory.
1123: * LDD_SUFFIX: Macros for Initialization.
1124: * ldexp: Cross-compilation.
1125: * LD_FINI_SWITCH: Macros for Initialization.
1126: * LD_INIT_SWITCH: Macros for Initialization.
1127: * le: Comparisons.
1128: * leaf functions: Leaf Functions.
1129: * leaf_function: Leaf Functions.
1130: * leaf_function_p: Standard Names.
1131: * LEAF_REGISTERS: Leaf Functions.
1132: * LEAF_REG_REMAP: Leaf Functions.
1133: * left rotate: Arithmetic.
1134: * left shift: Arithmetic.
1135: * LEGITIMATE_CONSTANT_P: Addressing Modes.
1136: * LEGITIMATE_PIC_OPERAND_P: PIC.
1137: * LEGITIMIZE_ADDRESS: Addressing Modes.
1138: * length-zero arrays: Zero Length.
1139: * less than: Comparisons.
1140: * less than or equal: Comparisons.
1141: * leu: Comparisons.
1142: * LIB2FUNCS_EXTRA: Target Fragment.
1143: * LIBCALL_VALUE: Scalar Return.
1144: * LIBGCC1: Target Fragment.
1145: * LIBGCC2_CFLAGS: Target Fragment.
1146: * LIBGCC2_WORDS_BIG_ENDIAN: Storage Layout.
1147: * LIBGCC_NEEDS_DOUBLE: Library Calls.
1148: * LIBGCC_SPEC: Driver.
1149: * Libraries: Link Options.
1150: * library subroutine names: Library Calls.
1151: * LIBRARY_PATH: Environment Variables.
1152: * LIB_SPEC: Driver.
1153: * LIMIT_RELOAD_CLASS: Register Classes.
1154: * link options: Link Options.
1155: * LINK_LIBGCC_SPECIAL: Driver.
1156: * LINK_LIBGCC_SPECIAL_1: Driver.
1157: * LINK_SPEC: Driver.
1158: * load address instruction: Simple Constraints.
1159: * LOAD_EXTEND_OP: Misc.
1160: * local labels: Local Labels.
1161: * local register allocation: Passes.
1162: * local variables in macros: Naming Types.
1163: * local variables, specifying registers: Local Reg Vars.
1164: * LOCAL_INCLUDE_DIR: Driver.
1165: * LOCAL_LABEL_PREFIX: Instruction Output.
1166: * logical-and, bitwise: Arithmetic.
1167: * LOG_LINKS: Insns.
1168: * longjmp: Global Reg Vars.
1169: * LONGJMP_RESTORE_FROM_STACK: Elimination.
1170: * LONG_DOUBLE_TYPE_SIZE: Type Layout.
1171: * LONG_LONG_TYPE_SIZE: Type Layout.
1172: * LONG_TYPE_SIZE: Type Layout.
1173: * loop optimization: Passes.
1174: * lo_sum: Arithmetic.
1175: * lshiftrt: Arithmetic.
1176: * lt: Comparisons.
1177: * ltu: Comparisons.
1178: * lvalues, generalized: Lvalues.
1179: * M680x0 options: M680x0 Options.
1180: * M88k options: M88K Options.
1181: * machine dependent options: Submodel Options.
1182: * machine description macros: Target Macros.
1183: * machine descriptions: Machine Desc.
1184: * machine mode conversions: Conversions.
1185: * machine modes: Machine Modes.
1186: * machine specific constraints: Machine Constraints.
1187: * MACHINE_DEPENDENT_REORG: Misc.
1188: * macro with variable arguments: Macro Varargs.
1189: * macros containing asm: Extended Asm.
1190: * macros, inline alternative: Inline.
1191: * macros, local labels: Local Labels.
1192: * macros, local variables in: Naming Types.
1193: * macros, statements in expressions: Statement Exprs.
1194: * macros, target description: Target Macros.
1195: * macros, types of arguments: Typeof.
1196: * make: Preprocessor Options.
1197: * makefile fragment: Fragments.
1198: * make_safe_from: Expander Definitions.
1199: * matching constraint: Simple Constraints.
1200: * matching operands: Output Template.
1201: * match_dup: RTL Template.
1202: * match_operand: RTL Template.
1203: * match_operator: RTL Template.
1204: * match_op_dup: RTL Template.
1205: * match_parallel: RTL Template.
1206: * match_par_dup: RTL Template.
1207: * match_scratch: RTL Template.
1208: * math libraries: Interface.
1209: * math, in RTL: Arithmetic.
1210: * maximum operator: Min and Max.
1211: * MAX_BITS_PER_WORD: Storage Layout.
1212: * MAX_CHAR_TYPE_SIZE: Type Layout.
1213: * MAX_FIXED_MODE_SIZE: Storage Layout.
1214: * MAX_INT_TYPE_SIZE: Type Layout.
1215: * MAX_LONG_TYPE_SIZE: Type Layout.
1216: * MAX_MOVE_MAX: Misc.
1217: * MAX_OFILE_ALIGNMENT: Storage Layout.
1218: * MAX_REGS_PER_ADDRESS: Addressing Modes.
1219: * MAX_WCHAR_TYPE_SIZE: Type Layout.
1220: * MAYBE_REG_PARM_STACK_SPACE: Stack Arguments.
1221: * mcount: Profiling.
1222: * MD_CALL_PROTOTYPES: Config.
1223: * MD_EXEC_PREFIX: Driver.
1224: * MD_STARTFILE_PREFIX: Driver.
1225: * MD_STARTFILE_PREFIX_1: Driver.
1226: * mem: Regs and Memory.
1227: * member fns, automatically inline: Inline.
1228: * memcmp: C Dialect Options.
1229: * memcpy: C Dialect Options.
1230: * memory model (29k): AMD29K Options.
1231: * memory reference, nonoffsettable: Simple Constraints.
1232: * memory references in constraints: Simple Constraints.
1233: * MEMORY_MOVE_COST: Costs.
1234: * MEM_IN_STRUCT_P: Flags.
1235: * MEM_VOLATILE_P: Flags.
1236: * messages, warning: Warning Options.
1237: * messages, warning and error: Warnings and Errors.
1238: * middle-operands, omitted: Conditionals.
1239: * minimum operator: Min and Max.
1240: * minus: Arithmetic.
1241: * MIN_UNITS_PER_WORD: Storage Layout.
1242: * MIPS options: MIPS Options.
1243: * misunderstandings in C++: C++ Misunderstandings.
1244: * mod: Arithmetic.
1245: * MODDI3_LIBCALL: Library Calls.
1246: * mode classes: Machine Modes.
1247: * MODES_TIEABLE_P: Values in Registers.
1248: * MODE_CC: Machine Modes.
1249: * MODE_COMPLEX_FLOAT: Machine Modes.
1250: * MODE_COMPLEX_INT: Machine Modes.
1251: * MODE_FLOAT: Machine Modes.
1252: * MODE_FUNCTION: Machine Modes.
1253: * MODE_INT: Machine Modes.
1254: * MODE_PARTIAL_INT: Machine Modes.
1255: * MODE_RANDOM: Machine Modes.
1256: * modifiers in constraints: Modifiers.
1257: * MODSI3_LIBCALL: Library Calls.
1258: * MOVE_MAX: Misc.
1259: * MOVE_RATIO: Costs.
1260: * MULDI3_LIBCALL: Library Calls.
1261: * MULSI3_LIBCALL: Library Calls.
1262: * mult: Arithmetic.
1263: * MULTIBYTE_CHARS: Config.
1264: * MULTILIB_DEFAULTS: Driver.
1265: * MULTILIB_DIRNAMES: Target Fragment.
1266: * MULTILIB_MATCHES: Target Fragment.
1267: * MULTILIB_OPTIONS: Target Fragment.
1268: * multiple alternative constraints: Multi-Alternative.
1269: * multiplication: Arithmetic.
1270: * multiprecision arithmetic: Long Long.
1271: * name augmentation: VMS Misc.
1272: * named patterns and conditions: Patterns.
1273: * named return value in C++: Naming Results.
1274: * names used in assembler code: Asm Labels.
1275: * names, pattern: Standard Names.
1276: * naming convention, implementation headers: C++ Interface.
1277: * naming types: Naming Types.
1278: * ne: Comparisons.
1279: * neg: Arithmetic.
1280: * nested functions: Nested Functions.
1281: * nested functions, trampolines for: Trampolines.
1282: * newline vs string constants: C Dialect Options.
1283: * next_cc0_user: Jump Patterns.
1284: * NEXT_INSN: Insns.
1285: * NEXT_OBJC_RUNTIME: Library Calls.
1286: * nil: RTL Objects.
1287: * no constraints: No Constraints.
1288: * no-op move instructions: Passes.
1289: * non-constant initializers: Initializers.
1290: * non-static inline function: Inline.
1291: * nongcc_SI_type: Library Calls.
1292: * nongcc_word_type: Library Calls.
1293: * nonoffsettable memory reference: Simple Constraints.
1294: * NON_SAVING_SETJMP: Register Basics.
1295: * not: Arithmetic.
1296: * not equal: Comparisons.
1297: * not using constraints: No Constraints.
1298: * note: Insns.
1299: * NOTE_INSN_BLOCK_BEG: Insns.
1300: * NOTE_INSN_BLOCK_END: Insns.
1301: * NOTE_INSN_DELETED: Insns.
1302: * NOTE_INSN_FUNCTION_END: Insns.
1303: * NOTE_INSN_LOOP_BEG: Insns.
1304: * NOTE_INSN_LOOP_CONT: Insns.
1305: * NOTE_INSN_LOOP_END: Insns.
1306: * NOTE_INSN_LOOP_VTOP: Insns.
1307: * NOTE_INSN_SETJMP: Insns.
1308: * NOTE_LINE_NUMBER: Insns.
1309: * NOTE_SOURCE_FILE: Insns.
1310: * NOTICE_UPDATE_CC: Condition Code.
1311: * NO_BUILTIN_PTRDIFF_TYPE: Driver.
1312: * NO_BUILTIN_SIZE_TYPE: Driver.
1313: * NO_DOLLAR_IN_LABEL: Misc.
1314: * NO_DOT_IN_LABEL: Misc.
1315: * NO_FUNCTION_CSE: Costs.
1316: * NO_IMPLICIT_EXTERN_C: Misc.
1317: * NO_MD_PROTOTYPES: Config.
1318: * NO_RECURSIVE_FUNCTION_CSE: Costs.
1319: * NO_REGS: Register Classes.
1320: * NO_STAB_H: Config.
1321: * NO_SYS_SIGLIST: Config.
1322: * NUM_MACHINE_MODES: Machine Modes.
1323: * N_REG_CLASSES: Register Classes.
1324: * OBJC_GEN_METHOD_LABEL: Label Output.
1325: * OBJC_INCLUDE_PATH: Environment Variables.
1326: * OBJC_INT_SELECTORS: Type Layout.
1327: * OBJC_PROLOGUE: File Framework.
1328: * OBJC_SELECTORS_WITHOUT_LABELS: Type Layout.
1329: * Objective C: G++ and GCC.
1330: * OBJECT_FORMAT_COFF: Macros for Initialization.
1331: * OBJECT_FORMAT_ROSE: Macros for Initialization.
1332: * OBJECT_SUFFIX: Config.
1333: * OBSTACK_CHUNK_ALLOC: Config.
1334: * OBSTACK_CHUNK_FREE: Config.
1335: * OBSTACK_CHUNK_SIZE: Config.
1336: * obstack_free: Configurations.
1337: * OCS (88k): M88K Options.
1338: * offsettable address: Simple Constraints.
1339: * old-style function definitions: Function Prototypes.
1340: * OLDAR: Host Fragment.
1341: * OLDCC: Host Fragment.
1342: * omitted middle-operands: Conditionals.
1343: * ONLY_INT_FIELDS: Config.
1344: * open coding: Inline.
1345: * operand access: Accessors.
1346: * operand constraints: Constraints.
1347: * operand substitution: Output Template.
1348: * operands: Patterns.
1349: * OPTIMIZATION_OPTIONS: Run-time Target.
1350: * optimize options: Optimize Options.
1351: * optional hardware or system features: Run-time Target.
1352: * options to control warnings: Warning Options.
1353: * options, C++: C++ Dialect Options.
1354: * options, code generation: Code Gen Options.
1355: * options, debugging: Debugging Options.
1356: * options, dialect: C Dialect Options.
1357: * options, directory search: Directory Options.
1358: * options, GNU CC command: Invoking GCC.
1359: * options, grouping: Invoking GCC.
1360: * options, linking: Link Options.
1361: * options, optimization: Optimize Options.
1362: * options, order: Invoking GCC.
1363: * options, preprocessor: Preprocessor Options.
1364: * order of evaluation, side effects: Non-bugs.
1365: * order of options: Invoking GCC.
1366: * order of register allocation: Allocation Order.
1367: * Ordering of Patterns: Pattern Ordering.
1368: * ORDER_REGS_FOR_LOCAL_ALLOC: Allocation Order.
1369: * other directory, compilation in: Other Dir.
1370: * OUTGOING_REGNO: Register Basics.
1371: * OUTGOING_REG_PARM_STACK_SPACE: Stack Arguments.
1372: * output file option: Overall Options.
1373: * output of assembler code: File Framework.
1374: * output statements: Output Statement.
1375: * output templates: Output Template.
1376: * output_addr_const: Data Output.
1377: * output_asm_insn: Output Statement.
1378: * overflow while constant folding: Cross-compilation.
1379: * OVERLAPPING_REGNO_P: Obsolete Register Macros.
1380: * overloaded virtual fn, warning: Warning Options.
1381: * OVERRIDE_OPTIONS: Run-time Target.
1382: * parallel: Side Effects.
1383: * parameter forward declaration: Variable Length.
1384: * parameters, miscellaneous: Misc.
1385: * PARM_BOUNDARY: Storage Layout.
1386: * parser generator, Bison: Installation.
1387: * PARSE_LDD_OUTPUT: Macros for Initialization.
1388: * parsing pass: Passes.
1389: * passes and files of the compiler: Passes.
1390: * passing arguments: Interface.
1391: * PATH_SEPARATOR: Config.
1392: * PATTERN: Insns.
1393: * pattern conditions: Patterns.
1394: * pattern names: Standard Names.
1395: * Pattern Ordering: Pattern Ordering.
1396: * patterns: Patterns.
1397: * pc: Regs and Memory.
1398: * PCC_BITFIELD_TYPE_MATTERS: Storage Layout.
1399: * PCC_STATIC_STRUCT_RETURN: Aggregate Return.
1400: * pc_rtx: Regs and Memory.
1401: * PDImode: Machine Modes.
1402: * peephole optimization: Passes.
1403: * peephole optimization, RTL representation: Side Effects.
1404: * peephole optimizer definitions: Peephole Definitions.
1405: * percent sign: Output Template.
1406: * perform_...: Library Calls.
1407: * PIC: Code Gen Options.
1408: * PIC: PIC.
1409: * PIC_OFFSET_TABLE_REGNUM: PIC.
1410: * PIC_OFFSET_TABLE_REG_CALL_CLOBBERED: PIC.
1411: * plus: Arithmetic.
1412: * Pmode: Misc.
1413: * pointer arguments: Function Attributes.
1414: * POINTERS_EXTEND_UNSIGNED: Storage Layout.
1415: * POINTER_SIZE: Storage Layout.
1416: * portability: Portability.
1417: * portions of temporary objects, pointers to: Temporaries.
1418: * position independent code: PIC.
1419: * POSIX: Config.
1420: * post_dec: Incdec.
1421: * post_inc: Incdec.
1422: * pragma: Misc.
1423: * pragma, reason for not using: Function Attributes.
1424: * pragmas in C++, effect on inlining: C++ Interface.
1425: * pragmas, interface and implementation: C++ Interface.
1426: * predefined macros: Run-time Target.
1427: * PREDICATE_CODES: Misc.
1428: * PREFERRED_DEBUGGING_TYPE: All Debuggers.
1429: * PREFERRED_OUTPUT_RELOAD_CLASS: Register Classes.
1430: * PREFERRED_RELOAD_CLASS: Register Classes.
1431: * preprocessing numbers: Incompatibilities.
1432: * preprocessing tokens: Incompatibilities.
1433: * preprocessor options: Preprocessor Options.
1434: * PRESERVE_DEATH_INFO_REGNO_P: Obsolete Register Macros.
1435: * prev_active_insn: Peephole Definitions.
1436: * prev_cc0_setter: Jump Patterns.
1437: * PREV_INSN: Insns.
1438: * pre_dec: Incdec.
1439: * pre_inc: Incdec.
1440: * PRINT_OPERAND: Instruction Output.
1441: * PRINT_OPERAND_ADDRESS: Instruction Output.
1442: * PRINT_OPERAND_PUNCT_VALID_P: Instruction Output.
1443: * processor selection (29k): AMD29K Options.
1444: * product: Arithmetic.
1445: * PROFILE_BEFORE_PROLOGUE: Profiling.
1446: * profiling, code generation: Profiling.
1447: * program counter: Regs and Memory.
1448: * prologue: Function Entry.
1449: * PROMOTE_FOR_CALL_ONLY: Storage Layout.
1450: * PROMOTE_FUNCTION_ARGS: Storage Layout.
1451: * PROMOTE_FUNCTION_RETURN: Storage Layout.
1452: * PROMOTE_MODE: Storage Layout.
1453: * PROMOTE_PROTOTYPES: Stack Arguments.
1454: * promotion of formal parameters: Function Prototypes.
1455: * pseudo registers: Regs and Memory.
1456: * PSImode: Machine Modes.
1457: * PTRDIFF_TYPE: Type Layout.
1458: * push address instruction: Simple Constraints.
1459: * PUSH_ROUNDING: Stack Arguments.
1460: * putenv: Config.
1461: * PUT_CODE: RTL Objects.
1462: * PUT_MODE: Machine Modes.
1463: * PUT_REG_NOTE_KIND: Insns.
1464: * PUT_SDB_...: SDB and DWARF.
1465: * QImode: Machine Modes.
1466: * question mark: Multi-Alternative.
1467: * quotient: Arithmetic.
1468: * r0-relative references (88k): M88K Options.
1469: * ranges in case statements: Case Ranges.
1470: * read-only strings: Incompatibilities.
1471: * READONLY_DATA_SECTION: Sections.
1472: * REAL_ARITHMETIC: Cross-compilation.
1473: * REAL_INFINITY: Cross-compilation.
1474: * REAL_NM_FILE_NAME: Macros for Initialization.
1475: * REAL_VALUES_EQUAL: Cross-compilation.
1476: * REAL_VALUES_LESS: Cross-compilation.
1477: * REAL_VALUE_ATOF: Cross-compilation.
1478: * REAL_VALUE_FIX: Cross-compilation.
1479: * REAL_VALUE_FROM_INT: Cross-compilation.
1480: * REAL_VALUE_ISINF: Cross-compilation.
1481: * REAL_VALUE_ISNAN: Cross-compilation.
1482: * REAL_VALUE_LDEXP: Cross-compilation.
1483: * REAL_VALUE_NEGATE: Cross-compilation.
1484: * REAL_VALUE_RNDZINT: Cross-compilation.
1485: * REAL_VALUE_TO_DECIMAL: Data Output.
1486: * REAL_VALUE_TO_INT: Cross-compilation.
1487: * REAL_VALUE_TO_TARGET_DOUBLE: Data Output.
1488: * REAL_VALUE_TO_TARGET_LONG_DOUBLE: Data Output.
1489: * REAL_VALUE_TO_TARGET_SINGLE: Data Output.
1490: * REAL_VALUE_TRUNCATE: Cross-compilation.
1491: * REAL_VALUE_TYPE: Cross-compilation.
1492: * REAL_VALUE_UNSIGNED_FIX: Cross-compilation.
1493: * REAL_VALUE_UNSIGNED_RNDZINT: Cross-compilation.
1494: * recognizing insns: RTL Template.
1495: * recog_operand: Instruction Output.
1496: * reg: Regs and Memory.
1497: * register allocation: Passes.
1498: * register allocation order: Allocation Order.
1499: * register allocation, stupid: Passes.
1500: * register class definitions: Register Classes.
1501: * register class preference constraints: Class Preferences.
1502: * register class preference pass: Passes.
1503: * register pairs: Values in Registers.
1504: * register positions in frame (88k): M88K Options.
1505: * register positions in frame (88k): M88K Options.
1506: * Register Transfer Language (RTL): RTL.
1507: * register usage: Registers.
1508: * register use analysis: Passes.
1509: * register variable after longjmp: Global Reg Vars.
1510: * register-to-stack conversion: Passes.
1511: * registers: Extended Asm.
1512: * registers arguments: Register Arguments.
1513: * registers for local variables: Local Reg Vars.
1514: * registers in constraints: Simple Constraints.
1515: * registers, global allocation: Explicit Reg Vars.
1516: * registers, global variables in: Global Reg Vars.
1517: * REGISTER_MOVE_COST: Costs.
1518: * REGISTER_NAMES: Instruction Output.
1519: * register_operand: RTL Template.
1520: * REGISTER_PREFIX: Instruction Output.
1521: * REGNO_OK_FOR_BASE_P: Register Classes.
1522: * REGNO_OK_FOR_INDEX_P: Register Classes.
1523: * REGNO_REG_CLASS: Register Classes.
1524: * regs_ever_live: Function Entry.
1525: * REG_ALLOC_ORDER: Allocation Order.
1526: * REG_CC_SETTER: Insns.
1527: * REG_CC_USER: Insns.
1528: * REG_CLASS_CONTENTS: Register Classes.
1529: * REG_CLASS_FROM_LETTER: Register Classes.
1530: * REG_CLASS_NAMES: Register Classes.
1531: * REG_DEAD: Insns.
1532: * REG_DEP_ANTI: Insns.
1533: * REG_DEP_OUTPUT: Insns.
1534: * REG_EQUAL: Insns.
1535: * REG_EQUIV: Insns.
1536: * REG_FUNCTION_VALUE_P: Flags.
1537: * REG_INC: Insns.
1538: * REG_LABEL: Insns.
1539: * REG_LIBCALL: Insns.
1540: * REG_LOOP_TEST_P: Flags.
1541: * reg_names: Instruction Output.
1542: * REG_NONNEG: Insns.
1543: * REG_NOTES: Insns.
1544: * REG_NOTE_KIND: Insns.
1545: * REG_NO_CONFLICT: Insns.
1546: * REG_OK_FOR_BASE_P: Addressing Modes.
1547: * REG_OK_FOR_INDEX_P: Addressing Modes.
1548: * REG_OK_STRICT: Addressing Modes.
1549: * REG_PARM_STACK_SPACE: Stack Arguments.
1550: * REG_RETVAL: Insns.
1551: * REG_UNUSED: Insns.
1552: * REG_USERVAR_P: Flags.
1553: * REG_WAS_0: Insns.
1554: * relative costs: Costs.
1555: * RELATIVE_PREFIX_NOT_LINKDIR: Driver.
1556: * reload pass: Regs and Memory.
1557: * reloading: Passes.
1558: * reload_completed: Standard Names.
1559: * reload_in_progress: Standard Names.
1560: * remainder: Arithmetic.
1561: * reordering, warning: Warning Options.
1562: * reporting bugs: Bugs.
1563: * representation of RTL: RTL.
1564: * rest argument (in macro): Macro Varargs.
1565: * rest_of_compilation: Passes.
1566: * rest_of_decl_compilation: Passes.
1567: * return: Side Effects.
1568: * return value of main: VMS Misc.
1569: * return value, named, in C++: Naming Results.
1570: * return values in registers: Scalar Return.
1571: * returning aggregate values: Aggregate Return.
1572: * returning structures and unions: Interface.
1573: * RETURN_ADDR_IN_PREVIOUS_FRAME: Frame Layout.
1574: * RETURN_ADDR_RTX: Frame Layout.
1575: * RETURN_IN_MEMORY: Aggregate Return.
1576: * RETURN_POPS_ARGS: Stack Arguments.
1577: * REVERSIBLE_CC_MODE: Condition Code.
1578: * right rotate: Arithmetic.
1579: * right shift: Arithmetic.
1580: * rotate: Arithmetic.
1581: * rotate: Arithmetic.
1582: * rotatert: Arithmetic.
1583: * ROUND_TYPE_ALIGN: Storage Layout.
1584: * ROUND_TYPE_SIZE: Storage Layout.
1585: * RS/6000 and PowerPC Options: RS/6000 and PowerPC Options.
1586: * RT options: RT Options.
1587: * RT PC: Interoperation.
1588: * RTL addition: Arithmetic.
1589: * RTL comparison: Arithmetic.
1590: * RTL comparison operations: Comparisons.
1591: * RTL constant expression types: Constants.
1592: * RTL constants: Constants.
1593: * RTL declarations: RTL Declarations.
1594: * RTL difference: Arithmetic.
1595: * RTL expression: RTL Objects.
1596: * RTL expressions for arithmetic: Arithmetic.
1597: * RTL format: Accessors.
1598: * RTL format characters: Accessors.
1599: * RTL function-call insns: Calls.
1600: * RTL generation: Passes.
1601: * RTL insn template: RTL Template.
1602: * RTL integers: RTL Objects.
1603: * RTL memory expressions: Regs and Memory.
1604: * RTL object types: RTL Objects.
1605: * RTL postdecrement: Incdec.
1606: * RTL postincrement: Incdec.
1607: * RTL predecrement: Incdec.
1608: * RTL preincrement: Incdec.
1609: * RTL register expressions: Regs and Memory.
1610: * RTL representation: RTL.
1611: * RTL side effect expressions: Side Effects.
1612: * RTL strings: RTL Objects.
1613: * RTL structure sharing assumptions: Sharing.
1614: * RTL subtraction: Arithmetic.
1615: * RTL sum: Arithmetic.
1616: * RTL vectors: RTL Objects.
1617: * RTX (See RTL): RTL Objects.
1618: * RTX_COSTS: Costs.
1619: * RTX_INTEGRATED_P: Flags.
1620: * RTX_UNCHANGING_P: Flags.
1621: * run-time conventions: Interface.
1622: * run-time options: Code Gen Options.
1623: * run-time target specification: Run-time Target.
1624: * saveable_obstack: Addressing Modes.
1625: * scalars, returned as values: Scalar Return.
1626: * SCCS_DIRECTIVE: Misc.
1627: * scheduling, delayed branch: Passes.
1628: * scheduling, instruction: Passes.
1629: * scheduling, instruction: Passes.
1630: * SCHED_GROUP_P: Flags.
1631: * SCmode: Machine Modes.
1632: * scope of a variable length array: Variable Length.
1633: * scope of declaration: Disappointments.
1634: * scope of external declarations: Incompatibilities.
1635: * scratch: Regs and Memory.
1636: * scratch operands: Regs and Memory.
1637: * SDB_ALLOW_FORWARD_REFERENCES: SDB and DWARF.
1638: * SDB_ALLOW_UNKNOWN_REFERENCES: SDB and DWARF.
1639: * SDB_DEBUGGING_INFO: SDB and DWARF.
1640: * SDB_DELIM: SDB and DWARF.
1641: * SDB_GENERATE_FAKE: SDB and DWARF.
1642: * search path: Directory Options.
1643: * second include path: Preprocessor Options.
1644: * SECONDARY_INPUT_RELOAD_CLASS: Register Classes.
1645: * SECONDARY_MEMORY_NEEDED: Register Classes.
1646: * SECONDARY_MEMORY_NEEDED_MODE: Register Classes.
1647: * SECONDARY_MEMORY_NEEDED_RTX: Register Classes.
1648: * SECONDARY_OUTPUT_RELOAD_CLASS: Register Classes.
1649: * SECONDARY_RELOAD_CLASS: Register Classes.
1650: * SELECT_CC_MODE: Condition Code.
1651: * SELECT_RTX_SECTION: Sections.
1652: * SELECT_SECTION: Sections.
1653: * separate directory, compilation in: Other Dir.
1654: * sequence: Side Effects.
1655: * sequential consistency on 88k: M88K Options.
1656: * set: Side Effects.
1657: * setjmp: Global Reg Vars.
1658: * SETUP_FRAME_ADDRESSES: Frame Layout.
1659: * SETUP_INCOMING_VARARGS: Varargs.
1660: * set_attr: Tagging Insns.
1661: * set_attr_alternative: Tagging Insns.
1662: * SET_DEFAULT_TYPE_ATTRIBUTES: Misc.
1663: * SET_DEST: Side Effects.
1664: * SET_SRC: Side Effects.
1665: * SFmode: Machine Modes.
1666: * shared strings: Incompatibilities.
1667: * shared VMS run time system: VMS Misc.
1668: * SHARED_SECTION_ASM_OP: Sections.
1669: * sharing of RTL components: Sharing.
1670: * shift: Arithmetic.
1671: * SHIFT_COUNT_TRUNCATED: Misc.
1672: * SHORT_TYPE_SIZE: Type Layout.
1673: * side effect in ?:: Conditionals.
1674: * side effects, macro argument: Statement Exprs.
1675: * side effects, order of evaluation: Non-bugs.
1676: * signature: C++ Signatures.
1677: * signature member function default implementation: C++ Signatures.
1678: * signatures, C++: C++ Signatures.
1679: * signed division: Arithmetic.
1680: * signed maximum: Arithmetic.
1681: * signed minimum: Arithmetic.
1682: * SIGNED_CHAR_SPEC: Driver.
1683: * sign_extend: Conversions.
1684: * sign_extract: Bit Fields.
1685: * SImode: Machine Modes.
1686: * simple constraints: Simple Constraints.
1687: * simplifications, arithmetic: Passes.
1688: * sin: C Dialect Options.
1689: * sizeof: Typeof.
1690: * SIZE_TYPE: Type Layout.
1691: * SLOW_BYTE_ACCESS: Costs.
1692: * SLOW_UNALIGNED_ACCESS: Costs.
1693: * SLOW_ZERO_EXTEND: Costs.
1694: * smaller data references (88k): M88K Options.
1695: * smaller data references (MIPS): MIPS Options.
1696: * SMALL_REGISTER_CLASSES: Register Classes.
1697: * smax: Arithmetic.
1698: * smin: Arithmetic.
1699: * SPARC options: SPARC Options.
1700: * specified registers: Explicit Reg Vars.
1701: * specifying compiler version and target machine: Target Options.
1702: * specifying hardware config: Submodel Options.
1703: * specifying machine version: Target Options.
1704: * specifying registers for local variables: Local Reg Vars.
1705: * speed of instructions: Costs.
1706: * splitting instructions: Insn Splitting.
1707: * sqrt: Arithmetic.
1708: * sqrt: C Dialect Options.
1709: * square root: Arithmetic.
1710: * stack arguments: Stack Arguments.
1711: * stack checks (29k): AMD29K Options.
1712: * stack frame layout: Frame Layout.
1713: * STACK_BOUNDARY: Storage Layout.
1714: * STACK_DYNAMIC_OFFSET: Frame Layout.
1715: * STACK_GROWS_DOWNWARD: Frame Layout.
1716: * STACK_PARMS_IN_REG_PARM_AREA: Stack Arguments.
1717: * STACK_POINTER_OFFSET: Frame Layout.
1718: * STACK_POINTER_REGNUM: Frame Registers.
1719: * stack_pointer_rtx: Frame Registers.
1720: * STACK_REGS: Stack Registers.
1721: * stage1: Installation.
1722: * standard pattern names: Standard Names.
1723: * STANDARD_EXEC_PREFIX: Driver.
1724: * STANDARD_INCLUDE_DIR: Driver.
1725: * STANDARD_STARTFILE_PREFIX: Driver.
1726: * start files: Tools and Libraries.
1727: * STARTFILE_SPEC: Driver.
1728: * STARTING_FRAME_OFFSET: Frame Layout.
1729: * statements inside expressions: Statement Exprs.
1730: * static data in C++, declaring and defining: Static Definitions.
1731: * STATIC_CHAIN: Frame Registers.
1732: * STATIC_CHAIN_INCOMING: Frame Registers.
1733: * STATIC_CHAIN_INCOMING_REGNUM: Frame Registers.
1734: * STATIC_CHAIN_REGNUM: Frame Registers.
1735: * storage layout: Storage Layout.
1736: * storem bug (29k): AMD29K Options.
1737: * STORE_FLAG_VALUE: Misc.
1738: * strcmp: C Dialect Options.
1739: * strcpy: C Dialect Options.
1740: * strcpy: Storage Layout.
1741: * strength-reduction: Passes.
1742: * STRICT_ALIGNMENT: Storage Layout.
1743: * STRICT_ARGUMENT_NAMING: Varargs.
1744: * strict_low_part: RTL Declarations.
1745: * string constants: Incompatibilities.
1746: * string constants vs newline: C Dialect Options.
1747: * STRIP_NAME_ENCODING: Sections.
1748: * strlen: C Dialect Options.
1749: * structure passing (88k): M88K Options.
1750: * structure value address: Aggregate Return.
1751: * structures: Incompatibilities.
1752: * structures, constructor expression: Constructors.
1753: * structures, returning: Interface.
1754: * STRUCTURE_SIZE_BOUNDARY: Storage Layout.
1755: * STRUCT_VALUE: Aggregate Return.
1756: * STRUCT_VALUE_INCOMING: Aggregate Return.
1757: * STRUCT_VALUE_INCOMING_REGNUM: Aggregate Return.
1758: * STRUCT_VALUE_REGNUM: Aggregate Return.
1759: * stupid register allocation: Passes.
1760: * submodel options: Submodel Options.
1761: * subreg: Regs and Memory.
1762: * SUBREG_PROMOTED_UNSIGNED_P: Flags.
1763: * SUBREG_PROMOTED_VAR_P: Flags.
1764: * SUBREG_REG: Regs and Memory.
1765: * SUBREG_WORD: Regs and Memory.
1766: * subscripting: Subscripting.
1767: * subscripting and function values: Subscripting.
1768: * subtype polymorphism, C++: C++ Signatures.
1769: * SUCCESS_EXIT_CODE: Config.
1770: * suffixes for C++ source: Invoking G++.
1771: * Sun installation: Sun Install.
1772: * SUPPORTS_WEAK: Label Output.
1773: * suppressing warnings: Warning Options.
1774: * surprises in C++: C++ Misunderstandings.
1775: * SVr4: M88K Options.
1776: * SWITCHES_NEED_SPACES: Driver.
1777: * SWITCH_TAKES_ARG: Driver.
1778: * symbolic label: Sharing.
1779: * symbol_ref: Constants.
1780: * SYMBOL_REF_FLAG: Flags.
1781: * SYMBOL_REF_USED: Flags.
1782: * syntax checking: Warning Options.
1783: * synthesized methods, warning: Warning Options.
1784: * SYSTEM_INCLUDE_DIR: Driver.
1785: * sys_siglist: Config.
1786: * tagging insns: Tagging Insns.
1787: * tail recursion optimization: Passes.
1788: * target description macros: Target Macros.
1789: * target machine, specifying: Target Options.
1790: * target makefile fragment: Target Fragment.
1791: * target options: Target Options.
1792: * target specifications: Run-time Target.
1793: * target-parameter-dependent code: Passes.
1794: * TARGET_BELL: Type Layout.
1795: * TARGET_BS: Type Layout.
1796: * TARGET_CR: Type Layout.
1797: * TARGET_EDOM: Library Calls.
1798: * TARGET_FF: Type Layout.
1799: * TARGET_FLOAT_FORMAT: Storage Layout.
1800: * TARGET_MEM_FUNCTIONS: Library Calls.
1801: * TARGET_NEWLINE: Type Layout.
1802: * TARGET_OPTIONS: Run-time Target.
1803: * TARGET_SWITCHES: Run-time Target.
1804: * TARGET_TAB: Type Layout.
1805: * TARGET_VERSION: Run-time Target.
1806: * TARGET_VT: Type Layout.
1807: * TCmode: Machine Modes.
1808: * template debugging: Warning Options.
1809: * template instantiation: Template Instantiation.
1810: * temporaries, lifetime of: Temporaries.
1811: * termination routines: Initialization.
1812: * text_section: Sections.
1813: * TEXT_SECTION_ASM_OP: Sections.
1814: * TFmode: Machine Modes.
1815: * thunks: Nested Functions.
1816: * TImode: Machine Modes.
1817: * TMPDIR: Environment Variables.
1818: * top level of compiler: Passes.
1819: * traditional C language: C Dialect Options.
1820: * TRADITIONAL_RETURN_FLOAT: Scalar Return.
1821: * trampolines for nested functions: Trampolines.
1822: * TRAMPOLINE_ALIGNMENT: Trampolines.
1823: * TRAMPOLINE_SECTION: Trampolines.
1824: * TRAMPOLINE_SIZE: Trampolines.
1825: * TRAMPOLINE_TEMPLATE: Trampolines.
1826: * TRANSFER_FROM_TRAMPOLINE: Trampolines.
1827: * TRULY_NOOP_TRUNCATION: Misc.
1828: * truncate: Conversions.
1829: * type abstraction, C++: C++ Signatures.
1830: * type alignment: Alignment.
1831: * type attributes: Type Attributes.
1832: * typedef names as function parameters: Incompatibilities.
1833: * typeof: Typeof.
1834: * udiv: Arithmetic.
1835: * UDIVDI3_LIBCALL: Library Calls.
1836: * UDIVSI3_LIBCALL: Library Calls.
1837: * Ultrix calling convention: Interoperation.
1838: * umax: Arithmetic.
1839: * umin: Arithmetic.
1840: * umod: Arithmetic.
1841: * UMODDI3_LIBCALL: Library Calls.
1842: * UMODSI3_LIBCALL: Library Calls.
1843: * unchanging: Flags.
1844: * undefined behavior: Bug Criteria.
1845: * undefined function value: Bug Criteria.
1846: * underscores in variables in macros: Naming Types.
1847: * underscores, avoiding (88k): M88K Options.
1848: * union, casting to a: Cast to Union.
1849: * unions: Incompatibilities.
1850: * unions, returning: Interface.
1851: * UNITS_PER_WORD: Storage Layout.
1852: * UNKNOWN_FLOAT_FORMAT: Storage Layout.
1853: * unreachable code: Passes.
1854: * unresolved references and -nodefaultlibs: Link Options.
1855: * unresolved references and -nostdlib: Link Options.
1856: * unshare_all_rtl: Sharing.
1857: * unsigned division: Arithmetic.
1858: * unsigned greater than: Comparisons.
1859: * unsigned greater than: Comparisons.
1860: * unsigned less than: Comparisons.
1861: * unsigned less than: Comparisons.
1862: * unsigned minimum and maximum: Arithmetic.
1863: * unsigned_fix: Conversions.
1864: * unsigned_float: Conversions.
1865: * unspec: Side Effects.
1866: * unspec_volatile: Side Effects.
1867: * use: Side Effects.
1868: * used: Flags.
1869: * USER_LABEL_PREFIX: Instruction Output.
1870: * USE_C_ALLOCA: Config.
1871: * USE_PROTOTYPES: Config.
1872: * USG: Config.
1873: * VALID_MACHINE_DECL_ATTRIBUTE: Misc.
1874: * VALID_MACHINE_TYPE_ATTRIBUTE: Misc.
1875: * value after longjmp: Global Reg Vars.
1876: * values, returned by functions: Scalar Return.
1877: * varargs implementation: Varargs.
1878: * variable alignment: Alignment.
1879: * variable attributes: Variable Attributes.
1880: * variable number of arguments: Macro Varargs.
1881: * variable-length array scope: Variable Length.
1882: * variable-length arrays: Variable Length.
1883: * variables in specified registers: Explicit Reg Vars.
1884: * variables, local, in macros: Naming Types.
1885: * Vax calling convention: Interoperation.
1886: * VAX options: VAX Options.
1887: * VAX_FLOAT_FORMAT: Storage Layout.
1888: * VIRTUAL_INCOMING_ARGS_REGNUM: Regs and Memory.
1889: * VIRTUAL_OUTGOING_ARGS_REGNUM: Regs and Memory.
1890: * VIRTUAL_STACK_DYNAMIC_REGNUM: Regs and Memory.
1891: * VIRTUAL_STACK_VARS_REGNUM: Regs and Memory.
1892: * VMS: Config.
1893: * VMS and case sensitivity: VMS Misc.
1894: * VMS and include files: Include Files and VMS.
1895: * VMS installation: VMS Install.
1896: * void pointers, arithmetic: Pointer Arith.
1897: * void, size of pointer to: Pointer Arith.
1898: * VOIDmode: Machine Modes.
1899: * volatil: Flags.
1900: * volatile memory references: Flags.
1901: * voting between constraint alternatives: Class Preferences.
1902: * vprintf: Config.
1903: * warning for enumeration conversions: Warning Options.
1904: * warning for overloaded virtual fn: Warning Options.
1905: * warning for reordering of member initializers: Warning Options.
1906: * warning for synthesized methods: Warning Options.
1907: * warning messages: Warning Options.
1908: * warnings vs errors: Warnings and Errors.
1909: * WCHAR_TYPE: Type Layout.
1910: * WCHAR_TYPE_SIZE: Type Layout.
1911: * which_alternative: Output Statement.
1912: * whitespace: Incompatibilities.
1913: * WORDS_BIG_ENDIAN: Storage Layout.
1914: * word_mode: Machine Modes.
1915: * WORD_REGISTER_OPERATIONS: Misc.
1916: * WORD_SWITCH_TAKES_ARG: Driver.
1917: * XCmode: Machine Modes.
1918: * XCOFF_DEBUGGING_INFO: DBX Options.
1919: * XEXP: Accessors.
1920: * XFmode: Machine Modes.
1921: * XINT: Accessors.
1922: * xor: Arithmetic.
1923: * XSTR: Accessors.
1924: * XVEC: Accessors.
1925: * XVECEXP: Accessors.
1926: * XVECLEN: Accessors.
1927: * XWINT: Accessors.
1928: * zero division on 88k: M88K Options.
1929: * zero-length arrays: Zero Length.
1930: * zero_extend: Conversions.
1931: * zero_extract: Bit Fields.
1932: * \: Output Template.
1933: * __bb_init_func: Profiling.
1934: * __builtin_apply: Constructing Calls.
1935: * __builtin_apply_args: Constructing Calls.
1936: * __builtin_args_info: Varargs.
1937: * __builtin_classify_type: Varargs.
1938: * __builtin_next_arg: Varargs.
1939: * __builtin_return: Constructing Calls.
1940: * __builtin_saveregs: Varargs.
1941: * __CTOR_LIST__: Initialization.
1942: * __DTOR_LIST__: Initialization.
1943: * __main: Collect2.
1944:
1945:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.