diff options
author | kan <kan@FreeBSD.org> | 2003-11-07 02:43:04 +0000 |
---|---|---|
committer | kan <kan@FreeBSD.org> | 2003-11-07 02:43:04 +0000 |
commit | b09448931ae541a7a60fd1cf0ebac14b627fba69 (patch) | |
tree | 980c917e2cc50183c4d566d9a0f9a1c818e6a6cd /contrib/gcc/doc | |
parent | dc227ec3ae9a56f16c472206f51e4838bb53a644 (diff) | |
download | FreeBSD-src-b09448931ae541a7a60fd1cf0ebac14b627fba69.zip FreeBSD-src-b09448931ae541a7a60fd1cf0ebac14b627fba69.tar.gz |
Gcc 3.3.3 20031106.
Diffstat (limited to 'contrib/gcc/doc')
-rw-r--r-- | contrib/gcc/doc/contrib.texi | 12 | ||||
-rw-r--r-- | contrib/gcc/doc/extend.texi | 35 | ||||
-rw-r--r-- | contrib/gcc/doc/include/gcc-common.texi | 2 | ||||
-rw-r--r-- | contrib/gcc/doc/invoke.texi | 11 | ||||
-rw-r--r-- | contrib/gcc/doc/tm.texi | 16 |
5 files changed, 69 insertions, 7 deletions
diff --git a/contrib/gcc/doc/contrib.texi b/contrib/gcc/doc/contrib.texi index 1c3aa25..3eb3b22 100644 --- a/contrib/gcc/doc/contrib.texi +++ b/contrib/gcc/doc/contrib.texi @@ -32,6 +32,9 @@ the Intel 80387 register stack. Alasdair Baird for various bug fixes. @item +Giovanni Bajo for analyzing lots of complicated C++ problem reports. + +@item Gerald Baumgartner added the signature extension to the C++ front end. @item @@ -297,6 +300,9 @@ the c30/c40 ports functional. Lots of loop and unroll improvements and fixes. @item +Dara Hazeghi for wading through myriads of target-specific bug reports. + +@item Kate Hedstrom for staking the g77 folks with an initial testsuite. @item @@ -327,6 +333,9 @@ Steve Holmgren for MachTen patches. Jan Hubicka for his x86 port improvements. @item +Falk Hueffner for working on C and optimization bug reports. + +@item Christian Iseli for various bug fixes. @item @@ -620,6 +629,9 @@ out lots of problems we need to solve, maintenance of the web pages, and taking care of documentation maintenance in general. @item +Andrew Pinski for processing bug reports by the dozen. + +@item Ovidiu Predescu for his work on the Objective-C front end and runtime libraries. diff --git a/contrib/gcc/doc/extend.texi b/contrib/gcc/doc/extend.texi index f656904..f2aca2a 100644 --- a/contrib/gcc/doc/extend.texi +++ b/contrib/gcc/doc/extend.texi @@ -2554,7 +2554,7 @@ Currently, the attribute is ignored for inlined functions. If the attribute is applied to a symbol @emph{definition}, an error is reported. If a symbol previously declared @code{dllimport} is later defined, the attribute is ignored in subsequent references, and a warning is emitted. -The attribute is also overriden by a subsequent declaration as +The attribute is also overridden by a subsequent declaration as @code{dllexport}. When applied to C++ classes, the attribute marks non-inlined @@ -2636,7 +2636,7 @@ found convenient to use @code{__attribute__} to achieve a natural attachment of attributes to their corresponding declarations, whereas @code{#pragma GCC} is of use for constructs that do not naturally form part of the grammar. @xref{Other Directives,,Miscellaneous -Preprocessing Directives, cpp, The C Preprocessor}. +Preprocessing Directives, cpp, The GNU C Preprocessor}. @node Attribute Syntax @section Attribute Syntax @@ -3666,7 +3666,7 @@ the single copy in the library. Since GCC eventually will implement ISO C99 semantics for inline functions, it is best to use @code{static inline} only -to guarentee compatibility. (The +to guarantee compatibility. (The existing semantics will remain available when @option{-std=gnu89} is specified, but eventually the default will be @option{-std=gnu99} and that will implement the C99 semantics, though it does not do so yet.) @@ -5315,6 +5315,31 @@ Generates the @code{movhps} machine instruction as a store to memory. Generates the @code{movlps} machine instruction as a store to memory. @end table +The following built-in functions are available when @option{-mpni} is used. +All of them generate the machine instruction that is part of the name. + +@example +v2df __builtin_ia32_addsubpd (v2df, v2df) +v2df __builtin_ia32_addsubps (v2df, v2df) +v2df __builtin_ia32_haddpd (v2df, v2df) +v2df __builtin_ia32_haddps (v2df, v2df) +v2df __builtin_ia32_hsubpd (v2df, v2df) +v2df __builtin_ia32_hsubps (v2df, v2df) +v16qi __builtin_ia32_lddqu (char const *) +void __builtin_ia32_monitor (void *, unsigned int, unsigned int) +v2df __builtin_ia32_movddup (v2df) +v4sf __builtin_ia32_movshdup (v4sf) +v4sf __builtin_ia32_movsldup (v4sf) +void __builtin_ia32_mwait (unsigned int, unsigned int) +@end example + +The following built-in functions are available when @option{-mpni} is used. + +@table @code +@item v2df __builtin_ia32_loadddup (double const *) +Generates the @code{movddup} machine instruction as a load from memory. +@end table + The following built-in functions are available when @option{-m3dnow} is used. All of them generate the machine instruction that is part of the name. @@ -6895,8 +6920,8 @@ can also use most of the C language extensions in your C++ programs). If you want to write code that checks whether these features are available, you can test for the GNU compiler the same way as for C programs: check for a predefined macro @code{__GNUC__}. You can also use @code{__GNUG__} to -test specifically for GNU C++ (@pxref{Standard Predefined,,Standard -Predefined Macros,cpp.info,The C Preprocessor}). +test specifically for GNU C++ (@pxref{Common Predefined Macros,, +Predefined Macros,cpp,The GNU C Preprocessor}). @menu * Min and Max:: C++ Minimum and maximum operators. diff --git a/contrib/gcc/doc/include/gcc-common.texi b/contrib/gcc/doc/include/gcc-common.texi index 0a51d93..0d2cae6 100644 --- a/contrib/gcc/doc/include/gcc-common.texi +++ b/contrib/gcc/doc/include/gcc-common.texi @@ -4,7 +4,7 @@ @c Common values used in the GCC manuals: -@set version-GCC 3.3.1 +@set version-GCC 3.3.3 @c DEVELOPMENT is set to indicate an in-development version, @c as compared to a release version. When making a release diff --git a/contrib/gcc/doc/invoke.texi b/contrib/gcc/doc/invoke.texi index a99440f..6a12890 100644 --- a/contrib/gcc/doc/invoke.texi +++ b/contrib/gcc/doc/invoke.texi @@ -473,7 +473,7 @@ in the following sections. -mno-fp-ret-in-387 -msoft-float -msvr3-shlib @gol -mno-wide-multiply -mrtd -malign-double @gol -mpreferred-stack-boundary=@var{num} @gol --mmmx -msse -msse2 -m3dnow @gol +-mmmx -msse -msse2 -mpni -m3dnow @gol -mthreads -mno-align-stringops -minline-all-stringops @gol -mpush-args -maccumulate-outgoing-args -m128bit-long-double @gol -m96bit-long-double -mregparm=@var{num} -momit-leaf-frame-pointer @gol @@ -7904,6 +7904,13 @@ code that expects temporaries to be 80bit. This is the default choice for x86-64 compiler. +@item pni +Use all SSE extensions enabled by @option{-msse2} as well as the new +SSE extensions in Prescott New Intrunctions. @option{-mpni} also +enables 2 builtin functions, @code{__builtin_ia32_monitor} and +@code{__builtin_ia32_mwait}, for new intrunctions @code{monitor} and +@code{mwait}. + @item sse,387 Attempt to utilize both instruction sets at once. This effectively double the amount of available registers and on chips with separate execution units for @@ -8085,6 +8092,8 @@ preferred alignment to @option{-mpreferred-stack-boundary=2}. @itemx -mno-sse @item -msse2 @itemx -mno-sse2 +@item -mpni +@itemx -mno-pni @item -m3dnow @itemx -mno-3dnow @opindex mmmx diff --git a/contrib/gcc/doc/tm.texi b/contrib/gcc/doc/tm.texi index 21c7c2a..9a71173 100644 --- a/contrib/gcc/doc/tm.texi +++ b/contrib/gcc/doc/tm.texi @@ -6589,6 +6589,22 @@ usual manner as a label (by means of @code{ASM_OUTPUT_LABEL}). You may wish to use @code{ASM_OUTPUT_TYPE_DIRECTIVE} and/or @code{ASM_OUTPUT_SIZE_DIRECTIVE} in the definition of this macro. +@findex ASM_DECLARE_CONSTANT_NAME +@item ASM_DECLARE_CONSTANT_NAME (@var{stream}, @var{name}, @var{exp}, @var{size}) +A C statement (sans semicolon) to output to the stdio stream +@var{stream} any text necessary for declaring the name @var{name} of a +constant which is being defined. This macro is responsible for +outputting the label definition (perhaps using +@code{ASM_OUTPUT_LABEL}). The argument @var{exp} is the +value of the constant, and @var{size} is the size of the constant +in bytes. @var{name} will be an internal label. + +If this macro is not defined, then the @var{name} is defined in the +usual manner as a label (by means of @code{ASM_OUTPUT_LABEL}). + +You may wish to use @code{ASM_OUTPUT_TYPE_DIRECTIVE} in the definition +of this macro. + @findex ASM_DECLARE_REGISTER_GLOBAL @item ASM_DECLARE_REGISTER_GLOBAL (@var{stream}, @var{decl}, @var{regno}, @var{name}) A C statement (sans semicolon) to output to the stdio stream |