LINUX.ORG.RU

GCC 4.9.0 вышел!

 ,


0

4

Спустя один год и один месяц с предыдущего значительного релиза объявлен выпуск новой версии набора компиляторов GNU Compiler Collection 4.9.0.

Список новшеств:

  • Local Register Allocator, представленный в версии 4.8.0 для архитектур ia32 и x86-64, теперь используется также для Aarch64, ARM, S/390 и ARC по умолчанию, а для PowerPC и RX опционально.
  • Существенные улучшения девиртуализации C++, исправлены различные ограничения масштабируемости межпроцедурных оптимизаций и LTO.
  • Во фронтенд C++ была добавлена поддержка различных возможностей будущего стандарта C++14. Наиболее значительное изменение в стандартной библиотеке C++ — поддержка регулярных выражений C++11.
  • GCC 4.9.0 поддерживает стандарт OpenMP 4.0 для C и C++, а также частично реализовано расширение Cilk Plus для параллелизма данных и задач.
  • Различные виды неопределенного поведения (undefined behavior) теперь могут быть диагностированы во время выполнения с помощью Undefined Behavior Sanitizer.
  • Добавлена поддержка новой аппаратной платформы little-endian powerpc64le-linux, по умолчанию для нее используется новый ABI PowerPC ELFV2.
  • Добавлена поддержка набора инструкций AVX-512 на x86-64 и ia32.

>>> Changelog

★★★★★

Проверено: fallout4all ()
Последнее исправление: eternal_sorrow (всего исправлений: 6)

Ответ на: комментарий от Reset

Извини, а можешь уточнить что плохого в такой конструкции? Я так понимаю подобным образом приводить к структурам тоже плохо?

Jetty ★★★★★
()
Ответ на: комментарий от Jetty

Извини, а можешь уточнить что плохого в такой конструкции?

UB. Невыровненный доступ не обязан работать.

Я так понимаю подобным образом приводить к структурам тоже плохо?

За такое вообще надо убивать без наркоза.

Собирай и разбирай по байтам.

anonymous
()
[jonnie@hercules ~]$ gcc --version
gcc (GCC) 4.9.0
Copyright (C) 2014 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

[jonnie@hercules ~]$ uname -mrs
Darwin 13.1.0 x86_64
[jonnie@hercules ~]$ 

Ура, товарищи!

slyjoeh ★★★
()
Ответ на: комментарий от O02eg

стабилизации ебилдов

Проще в хомяке собрать.

anonymous
()
Ответ на: комментарий от leg0las

Только закончил 4.7 собирать мир...

luke ★★★★★
()
Ответ на: комментарий от sT331h0rs3

Само по себе — не нужно, как и amd vs intel. Но в целом нужно.

anonymous
()
Ответ на: комментарий от punya

Гентокомпиляторы теряются даже на фоне потребления заряжающимися дилдо принадлежащих конкретно блондинкам в определённой части света.

anonymous
()
Ответ на: комментарий от anonymous

Сомневаюсь, что *((float*)buf) должно падать, если адрес buf не выровнян по 4-м байтам. Также сомневаюсь, что проблема в железе.

Зря сомневаешься. Может. Ни кто не гарантирует, что работать будет

namezys ★★★★
()
Ответ на: комментарий от anonymous

P.S. Если это UB, то можно и нужно ткнуть меня носом в стандарт, но что-то я такие грабли в сишечке не припомню.

Если buf был выделен не как float, то как ты его разыменовываешь, как float?

namezys ★★★★
()
Ответ на: комментарий от DarkAmateur

Поддержка языка Go 1.2.1 реализована.

А что сломали? А то у Иана Ланса Тейлора привычка даже в минорных релизах что-нибудь ломать, а потом объяснять, что так и надо.

proud_anon ★★★★★
()
Ответ на: комментарий от anonymous

P.S. Если это UB, то можно и нужно ткнуть меня носом в стандарт, но что-то я такие грабли в сишечке не припомню.

6.3.2.3, п.7.

Sorcerer ★★★★★
()

Нужно разработчикам Эльбруса сообщить - пусть начинают разрабатывать расширение для GCC под свой процессор.

ZUKMAN
()

Что ж топикстартер не упомянул появление искоробочной раскрашивалки выхлопа компилятора, весьма удобной при сборке вне IDE? colorgcc больше не нужен. :)

anonymous
()

Самый C/C++ный выпуск из всех последних. Может быть, из всей 4 ветки. На поддержку и допиливание остальных языков откровенно забили, пытаясь, видимо, бороться со шлангом. Но это всё равно не поможет, потому что шланг ставят исключительно из лицензионных и идеологических соображений. И качество кода здесь ни при чём, как и удобство программирования.

Vudod ★★★★★
()
Ответ на: комментарий от Vudod

Но это всё равно не поможет, потому что шланг ставят исключительно из лицензионных и идеологических соображений. И качество кода здесь ни при чём, как и удобство программировани

clang банально быстрее при сборке без оптимизации, выдает больше полезных предупрежедений, лучше умеет новые стандарты С++, имеет полезные тулзы и инструменты и т.д., и да - релизные билды я делаю gcc, т.к. он на данный момент лучше умеет в оптимизацию, и никакой религии тут нет

wota ★★
()
Ответ на: комментарий от anonymous

разименование float* по невыровненному адресу на gcc-4.7 на armv7. Приложение получает SIGBUS (ошибка шины), пофиксили?

Эм, а это точно проблема компилятора? aligning error это обычно проблема незнания архитектуры или отсутствия автовыравнивания в коде ядра(которое все равно чрезвычайно медленное).

Pinkbyte ★★★★★
()
Ответ на: комментарий от anonymous

Сомневаюсь, что *((float*)buf) должно падать, если адрес buf не выровнян по 4-м байтам. Также сомневаюсь, что проблема в железе.

На некоторых MIPS-ах, где нет автовыравнивания в ядре это - обычная практика.

Чтоб не быть голословным - https://bugs.gentoo.org/show_bug.cgi?id=371525

Pinkbyte ★★★★★
()
Ответ на: комментарий от Jetty

Тем, что это не работает. Правильно использовать memcpy.

Reset ★★★★★
()
Ответ на: комментарий от Sorcerer

6.3.2.3, п.7.

Спасибо. Действительно UB, претензии сняты.

anonymous
()

Собрал сабж для mingw. Попробовал собрать qt-4.8.5. Линкер засегфолтился.

Вывод: не сабж готов!

AF ★★★
()
Ответ на: комментарий от Deleted

Напишу этот комментарий, чтобы ты подумал, что кому-то не всё равно.

Вот это великодушие!

slyjoeh ★★★
()
Ответ на: комментарий от anonymous

Это ты так мощно про ДС-1 задвинул?

anonymous
()
Ответ на: комментарий от anonymous

Если не сабж, то кто?

кто-кто - gcc-4.8.2 !

AF ★★★
()

Замечательная новость!

Dron ★★★★★
()
Ответ на: комментарий от anonymous

Недавно вляпался в разименование float* по невыровненному адресу на gcc-4.7 на armv7. Приложение получает SIGBUS (ошибка шины), пофиксили?

Это - претензии к процессору, а не к компилятору. Скажи спасибо, что он ещё исключение генерит - на armv4 молчком кидает кривые данные.

anonymous
()
Ответ на: комментарий от AF

Какое отношение компоновщик имеет к компилятору, клоун?

anonymous
()

У меня почему-то при сборке в 4.9
lighttpd на Ивике с

-march=core-avx-i
валится с ошибками ассемблера, проходит нормально компиляция только с
-march=corei7 -mtune=core-avx-i

menangen ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.