GCC 8.1 Released
Are you tired of your existing compilers? Want fresh new language features and better optimizations? Make your day with the new GCC 8.1!" See this page for a complete list of changes in this release.
| From: | Jakub Jelinek <jakub-AT-redhat.com> | |
| To: | info-gnu-AT-gnu.org | |
| Subject: | GCC 8.1 Released | |
| Date: | Wed, 2 May 2018 14:16:05 +0200 | |
| Message-ID: | <20180502121605.GV8577@tucnak> |
We are proud to announce the next, major release of the GNU Compiler Collection. Are you tired of your existing compilers? Want fresh new language features and better optimizations? Make your day with the new GCC 8.1! GCC 8.1 is a major release containing substantial new functionality not available in GCC 7.x or previous GCC releases. The C++ front-end now has experimental support for some parts of the upcoming C++2a draft, with the -std=c++2a and -std=gnu++2a options, and the libstdc++ library has some further C++17 and C++2a draft library features implemented too. This releases features significant improvements in the emitted diagnostics, including improved locations, location ranges and fix-it hints (especially in the C++ front-end), and various new warnings have been added. Profile driven optimizations have been significantly improved, on x86 functions are now split into hot and cold regions by default. The link time optimizations now have a new way of emitting the DWARF debug information, which makes LTO optimized code more debuggable. New loop optimizers have added and existing improved and some, like -ftree-loop-distribution, -floop-unroll-and-jam and -floop-interchange have been enabled by default at -O3. The AArch64 target now supports the Scalable Vector Extension, which features vectors with runtime determined number of elements. Some code that compiled successfully with older GCC versions might require source changes, see http://gcc.gnu.org/gcc-8/porting_to.html for details. See https://gcc.gnu.org/gcc-8/changes.html for more information about changes in GCC 8.1. This release is available from the FTP servers listed here: http://www.gnu.org/order/ftp.html The release is in gcc/gcc-8.1.0/ subdirectory. If you encounter difficulties using GCC 8.1, please do not contact me directly. Instead, please visit http://gcc.gnu.org for information about getting help. Driving a leading free software project such as GNU Compiler Collection would not be possible without support from its many contributors. Not to only mention its developers but especially its regular testers and users which contribute to its high quality. The list of individuals is too large to thank individually! Please consider a donation to the GNU Toolchain Fund to support the continued development of GCC! -- If you have a working or partly working program that you'd like to offer to the GNU project as a GNU package, see https://www.gnu.org/help/evaluation.html.
Posted May 2, 2018 14:56 UTC (Wed)
by epa (subscriber, #39769)
[Link] (2 responses)
I believe that -O3 turns on optimizations that can increase code size, and I can see that this could mean things no longer fit in cache and become slower. Yet the increase in size from -floop-interchange seems like it should be very modest compared to aggressively inlining things.
Posted May 5, 2018 1:05 UTC (Sat)
by nairn62 (subscriber, #123752)
[Link] (1 responses)
Posted May 5, 2018 21:30 UTC (Sat)
by nix (subscriber, #2304)
[Link]
Posted May 2, 2018 16:33 UTC (Wed)
by proski (subscriber, #104)
[Link]
Posted May 2, 2018 23:35 UTC (Wed)
by roc (subscriber, #30627)
[Link] (8 responses)
Posted May 3, 2018 15:07 UTC (Thu)
by jthill (subscriber, #56558)
[Link] (6 responses)
Posted May 3, 2018 17:55 UTC (Thu)
by nybble41 (subscriber, #55106)
[Link] (4 responses)
Also, if you're following the link in a web browser and not e.g. wget, a plain HTTP link gives an attacker the opportunity to inject malware or other undesirable content into the response instead of, or alongside, the intended download.
Posted May 3, 2018 20:45 UTC (Thu)
by flussence (guest, #85566)
[Link] (3 responses)
We have that herd immunity - it's called distros. Besides protecting us from those braindead CA bundle policies that hand a backdoor to nation states on a silver platter, they also manage to do it without ruining caching for everybody.
Posted May 4, 2018 11:57 UTC (Fri)
by foom (subscriber, #14868)
[Link] (2 responses)
Yes, certainly.
The large group of trusted CAs is far from perfectly trustworthy, but it does eliminate *some* risk. E.g. a random person at the coffee shop will not have the ability to spoof certificates, but could easily be mitm'ing unencrypted connections.
Posted May 4, 2018 13:41 UTC (Fri)
by bandrami (guest, #94229)
[Link]
The problem has never been the tech, but the agents.
Posted May 5, 2018 15:23 UTC (Sat)
by flussence (guest, #85566)
[Link]
Posted May 8, 2018 0:18 UTC (Tue)
by plugwash (subscriber, #29694)
[Link]
The CA cartel is far from perfect but nevertheless it is still a massive improvement on no verification at all.
Posted May 3, 2018 18:58 UTC (Thu)
by ErikF (subscriber, #118131)
[Link]
New optimizations and -O3
New optimizations and -O3
New optimizations and -O3
gcc 8 obsoletes std::uncaught_exception() in C++17 as required by the standard. Those who throw exceptions in destructors should rethink what they are doing or resort to using std::uncaught_exceptions(), which requires more code and more care, but checks what std::uncaught_exception() was meant to check.
Throwing exceptions in destructors has just become a bit harder
GCC 8.1 Released
Secured connections only do what checking signatures does, and they're worse at it if you care about specific content. Then you need to check the signature on that. There's no privacy or authentication value to SSLing publicly-available-downloads-of-signed-content traffic at all -- anyone who cares can tell exactly what you fetch by just looking at how much and comparing sizes; the only thing SSL will get you in this scenario is quicker detection of vandalism. Not a big enough issue to get worked up about, I don't think, the choice is a judgement call down in bikeshedding territory.
GCC 8.1 Released
GCC 8.1 Released
GCC 8.1 Released
GCC 8.1 Released
GCC 8.1 Released
GCC 8.1 Released
GCC 8.1 Released
GCC 8.1 Released
