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

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

作者:史宁宁(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。

目录
相关文章
|
3天前
|
Unix 编译器 Linux
1.8.3 GNU编译器集合和LLVM项目
GNU项目自1987年起致力于开发自由UNIX软件,其成果之一GNU编译器集合(GCC)在指导委员会领导下持续演进,紧跟C语言标准。GCC适用于多种平台如UNIX、Linux和Windows,并常通过gcc或cc命令调用。另一方面,起源于2000年伊利诺伊大学研究项目的LLVM,提供了另一种开源编译器集合,其Clang编译器处理C代码,自2012年起成为FreeBSD默认C编译器,并良好支持最新C标准。
10 1
|
5月前
|
编译器 C语言 C++
CMake基础(9)使用Clang编译
CMake基础(9)使用Clang编译
355 0
|
前端开发 IDE 编译器
LLVM编译器前端 Clang 简介
昨天晚上安装rails的开发环境,被ruby的编译搞的有点崩溃。下载的ruby的源码不能用系统自带的gcc -4.21编译,也不能用系统自带的clang进行编译,必须下载并使用gcc -4.2进行编译才能通过。今天稍微看看编译器的一些背景。
538 0
LLVM编译器前端 Clang 简介
|
存储 自然语言处理 编译器
【嵌入式开发】gcc 学习笔记(一) - 编译C程序 及 编译过程(一)
【嵌入式开发】gcc 学习笔记(一) - 编译C程序 及 编译过程(一)
262 0
|
存储 编译器 C语言
【嵌入式开发】gcc 学习笔记(一) - 编译C程序 及 编译过程(二)
【嵌入式开发】gcc 学习笔记(一) - 编译C程序 及 编译过程(二)
381 0
|
编译器 iOS开发 Windows
带你读《LLVM编译器实战教程》之一:构建和安装LLVM
本书的前半部分将向您介绍怎么样去配置、构建、和安装LLVM的不同软件库、工具和外部项目。接下来,本书的后半部分将向您介绍LLVM的各种设计细节,并逐步地讲解LLVM的各个编译步骤:前段、中间表示(IR)、后端、即时编译(JIT)引擎、跨平台编译和插件接口。本书包含有大量翔实的示例和代码片段,以帮助读者平稳顺利的掌握LLVM的编译器开发环境。
20052 0
《编译与反编译技术实战 》一1.5 编译器LLVM
LLVM是构架编译器的框架系统,由C++编写而成,用于优化以任意程序语言编写的程序的编译时间、链接时间、运行时间以及空闲时间,对开发者保持开放,并兼容已有脚本。LLVM计划启动于2000年,最初由伊利诺伊大学香槟分校的Chris Lattner主持开展。
1563 0