From Fedora Project Wiki

m (typo fix)
No edit summary
(10 intermediate revisions by 6 users not shown)
Line 1: Line 1:
== gcc ==
{{header|docs}}
{{Docs_beat_open}}


Fedora 14 includes version 4.5 of '''gcc''' and the various compilers which depend on gcc.  The full details of the changes may be found at http://gcc.gnu.org/gcc-4.5/changes.html, but some main points follow.


=== Obsoleted support and features ===
== GCC ==


The following ports for individual systems on particular architectures have been obsoleted:
As of Fedora 19, GCC 4.8.x is shipped as the default GCC. In addition, all Fedora packages have been rebuilt with GCC 4.8.x (and GLIBC 2.17; see below)


* IRIX releases before 6.5 (mips-sgi-irix5*, mips-sgi-irix6.[0-4])
Users will be able to see compiled code improvements and use the newly added features, such as improved C++11 and C11 support, improved vectorization support, etc.
* Solaris 7 (*-*-solaris2.7)
* Tru64 UNIX releases before V5.1 (alpha*-dec-osf4*, alpha-dec-osf5.0*)
* Details for the IRIX, Solaris 7, and Tru64 UNIX obsoletions can be found in the announcement.
* Support for the classic POWER architecture implemented in the original RIOS and RIOS2 processors of the old IBM RS/6000 product line has been obsoleted in the rs6000 port. This does not affect the new generation Power and PowerPC architectures.


Support has also been removed for a number of features obsoleted in 4.4.
For more information on the changes in GCC 4.8.x, please see http://gcc.gnu.org/gcc-4.8/changes.html


{{admon/warning|On x86 targets, code containing floating-point calculations may run significantly slower when compiled with GCC 4.5 in strict C99 conformance mode than they did with earlier GCC versions.|This is due to stricter standard conformance of the compiler and can be avoided by using the option <code>-fexcess-precision=fast</code>.}}


=== Optimizer improvements ===
== GLIBC ==


* The <code>-save-temps</code> now takes an optional argument. The <code>-save-temps</code> and <code>-save-temps=cwd</code> switches write the temporary files in the current working directory based on the original source file. The <code>-save-temps=obj</code> switch will write files into the directory specified with the <code>-o</code> option, and the intermediate filenames are based on the output file.
As of Fedora 19, GLIBC 2.17 is shipped as the default GLIBC. All Fedora packages have been rebuilt with GLIBC 2.17 (and GCC 4.8.x; see above).
* Debugging dumps are now created in the same directory as the object file rather than in the current working directory.
* A new link-time optimizer has been added (<code>-flto</code>). When this option is used, GCC generates a bytecode representation of each input file and writes it to special ELF sections in each object file.
* The automatic parallelization pass was enhanced to support parallelization of outer loops.
* GCC now optimize exception handling code.
 
Reference the changes page above for more details on these and other optimizations.
 
=== Language-specific improvements ===
 
There are new language-specific features for Ada, C, C++, Fortran and Java.
 
=== New targets ===
 
There are new target processors within the AIX, ARM, AVR, IA32, M68K, MeP, MIPS, RS/6000 and RX processor families.
 
=== Installation Changes ===
 
The move to autotools has resulted in some artifacts changing the directories where they are found.  For details, as in all of the above details, refer to the changes page.


For more information on the changes in GLIBC 2.17, please see http://sourceware.org/ml/libc-announce/2012/msg00001.html


[[Category:Docs Project]]
[[Category:Docs Project]]
[[Category:Draft documentation]]
[[Category:Draft documentation]]
[[Category:Documentation beats]]
[[Category:Documentation beats]]

Revision as of 23:32, 30 April 2013

DocsProject Header docTeam1.png
Note.png
Beat is open
This beat is now ready to have Fedora 25 content added by the beat writer


GCC

As of Fedora 19, GCC 4.8.x is shipped as the default GCC. In addition, all Fedora packages have been rebuilt with GCC 4.8.x (and GLIBC 2.17; see below)

Users will be able to see compiled code improvements and use the newly added features, such as improved C++11 and C11 support, improved vectorization support, etc.

For more information on the changes in GCC 4.8.x, please see http://gcc.gnu.org/gcc-4.8/changes.html


GLIBC

As of Fedora 19, GLIBC 2.17 is shipped as the default GLIBC. All Fedora packages have been rebuilt with GLIBC 2.17 (and GCC 4.8.x; see above).

For more information on the changes in GLIBC 2.17, please see http://sourceware.org/ml/libc-announce/2012/msg00001.html