The OpenNET Project / Index page

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

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

10.11.2008 21:53

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

Наиболее интересное применение LLVM - создание JIT (Just-in-time compilation) компиляторов, транслирующих платформонезависимый псевдокод в машинные инструкции непосредственно в момент выполнения программы. Например, одновременно с LLVM 2.4 выпущен первый релиз субпроекта VMKit, представляющего собой реализацию виртуальных машин JVM и CLI VM (.NET) средствами Just-In-Time компилятора LLVM. Также присутствуют такие интересные проекты, как JIT компилятор для PHP, средство для компиляции кода на языке Си в вид пригодный для выполнения в виртуальной машине Adobe Flash.

В новой версии значительно увеличена скорость компиляции (на 30% по сравнению с прошлым релизом), улучшена генерация кода в различных ситуациях, добавлена поддержка микропроцессоров PIC16. В LLVM IR (IR - промежуточное представление инструкций) добавлена поддержка возврата множественных значений, что позволяет использовать в функциях структуры и массивы.

  1. Главная ссылка к новости (http://lists.cs.uiuc.edu/piper...)
  2. OpenNews: Возможность разрабатывать скрипты для web-браузера на языках Си и Python
  3. OpenNews: Сравнительный обзор открытых компиляторов: GCC, PCC и LLVM
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/18835-llvm
Ключевые слова: llvm, gcc, compile, jit
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (9) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 22:22, 10/11/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    а еще хотят это применять вместо GCC на MacOs X.
    а еще у них есть статический анализатор кода LLVM/Clang (тоже опер сорс).
    а еще наверное можно этот компилятор настроить чтобы он комилировал код для видеокарты например? (кодирование видео на видео карте, перебор паролей)
     
  • 1.3, Аноним (3), 00:22, 11/11/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    а еще для llvm разрабатывается фронт-енд для D. На этот компилятор большие надежды.
     
     
  • 2.4, vitek (??), 00:25, 11/11/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >а еще для llvm разрабатывается фронт-енд для D. На этот компилятор большие надежды.

    должен много бабок принести?

     
     
  • 3.5, Аноним (5), 00:57, 11/11/2008 [^] [^^] [^^^] [ответить]  
  • +/
    Для Apple - конечно. Чем лучше инструменты, тем больше разработчиков.
     
     
  • 4.9, User294 (ok), 20:46, 11/11/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Для Apple - конечно. Чем лучше инструменты, тем больше разработчиков.

    Скорее, им оно интересно тем что так можно делать кроссплатформенные закрытые блобы.Типа как с явой и дотнетом.А нафиг еще нужны эти промежуточные виртуальные инструкции, кроме как не для возможности раздать на нем закрытый блоб?

     
     
  • 5.10, Noor (ok), 22:33, 11/11/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >>Для Apple - конечно. Чем лучше инструменты, тем больше разработчиков.
    >
    >Скорее, им оно интересно тем что так можно делать кроссплатформенные закрытые блобы.Типа
    >как с явой и дотнетом.

    Ну предположим скомпиленный Java-код так же легко и не принужденно превращается обратно в код. Поэтому я всегда очень удивляюсь, когда в такие проги защиту вставляют, на честность надеются?

     
     
  • 6.11, User294 (ok), 22:46, 11/11/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >Ну предположим скомпиленный Java-код так же легко и не принужденно превращается обратно
    >в код.

    Ну, особо сволочные проходятся по нему обфускатором для приличия.Что впрочем лишь несколько поднимает планку но ничего принципиально не меняет (в конце концов некоторые чисто для прикола пишут на сях обфускированый вручную код или програмят на брэйнфаке...).

    >Поэтому я всегда очень удивляюсь, когда в такие проги
    >защиту вставляют, на честность надеются?

    Сами понимаете кто чаще всего пишет на яве и т.п. дотнетах.Они соответственно воспринимают мир в соответствии со своим уровнем развития - дескать если я не могу то и остальные обломаются.

     

  • 1.8, Аноним (3), 14:23, 11/11/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Как будто gcc не использует промежуточное представление, а напрямую в нужную архитектуру генерит... а ещё есть parrot и вообще  десяток всякого хлама
     
  • 1.12, Аноним (-), 12:54, 23/04/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    LLVM это отстой. Они сначала обещают, а только потом делают, когда набегут заинтересованные люди, которые обещанные фичи и сделают. LibJIT намного честнее. Он и намного проще и быстрее LLVM.
     

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



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

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