LINUX.ORG.RU

Выпуск LLVM 16

 , ,


0

3

Вышла новая версия LLVM. Проект LLVM включает в себя оптимизатор и кодогенератор с LLVM IR во многие процессорные архитектуры, который используется многими проектами для реализации своих языков программирования, а также:

  • компилятор C/C++/Objective-C (Clang);
  • компилятор Fortran (Flang);
  • cтандартную библиотеку для С++ (libc++);
  • отладчик LLDB;
  • линкер LLD;
  • среду исполнения (runtime) для OpenMP;
  • некоторые другие компоненты.

Код LLVM распространяется по лицензии Apache 2.0 License with LLVM exceptions.

Ниже перечислены новые возможности стандарта С++, реализованные в этой версии LLVM для Clang/libc++.

libc++:

Clang:

>>> Подробности

★★★★★

Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 4)

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

Как шланг появился, так gcc начал вменяемые сообщения об ошибках выдавать, так что есть польза от шланга.

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

А я долго не знал как этот многострочный флуд отключить, наоборот. Хорошо на лоре кто-то подсказал. Когда на одну проблему одна строка по-моему намного удобнее наоборот, номер строки указан и текстовое описание, а там уж разобраться не сложно.

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

Как шланг появился, так gcc начал вменяемые сообщения об ошибках выдавать, так что есть польза от шланга.

Кстати, задолго до появления шланга диагностики такого вида были у интела, но разрабам gcc было плевать на такие мелочи, как удобство пользователя.

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

Чего только ни сделают лишь бы gcc не пользоваться.

Ryzen 3900X сборка GCC 12.2 занимает 59 минут, сборка LLVM 16 занимает 15 минут.

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

Чего только ни сделают лишь бы autotools не пользоваться.

Починил. А GCC – уже следствие, потому что использует убогие autotools.

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

Но он был бесплатным для персонального использования, и многие им пользовались. На ЛОРе даже была мода фапать на его диагностики.

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

У Интела был бэкэнд к EDG-фронтенду (можно опознать по наличию макроса __EDG__, в __EDG_VERSION__ версия). Сокращённо ICC, пару лет назад перешли на Clang и называется теперь ICX.

jpegqs
()
Последнее исправление: jpegqs (всего исправлений: 2)
Ответ на: комментарий от annulen

Когда это он «был» бесплатным? Бесплатным он стал начиная с OneApi. До этого можно было получить бесплатно, сославшись на поддержку или разработку открытого проекта. Может я что пропустил?

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

Сборка фронтэндов завязанных на llvm то ещё удовольствие.

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

LLVM 15 у меня собирает ПО из портов FreeBSD. Исключение - Firefox и Thunderbird собираются с помощью LLVM 13.

GCC нужен для сборки OpenJDK 11.

iZEN ★★★★★
()
Последнее исправление: iZEN (всего исправлений: 1)
Ответ на: комментарий от firkax

Попробуйте собрать сам GCC и узнаете.

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

sys-devel/llvm-15.0.7

merge time: 1 hour, 27 minutes and 35 seconds.

sys-devel/clang-15.0.7-r1

merge time: 1 hour, 3 minutes and 4 seconds.

sys-devel/gcc-12.2.1_p20230121-r1

merge time: 38 minutes and 23 seconds.
$ uname -p
AMD Ryzen 5 3600 6-Core Processor

что-то как-то очень все по-разному )

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

Может с помощью clang? Или он отдельно на собирается?

Что gcc в состав включает по умолчанию? Там же несколько фронтэндов.

Я какой-то пытался собрать clang самим clang, получилось больше чем с помощью gcc.

grem ★★★★★
()
Последнее исправление: grem (всего исправлений: 1)
Ответ на: комментарий от grem

Когда это он «был» бесплатным? Бесплатным он стал начиная с OneApi. До этого можно было получить бесплатно, сославшись на поддержку или разработку открытого проекта. Может я что пропустил?

Как минимум в 2000-х версия для Linux была бесплатной, достаточно было зарегистрироваться и скачать с сайта. Я пользовался, когда в универе учился.

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

Fortran, пора бы питон добавить, для прогрессивного мира)

Что-то не рвутся прогрессивные программисты переписывать код всяких решателей дифуров, написанный суровым дедом-академиком 40 лет назад, и всё этого время успешно просчитывающий сопромат несущих конструкций их коворкинга.

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

Сложно сказать. Но его по сути используют в AOCC, NVIDIA HPC SDK и новом компиляторе Intel OneApi

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

Почему? Если он до сих пор не убил гцц, значит особых преимуществ у него нет и нужен он только копирастам, которых корёжит от жупеля.

vbr ★★★
()

Собирал недавно ядро с патчем. clang-16 компилирует быстрее gcc-12 минут на 15-20, но ядро наглухо виснет. С gcc всё ok.

dataman ★★★★
()

Там BOLT под винду не пофиксили ещё? В 15 оно не собиралось прд винду даже если таргетом был линупс…

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

Clang, как и линкер LLD, входит в состав LLVM.

LLVM собираю без документации, без Extras, без LLDB (отладчика), для нативной поддержки платформы - можно глянуть опции сборки пакета FreeBSD, чтобы уяснить детали.

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

Gcc никак не запрещает компилировать проприетарный код. Он им нужен, чтобы не открывать патчи своих продуктов на основе llvm.

grem ★★★★★
()

Очередной пост, в котором гнутых корёжит от лицензии BSD. Красота!

@firkax ты ещё к этому сообщению фейспалм поставь, а то у тебя совсем не полыхает)

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

Что-то не верится, что крупная программа на Фортране 66/77, будет адекватно работать и в 2023 году, на модерн флангах

One ★★★★★
()
Последнее исправление: One (всего исправлений: 1)
Ответ на: комментарий от firkax

А ты попробуй chromium с помощью gcc собрать. Или Либру. Или еще что большое.

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

Таки будет, не сомневайтесь. Режим совместимости с F4/F77 никто не отменял.

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

LAPACK was originally written in FORTRAN 77, but moved to Fortran 90 in version 3.2 (2008)

BLAS судя по описанию оригинальный никто не использует, всё с оптимизацией, иногда и закрытой под разный SIMD и Ко

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

Оригинальный BLAS нужен как референс.

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