我有一个自定义(软,16 位)RISC 架构,我希望 Clang 为其生成 LLVM IR。
我需要创建多少后端才能为自定义架构生成 IR。即IR中的无限寄存器和LLVM类型,没有汇编语言输出,没有机器代码生成。
最佳答案
您必须在 Clang 中添加一小段代码来注册新架构及其主要功能,例如字大小(在您的情况下为 16 位)、所有 llvm 类型(i1、i8、i16、i32 等)的首选对齐方式。 )。 例如,您可以在 MSP430 架构的 Clang 源代码树中找到类似的代码。 为目标添加此代码后,Clang 可以为此目标生成 IR 代码。
关于c - 我需要在 LLVM 中实现什么才能使 Clang 为自定义架构生成 IR?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42696714/