[学习cpu0] (一) 编译llvm-cpu0
从github上下载好9.0的版本,参考实现,将其替换9.0现有后端$LLVM_Project/llvm, 报错如下(可能c++标准不同,设置11未起效果):
但是9.0原始版本可以编译过,因此diff两个LLVM_Project/llvm下的config, cmake, txt相关的内容,命令如下:
find . -name "*make*" | xargs -I {} diff {} ../llvm-cpu0/{}
find . -name "*config*" | xargs -I {} diff {} ../llvm-cpu0/{}
find . -name "*txt*" | xargs -I {} diff {} ../llvm-cpu0/{}
但是,除了cpu0相关的增量不同,依旧没定位出问题。
最终定位报错文件MicrosoftDemangleNodes.h, 发现与llvm9.0相比,cpu0版本少include两个头文件:
搞定这个bug后,下面这个相对简单定位:
最终,编译成功。