vbcc
Реализация языка программирования Cvbcc — высоко оптимизирующий переносимый компилятор языка C. Компилятор поддерживает ANSI C и подмножество C99. Цель vbcc — быть бесплатным компилятором, как GNU C, но не таким раздутым и легко переносимым под другую платформу в короткие сроки.
Реализация компилятора разбита на зависимую и независимую части от архитектуры, что обеспечивает полное перекрестное 8, 16, 32 и 64 битное компилирование.
vbcc обеспечивает широкий набор агрессивной оптимизации высокого уровня так же как целевой оптимизации для генерации более быстрого и компактного кода. Причем оптимизация не ограничивается оптимизацией функций — vbcc в состоянии оптимизировать модули. Независимая часть оптимизации включает:
- межмодульные вставочные функции
- частичные вставочные рекурсивные функции
- межпроцедурный потоковый анализ
- межпроцедурное распределение регистров
- распределение регистров для глобальных переменных
- глобальное общее устранение подвыражений
- глобальное распространение констант
- исключение неиспользуемого кода
- анализ псевдонимов
- развертывание циклов
- аннулирование цикла
- вынесение инвариантов из циклов
- вынесение инвариантного кода
Поддерживаемые архитекруты:
- 680x0
- Coldfire
- PowerPC
- 80x86 (386 and above)
- Alpha
- C16x/ST10
- 68hc12
- z-machine
Логотип VBCC
Комментарии
]]>blog comments powered by Disqus
]]>