RetroBSD теперь на Clang
2025-02-10 00:33За последние три дня я могучим рывком, броском, пинком и нахрапом закончил таки переделку RetroBSD под компилятор Clang. Теперь не нужно бегать искать GCC для mips32. Ставите стандартный Clang и вперёд. Инструкция по сборке лежит в корневом файле README. Для запуска на симуляторе годится обновлённый QEMU для pic32. Если кому понадобится старая версия с GCC - она лежит в бранче gcc.
Поддержку устаревшего хардвера я убрал. Оставил только две платы, обе имеются в продаже:Из минусов: потеряны две фичи.
Поддержку устаревшего хардвера я убрал. Оставил только две платы, обе имеются в продаже:Из минусов: потеряны две фичи.
- MIPS16e - компактная система команд - не поддерживается компилятором Clang. Формально она там есть, но код генерится совершенно нерабочий. Так что приходится довольствоваться стандартным набором инструкций. Из-за этого некоторые "толстые" приложения не лезут в память, к примеру компилятор SmallerC.
- Не удаётся собрать библиотеку libc.а в формате a.out для того же компилятора SmallerC. Потому что имеющийся ассемблер mips32 не понимает некоторые навороченные конструкции, порождаемые компилятором Clang. Надо будет допиливать.