{"id":69470,"date":"2019-05-04T10:38:41","date_gmt":"2019-05-04T01:38:41","guid":{"rendered":"https:\/\/www.softantenna.com\/wp\/?p=69470"},"modified":"2019-05-04T10:38:41","modified_gmt":"2019-05-04T01:38:41","slug":"gcc-9-1-released","status":"publish","type":"post","link":"https:\/\/softantenna.com\/blog\/gcc-9-1-released\/","title":{"rendered":"GCC 9.1\u304c\u30ea\u30ea\u30fc\u30b9 - D\u8a00\u8a9e\u306e\u30b5\u30dd\u30fc\u30c8\u306a\u3069\u591a\u6570\u306e\u65b0\u6a5f\u80fd\u304c\u8ffd\u52a0"},"content":{"rendered":"<p><img decoding=\"async\" style=\"display:block; margin-left:auto; margin-right:auto;\" src=\"https:\/\/softantenna.com\/blog\/wp-content\/uploads\/2019\/05\/s_20190504_95802.jpg\" alt=\"S 20190504 95802\" title=\"s_20190504_95802.jpg\" border=\"0\" width=\"1058\" height=\"644\" \/><\/p>\n<p>GNU GCC\u958b\u767a\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306f4\u670825\u65e5(\u73fe\u5730\u6642\u9593)\u3001GCC 9\u30b7\u30ea\u30fc\u30ba\u306e\u6700\u521d\u306e\u5b89\u5b9a\u7248\u3068\u306a\u308b\u300cGCC 9.1\u300d\u3092\u30ea\u30ea\u30fc\u30b9\u3057\u307e\u3057\u305f(<a href=\"https:\/\/lwn.net\/Articles\/787385\/\">\u30a2\u30ca\u30a6\u30f3\u30b9<\/a>\u3001<a href=\"https:\/\/www.phoronix.com\/scan.php?page=news_item&px=GCC-9.1-Compiler-Released\">Phoronix<\/a>)\u3002<\/p>\n<p>GCC 9.1\u3067\u306fD\u8a00\u8a9e\u306e\u30d5\u30ed\u30f3\u30c8\u30a8\u30f3\u30c9\u304c\u30d5\u30a1\u30df\u30ea\u306b\u8ffd\u52a0\u3055\u308c\u305f\u307b\u304b\u3001\u30d0\u30c3\u30af\u30a8\u30f3\u30c9\u3067\u306f\u5f85\u671b\u306eRadeon GCN GPU\u30bf\u30fc\u30b2\u30c3\u30c8\u304c\u8ffd\u52a0\u3055\u308c\u3066\u3044\u307e\u3059\u3002\u307e\u305fIntel Cascadelake\u3084\u3001AMD Zen 2\u3001C-SKY CPU\u3001OpenRISC CPU\u306a\u3069\u3001\u6700\u65b0\u306eCPU\u306e\u30b5\u30dd\u30fc\u30c8\u3082\u9032\u3081\u3089\u308c\u3066\u3044\u307e\u3059\u3002<\/p>\n<p>\u4e3b\u306a\u65b0\u6a5f\u80fd\u306f\u4ee5\u4e0b\u306e\u901a\u308a\u3067\u3059\u3002<\/p>\n<blockquote><p>- The D programming language front-end has finally been mainlined in GCC! There is now D support beginning with GCC 9. <\/p>\n<p>- Initial AMD GCN back-end has been merged for targeting Radeon Fiji\/Vega GPUs although the actual OpenMP\/OpenACC offloading and other functionality isn't yet in place. For GCC 9, the AMD GCN target can only handle single-threaded, standalone programs which obviously isn't of much use for GPUs. <\/p>\n<p>- Initial AMD Zen 2 processor support (-march=znver2) although the Znver2 code isn't yet fully tuned for these next-generation AMD Ryzen and EPYC processors debuting in a few months. <\/p>\n<p>- Initial support for the Arm Neoverse N1 processors along with other existing AArch64 Cortex processors. <\/p>\n<p>- Initial support for Intel Cascadelake server processors with AVX-512 VNNI (DL BOOST) via the -march=cascadelake flag. <\/p>\n<p>- The C-SKY processor support was introduced for these Chinese 32-bit processors. Over the past year C-SKY support has landed in the Linux kernel and other areas as well. <\/p>\n<p>- The OpenRISC processor support also was merged after being rewritten in order to satisfy the FSF copyright assignment requirements for code contributions had left the Berkeley lawyers initially unhappy with the original OpenRISC port. <\/p>\n<p>- Initial support for OpenMP 5.0. <\/p>\n<p>- Nearly complete support for the OpenACC 2.5 specification. <\/p>\n<p>- A new option for live-patching to help ensure the generated code will work well into the semantics of live Linux kernel patching. <\/p>\n<p>- Better Bash auto-completion support. <\/p>\n<p>- Various diagnostic improvements and the option of dumping diagnostics\/errors into JSON format. <\/p>\n<p>- Experimental support for C++2A is exposed via the \"-std=c++2a\" switch for this next revision of C++ likely to be called C++20. There is also work done on the C++ standard library side (libstdc++) and other bits while for C++17 is the initial parallel algorithms implementation. <\/p>\n<p>- Along similar lines, there is also experimental support for C2X as the next C language revision and that is exposed via the -std=c2x switch. <\/p>\n<p>- Fortran support in GCC has also been improved with now handling asynchronous I\/O and other features. <\/p>\n<p>- Inter-procedural optimizations (IPO), profile-driven optimizations, link-time optimizations (LTO), and a variety of other optimizations in trying to ensure better generated code. <\/p>\n<\/blockquote>\n<p>\u65b0\u6a5f\u80fd\u306e\u8a73\u7d30\u306f<a href=\"https:\/\/gcc.gnu.org\/gcc-9\/changes.html\">\u516c\u5f0f\u30da\u30fc\u30b8<\/a>\u3067\u78ba\u8a8d\u53ef\u80fd\u3067\u3059\u3002<\/p>\n<p>GCC 9\u30b7\u30ea\u30fc\u30ba(GCC 9.0.1)\u306f\u3059\u3067\u306b\u5148\u65e5\u516c\u958b\u3055\u308c\u305fFedora 30\u306a\u3069\u3067\u3059\u3067\u306b\u63a1\u7528\u3055\u308c\u3066\u3044\u307e\u3059\u304c\u3001GCC 9.1\u304c\u516c\u958b\u3055\u308c\u305f\u3053\u3068\u3067\u4eca\u5f8c\u591a\u304f\u306eLinux\u30c7\u30a3\u30b9\u30c8\u30ea\u30d3\u30e5\u30fc\u30b7\u30e7\u30f3\u3067\u3055\u3089\u306bGCC 9\u306e\u63a1\u7528\u304c\u9032\u3081\u3089\u308c\u3066\u3044\u304f\u3053\u3068\u304c\u671f\u5f85\u3055\u308c\u307e\u3059\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>GNU GCC\u958b\u767a\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306f4\u670825\u65e5(\u73fe\u5730\u6642\u9593)\u3001GCC 9\u30b7\u30ea\u30fc\u30ba\u306e\u6700\u521d\u306e\u5b89\u5b9a\u7248\u3068\u306a\u308b\u300cGCC 9.1\u300d\u3092\u30ea\u30ea\u30fc\u30b9\u3057\u307e\u3057\u305f(\u30a2\u30ca\u30a6\u30f3\u30b9\u3001Phoronix)\u3002 GCC 9.1\u3067\u306fD\u8a00\u8a9e\u306e\u30d5\u30ed\u30f3\u30c8\u30a8\u30f3\u30c9\u304c\u30d5\u30a1\u30df\u30ea\u306b\u8ffd [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":69471,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"swell_btn_cv_data":"","footnotes":""},"categories":[75],"tags":[190],"class_list":["post-69470","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-software","tag-gcc"],"_links":{"self":[{"href":"https:\/\/softantenna.com\/blog\/wp-json\/wp\/v2\/posts\/69470","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/softantenna.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/softantenna.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/softantenna.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/softantenna.com\/blog\/wp-json\/wp\/v2\/comments?post=69470"}],"version-history":[{"count":0,"href":"https:\/\/softantenna.com\/blog\/wp-json\/wp\/v2\/posts\/69470\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/softantenna.com\/blog\/wp-json\/wp\/v2\/media\/69471"}],"wp:attachment":[{"href":"https:\/\/softantenna.com\/blog\/wp-json\/wp\/v2\/media?parent=69470"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/softantenna.com\/blog\/wp-json\/wp\/v2\/categories?post=69470"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/softantenna.com\/blog\/wp-json\/wp\/v2\/tags?post=69470"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}