LINUX.ORG.RU

GCC-плагин DragonEgg прошёл тест на самосборку

 , , ,


0

0

Разработчики проекта LLVM сообщили о новом достижении - GCC-плагин DragonEgg достиг состояния, позволяющего пересобрать самого себя. В начале с использованием DragonEgg были пересобраны исходные тексты GCC-4.5, LLVM и dragonegg, а затем эксперимент был повторен с задействованием для пересборки свежескомпилированного бинарного файла.

DragonEgg представляет собой подключаемый к набору компиляторов GCC плагин, позволяющий в максимально прозрачном режиме использовать в стандартном GCC оптимизаторы и генераторы кода, разработанные в рамках LLVM.

В настоящий момент до достаточно высокого уровня доведена работоспособность DragonEgg для языков Си и Си++, частично реализована поддержка Fortran и Ada, хуже обстоят дела с поддержкой Obj-C и Obj-C++, много работы предстоит проделать для поддержки Java. На текущей стадии развития DragonEgg поддерживает архитектуры x86-32 и x86-64, может работать в Linux и Darwin.

Запись в блоге LLVM

>>> Взято с Opennet.ru

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

если уж на то пошло, оптимизатор g++ это cc1plus, а gcc - cc1

вопрос был, конечно, про отличия в оптимизации GCC без плагина и с ним - есть ли прирост производительности, или пока это просто концепт

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

Ничего об этом не знаю, да и не очень интересно, хотя может на днях попробую

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

Аа лаадн. Пошлите тогда патчем Коннору на мыло. Он встретит&пропатчит.

darkshvein ☆☆ ()

Ну и? Тесты уже какие-нибудь есть? Насколько оно быстрее gcc: в размерах, математике, циклах, другом? Почему не пишут ничего?

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

> Если результат компиляции будет работать быстрее или занимать меньший объём это имеет смысл для конечного разработчика?

Дык в новости про это ничего не написано. Есть ли толк в этих llvm-оптимизаторах для gcc, у которого и свои есть? Или это так, чисто теоретический интерес представляет?

ikm ★★ ()

тестов нет - болтать вроде не очем

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

>А смысл во всем этом какой? Для конечного разработчика?

присоединяюсь к вопросу. имеет ли смысл использовать это дополнения для компиляции, к примеру, вычислительных задач?

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

> Или это так, чисто теоретический интерес представляет?

Во всяком случае, пусть будет, может, что и выйдет что-то хорошее.

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

> Дык в новости про это ничего не написано. Есть ли толк в этих llvm-оптимизаторах для gcc, у которого и свои есть? Или это так, чисто теоретический интерес представляет?

Для GCC - нет, у него свой оптимизатор есть. Это они LLVM так тестируют. Главная фича LLVM - это JIT и генерация на лету. А в GCC 4.5 зато будет киллер-фича - глобальная оптимизация программ.

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

Насчёт киллер-фичи вы серьёзно? А то я сам толком не врубился - оно будет только код генерировать или ещё и JIT добавит?

По-моему просто ещё один(ну или несколько) способов оптимизации программ.

jeuta ★★★★ ()

оно нужно чтобы байт-код ручками оптимизировать или я чего не понял?

RedPossum ★★★★★ ()

Гентушнеки должно быть с нетерпением потирают руки.

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

> когда я последний раз смотрел gcc-llvm, то он безбожно сливал обычному gcc по оптимизации

Когда это было и почему это должно быть интересно сейчас?

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

Это было в марте прошлого года. Я не вижу причин почему сейчас gcc-llvm должен быть быстрее, сомневаюсь, что за год можно было что-то сделать.

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

>Если результат компиляции будет работать быстрее или занимать меньший объём это имеет смысл для конечного разработчика?

<Murphy's law>Определённо да: зная это он будет писать плохой код</Murphy's law>

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

>> Это что помесь C++ и Obj-C?

Да. Язык с двумя плохо смешиваемыми объектными системами.

вообще-то это сложно языком назвать, скорее средство интеграции частей программы, написанных на Obj-C, и частей, написанных на C++

anonymous ()

> Why? Because we love to build!

Гентушники детектед

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

> Выходит что таки LLVM попродвинутее GCC в плане оптимизации?

Потенциально - да, намного. И очень быстро развивается.

Иначе зачем?

Например затем, чтобы генерить LLVM IR из GCC, и потом линковать с IR, полученным из других компиляторов, работающих с LLVM.

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

>>>Я не вижу причин почему сейчас gcc-llvm должен быть быстрее

Есть вообще сомнения, что из этого выйдет что-либо путное...

Ну да пусть пилят, глядишь чего и выйдет 8)

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