Lines Matching +refs:dwarf +refs:file
5 @c For copying conditions, see the file gcc.texi.
12 @cindex @file{tm.h} macros
14 In addition to the file @file{@var{machine}.md}, a machine description
15 includes a C header file conventionally given the name
16 @file{@var{machine}.h} and a C source file named @file{@var{machine}.c}.
17 The header file defines numerous macros that convey the information
19 @file{.md} file. The file @file{tm.h} should be a link to
20 @file{@var{machine}.h}. The header file @file{config.h} includes
21 @file{tm.h} and most compiler source files include @file{config.h}. The
22 source file defines a variable @code{targetm}, which is a structure
24 machine. @file{@var{machine}.c} should also contain their definitions,
26 through the macros defined in the @file{.h} file.
68 The target @file{.c} file must define the global @code{targetm} variable
70 machine. The variable is declared in @file{target.h};
71 @file{target-def.h} defines the macro @code{TARGET_INITIALIZER} which is
73 for elements of the structure. The @file{.c} file should override those
88 Where a macro should be defined in the @file{.c} file in this manner to
91 from being defined in the @file{.h} file to being part of the
96 Target Hook''. This is declared in @file{c-family/c-target.h}, the
98 @file{c-family/c-target-def.h}. If targets initialize @code{targetcm}
100 @file{config.gcc}; otherwise a default definition is used.
105 @file{common/common-target.h}, the initializer
107 @file{common/common-target-def.h}. If targets initialize
109 @code{target_has_targetm_common=yes} in @file{config.gcc}; otherwise a
113 @section Controlling the Compilation Driver, @file{gcc}
125 default @file{specs} files (but not command-line specified ones) and
145 the code in @file{config.gcc} for the target. The second item is a spec
151 default @file{specs} files and processing @code{DRIVER_SELF_SPECS}, using
196 See the file @file{sun3.h} for an example of this.
204 Normally, this is not needed. See the file @file{mips.h} for
215 @option{-o} option specifying the name of the output file.
220 see @file{mips.h} for instance.
237 loads the standard C library from the usual place. See @file{gcc.c}.
242 how and when to place a reference to @file{libgcc.a} into the
253 instead modified to refer to different versions of @file{libgcc.a}
258 driver how to place a reference to @file{libgcc} on the link command
283 standard C startup file from the usual place. See @file{gcc.c}.
301 @code{thread_file} set in @file{config.gcc}.
319 @file{specs} file that can be used in various specifications like
338 The @file{config/rs6000/rs6000.h} target file defines:
347 The @file{config/rs6000/sysv.h} target file defines:
360 while the @file{config/rs6000/eabiaix.h} target file defines
371 @file{libgcc.a}. If you do not define this macro, the driver program will pass
383 change is made to the link command line within @file{gcc.c}. Therefore,
397 True if @file{..} components should always be removed from directory names computed relative to GCC…
415 indicates an absolute file name.
423 to the list of directories used to find the assembler in @file{configure.in}.
429 try when searching for startup files such as @file{crt0.o}.
437 when searching for startup files such as @file{crt0.o}.
445 default prefix when searching for startup files such as @file{crt0.o}.
471 standard choice of @file{/usr/local/include} as the default prefix to
474 @file{config.gcc}, normally @file{/usr/include}) in the search order.
476 Cross compilers do not search either @file{/usr/local/include} or its
492 and @code{GCC_INCLUDE_DIR} are defined automatically by @file{Makefile},
504 The component name denotes what GNU package the include file is part of,
542 The location @file{/usr/libexec/gcc/}, but only if this is a native compiler.
545 The location @file{/usr/lib/gcc/}, but only if this is a native compiler.
571 The location @file{/usr/lib/gcc/}, but only if this is a native compiler.
593 @file{/lib/}.
598 @file{/usr/lib/}.
653 and is used for the target object format. @file{elfos.h} uses this
659 This variable is declared in @file{options.h}, which is included before
673 target-specific options described by the @file{.opt} definition files
687 target-specific C language family options described by the @file{.opt}
772 switching between them; see @file{target-globals.h} for details.
1061 Biggest alignment supported by the object file format of this machine.
1066 On systems that use ELF, the default (in @file{config/elfos.h}) is
1348 Defining this macro only affects the way @file{libgcc.a} emulates
1359 Defining this macro only affects the way @file{libgcc.a} emulates
1435 @code{write_builtin_type} in @file{cp/mangle.c} for the list of
1568 if you want routines in @file{libgcc2.a} for a size other than
1576 @code{DFmode} but you want @code{DFmode} routines in @file{libgcc2.a}
1584 @code{XFmode} but you want @code{XFmode} routines in @file{libgcc2.a}
1591 @code{TFmode} but you want @code{TFmode} routines in @file{libgcc2.a}
1601 uses this macro should also arrange to use @file{t-gnu-prefix} in
1602 the libgcc @file{config.host}.
1611 if the defaults in @file{libgcc2.h} are inappropriate. By default,
1620 A C expression for the value for @code{FLT_EVAL_METHOD} in @file{float.h},
1659 @code{init_decl_processing} in the file @file{c-decl.c}. You may not
2294 @file{reg-stack.c} and write your machine description to cooperate
2421 for the type @code{HARD_REG_SET} which is defined in @file{hard-reg-set.h}.
2653 that being copied. Special patterns in the md file are needed to
2680 in the md file which performs the move. Operands 0 and 1 are the output
2816 suppress that widening in some cases. See the file @file{alpha.h} for
2832 if pseudos allocated by @file{local-alloc.c} end up in memory because their
2835 @file{global.c}, which knows how to reallocate the pseudo to another
2880 register. Therefore, @file{alpha.h} defines @code{CANNOT_CHANGE_MODE_CLASS}
2909 for the md file, so you can also use this macro to help you while you are
2912 will complain about every instance where it is used in the md file.
3149 machines. See @file{function.c} for details.
3388 as found in @file{dwarf2.h}.
3394 @defmac ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX (@var{file}, @var{encoding}, @var{size}, @var{addr}, @var…
3413 @file{unwind-dw2.c}, @file{unwind-dw2-xtensa.c} and
3414 @file{unwind-ia64.c}. @var{context} is an @code{_Unwind_Context};
3423 @code{MAKE_THROW_FRAME}, defined in @file{libjava/include/*-signal.h} headers.
3431 This macro is called from @code{uw_update_context} in @file{unwind-ia64.c}.
3693 Define this macro if the target's representation for dwarf registers
3695 Given a dwarf register, this macro should return the internal unwind
3703 Define this macro if the target's representation for dwarf registers
4034 @cindex @file{stdarg.h} and register arguments
4035 The usual way to make the ISO library @file{stdarg.h} work on a
4054 solely in registers. The file @file{expr.h} defines a
4055 definition that is usually appropriate, refer to @file{expr.h} for additional
4332 code in @file{optabs.c}.
4663 @deftypefn {Target Hook} void TARGET_ASM_FUNCTION_PROLOGUE (FILE *@var{file}, HOST_WIDE_INT @var{si…
4668 local variables. @var{size} is an integer. @var{file} is a stdio
4708 @deftypefn {Target Hook} void TARGET_ASM_FUNCTION_END_PROLOGUE (FILE *@var{file})
4715 @deftypefn {Target Hook} void TARGET_ASM_FUNCTION_BEGIN_EPILOGUE (FILE *@var{file})
4722 @deftypefn {Target Hook} void TARGET_ASM_FUNCTION_EPILOGUE (FILE *@var{file}, HOST_WIDE_INT @var{si…
4861 @deftypefn {Target Hook} void TARGET_ASM_OUTPUT_MI_THUNK (FILE *@var{file}, tree @var{thunk_fndecl}…
4917 @defmac FUNCTION_PROFILER (@var{file}, @var{labelno})
4918 A C statement or compound statement to output to @var{file} some
4934 A C statement or compound statement to output to @var{file} some assembly
4994 @samp{__stack_chk_guard}, which is normally defined in @file{libgcc2.c}.
5004 normally defined in @file{libgcc2.c}.
5041 found in @file{libgcc2.c}.
5073 The file @file{typeclass.h} defines an enumeration that you can use to
5117 end of the source file. The hook @code{TARGET_SETUP_INCOMING_VARARGS} should
5255 its cache line. Look in @file{m68k.h} as a guide.
5274 @cindex @file{libgcc.a}
5291 @code{init_one_libfunc} defined in @file{optabs.c}.
5302 currently only affects functions defined in @file{libgcc2.c}. If this
5303 is set to true, the @file{tm.h} file must also
5325 in @file{libgcc.a}, you do not need to define this macro.
5334 @file{/usr/include/errno.h} to find the value of @code{EDOM} on your
5517 or to provide a simplified version of @var{x} from which @file{alias.c}
5519 @code{find_base_value} and @code{find_base_term} in @file{alias.c}.
5928 The file @file{conditions.h} defines a variable @code{cc_status} to
5935 description header file. It can also add additional machine-specific
5988 two places, the @file{md} file and in @code{NOTICE_UPDATE_CC}.
6009 @file{@var{machine}-modes.def} and define @code{SELECT_CC_MODE} to choose
6045 in @file{@var{machine}-modes.def}.
6062 @file{md} file.
6524 @deftypefn {Target Hook} int TARGET_SCHED_VARIABLE_ISSUE (FILE *@var{file}, int @var{verbose}, rtx …
6532 @var{file} is either a null pointer, or a stdio stream to write any
6561 @deftypefn {Target Hook} int TARGET_SCHED_REORDER (FILE *@var{file}, int @var{verbose}, rtx *@var{r…
6565 @var{file} is either a null pointer, or a stdio stream to write any
6578 @deftypefn {Target Hook} int TARGET_SCHED_REORDER2 (FILE *@var{file}, int @var{verbose}, rtx *@var{…
6599 @deftypefn {Target Hook} void TARGET_SCHED_INIT (FILE *@var{file}, int @var{verbose}, int @var{max_…
6601 instructions that are to be scheduled. @var{file} is either a null
6609 @deftypefn {Target Hook} void TARGET_SCHED_FINISH (FILE *@var{file}, int @var{verbose})
6612 cleanup of any actions done by the other scheduling hooks. @var{file}
6618 @deftypefn {Target Hook} void TARGET_SCHED_INIT_GLOBAL (FILE *@var{file}, int @var{verbose}, int @v…
6620 @var{file} is either a null pointer, or a stdio stream to write any debug output to.
6625 @deftypefn {Target Hook} void TARGET_SCHED_FINISH_GLOBAL (FILE *@var{file}, int @var{verbose})
6627 @var{file} is either a null pointer, or a stdio stream to write any debug output to.
6742 start as usually. @var{dump} and @var{verbose} specify the file and
6881 An object file is divided into sections containing different types of
6888 @file{varasm.c} provides several well-known sections, such as
6892 as described below. The macros are only read once, when @file{varasm.c}
6896 @emph{Note:} Some run-time files, such @file{crtstuff.c}, also make
6912 All the other @file{varasm.c} sections are optional, and are null
7013 the text section. This is used in @file{crtstuff.c} if
7053 @file{varasm.c} sections, or if your target has some special sections
7182 in @file{varasm.c}, sets a number of commonly-useful bits in
7217 currently supported object file formats.
7279 * File Framework:: Structural information for the assembler file.
7300 This describes the overall framework of an assembly file.
7305 find at the beginning of a file. The default behavior is controlled
7314 printed as the very first line in the assembly file, unless
7328 for the primary source file, immediately after printing
7335 to find at the end of a file. The default is to output nothing.
7340 special section, to indicate whether or not an object file relies on
7361 unwind info and debug info at the end of a file. Some targets emit
7362 here PIC setup thunks that cannot be emitted at the end of file,
7390 which indicates that filename @var{name} is the current source file to
7394 for the file format in use is appropriate.
7397 @deftypefn {Target Hook} void TARGET_ASM_OUTPUT_SOURCE_FILENAME (FILE *@var{file}, const char *@var…
7398 …which indicates that filename @var{name} is the current source file to the stdio stream @var{file}.
7400 …This target hook need not be defined if the standard form of output for the file format in use is …
7412 A C statement to output something to the assembler file to handle a
7420 of the @code{SECTION_*} flags defined in @file{output.h}. If @var{decl}
7435 @deftypefn {Target Hook} void TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS (FILE *@var{file}, tree @v…
7436 …artitioned between different sections. Output should be written to @var{file}. The function de…
7504 section in the assembler output file. The name of the new section is
7553 @deftypefn {Target Hook} bool TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA (FILE *@var{file}, rtx @var{x})
7555 can't deal with, and output assembly code to @var{file} corresponding to
7591 @defmac ASM_OUTPUT_POOL_PROLOGUE (@var{file}, @var{funname}, @var{fundecl}, @var{size})
7603 @defmac ASM_OUTPUT_SPECIAL_POOL_ENTRY (@var{file}, @var{x}, @var{mode}, @var{align}, @var{labelno},…
7608 The argument @var{file} is the standard I/O stream to output the
7621 @code{(*targetm.asm_out.internal_label)} (@var{file}, "LC", @var{labelno});
7631 @defmac ASM_OUTPUT_POOL_EPILOGUE (@var{file} @var{funname} @var{fundecl} @var{size})
7659 These macros are provided by @file{real.h} for writing the definitions
7734 Try to use function @code{asm_output_aligned_bss} defined in file
7735 @file{varasm.c} when defining this macro. If unable, use the expression
7749 common in order to save space in the object file.
7823 default (in @file{config/elfos.h}) is @samp{"\t.size\t"}; on other
7858 default (in @file{config/elfos.h}) is @samp{"\t.type\t"}; on other
7870 default (in @file{config/elfos.h}) is @samp{"@@%s"}; on other systems,
7932 @deftypefn {Target Hook} void TARGET_ASM_DECLARE_CONSTANT_NAME (FILE *@var{file}, const char *@var{…
7933 A target hook to output to the stdio stream @var{file} any text necessary
8020 If you don't define this macro, @file{defaults.h} provides a default
8028 If you don't define this macro, @file{defaults.h} provides a default
8037 be discarded by the linker. Define this macro if your object file
8047 If you don't define this macro, @file{varasm.c} provides a default
8112 …as @code{varasm.c}'s @code{assemble_name}, but in memory rather than to a file stream, returning r…
8142 object file. Most assemblers have a naming convention for labels that
8307 Depending on the operating system and its executable file format, either
8308 @file{crtstuff.c} or @file{libgcc2.c} traverses these lists at startup
8312 The best way to handle static constructors works only for object file
8316 object file that defines an initialization function also puts a word in
8321 This method will be chosen as the default by @file{target-def.h} if
8328 upon how the code in @file{crtstuff.c} is called. On systems that
8330 parts of @file{crtstuff.c} are compiled into that section. The
8338 section of @file{crti.o}; the epilogue appears in @file{crtn.o}. Likewise
8343 The objects @file{crtbegin.o} and @file{crtend.o} are (for most targets)
8344 compiled from @file{crtstuff.c}. They contain, among other things, code
8358 in @file{libgcc2.c} and runs the global constructors.
8360 In file formats that don't support arbitrary sections, there are again
8377 file formats which the GNU linker does not support, such as `ECOFF'@. In
8385 @code{use_collect2} must be defined in the target in @file{config.gcc}.
8403 macro also controls how @file{crtstuff.c} and @file{libgcc2.c} arrange to
8485 generated for the generated object file will have static linkage.
8489 an object file for constructor functions to be called.
8504 Define this macro as a C string constant containing the file name to use
8619 file of instruction patterns; by defining this macro differently, you
8628 @deftypefn {Target Hook} void TARGET_ASM_FINAL_POSTSCAN_INSN (FILE *@var{file}, rtx @var{insn}, rtx…
8688 @defmac DBR_OUTPUT_SEQEND (@var{file})
8715 @file{final.c}). These are useful when a single @file{md} file must
8716 support multiple assembler formats. In that case, the various @file{tm.h}
8720 @defmac ASM_FPRINTF_EXTENSIONS (@var{file}, @var{argptr}, @var{format})
8727 specific code. The output file is given by the parameter @var{file}.
8892 @file{crtstuff.c} uses this macro to switch to the appropriate section.
9137 * File Names and DBX:: Macros controlling output of file names in DBX format.
9330 macro also directs GCC to output a type number as a pair of a file
9331 number and a type number within the file. Normally, GCC does not
9360 number @var{line} of the current source file to the stdio stream
9386 This describes file names in DBX format.
9390 @var{stream}, which indicates that file @var{name} is the main source
9391 file---the file specified as the input file for compilation.
9406 the beginning of the file.
9411 that this object file was compiled by GCC@. The default is to emit
9412 an @code{N_OPT} stab at the beginning of every source file, with
9418 compilation of the main source file @var{name}. Output should be
9429 whose value is the highest absolute text address in the file.
9445 Define this macro if GCC should produce dwarf version 2 format
9449 Define this to enable the dwarf attribute @code{DW_AT_calling_convention} to
9533 @deftypefn {Target Hook} void TARGET_ASM_OUTPUT_DWARF_DTPREL (FILE *@var{file}, int @var{size}, rtx…
9540 SDB assembler directives. See @file{sdbout.c} for a list of these
9568 number @var{line} of the current source file to the stdio stream
9607 The following macros are provided by @file{real.h} for the compiler to
9791 be documented in @file{extend.texi}.
9795 attribute_spec} (defined in @file{tree.h}) specifying the machine
9849 @samp{dllexport} attributes. This is done in @file{i386/cygwin.h} and
9850 @file{i386/i386.c}, for example.
9903 @xref{Option file format}.
9912 @deftypefn {Target Hook} void TARGET_OPTION_PRINT (FILE *@var{file}, int @var{indent}, struct cl_ta…
10075 This hook checks whether the options used to create a PCH file are
10081 when the PCH file was created and @var{sz} is the size of that data in bytes.
10093 @code{target_flags} had when the PCH file was created. The return
10098 Called before writing out a PCH file. If the target has some
10444 such machines. Instead, add patterns to the @file{md} file that include
10609 @file{rs6000.md} for some examples. The GNU Superoptimizer can be used to
10701 C++, which is to pretend that the file's contents are enclosed in
10755 target entry in the @file{config.gcc} file. These variables should name
10756 the target-specific, language-specific object file which contains the
10759 how to build this object file.
10842 @code{tree_overlaps_hard_reg_set}, declared in @file{tree.h}, to test
10864 Define this macro if the target supports the following POSIX@ file
10865 functions, access, mkdir and file locking with fcntl / F_SETLKW@.
10867 to use file locking when exiting a program, which avoids race conditions
11324 to the functions in @file{libgcc} that provide low-level support for
11325 call stack unwinding. It is used in declarations in @file{unwind-generic.h}