centos上LLVM使用一

本博客涉及自己学习过程中用到的一些网站,很多东西并非原创,只是总结了一下自己的学习过程和遇到的问题及其解决方案。详细内容请看网址。
**1.**在centos7上安装LLVM+CLANG。https://www.cnblogs.com/BinBinstory/p/7499527.html
开始之前需要了解一下llvm的源码目录结构,这对后面熟悉llvm很有用
https://blog.csdn.net/chikey/article/details/85013450 llvm源码目录结构
在这里插入图片描述
在这里插入图片描述
2.开始使用llvm+clang
首先:在你自己工作的工作目录新建一个hello word.c文件,之后如下操作:
cat查看c文件内容 clang编译文件(有错会提示错误信息,无错会产生.out文件)
subl 使用sublime打开文件按照编译结果进行修改,修改结果如黑色图所示
./直接执行编译产生的文件
cat查看c文件内容
在这里插入图片描述
3.编译过程
1)查看编译过程的各个指令
0:输入 1:预处理 2:编译器编译生产中间代码 3:汇编 4:链接动态静态库
在这里插入图片描述
2)查看预处理的结果:$clang -E main.m
因为helloword程序没有宏定义,所以显示还是与原程序相同,
在这里插入图片描述
新建一个hello.c文件,代码如下第一张图,预处理结果如下第二张图:
可以发现,预处理阶段已经将宏定义给修改了;AGE直接用40表示;

在这里插入图片描述在这里插入图片描述
3)词法分析,语法分析,生产AST。
4)生成llvm IR,三种方式。
$ clang min.c -emit-llvm -S -c -o min.ll .ll文本格式
$ clang -S -emit-llvm helloword.c .ll文本格式
$ clang min.c -emit-llvm -c -o min.bc .bc 二进制格式
$ llvm-as min.ll -o min.bc .ll转换为.bc
$ llvm-dis min.bc -o min.ll .bc转换为.ll

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值