文档章节

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

snsn1984
 snsn1984
发布于 2013/02/28 11:16
字数 212
阅读 1302
收藏 3

作者:snsn1984

这是这一次零基础入门的最后一天,这次的主要任务是实战一个Pass。

任务描述:
实现一个Pass,该Pass可以读取一个程序中所有的for循环的循环头的名字并输出。
同时,实现一个测试用例去测试输出的结果是否正确。该Pass的输入应该包含嵌套
循环。
提示:
An llvm::FunctionPass using llvm::LoopInfo
LoopInfo &LI=getAnalysis<LoopInfo>() //In runOnFunction
getAnalysisUsage(AnalysisUsage &AU) //In structure
std::vector<Loop*> workList(LI.begin(), LI.end());

在这个任务完成之后,应该已经达到可以达到可以分析和实现LLVM的Pass,查找和
分析LLVM的源码,查找需要使用的文档,并且可以知道下一步该如何自己学习LLVM。


-------------------------------------转载请注明出处----------------------------------------------------

© 著作权归作者所有

snsn1984
粉丝 94
博文 32
码字总数 45245
作品 0
长春
项目经理
私信 提问
加载中

评论(6)

snsn1984
snsn1984 博主

引用来自“LastRitter”的评论

能讲一讲llvm里面主要的几个类和函数到底是怎么回事吗?比如:getGlobalContext(),LLVMContext,EngineBuilder等等。

嗯,最近比较忙,等有时间会继续分析下的,你如果想了解,可以去看下源码。
挺方便的。
LastRitter
LastRitter
能讲一讲llvm里面主要的几个类和函数到底是怎么回事吗?比如:getGlobalContext(),LLVMContext,EngineBuilder等等。
snsn1984
snsn1984 博主

引用来自“doctorlzr1988”的评论

引用来自“snsn1984”的评论

引用来自“doctorlzr1988”的评论

这就结束啦?

这只是入门,后续有进阶的。0

期待!先来帮你打气,学习ing!

好的,谢谢支持。
W_Lu
W_Lu

引用来自“snsn1984”的评论

引用来自“doctorlzr1988”的评论

这就结束啦?

这只是入门,后续有进阶的。0

期待!先来帮你打气,学习ing!
snsn1984
snsn1984 博主

引用来自“doctorlzr1988”的评论

这就结束啦?

这只是入门,后续有进阶的。0
W_Lu
W_Lu
这就结束啦?
七天LLVM零基础入门(Linux版本)------总结

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

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

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

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

作者:snsn1984 第一步:复习 http://llvm.org/docs/LangRef.html) 编程指引文档 (http://llvm.org/docs/ProgrammersManual.html) 这两篇文档是LLVM的重中之重,希望学习的时候认真一点,...

snsn1984
2013/02/27
1K
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

没有更多内容

加载失败,请刷新页面

加载更多

分页查询

一、配置 /*** @author beth* @data 2019-10-14 20:01*/@Configurationpublic class MybatisPlusConfig { @Bean public PaginationInterceptor paginationInterceptor(){ ......

一个yuanbeth
14分钟前
2
0
在LINQPad中使用Ignite.NET

LINQPad是进行.NET开发的一款优秀工具,非常有利于Ignite.NET API的快速入门。 入门 下载LINQPad:linqpad.net/Download.aspx,注意要选择64位操作系统的AnyCPU版本; 安装Ignite.NET的NuGet...

李玉珏
27分钟前
2
0
JS其他类型值转化为Boolean类型规则

本文转载于:专业的前端网站➤JS其他类型值转化为Boolean类型规则 由于最近在笔试的时候,发现好多关于其他类型转化为Boolean类型的题目,因此总结一下! 一、String类型转化为Boolean 1.转化...

前端老手
39分钟前
4
0
EurekaClient自动装配及启动流程解析

在上篇文章中,我们简单介绍了EurekaServer自动装配及启动流程解析,本篇文章则继续研究EurekaClient的相关代码 老规矩,先看spring.factories文件,其中引入了一个配置类EurekaDiscoveryClie...

Java学习录
44分钟前
8
0
析构函数是否必须为虚函数?为何?

p517 在C++中,基类指针可以指向一个派生类的对象。如果基类的析构函数不是虚函数,当需要delete这个指向派生类的基类指针时,就只会调用基类的析构函数,而派生类的析构函数无法被调用。容易...

天王盖地虎626
45分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部