Оглавление [Скрыть]
LLVM (полный рабочий день)
-
Обзор LLVM
- LLVM – это система компиляции с открытым исходным кодом, разработанная для анализа и преобразования программ.
- Она включает в себя компилятор, оптимизирующий компилятор, линковщик, стандартную библиотеку C++ и другие компоненты.
-
Компилятор
- LLVM предоставляет компилятор Clang, который может генерировать код для различных архитектур.
- Clang поддерживает множество языков программирования, включая C, C++, Objective-C и Fortran.
-
Оптимизирующий компилятор
- LLVM также включает оптимизирующий компилятор под названием Clang, который оптимизирует код для различных архитектур.
- Clang может генерировать код для различных архитектур, включая x86, ARM и PowerPC.
-
Линковщик
- LLVM имеет встроенный линковщик под названием lld, который устраняет зависимость от сторонних компоновщиков.
- lld поддерживает различные форматы объектных файлов и может работать быстрее, чем стандартные компоновщики.
-
Стандартная библиотека C++
- LLVM включает в себя библиотеку C++ под названием libc++, которая имеет двойную лицензию MIT и UIUC.
- Начиная с версии 9.0.0, библиотека была лицензирована под Apache License 2.0 с некоторыми исключениями.
-
Производные версии
- Многие производители выпускают свои собственные версии LLVM, которые могут отличаться от основной версии.
- Примеры включают оптимизирующий компилятор от AMD, форк Clang от Apple, компиляторы от Arm и другие.
-
Отладка и другие компоненты
- LLVM включает отладчик под названием LLDB, а также другие компоненты, такие как коллекция компиляторов GNU и коллекция компиляторов Intel.
-
Сравнение с другими системами
- LLVM сравнивается с другими системами компиляции, такими как GCC и Open64, и имеет свои преимущества и недостатки.
-
История и развитие
- LLVM была разработана Крисом Латтнером и имеет долгую историю развития и поддержки.
-
Библиография
- В статье есть библиография, включающая книгу Криса Латтнера и другие источники информации.
Полный текст статьи: