作者:史宁宁(snsn1984)

自己收集了一些LLVM/Clang的代码,并且自己也在一点一点的写一些LLVM/Clang以及编译器的代码,在这里把这些代码库分享出来,欢迎大家交流探讨。

1.crange

https://github.com/shining1984/crange

这是一个python写的调用libclang去定位和交叉检索C/C++源码的工具。这个工具不是我写的,我给fork过来了,方便自己加一些自己的代码。

2. libclang-examples

https://github.com/shining1984/libclang-examples

这是我自己写的使用python去调用libclang的几个简单的例子,后续会逐渐添加。

3.screader

https://github.com/shining1984/screader

自己写的一个工具叫screader,是用C语言实现的调用libclang去实现代码交叉索引的工具,还有待进一步完善。

4.llvm-clang-samples

https://github.com/shining1984/llvm-clang-samples

Eli写的一些关于如何使用LLVM/Clang中的库以及内部机制的一些例子。Eli对LLVM/Clang有很深的研究,并且有着大量的博文,他的博客地址:eli.thegreenplace.net

5. compiler_exercise_code

https://github.com/shining1984/compiler_exercise_code

我自己写的简单编译器的代码。目前已经实现了一个简单版本的词法分析器,后续继续实现中。这个代码是用C++实现的,并不是为了真正的实现编译器,主要是为了通过简单的代码去展示编译器的大致处理过程。

6. llvm-examples

https://github.com/shining1984/llvm-examples

这个代码库也是我自己刚刚建立的,刚刚上传了一个例子。这里打算要放一些基于LLVM构建的例子或者简单的项目,主要是为了演示如何基于LLVM构建项目,以及如何使用LLVM的库和IR。

转载于:https://www.cnblogs.com/ainima/p/6331912.html

LLVM每日谈之二十一 一些关于编译器和LLVM/Clang的代码相关推荐

  1. LLVM每日谈之二十八 I am leaving llvm

    Rafael 于当地时间五月二日宣称离开LLVM社区,在网络引发了广泛的讨论.Rafael 作为LLVM贡献排名第五的资深贡献者,对LLVM社区贡献极大,他一共提交了4,344个节点,占LLVM提交节 ...

  2. LLVM每日谈之二十三 LLVM/Clang编译Linux内核资料

    作者:史宁宁(snsn1984) 之前有朋友问到这个问题,是否有使用LLVM/Clang编译Linux内核的,随手找了一些相关资料,在这里贴出来,与大家共享. 网址:http://llvm.linux ...

  3. LLVM每日谈之二十九 面向机器学习的编译器——Glow

    当地时间五月三日,Glow开发者在LLVM开发者邮件列表中发布了Glow. 邮件地址:[llvm-dev] Thank you from the Glow Developers Glow的开源地址:p ...

  4. LLVM每日谈 | 知乎

    llvm是什么? llvm是low level virtual machine的简称,其实是一个编译器框架.llvm随着这个项目的不断的发展,已经无法完全的代表这个项目了,只是这种叫法一直延续下来. ...

  5. LLVM每日谈之三十一 如何读写LLVM的bitcode

    LLVM的IR在整个LLVM工程中占据着核心地位,它是整个LLVM三个阶段的中间环节,起着承上启下的作用.如何读写LLVM的bitcode在LLVM的前端和后端都会涉及这个问题,在基于LLVM做一些定 ...

  6. LLVM每日谈之四十一 组装一个完整的工具链

    写在前面的话:这是一篇LLVM的官方文档,英文文档地址: Assembling a Complete Toolchain 之前读文档的时候,陆陆续续的翻译过一些,周末花了点时间把这个文章整理了出来.因 ...

  7. 再谈精益 -- 二十一世纪可借鉴的全球生产运营体系

    精益的核心: 精益区别于传统企业最核心的部分是customer obsession. 从用户角度来定义组织和生产方式. 这在20世纪50-60年代是一个超前的理念, 哪怕放到今天, 批量化制造仍然大行 ...

  8. LLVM每日谈之三十七 Brief Intro to LLVM Backend (HelloLLVM杭州站分享PPT)

    今天参加了HelloLLVM在杭州的线下聚会,做了一个关于LLVM 后端的分享.旨在给对LLVM感兴趣的同学和刚接触LLVM的同学一点引导,帮助他们快速理清LLVM的后端架构.PPT如下:

  9. LLVM每日谈之十二 LLVM的源码分析之Pass相关

    作者:snsn1984 题记:在学习LLVM的过程中,要想学的更加深入,掌握更多的技能,LLVM的源码是必须要读的,但是在这么多的源码中,从哪里下手?很容易让人找不到头脑,本文这里就先拿出几个Pass ...

  10. LLVM每日谈之三 如何创建一个LLVM工程

    作者:snsn1984 阅读了文档<Creating an LLVM Project>(地址:http://llvm.org/docs/Projects.html)之后,自己照着做了一遍, ...

最新文章

  1. jq 直接调用php文件_PHP的函数类别和变量命名
  2. Maven生成可以直接运行的jar包的多种方式
  3. TensorFlow版的“Hello World”,运行官网第一个例子
  4. storm 动态设置并发度
  5. IE10,IE9透明元素无法点击
  6. 软件测试有没有测试大纲文档,系统测试大纲(范例).docx
  7. Docker入门,看了不理解,假一赔命
  8. python list中的append 与 extended 的区别
  9. iOS利用SDWebImage实现缓存的计算与清理
  10. 简单的nios II 流水灯 软件部分
  11. thinkphp __hash__
  12. JSP编程技术2-动态标签
  13. 测试路由器丢包的软件,如何判断路由是否丢包以及丢包的原因和解决方法
  14. 2018仲恺农业计算机大类录取,仲恺农业工程学院2019录取分数线预测
  15. 最全的程序化交易模型设计思路在这里
  16. 淘宝网上免费注册页面的错误
  17. UE4.26 Niagara Initial Mesh Orientation使用方法
  18. 力扣(700.701)补9.9
  19. Revit建模软件:如何在Revit中准确放置族组件?
  20. pta 哥尼斯堡的“七桥问题”

热门文章

  1. SQL SERVER BCP的用法
  2. linux 挂在windows共享文件夹
  3. Cocos Creator 原生安卓改包名+AS运行到真机apk被slice处理而失败
  4. 迪士尼收购福克斯,传媒巨头江山瓦解?
  5. ThinkPHP5 助手函数
  6. 【转】NUnit2.0详细使用方法
  7. 给大家推荐一个查变量名的网站
  8. 分享一个数据结构网站
  9. [yum] yum加速
  10. 跳蚤 BZOJ 4310