文档章节

七天LLVM零基础入门(Linux版本)------第四天

snsn1984
 snsn1984
发布于 2013/02/27 09:12
字数 324
阅读 1520
收藏 7

作者:snsn1984

第一步:复习

第三天的时候,我们学习了LLVM的编程指引。在开始第四天的学习之前,需要复习之前学习过的两篇文档:
LLVM IR的文档( http://llvm.org/docs/LangRef.html
编程指引文档 ( http://llvm.org/docs/ProgrammersManual.html
这两篇文档是LLVM的重中之重,希望学习的时候认真一点,能掌握这些文档的核心。

第二步:阅读文档 Write an LLVM pass
http://llvm.org/docs/WritingAnLLVMPass.html
在阅读的过程中,文档中提到的例子要自己认真运行一下,并且对提到的实际代码,要认真的阅读。
对Pass的简要介绍,可参加我之前的一个博文:
http://blog.csdn.net/snsn1984/article/details/8160696
同时,还有一个对Pass例子的分析:
http://blog.csdn.net/snsn1984/article/details/8568828

第三步:自己根据HelloWorld的例子,写一个输出一个函数中所有的BasicBlock的name的Pass.
这个Pass是FunctionPass的子类,通过自己实现runOnFunction,来实现输出所有的BasicBlock的name.
在这个过程中,要善于利于google搜索,通过自己查找Function类的成员函数,来找到自己需要的成员函数。
这个Pass的难度不大,只是和HelloWorld稍微不同。  

© 著作权归作者所有

snsn1984
粉丝 94
博文 32
码字总数 45245
作品 0
长春
项目经理
私信 提问
七天LLVM零基础入门(Linux版本)------总结

七天LLVM零基础入门这系列文章,为了让刚接触LLVM的人在最短的时间内快速的熟悉LLVM。这系列文章,现在经过将近一年的时间的使用,有了不少反馈的意见,现在将这些情况总结一下。 1. 在按照这...

snsn1984
2014/02/10
404
0
七天LLVM零基础入门(Linux版本)------第七天

作者:snsn1984 这是这一次零基础入门的最后一天,这次的主要任务是实战一个Pass。 任务描述: 实现一个Pass,该Pass可以读取一个程序中所有的for循环的循环头的名字并输出。...

snsn1984
2013/02/28
1K
6
七天LLVM零基础入门(Linux版本)------第六天

作者:snsn1984 第一步:对优化代码的pass继续进行深入的分析 首先检查一下第五天中的Pass练习,什么情况下可以进行优化,什么情况下不可以进行优化。 可以参照系统自带的Pass: http://llvm...

snsn1984
2013/02/28
812
0
七天LLVM零基础入门(Linux版本)------第五天

作者:snsn1984 第一步:复习文档 Write an LLVM pass http://llvm.org/docs/WritingAnLLVMPass.html 第二步:阅读LLVM编程规范 http://llvm.org/docs/CodingStandards.html 编程规范是编程中......

snsn1984
2013/02/28
977
0
七天LLVM零基础入门(Linux版本)------第二天

作者:snsn1984 在第一天的时候,我们简单了解了llvm和clang。今天我们继续对LLVM进行学习。 第一步:学会如何查找LLVM的文档

snsn1984
2013/02/22
2.2K
5

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周六乱弹 —— 如果是个帅小伙你愿意和他出去吗

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 小小编辑推荐:《Ghost 》游戏《死亡搁浅》原声 《Ghost 》游戏(《死亡搁浅》原声) - Au/Ra / Alan Walker 手机党少年们想听歌,请使劲儿戳...

小小编辑
今天
175
6
java通过ServerSocket与Socket实现通信

首先说一下ServerSocket与Socket. 1.ServerSocket ServerSocket是用来监听客户端Socket连接的类,如果没有连接会一直处于等待状态. ServetSocket有三个构造方法: (1) ServerSocket(int port);...

Blueeeeeee
今天
6
0
用 Sphinx 搭建博客时,如何自定义插件?

之前有不少同学看过我的个人博客(http://python-online.cn),也根据我写的教程完成了自己个人站点的搭建。 点此:使用 Python 30分钟 教你快速搭建一个博客 为防有的同学不清楚 Sphinx ,这...

王炳明
昨天
5
0
黑客之道-40本书籍助你快速入门黑客技术免费下载

场景 黑客是一个中文词语,皆源自英文hacker,随着灰鸽子的出现,灰鸽子成为了很多假借黑客名义控制他人电脑的黑客技术,于是出现了“骇客”与"黑客"分家。2012年电影频道节目中心出品的电影...

badaoliumang
昨天
16
0
很遗憾,没有一篇文章能讲清楚线程的生命周期!

(手机横屏看源码更方便) 注:java源码分析部分如无特殊说明均基于 java8 版本。 简介 大家都知道线程是有生命周期,但是彤哥可以认真负责地告诉你网上几乎没有一篇文章讲得是完全正确的。 ...

彤哥读源码
昨天
19
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部