LLVM: инфраструктура для разработки компиляторов
книга

LLVM: инфраструктура для разработки компиляторов : знакомство с основами LLVM и использование базовых библиотек для создания продвинутых инструментов

Здесь можно купить книгу "LLVM: инфраструктура для разработки компиляторов : знакомство с основами LLVM и использование базовых библиотек для создания продвинутых инструментов" в печатном или электронном виде. Также, Вы можете прочесть аннотацию, цитаты и содержание, ознакомиться и оставить отзывы (комментарии) об этой книге.

Автор: Бруно Лопес, Рафаэль Аулер

Форматы: PDF

Издательство: ДМК Пресс

Год: 2023

Место издания: Москва

ISBN: 978-5-89818-603-6

Страниц: 343

Артикул: 108005

Возрастная маркировка: 16+

Электронная книга
519

Краткая аннотация книги "LLVM: инфраструктура для разработки компиляторов"

LLVM  – новейший фреймворк для разработки компиляторов. Благодаря простоте расширения и организации в виде множества библиотек, LLVM легко поддается освоению даже начинающими программистами, вопреки устоявшемуся мнению о сложности разработки компиляторов. Сначала эта книга покажет, как настроить, собрать и установить библиотеки, инструменты и внешние проекты LLVM. Затем познакомит с архитектурой LLVM и особенностями работы всех компонентов компилятора: анализатора исходных текстов, генератора кода промежуточного представления, генератора выполняемого кода, механизма JIT-компиляции, возможностями кросс-компиляции и интерфейсом расширений. На множестве наглядных примеров и фрагментов исходного кода книга поможет вам войти в мир разработки компиляторов на основе LLVM. Издание предназначено энтузиастам, студентам, а также разработчикам компиляторов, интересующимся LLVM. Читатели должны знать язык программирования C++ и, желательно, иметь некоторые представления о теории компиляции.

Содержание книги "LLVM: инфраструктура для разработки компиляторов : знакомство с основами LLVM и использование базовых библиотек для создания продвинутых инструментов"


Об авторах
О рецензентах
Предисловие
Содержание книги
Что потребуется для работы с книгой
Кому адресована эта книга
Типографские соглашения
Отзывы и пожелания
Скачивание исходного кода примеров
Список опечаток
Нарушение авторских прав
Глава 1. Сборка и установка LLVM
Порядок нумерации версий LLVM
Установка скомпилированных пакетов LLVM
Сборка из исходных текстов
В заключение
Глава 2. Внешние проекты
Введение в дополнительные инструменты Clang
Расширение DragonEgg
В заключение
Глава 3. Инструменты и организация
Введение в основные принципы организации LLVM
LLVM сегодня
Взаимодействие с драйвером компилятора
Использование автономных инструментов
Внутренняя организация LLVM
Реализация первого собственного проекта LLVM
Общие советы по навигации в исходных текстах LLVM
В заключение
Глава 4. Анализатор исходного кода
Введение в Clang
Этапы работы анализатора Clang
Все вместе
В заключение
Глава 5. Промежуточное представление LLVM
Обзор
Основные инструменты для работы с форматами IR
Введение в синтаксис языка LLVM IR
Реализация собственного генератора LLVM IR
Оптимизация на уровне IR
В заключение
Глава 6. Генератор выполняемого кода
Обзор
Структура генератора кода
Библиотеки генераторов кода
Язык TableGen
Этап выбора инструкций
Планирование инструкций
Машинные инструкции
Распределение регистров
Пролог и эпилог
Инфраструктура машинного кода
Реализация собственного прохода для генератора кода
В заключение
Глава 7. Динамический компилятор
Основы механизма динамической компиляции в LLVM
Введение в инфраструктуру llvm::JIT
Введение в инфраструктуру llvm::MCJIT
Использование механизма MCJIT
Инструменты компиляции LLVM JIT
Дополнительные ресурсы
В заключение
Глава 8. Кросс-платформенная компиляция
Сравнение GCC и LLVM
Триады определения целевой архитектуры
Подготовка инструментария
Кросс-компиляция с аргументами командной строки Clang
Создание кросс-компилятора Clang
Тестирование
Дополнительные ресурсы
В заключение
Глава 9. Статический анализатор Clang
Роль статического анализатора
Тестирование статического анализатора
Расширение статического анализатора Clang собственными средствами определения ошибок
Дополнительные ресурсы
В заключение
Глава 10. Инструменты Clang и фреймворк LibTooling
Создание базы данных команд компиляции
clang-tidy
Инструменты рефакторинга
Создание собственного инструмента
Дополнительные ресурсы
В заключение
Предметный указатель

Все отзывы о книге LLVM: инфраструктура для разработки компиляторов : знакомство с основами LLVM и использование базовых библиотек для создания продвинутых инструментов

Чтобы оставить отзыв, зарегистрируйтесь или войдите

Внимание!
При обнаружении неточностей или ошибок в описании книги "LLVM: инфраструктура для разработки компиляторов : знакомство с основами LLVM и использование базовых библиотек для создания продвинутых инструментов (автор Бруно Лопес, Рафаэль Аулер)", просим Вас отправить сообщение на почту help@directmedia.ru. Благодарим!