1 This file contains information about GCC releases which has been
2 generated automatically from the online release notes. This file
3 covers releases of GCC (and the former EGCS project) since EGCS 1.0,
4 on the line of development that led to GCC 3; for information on GCC
5 2.8.1 and older releases of GCC 2, see ONEWS.
7 ======================================================================
8 http://gcc.gnu.org/gcc-3.0/gcc-3.0.html
14 The [1]GNU project and the GCC developers are pleased to announce the
15 release of GCC version 3.0.
17 GCC used to stand for the GNU C Compiler, but since the compiler
18 supports several other languages aside from C, it now stands for the
19 GNU Compiler Collection.
21 GCC 3.0 has several new optimizations, new targets, new languages and
22 many other new features. See the [2]new features page for a more
25 The GCC developers would like to thank the numerous people that have
26 contributed new features, test results, bugfixes, etc to GCC. This
27 [3]amazing group of volunteers is what makes GCC successful.
29 And finally, we can't in good conscience fail to mention some
30 [4]caveats to using GCC 3.0.
32 For additional information about GCC please refer to the [5]GCC
33 project web site or contact the [6]GCC development mailing list.
34 _________________________________________________________________
37 Please send FSF & GNU inquiries & questions to [7]gnu@gnu.org. There
38 are also [8]other ways to contact the FSF.
39 These pages are maintained by [9]The GCC team.
40 Please send comments on these web pages and GCC to
41 [10]gcc@gcc.gnu.org, send other questions to [11]gnu@gnu.org.
42 Copyright (C) Free Software Foundation, Inc., 59 Temple Place -
43 Suite 330, Boston, MA 02111, USA.
44 Verbatim copying and distribution of this entire article is
45 permitted in any medium, provided this notice is preserved.
46 Last modified 2001-05-12.
50 1. http://www.gnu.org/
51 2. http://gcc.gnu.org/gcc-3.0/features.html
52 3. http://gcc.gnu.org/thanks.html
53 4. http://gcc.gnu.org/gcc-3.0/caveats.html
54 5. http://gcc.gnu.org/index.html
55 6. mailto:gcc@gcc.gnu.org
57 8. http://www.gnu.org/home.html#ContactInfo
58 9. http://gcc.gnu.org/about.html
59 10. mailto:gcc@gcc.gnu.org
60 11. mailto:gnu@gnu.org
61 ======================================================================
62 http://gcc.gnu.org/gcc-3.0/features.html
66 * General Optimizer Improvements:
67 + [1]Basic block reordering pass.
68 + New if-conversion pass with support for conditional
69 (predicated) execution.
70 + New tail call and sibling call elimination optimizations.
71 + New register renaming pass.
72 + New (experimental) [2]static single assignment (SSA)
73 representation support.
74 + New dead-code elimination pass implemented using the SSA
76 + [3]Global null pointer test elimination.
77 + [4]Global code hoisting/unification.
78 + More builtins and optimizations for stdio.h, string.h and old
79 BSD functions, as well as for ISO C99 functions.
80 + New builtin __builtin_expect for giving hints to the branch
82 * New Languages and Language specific improvements:
83 + The GNU Compiler for the Java(TM) language (GCJ) is now
84 integrated and supported, including the run-time library
85 containing most common non-GUI Java classes, a bytecode
86 interpreter, and the Boehm conservative garbage collector.
87 Many bugs have been fixed. GCJ can compile Java source or
88 Java bytecodes to either native code or Java class files, and
89 supports native methods written in either the standard JNI or
90 the more efficient and convenient CNI.
91 + New C++ ABI, capable of inter-operating with other IA-64
93 + The new ABI also significantly reduces the size of symbol and
95 + New C++ support library and many C++ bug fixes, vastly
96 improving our conformance to the ISO C++ standard.
97 + New [5]inliner for C++.
98 + Rewritten C preprocessor, integrated into the C, C++ and
99 Objective C compilers, with very many improvements including
100 ISO C99 support and [6]improvements to dependency generation.
101 + Support for more [7]ISO C99 features.
102 + Many improvements to support for checking calls to format
103 functions such as printf and scanf, including support for ISO
104 C99 format features, extensions from the Single Unix
105 Specification and GNU libc 2.2, checking of strfmon formats
106 and features to assist in auditing for format string security
108 + New warnings for C code that may have undefined semantics
109 because of violations of sequence point rules in the C
110 standard (such as a = a++;, a[n] = b[n++]; and a[i++] = i;),
112 + Additional warning option -Wfloat-equal.
113 + Improvements to -Wtraditional.
114 + Fortran improvements are listed in [8]the Fortran
116 * New Targets and Target Specific Improvements:
117 + New x86 back-end, generating much improved code.
118 + Support for a generic i386-elf target contributed.
119 + New option to emit x86 assembly code using Intel style syntax
121 + HPUX 11 support contributed.
122 + Improved PowerPC code generation, including scheduled
123 prologue and epilogue.
124 + Port of gcc to Intel's IA-64 processor contributed.
125 + Port of gcc to Motorola's MCore 210 and 340 contributed.
126 + New unified back-end for Arm, Thumb and StrongArm
128 + Port of gcc to Intel's XScale processor contributed.
129 + Port of gcc to Atmel's AVR microcontrollers contributed.
130 + Port of gcc to Mitsubishi's D30V processor contributed.
131 + Port of gcc to Matsushita's AM33 processor (a member of the
132 MN10300 processor family) contributed.
133 + Port of gcc to Fujitsu's FR30 processor contributed.
134 + Port of gcc to Motorola's 68HC11 and 68HC12 processors
136 + Port of gcc to Sun's picoJava processor core contributed.
137 * Documentation improvements:
138 + Substantially rewritten and improved C preprocessor manual.
139 + Many improvements to other documentation.
140 + Manpages for gcc, cpp and gcov are now generated
141 automatically from the master Texinfo manual, eliminating the
142 problem of manpages being out of date. (The generated
143 manpages are only extracts from the full manual, which is
144 provided in Texinfo form, from which info, HTML, other
145 formats and a printed manual can be generated.)
146 + Generated info files are included in the release tarballs
147 alongside their Texinfo sources, avoiding problems on some
148 platforms with building makeinfo as part of the GCC
150 * Other significant improvements:
151 + Garbage collection used internally by the compiler for most
152 memory allocation instead of obstacks.
153 + Lengauer and Tarjan algorithm used for computing dominators
154 in the CFG. This algorithm can be significantly faster and
155 more space efficient than our older algorithm.
156 + gccbug script provided to assist in submitting bug reports to
157 the GCC GNATS bug tracking database. (Bug reports previously
158 submitted directly to the GCC mailing lists, for which no
159 GNATS bug tracking number has been received, should be
160 submitted again to the bug tracking database using gccbug if
161 you can reproduce the problem with GCC 3.0.)
162 + The internal libgcc library is [9]built as a shared library
163 on systems that support it.
164 + Extensive testsuite included with GCC, with many new tests.
165 In addition to tests for GCC bugs that have been fixed, many
166 tests have been added for language features, compiler
167 warnings and builtin functions.
168 + Additional language-independent warning options -Wpacked,
169 -Wpadded, -Wunreachable-code and -Wdisabled-optimization.
170 + Target-independent options -falign-functions, -falign-loops
172 * Plus a great many bugfixes and almost all the [10]features found
174 _________________________________________________________________
177 Please send FSF & GNU inquiries & questions to [11]gnu@gnu.org.
178 There are also [12]other ways to contact the FSF.
179 These pages are maintained by [13]The GCC team.
180 Please send comments on these web pages and GCC to
181 [14]gcc@gcc.gnu.org, send other questions to [15]gnu@gnu.org.
182 Copyright (C) Free Software Foundation, Inc., 59 Temple Place -
183 Suite 330, Boston, MA 02111, USA.
184 Verbatim copying and distribution of this entire article is
185 permitted in any medium, provided this notice is preserved.
186 Last modified 2001-05-30.
190 1. http://gcc.gnu.org/news/reorder.html
191 2. http://gcc.gnu.org/news/ssa.html
192 3. http://gcc.gnu.org/news/null.html
193 4. http://gcc.gnu.org/news/unify.html
194 5. http://gcc.gnu.org/news/inlining.html
195 6. http://gcc.gnu.org/news/dependencies.html
196 7. http://gcc.gnu.org/gcc-3.0/c99status.html
197 8. http://gcc.gnu.org/onlinedocs/g77_news.html
198 9. http://gcc.gnu.org/gcc-3.0/libgcc.html
199 10. http://gcc.gnu.org/gcc-2.95/features.html
200 11. mailto:gnu@gnu.org
201 12. http://www.gnu.org/home.html#ContactInfo
202 13. http://gcc.gnu.org/about.html
203 14. mailto:gcc@gcc.gnu.org
204 15. mailto:gnu@gnu.org
205 ======================================================================
206 http://gcc.gnu.org/gcc-3.0/caveats.html
210 * Enumerations are now properly promoted to int in function
211 parameters and function returns. Normally this change is not
212 visible, but when using -fshort-enums this is an ABI change.
213 * The undocumented extension that allowed C programs to have a label
214 at the end of a compound statement has been deprecated and may be
215 removed in a future version. Programs that now generate a warning
216 about this may be fixed by adding a null statement (a single
217 semicolon) after the label.
218 * The poorly documented extension that allowed string constants in
219 C, C++ and Objective C to contain unescaped newlines has been
220 deprecated and may be removed in a future version. Programs using
221 this extension may be fixed in several ways: the bare newline may
222 be replaced by \n, or preceded by \n\, or string concatenation may
223 be used with the bare newline preceded by \n" and " placed at the
224 start of the next line.
225 * The Chill compiler is not included in GCC 3.0, because of the lack
226 of a volunteer to convert it to use garbage collection.
227 _________________________________________________________________
230 Please send FSF & GNU inquiries & questions to [1]gnu@gnu.org. There
231 are also [2]other ways to contact the FSF.
232 These pages are maintained by [3]The GCC team.
233 Please send comments on these web pages and GCC to
234 [4]gcc@gcc.gnu.org, send other questions to [5]gnu@gnu.org.
235 Copyright (C) Free Software Foundation, Inc., 59 Temple Place -
236 Suite 330, Boston, MA 02111, USA.
237 Verbatim copying and distribution of this entire article is
238 permitted in any medium, provided this notice is preserved.
239 Last modified 2001-05-04.
243 1. mailto:gnu@gnu.org
244 2. http://www.gnu.org/home.html#ContactInfo
245 3. http://gcc.gnu.org/about.html
246 4. mailto:gcc@gcc.gnu.org
247 5. mailto:gnu@gnu.org
248 ======================================================================
249 http://gcc.gnu.org/gcc-2.95/gcc-2.95.3.html
255 The GNU project and the GCC developers are pleased to announce the
256 release of GCC version 2.95.3. GCC used to stand for the GNU C
257 Compiler, but since the compiler supports several other languages
258 aside from C, it now stands for the GNU Compiler Collection.
260 This is a minor release to address several bugs in the [1]GCC version
263 * Generic bugfixes and improvements
264 + Fix numerous problems that caused incorrect optimization in
265 the register reloading code.
266 + Fix numerous problems that caused incorrect optimization in
268 + Fix aborts in the functions build_insn_chain and scan_loops
269 under some circumstances.
270 + Fix an alias analysis bug.
271 + Fix an infinite compilation bug in the combiner.
272 + A few problems with complex number support have been fixed.
273 + It is no longer possible for gcc to act as a fork bomb when
274 installed incorrectly.
275 + The -fpack-struct option should be recognized now.
276 + Fixed a bug that caused incorrect code to be generated due to
277 a lost stack adjustment.
278 * Platform specific bugfixes and improvements
279 + Support building ARM toolchains hosted on Windows.
280 + Fix attribute calculations in ARM toolchains.
281 + arm-linux support has been improved.
282 + Fix a PIC failure on sparc targets.
283 + On ix86 targets, the regparm attribute should now work
285 + Several updates for the h8300 port.
287 The whole suite has been extensively [2]regression tested and
288 [3]package tested. It should be reliable and suitable for widespread
291 The GCC 2.95 release has several new optimizations, new targets, new
292 languages and other new features as compared to EGCS 1.1 or GCC 2.8.
293 See the [4]new features page for a more complete list of new features
294 found in the GCC 2.95 releases.
296 The sources include installation instructions in both HTML and
297 plaintext forms in the install directory in the distribution. However,
298 the most up to date [5]installation instructions and [6]build/test
299 status are on the web pages. We will update those pages as new
300 information becomes available.
302 The GCC developers would like to thank the numerous people that have
303 contributed new features, test results, bugfixes, etc to GCC. This
304 [7]amazing group of volunteers is what makes GCC successful.
306 And finally, we can't in good conscience fail to mention some
307 [8]caveats to using GCC 2.95.3.
309 Download GCC 2.95.3 from the [9]GNU FTP server (ftp://ftp.gnu.org)
310 Download GCC 2.95.3 from the [10]GCC FTP server (ftp://gcc.gnu.org)
311 [11]Find a GNU mirror site
312 [12]Find a GCC mirror site
314 For additional information about GCC please see the [13]GCC project
315 web server or contact the [14]GCC development mailing list.
316 _________________________________________________________________
319 Please send FSF & GNU inquiries & questions to [15]gnu@gnu.org.
320 There are also [16]other ways to contact the FSF.
321 These pages are maintained by [17]The GCC team.
322 Please send comments on these web pages and GCC to
323 [18]gcc@gcc.gnu.org, send other questions to [19]gnu@gnu.org.
324 Copyright (C) Free Software Foundation, Inc., 59 Temple Place -
325 Suite 330, Boston, MA 02111, USA.
326 Verbatim copying and distribution of this entire article is
327 permitted in any medium, provided this notice is preserved.
328 Last modified 2001-05-04.
332 1. http://gcc.gnu.org/gcc-2.95/gcc-2.95.2.html
333 2. http://gcc.gnu.org/gcc-2.95/regress.html
334 3. http://gcc.gnu.org/gcc-2.95/othertest.html
335 4. http://gcc.gnu.org/gcc-2.95/features.html
336 5. http://gcc.gnu.org/install/index.html
337 6. http://gcc.gnu.org/gcc-2.95/buildstat.html
338 7. http://gcc.gnu.org/thanks.html
339 8. http://gcc.gnu.org/gcc-2.95/caveats.html
340 9. ftp://ftp.gnu.org/pub/gnu/gcc/
341 10. ftp://gcc.gnu.org/pub/gcc/releases/index.html
342 11. http://www.gnu.org/order/ftp.html
343 12. http://gcc.gnu.org/mirrors.html
344 13. http://gcc.gnu.org/index.html
345 14. mailto:gcc@gcc.gnu.org
346 15. mailto:gnu@gnu.org
347 16. http://www.gnu.org/home.html#ContactInfo
348 17. http://gcc.gnu.org/about.html
349 18. mailto:gcc@gcc.gnu.org
350 19. mailto:gnu@gnu.org
351 ======================================================================
352 http://gcc.gnu.org/gcc-2.95/gcc-2.95.2.html
358 The GNU project and the GCC developers are pleased to announce the
359 release of GCC version 2.95.2. GCC used to stand for the GNU C
360 Compiler, but since the compiler supports several other languages
361 aside from C, it now stands for the GNU Compiler Collection.
363 This is a minor release to address several bugs in the GCC version
366 The -fstrict-aliasing is not enabled by default for GCC 2.95.2. While
367 the optimizations performed by -fstrict-aliasing are valid according
368 to the C and C++ standards, the optimization have caused some
369 problems, particularly with old non-conforming code.
371 The GCC developers are experimenting with ways to warn users about
372 code which violates the C/C++ standards, but those warnings are not
373 ready for widespread use at this time. Rather than wait for those
374 warnings the GCC developers have chosen to disable -fstrict-aliasing
375 by default for the GCC 2.95.2 release.
377 We strongly encourage developers to find and fix code which violates
378 the C/C++ standards as -fstrict-aliasing may be enabled by default in
379 future releases. Use the option -fstrict-aliasing to re-enable these
382 * Generic bugfixes and improvements
383 + Fix incorrectly optimized memory reference in global common
384 subexpression elimination (GCSE) optimization pass.
385 + Fix code generation bug in regmove.c in which it could
386 incorrectly change a "const" value.
387 + Fix bug in optimization of conditionals involving volatile
389 + Avoid over-allocation of stack space for some procedures.
390 + Fixed bug in the compiler which caused incorrect optimization
391 of an obscure series of bit manipulations, shifts and
393 + Fixed register allocator bug which caused teTeX to be
394 mis-compiled on Sparc targets.
395 + Avoid incorrect optimization of degenerate case statements
396 for certain targets such as the ARM.
397 + Fix out of range memory reference in the jump optimizer.
398 + Avoid dereferencing null pointer in fix-header.
399 + Fix test for GCC specific features so that it is possible to
400 bootstrap with gcc-2.6.2 and older versions of GCC.
401 + Fix typo in scheduler which could potentially cause out of
402 range memory accesses.
403 + Avoid incorrect loop reversal which caused incorrect code for
404 certain loops on PowerPC targets.
405 + Avoid incorrect optimization of switch statements on certain
406 targets (for example the ARM).
407 * Platform specific bugfixes and improvements
408 + Work around bug in Sun V5.0 compilers which caused bootstrap
409 comparison failures on Sparc targets.
410 + Fix Sparc backend bug which caused aborts in final.c.
411 + Fix sparc-hal-solaris2* configuration fragments.
412 + Fix bug in sparc block profiling.
413 + Fix obscure code generation bug for the PARISC targets.
414 + Define __STDC_EXT__ for HPUX configurations.
415 + Various POWERPC64 code generation bugfixes.
416 + Fix abort for PPC targets using ELF (ex GNU/Linux).
417 + Fix collect2 problems for AIX targets.
418 + Correct handling of .file directive for PPC targets.
419 + Fix bug in fix_trunc x86 patterns.
420 + Fix x86 port to correctly pop the FP stack for functions that
421 return structures in memory.
422 + Fix minor bug in strlen x86 pattern.
423 + Use stabs debugging instead of dwarf1 for x86-solaris
425 + Fix template repository code to handle leading underscore in
427 + Fix weak/weak alias support for OpenBSD.
428 + GNU/Linux for the ARM has C++ compatible include files.
429 * Language & Runtime specific fixes.
430 + Fix handling of constructor attribute in the C front-end
431 which caused problems building the Chill runtime library on
433 + Fix minor problem merging type qualifiers in the C front-end.
434 + Fix aliasing bug for pointers and references (C/C++).
435 + Fix incorrect "non-constant initializer bug" when
436 -traditional or -fwritable-strings is enabled.
437 + Fix build error for Chill front-end on SunOS.
438 + Do not complain about duplicate instantiations when using
440 + Fix array bounds handling in C++ front-end which caused
441 problems with dwarf debugging information in some
443 + Fix minor namespace problem.
444 + Fix problem linking java programs.
446 The whole suite has been extensively [1]regression tested and
447 [2]package tested. It should be reliable and suitable for widespread
450 The GCC 2.95 release has several new optimizations, new targets, new
451 languages and other new features as compared to EGCS 1.1 or GCC 2.8.
452 See the [3]new features page for a more complete list of new features
453 found in the GCC 2.95 releases.
455 The sources include installation instructions in both HTML and
456 plaintext forms in the install directory in the distribution. However,
457 the most up to date [4]installation instructions and [5]build/test
458 status are on the web pages. We will update those pages as new
459 information becomes available.
461 The GCC developers would like to thank the numerous people that have
462 contributed new features, test results, bugfixes, etc to GCC. This
463 [6]amazing group of volunteers is what makes GCC successful.
465 And finally, we can't in good conscience fail to mention some
466 [7]caveats to using GCC 2.95.2.
468 Download GCC 2.95.2 from the [8]GNU FTP server (ftp://ftp.gnu.org)
469 Download GCC 2.95.2 from the [9]GCC/EGCS FTP server
471 [10]Find a GNU mirror site
472 [11]Find a GCC/EGCS mirror site
474 For additional information about GCC please see the [12]GCC project
475 web server or contact the [13]GCC development mailing list.
476 _________________________________________________________________
479 Please send FSF & GNU inquiries & questions to [14]gnu@gnu.org.
480 There are also [15]other ways to contact the FSF.
481 These pages are maintained by [16]The GCC team.
482 Please send comments on these web pages and GCC to
483 [17]gcc@gcc.gnu.org, send other questions to [18]gnu@gnu.org.
484 Copyright (C) Free Software Foundation, Inc., 59 Temple Place -
485 Suite 330, Boston, MA 02111, USA.
486 Verbatim copying and distribution of this entire article is
487 permitted in any medium, provided this notice is preserved.
488 Last modified 2001-05-04.
492 1. http://gcc.gnu.org/gcc-2.95/regress.html
493 2. http://gcc.gnu.org/gcc-2.95/othertest.html
494 3. http://gcc.gnu.org/gcc-2.95/features.html
495 4. http://gcc.gnu.org/install/index.html
496 5. http://gcc.gnu.org/gcc-2.95/buildstat.html
497 6. http://gcc.gnu.org/thanks.html
498 7. http://gcc.gnu.org/gcc-2.95/caveats.html
499 8. ftp://ftp.gnu.org/pub/gnu/gcc/
500 9. ftp://gcc.gnu.org/pub/gcc/releases/index.html
501 10. http://www.gnu.org/order/ftp.html
502 11. http://gcc.gnu.org/mirrors.html
503 12. http://gcc.gnu.org/index.html
504 13. mailto:gcc@gcc.gnu.org
505 14. mailto:gnu@gnu.org
506 15. http://www.gnu.org/home.html#ContactInfo
507 16. http://gcc.gnu.org/about.html
508 17. mailto:gcc@gcc.gnu.org
509 18. mailto:gnu@gnu.org
510 ======================================================================
511 http://gcc.gnu.org/gcc-2.95/gcc-2.95.1.html
517 The GNU project and the GCC/EGCS developers are pleased to announce
518 the release of GCC version 2.95.1. GCC used to stand for the GNU C
519 Compiler, but since the compiler supports several other languages
520 aside from C, it now stands for the GNU Compiler Collection.
522 This is a minor release to address several bugs in the GCC version
525 * Generic bugfixes and improvements
526 + Various documentation fixes related to the GCC/EGCS merger.
527 + Fix memory management bug which could lead to spurious
528 aborts, core dumps or random parsing errors in the compiler.
529 + Fix a couple bugs in the dwarf1 and dwarf2 debug record
531 + Fix infinite loop in the CSE optimizer.
532 + Avoid undefined behavior in compiler FP emulation code
533 + Fix install problem when prefix is overridden on the make
535 + Fix problem with unwanted installation of assert.h on some
537 + Fix problem with finding the wrong assembler in a single tree
539 + Avoid increasing the known alignment of a register that is
540 already known to be a pointer.
541 * Platform specific bugfixes and improvements
542 + Codegen bugfix for prologue/epilogue for cpu32 target.
543 + Fix long long code generation bug for the Coldfire target.
544 + Fix various aborts in the SH compiler.
545 + Fix bugs in libgcc support library for the SH.
546 + Fix alpha ev6 code generation bug.
547 + Fix problems with EXIT_SUCCESS/EXIT_FAILURE redefinitions on
549 + Fix -fpic code generation bug for rs6000/ppc svr4 targets.
550 + Fix varargs/stdarg code generation bug for rs6000/ppc svr4
552 + Fix weak symbol handling for rs6000/ppc svr4 targets.
553 + Fix various problems with 64bit code generation for the
555 + Fix codegen bug which caused tetex to be mis-compiled on the
557 + Fix compiler abort in new cfg code exposed by x86 port.
558 + Fix out of range array reference in code convert flat
559 registers to the x87 stacked FP register file.
560 + Fix minor vxworks configuration bug
561 + Fix return type of bsearch for SunOS 4.x.
562 * Language & Runtime specific fixes.
563 + The G++ signature extension has been deprecated. It will be
564 removed in the next major release of G++. Use of signatures
565 will result in a warning from the compiler.
566 + Several bugs relating to templates and namespaces were fixed.
567 + A bug that caused crashes when combining templates with -g on
568 DWARF1 platforms was fixed.
569 + Pointers-to-members, virtual functions, and multiple
570 inheritance should now work together correctly.
571 + Some code-generation bugs relating to function try blocks
573 + G++ is a little bit more lenient with certain archaic
574 constructs than in GCC 2.95.
575 + Fix to prevent shared library version #s from bring truncated
577 + Fix missing std:: in the libstdc++ library.
578 + Fix stream locking problems in libio.
579 + Fix problem in java compiler driver.
581 The whole suite has been extensively [1]regression tested and
582 [2]package tested. It should be reliable and suitable for widespread
585 The compiler has several new optimizations, new targets, new languages
586 and other new features. See the [3]new features page for a more
587 complete list of new features found in the GCC 2.95 releases.
589 The sources include installation instructions in both HTML and
590 plaintext forms in the install directory in the distribution. However,
591 the most up to date [4]installation instructions and [5]build/test
592 status are on the web pages. We will update those pages as new
593 information becomes available.
595 The GCC developers would like to thank the numerous people that have
596 contributed new features, test results, bugfixes, etc to GCC. This
597 [6]amazing group of volunteers is what makes GCC successful.
599 And finally, we can't in good conscience fail to mention some
600 [7]caveats to using GCC 2.95.1.
602 Download GCC 2.95.1 from the [8]GNU FTP server (ftp://ftp.gnu.org)
603 Download GCC 2.95.1 from the [9]GCC/EGCS FTP server
604 (ftp://go.cygnus.com)
605 [10]Find a GNU mirror site
606 [11]Find a GCC/EGCS mirror site
608 For additional information about GCC please see the [12]GCC project
609 web server or contact the [13]GCC development mailing list.
610 _________________________________________________________________
613 Please send FSF & GNU inquiries & questions to [14]gnu@gnu.org.
614 There are also [15]other ways to contact the FSF.
615 These pages are maintained by [16]The GCC team.
616 Please send comments on these web pages and GCC to
617 [17]gcc@gcc.gnu.org, send other questions to [18]gnu@gnu.org.
618 Copyright (C) Free Software Foundation, Inc., 59 Temple Place -
619 Suite 330, Boston, MA 02111, USA.
620 Verbatim copying and distribution of this entire article is
621 permitted in any medium, provided this notice is preserved.
622 Last modified 2001-05-04.
626 1. http://gcc.gnu.org/gcc-2.95/regress.html
627 2. http://gcc.gnu.org/gcc-2.95/othertest.html
628 3. http://gcc.gnu.org/gcc-2.95/features.html
629 4. http://gcc.gnu.org/install/index.html
630 5. http://gcc.gnu.org/gcc-2.95/buildstat.html
631 6. http://gcc.gnu.org/thanks.html
632 7. http://gcc.gnu.org/gcc-2.95/caveats.html
633 8. ftp://ftp.gnu.org/pub/gnu/gcc/
634 9. ftp://go.cygnus.com/pub/sourceware.cygnus.com/pub/egcs/releases/index.html
635 10. http://www.gnu.org/order/ftp.html
636 11. http://gcc.gnu.org/mirrors.html
637 12. http://gcc.gnu.org/index.html
638 13. mailto:gcc@gcc.gnu.org
639 14. mailto:gnu@gnu.org
640 15. http://www.gnu.org/home.html#ContactInfo
641 16. http://gcc.gnu.org/about.html
642 17. mailto:gcc@gcc.gnu.org
643 18. mailto:gnu@gnu.org
644 ======================================================================
645 http://gcc.gnu.org/gcc-2.95/gcc-2.95.html
651 The GNU project and the GCC/EGCS developers are pleased to announce
652 the release of GCC version 2.95. GCC used to stand for the GNU C
653 Compiler, but since the compiler supports several other languages
654 aside from C, it now stands for the GNU Compiler Collection.
656 This is the first release of GCC since the April 1999 GCC/EGCS
657 reunification and includes nearly a year's worth of new development
660 The whole suite has been extensively [1]regression tested and
661 [2]package tested. It should be reliable and suitable for widespread
664 The compiler has several new optimizations, new targets, new languages
665 and other new features. See the [3]new features page for a more
666 complete list of new features found in the GCC 2.95 releases.
668 The sources include installation instructions in both HTML and
669 plaintext forms in the install directory in the distribution. However,
670 the most up to date [4]installation instructions and [5]build/test
671 status are on the web pages. We will update those pages as new
672 information becomes available.
674 The GCC developers would like to thank the numerous people that have
675 contributed new features, test results, bugfixes, etc to GCC. This
676 [6]amazing group of volunteers is what makes GCC successful.
678 And finally, we can't in good conscience fail to mention some
679 [7]caveats to using GCC 2.95.
681 Download GCC 2.95 from the [8]GNU FTP server (ftp://ftp.gnu.org)
682 Download GCC 2.95 from the [9]GCC/EGCS FTP server
683 (ftp://go.cygnus.com)
684 [10]Find a GNU mirror site
685 [11]Find a GCC/EGCS mirror site
687 For additional information about GCC please see the [12]GCC project
688 web server or contact the [13]GCC development mailing list.
689 _________________________________________________________________
692 Please send FSF & GNU inquiries & questions to [14]gnu@gnu.org.
693 There are also [15]other ways to contact the FSF.
694 These pages are maintained by [16]The GCC team.
695 Please send comments on these web pages and GCC to
696 [17]gcc@gcc.gnu.org, send other questions to [18]gnu@gnu.org.
697 Copyright (C) Free Software Foundation, Inc., 59 Temple Place -
698 Suite 330, Boston, MA 02111, USA.
699 Verbatim copying and distribution of this entire article is
700 permitted in any medium, provided this notice is preserved.
701 Last modified 2001-05-04.
705 1. http://gcc.gnu.org/gcc-2.95/regress.html
706 2. http://gcc.gnu.org/gcc-2.95/othertest.html
707 3. http://gcc.gnu.org/gcc-2.95/features.html
708 4. http://gcc.gnu.org/install/index.html
709 5. http://gcc.gnu.org/gcc-2.95/buildstat.html
710 6. http://gcc.gnu.org/thanks.html
711 7. http://gcc.gnu.org/gcc-2.95/caveats.html
712 8. ftp://ftp.gnu.org/pub/gnu/gcc/
713 9. ftp://go.cygnus.com/pub/sourceware.cygnus.com/pub/egcs/releases/index.html
714 10. http://www.gnu.org/order/ftp.html
715 11. http://gcc.gnu.org/mirrors.html
716 12. http://gcc.gnu.org/index.html
717 13. mailto:gcc@gcc.gnu.org
718 14. mailto:gnu@gnu.org
719 15. http://www.gnu.org/home.html#ContactInfo
720 16. http://gcc.gnu.org/about.html
721 17. mailto:gcc@gcc.gnu.org
722 18. mailto:gnu@gnu.org
723 ======================================================================
724 http://gcc.gnu.org/gcc-2.95/features.html
726 GCC 2.95 New Features
728 * General Optimizer Improvements:
729 + [1]Localized register spilling to improve speed and code
730 density especially on small register class machines.
731 + [2]Global CSE using lazy code motion algorithms.
732 + [3]Improved global constant/copy propagation.
733 + [4]Improved control flow graph analysis and manipulation.
734 + [5]Local dead store elimination.
735 + [6]Memory Load hoisting/store sinking in loops.
736 + [7]Type based alias analysis is enabled by default. Note this
737 feature will expose bugs in the Linux kernel. Please refer to
738 the [8]FAQ for additional information on this issue.
739 + Major revamp of GIV detection, combination and simplification
740 to improve loop performance.
741 + Major improvements to register allocation and reloading.
742 * New Languages and Language specific improvements
743 + [9]Many C++ improvements.
744 + [10]Many Fortran improvements.
745 + [11]Java front-end has been integrated. A [12]runtime library
746 is available separately.
747 + [13]ISO C99 support
748 + [14]Chill front-end and runtime has been integrated.
749 + Boehm garbage collector support in libobjc.
750 + More support for various pragmas which appear in vendor
752 * New Targets and Target Specific Improvements
753 + [15]Sparc backend rewrite.
754 + -mschedule=8000 will optimize code for PA8000 class
755 processors; -mpa-risc-2-0 will generate code for PA2.0
757 + Various micro-optimizations for the ia32 port. K6
759 + Compiler will attempt to align doubles in the stack on the
763 + RS6000/PowerPC: -mcpu=401 was added as an alias for
764 -mcpu=403. -mcpu=e603e was added to do -mcpu=603e and
770 + Support for new systems (OpenBSD, FreeBSD, UWIN, Interix,
772 + vxWorks targets include support for vxWorks threads
773 + StrongARM 110 and ARM9 support added. ARM Scheduling
774 parameters rewritten.
775 + Various changes to the MIPS port to avoid assembler macros,
777 + Various performance improvements to the i960 port.
778 + Major rewrite of ns32k port in turn improves performance
779 * Other significant improvements
780 + [16]Ability to dump cfg information and display it using vcg.
781 + The new faster scheme for fixing vendor header files is
783 + Experimental internationalization support.
784 + multibyte character support
785 + Some compile-time speedups for pathological problems
786 + Better support for complex types
787 * Plus the usual mountain of bugfixes
788 * Core compiler is based on the gcc2 development tree from Sept 30,
789 1998, so we have all of the [17]features found in GCC 2.8.
790 _________________________________________________________________
793 Please send FSF & GNU inquiries & questions to [18]gnu@gnu.org.
794 There are also [19]other ways to contact the FSF.
795 These pages are maintained by [20]The GCC team.
796 Please send comments on these web pages and GCC to
797 [21]gcc@gcc.gnu.org, send other questions to [22]gnu@gnu.org.
798 Copyright (C) Free Software Foundation, Inc., 59 Temple Place -
799 Suite 330, Boston, MA 02111, USA.
800 Verbatim copying and distribution of this entire article is
801 permitted in any medium, provided this notice is preserved.
802 Last modified 2001-05-04.
806 1. http://gcc.gnu.org/news/spill.html
807 2. http://gcc.gnu.org/news/lcm.html
808 3. http://gcc.gnu.org/news/cprop.html
809 4. http://gcc.gnu.org/news/cfg.html
810 5. http://gcc.gnu.org/news/dse.html
811 6. http://gcc.gnu.org/news/hoist.html
812 7. http://gcc.gnu.org/news/alias.html
813 8. http://gcc.gnu.org/fom_serv/cache/24.html
814 9. http://gcc.gnu.org/gcc-2.95/c++features.html
815 10. http://gcc.gnu.org/onlinedocs/g77_news.html
816 11. http://sources.redhat.com/java/gcj-announce.txt
817 12. http://gcc.gnu.org/news/javaannounce.html
818 13. http://gcc.gnu.org/c99status.html
819 14. http://gcc.gnu.org/news/chill.html
820 15. http://gcc.gnu.org/news/sparc.html
821 16. http://gcc.gnu.org/news/egcs-vcg.html
822 17. http://gcc.gnu.org/egcs-1.0/features-2.8.html
823 18. mailto:gnu@gnu.org
824 19. http://www.gnu.org/home.html#ContactInfo
825 20. http://gcc.gnu.org/about.html
826 21. mailto:gcc@gcc.gnu.org
827 22. mailto:gnu@gnu.org
828 ======================================================================
829 http://gcc.gnu.org/gcc-2.95/caveats.html
833 * GCC 2.95 will issue an error for invalid asm statements that had
834 been silently accepted by earlier versions of the compiler. This
835 is particularly noticeable when compiling older versions of the
836 Linux kernel (2.0.xx). Please refer to the [1]FAQ for more
837 information on this issue.
838 * GCC 2.95 implements type based alias analysis to disambiguate
839 memory references. Some programs, particularly the Linux kernel
840 violate ANSI/ISO aliasing rules and therefore may not operate
841 correctly when compiled with GCC 2.95. Please refer to the [2]FAQ
842 for more information on this issue.
843 * GCC 2.95 has a known bug in its handling of complex variables for
844 64bit targets. Instead of silently generating incorrect code, GCC
845 2.95 will issue a fatal error for situations it can not handle.
846 This primarily affects the Fortran community as Fortran makes more
847 use of complex variables than C or C++.
848 * GCC 2.95 has an integrated libstdc++, but does not have an
849 integrated libg++. Furthermore old libg++ releases will not work
850 with GCC 2.95. You can retrieve a recent copy of libg++ from the
852 Note most C++ programs only need libstdc++.
853 * Exception handling may not work with shared libraries,
854 particularly on alphas, hppas, rs6000/powerpc and mips based
855 platforms. Exception handling is known to work on x86 GNU/Linux
856 platforms with shared libraries.
857 * In general, GCC 2.95 is more rigorous about rejecting invalid C++
858 code or deprecated C++ constructs than G++ 2.7, G++ 2.8, EGCS 1.0,
859 or EGCS 1.1. As a result it may be necessary to fix C++ code
860 before it will compile with GCC 2.95.
861 * G++ is also converting toward the ISO C++ standard; as a result
862 code which was previously valid (and thus accepted by other
863 compilers and older versions of g++) may no longer be accepted.
864 The flag -fpermissive may allow some non-conforming code to
865 compile with GCC 2.95.
866 * GCC 2.95 compiled C++ code is not binary compatible with EGCS
867 1.1.x, EGCS 1.0.x or GCC 2.8.x.
868 * GCC 2.95 does not have changes from the GCC 2.8 tree that were
869 made between Sept 30, 1998 and April 30, 1999 (the official end of
870 the GCC 2.8 project). Future GCC releases will include all the
871 changes from the defunct GCC 2.8 sources.
872 _________________________________________________________________
875 Please send FSF & GNU inquiries & questions to [4]gnu@gnu.org. There
876 are also [5]other ways to contact the FSF.
877 These pages are maintained by [6]The GCC team.
878 Please send comments on these web pages and GCC to
879 [7]gcc@gcc.gnu.org, send other questions to [8]gnu@gnu.org.
880 Copyright (C) Free Software Foundation, Inc., 59 Temple Place -
881 Suite 330, Boston, MA 02111, USA.
882 Verbatim copying and distribution of this entire article is
883 permitted in any medium, provided this notice is preserved.
884 Last modified 2001-05-04.
888 1. http://gcc.gnu.org/faq.html#asmclobber
889 2. http://gcc.gnu.org/fom_serv/cache/24.html
890 3. ftp://gcc.gnu.org/pub/gcc/infrastructure/libg++-2.8.1.3.tar.gz
891 4. mailto:gnu@gnu.org
892 5. http://www.gnu.org/home.html#ContactInfo
893 6. http://gcc.gnu.org/about.html
894 7. mailto:gcc@gcc.gnu.org
895 8. mailto:gnu@gnu.org
896 ======================================================================
897 http://gcc.gnu.org/egcs-1.1/egcs-1.1.2.html
903 We are pleased to announce the release of EGCS 1.1.2.
905 EGCS is a collaborative effort involving several groups of hackers
906 using an open development model to accelerate development and testing
907 of GNU compilers and runtime libraries.
909 EGCS 1.1.2 is a minor update to the EGCS 1.1.1 compiler to fix several
910 serious problems in EGCS 1.1.1.
911 * General improvements and fixes
912 + Fix bug in loop optimizer which caused the SPARC (and
913 potentially other) ports to segfault.
914 + Fix infinite recursion in alias analysis and combiner code.
915 + Fix bug in regclass preferencing.
916 + Fix incorrect loop reversal which caused incorrect code to be
917 generated for several targets.
918 + Fix return value for builtin memcpy.
919 + Reduce compile time for certain loops which exposed quadratic
920 behavior in the loop optimizer.
921 + Fix bug which caused volatile memory to be written multiple
922 times when only one write was needed/desired.
923 + Fix compiler abort in caller-save.c
924 + Fix combiner bug which caused incorrect code generation for
925 certain division by constant operations.
926 + Fix incorrect code generation due to a bug in range check
928 + Fix incorrect code generation due to mis-handling of
929 clobbered values in CSE.
930 + Fix compiler abort/segfault due to incorrect register
931 splitting when unrolling loops.
932 + Fix code generation involving autoincremented addresses with
934 + Work around bug in the scheduler which caused qt to be
935 mis-compiled on some platforms.
936 + Fix code generation problems with -fshort-enums.
937 + Tighten security for temporary files.
938 + Improve compile time for codes which make heavy use of
939 overloaded functions.
940 + Fix multiply defined constructor/destructor symbol problems.
941 + Avoid setting bogus RPATH environemnt variable during
943 + Avoid GNU-make dependencies in the texinfo subdir.
944 + Install CPP wrapper script in $(prefix)/bin if --enable-cpp.
945 --enable-cpp= can be used to specify an additional install
946 directory for the cpp wrapper script.
947 + Fix CSE bug which caused incorrect label-label refs to appear
949 + Avoid linking in EH routines from libgcc if they are not
951 + Avoid obscure bug in aliasing code.
952 + Fix bug in weak symbol handling.
953 * Platform-specific improvements and fixes
954 + Fix detection of PPro/PII on Unixware 7.
955 + Fix compiler segfault when building spec99 and other programs
957 + Fix code-generation bugs for integer and floating point
958 conditional move instructions on the PPro/PII.
959 + Use fixincludes to fix byteorder problems on i?86-*-sysv.
960 + Fix build failure for the arc port.
961 + Fix floating point format configuration for i?86-gnu port
962 + Fix problems with hppa1.0-hp-hpux10.20 configuration when
964 + Fix coldfire code generation bugs.
965 + Fix "unrecognized insn" problems for Alpha and PPC ports.
966 + Fix h8/300 code generation problem with floating point values
968 + Fix unrecognized insn problems for the m68k port.
969 + Fix namespace-pollution problem for the x86 port.
970 + Fix problems with old assembler on x86 NeXT systems.
971 + Fix PIC code-generation problems for the SPARC port.
972 + Fix minor bug with LONG_CALLS in PowerPC SVR4 support.
973 + Fix minor ISO namespace violation in Alpha varargs/stdarg
975 + Fix incorrect "braf" instruction usage for the SH port.
976 + Fix minor bug in va-sh which prevented its use with -ansi.
977 + Fix problems recognizing and supporting FreeBSD.
978 + Handle OpenBSD systems correctly.
979 + Minor fixincludes fix for Digital UNIX 4.0B.
980 + Fix problems with ctors/dtors in SCO shared libraries.
981 + Abort instead of generating incorrect code for PPro/PII
982 floating point conditional moves.
983 + Avoid multiply defined symbols on Linux/GNU systems using
985 + Fix abort in alpha compiler.
987 Fortran-specific fixes
988 * Fix the IDate intrinsic (VXT) (in libg2c) so the returned year is
989 in the documented, non-Y2K-compliant range of 0-99, instead of
990 being returned as 100 in the year 2000.
991 * Fix the `Date_and_Time' intrinsic (in libg2c) to return the
992 milliseconds value properly in Values(8).
993 * Fix the `LStat' intrinsic (in libg2c) to return device-ID
994 information properly in SArray(7).
996 An important goal of EGCS is to allow wide scale testing of new
997 features and optimizations which are still under development. However,
998 EGCS has been carefully tested and should be comparable in quality to
1001 EGCS 1.1.2 is based on the June 6, 1998 snapshot of the GCC 2.8
1002 development sources; it contains all of the new features found in GCC
1003 2.8.1 as well as all new development from gcc2 up to June 6, 1998.
1005 See the [1]new features page for a more complete list of new features
1006 found in EGCS 1.1 releases.
1008 The EGCS 1.1.2 release includes installation instructions in both HTML
1009 and plaintext forms (see the INSTALL directory in the toplevel
1010 directory of the EGCS 1.1.2 distribution). However, we also keep the
1011 most up to date [2]installation instructions and [3]build/test status
1012 on our web page. We will update those pages as new information becomes
1015 The EGCS project would like to thank the numerous people that have
1016 contributed new features, test results, bugfixes, etc. This [4]amazing
1017 group of volunteers is what makes EGCS successful.
1019 And finally, we can't in good conscience fail to mention some
1020 [5]caveats to using EGCS 1.1.2. [6]Download EGCS 1.1.2 from
1021 egcs.cygnus.com (USA California) -->
1023 [7]Download EGCS 1.1.2 from go.cygnus.com (USA California - High speed
1024 link provided by Stanford)
1026 The EGCS 1.1.2 release is also available on many [8]mirror sites.
1027 _________________________________________________________________
1029 Last modified on July 28, 1999.
1033 1. http://gcc.gnu.org/egcs-1.1/features.html
1034 2. http://gcc.gnu.org/install/index.html
1035 3. http://gcc.gnu.org/egcs-1.1/buildstat.html
1036 4. http://gcc.gnu.org/thanks.html
1037 5. http://gcc.gnu.org/egcs-1.1/caveats.html
1038 6. ftp://egcs.cygnus.com/pub/egcs/releases/index.html
1039 7. ftp://go.cygnus.com/pub/sourceware.cygnus.com/pub/egcs/releases/index.html
1040 8. http://gcc.gnu.org/mirrors.html
1041 ======================================================================
1042 http://gcc.gnu.org/egcs-1.1/egcs-1.1.1.html
1048 We are pleased to announce the release of EGCS 1.1.1.
1050 EGCS is a collaborative effort involving several groups of hackers
1051 using an open development model to accelerate development and testing
1052 of GNU compilers and runtime libraries.
1054 EGCS 1.1.1 is a minor update to the EGCS 1.1 compiler to fix several
1055 serious problems in EGCS 1.1.
1056 * General improvements and fixes
1057 + Avoid some stack overflows when compiling large functions.
1058 + Avoid incorrect loop invariant code motions.
1059 + Fix some core dumps on Linux kernel code.
1060 + Bring back the imake -Di386 and friends fix from EGCS 1.0.2.
1061 + Fix code generation problem in gcse.
1062 + Various documentation related fixes.
1063 * g++/libstdc++ improvements and fixes
1064 + MT safe EH fix for setjmp/longjmp based exception handling.
1065 + Fix a few bad interactions between optimization and exception
1067 + Fixes for demangling of template names starting with "__".
1068 + Fix a bug that would fail to run destructors in some cases
1070 + Fix 'new' of classes with virtual bases.
1071 + Fix crash building Qt on the Alpha.
1072 + Fix failure compiling WIFEXITED macro on GNU/Linux.
1073 + Fix some -frepo failures.
1074 * g77 and libf2c improvements and fixes
1075 + Various documentation fixes.
1076 + Avoid compiler crash on RAND intrinsic.
1077 + Fix minor bugs in makefiles exposed by BSD make programs.
1078 + Define _XOPEN_SOURCE for libI77 build to avoid potential
1079 problems on some 64-bit systems.
1080 + Fix problem with implicit endfile on rewind.
1081 + Fix spurious recursive I/O errors.
1082 * platform specific improvements and fixes
1083 + Match all versions of UnixWare7.
1084 + Do not assume x86 SVR4 or UnixWare targets can handle stabs
1085 + Fix PPC/RS6000 LEGITIMIZE_ADDRESS macro and bug in conversion
1086 from unsigned ints to double precision floats.
1087 + Fix ARM ABI issue with NetBSD.
1088 + Fix a few arm code generation bugs.
1089 + Fixincludes will fix additional broken SCO OpenServer header
1091 + Fix a m68k backend bug which caused invalid offsets in reg+d
1093 + Fix problems with 64bit AIX 4.3 support.
1094 + Fix handling of long longs for varargs/stdarg functions on
1096 + Minor fixes to CPP predefines for Windows.
1097 + Fix code generation problems with gpr<->fpr copies for 64bit
1099 + Fix a few coldfire code generation bugs.
1100 + Fix some more header file problems on SunOS 4.x
1101 + Fix assert.h handling for RTEMS.
1102 + Fix Windows handling of TREE_SYMBOL_REFERENCED.
1103 + Fix x86 compiler abort in reg-stack pass.
1104 + Fix cygwin/windows problem with section attributes.
1105 + Fix Alpha code generation problem exposed by SMP Linux
1107 + Fix typo in m68k 32->64bit integer conversion.
1108 + Make sure target libraries build with -fPIC for PPC & Alpha
1111 An important goal of EGCS is to allow wide scale testing of new
1112 features and optimizations which are still under development. However,
1113 EGCS has been carefully tested and should be comparable in quality to
1116 EGCS 1.1.1 is based on the June 6, 1998 snapshot of the GCC 2.8
1117 development sources; it contains all of the new features found in GCC
1118 2.8.1 as well as all new development from gcc2 up to June 6, 1998.
1120 See the [1]new features page for a more complete list of new features
1121 found in EGCS 1.1 releases.
1123 The EGCS 1.1.1 release includes installation instructions in both HTML
1124 and plaintext forms (see the INSTALL directory in the toplevel
1125 directory of the EGCS 1.1.1 distribution). However, we also keep the
1126 most up to date [2]installation instructions and [3]build/test status
1127 on our web page. We will update those pages as new information becomes
1130 The EGCS project would like to thank the numerous people that have
1131 contributed new features, test results, bugfixes, etc. This [4]amazing
1132 group of volunteers is what makes EGCS successful.
1134 And finally, we can't in good conscience fail to mention some
1135 [5]caveats to using EGCS 1.1.1.
1137 [6]Download EGCS 1.1.1 from egcs.cygnus.com (USA California)
1139 The EGCS 1.1.1 release is also available on many mirror sites.
1140 [7]Goto mirror list to find a closer site
1141 _________________________________________________________________
1143 Last modified on July 28, 1999.
1147 1. http://gcc.gnu.org/egcs-1.1/features.html
1148 2. http://gcc.gnu.org/install/index.html
1149 3. http://gcc.gnu.org/egcs-1.1/buildstat.html
1150 4. http://gcc.gnu.org/thanks.html
1151 5. http://gcc.gnu.org/egcs-1.1/caveats.html
1152 6. ftp://egcs.cygnus.com/pub/egcs/releases/index.html
1153 7. http://gcc.gnu.org/mirrors.html
1154 ======================================================================
1155 http://gcc.gnu.org/egcs-1.1/egcs-1.1.html
1161 We are pleased to announce the release of EGCS 1.1.
1163 EGCS is a free software project to further the development of the GNU
1164 compilers using an open development environment.
1166 EGCS 1.1 is a major new release of the EGCS compiler system. It has
1167 been [1]extensively tested and is believed to be stable and suitable
1170 EGCS 1.1 is based on an June 6, 1998 snapshot of the GCC 2.8
1171 development sources; it contains all of the new features found in GCC
1172 2.8.1 as well as all new development from GCC up to June 6, 1998.
1174 EGCS also contains many improvements and features not found in GCC or
1175 in older versions of EGCS.
1176 * Global common subexpression elimination and global constant/copy
1177 propagation (aka [2]gcse)
1178 * Ongoing improvements to the [3]alias analysis support to allow for
1179 better optimizations throughout the compiler.
1180 * Vastly improved [4]C++ compiler and integrated C++ runtime
1182 * Fixes for the /tmp symlink race security problems.
1183 * New targets including mips16, arm-thumb and 64 bit PowerPC.
1184 * Improvements to GNU Fortran (g77) compiler and runtime library
1185 made since [5]g77 version 0.5.23.
1187 See the [6]new features page for a more complete list of new features
1188 found in EGCS 1.1 releases.
1190 The EGCS 1.1 release includes installation instructions in both HTML
1191 and plaintext forms (see the INSTALL directory in the toplevel
1192 directory of the EGCS 1.1 distribution). However, we also keep the
1193 most up to date [7]installation instructions and [8]build/test status
1194 on our web page. We will update those pages as new information becomes
1197 The EGCS project would like to thank the numerous people that have
1198 contributed new features, test results, bugfixes, etc. This [9]amazing
1199 group of volunteers is what makes EGCS successful.
1201 And finally, we can't in good conscience fail to mention some
1202 [10]caveats to using EGCS 1.1.
1204 [11]Download EGCS 1.1 from egcs.cygnus.com (USA California)
1206 [12]Download EGCS 1.1 from go.cygnus.com (USA California -- High speed
1207 link provided by Stanford)
1209 The EGCS 1.1 release is also available on many mirror sites.
1210 [13]Goto mirror list to find a closer site
1211 _________________________________________________________________
1213 Last modified on September 4, 1999.
1217 1. http://gcc.gnu.org/egcs-1.1/egcs-1.1-test.html
1218 2. http://gcc.gnu.org/news/gcse.html
1219 3. http://gcc.gnu.org/news/alias.html
1220 4. http://gcc.gnu.org/egcs-1.1/c++features.html
1221 5. http://gcc.gnu.org/onlinedocs/g77_news.html
1222 6. http://gcc.gnu.org/egcs-1.1/features.html
1223 7. http://gcc.gnu.org/install/index.html
1224 8. http://gcc.gnu.org/egcs-1.1/buildstat.html
1225 9. http://gcc.gnu.org/thanks.html
1226 10. http://gcc.gnu.org/egcs-1.1/caveats.html
1227 11. ftp://egcs.cygnus.com/pub/egcs/releases/index.html
1228 12. ftp://go.cygnus.com/pub/sourceware.cygnus.com/pub/egcs/releases/index.html
1229 13. http://gcc.gnu.org/mirrors.html
1230 ======================================================================
1231 http://gcc.gnu.org/egcs-1.1/features.html
1233 EGCS 1.1 new features
1235 * Integrated GNU Fortran (g77) compiler and runtime library with
1236 improvements, based on [1]g77 version 0.5.23.
1237 * Vast improvements in the C++ compiler; so many they have [2]page
1239 * Compiler implements [3]global common subexpression elimination and
1240 global copy/constant propagation.
1241 * More major improvements in the [4]alias analysis code.
1242 * More major improvements in the exception handling code to improve
1243 performance, lower static overhead and provide the infrastructure
1244 for future improvements.
1245 * The infamous /tmp symlink race security problems have been fixed.
1246 * The regmove optimization pass has been nearly completely rewritten
1247 to improve performance of generated code.
1248 * The compiler now recomputes register usage information before
1249 local register allocation. By providing more accurate information
1250 to the priority based allocator, we get better register
1252 * The register reloading phase of the compiler optimizes spill code
1253 much better than in previous releases.
1254 * Some bad interactions between the register allocator and
1255 instruction scheduler have been fixed, resulting in much better
1256 code for certain programs. Additionally, we have tuned the
1257 scheduler in various ways to improve performance of generated code
1258 for some architectures.
1259 * The compiler's branch shortening algorithms have been
1260 significantly improved to work better on targets which align jump
1262 * The compiler now supports -Os to prefer optimizing for code space
1263 over optimizing for code speed.
1264 * The compiler will now totally eliminate library calls which
1265 compute constant values. This primarily helps targets with no
1266 integer div/mul support and targets without floating point
1268 * The compiler now supports an extensive "--help" option.
1269 * cpplib has been greatly improved and may be suitable for limited
1271 * Memory footprint for the compiler has been significantly reduced
1272 for some pathological cases.
1273 * The time to build EGCS has been improved for certain targets
1274 (particularly the alpha and mips platforms).
1275 * Many infrastructure improvements throughout the compiler, plus the
1276 usual mountain of bugfixes and minor improvements.
1277 * Target dependent improvements:
1278 + SPARC port now includes V8 plus and V9 support as well as
1279 performance tuning for Ultra class machines. The SPARC port
1280 now uses the Haifa scheduler.
1281 + Alpha port has been tuned for the EV6 processor and has an
1282 optimized expansion of memcpy/bzero. The Alpha port now uses
1283 the Haifa scheduler.
1284 + RS6000/PowerPC: EGCS 1.1 includes support for the Power64
1285 architecture and aix4.3 support. The RS6000/PowerPC port now
1286 uses the Haifa scheduler.
1287 + x86: Alignment of static store data and jump targets is per
1288 Intel recommendations now. Various improvements throughout
1289 the x86 port to improve performance on Pentium processors.
1290 Conditional move support has been fixed and enabled for PPro
1291 processors. The x86 port also better supports 64bit
1293 + MIPS has improved multiply/multiply-add support and now
1294 includes mips16 ISA support.
1295 + M68k has many micro-optimizations and Coldfire fixes.
1296 * Core compiler is based on the GCC development tree from June 9,
1297 1998, so we have all of the [5]features found in GCC 2.8.
1299 [6]Return to the EGCS home page
1301 Last modified: September 4, 1999
1305 1. http://gcc.gnu.org/onlinedocs/g77_news.html
1306 2. http://gcc.gnu.org/egcs-1.1/c++features.html
1307 3. http://gcc.gnu.org/news/gcse.html
1308 4. http://gcc.gnu.org/news/alias.html
1309 5. http://gcc.gnu.org/egcs-1.0/features-2.8.html
1310 6. http://gcc.gnu.org/index.html
1311 ======================================================================
1312 http://gcc.gnu.org/egcs-1.1/caveats.html
1316 * EGCS has an integrated libstdc++, but does not have an integrated
1317 libg++. Furthermore old libg++ releases will not work with EGCS;
1318 HJ Lu has made a [1]libg++ snapshot available which may work with
1320 Note most C++ programs only need libstdc++.
1321 * Exception handling may not work with shared libraries,
1322 particularly on alphas, hppas, rs6000/powerpc and mips based
1323 platforms. Exception handling is known to work on x86-linux
1324 platforms with shared libraries.
1325 * Some versions of the Linux kernel have bugs which prevent them
1326 from being compiled or from running when compiled by EGCS. See
1327 [2]the FAQ for additional information.
1328 * In general, EGCS is more rigorous about rejecting invalid C++ code
1329 or deprecated C++ constructs than g++-2.7, g++-2.8 or EGCS 1.0. As
1330 a result it may be necessary to fix C++ code before it will
1332 * G++ is also converting toward the ISO C++ standard; as a result
1333 code which was previously valid (and thus accepted by other
1334 compilers and older versions of g++) may no longer be accepted.
1335 * EGCS 1.1 compiled C++ code is not binary compatible with EGCS
1336 1.0.x or GCC 2.8.x due to changes necessary to support thread safe
1339 [3]Return to the GCC home page
1341 Last modified: July 28, 1999
1345 1. ftp://ftp.yggdrasil.com/private/hjl/libg++-2.8.1.2.tar.gz
1346 2. http://gcc.gnu.org/fom_serv/cache/24.html
1347 3. http://gcc.gnu.org/index.html
1348 ======================================================================
1349 http://gcc.gnu.org/egcs-1.0/egcs-1.0.3.html
1355 We are pleased to announce the release of EGCS 1.0.3.
1357 EGCS is a collaborative effort involving several groups of hackers
1358 using an open development model to accelerate development and testing
1359 of GNU compilers and runtime libraries.
1361 EGCS 1.0.3 is a minor update to the EGCS 1.0.2 compiler to fix a few
1362 problems reported by Red Hat for builds of Red Hat 5.1.
1364 + Fix a typo in the libio library which resulted in incorrect
1365 behavior of istream::get.
1366 + Fix the Fortran negative array index problem.
1367 + Fix a major problem with the ObjC runtime thread support
1369 + Reduce memory consumption of the Haifa scheduler.
1370 * Target specific bugfixes:
1371 + Fix one x86 floating point code generation bug exposed by
1373 + Fix one x86 internal compiler error exposed by glibc2 builds.
1374 + Fix profiling bugs on the Alpha.
1375 + Fix ImageMagick & emacs 20.2 build problems on the Alpha.
1376 + Fix rs6000/ppc bug when converting values from integer types
1377 to floating point types.
1379 An important goal of EGCS is to allow wide scale testing of new
1380 features and optimizations which are still under development. However,
1381 EGCS has been carefully tested and should be comparable in quality to
1384 EGCS 1.0.3 is based on an August 2, 1997 snapshot of the GCC 2.8
1385 development sources; it contains nearly all of the new features found
1388 EGCS also contains many improvements and features not found in GCC 2.7
1390 * Integrated C++ runtime libraries, including support for most major
1392 * The integrated libstdc++ library includes a verbatim copy of
1393 [1]SGI's STL release instead of a modified copy.
1394 * Integrated GNU Fortran compiler
1395 * New instruction scheduler
1396 * New alias analysis code
1398 See the [2]new features page for a more complete list of new features
1399 found in EGCS 1.0.x releases.
1401 The EGCS 1.0.3 release includes installation instructions in both HTML
1402 and plaintext forms (see the INSTALL directory in the toplevel
1403 directory of the EGCS 1.0.3 distribution). However, we also keep the
1404 most up to date [3]installation instructions and [4]build/test status
1405 on our web page. We will update those pages as new information becomes
1408 And, we can't in good conscience fail to mention some [5]caveats to
1411 Update: Big thanks to Stanford for providing a high speed link for
1412 downloading EGCS (go.cygnus.com)!
1414 [6]Download EGCS 1.0.3 from ftp.cygnus.com (USA California)
1416 [7]Download EGCS 1.0.3 from go.cygnus.com (USA California -- High
1417 speed link provided by Stanford)
1419 The EGCS 1.0.3 release is also available on many mirror sites.
1420 [8]Goto mirror list to find a closer site
1422 We'd like to thank the numerous people that have contributed new
1423 features, test results, bugfixes, etc. Unfortunately, they're far too
1424 numerous to mention by name.
1425 _________________________________________________________________
1427 Last modified on February 22, 1999.
1431 1. http://www.sgi.com/Technology/STL
1432 2. http://gcc.gnu.org/egcs-1.0/features.html
1433 3. http://gcc.gnu.org/install/index.html
1434 4. http://gcc.gnu.org/egcs-1.0/buildstat.html
1435 5. http://gcc.gnu.org/egcs-1.0/caveats.html
1436 6. ftp://egcs.cygnus.com/pub/egcs/releases/index.html
1437 7. ftp://go.cygnus.com/pub/sourceware.cygnus.com/pub/egcs/releases/index.html
1438 8. http://gcc.gnu.org/mirrors.html
1439 ======================================================================
1440 http://gcc.gnu.org/egcs-1.0/egcs-1.0.2.html
1446 We are pleased to announce the release of EGCS 1.0.2.
1448 EGCS is a collaborative effort involving several groups of hackers
1449 using an open development model to accelerate development and testing
1450 of GNU compilers and runtime libraries.
1452 EGCS 1.0.2 is a minor update to the EGCS 1.0.1 compiler to fix several
1453 serious problems in EGCS 1.0.1.
1454 * General improvements and fixes
1455 + Memory consumption significantly reduced, especially for
1456 templates and inline functions.
1457 + Fix various problems with glibc2.1.
1458 + Fix loop optimization bug exposed by rs6000/ppc port.
1459 + Fix to avoid potential code generation problems in jump.c.
1460 + Fix some undefined symbol problems in dwarf1 debug support.
1461 * g++/libstdc++ improvements and fixes
1462 + libstdc++ in the EGCS release has been updated and should be
1463 link compatible with libstdc++-2.8.
1464 + Various fixes in libio/libstdc++ to work better on Linux
1466 + Fix problems with duplicate symbols on systems that do not
1467 support weak symbols.
1468 + Memory corruption bug and undefined symbols in bastring have
1470 + Various exception handling fixes.
1471 + Fix compiler abort for very long thunk names.
1472 * g77 improvements and fixes
1473 + Fix compiler crash for omitted bound in Fortran CASE
1475 + Add missing entries to g77 lang-options.
1476 + Fix problem with -fpedantic in the g77 compiler.
1477 + Fix "backspace" problem with g77 on alphas.
1478 + Fix x86 backend problem with Fortran literals and -fpic.
1479 + Fix some of the problems with negative subscripts for g77 on
1481 + Fixes for Fortran builds on cygwin32/mingw32.
1482 * platform specific improvements and fixes
1483 + Fix long double problems on x86 (exposed by glibc)
1484 + x86 ports define i386 again to keep imake happy.
1485 + Fix exception handling support on NetBSD ports.
1486 + Several changes to collect2 to fix many problems with AIX.
1487 + Define __ELF__ for rs6000/linux.
1488 + Fix -mcall-linux problem on rs6000/linux.
1489 + Fix stdarg/vararg problem for rs6000/linux.
1490 + Allow autoconf to select a proper install problem on AIX 3.1.
1491 + m68k port support includes -mcpu32 option as well as cpu32
1493 + Fix stdarg bug for irix6.
1494 + Allow EGCS to build on irix5 without the gnu assembler.
1495 + Fix problem with static linking on sco5.
1496 + Fix bootstrap on sco5 with native compiler.
1497 + Fix for abort building newlib on H8 target.
1498 + Fix fixincludes handling of math.h on SunOS.
1499 + Minor fix for motorola 3300 m68k systems.
1501 An important goal of EGCS is to allow wide scale testing of new
1502 features and optimizations which are still under development. However,
1503 EGCS has been carefully tested and should be comparable in quality to
1506 EGCS 1.0.2 is based on an August 2, 1997 snapshot of the GCC 2.8
1507 development sources; it contains nearly all of the new features found
1510 EGCS also contains many improvements and features not found in GCC 2.7
1512 * Integrated C++ runtime libraries, including support for most major
1514 * The integrated libstdc++ library includes a verbatim copy of
1515 [1]SGI's STL release.
1516 * Integrated GNU Fortran compiler
1517 * New instruction scheduler
1518 * New alias analysis code
1520 See the [2]new features page for a more complete list of new features
1521 found in EGCS 1.0.x releases.
1523 The EGCS 1.0.2 release includes installation instructions in both HTML
1524 and plaintext forms (see the INSTALL directory in the toplevel
1525 directory of the EGCS 1.0.2 distribution). However, we also keep the
1526 most up to date [3]installation instructions and [4]build/test status
1527 on our web page. We will update those pages as new information becomes
1530 And, we can't in good conscience fail to mention some [5]caveats to
1533 Update: Big thanks to Stanford for providing a high speed link for
1534 downloading EGCS (go.cygnus.com)!
1536 [6]Download EGCS 1.0.2 from ftp.cygnus.com (USA California)
1538 [7]Download EGCS 1.0.2 from go.cygnus.com (USA California -- High
1539 speed link provided by Stanford)
1541 The EGCS 1.0.2 release is also available on many mirror sites.
1542 [8]Goto mirror list to find a closer site
1544 We'd like to thank the numerous people that have contributed new
1545 features, test results, bugfixes, etc. Unfortunately, they're far too
1546 numerous to mention by name.
1547 _________________________________________________________________
1549 Last modified on July 28, 1999.
1553 1. http://www.sgi.com/Technology/STL/
1554 2. http://gcc.gnu.org/egcs-1.0/features.html
1555 3. http://gcc.gnu.org/install/index.html
1556 4. http://gcc.gnu.org/egcs-1.0/buildstat.html
1557 5. http://gcc.gnu.org/egcs-1.0/caveats.html
1558 6. ftp://egcs.cygnus.com/pub/egcs/releases/index.html
1559 7. ftp://go.cygnus.com/pub/sourceware.cygnus.com/pub/egcs/releases/index.html
1560 8. http://gcc.gnu.org/mirrors.html
1561 ======================================================================
1562 http://gcc.gnu.org/egcs-1.0/egcs-1.0.1.html
1568 We are pleased to announce the release of EGCS 1.0.1.
1570 EGCS is a collaborative effort involving several groups of hackers
1571 using an open development model to accelerate development and testing
1572 of GNU compilers and runtime libraries.
1574 EGCS 1.0.1 is a minor update to the EGCS 1.0 compiler to fix a few
1575 critical bugs and add support for Red Hat 5.0 Linux. Changes since the
1577 * Add support for Red Hat 5.0 Linux and better support for Linux
1578 systems using glibc2.
1579 Many programs failed to link when compiled with EGCS 1.0 on Red
1580 Hat 5.0 or on systems with newer versions of glibc2. EGCS 1.0.1
1581 should fix these problems.
1582 * Compatability with both EGCS 1.0 and GCC 2.8 libgcc exception
1583 handling interfaces.
1584 To avoid future compatibility problems, we strongly urge anyone
1585 who is planning on distributing shared libraries that contain C++
1586 code to upgrade to EGCS 1.0.1 first.
1587 Soon after EGCS 1.0 was released, the GCC developers made some
1588 incompatible changes in libgcc's exception handling interfaces.
1589 These changes were needed to solve problems on some platforms.
1590 This means that GCC 2.8.0, when released, will not be seamlessly
1591 compatible with shared libraries built by EGCS 1.0. The reason is
1592 that the libgcc.a in GCC 2.8.0 will not contain a function needed
1593 by the old interface.
1594 The result of this is that there may be compatibility problems
1595 with shared libraries built by EGCS 1.0 when used with GCC 2.8.0.
1596 With EGCS 1.0.1, generated code uses the new (GCC 2.8.0)
1597 interface, and libgcc.a has the support routines for both the old
1598 and the new interfaces (so EGCS 1.0.1 and EGCS 1.0 code can be
1599 freely mixed, and EGCS 1.0.1 and GCC 2.8.0 code can be freely
1601 The maintainers of GCC 2.x have decided against including seamless
1602 support for the old interface in 2.8.0, since it was never
1603 "official", so to avoid future compatibility problems we recommend
1604 against distributing any shared libraries built by EGCS 1.0 that
1605 contain C++ code (upgrade to 1.0.1 and use that).
1606 * Various bugfixes in the x86, hppa, mips, and rs6000/ppc backends.
1607 The x86 changes fix code generation errors exposed when building
1608 glibc2 and the Linux dynamic linker (ld.so).
1609 The hppa change fixes a compiler abort when configured for use
1611 The MIPS changes fix problems with the definition of LONG_MAX on
1612 newer systems, allow for command line selection of the target ABI,
1613 and fix one code generation problem.
1614 The rs6000/ppc change fixes some problems with passing structures
1615 to varargs/stdarg functions.
1616 * A few machine independent bugfixes, mostly to fix code generation
1617 errors when building Linux kernels or glibc.
1618 * Fix a few critical exception handling and template bugs in the C++
1620 * Fix Fortran namelist bug on alphas.
1621 * Fix build problems on x86-solaris systems.
1623 An important goal of EGCS is to allow wide scale testing of new
1624 features and optimizations which are still under development. However,
1625 EGCS has been carefully tested and should be comparable in quality to
1628 EGCS 1.0.1 is based on an August 2, 1997 snapshot of the GCC 2.8
1629 development sources; it contains nearly all of the new features found
1632 EGCS also contains many improvements and features not found in GCC 2.7
1633 and even the soon to be released GCC 2.8 compilers.
1634 * Integrated C++ runtime libraries, including support for most major
1636 * The integrated libstdc++ library includes a verbatim copy of
1637 [1]SGI's STL release.
1638 * Integrated GNU Fortran compiler
1639 * New instruction scheduler
1640 * New alias analysis code
1642 See the [2]new features page for a more complete list of new features
1643 found in EGCS 1.0.x releases.
1645 The EGCS 1.0.1 release includes installation instructions in both HTML
1646 and plaintext forms (see the INSTALL directory in the toplevel
1647 directory of the EGCS 1.0.1 distribution). However, we also keep the
1648 most up to date [3]installation instructions and [4]build/test status
1649 on our web page. We will update those pages as new information becomes
1652 And, we can't in good conscience fail to mention some [5]caveats to
1655 Update: Big thanks to Stanford for providing a high speed link for
1656 downloading EGCS (go.cygnus.com)!
1658 [6]Download EGCS 1.0.1 from ftp.cygnus.com (USA California)
1660 [7]Download EGCS 1.0.1 from go.cygnus.com (USA California -- High
1661 speed link provided by Stanford)
1663 The EGCS 1.0.1 release is also available on many mirror sites.
1664 [8]Goto mirror list to find a closer site
1666 We'd like to thank the numerous people that have contributed new
1667 features, test results, bugfixes, etc. Unfortunately, they're far too
1668 numerous to mention by name.
1669 _________________________________________________________________
1671 Last modified on July 28, 1999.
1675 1. http://www.sgi.com/Technology/STL/
1676 2. http://gcc.gnu.org/egcs-1.0/features.html
1677 3. http://gcc.gnu.org/install/index.html
1678 4. http://gcc.gnu.org/egcs-1.0/buildstat.html
1679 5. http://gcc.gnu.org/egcs-1.0/caveats.html
1680 6. ftp://egcs.cygnus.com/pub/egcs/releases/index.html
1681 7. ftp://go.cygnus.com/pub/sourceware.cygnus.com/pub/egcs/releases/index.html
1682 8. http://gcc.gnu.org/mirrors.html
1683 ======================================================================
1684 http://gcc.gnu.org/egcs-1.0/egcs-1.0.html
1690 We are pleased to announce the release of EGCS 1.0.
1692 EGCS is a collaborative effort involving several groups of hackers
1693 using an open development model to accelerate development and testing
1694 of GNU compilers and runtime libraries.
1696 An important goal of EGCS is to allow wide scale testing of
1697 experimental features and optimizations; therefore, EGCS contains some
1698 features and optimizations which are still under development. However,
1699 EGCS has been carefully tested and should be comparable in quality to
1702 EGCS 1.0 is based on an August 2, 1997 snapshot of the GCC 2.8
1703 development sources; it contains nearly all of the new features found
1706 EGCS 1.0 also contains many improvements and features not found in GCC
1707 2.7 and even the soon to be released GCC 2.8 compilers.
1708 * Integrated C++ runtime libraries, including support for most major
1710 * The integrated libstdc++ library includes a verbatim copy of
1711 [1]SGI's STL release.
1712 * Integrated GNU Fortran compiler
1713 * New instruction scheduler
1714 * New alias analysis code
1716 See the [2]new features page for a more complete list of new features.
1718 The EGCS 1.0 release includes installation instructions in both HTML
1719 and plaintext forms (see the INSTALL directory in the toplevel
1720 directory of the EGCS 1.0 distribution). However, we also keep the
1721 most up to date [3]installation instructions and [4]build/test status
1722 on our web page. We will update those pages as new information becomes
1725 And, we can't in good conscience fail to mention some [5]caveats to
1728 Update: The T1 into our main California offices has been 100%
1729 saturated since shortly after the release. We've added an EGCS 1.0
1730 mirror at our Massachusetts office to help share the load. We also
1731 encourage folks to use the many mirrors available throughout the
1734 Update: Big thanks to Stanford for providing a high speed link for
1735 downloading EGCS! (go.cygnus.com)
1737 [6]Download EGCS 1.0 from ftp.cygnus.com (USA California)
1739 [7]Download EGCS 1.0 from go.cygnus.com (USA California -- High speed
1740 link provided by Stanford)
1742 The EGCS 1.0 release should be available on most mirror sites by now.
1743 [8]Goto mirror list to find a closer site
1745 We'd like to thank the numerous people that have contributed new
1746 features, test results, bugfixes, etc. Unfortunately, they're far too
1747 numerous to mention by name.
1748 _________________________________________________________________
1750 Last modified on July 28, 1999.
1754 1. http://www.sgi.com/Technology/STL
1755 2. http://gcc.gnu.org/egcs-1.0/features.html
1756 3. http://gcc.gnu.org/install/index.html
1757 4. http://gcc.gnu.org/egcs-1.0/buildstat.html
1758 5. http://gcc.gnu.org/egcs-1.0/caveats.html
1759 6. ftp://egcs.cygnus.com/pub/egcs/releases/index.html
1760 7. ftp://go.cygnus.com/pub/sourceware.cygnus.com/pub/egcs/releases/index.html
1761 8. http://gcc.gnu.org/mirrors.html
1762 ======================================================================
1763 http://gcc.gnu.org/egcs-1.0/features.html
1767 * Core compiler is based on the gcc2 development tree from Aug 2,
1768 1997, so we have most of the [1]features found in GCC 2.8.
1769 * Integrated GNU Fortran compiler based on g77-0.5.22-19970929.
1770 * Vast improvements in the C++ compiler; so many they have [2]page
1772 * Integrated C++ runtime libraries, including support for most major
1774 * New instruction scheduler from IBM Haifa which includes support
1775 for function wide instruction scheduling as well as superscalar
1777 * Significantly improved alias analysis code.
1778 * Improved register allocation for two address machines.
1779 * Significant code generation improvements for Fortran code on
1781 * Various optimizations from the g77 project as well as improved
1783 * Dwarf2 debug format support for some targets.
1784 * egcs libstdc++ includes the SGI STL implementation without
1786 * As a result of these and other changes, egcs libstc++ is not
1787 binary compatible with previous releases of libstdc++.
1788 * Various new ports -- UltraSPARC, Irix6.2 & Irix6.3 support, The
1789 SCO Openserver 5 family (5.0.{0,2,4} and Internet FastStart 1.0
1790 and 1.1), Support for RTEMS on several embedded targets, Support
1791 for arm-linux, Mitsubishi M32R, Hitachi H8/S, Matsushita MN102 and
1792 MN103, NEC V850, Sparclet, Solaris & Linux on PowerPCs, etc.
1793 * Integrated testsuites for gcc, g++, g77, libstdc++ and libio.
1794 * RS6000/PowerPC ports generate code which can run on all
1795 RS6000/PowerPC variants by default.
1796 * -mcpu= and -march= switches for the x86 port to allow better
1797 control over how the x86 port generates code.
1798 * Includes the template repository patch (aka repo patch); note the
1799 new template code makes repo obsolete for ELF systems using gnu-ld
1801 * Plus the usual assortment of bugfixes and improvements.
1803 [3]Return to the egcs home page
1805 Last modified: July 28, 1999
1809 1. http://gcc.gnu.org/egcs-1.0/features-2.8.html
1810 2. http://gcc.gnu.org/egcs-1.0/c++features.html
1811 3. http://gcc.gnu.org/index.html
1812 ======================================================================
1813 http://gcc.gnu.org/egcs-1.0/caveats.html
1817 * EGCS has an integrated libstdc++, but does not have an integrated
1818 libg++. Furthermore old libg++ releases will not work with egc; HJ
1819 Lu has made a [1]libg++ snapshot available which may work with
1821 Note most C++ programs only need libstdc++.
1822 * Note that using -pedantic or -Wreturn-type can cause an explosion
1823 in the amount of memory needed for template-heavy C++ code, such
1824 as code that uses STL. Also note that -Wall includes
1825 -Wreturn-type, so if you use -Wall you will need to specify
1826 -Wno-return-type to turn it off.
1827 * Exception handling may not work with shared libraries,
1828 particularly on alphas, hppas, and mips based platforms. Exception
1829 handling is known to work on x86-linux platforms with shared
1831 * Some versions of the Linux kernel have bugs which prevent them
1832 from being compiled or from running when compiled by EGCS. See
1833 [2]the FAQ for additional information.
1834 * In general, EGCS is more rigorous about rejecting invalid C++ code
1835 or deprecated C++ constructs than G++ 2.7. As a result it may be
1836 necessary to fix C++ code before it will compile with EGCS.
1837 * G++ is also aggressively tracking the C++ standard; as a result
1838 code which was previously valid (and thus accepted by other
1839 compilers and older versions of G++) may no longer be accepted.
1840 * EGCS 1.0 may not work with Red Hat Linux 5.0 on all targets. EGCS
1841 1.0.x and later releases should work with Red Hat Linux 5.0.
1843 [3]Return to the GCC home page
1845 Last modified: August 27, 1998
1849 1. ftp://ftp.yggdrasil.com/private/hjl/libg++-2.8.1.2.tar.gz
1850 2. http://gcc.gnu.org/fom_serv/cache/24.html
1851 3. http://gcc.gnu.org/index.html
1852 ======================================================================