The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Новая версия инновационного набора компиляторов LLVM Compiler 2.1

30.09.2007 21:07

Вышла новая версия LLVM (Low Level Virtual Machine), - GCC совместимого инструментария (компиляторы, оптимизаторы и генераторы кода), компилирующего Си/С++ программы в промежуточный байткод RISC подобных виртуальных инструкций (низкоуровневая виртуальная машина с многоуровневой системой оптимизации).

Наиболее интересное применение - создание JIT (Just-in-time compilation) компиляторов, транслирующих платформонезависимый псевдокод в машинные инструкции непосредственно в момент выполнения программы.

В релизе LLVM 2.1 представлено два новых фронтэнда:

  • llvm-gcc-42 - совместимый с GCC 4.2;
  • clang - C/C++/ObjC фронтэнд с возможностью "source-to-source" (с одного языка на другой) трансляции.


  1. Главная ссылка к новости (http://llvm.org/releases/2.1/d...)
  2. OpenNews: В состав NetBSD и OpenBSD включен Си компилятор PCC с лицензией BSD
  3. C/C++/ObjC front-end for LLVM
  4. LLVM: Frequently Asked Questions
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/12256-gcc
Ключевые слова: gcc, llvm, virtual, jit, compile
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (18) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Denis (??), 08:43, 01/10/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Чето как то это на Java смахивает. Или я ошибаюсь ? Там тоже есть перевод в промежуточный код, который потом и выполняется где угодно. Только вот здесь все на RISC транслируется. штука конечно интересная, но не в ту сторону звгнутая. Я бы сделал все по другому. Более перпендикулярно.
     
     
  • 2.2, Аноним (-), 09:27, 01/10/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Ну так сделай, умник.
     
     
  • 3.7, Denis (??), 13:06, 01/10/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Ну естественно. Как сказал Башлачев - "... нету мотива без коллектива, а какой коллектив, такой выходит и мотив ...". А на счет умника - дипломчик у меня красненький.
     
     
  • 4.12, GR (??), 18:12, 01/10/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Под цвет глаз, кто бы сомневался :)
    Если не понимаешь о чем люди говорят (даже если увидел пару знакомых слов!) - ну молчи же, оспыдя, хоть ржать над тобой не будут.
     
  • 2.3, ДяДя (?), 10:12, 01/10/2007 [^] [^^] [^^^] [ответить]  
  • +/
    IT индустрия существует достаточно давно. За это время придумали очень многое.
    Ява имеет в основе идею P-кода, которую выдвинул Н. Вирт в 1975 году. P-кодом даже в Microsoft одно время пользовались и имели реальную переносимость.  

    Ява - это виртуальная машина со сборщиком мусора и т.д. Она обладает средствами JIT, но всё-равно необходима для запуска приложений. Здесь же просто происходит перетрансляция из одного кода в другой.

    P.S.
    Помнится просили ссылку про учеников Вирта.
    одна из них: http://www.oberon2005.ru/paper/obe_fate.html

     
     
  • 3.15, oops (?), 07:25, 02/10/2007 [^] [^^] [^^^] [ответить]  
  • +/
    >[оверквотинг удален]
    >году. P-кодом даже в Microsoft одно время пользовались и имели реальную
    >переносимость.
    >
    >Ява - это виртуальная машина со сборщиком мусора и т.д. Она обладает
    >средствами JIT, но всё-равно необходима для запуска приложений. Здесь же просто
    >происходит перетрансляция из одного кода в другой.
    >
    >P.S.
    >Помнится просили ссылку про учеников Вирта.
    >одна из них: http://www.oberon2005.ru/paper/obe_fate.html

    Насколько я понимаю, позднее наработки оберона и модулы-3 нашли применение в limba(inferno/plan9)
    http://itc.ua/article.phtml?ID=9367

     
  • 3.17, Crazy Alex (?), 14:15, 13/08/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Мда, не убили его вовремя - во младенчестве...
     
  • 2.4, www.andr.ru (?), 10:31, 01/10/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Поклонникам Джабы стоит рассмотреть и другие технологии, расширять кругозор. В мире существует не только Джаба и перл. Успех Джаба - это талант маркетологов Sun, а вовсе не безупречная технология. Доходят до того, что Страунструпу на презентации задают вопрос: "А не надо ли перевести C++ в байткод, наша любимая Джаба - вона как весь мир захватила?!" Да переводите хоть в команды рабам на галерах, чудаки, C++ то от этого не изменится!

    Да и вообще виртуальная стэковая машина - плохая идея. Она была выбрана из-за простоты реализации компилятора для неё, а вовсе не из-за того, что генерирует оптимальный код. Виртуальная машина с регистрами, как на железном процессоре - это очевидная глупость. Есть ЛУЧШИЙ вриант, разработаный создателями UNIX (в их авторитете не станете сомневаться?), подробнее можно прочитать вот здесь

    http://www.vitanuova.com/inferno/papers/hotchips.html
    http://www.vitanuova.com/inferno/papers/dis.html

    Машина работает в IE, попробуй - очень советую.

    http://www.vitanuova.com/inferno/plugin/index.html

     
  • 2.6, Serge (??), 11:47, 01/10/2007 [^] [^^] [^^^] [ответить]  
  • +/
    > Или я ошибаюсь ?

    Ошибаетесь. Это набор библиотек и инструментов для написания оптимизирующих компиляторов (в том числе JIT-компиляторов). Смысл такой: программа "компилируется" в высокоуровневый "RISC-ассемблер" (с сохранением типов данных и другой высокоуровневой информации), после чего над результатом проводится рад оптимизирующих трансформаций (вроде constant propagation и т.д.). Затем из оптимизированного результата делается машинный код для целевой архитектуры.
    Вкусность в том, что вообще-то нетривиальные трансформации не нужно переписывать заново для компилятора нового языка.

     
     
  • 3.10, Лимуриец (?), 15:32, 01/10/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Может, имеет смысл, когда этот "высокоуровневый "RISC-ассемблер" устаканится, делать и железный процессор с этим набором инструкций?
     
  • 3.18, Crazy Alex (?), 14:16, 13/08/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Мне мерещится, или GCC со своими фронтэндами/бакэндами нечто подобное же делает?
     

  • 1.5, Аноним (5), 11:21, 01/10/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    /* Доходят до того, что Страунструпу */

    Ну конечно, Стауструп - гуру. Куда до него всяким
    там Пайкам да Керниганам

     
  • 1.9, runnig (?), 14:58, 01/10/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Кто-нить пробовал subj?
     
  • 1.11, yantux (ok), 17:37, 01/10/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Сходил по ссылке. Ни чего не написано, зачем нужен этот инструментарий. Ради чего он создан. Как правило все производители софтверного продукста объясняют зачем ипочему они это сделали. Тут по хоже на just for fan.
     
     
  • 2.13, UNKNOWN (?), 18:50, 01/10/2007 [^] [^^] [^^^] [ответить]  
  • +/
    V Opennet to i slushu otritcatcelnii otzivii o Java, interesno vixodit injeneri SUN, IBM, BEA, Oracle and etc na stolko glupi chto vkldivayu v etu texnologiyu stolko usilii i deneg??? Ili pochemu Redhat kupila JBoss, chisto Java solution za 300 mln$ ili oni toje glupi?? Konechno Java ne panatcea, i dlya opredelennix reshenii ne podoidet nu govoritc tolko otritcatcelnoe i ne priznavatc faktov eto ehse glupee.
     
     
  • 3.14, yantux (??), 19:15, 01/10/2007 [^] [^^] [^^^] [ответить]  
  • +/
    >V Opennet to i slushu otritcatcelnii otzivii o Java, interesno vixodit injeneri
    >SUN, IBM, BEA, Oracle and etc na stolko glupi chto vkldivayu
    >v etu texnologiyu stolko usilii i deneg??? Ili pochemu Redhat kupila
    >JBoss, chisto Java solution za 300 mln$ ili oni toje glupi??
    >Konechno Java ne panatcea, i dlya opredelennix reshenii ne podoidet nu
    >govoritc tolko otritcatcelnoe i ne priznavatc faktov eto ehse glupee.

    Более того. Взять пример промышленную автоматику. Во всех контроллерах крутиться виртуальная машина. На хосте разрабатывается алгоритм, который компилируется в аппаратно не зависимы код. Если у в промышленной автоматике такое проходит, то на десктопе аналогичные решения просто обязаны работать.

    Ругать технологию дело вкуса -кроме неё есть реальная жизнь.

     
  • 3.16, belkin (?), 10:46, 02/10/2007 [^] [^^] [^^^] [ответить]  
  • +/
    >V Opennet to i slushu otritcatcelnii otzivii o Java, interesno vixodit injeneri
    >SUN, IBM, BEA, Oracle and etc na stolko glupi chto vkldivayu
    >v etu texnologiyu stolko usilii i deneg??? Ili pochemu Redhat kupila
    >JBoss, chisto Java solution za 300 mln$ ili oni toje glupi??
    >Konechno Java ne panatcea, i dlya opredelennix reshenii ne podoidet nu
    >govoritc tolko otritcatcelnoe i ne priznavatc faktov eto ehse glupee.

    Деньгами ворочают не инженеры. Если бы их слушали, тогда у нас не PC на столах стояли а графические терминалы всё равно с чем внутри и в корпорациях всю КИС крутили на одной машине размером с тумбочку для стола а не на зоопарке из калькуляторов и почта работала на X.400 и спама бы не было и т.д. .

     
     
  • 4.19, Crazy Alex (?), 14:24, 13/08/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Именно. Но, понимаешь, рынок требует изобретения велосипедов... А для большого количества велосипедов хороших программистов не хватает. А на Java легче написать, чтоб но хоть как-то ползало, не падая. Embedded  - хороший пример, кстати. Часто там подход "упало - автоматом перезапустили - ползет дальше". Если внятного реалтайма нет - сходит. Тенденция идиотская, конечно - чисто экстенсивный путь. Вместо обучения специалистов и написания небольшого количества высококачественного универсального софта расходуются ресурсы на поддержание большого количества обезьянок, поддерживающих кучу разных велосипедов, а чтоб эти велосипеды хоть как-то ездили - тратятся ресурсы систем на защиту не от дурака даже, а от полного дебилизма разработчиков... Потом валятся ресурсы на маркетинг, чтобы объяснить, что так и должно быть... Вон, вспомнить сказки Microsoft о TCO виндовых "решений".

    Рыночная экономика, пережившая свое время и непонятно как корчащаяся, во всей красе. Есть, кстати, некий шанс,что Open Source эту ерунду подрежет на сколько-то. Все-таки интеграция усилий...

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру