Понадобился мне clang и его IR "ассемблер" в качестве эксперемента.
Хочу попробовать сделать на этом компилятор языка С (без стадартной библиотеки), для некой виртуальной машины со своей архитектурой, набором команд.
На самом деле я уже начал писать такой компилятор, но времени очень мало на него, а работы много.
И тут я вспомнил что есть llvm и что вроде можно даже прикрутить свой кодогенератор.
Во общем первым делом перед тем как браться писать свой back-end для кодогенерации надо бы я так понимаю разобраться с самим IR,
что бы понимать как его транслировать.
Получить IR я так понимаю можно так: clang -S -emit-llvm test.c -o test.ir
Правильно ли я рассуждаю? С clang в таком контексте дела никогда не имел.
Может есть где подобный примеры бекенда, буду признателен за линки.