parent
6b67c26e61
commit
af27aff6ae
|
@ -12,19 +12,6 @@
|
|||
|
||||
In addition to the file @file{@var{machine}.md}, a machine description
|
||||
includes a C header file conventionally given the name
|
||||
<<<<<<< tm.texi
|
||||
@file{@var{machine}.h} and a C source file named @file{@var{machine}.c}.
|
||||
The header file defines numerous macros that convey the information
|
||||
about the target machine that does not fit into the scheme of the
|
||||
@file{.md} file. The file @file{tm.h} should be a link to
|
||||
@file{@var{machine}.h}. The header file @file{config.h} includes
|
||||
@file{tm.h} and most compiler source files include @file{config.h}. The
|
||||
source file defines a variable @code{target}, which is a structure
|
||||
containing pointers to functions and data relating to the target
|
||||
machine. @file{@var{machine}.c} should also their definitions, if they
|
||||
are not defined elsewhere in GCC, and other functions called through the
|
||||
macros defined in the @file{.h} file.
|
||||
=======
|
||||
@file{@var{machine}.h} and a C source file named @file{@var{machine}.c}.
|
||||
The header file defines numerous macros that convey the information
|
||||
about the target machine that does not fit into the scheme of the
|
||||
|
@ -36,7 +23,6 @@ containing pointers to functions and data relating to the target
|
|||
machine. @file{@var{machine}.c} should also contain their definitions,
|
||||
if they are not defined elsewhere in GCC, and other functions called
|
||||
through the macros defined in the @file{.h} file.
|
||||
>>>>>>> 1.11
|
||||
|
||||
@menu
|
||||
* Target Structure:: The @code{target} variable.
|
||||
|
@ -8320,33 +8306,6 @@ If defined, a C statement that assigns default attributes to
|
|||
newly defined @var{type}.
|
||||
@end table
|
||||
|
||||
<<<<<<< tm.texi
|
||||
@deftypefn {Target Hook} tree TARGET_MERGE_TYPE_ATTRIBUTES (tree @var{type1}, tree @var{type2})
|
||||
Define this target hook if the merging of type attributes needs special
|
||||
handling. If defined, the result is a list of the combined
|
||||
@code{TYPE_ATTRIBUTES} of @var{type1} and @var{type2}. It is assumed
|
||||
that @code{comptypes} has already been called and returned 1. This
|
||||
function may call @code{merge_attributes} to handle machine-independent
|
||||
merging.
|
||||
@end deftypefn
|
||||
|
||||
@deftypefn {Target Hook} tree TARGET_MERGE_DECL_ATTRIBUTES (tree @var{olddecl}, tree @var{newdecl})
|
||||
Define this target hook if the merging of decl attributes needs special
|
||||
handling. If defined, the result is a list of the combined
|
||||
@code{DECL_MACHINE_ATTRIBUTES} of @var{olddecl} and @var{newdecl}.
|
||||
@var{newdecl} is a duplicate declaration of @var{olddecl}. Examples of
|
||||
when this is needed are when one attribute overrides another, or when an
|
||||
attribute is nullified by a subsequent definition. This function may
|
||||
call @code{merge_attributes} to handle machine-independent merging.
|
||||
|
||||
If the only target-specific handling you require is @samp{dllimport} for
|
||||
Windows targets, you should define the macro
|
||||
@code{TARGET_DLLIMPORT_DECL_ATTRIBUTES}. This links in a function
|
||||
called @code{merge_dllimport_decl_attributes} which you can then define
|
||||
as the expansion of @code{TARGET_MERGE_DECL_ATTRIBUTES}. This is done
|
||||
in @file{i386/cygwin.h} and @file{i386/i386.c}, for example.
|
||||
@end deftypefn
|
||||
=======
|
||||
@deftypefn {Target Hook} tree TARGET_MERGE_TYPE_ATTRIBUTES (tree @var{type1}, tree @var{type2})
|
||||
Define this target hook if the merging of type attributes needs special
|
||||
handling. If defined, the result is a list of the combined
|
||||
|
@ -8373,7 +8332,6 @@ called @code{merge_dllimport_decl_attributes} which can then be defined
|
|||
as the expansion of @code{TARGET_MERGE_DECL_ATTRIBUTES}. This is done
|
||||
in @file{i386/cygwin.h} and @file{i386/i386.c}, for example.
|
||||
@end deftypefn
|
||||
>>>>>>> 1.11
|
||||
|
||||
@table @code
|
||||
@findex INSERT_ATTRIBUTES
|
||||
|
|
Loading…
Reference in New Issue