编译原理-Lab4
编译原理Lab4
实验过程
总的来说,本次实验比较简单,只要弄清楚LLVM
的API
如何使用即可,核心在于编写MyVisitor
类。
由于本次实验只涉及main
函数以及return
语句,并且return
语句中的表达式都是由INTEGR_CONST
组成,所以只需要重写函数定义、返回语句、运算表达式以及数字这几个visitor
函数即可。整体的逻辑比较简单,这里不做详细描述。
遭遇的问题
==关于如何找到正确API==:可以写一个包含想要寻找的操作的.c
文件,用clang
编译成.ll
,从中找到API
的大致名称。比如我在写%
运算的时候,就是通过这种方法找到srem
操作对应的API
。
==关于导入依赖的报错==:导了一晚上的包,最后发现有关linux
的包还是没有导入。经过搜索后,加入阿里云镜像,并且对maven
的import
进行配置,得以解决。
编译原理-Lab4
http://example.com/2022/12/22/compilation-principle/compilation-principle-lab4/