Каждый уважающий себя программист хочет сделать свой собственный компилятор. Мечты сбываются! LLVM — важный шаг, позволяющий избежать велосипедостроения. Спасибо за статью!
Продолжение следует…
Ещё 5 частей этого учебника + отдельная статья по оптимизации
затем планирую написать статью по парсингу и кодогенерации LLVM на Python.
Так что устраивайтесь поудобнее ))
В рамках именно этого учебника — не будет, но статьиоб этоместь, и если надо, их переводом тоже займусь. На крайний случай можно обойтись без создания поддержки дополнительной архитектуры в LLVM, а использовать LLVMCBackend.
А какая конкретно архитектура вас интересует?
А возможно ли эффективно реализовать backend для таких странных архитектур, как Intel iMAX 432? Там не бывает указателя на конкретную ячейку, к памяти можно обращаться только через индекс в массиве. При беглом просмотре LLVM я подходящих инструкций не нашел.
Создание языка программирования с использованием LLVM. Часть 3: Генерация кода LLVM IR