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