LLVM: инфраструктура для разработки компиляторов
- Добавил: АлександрШе
- Дата: 11-04-2017, 13:20
- Комментариев: 0
![](/uploads/posts/2017-04/thumbs/1491905564___aaaaaaaa.jpg)
Название: LLVM: инфраструктура для разработки компиляторов
Автор: Аулер Р., Лопес Б.
Издательство: ДМК Пресс
Год: 2015
Страниц: 344
Формат: pdf
Размер: 27 mb
Качество: хорошее
LLVM (Low Level Virtual Machine, низкоуровневая виртуальная машина)– новейший фреймворк для разработки компиляторов. Благодаря простоте расширения и организации в виде множества библиотек, LLVM легко поддается освоению даже начинающими программистами, вопреки устоявшемуся мнению о сложности разработки компиляторов. Сначала эта книга покажет, как настроить, собрать и установить библиотеки, инструменты и внешние проекты LLVM. Затем вы познакомитесь с архитектурой LLVM и особенностями работы всех компонентов компилятора: анализатора исходных текстов, генератора кода промежуточного представления, генератора выполняемого кода, механизма JIT-компиляции, возможностями кросс-компиляции и интерфейсом расширений. На множестве наглядных примеров и фрагментов исходного кода книга поможет вам войти в мир разработки компиляторов на основе LLVM.
Эта книга адресована энтузиастам, студентам, изучающим информационные технологии, и разработчикам компиляторов, интересующимся фреймворком LLVM. Читатели должны знать язык программирования C++ и, желательно, некоторые представления о теории компиляции. И для начинающих, и для опытных специалистов эта книга послужит практическим введением в LLVM, не содержащим сложных сценариев. Если вас интересует данная технология, тогда эта книга определенно для вас.
Настройка, сборка и установка дополнительных открытых проектов LLVM, включая инструменты Clang, статический анализатор, Compiler-RT, LLDB, LLDB, DragonEgg, libc++ и комплект тестов для LLVM;
Архитектура библиотек LLVM и особенности взаимодействий между библиотеками и автономными инструментами.
Стадии обработки исходного программного кода и порядок выполнения лексического, синтаксического и семантического анализа анализатором исходного кода Clang.
Как создаются и обрабатываются файлы LLVM IR с промежуточным представлением, а также разработка собственных проходов анализа и трансформации IR-кода.
Создание инструментов для использования средств динамической компиляции LLVM (Just-in-Time, JIT).
Поиск ошибок и оптимизация кода с помощью статического анализатора.
Анализ архитектуры исходного кода и создание инструментов его преобразования с использованием LibClang, LibTooling и интерфейса расширений Clang.
![](/templates/LitmyL/images/LitMyru.png)
[related-news] [/related-news]
Внимание
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.