Open64 - доступный по лицензии GPLv2, свободный компилятор языков C/C++ и Fortran, который поддерживается AMD и разрабатывается SGI.
Основные изменения:
- исправлено большое количество багов;
- добавлены опции для отключения IPA;
- добавлена поддержка VCG графов для CFG;
- разрешено выделение памяти на стеке для неиспользуемых переменных при компиляции с ключом -g;
- реализован ZDL (Zero-Delay-Loop) для DSP;
- улучшена поддержка IA64;
- включена CFLOW оптимизация внутри EH областей;
- расширена реализация активной оптимизации циклов;
- улучшена производительность вычислений с плавающей точкой при -O3 оптимизации;
- добавлена frame-pointer оптимизация;
- улучшение оптимизации структур
- избегается создание лишних копий структур;
- добавлена copy-in/copy-out оптимизация
- улучшения в векторизации
- введен объектно-ориентированный фреймворк для SIMD выражений;
- более векторизуемые операторы;
- векторизация if - выражений
- улучшен SIB (Scaled-Index-Base) режим адресации генерации кода;
- улучшена поддержка и кодогенерация для SSE 4.x, AVX и FMA инструкций;
- добавлена внутренняя оптимизация указателей;
- полная поддержка процессоров Bulldozer.
Компилятор доступен для скачивания по этой ссылке.
>>> Подробности