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