Главная страница « Спецкурсы «

Спецкурс «Устройство компилятора GCC»


Лектор: мл. н. с. Белеванцев Андрей Андреевич
(для 4-5 курсов)

Аннотация курса


Семейство компиляторов GNU Compiler Collection (GCC) было создано в рамках проекта GNU для поддержки открытого программного обеспечения. GCC является единственным промышленным компилятором с открытыми исходными кодами; также GCC – де-факто стандартный компилятор в UNIX и Linux-системах. GCC изначально спроектирован как многоязыковой и мультиплатформенный компилятор. Открытость исходных кодов компилятора делает возможным изучение поведения алгоритмов оптимизации программ на реальных исходных кодах пользователей.

Цель данного спецкурса – рассказать об устройстве промышленного компилятора на примере GCC, уделяя внимание особенностям реализации, возникающим из-за многоплатформенности и промышленного применения компилятора. Спецкурс освещает архитектуру GCC, устройство машинно- и языково-зависимых и независимых частей компилятора, используемые внутренние представления, скалярные оптимизации и оптимизации циклов, машинно-зависимые оптимизации, а также интерфейсы для их реализации.

Литература:

  1. S.Muchnick. Advanced compiler design and implementation. Morgan Kaufmann, 1997.

  2. Внутренняя документация GCC. http://gcc.gnu.org/onlinedocs/gccint

  3. Презентации по внутреннему устройству GCC. http://www.airs.com/dnovillo/200711-GCC-Internals

  4. Материалы 2й конференции HIPEAC по GCC. http://www.hipeac.net/node/746

  5. Материалы конференции разработчиков GCC. http://www.gccsummit.org

  

© Кафедра системного программирования ВМК МГУ.

Обновлено: 11.6.2008