mirror of git://gcc.gnu.org/git/gcc.git
c-tree.texi, [...]: Correct end-of-sentence markup and markup of "etc.", "e.g." and "i.e.".
* doc/c-tree.texi, doc/cfg.texi, doc/contrib.texi, doc/cpp.texi, doc/cppopts.texi, doc/extend.texi, doc/fragments.texi, doc/frontends.texi, doc/gcov.texi, doc/hostconfig.texi, doc/implement-c.texi, doc/install.texi, doc/invoke.texi, doc/libgcc.texi, doc/md.texi, doc/passes.texi, doc/portability.texi, doc/rtl.texi, doc/sourcebuild.texi, doc/standards.texi, doc/tm.texi, doc/tree-ssa.texi, doc/trouble.texi: Correct end-of-sentence markup and markup of "etc.", "e.g." and "i.e.". Use @code in various places where appropriate. From-SVN: r90101
This commit is contained in:
parent
f0eb93a806
commit
8a36672b01
|
@ -1,3 +1,16 @@
|
|||
2004-11-05 Joseph S. Myers <joseph@codesourcery.com>
|
||||
|
||||
* doc/c-tree.texi, doc/cfg.texi, doc/contrib.texi, doc/cpp.texi,
|
||||
doc/cppopts.texi, doc/extend.texi, doc/fragments.texi,
|
||||
doc/frontends.texi, doc/gcov.texi, doc/hostconfig.texi,
|
||||
doc/implement-c.texi, doc/install.texi, doc/invoke.texi,
|
||||
doc/libgcc.texi, doc/md.texi, doc/passes.texi,
|
||||
doc/portability.texi, doc/rtl.texi, doc/sourcebuild.texi,
|
||||
doc/standards.texi, doc/tm.texi, doc/tree-ssa.texi,
|
||||
doc/trouble.texi: Correct end-of-sentence markup and markup of
|
||||
"etc.", "e.g." and "i.e.". Use @code in various places where
|
||||
appropriate.
|
||||
|
||||
2004-11-05 Joseph S. Myers <joseph@codesourcery.com>
|
||||
|
||||
* doc/c-tree.texi, doc/cfg.texi, doc/extend.texi, doc/gty.texi,
|
||||
|
|
|
@ -776,7 +776,7 @@ The following macros can be used on a tree node representing a class-type.
|
|||
|
||||
@ftable @code
|
||||
@item LOCAL_CLASS_P
|
||||
This predicate holds if the class is local class @emph{i.e.} declared
|
||||
This predicate holds if the class is local class @emph{i.e.}@: declared
|
||||
inside a function body.
|
||||
|
||||
@item TYPE_POLYMORPHIC_P
|
||||
|
@ -2062,7 +2062,7 @@ These nodes represent integer division operations that return an integer
|
|||
result. @code{TRUNC_DIV_EXPR} rounds towards zero, @code{FLOOR_DIV_EXPR}
|
||||
rounds towards negative infinity, @code{CEIL_DIV_EXPR} rounds towards
|
||||
positive infinity and @code{ROUND_DIV_EXPR} rounds to the closest integer.
|
||||
Integer division in C and C++ is truncating, i.e@. @code{TRUNC_DIV_EXPR}.
|
||||
Integer division in C and C++ is truncating, i.e.@: @code{TRUNC_DIV_EXPR}.
|
||||
|
||||
The behavior of these operations on signed arithmetic overflow, when
|
||||
dividing the minimum signed integer by minus one, is controlled by the
|
||||
|
@ -2076,9 +2076,9 @@ These nodes represent the integer remainder or modulus operation.
|
|||
The integer modulus of two operands @code{a} and @code{b} is
|
||||
defined as @code{a - (a/b)*b} where the division calculated using
|
||||
the corresponding division operator. Hence for @code{TRUNC_MOD_EXPR}
|
||||
this definition assumes division using truncation towards zero, i.e@.
|
||||
this definition assumes division using truncation towards zero, i.e.@:
|
||||
@code{TRUNC_DIV_EXPR}. Integer remainder in C and C++ uses truncating
|
||||
division, i.e@. @code{TRUNC_MOD_EXPR}.
|
||||
division, i.e.@: @code{TRUNC_MOD_EXPR}.
|
||||
|
||||
@item EXACT_DIV_EXPR
|
||||
The @code{EXACT_DIV_EXPR} code is used to represent integer divisions where
|
||||
|
|
|
@ -44,11 +44,11 @@ Two pointer members of the @code{basic_block} structure are the
|
|||
pointers @code{next_bb} and @code{prev_bb}. These are used to keep
|
||||
doubly linked chain of basic blocks in the same order as the
|
||||
underlying instruction stream. The chain of basic blocks is updated
|
||||
transparently by the provided API for manipulating the CFG. The macro
|
||||
transparently by the provided API for manipulating the CFG@. The macro
|
||||
@code{FOR_EACH_BB} can be used to visit all the basic blocks in
|
||||
lexicographical order. Dominator traversals are also possible using
|
||||
@code{walk_dominator_tree}. Given two basic blocks A and B, block A
|
||||
dominates block B if A is @emph{always} executed before B.
|
||||
dominates block B if A is @emph{always} executed before B@.
|
||||
|
||||
@findex BASIC_BLOCK
|
||||
The @code{BASIC_BLOCK} array contains all basic blocks in an
|
||||
|
@ -140,8 +140,8 @@ FOR_EACH_BB (bb)
|
|||
@cindex edge in the flow graph
|
||||
@findex edge
|
||||
Edges represent possible control flow transfers from the end of some
|
||||
basic block A to the head of another basic block B. We say that A is
|
||||
a predecessor of B, and B is a successor of A. Edges are represented
|
||||
basic block A to the head of another basic block B@. We say that A is
|
||||
a predecessor of B, and B is a successor of A@. Edges are represented
|
||||
in GCC with the @code{edge} data type. Each @code{edge} acts as a
|
||||
link between two basic blocks: the @code{src} member of an edge
|
||||
points to the predecessor basic block of the @code{dest} basic block.
|
||||
|
@ -384,7 +384,7 @@ of basic blocks.
|
|||
|
||||
@findex redirect_edge_and_branch
|
||||
Updating profile information is a delicate task that can unfortunately
|
||||
not be easily integrated with the CFG manipulation API. Many of the
|
||||
not be easily integrated with the CFG manipulation API@. Many of the
|
||||
functions and hooks to modify the CFG, such as
|
||||
@code{redirect_edge_and_branch}, do not have enough information to
|
||||
easily update the profile, so updating it is in the majority of cases
|
||||
|
@ -392,7 +392,7 @@ left up to the caller. It is difficult to uncover bugs in the profile
|
|||
updating code, because they manifest themselves only by producing
|
||||
worse code, and checking profile consistency is not possible because
|
||||
of numeric error accumulation. Hence special attention needs to be
|
||||
given to this issue in each pass that modifies the CFG.
|
||||
given to this issue in each pass that modifies the CFG@.
|
||||
|
||||
@findex REG_BR_PROB_BASE, BB_FREQ_BASE, count
|
||||
It is important to point out that @code{REG_BR_PROB_BASE} and
|
||||
|
@ -527,7 +527,7 @@ this is best modeled as redirection of edges in the control flow graph
|
|||
and thus use of @code{redirect_edge_and_branch} is preferred over more
|
||||
low level functions, such as @code{redirect_jump} that operate on RTL
|
||||
chain only. The CFG hooks defined in @file{cfghooks.h} should provide
|
||||
the complete API required for manipulating and maintaining the CFG.
|
||||
the complete API required for manipulating and maintaining the CFG@.
|
||||
|
||||
@findex find_sub_basic_blocks, split_block
|
||||
It is also possible that a pass has to insert control flow instruction
|
||||
|
@ -561,7 +561,7 @@ function may be useful to find bugs in the control flow graph updating
|
|||
code.
|
||||
|
||||
Note that at present, the representation of control flow in the
|
||||
@code{tree} representation is discarded before expanding to RTL.
|
||||
@code{tree} representation is discarded before expanding to RTL@.
|
||||
Long term the CFG should be maintained and ``expanded'' to the
|
||||
RTL representation along with the function @code{tree} itself.
|
||||
|
||||
|
|
|
@ -94,7 +94,7 @@ Per Bothner for his direction via the steering committee and various
|
|||
improvements to the infrastructure for supporting new languages. Chill
|
||||
front end implementation. Initial implementations of
|
||||
cpplib, fix-header, config.guess, libio, and past C++ library (libg++)
|
||||
maintainer. Dreaming up, designing and implementing much of GCJ.
|
||||
maintainer. Dreaming up, designing and implementing much of GCJ@.
|
||||
|
||||
@item
|
||||
Devon Bowen helped port GCC to the Tahoe.
|
||||
|
@ -118,7 +118,7 @@ Christian Bruel for improvements to local store elimination.
|
|||
Herman A.J. ten Brugge for various fixes.
|
||||
|
||||
@item
|
||||
Joerg Brunsmann for Java compiler hacking and help with the GCJ FAQ.
|
||||
Joerg Brunsmann for Java compiler hacking and help with the GCJ FAQ@.
|
||||
|
||||
@item
|
||||
Joe Buck for his direction via the steering committee.
|
||||
|
@ -146,7 +146,7 @@ Steve Chamberlain for support for the Renesas SH and H8 processors
|
|||
and the PicoJava processor, and for GCJ config fixes.
|
||||
|
||||
@item
|
||||
Glenn Chambers for help with the GCJ FAQ.
|
||||
Glenn Chambers for help with the GCJ FAQ@.
|
||||
|
||||
@item
|
||||
John-Marc Chandonia for various libgcj patches.
|
||||
|
@ -236,7 +236,7 @@ Richard Earnshaw for his ongoing work with the ARM@.
|
|||
David Edelsohn for his direction via the steering committee, ongoing work
|
||||
with the RS6000/PowerPC port, help cleaning up Haifa loop changes,
|
||||
doing the entire AIX port of libstdc++ with his bare hands, and for
|
||||
ensuring GCC properly keeps working on AIX.
|
||||
ensuring GCC properly keeps working on AIX@.
|
||||
|
||||
@item
|
||||
Kevin Ediger for the floating point formatting of num_put::do_put in
|
||||
|
@ -279,7 +279,7 @@ feeding the gcc.gnu.org box and saving its users tons of spam.
|
|||
Fred Fish for BeOS support and Ada fixes.
|
||||
|
||||
@item
|
||||
Ivan Fontes Garcia for the Portugese translation of the GCJ FAQ.
|
||||
Ivan Fontes Garcia for the Portugese translation of the GCJ FAQ@.
|
||||
|
||||
@item
|
||||
Peter Gerwinski for various bug fixes and the Pascal front end.
|
||||
|
@ -490,7 +490,7 @@ Warren Levy for tremendous work on libgcj (Java Runtime Library) and
|
|||
random work on the Java front end.
|
||||
|
||||
@item
|
||||
Alain Lichnewsky ported GCC to the MIPS CPU.
|
||||
Alain Lichnewsky ported GCC to the MIPS CPU@.
|
||||
|
||||
@item
|
||||
Oskar Liljeblad for hacking on AWT and his many Java bug reports and
|
||||
|
@ -544,7 +544,7 @@ for Java test code.
|
|||
Bryce McKinlay for numerous GCJ and libgcj fixes and improvements.
|
||||
|
||||
@item
|
||||
Adam Megacz for his work on the Microsoft Windows port of GCJ.
|
||||
Adam Megacz for his work on the Microsoft Windows port of GCJ@.
|
||||
|
||||
@item
|
||||
Michael Meissner for LRS framework, ia32, m32r, v850, m88k, MIPS,
|
||||
|
@ -685,14 +685,14 @@ Ovidiu Predescu for his work on the Objective-C front end and runtime
|
|||
libraries.
|
||||
|
||||
@item
|
||||
Jerry Quinn for major performance improvements in C++ formatted I/O.
|
||||
Jerry Quinn for major performance improvements in C++ formatted I/O@.
|
||||
|
||||
@item
|
||||
Ken Raeburn for various improvements to checker, MIPS ports and various
|
||||
cleanups in the compiler.
|
||||
|
||||
@item
|
||||
Rolf W. Rasmussen for hacking on AWT.
|
||||
Rolf W. Rasmussen for hacking on AWT@.
|
||||
|
||||
@item
|
||||
David Reese of Sun Microsystems contributed to the Solaris on PowerPC
|
||||
|
@ -750,7 +750,7 @@ Roger Sayle for improvements to constant folding and GCC's RTL optimizers
|
|||
as well as for fixing numerous bugs.
|
||||
|
||||
@item
|
||||
Bradley Schatz for his work on the GCJ FAQ.
|
||||
Bradley Schatz for his work on the GCJ FAQ@.
|
||||
|
||||
@item
|
||||
Peter Schauer wrote the code to allow debugging to work on the Alpha.
|
||||
|
@ -794,7 +794,7 @@ folding and help with the original VAX & m68k ports.
|
|||
|
||||
@item
|
||||
Kenny Simpson for prompting libstdc++ fixes due to defect reports from
|
||||
the LWG (thereby keeping GCC in line with updates from the ISO).
|
||||
the LWG (thereby keeping GCC in line with updates from the ISO)@.
|
||||
|
||||
@item
|
||||
Franz Sirl for his ongoing work with making the PPC port stable
|
||||
|
@ -855,7 +855,7 @@ Ian Lance Taylor for his mips16 work, general configury hacking,
|
|||
fixincludes, etc.
|
||||
|
||||
@item
|
||||
Holger Teutsch provided the support for the Clipper CPU.
|
||||
Holger Teutsch provided the support for the Clipper CPU@.
|
||||
|
||||
@item
|
||||
Gary Thomas for his ongoing work to make the PPC work for GNU/Linux.
|
||||
|
@ -864,7 +864,7 @@ Gary Thomas for his ongoing work to make the PPC work for GNU/Linux.
|
|||
Philipp Thomas for random bug fixes throughout the compiler
|
||||
|
||||
@item
|
||||
Jason Thorpe for thread support in libstdc++ on NetBSD.
|
||||
Jason Thorpe for thread support in libstdc++ on NetBSD@.
|
||||
|
||||
@item
|
||||
Kresten Krab Thorup wrote the run time support for the Objective-C
|
||||
|
@ -938,7 +938,7 @@ Ulrich Weigand for work on the s390 port.
|
|||
Zack Weinberg for major work on cpplib and various other bug fixes.
|
||||
|
||||
@item
|
||||
Matt Welsh for help with Linux Threads support in GCJ.
|
||||
Matt Welsh for help with Linux Threads support in GCJ@.
|
||||
|
||||
@item
|
||||
Urban Widmark for help fixing java.io.
|
||||
|
|
|
@ -230,7 +230,7 @@ differences that do exist are detailed in the section @ref{Traditional
|
|||
Mode}.
|
||||
|
||||
For clarity, unless noted otherwise, references to @samp{CPP} in this
|
||||
manual refer to GNU CPP.
|
||||
manual refer to GNU CPP@.
|
||||
@c man end
|
||||
|
||||
@menu
|
||||
|
@ -2091,7 +2091,7 @@ handling.
|
|||
|
||||
@item __NEXT_RUNTIME__
|
||||
This macro is defined, with value 1, if (and only if) the NeXT runtime
|
||||
(as in @option{-fnext-runtime}) is in use for Objective-C. If the GNU
|
||||
(as in @option{-fnext-runtime}) is in use for Objective-C@. If the GNU
|
||||
runtime is used, this macro is not defined, so that you can use this
|
||||
macro to determine which runtime (NeXT or GNU) is being used.
|
||||
|
||||
|
@ -3802,7 +3802,7 @@ target character, and then or-ing in the bit-pattern of the new
|
|||
character truncated to the width of a target character. The final
|
||||
bit-pattern is given type @code{int}, and is therefore signed,
|
||||
regardless of whether single characters are signed or not (a slight
|
||||
change from versions 3.1 and earlier of GCC). If there are more
|
||||
change from versions 3.1 and earlier of GCC)@. If there are more
|
||||
characters in the constant than would fit in the target @code{int} the
|
||||
compiler issues a warning, and the excess leading characters are
|
||||
ignored.
|
||||
|
|
|
@ -333,10 +333,10 @@ Headers}) together with @option{-E}. It inserts a special @code{#pragma},
|
|||
@code{#pragma GCC pch_preprocess "<filename>"} in the output to mark
|
||||
the place where the precompiled header was found, and its filename. When
|
||||
@option{-fpreprocessed} is in use, GCC recognizes this @code{#pragma} and
|
||||
loads the PCH.
|
||||
loads the PCH@.
|
||||
|
||||
This option is off by default, because the resulting preprocessed output
|
||||
is only really suitable as input to GCC. It is switched on by
|
||||
is only really suitable as input to GCC@. It is switched on by
|
||||
@option{-save-temps}.
|
||||
|
||||
You should not write this @code{#pragma} in your own code, but it is
|
||||
|
@ -546,7 +546,7 @@ problems with encodings that do not fit exactly in @code{wchar_t}.
|
|||
@item -finput-charset=@var{charset}
|
||||
@opindex finput-charset
|
||||
Set the input character set, used for translation from the character
|
||||
set of the input file to the source character set used by GCC. If the
|
||||
set of the input file to the source character set used by GCC@. If the
|
||||
locale does not specify, or GCC cannot get this information from the
|
||||
locale, the default is UTF-8. This can be overridden by either the locale
|
||||
or this command line option. Currently the command line option takes
|
||||
|
|
|
@ -1631,7 +1631,7 @@ Currently, the @code{dllexport} attribute is ignored for inlined
|
|||
functions, unless the @option{-fkeep-inline-functions} flag has been
|
||||
used. The attribute is also ignored for undefined symbols.
|
||||
|
||||
When applied to C++ classes. the attribute marks defined non-inlined
|
||||
When applied to C++ classes, the attribute marks defined non-inlined
|
||||
member functions and static data members as exports. Static consts
|
||||
initialized in-class are not marked unless they are also defined
|
||||
out-of-class.
|
||||
|
@ -1676,12 +1676,12 @@ the current translation unit.
|
|||
|
||||
For Microsoft Windows based targets the use of the @code{dllimport}
|
||||
attribute on functions is not necessary, but provides a small
|
||||
performance benefit by eliminating a thunk in the DLL. The use of the
|
||||
performance benefit by eliminating a thunk in the DLL@. The use of the
|
||||
@code{dllimport} attribute on imported variables was required on older
|
||||
versions of the GNU linker, but can now be avoided by passing the
|
||||
@option{--enable-auto-import} switch to the GNU linker. As with
|
||||
functions, using the attribute for a variable eliminates a thunk in
|
||||
the DLL.
|
||||
the DLL@.
|
||||
|
||||
One drawback to using this attribute is that a pointer to a function
|
||||
or variable marked as @code{dllimport} cannot be used as a constant
|
||||
|
@ -1719,7 +1719,7 @@ the @code{rtc}.
|
|||
@item fastcall
|
||||
@cindex functions that pop the argument stack on the 386
|
||||
On the Intel 386, the @code{fastcall} attribute causes the compiler to
|
||||
pass the first two arguments in the registers ECX and EDX. Subsequent
|
||||
pass the first two arguments in the registers ECX and EDX@. Subsequent
|
||||
arguments are passed on the stack. The called function will pop the
|
||||
arguments off the stack. If the number of arguments is variable all
|
||||
arguments are pushed on the stack.
|
||||
|
@ -2214,7 +2214,7 @@ See the ELF gABI for complete details, but the short story is:
|
|||
@c keep this list of visibilities in alphabetical order.
|
||||
|
||||
@item default
|
||||
Default visibility is the normal case for ELF. This value is
|
||||
Default visibility is the normal case for ELF@. This value is
|
||||
available for the visibility attribute to override other options
|
||||
that may change the assumed visibility of symbols.
|
||||
|
||||
|
@ -2976,7 +2976,7 @@ The @code{dllexport} attribute is described in @xref{Function Attributes}.
|
|||
|
||||
@subsection M32R/D Variable Attributes
|
||||
|
||||
One attribute is currently defined for the M32R/D.
|
||||
One attribute is currently defined for the M32R/D@.
|
||||
|
||||
@table @code
|
||||
@item model (@var{model-name})
|
||||
|
@ -3312,7 +3312,7 @@ above in recent GCC versions.
|
|||
On those ARM targets that support @code{dllimport} (such as Symbian
|
||||
OS), you can use the @code{notshared} attribute to indicate that the
|
||||
virtual table and other similar data for a class should not be
|
||||
exported from a DLL. For example:
|
||||
exported from a DLL@. For example:
|
||||
|
||||
@smallexample
|
||||
class __declspec(notshared) C @{
|
||||
|
@ -3502,7 +3502,7 @@ template from the first output operand and another separates the last
|
|||
output operand from the first input, if any. Commas separate the
|
||||
operands within each group. The total number of operands is currently
|
||||
limited to 30; this limitation may be lifted in some future version of
|
||||
GCC.
|
||||
GCC@.
|
||||
|
||||
If there are no output operands but there are input operands, you must
|
||||
place two consecutive colons surrounding the place where the output
|
||||
|
@ -5053,7 +5053,7 @@ depending on the arguments' types. For example:
|
|||
@})
|
||||
@end smallexample
|
||||
|
||||
@emph{Note:} This construct is only available for C.
|
||||
@emph{Note:} This construct is only available for C@.
|
||||
|
||||
@end deftypefn
|
||||
|
||||
|
@ -5093,7 +5093,7 @@ Example:
|
|||
(void)0))
|
||||
@end smallexample
|
||||
|
||||
@emph{Note:} This construct is only available for C. Furthermore, the
|
||||
@emph{Note:} This construct is only available for C@. Furthermore, the
|
||||
unused expression (@var{exp1} or @var{exp2} depending on the value of
|
||||
@var{const_exp}) may still generate syntax errors. This may change in
|
||||
future revisions.
|
||||
|
@ -5266,7 +5266,7 @@ leading @samp{0} or @samp{0x} prefixes. The number parsed is placed
|
|||
in the significand such that the least significant bit of the number
|
||||
is at the least significant bit of the significand. The number is
|
||||
truncated to fit the significand field provided. The significand is
|
||||
forced to be a quiet NaN.
|
||||
forced to be a quiet NaN@.
|
||||
|
||||
This function, if given a string literal, is evaluated early enough
|
||||
that it is considered a compile-time constant.
|
||||
|
@ -5282,7 +5282,7 @@ Similar to @code{__builtin_nan}, except the return type is @code{long double}.
|
|||
|
||||
@deftypefn {Built-in Function} double __builtin_nans (const char *str)
|
||||
Similar to @code{__builtin_nan}, except the significand is forced
|
||||
to be a signaling NaN. The @code{nans} function is proposed by
|
||||
to be a signaling NaN@. The @code{nans} function is proposed by
|
||||
@uref{http://www.open-std.org/jtc1/sc22/wg14/www/docs/n965.htm,,WG14 N965}.
|
||||
@end deftypefn
|
||||
|
||||
|
@ -5314,7 +5314,7 @@ Returns the number of 1-bits in @var{x}.
|
|||
@end deftypefn
|
||||
|
||||
@deftypefn {Built-in Function} int __builtin_parity (unsigned int x)
|
||||
Returns the parity of @var{x}, i.@:e. the number of 1-bits in @var{x}
|
||||
Returns the parity of @var{x}, i.e.@: the number of 1-bits in @var{x}
|
||||
modulo 2.
|
||||
@end deftypefn
|
||||
|
||||
|
@ -8648,7 +8648,7 @@ declarations to have @var{string} prepended to their assembly symbols.
|
|||
This effect may be terminated with another @code{extern_prefix} pragma
|
||||
whose argument is an empty string. The preprocessor macro
|
||||
@code{__PRAGMA_EXTERN_PREFIX} will be defined if this pragma is
|
||||
available (currently only on Tru64 UNIX).
|
||||
available (currently only on Tru64 UNIX)@.
|
||||
@end table
|
||||
|
||||
These pragmas and the asm labels extension interact in a complicated
|
||||
|
|
|
@ -186,7 +186,7 @@ Variables provided for host fragments to set include:
|
|||
@itemx X_CPPFLAGS
|
||||
These are extra flags to pass to the C compiler and preprocessor,
|
||||
respectively. They are used both when building GCC, and when compiling
|
||||
things with the just-built GCC.
|
||||
things with the just-built GCC@.
|
||||
|
||||
@item XCFLAGS
|
||||
These are extra flags to use when building the compiler. They are not
|
||||
|
|
|
@ -39,7 +39,7 @@ The part of a compiler that is specific to a particular language is
|
|||
called the ``front end''. In addition to the front ends that are
|
||||
integrated components of GCC, there are several other front ends that
|
||||
are maintained separately. These support languages such as Pascal,
|
||||
Mercury, and COBOL. To use these, they must be built together with
|
||||
Mercury, and COBOL@. To use these, they must be built together with
|
||||
GCC proper.
|
||||
|
||||
@cindex C++
|
||||
|
|
|
@ -49,7 +49,7 @@ a freestanding environment); refer to their documentation for details.
|
|||
@item
|
||||
@cite{How a diagnostic is identified (C90 3.7, C99 3.10, C90 and C99 5.1.1.3).}
|
||||
|
||||
Diagnostics consist of all the output sent to stderr by GCC.
|
||||
Diagnostics consist of all the output sent to stderr by GCC@.
|
||||
|
||||
@item
|
||||
@cite{Whether each nonempty sequence of white-space characters other than
|
||||
|
|
|
@ -261,7 +261,7 @@ environment to your ``good'' shell prior to running
|
|||
@command{configure}/@command{make}.
|
||||
|
||||
@command{zsh} is not a fully compliant POSIX shell and will not
|
||||
work when configuring GCC.
|
||||
work when configuring GCC@.
|
||||
|
||||
@item GNU binutils
|
||||
|
||||
|
@ -277,7 +277,7 @@ obtained via FTP mirror sites.
|
|||
|
||||
@item GNU make version 3.79.1 (or later)
|
||||
|
||||
You must have GNU make installed to build GCC.
|
||||
You must have GNU make installed to build GCC@.
|
||||
|
||||
@item GNU tar version 1.12 (or later)
|
||||
|
||||
|
@ -391,7 +391,7 @@ Necessary for running @command{texi2dvi}, used when running
|
|||
@itemx ssh (any version)
|
||||
|
||||
Necessary to access the CVS repository. Public releases and weekly
|
||||
snapshots of the development sources are also available via FTP.
|
||||
snapshots of the development sources are also available via FTP@.
|
||||
|
||||
@item perl version 5.6.1 (or later)
|
||||
|
||||
|
@ -1202,7 +1202,7 @@ directory. @emph{This option with the @var{dir} argument is required} when
|
|||
building a cross compiler, if @file{@var{prefix}/@var{target}/sys-include}
|
||||
doesn't pre-exist. If @file{@var{prefix}/@var{target}/sys-include} does
|
||||
pre-exist, the @var{dir} argument may be omitted. @command{fixincludes}
|
||||
will be run on these files to make them compatible with GCC.
|
||||
will be run on these files to make them compatible with GCC@.
|
||||
|
||||
@item --without-headers
|
||||
Tells GCC not use any target headers from a libc when building a cross
|
||||
|
@ -1321,7 +1321,7 @@ Use installed @samp{zlib} rather than that included with GCC@.
|
|||
|
||||
@item --with-win32-nlsapi=ansi, unicows or unicode
|
||||
Indicates how MinGW @samp{libgcj} translates between UNICODE
|
||||
characters and the Win32 API.
|
||||
characters and the Win32 API@.
|
||||
@table @code
|
||||
@item ansi
|
||||
Use the single-byte @code{char} and the Win32 A functions natively,
|
||||
|
@ -1358,7 +1358,7 @@ will be non-functional. Current valid values are @option{gtk} and
|
|||
comma (i.e.@: @option{--enable-java-awt=gtk,xlib}).
|
||||
|
||||
@item --enable-gtk-cairo
|
||||
Build the cairo Graphics2D implementation on GTK.
|
||||
Build the cairo Graphics2D implementation on GTK@.
|
||||
|
||||
@item --enable-java-gc=TYPE
|
||||
Choose garbage collector. Defaults to @option{boehm} if unspecified.
|
||||
|
@ -1672,7 +1672,7 @@ at @uref{http://gcc.gnu.org/buildstat.html}, although not everyone who
|
|||
reports a successful build runs the testsuites and submits the results.
|
||||
This step is optional and may require you to download additional software,
|
||||
but it can give you confidence in your new GCC installation or point out
|
||||
problems before you install and start using your new GCC.
|
||||
problems before you install and start using your new GCC@.
|
||||
|
||||
First, you must have @uref{download.html,,downloaded the testsuites}.
|
||||
These are part of the full distribution, but if you downloaded the
|
||||
|
@ -1948,7 +1948,7 @@ quickly review the build status page for your release, available from
|
|||
If your system is not listed for the version of GCC that you built,
|
||||
send a note to
|
||||
@email{gcc@@gcc.gnu.org} indicating
|
||||
that you successfully built and installed GCC.
|
||||
that you successfully built and installed GCC@.
|
||||
Include the following information:
|
||||
|
||||
@itemize @bullet
|
||||
|
@ -2567,7 +2567,7 @@ and includes all the necessary compilation tools and libraries.
|
|||
@heading @anchor{*-*-freebsd*}*-*-freebsd*
|
||||
|
||||
The version of binutils installed in @file{/usr/bin} probably works with
|
||||
this release of GCC. However, on FreeBSD 4, bootstrapping against the
|
||||
this release of GCC@. However, on FreeBSD 4, bootstrapping against the
|
||||
latest FSF binutils is known to improve overall testsuite results; and,
|
||||
on FreeBSD/alpha, using binutils 2.14 or later is required to build libjava.
|
||||
|
||||
|
@ -2587,7 +2587,7 @@ FreeBSD/alpha since its inception. You may use @option{-gstabs} instead
|
|||
of @option{-g}, if you really want the old debugging format. There are
|
||||
no known issues with mixing object files and libraries with different
|
||||
debugging formats. Otherwise, this release of GCC should now match more
|
||||
of the configuration used in the stock FreeBSD configuration of GCC. In
|
||||
of the configuration used in the stock FreeBSD configuration of GCC@. In
|
||||
particular, @option{--enable-threads} is now configured by default.
|
||||
However, as a general user, do not attempt to replace the system
|
||||
compiler with this release. Known to bootstrap and check with good
|
||||
|
@ -2633,9 +2633,9 @@ you may encounter a variety of problems when using the HP assembler.
|
|||
|
||||
Specifically, @option{-g} does not work on HP-UX (since that system
|
||||
uses a peculiar debugging format which GCC does not know about), unless
|
||||
you use GAS and GDB. It may be helpful to configure GCC with the
|
||||
you use GAS and GDB@. It may be helpful to configure GCC with the
|
||||
@uref{./configure.html#with-gnu-as,,@option{--with-gnu-as}} and
|
||||
@option{--with-as=@dots{}} options to ensure that GCC can find GAS.
|
||||
@option{--with-as=@dots{}} options to ensure that GCC can find GAS@.
|
||||
|
||||
If you wish to use the pa-risc 2.0 architecture support with a 32-bit
|
||||
runtime, you must use either the HP assembler, or gas/binutils 2.11
|
||||
|
@ -2711,8 +2711,8 @@ GCC 3.0 and up support HP-UX 11. GCC 2.95.x is not supported and cannot
|
|||
be used to compile GCC 3.0 and up.
|
||||
|
||||
Refer to @uref{binaries.html,,binaries} for information about obtaining
|
||||
precompiled GCC binaries for HP-UX. Precompiled binaries must be obtained
|
||||
to build the Ada language as it can't be bootstrapped using C. Ada is
|
||||
precompiled GCC binaries for HP-UX@. Precompiled binaries must be obtained
|
||||
to build the Ada language as it can't be bootstrapped using C@. Ada is
|
||||
only available for the 32-bit PA-RISC runtime. The libffi and libjava
|
||||
haven't been ported to HP-UX and don't build.
|
||||
|
||||
|
@ -2731,7 +2731,7 @@ unbundled compiler, or a binary distribution of GCC@.
|
|||
There are several possible approaches to building the distribution.
|
||||
Binutils can be built first using the HP tools. Then, the GCC
|
||||
distribution can be built. The second approach is to build GCC
|
||||
first using the HP tools, then build binutils, then rebuild GCC.
|
||||
first using the HP tools, then build binutils, then rebuild GCC@.
|
||||
There have been problems with various binary distributions, so it
|
||||
is best not to start from a binary distribution.
|
||||
|
||||
|
@ -2767,7 +2767,7 @@ search for ld. The two linkers supported on this target require different
|
|||
commands. The default linker is determined during configuration. As a
|
||||
result, it's not possible to switch linkers in the middle of a GCC build.
|
||||
This has been been reported to sometimes occur in unified builds of
|
||||
binutils and GCC.
|
||||
binutils and GCC@.
|
||||
|
||||
GCC 3.0 through 3.2 require binutils 2.11 or above. GCC 3.3 through
|
||||
GCC 3.5 require binutils 2.14 or later.
|
||||
|
@ -2970,9 +2970,9 @@ Building GCC on this target requires the GNU Assembler. The bundled HP
|
|||
assembler will not work. To prevent GCC from using the wrong assembler,
|
||||
the option @option{--with-gnu-as} may be necessary.
|
||||
|
||||
The GCC libunwind library has not been ported to HPUX. This means that for
|
||||
The GCC libunwind library has not been ported to HPUX@. This means that for
|
||||
GCC versions 3.2.3 and earlier, @option{--enable-libunwind-exceptions}
|
||||
is required to build GCC. For GCC 3.3 and later, this is the default.
|
||||
is required to build GCC@. For GCC 3.3 and later, this is the default.
|
||||
For gcc 3.4.3 and later, @option{--enable-libunwind-exceptions} is
|
||||
removed and the system libunwind library will always be used.
|
||||
|
||||
|
@ -3010,10 +3010,10 @@ If this error occurs during stage2 or later, then the problem most likely
|
|||
is the version of Make (see above).
|
||||
|
||||
The native @command{as} and @command{ld} are recommended for bootstrapping
|
||||
on AIX 4 and required for bootstrapping on AIX 5L. The GNU Assembler
|
||||
on AIX 4 and required for bootstrapping on AIX 5L@. The GNU Assembler
|
||||
reports that it supports WEAK symbols on AIX 4, which causes GCC to try to
|
||||
utilize weak symbol functionality although it is not supported. The GNU
|
||||
Assembler and Linker do not support AIX 5L sufficiently to bootstrap GCC.
|
||||
Assembler and Linker do not support AIX 5L sufficiently to bootstrap GCC@.
|
||||
The native AIX tools do interoperate with GCC@.
|
||||
|
||||
Building @file{libstdc++.a} requires a fix for an AIX Assembler bug
|
||||
|
@ -3218,9 +3218,9 @@ MIPS systems check for division by zero (unless
|
|||
generating either a conditional trap or a break instruction. Using
|
||||
trap results in smaller code, but is only supported on MIPS II and
|
||||
later. Also, some versions of the Linux kernel have a bug that
|
||||
prevents trap from generating the proper signal (SIGFPE). To enable
|
||||
prevents trap from generating the proper signal (@code{SIGFPE}). To enable
|
||||
the use of break, use the @option{--with-divide=breaks}
|
||||
@command{configure} option when configuring GCC. The default is to
|
||||
@command{configure} option when configuring GCC@. The default is to
|
||||
use traps on systems that support them.
|
||||
|
||||
Cross-compilers for the Mips as target using the Mips assembler
|
||||
|
@ -3436,7 +3436,7 @@ zSeries system (64-bit) running GNU/Linux for zSeries@.
|
|||
<hr />
|
||||
@end html
|
||||
@heading @anchor{s390x-ibm-tpf*}s390x-ibm-tpf*
|
||||
zSeries system (64-bit) running TPF. This platform is
|
||||
zSeries system (64-bit) running TPF@. This platform is
|
||||
supported as cross-compilation target only.
|
||||
|
||||
@html
|
||||
|
@ -3719,7 +3719,7 @@ in some cases (for example, when @code{alloca} is used).
|
|||
@end html
|
||||
@heading @anchor{*-*-vxworks*}*-*-vxworks*
|
||||
Support for VxWorks is in flux. At present GCC supports @emph{only} the
|
||||
very recent VxWorks 5.5 (aka Tornado 2.2) release, and only on PowerPC.
|
||||
very recent VxWorks 5.5 (aka Tornado 2.2) release, and only on PowerPC@.
|
||||
We welcome patches for other architectures supported by VxWorks 5.5.
|
||||
Support for VxWorks AE would also be welcome; we believe this is merely
|
||||
a matter of writing an appropriate ``configlette'' (see below). We are
|
||||
|
@ -3731,7 +3731,7 @@ VxWorks comes with an older version of GCC installed in
|
|||
Choose an installation @var{prefix} entirely outside @var{$WIND_BASE}.
|
||||
Before running @command{configure}, create the directories @file{@var{prefix}}
|
||||
and @file{@var{prefix}/bin}. Link or copy the appropriate assembler,
|
||||
linker, etc. into @file{@var{prefix}/bin}, and set your @var{PATH} to
|
||||
linker, etc.@: into @file{@var{prefix}/bin}, and set your @var{PATH} to
|
||||
include that directory while running both @command{configure} and
|
||||
@command{make}.
|
||||
|
||||
|
@ -3755,7 +3755,7 @@ VxWorks will incorporate this module.)
|
|||
@heading @anchor{x86_64-*-*}x86_64-*-*, amd64-*-*
|
||||
|
||||
GCC supports the x86-64 architecture implemented by the AMD64 processor
|
||||
(amd64-*-* is an alias for x86_64-*-*) on GNU/Linux, FreeBSD and NetBSD.
|
||||
(amd64-*-* is an alias for x86_64-*-*) on GNU/Linux, FreeBSD and NetBSD@.
|
||||
On GNU/Linux the default is a bi-arch compiler which is able to generate
|
||||
both 64-bit x86-64 and 32-bit x86 code (via the @option{-m32} switch).
|
||||
|
||||
|
|
|
@ -989,7 +989,7 @@ line options for each tool.
|
|||
|
||||
@item --version
|
||||
@opindex version
|
||||
Display the version number and copyrights of the invoked GCC.
|
||||
Display the version number and copyrights of the invoked GCC@.
|
||||
@end table
|
||||
|
||||
@node Invoking G++
|
||||
|
@ -1330,7 +1330,7 @@ Here is a list of options that are @emph{only} for compiling C++ programs:
|
|||
|
||||
@item -fabi-version=@var{n}
|
||||
@opindex fabi-version
|
||||
Use version @var{n} of the C++ ABI. Version 2 is the version of the
|
||||
Use version @var{n} of the C++ ABI@. Version 2 is the version of the
|
||||
C++ ABI that first appeared in G++ 3.4. Version 1 is the version of
|
||||
the C++ ABI that first appeared in G++ 3.2. Version 0 will always be
|
||||
the version that conforms most closely to the C++ ABI specification.
|
||||
|
@ -1509,7 +1509,7 @@ destructors, but will only work if your C library supports
|
|||
Causes all inlined methods to be marked with
|
||||
@code{__attribute__ ((visibility ("hidden")))} so that they do not
|
||||
appear in the export table of a DSO and do not require a PLT indirection
|
||||
when used within the DSO. Enabling this option can have a dramatic effect
|
||||
when used within the DSO@. Enabling this option can have a dramatic effect
|
||||
on load and link times of a DSO as it massively reduces the size of the
|
||||
dynamic export table when the library makes heavy use of templates. While
|
||||
it can cause bloating through duplication of code within each DSO where
|
||||
|
@ -1547,7 +1547,7 @@ inlined by default.
|
|||
@item -Wabi @r{(C++ only)}
|
||||
@opindex Wabi
|
||||
Warn when G++ generates code that is probably not compatible with the
|
||||
vendor-neutral C++ ABI. Although an effort has been made to warn about
|
||||
vendor-neutral C++ ABI@. Although an effort has been made to warn about
|
||||
all such cases, there are probably some cases that are not warned about,
|
||||
even though G++ is generating incompatible code. There may also be
|
||||
cases where warnings are emitted even though the code that is generated
|
||||
|
@ -3761,7 +3761,7 @@ made by appending @file{.cfg} to the source file name.
|
|||
Dump the control flow graph of each function to a file in VCG format. The
|
||||
file name is made by appending @file{.vcg} to the source file name. Note
|
||||
that if the file contains more than one function, the generated file cannot
|
||||
be used directly by VCG. You will need to cut and paste each function's
|
||||
be used directly by VCG@. You will need to cut and paste each function's
|
||||
graph into its own separate file first.
|
||||
|
||||
@item ch
|
||||
|
@ -3781,7 +3781,7 @@ appending @file{.alias} to the source file name.
|
|||
|
||||
@item ccp
|
||||
@opindex fdump-tree-ccp
|
||||
Dump each function after CCP. The file name is made by appending
|
||||
Dump each function after CCP@. The file name is made by appending
|
||||
@file{.ccp} to the source file name.
|
||||
|
||||
@item pre
|
||||
|
@ -4234,7 +4234,7 @@ release to an another.
|
|||
In C, emit @code{static} functions that are declared @code{inline}
|
||||
into the object file, even if the function has been inlined into all
|
||||
of its callers. This switch does not affect functions using the
|
||||
@code{extern inline} extension in GNU C. In C++, emit any and all
|
||||
@code{extern inline} extension in GNU C@. In C++, emit any and all
|
||||
inline functions into the object file.
|
||||
|
||||
@item -fkeep-static-consts
|
||||
|
@ -4953,7 +4953,7 @@ attribute @code{used} will prevent this behavior.
|
|||
@end itemize
|
||||
|
||||
As a temporary workaround, @option{-fno-unit-at-a-time} can be used,
|
||||
but this scheme may not be supported by future releases of GCC.
|
||||
but this scheme may not be supported by future releases of GCC@.
|
||||
|
||||
Enabled at levels @option{-O2}, @option{-O3}.
|
||||
|
||||
|
@ -5531,12 +5531,12 @@ Maximum number of basic blocks on path that cse considers. The default is 10.
|
|||
|
||||
@item global-var-threshold
|
||||
|
||||
Counts the number of function calls (N) and the number of
|
||||
call-clobbered variables (V). If NxV is larger than this limit, a
|
||||
Counts the number of function calls (@var{n}) and the number of
|
||||
call-clobbered variables (@var{v}). If @var{n}x@var{v} is larger than this limit, a
|
||||
single artificial variable will be created to represent all the
|
||||
call-clobbered variables at function call sites. This artificial
|
||||
variable will then be made to alias every call-clobbered variable.
|
||||
(done as int * size_t on the host machine; beware overflow).
|
||||
(done as @code{int * size_t} on the host machine; beware overflow).
|
||||
|
||||
@item max-aliased-vops
|
||||
|
||||
|
@ -5554,8 +5554,8 @@ Tuning this may improve compilation speed; it has no effect on code
|
|||
generation.
|
||||
|
||||
The default is 30% + 70% * (RAM/1GB) with an upper bound of 100% when
|
||||
RAM >= 1GB. If @code{getrlimit} is available, the notion of "RAM" is
|
||||
the smallest of actual RAM and RLIMIT_DATA or RLIMIT_AS. If
|
||||
RAM >= 1GB@. If @code{getrlimit} is available, the notion of "RAM" is
|
||||
the smallest of actual RAM and @code{RLIMIT_DATA} or @code{RLIMIT_AS}. If
|
||||
GCC is not able to calculate RAM on a particular platform, the lower
|
||||
bound of 30% is used. Setting this parameter and
|
||||
@option{ggc-min-heapsize} to zero causes a full collection to occur at
|
||||
|
@ -6671,7 +6671,7 @@ architectures:
|
|||
@table @gcctabopt
|
||||
@item -mabi=@var{name}
|
||||
@opindex mabi
|
||||
Generate code for the specified ABI. Permissible values are: @samp{apcs-gnu},
|
||||
Generate code for the specified ABI@. Permissible values are: @samp{apcs-gnu},
|
||||
@samp{atpcs}, @samp{aapcs} and @samp{iwmmxt}.
|
||||
|
||||
@item -mapcs-frame
|
||||
|
@ -7049,7 +7049,7 @@ These options are defined specifically for the CRIS ports.
|
|||
@opindex mcpu
|
||||
Generate code for the specified architecture. The choices for
|
||||
@var{architecture-type} are @samp{v3}, @samp{v8} and @samp{v10} for
|
||||
respectively ETRAX@w{ }4, ETRAX@w{ }100, and ETRAX@w{ }100@w{ }LX.
|
||||
respectively ETRAX@w{ }4, ETRAX@w{ }100, and ETRAX@w{ }100@w{ }LX@.
|
||||
Default is @samp{v0} except for cris-axis-linux-gnu, where the default is
|
||||
@samp{v10}.
|
||||
|
||||
|
@ -7147,7 +7147,7 @@ or storage for local variable needs to be allocated.
|
|||
With @option{-fpic} and @option{-fPIC}, don't generate (do generate)
|
||||
instruction sequences that load addresses for functions from the PLT part
|
||||
of the GOT rather than (traditional on other architectures) calls to the
|
||||
PLT. The default is @option{-mgotplt}.
|
||||
PLT@. The default is @option{-mgotplt}.
|
||||
|
||||
@item -maout
|
||||
@opindex maout
|
||||
|
@ -7243,7 +7243,7 @@ the name of the framework and header.h is found in the
|
|||
@opindex -gused
|
||||
Emit debugging information for symbols that are used. For STABS
|
||||
debugging format, this enables @option{-feliminate-unused-debug-symbols}.
|
||||
This is by default ON.
|
||||
This is by default ON@.
|
||||
|
||||
@item -gfull
|
||||
@opindex -gfull
|
||||
|
@ -7654,7 +7654,7 @@ size of the small data area to 64KB, but allows the variables to be
|
|||
directly accessed via a single instruction.
|
||||
|
||||
The default is @option{-mlarge-data}. With this option the data area
|
||||
is limited to just below 2GB. Programs that require more than 2GB of
|
||||
is limited to just below 2GB@. Programs that require more than 2GB of
|
||||
data must use @code{malloc} or @code{mmap} to allocate the data in the
|
||||
heap instead of in the program's data segment.
|
||||
|
||||
|
@ -8206,10 +8206,10 @@ this to work.
|
|||
|
||||
@item -msio
|
||||
@opindex msio
|
||||
Generate the predefine, @code{_SIO}, for server IO. The default is
|
||||
Generate the predefine, @code{_SIO}, for server IO@. The default is
|
||||
@option{-mwsio}. This generates the predefines, @code{__hp9000s700},
|
||||
@code{__hp9000s700__} and @code{_WSIO}, for workstation IO. These
|
||||
options are available under HP-UX and HI-UX.
|
||||
@code{__hp9000s700__} and @code{_WSIO}, for workstation IO@. These
|
||||
options are available under HP-UX and HI-UX@.
|
||||
|
||||
@item -mgnu-ld
|
||||
@opindex gnu-ld
|
||||
|
@ -8309,7 +8309,7 @@ adding these link options.
|
|||
@item -threads
|
||||
@opindex threads
|
||||
Add support for multithreading with the @dfn{dce thread} library
|
||||
under HP-UX. This option sets flags for both the preprocessor and
|
||||
under HP-UX@. This option sets flags for both the preprocessor and
|
||||
linker.
|
||||
@end table
|
||||
|
||||
|
@ -8331,15 +8331,15 @@ for the ABI and the set of available instructions. The choices for
|
|||
@var{cpu-type} are:
|
||||
@table @emph
|
||||
@item i386
|
||||
Original Intel's i386 CPU.
|
||||
Original Intel's i386 CPU@.
|
||||
@item i486
|
||||
Intel's i486 CPU. (No scheduling is implemented for this chip.)
|
||||
Intel's i486 CPU@. (No scheduling is implemented for this chip.)
|
||||
@item i586, pentium
|
||||
Intel Pentium CPU with no MMX support.
|
||||
@item pentium-mmx
|
||||
Intel PentiumMMX CPU based on Pentium core with MMX instruction set support.
|
||||
@item i686, pentiumpro
|
||||
Intel PentiumPro CPU.
|
||||
Intel PentiumPro CPU@.
|
||||
@item pentium2
|
||||
Intel Pentium2 CPU based on PentiumPro core with MMX instruction set support.
|
||||
@item pentium3, pentium3m
|
||||
|
@ -9416,7 +9416,7 @@ Equivalent to @samp{-march=mips64}.
|
|||
@itemx -mno-mips16
|
||||
@opindex mips16
|
||||
@opindex mno-mips16
|
||||
Use (do not use) the MIPS16 ISA.
|
||||
Use (do not use) the MIPS16 ISA@.
|
||||
|
||||
@item -mabi=32
|
||||
@itemx -mabi=o64
|
||||
|
@ -9451,7 +9451,7 @@ Generate (do not generate) SVR4-style position-independent code.
|
|||
Lift (do not lift) the usual restrictions on the size of the global
|
||||
offset table.
|
||||
|
||||
GCC normally uses a single instruction to load values from the GOT.
|
||||
GCC normally uses a single instruction to load values from the GOT@.
|
||||
While this is relatively efficient, it will only work if the GOT
|
||||
is smaller than about 64k. Anything larger will cause the linker
|
||||
to report an error such as:
|
||||
|
@ -9521,7 +9521,7 @@ support to be enabled.
|
|||
@itemx -mno-mips3d
|
||||
@opindex mips3d
|
||||
@opindex mno-mips3d
|
||||
Use (do not use) the MIPS-3D ASE. @xref{MIPS-3D Built-in Functions}.
|
||||
Use (do not use) the MIPS-3D ASE@. @xref{MIPS-3D Built-in Functions}.
|
||||
The option @option{-mips3d} implies @option{-mpaired-single}.
|
||||
|
||||
@item -mint64
|
||||
|
@ -9607,7 +9607,7 @@ MIPS systems check for division by zero by generating either a
|
|||
conditional trap or a break instruction. Using traps results in
|
||||
smaller code, but is only supported on MIPS II and later. Also, some
|
||||
versions of the Linux kernel have a bug that prevents trap from
|
||||
generating the proper signal (SIGFPE). Use @option{-mdivide-traps} to
|
||||
generating the proper signal (@code{SIGFPE}). Use @option{-mdivide-traps} to
|
||||
allow conditional traps on architectures that support them and
|
||||
@option{-mdivide-breaks} to force the use of breaks.
|
||||
|
||||
|
@ -9640,7 +9640,7 @@ This option has no effect on abicalls code. The default is
|
|||
@opindex mmad
|
||||
@opindex mno-mad
|
||||
Enable (disable) use of the @code{mad}, @code{madu} and @code{mul}
|
||||
instructions, as provided by the R4650 ISA.
|
||||
instructions, as provided by the R4650 ISA@.
|
||||
|
||||
@item -mfused-madd
|
||||
@itemx -mno-fused-madd
|
||||
|
@ -10115,11 +10115,11 @@ Do not pretend that branches are expensive. This is the default.
|
|||
|
||||
@item -msplit
|
||||
@opindex msplit
|
||||
Generate code for a system with split I&D.
|
||||
Generate code for a system with split I&D@.
|
||||
|
||||
@item -mno-split
|
||||
@opindex mno-split
|
||||
Generate code for a system without split I&D. This is the default.
|
||||
Generate code for a system without split I&D@. This is the default.
|
||||
|
||||
@item -munix-asm
|
||||
@opindex munix-asm
|
||||
|
@ -10307,7 +10307,7 @@ ABI@.
|
|||
|
||||
@item -mabi=no-spe
|
||||
@opindex mabi=no-spe
|
||||
Disable Booke SPE ABI extensions for the current ABI.
|
||||
Disable Booke SPE ABI extensions for the current ABI@.
|
||||
|
||||
@item -misel=@var{yes/no}
|
||||
@itemx -misel
|
||||
|
@ -10426,7 +10426,7 @@ On AIX, Darwin, and 64-bit PowerPC GNU/Linux, the option
|
|||
@option{-malign-natural} overrides the ABI-defined alignment of larger
|
||||
types, such as floating-point doubles, on their natural size-based boundary.
|
||||
The option @option{-malign-power} instructs GCC to follow the ABI-specified
|
||||
alignment rules. GCC defaults to the standard alignment defined in the ABI.
|
||||
alignment rules. GCC defaults to the standard alignment defined in the ABI@.
|
||||
|
||||
@item -msoft-float
|
||||
@itemx -mhard-float
|
||||
|
@ -10637,7 +10637,7 @@ the current ABI@.
|
|||
|
||||
@item -mabi=no-altivec
|
||||
@opindex mabi=no-altivec
|
||||
Disable AltiVec ABI extensions for the current ABI.
|
||||
Disable AltiVec ABI extensions for the current ABI@.
|
||||
|
||||
@item -mprototype
|
||||
@itemx -mno-prototype
|
||||
|
@ -10843,7 +10843,7 @@ If one of the other options is present the backchain pointer is placed either
|
|||
on top of the stack frame (@option{-mkernel-backchain}) or on
|
||||
the bottom (@option{-mbackchain}).
|
||||
Beside the different backchain location @option{-mkernel-backchain}
|
||||
also changes stack frame layout breaking the ABI. This option
|
||||
also changes stack frame layout breaking the ABI@. This option
|
||||
is intended to be used for code which internally needs a backchain but has
|
||||
to get by with a limited stack size e.g.@: the linux kernel.
|
||||
Internal unwinding code not using DWARF-2 info has to be able to locate the
|
||||
|
@ -10922,7 +10922,7 @@ The default is the value used for @option{-march}.
|
|||
@opindex mno-tpf-trace
|
||||
Generate code that adds (does not add) in TPF OS specific branches to trace
|
||||
routines in the operating system. This option is off by default, even
|
||||
when compiling for the TPF OS.
|
||||
when compiling for the TPF OS@.
|
||||
|
||||
@item -mfused-madd
|
||||
@itemx -mno-fused-madd
|
||||
|
@ -11251,9 +11251,9 @@ With @option{-mcpu=sparclite}, GCC generates code for the SPARClite variant of
|
|||
the SPARC architecture. This adds the integer multiply, integer divide step
|
||||
and scan (@code{ffs}) instructions which exist in SPARClite but not in SPARC-V7.
|
||||
With @option{-mcpu=f930}, the compiler additionally optimizes it for the
|
||||
Fujitsu MB86930 chip, which is the original SPARClite, with no FPU. With
|
||||
Fujitsu MB86930 chip, which is the original SPARClite, with no FPU@. With
|
||||
@option{-mcpu=f934}, the compiler additionally optimizes it for the Fujitsu
|
||||
MB86934 chip, which is the more recent SPARClite with FPU.
|
||||
MB86934 chip, which is the more recent SPARClite with FPU@.
|
||||
|
||||
With @option{-mcpu=sparclet}, GCC generates code for the SPARClet variant of
|
||||
the SPARC architecture. This adds the integer multiply, multiply/accumulate,
|
||||
|
@ -11286,7 +11286,7 @@ that select a particular cpu implementation. Those are @samp{cypress},
|
|||
@itemx -mno-v8plus
|
||||
@opindex mv8plus
|
||||
@opindex mno-v8plus
|
||||
With @option{-mv8plus}, GCC generates code for the SPARC-V8+ ABI. The
|
||||
With @option{-mv8plus}, GCC generates code for the SPARC-V8+ ABI@. The
|
||||
difference from the V8 ABI is that the global and out registers are
|
||||
considered 64-bit wide. This is enabled by default on Solaris in 32-bit
|
||||
mode for all SPARC-V9 processors.
|
||||
|
@ -11643,7 +11643,7 @@ this option is used.
|
|||
|
||||
@item -mv850e
|
||||
@opindex mv850e
|
||||
Specify that the target processor is the V850E. The preprocessor
|
||||
Specify that the target processor is the V850E@. The preprocessor
|
||||
constant @samp{__v850e__} will be defined if this option is used.
|
||||
|
||||
If neither @option{-mv850} nor @option{-mv850e} nor @option{-mv850e1}
|
||||
|
@ -11993,7 +11993,7 @@ position-independent.
|
|||
If supported for the target machine, emit position-independent code,
|
||||
suitable for dynamic linking and avoiding any limit on the size of the
|
||||
global offset table. This option makes a difference on the m68k
|
||||
and the SPARC.
|
||||
and the SPARC@.
|
||||
|
||||
Position-independent code requires special support, and therefore works
|
||||
only on certain machines.
|
||||
|
@ -12189,7 +12189,7 @@ usage so the only other commonly used option will be @code{hidden}.
|
|||
The default if @option{-fvisibility} isn't specified is
|
||||
@code{default}, i.e., make every
|
||||
symbol public---this causes the same behavior as previous versions of
|
||||
GCC.
|
||||
GCC@.
|
||||
|
||||
A good explanation of the benefits offered by ensuring ELF
|
||||
symbols have the correct visibility is given by ``How To Write
|
||||
|
|
|
@ -17,7 +17,7 @@ integer multiply and divide on some machines, and all floating-point
|
|||
operations on other machines. @code{libgcc} also includes routines
|
||||
for exception handling, and a handful of miscellaneous operations.
|
||||
|
||||
Some of these routines can be defined in mostly machine-independent C.
|
||||
Some of these routines can be defined in mostly machine-independent C@.
|
||||
Others must be hand-written in assembly language for each processor
|
||||
that needs them.
|
||||
|
||||
|
@ -267,7 +267,7 @@ These functions return the quotient of @var{a} and @var{b}; that is,
|
|||
@deftypefnx {Runtime Function} {long double} __negtf2 (long double @var{a})
|
||||
@deftypefnx {Runtime Function} {long double} __negxf2 (long double @var{a})
|
||||
These functions return the negation of @var{a}. They simply flip the
|
||||
sign bit, so they can produce negative zero and negative NaN.
|
||||
sign bit, so they can produce negative zero and negative NaN@.
|
||||
@end deftypefn
|
||||
|
||||
@subsection Conversion functions
|
||||
|
@ -391,7 +391,7 @@ Under the hood, all of these routines are implemented as
|
|||
|
||||
@noindent
|
||||
where @var{E} is a constant chosen to give the proper behavior for
|
||||
NaN. Thus, the meaning of the return value is different for each set.
|
||||
NaN@. Thus, the meaning of the return value is different for each set.
|
||||
Do not rely on this implementation; only the semantics documented
|
||||
below are guaranteed.
|
||||
|
||||
|
|
|
@ -1826,12 +1826,12 @@ System V Release 4 small data area reference
|
|||
@table @code
|
||||
@item q
|
||||
@samp{a}, @code{b}, @code{c}, or @code{d} register for the i386.
|
||||
For x86-64 it is equivalent to @samp{r} class. (for 8-bit instructions that
|
||||
do not use upper halves)
|
||||
For x86-64 it is equivalent to @samp{r} class (for 8-bit instructions that
|
||||
do not use upper halves).
|
||||
|
||||
@item Q
|
||||
@samp{a}, @code{b}, @code{c}, or @code{d} register. (for 8-bit instructions,
|
||||
that do use upper halves)
|
||||
@samp{a}, @code{b}, @code{c}, or @code{d} register (for 8-bit instructions,
|
||||
that do use upper halves).
|
||||
|
||||
@item R
|
||||
Legacy register---equivalent to @code{r} class in i386 mode.
|
||||
|
@ -3061,7 +3061,7 @@ generating the instruction.
|
|||
|
||||
@cindex @code{parity@var{m}2} instruction pattern
|
||||
@item @samp{parity@var{m}2}
|
||||
Store into operand 0 the parity of @var{x}, i.@:e. the number of 1-bits
|
||||
Store into operand 0 the parity of @var{x}, i.e.@: the number of 1-bits
|
||||
in @var{x} modulo 2. @var{m} is the mode of operand 0; operand 1's mode
|
||||
is specified by the instruction pattern, and the compiler will convert
|
||||
the operand to that mode before generating the instruction.
|
||||
|
|
|
@ -68,7 +68,7 @@ invoked when (1) it is certain that the function is used, (2)
|
|||
warning flags specified by the user require some amount of
|
||||
compilation in order to honor, (3) the language indicates that
|
||||
semantic analysis is not complete until gimplification occurs.
|
||||
Hum... this sounds overly complicated. Perhaps we should just
|
||||
Hum@dots{} this sounds overly complicated. Perhaps we should just
|
||||
have the front end gimplify always; in most cases it's only one
|
||||
function call.
|
||||
|
||||
|
@ -135,7 +135,7 @@ The callback should examine the expression in question and return
|
|||
@code{GS_UNHANDLED} if the expression is not a language specific
|
||||
construct that requires attention. Otherwise it should alter the
|
||||
expression in some way to such that forward progress is made toward
|
||||
producing valid GIMPLE. If the callback is certain that the
|
||||
producing valid GIMPLE@. If the callback is certain that the
|
||||
transformation is complete and the expression is valid GIMPLE, it
|
||||
should return @code{GS_ALL_DONE}. Otherwise it should return
|
||||
@code{GS_OK}, which will cause the expression to be processed again.
|
||||
|
@ -437,7 +437,7 @@ in @file{tree-ssa-dce.c} and is described by @code{pass_cd_dce}.
|
|||
This pass identifies function calls that may be rewritten into
|
||||
jumps. No code transformation is actually applied here, but the
|
||||
data and control flow problem is solved. The code transformation
|
||||
requires target support, and so is delayed until RTL. In the
|
||||
requires target support, and so is delayed until RTL@. In the
|
||||
meantime @code{CALL_EXPR_TAILCALL} is set indicating the possibility.
|
||||
The pass is located in @file{tree-tailcall.c} and is described by
|
||||
@code{pass_tail_calls}. The RTL transformation is handled by
|
||||
|
@ -468,7 +468,7 @@ is described by @code{pass_mudflap_2}.
|
|||
|
||||
This pass rewrites the function such that it is in normal form. At
|
||||
the same time, we eliminate as many single-use temporaries as possible,
|
||||
so the intermediate language is no longer GIMPLE, but GENERIC. The
|
||||
so the intermediate language is no longer GIMPLE, but GENERIC@. The
|
||||
pass is located in @file{tree-ssa.c} and is described by @code{pass_del_ssa}.
|
||||
@end itemize
|
||||
|
||||
|
|
|
@ -72,9 +72,9 @@ commonly found inside @code{symbol_ref} expressions, but they appear in
|
|||
other contexts in the RTL expressions that make up machine descriptions.
|
||||
|
||||
In a machine description, strings are normally written with double
|
||||
quotes, as you would in C. However, strings in machine descriptions may
|
||||
quotes, as you would in C@. However, strings in machine descriptions may
|
||||
extend over many lines, which is invalid C, and adjacent string
|
||||
constants are not concatenated as they are in C. Any string constant
|
||||
constants are not concatenated as they are in C@. Any string constant
|
||||
may be surrounded with a single set of parentheses. Sometimes this
|
||||
makes the machine description easier to read.
|
||||
|
||||
|
|
|
@ -911,11 +911,11 @@ testsuite, publicly available at
|
|||
These tests are integrated in the GCC testsuite in the
|
||||
@file{gcc/testsuite/ada/acats} directory, and
|
||||
enabled automatically when running @code{make check}, assuming
|
||||
the Ada language has been enabled when configuring GCC.
|
||||
the Ada language has been enabled when configuring GCC@.
|
||||
|
||||
You can also run the Ada testsuite independently, using
|
||||
@code{make check-ada}, or run a subset of the tests by specifying which
|
||||
chapter to run, e.g:
|
||||
chapter to run, e.g.:
|
||||
|
||||
@smallexample
|
||||
$ make check-ada CHAPTERS="c3 c9"
|
||||
|
|
|
@ -179,8 +179,8 @@ have additional useful information.
|
|||
|
||||
@cindex treelang
|
||||
There is no standard for treelang, which is a sample language front end
|
||||
for GCC. Its only purpose is as a sample for people wishing to write a
|
||||
new language for GCC. The language is documented in
|
||||
for GCC@. Its only purpose is as a sample for people wishing to write a
|
||||
new language for GCC@. The language is documented in
|
||||
@file{gcc/treelang/treelang.texi} which can be turned into info or
|
||||
HTML format.
|
||||
|
||||
|
|
|
@ -980,7 +980,7 @@ target to perform any target specific initialization of the
|
|||
@code{struct function} structure. It is intended that this would be
|
||||
used to initialize the @code{machine} of that structure.
|
||||
|
||||
@code{struct machine_function} structures are expected to be freed by GC.
|
||||
@code{struct machine_function} structures are expected to be freed by GC@.
|
||||
Generally, any memory that they reference must be allocated by using
|
||||
@code{ggc_alloc}, including the structure itself.
|
||||
@end deftypevar
|
||||
|
@ -1604,7 +1604,7 @@ target machine. If you don't define this, the default is one word.
|
|||
|
||||
@defmac ADA_LONG_TYPE_SIZE
|
||||
On some machines, the size used for the Ada equivalent of the type
|
||||
@code{long} by a native Ada compiler differs from that used by C. In
|
||||
@code{long} by a native Ada compiler differs from that used by C@. In
|
||||
that situation, define this macro to be a C expression to be used for
|
||||
the size of that type. If you don't define this, the default is the
|
||||
value of @code{LONG_TYPE_SIZE}.
|
||||
|
@ -5560,7 +5560,7 @@ necessary. Traditionally, the default costs are @code{COSTS_N_INSNS (5)}
|
|||
for multiplications, @code{COSTS_N_INSNS (7)} for division and modulus
|
||||
operations, and @code{COSTS_N_INSNS (1)} for all other operations.
|
||||
|
||||
When optimizing for code size, i.e@. when @code{optimize_size} is
|
||||
When optimizing for code size, i.e.@: when @code{optimize_size} is
|
||||
nonzero, this target hook should be used to estimate the relative
|
||||
size cost of an expression, again relative to @code{COSTS_N_INSNS}.
|
||||
|
||||
|
@ -5728,7 +5728,7 @@ This hook is executed by the scheduler after function level initializations.
|
|||
@end deftypefn
|
||||
|
||||
@deftypefn {Target Hook} void TARGET_SCHED_FINISH_GLOBAL (FILE *@var{file}, int @var{verbose})
|
||||
This is the cleanup hook corresponding to TARGET_SCHED_INIT_GLOBAL.
|
||||
This is the cleanup hook corresponding to @code{TARGET_SCHED_INIT_GLOBAL}.
|
||||
@var{file} is either a null pointer, or a stdio stream to write any debug output to.
|
||||
@var{verbose} is the verbose level provided by @option{-fsched-verbose-@var{n}}.
|
||||
@end deftypefn
|
||||
|
@ -6911,7 +6911,7 @@ should be excluded; on many systems, the letter @samp{L} at the
|
|||
beginning of a label has this effect. You should find out what
|
||||
convention your system uses, and follow it.
|
||||
|
||||
The default version of this function utilizes ASM_GENERATE_INTERNAL_LABEL.
|
||||
The default version of this function utilizes @code{ASM_GENERATE_INTERNAL_LABEL}.
|
||||
@end deftypefn
|
||||
|
||||
@defmac ASM_OUTPUT_DEBUG_LABEL (@var{stream}, @var{prefix}, @var{num})
|
||||
|
@ -7571,13 +7571,13 @@ the jump-table.
|
|||
@end defmac
|
||||
|
||||
@deftypefn {Target Hook} void TARGET_ASM_EMIT_UNWIND_LABEL (@var{stream}, @var{decl}, @var{for_eh}, @var{empty})
|
||||
This target hook emits a label at the beginning of each FDE. It
|
||||
This target hook emits a label at the beginning of each FDE@. It
|
||||
should be defined on targets where FDEs need special labels, and it
|
||||
should write the appropriate label, for the FDE associated with the
|
||||
function declaration @var{decl}, to the stdio stream @var{stream}.
|
||||
The third argument, @var{for_eh}, is a boolean: true if this is for an
|
||||
exception table. The fourth argument, @var{empty}, is a boolean:
|
||||
true if this is a placeholder label for an omitted FDE.
|
||||
true if this is a placeholder label for an omitted FDE@.
|
||||
|
||||
The default is that FDEs are not given nonlocal labels.
|
||||
@end deftypefn
|
||||
|
@ -8522,7 +8522,7 @@ be preserved even if it does not appear that the register is used again
|
|||
later in the function.
|
||||
|
||||
Another note: according to the MIPS spec, coprocessor 1 (if present) is
|
||||
the FPU. One accesses COP1 registers through standard mips
|
||||
the FPU@. One accesses COP1 registers through standard mips
|
||||
floating-point support; they are not included in this mechanism.
|
||||
|
||||
There is one macro used in defining the MIPS coprocessor interface which
|
||||
|
@ -8582,7 +8582,7 @@ This hook returns the size of the cookie to use when allocating an array
|
|||
whose elements have the indicated @var{type}. Assumes that it is already
|
||||
known that a cookie is needed. The default is
|
||||
@code{max(sizeof (size_t), alignof(type))}, as defined in section 2.7 of the
|
||||
IA64/Generic C++ ABI.
|
||||
IA64/Generic C++ ABI@.
|
||||
@end deftypefn
|
||||
|
||||
@deftypefn {Target Hook} bool TARGET_CXX_COOKIE_HAS_SIZE (void)
|
||||
|
@ -9000,7 +9000,7 @@ Note that regardless of this macro the ``definedness'' of @code{clz}
|
|||
and @code{ctz} at zero do @emph{not} extend to the builtin functions
|
||||
visible to the user. Thus one may be free to adjust the value at will
|
||||
to match the target expansion of these operations without fear of
|
||||
breaking the API.
|
||||
breaking the API@.
|
||||
@end defmac
|
||||
|
||||
@defmac Pmode
|
||||
|
|
|
@ -53,10 +53,10 @@ The purpose of GENERIC is simply to provide a language-independent way of
|
|||
representing an entire function in trees. To this end, it was necessary to
|
||||
add a few new tree codes to the back end, but most everything was already
|
||||
there. If you can express it with the codes in @code{gcc/tree.def}, it's
|
||||
GENERIC.
|
||||
GENERIC@.
|
||||
|
||||
Early on, there was a great deal of debate about how to think about
|
||||
statements in a tree IL. In GENERIC, a statement is defined as any
|
||||
statements in a tree IL@. In GENERIC, a statement is defined as any
|
||||
expression whose value, if any, is ignored. A statement will always
|
||||
have @code{TREE_SIDE_EFFECTS} set (or it will be discarded), but a
|
||||
non-statement expression may also have side effects. A
|
||||
|
@ -72,10 +72,10 @@ off to @code{tree_rest_of_compilation}, but this seems inelegant.
|
|||
If necessary, a front end can use some language-dependent tree codes
|
||||
in its GENERIC representation, so long as it provides a hook for
|
||||
converting them to GIMPLE and doesn't expect them to work with any
|
||||
(hypothetical) optimizers that run before the conversion to GIMPLE.
|
||||
(hypothetical) optimizers that run before the conversion to GIMPLE@.
|
||||
The intermediate representation used while parsing C and C++ looks
|
||||
very little like GENERIC, but the C and C++ gimplifier hooks are
|
||||
perfectly happy to take it as input and spit out GIMPLE.
|
||||
perfectly happy to take it as input and spit out GIMPLE@.
|
||||
|
||||
@node GIMPLE
|
||||
@section GIMPLE
|
||||
|
@ -129,14 +129,14 @@ The tree representation of a function is stored in
|
|||
If a front end wants to include language-specific tree codes in the tree
|
||||
representation which it provides to the back end, it must provide a
|
||||
definition of @code{LANG_HOOKS_GIMPLIFY_EXPR} which knows how to
|
||||
convert the front end trees to GIMPLE. Usually such a hook will involve
|
||||
much of the same code for expanding front end trees to RTL. This function
|
||||
convert the front end trees to GIMPLE@. Usually such a hook will involve
|
||||
much of the same code for expanding front end trees to RTL@. This function
|
||||
can return fully lowered GIMPLE, or it can return GENERIC trees and let the
|
||||
main gimplifier lower them the rest of the way; this is often simpler.
|
||||
|
||||
The C and C++ front ends currently convert directly from front end
|
||||
trees to GIMPLE, and hand that off to the back end rather than first
|
||||
converting to GENERIC. Their gimplifier hooks know about all the
|
||||
converting to GENERIC@. Their gimplifier hooks know about all the
|
||||
@code{_STMT} nodes and how to convert them to GENERIC forms. There
|
||||
was some work done on a genericization pass which would run first, but
|
||||
the existence of @code{STMT_EXPR} meant that in order to convert all
|
||||
|
@ -144,7 +144,7 @@ of the C statements into GENERIC equivalents would involve walking the
|
|||
entire tree anyway, so it was simpler to lower all the way. This
|
||||
might change in the future if someone writes an optimization pass
|
||||
which would work better with higher-level trees, but currently the
|
||||
optimizers all expect GIMPLE.
|
||||
optimizers all expect GIMPLE@.
|
||||
|
||||
A front end which wants to use the tree optimizers (and already has
|
||||
some sort of whole-function tree representation) only needs to provide
|
||||
|
@ -294,7 +294,7 @@ Most statements will be assignment statements, represented by
|
|||
also be a statement. No other C expressions can appear at statement level;
|
||||
a reference to a volatile object is converted into a @code{MODIFY_EXPR}.
|
||||
In GIMPLE form, type of @code{MODIFY_EXPR} is not meaningful. Instead, use type
|
||||
of LHS or RHS.
|
||||
of LHS or RHS@.
|
||||
|
||||
There are also several varieties of complex statements.
|
||||
|
||||
|
@ -337,7 +337,7 @@ syntactic blocks in the source code, since several C++ constructs have
|
|||
implicit scopes associated with them. On the other hand, although the C++
|
||||
front end uses pseudo-scopes to handle cleanups for objects with
|
||||
destructors, these don't translate into the GIMPLE form; multiple
|
||||
declarations at the same level use the same BIND_EXPR.
|
||||
declarations at the same level use the same @code{BIND_EXPR}.
|
||||
|
||||
@node Statement Sequences
|
||||
@subsubsection Statement Sequences
|
||||
|
@ -1063,7 +1063,7 @@ The following macros can be used to examine PHI nodes
|
|||
|
||||
@defmac PHI_RESULT (@var{phi})
|
||||
Returns the @code{SSA_NAME} created by PHI node @var{phi} (i.e.,
|
||||
@var{phi}'s LHS).
|
||||
@var{phi}'s LHS)@.
|
||||
@end defmac
|
||||
|
||||
@defmac PHI_NUM_ARGS (@var{phi})
|
||||
|
@ -1218,8 +1218,8 @@ the variables pointed-to by P_i (and its memory tag) also escape.
|
|||
|
||||
We have two classes of memory tags. Memory tags associated with
|
||||
the pointed-to data type of the pointers in the program. These
|
||||
tags are called ``type memory tag'' (TMT). The other class are
|
||||
those associated with SSA_NAMEs, called ``name memory tag'' (NMT).
|
||||
tags are called ``type memory tag'' (TMT)@. The other class are
|
||||
those associated with SSA_NAMEs, called ``name memory tag'' (NMT)@.
|
||||
The basic idea is that when adding operands for an INDIRECT_REF
|
||||
*P_i, we will first check whether P_i has a name tag, if it does
|
||||
we use it, because that will have more precise aliasing
|
||||
|
|
|
@ -213,7 +213,7 @@ merging semantics will continue to function correctly.
|
|||
@item
|
||||
An application can interpose its own definition of functions for
|
||||
functions invoked by @file{libstdc++.a} with ``runtime-linking''
|
||||
enabled on AIX. To accomplish this the application must be linked
|
||||
enabled on AIX@. To accomplish this the application must be linked
|
||||
with ``runtime-linking'' option and the functions explicitly must be
|
||||
exported by the application (@option{-Wl,-brtl,-bE:exportfile}).
|
||||
|
||||
|
|
Loading…
Reference in New Issue