comparison NEWS @ 19:58ad6c70ea60

update gcc from 4.4.0 to 4.4.1.
author kent@firefly.cr.ie.u-ryukyu.ac.jp
date Thu, 24 Sep 2009 13:21:57 +0900
parents a06113de4d67
children 3bfb6c00c1e0
comparison
equal deleted inserted replaced
18:33936f7f2835 19:58ad6c70ea60
6 6
7 ====================================================================== 7 ======================================================================
8 http://gcc.gnu.org/gcc-4.4/index.html 8 http://gcc.gnu.org/gcc-4.4/index.html
9 GCC 4.4 Release Series 9 GCC 4.4 Release Series
10 10
11 April 21, 2008 11 July 22, 2009
12 12
13 The [1]GNU project and the GCC developers are pleased to announce the 13 The [1]GNU project and the GCC developers are pleased to announce the
14 release of GCC 4.4.0. 14 release of GCC 4.4.1.
15 15
16 This release is a major release, containing new features (as well as 16 This release is a bug-fix release, containing fixes for regressions in
17 many other improvements) relative to GCC 4.3.x. 17 GCC 4.4.0 relative to previous releases of GCC.
18 18
19 Release History 19 Release History
20 20
21 GCC 4.4.1
22 July 22, 2009 ([2]changes)
23
21 GCC 4.4.0 24 GCC 4.4.0
22 April 21, 2008 ([2]changes) 25 April 21, 2009 ([3]changes)
23 26
24 References and Acknowledgements 27 References and Acknowledgements
25 28
26 GCC used to stand for the GNU C Compiler, but since the compiler 29 GCC used to stand for the GNU C Compiler, but since the compiler
27 supports several other languages aside from C, it now stands for the 30 supports several other languages aside from C, it now stands for the
28 GNU Compiler Collection. 31 GNU Compiler Collection.
29 32
30 A list of [3]successful builds is updated as new information becomes 33 A list of [4]successful builds is updated as new information becomes
31 available. 34 available.
32 35
33 The GCC developers would like to thank the numerous people that have 36 The GCC developers would like to thank the numerous people that have
34 contributed new features, improvements, bug fixes, and other changes as 37 contributed new features, improvements, bug fixes, and other changes as
35 well as test results to GCC. This [4]amazing group of volunteers is 38 well as test results to GCC. This [5]amazing group of volunteers is
36 what makes GCC successful. 39 what makes GCC successful.
37 40
38 For additional information about GCC please refer to the [5]GCC project 41 For additional information about GCC please refer to the [6]GCC project
39 web site or contact the [6]GCC development mailing list. 42 web site or contact the [7]GCC development mailing list.
40 43
41 To obtain GCC please use [7]our mirror sites or [8]our SVN server. 44 To obtain GCC please use [8]our mirror sites or [9]our SVN server.
42 45
43 Please send FSF & GNU inquiries & questions to [9]gnu@gnu.org. There 46 Please send FSF & GNU inquiries & questions to [10]gnu@gnu.org. There
44 are also [10]other ways to contact the FSF. 47 are also [11]other ways to contact the FSF.
45 48
46 These pages are maintained by [11]the GCC team. 49 These pages are maintained by [12]the GCC team.
47 50
48 51
49 For questions related to the use of GCC, please consult these web 52 For questions related to the use of GCC, please consult these web
50 pages and the [12]GCC manuals. If that fails, the 53 pages and the [13]GCC manuals. If that fails, the
51 [13]gcc-help@gcc.gnu.org mailing list might help. 54 [14]gcc-help@gcc.gnu.org mailing list might help.
52 Please send comments on these web pages and the development of GCC to 55 Please send comments on these web pages and the development of GCC to
53 our developer mailing list at [14]gcc@gnu.org or [15]gcc@gcc.gnu.org. 56 our developer mailing list at [15]gcc@gnu.org or [16]gcc@gcc.gnu.org.
54 All of our lists have [16]public archives. 57 All of our lists have [17]public archives.
55 58
56 Copyright (C) Free Software Foundation, Inc., 51 Franklin St, Fifth 59 Copyright (C) Free Software Foundation, Inc., 51 Franklin St, Fifth
57 Floor, Boston, MA 02110, USA. 60 Floor, Boston, MA 02110, USA.
58 61
59 Verbatim copying and distribution of this entire article is permitted 62 Verbatim copying and distribution of this entire article is permitted
60 in any medium, provided this notice is preserved. 63 in any medium, provided this notice is preserved.
61 Last modified 2009-04-21 [17]Valid XHTML 1.0 64 Last modified 2009-07-22 [18]Valid XHTML 1.0
62 65
63 References 66 References
64 67
65 1. http://www.gnu.org/ 68 1. http://www.gnu.org/
66 2. http://gcc.gnu.org/gcc-4.4/changes.html 69 2. http://gcc.gnu.org/gcc-4.4/changes.html
67 3. http://gcc.gnu.org/gcc-4.4/buildstat.html 70 3. http://gcc.gnu.org/gcc-4.4/changes.html
68 4. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html 71 4. http://gcc.gnu.org/gcc-4.4/buildstat.html
69 5. http://gcc.gnu.org/index.html 72 5. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
70 6. mailto:gcc@gcc.gnu.org 73 6. http://gcc.gnu.org/index.html
71 7. http://gcc.gnu.org/mirrors.html 74 7. mailto:gcc@gcc.gnu.org
72 8. http://gcc.gnu.org/svn.html 75 8. http://gcc.gnu.org/mirrors.html
73 9. mailto:gnu@gnu.org 76 9. http://gcc.gnu.org/svn.html
74 10. http://www.gnu.org/home.html#ContactInfo 77 10. mailto:gnu@gnu.org
75 11. http://gcc.gnu.org/about.html 78 11. http://www.gnu.org/home.html#ContactInfo
76 12. http://gcc.gnu.org/onlinedocs/ 79 12. http://gcc.gnu.org/about.html
77 13. mailto:gcc-help@gcc.gnu.org 80 13. http://gcc.gnu.org/onlinedocs/
78 14. mailto:gcc@gnu.org 81 14. mailto:gcc-help@gcc.gnu.org
79 15. mailto:gcc@gcc.gnu.org 82 15. mailto:gcc@gnu.org
80 16. http://gcc.gnu.org/lists.html 83 16. mailto:gcc@gcc.gnu.org
81 17. http://validator.w3.org/check/referer 84 17. http://gcc.gnu.org/lists.html
85 18. http://validator.w3.org/check/referer
82 ====================================================================== 86 ======================================================================
83 http://gcc.gnu.org/gcc-4.4/changes.html 87 http://gcc.gnu.org/gcc-4.4/changes.html
84 GCC 4.4 Release Series 88 GCC 4.4 Release Series
85 Changes, New Features, and Fixes 89 Changes, New Features, and Fixes
90
91 The latest release in the 4.4 release series is [1]GCC 4.4.1.
86 92
87 Caveats 93 Caveats
88 94
89 * __builtin_stdarg_start has been completely removed from GCC. 95 * __builtin_stdarg_start has been completely removed from GCC.
90 Support for <varargs.h> had been deprecated since GCC 4.0. Use 96 Support for <varargs.h> had been deprecated since GCC 4.0. Use
149 + Tuning support for Itanium1 (Merced) variants. Note that code 155 + Tuning support for Itanium1 (Merced) variants. Note that code
150 tuned for Itanium2 should also run correctly on Itanium1. 156 tuned for Itanium2 should also run correctly on Itanium1.
151 * The protoize and unprotoize utilities have been obsoleted and will 157 * The protoize and unprotoize utilities have been obsoleted and will
152 be removed in GCC 4.5. These utilities have not been installed by 158 be removed in GCC 4.5. These utilities have not been installed by
153 default since GCC 3.0. 159 default since GCC 3.0.
154 * Support has been removed for all the [1]configurations obsoleted in 160 * Support has been removed for all the [2]configurations obsoleted in
155 GCC 4.3. 161 GCC 4.3.
156 * Unknown -Wno-* options are now silently ignored by GCC if no other 162 * Unknown -Wno-* options are now silently ignored by GCC if no other
157 diagnostics are issued. If other diagnostics are issued, then GCC 163 diagnostics are issued. If other diagnostics are issued, then GCC
158 warns about the unknown options. 164 warns about the unknown options.
159 * More information on porting to GCC 4.4 from previous versions of 165 * More information on porting to GCC 4.4 from previous versions of
160 GCC can be found in the [2]porting guide for this release. 166 GCC can be found in the [3]porting guide for this release.
161 167
162 General Optimizer Improvements 168 General Optimizer Improvements
163 169
164 * A new command-line switch -findirect-inlining has been added. When 170 * A new command-line switch -findirect-inlining has been added. When
165 turned on it allows the inliner to also inline indirect calls that 171 turned on it allows the inliner to also inline indirect calls that
183 * When the assembler supports it, the compiler will now emit unwind 189 * When the assembler supports it, the compiler will now emit unwind
184 information using assembler .cfi directives. This makes it possible 190 information using assembler .cfi directives. This makes it possible
185 to use such directives in inline assembler code. The new option 191 to use such directives in inline assembler code. The new option
186 -fno-dwarf2-cfi-asm directs the compiler to not use .cfi 192 -fno-dwarf2-cfi-asm directs the compiler to not use .cfi
187 directives. 193 directives.
188 * The [3]Graphite branch has been merged. This merge has brought in a 194 * The [4]Graphite branch has been merged. This merge has brought in a
189 new framework for loop optimizations based on a polyhedral 195 new framework for loop optimizations based on a polyhedral
190 intermediate representation. These optimizations apply to all the 196 intermediate representation. These optimizations apply to all the
191 languages supported by GCC. The following new code transformations 197 languages supported by GCC. The following new code transformations
192 are available in GCC 4.4: 198 are available in GCC 4.4:
193 + -floop-interchange performs loop interchange transformations 199 + -floop-interchange performs loop interchange transformations
290 * The new -Wno-mudflap option disables warnings about constructs 296 * The new -Wno-mudflap option disables warnings about constructs
291 which can not be instrumented when using -fmudflap. 297 which can not be instrumented when using -fmudflap.
292 298
293 New Languages and Language specific improvements 299 New Languages and Language specific improvements
294 300
295 * Version 3.0 of the [4]OpenMP specification is now supported for the 301 * Version 3.0 of the [5]OpenMP specification is now supported for the
296 C, C++, and Fortran compilers. 302 C, C++, and Fortran compilers.
303 * New character data types, per [6]TR 19769: New character types in
304 C, are now supported for the C compiler in -std=gnu99 mode, as
305 __CHAR16_TYPE__ and __CHAR32_TYPE__, and for the C++ compiler in
306 -std=c++0x and -std=gnu++0x modes, as char16_t and char32_t too.
297 307
298 C family 308 C family
299 309
300 * A new optimize attribute was added to allow programmers to change 310 * A new optimize attribute was added to allow programmers to change
301 the optimization level and particular optimization options for an 311 the optimization level and particular optimization options for an
310 Nonetheless, the warnings given by -Wuninitialized will probably be 320 Nonetheless, the warnings given by -Wuninitialized will probably be
311 more accurate if optimization is enabled. 321 more accurate if optimization is enabled.
312 * -Wparentheses now warns about expressions such as (!x | y) and (!x 322 * -Wparentheses now warns about expressions such as (!x | y) and (!x
313 & y). Using explicit parentheses, such as in ((!x) | y), silences 323 & y). Using explicit parentheses, such as in ((!x) | y), silences
314 this warning. 324 this warning.
315 * -Wsequence-points now warns within if, while,do while and for 325 * -Wsequence-point now warns within if, while,do while and for
316 conditions, and within for begin/end expressions. 326 conditions, and within for begin/end expressions.
317 * A new option -dU is available to dump definitions of preprocessor 327 * A new option -dU is available to dump definitions of preprocessor
318 macros that are tested or expanded. 328 macros that are tested or expanded.
319 329
320 C++ 330 C++
321 331
322 * [5]Improved experimental support for the upcoming ISO C++ standard, 332 * [7]Improved experimental support for the upcoming ISO C++ standard,
323 C++0x. Including support for auto, inline namespaces, generalized 333 C++0x. Including support for auto, inline namespaces, generalized
324 initializer lists, defaulted and deleted functions, new character 334 initializer lists, defaulted and deleted functions, new character
325 types, and scoped enums. 335 types, and scoped enums.
326 * Those errors that may be downgraded to warnings to build legacy 336 * Those errors that may be downgraded to warnings to build legacy
327 code now mention -fpermissive when -fdiagnostics-show-option is 337 code now mention -fpermissive when -fdiagnostics-show-option is
335 an initializer of () and an implicitly defined default constructor 345 an initializer of () and an implicitly defined default constructor
336 will be zero-initialized before the default constructor is called. 346 will be zero-initialized before the default constructor is called.
337 347
338 Runtime Library (libstdc++) 348 Runtime Library (libstdc++)
339 349
340 * Added experimental support for the upcoming ISO C++ standard, 350 * [8]Improved experimental support for the upcoming ISO C++ standard,
341 C++0x. Including support for <chrono>, <condition_variable>, 351 C++0x, including:
342 <cstdatomic>, <forward_list>, <initializer_list>, <mutex>, <ratio>, 352 + Support for <chrono>, <condition_variable>, <cstdatomic>,
343 <system_error>, and <thread>. Plus unique_ptr, <algorithm> 353 <forward_list>, <initializer_list>, <mutex>, <ratio>,
344 additions, exception propagation, and some support for the new 354 <system_error>, and <thread>.
345 character types. ([6]Implementation status of C++0x library) 355 + unique_ptr, <algorithm> additions, exception propagation, and
356 support for the new character types in <string> and <limits>.
357 + Existing facilities now exploit initializer lists, defaulted
358 and deleted functions, and the newly implemented core C++0x
359 features.
360 + Some standard containers are more efficient together with
361 stateful allocators, i.e., no allocator is constructed on the
362 fly at element construction time.
346 * Experimental support for non-standard pointer types in containers. 363 * Experimental support for non-standard pointer types in containers.
364 * The long standing libstdc++/30928 has been fixed for targets
365 running glibc 2.10 or later.
366 * As usual, many small and larger bug fixes, in particular quite a
367 few corner cases in <locale>.
347 368
348 Fortran 369 Fortran
349 370
350 * GNU Fortran now employs libcpp directly instead of using cc1 as an 371 * GNU Fortran now employs libcpp directly instead of using cc1 as an
351 external preprocessor. The [7]-cpp option was added to allow manual 372 external preprocessor. The [9]-cpp option was added to allow manual
352 invocation of the preprocessor without relying on filename 373 invocation of the preprocessor without relying on filename
353 extensions. 374 extensions.
354 * The [8]-Warray-temporaries option warns about array temporaries 375 * The [10]-Warray-temporaries option warns about array temporaries
355 generated by the compiler, as an aid to optimization. 376 generated by the compiler, as an aid to optimization.
356 * The [9]-fcheck-array-temporaries option has been added, printing a 377 * The [11]-fcheck-array-temporaries option has been added, printing a
357 notification at run time, when an array temporary had to be created 378 notification at run time, when an array temporary had to be created
358 for an function argument. Contrary to -Warray-temporaries the 379 for an function argument. Contrary to -Warray-temporaries the
359 warning is only printed if the array is noncontiguous. 380 warning is only printed if the array is noncontiguous.
360 * Improved generation of DWARF debugging symbols 381 * Improved generation of DWARF debugging symbols
361 * If using an intrinsic not part of the selected standard (via -std= 382 * If using an intrinsic not part of the selected standard (via -std=
373 common objects by decreasing storage size, which avoids the 394 common objects by decreasing storage size, which avoids the
374 alignment problems. 395 alignment problems.
375 * Fortran 2003 support has been extended: 396 * Fortran 2003 support has been extended:
376 + Wide characters (ISO 10646, UCS-4, kind=4) and UTF-8 I/O is 397 + Wide characters (ISO 10646, UCS-4, kind=4) and UTF-8 I/O is
377 now supported (except internal reads from/writes to wide 398 now supported (except internal reads from/writes to wide
378 strings). [10]-fbackslash now supports also \unnnn and 399 strings). [12]-fbackslash now supports also \unnnn and
379 \Unnnnnnnn to enter Unicode characters. 400 \Unnnnnnnn to enter Unicode characters.
380 + Asynchronous I/O (implemented as synchronous I/O) and the 401 + Asynchronous I/O (implemented as synchronous I/O) and the
381 decimal=, size=, sign=, pad=, blank=, and delim= specifiers 402 decimal=, size=, sign=, pad=, blank=, and delim= specifiers
382 are now supported in I/O statements. 403 are now supported in I/O statements.
383 + Support for Fortran 2003 structure constructors and for array 404 + Support for Fortran 2003 structure constructors and for array
470 * Automatically align the stack for local variables with alignment 491 * Automatically align the stack for local variables with alignment
471 requirement. 492 requirement.
472 * GCC can now utilize the SVML library for vectorizing calls to a set 493 * GCC can now utilize the SVML library for vectorizing calls to a set
473 of C99 functions if -mveclibabi=svml is specified and you link to 494 of C99 functions if -mveclibabi=svml is specified and you link to
474 an SVML ABI compatible library. 495 an SVML ABI compatible library.
496 * On x86-64, the ABI has been changed in the following cases to
497 conform to the x86-64 ABI:
498 + Passing/returning structures with flexible array member:
499 struct foo
500 {
501 int i;
502 int flex[];
503 };
504 + Passing/returning structures with complex float member:
505 struct foo
506 {
507 int i;
508 __complex__ float f;
509 };
510 + Passing/returning unions with long double member:
511 union foo
512 {
513 int x;
514 long double ld;
515 };
516 Code built with previous versions of GCC that uses any of these is
517 not compatible with code built with GCC 4.4.0 or later.
475 * A new target attribute was added to allow programmers to change the 518 * A new target attribute was added to allow programmers to change the
476 target options like -msse2 or -march=k8 for an individual function. 519 target options like -msse2 or -march=k8 for an individual function.
477 You can also change the target options via the GCC target pragma 520 You can also change the target options via the GCC target pragma
478 for functions defined after the pragma. 521 for functions defined after the pragma.
479 * GCC can now be configured with options --with-arch-32, 522 * GCC can now be configured with options --with-arch-32,
578 621
579 Documentation improvements 622 Documentation improvements
580 623
581 Other significant improvements 624 Other significant improvements
582 625
583 Please send FSF & GNU inquiries & questions to [11]gnu@gnu.org. There 626 GCC 4.4.1
584 are also [12]other ways to contact the FSF. 627
585 628 This is the [13]list of problem reports (PRs) from GCC's bug tracking
586 These pages are maintained by [13]the GCC team. 629 system that are known to be fixed in the 4.4.1 release. This list might
630 not be complete (that is, it is possible that some PRs that have been
631 fixed are not listed here).
632
633 Please send FSF & GNU inquiries & questions to [14]gnu@gnu.org. There
634 are also [15]other ways to contact the FSF.
635
636 These pages are maintained by [16]the GCC team.
587 637
588 638
589 For questions related to the use of GCC, please consult these web 639 For questions related to the use of GCC, please consult these web
590 pages and the [14]GCC manuals. If that fails, the 640 pages and the [17]GCC manuals. If that fails, the
591 [15]gcc-help@gcc.gnu.org mailing list might help. 641 [18]gcc-help@gcc.gnu.org mailing list might help.
592 Please send comments on these web pages and the development of GCC to 642 Please send comments on these web pages and the development of GCC to
593 our developer mailing list at [16]gcc@gnu.org or [17]gcc@gcc.gnu.org. 643 our developer mailing list at [19]gcc@gnu.org or [20]gcc@gcc.gnu.org.
594 All of our lists have [18]public archives. 644 All of our lists have [21]public archives.
595 645
596 Copyright (C) Free Software Foundation, Inc., 51 Franklin St, Fifth 646 Copyright (C) Free Software Foundation, Inc., 51 Franklin St, Fifth
597 Floor, Boston, MA 02110, USA. 647 Floor, Boston, MA 02110, USA.
598 648
599 Verbatim copying and distribution of this entire article is permitted 649 Verbatim copying and distribution of this entire article is permitted
600 in any medium, provided this notice is preserved. 650 in any medium, provided this notice is preserved.
601 Last modified 2009-04-19 [19]Valid XHTML 1.0 651 Last modified 2009-07-22 [22]Valid XHTML 1.0
602 652
603 References 653 References
604 654
605 1. http://gcc.gnu.org/gcc-4.3/changes.html#obsoleted 655 1. http://gcc.gnu.org/gcc-4.4/changes.html#4.4.1
606 2. http://gcc.gnu.org/gcc-4.4/porting_to.html 656 2. http://gcc.gnu.org/gcc-4.3/changes.html#obsoleted
607 3. http://gcc.gnu.org/wiki/Graphite 657 3. http://gcc.gnu.org/gcc-4.4/porting_to.html
608 4. http://openmp.org/wp/openmp-specifications/ 658 4. http://gcc.gnu.org/wiki/Graphite
609 5. http://gcc.gnu.org/gcc-4.4/cxx0x_status.html 659 5. http://openmp.org/wp/openmp-specifications/
610 6. http://gcc.gnu.org/onlinedocs/libstdc++/manual/status.html#id476343 660 6. http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1040.pdf
611 7. http://gcc.gnu.org/onlinedocs/gfortran/Preprocessing-Options.html 661 7. http://gcc.gnu.org/gcc-4.4/cxx0x_status.html
612 8. http://gcc.gnu.org/onlinedocs/gfortran/Error-and-Warning-Options.html#index-g_t_0040code_007bWarray-temporaries_007d-125 662 8. http://gcc.gnu.org/onlinedocs/libstdc++/manual/status.html#id476343
613 9. http://gcc.gnu.org/onlinedocs/gfortran/Code-Gen-Options.html#index-g_t_0040code_007bfcheck-array-temporaries_007d-221 663 9. http://gcc.gnu.org/onlinedocs/gfortran/Preprocessing-Options.html
614 10. http://gcc.gnu.org/onlinedocs/gfortran/Fortran-Dialect-Options.html#index-g_t_0040code_007bbackslash_007d-34 664 10. http://gcc.gnu.org/onlinedocs/gfortran/Error-and-Warning-Options.html#index-g_t_0040code_007bWarray-temporaries_007d-125
615 11. mailto:gnu@gnu.org 665 11. http://gcc.gnu.org/onlinedocs/gfortran/Code-Gen-Options.html#index-g_t_0040code_007bfcheck-array-temporaries_007d-221
616 12. http://www.gnu.org/home.html#ContactInfo 666 12. http://gcc.gnu.org/onlinedocs/gfortran/Fortran-Dialect-Options.html#index-g_t_0040code_007bbackslash_007d-34
617 13. http://gcc.gnu.org/about.html 667 13. http://gcc.gnu.org/bugzilla/buglist.cgi?bug_status=RESOLVED&resolution=FIXED&target_milestone=4.4.1
618 14. http://gcc.gnu.org/onlinedocs/ 668 14. mailto:gnu@gnu.org
619 15. mailto:gcc-help@gcc.gnu.org 669 15. http://www.gnu.org/home.html#ContactInfo
620 16. mailto:gcc@gnu.org 670 16. http://gcc.gnu.org/about.html
621 17. mailto:gcc@gcc.gnu.org 671 17. http://gcc.gnu.org/onlinedocs/
622 18. http://gcc.gnu.org/lists.html 672 18. mailto:gcc-help@gcc.gnu.org
623 19. http://validator.w3.org/check/referer 673 19. mailto:gcc@gnu.org
674 20. mailto:gcc@gcc.gnu.org
675 21. http://gcc.gnu.org/lists.html
676 22. http://validator.w3.org/check/referer
624 ====================================================================== 677 ======================================================================
625 http://gcc.gnu.org/gcc-4.3/index.html 678 http://gcc.gnu.org/gcc-4.3/index.html
626 GCC 4.3 Release Series 679 GCC 4.3 Release Series
627 680
628 January 24, 2009 681 January 24, 2009