The OpenNET Project / Index page

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

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"На базе Sparse создан LLVM-бэкенд, нацеленный на пересборку ..."
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"На базе Sparse создан LLVM-бэкенд, нацеленный на пересборку ..."  +/
Сообщение от opennews on 31-Авг-11, 02:12 
Разработчики Sparse (https://sparse.wiki.kernel.org/), семантического парсера для языка Си, объявили (http://permalink.gmane.org/gmane.comp.parsers.sparse/2600) о создании LLVM-бэкенда sparse-llvm (https://github.com/penberg/sparse-llvm). Конечной целью проекта является создание рабочего компилятора Си, способного собрать ядро Linux. Код проекта распространяется под лицензией MIT.


LLVM-бэкенд уже способен генерировать код для простых примеров на языке Си для различных платформ, но проект ещё находится на ранней стадии развития и не способен осуществить сборку реальных проектов. Созданный на базе Sparse LLVM-бэкенд, пока ограничен поддержкой таких возможностей языка Си, как вызов функций, разбор выражений Switch и if-else, выполнение арифметических, бинарных и операций с плавающей запятой. Тем не менее автор проекта считает (http://lwn.net/Articles/456761/), что  sparse-llvm сможет достигнуть стадии пересборки ядра Linux раньше, чем Clang, так как Sparse, на базе которого развиваетс...

URL: http://lwn.net/Articles/456709/rss
Новость: https://www.opennet.ru/opennews/art.shtml?num=31636

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по ответам | RSS]

1. "На базе Sparse создан LLVM-бэкенд, нацеленный на пересборку ..."  +1 +/
Сообщение от фтанг on 31-Авг-11, 02:12 
>LLVM-бэкенда позволит обеспечить генерацию универсального платформонезависимого псевдокода

llvm генерит bitcode и он платформенно зависим.
http://llvm.org/docs/FAQ.html#platformindependent

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

5. "На базе Sparse создан LLVM-бэкенд, нацеленный на пересборку ..."  –1 +/
Сообщение от arcade (ok) on 31-Авг-11, 10:36 
Сам читал перед тем как ссылку ставить?

LLVM изначально генерит платформонезависимый биткод. Сами языки C и C++ не рассчитаны на компиляцию в платформонезависимый код из-за выбора архитектуры выполнения на уровне препроцессинга исходника. Но сие не значит что путём определённых манипуляций с кодом мы не можем выкинуть или заменить платформозависимые части.

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

7. "На базе Sparse создан LLVM-бэкенд, нацеленный на пересборку ..."  +1 +/
Сообщение от Аноним (??) on 31-Авг-11, 10:50 
> Разработчики Sparse (https://sparse.wiki.kernel.org/), семантического парсера для
> языка Си, объявили (http://permalink.gmane.org/gmane.comp.parsers.sparse/2600) о
> создании LLVM-бэкенда sparse-llvm (https://github.com/penberg/sparse-llvm). Конечной
> целью проекта является создание рабочего компилятора Си, способного собрать ядро Linux.
> Код проекта распространяется под лицензией MIT.

на базе GCC значит такое не возможно.. интересный факт - запишем в книжечкую

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

9. "На базе Sparse создан LLVM-бэкенд, нацеленный на пересборку ..."  +/
Сообщение от Аноним (??) on 31-Авг-11, 12:34 
> llvm генерит bitcode и он платформенно зависим.
> http://llvm.org/docs/FAQ.html#platformindependent

Правильнее было бы сказать не платформозависим, а платформонезависим с определенными исключениями. По ссылке раздел FAQ только про GCC-фронтэнд, а в новости речь про Sparse.

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

11. "На базе Sparse создан LLVM-бэкенд, нацеленный на пересборку ..."  +1 +/
Сообщение от dq0s4y71 (??) on 31-Авг-11, 13:02 
Да, "родной" кодгенератор у Спарс кривой. У меня валился в сегфолт на простейших выражениях. С другой стороны, что ожидать от "глупого" бэк-энда, как его окрестил сам Торвальдс...
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

13. "На базе Sparse создан LLVM-бэкенд, нацеленный на пересборку ..."  –2 +/
Сообщение от Аноним (??) on 31-Авг-11, 17:37 
> Сам читал перед тем как ссылку ставить?
> LLVM изначально генерит платформонезависимый биткод. Сами языки C и C++ не рассчитаны
> на компиляцию в платформонезависимый код из-за выбора архитектуры выполнения на уровне
> препроцессинга исходника. Но сие не значит что путём определённых манипуляций с
> кодом мы не можем выкинуть или заменить платформозависимые части.

gcc же делает платформо-независимый gimple. Короче ты не сможешь взять файл с биткодом и запустить его на другой архитектуре. Так что дроч на llvm вместо gcc непонятен

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

14. "На базе Sparse создан LLVM-бэкенд, нацеленный на пересборку ..."  +/
Сообщение от mihon73 on 31-Авг-11, 17:43 
> llvm генерит bitcode и он платформенно зависим.
> платформенно зависим

Это как так? Моя твоя не понимать

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

17. "На базе Sparse создан LLVM-бэкенд, нацеленный на пересборку ..."  +/
Сообщение от Аноним (??) on 31-Авг-11, 22:09 
> Тем не менее автор проекта считает, что sparse-llvm сможет достигнуть стадии пересборки ядра Linux раньше, чем Clang, так как Sparse, на базе которого развивается sparse-llvm, изначально полностью поддерживает парсинг кода всего ядра.

а разве Clang не собирает ядро? По моему они уже года два, как собрали.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

18. "На базе Sparse создан LLVM-бэкенд, нацеленный на пересборку ..."  +/
Сообщение от Аноним (??) on 31-Авг-11, 22:23 
С Clang собирается только минимум, позволяющий загрузиться. C Clang не работает куча подсистем (SELinux, Posix ACL, IPSec, eCrypt, Xen, IPv6, Netfilter, поддержка модулей ядра  и т.п.).
PS. https://www.opennet.ru/opennews/art.shtml?num=28418
Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

21. "На базе Sparse создан LLVM-бэкенд, нацеленный на пересборку ..."  +1 +/
Сообщение от ананим on 01-Сен-11, 03:00 
>а разве Clang не собирает ядро? По моему они уже года два, как собрали.

угу. собрали и уже 2 года не обновляли.
следующую сборку ждут ещё через 2 года.

Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

24. "На базе Sparse создан LLVM-бэкенд, нацеленный на пересборку ..."  +/
Сообщение от XoRe (ok) on 04-Сен-11, 17:54 
> gcc же делает платформо-независимый gimple. Короче ты не сможешь взять файл с
> биткодом и запустить его на другой архитектуре. Так что дроч на
> llvm вместо gcc непонятен

А зачем брать файл с биткодом, когда можно взять исходник?

Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

25. "На базе Sparse создан LLVM-бэкенд, нацеленный на пересборку ..."  +/
Сообщение от Аноним (??) on 05-Сен-11, 15:05 
>А зачем брать файл с биткодом, когда можно взять исходник?

Почему это? LLVM финансируется прежде всего Apple, которая очень не любит показывать исходники.

Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

26. "На базе Sparse создан LLVM-бэкенд, нацеленный на пересборку ..."  +/
Сообщение от Аноним (??) on 05-Сен-11, 15:08 
> а разве Clang не собирает ядро?

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

>По моему они уже года два, как собрали.

Два года назад собрали этого уродца, и с тех пор никаких подвижек нет.

Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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