LLVM每日谈之十九 LLVM的第一本系统的书<Getting Started with LLVM Core Libraries>
LLVM最终有了一本系统的书了——《Getting Started with LLVM Core Libraries》。
这本书号称是LLVM的第一本书,可是据说日本早就有两本日文的关于LLVM的书,这个了解的不多。
只是能够肯定的是,这本书是英文表述的第一本书。
这本书的覆盖范围非常广,从简单的怎样安装LLVM一直到各个部分的介绍,以及怎样使用这些部分去创建自己的工具,都有所介绍。
对于想使用LLVM去创建自己的工具的人。全然是够用的,并且是非常不错的一本书。这也是本书的主要针对群体。毕竟编译器发展到这个阶段,很多其它的人是怎样使用编译器和假设用它去构建自己的工具。而前者的操作十分简单,仅仅须要几条简单的命令就好。有难度的是后者。
对于有更深入的需求的读者,比方打算hacking LLVM的人,这本书依旧算是浅的。hacking LLVM最好的办法依旧是啃代码,只是我相信这本书依旧能够让打算hacking LLVM的人,对各个部分有一个综合的了解。
而对于LLVM的刚開始学习的人来说,这本书也非常不错,能够高速的让刚開始学习的人对LLVM的架构以及各个部分有一个高速并且系统的了解。这里的关键是系统。由于LLVM本身自己的文档也非常多,非常多文档也是写的非常仔细非常经典的,普通情况下不easy被超越。
可是文档缺少的是一个系统的全面的介绍。这些正是这本书所具有的。
所以,综合来说。对于LLVM的学习者来说。这本书还是非常值得一读的。这本书今年刚出,没有中文版,网上能够找到电子版,喜欢LLVM的能够自行搜索。
LLVM每日谈之十九 LLVM的第一本系统的书<Getting Started with LLVM Core Libraries>的更多相关文章
- [置顶] LLVM每日谈之十五 LLVM自带的examples
作者:snsn1984 在LLVM源码的目录下,有一个目录叫做examples,这个目录下边有几个LLVM的例子,初学者一般不会太关注这些例子,但是这些例子确实是精华中的精华,在LLVM的学习过程中不 ...
- LLVM每日谈之二十 Everything && Clang driver
作者:史宁宁(snsn1984) 近期在读<Getting Started with LLVM Core Libraries>.这是读的第一本LLVM的书.非常多地方尽管讲的是自己知道的东 ...
- LLVM每日谈21 一些编译器和LLVM/Clang代码
作者:闪亮宁(snsn1984) 一些自己的收藏LLVM/Clang代码,而他自己写一些一点点LLVM/Clang译器的代码.在这里把这些代码库分享出来,欢迎大家交流探讨. 1.crange http ...
- Qt浅谈之三十九圆形进度条(已经有50篇了)
http://blog.csdn.net/taiyang1987912/article/category/2314763
- Qt浅谈之四十九俄罗斯方块(代码来自网络)
一.简介 从网上下载了一个Qt实现的俄罗斯方块单机版的源码,觉得非常有意思,故以博客形式记录下来,以便慢慢来研究.在centos6.6下编译运行(注意程序运行需要读取pro目录的配置文件,若把编译目录 ...
- 第十九次ScrumMeeting博客
第十九次ScrumMeeting博客 本次会议于12月9日(六)22时整在3公寓725房间召开,持续20分钟. 与会人员:刘畅.辛德泰.张安澜.赵奕.方科栋. 1. 每个人的工作(有Issue的内容和 ...
- 无废话ExtJs 入门教程十九[API的使用]
无废话ExtJs 入门教程十九[API的使用] extjs技术交流,欢迎加群(201926085) 首先解释什么是 API 来自百度百科的官方解释:API(Application Programmin ...
- Python之路【第十九章】:Django进阶
Django路由规则 1.基于正则的URL 在templates目录下创建index.html.detail.html文件 <!DOCTYPE html> <html lang=&q ...
- Bootstrap <基础二十九>面板(Panels)
Bootstrap 面板(Panels).面板组件用于把 DOM 组件插入到一个盒子中.创建一个基本的面板,只需要向 <div> 元素添加 class .panel 和 class .pa ...
随机推荐
- 基于CGAL的Delaunay三角网应用
目录 1. 背景 1.1 CGAL 1.2 cgal-bindings(Python包) 1.3 vtk-python 1.4 PyQt5 2. 功能设计 2.1 基本目标 2.2 待实现目标 3. ...
- CentOS7 搭建Kafka(二)kafka篇
CentOS7 搭建Kafka(二)kafka篇 前面我们说了zookeeper的搭建,zookeeper运行后就可以着手搭建kafka了. 必看 喜欢官方文档的请移步:[http://kafka.a ...
- RabbitMQ 官方NET教程(一)【介绍】
本教程假定RabbitMQ已在标准端口(5672)上的localhost上安装并运行.如果使用不同的主机,端口或凭据,连接设置将需要调整. RabbitMQ是一个消息代理:它接受并转发消息. 您可以将 ...
- mvc3结合spring.net-依赖注入
namespace Tuzi.Models.IService { public interface IPersonService { string say(string words); } names ...
- ie8及其以下版本兼容性问题之placeholder实现
1. 普通浏览器下修改placeholder颜色 因为每个浏览器的CSS选择器都有所差异,所以需要针对每个浏览器做单独的设定. 示例: input::-webkit-input-placeholder ...
- 获取Json中特定的值
假如我们得到了一个json的数据:json===> {"Head":{"TransCode":"X1009","Tr ...
- SAP computer之architecture
Simple-As-Possible computer introduces all the cruicial ideas behind computer operation without bury ...
- Pull-up resistors
1 Introduction Pull-up resistors are very common in microcontrollers or any digital logic device. Wi ...
- 我的最爱Lambda演算——开篇
(在这个帖子的原始版本里,我试图用一个JavaScript工具来生成MathML.但不太顺利:有几个浏览器没法正确的渲染,在RSS feed里也显示的不好.所以我只好从头开始,用简单的文本格式重新写一 ...
- Java时间日期格式转换Date转String和String转Date
Java时间格式转换大全 import java.text.*; import java.util.Calendar; public class VeDate { /** * 获取现在时间 * * @ ...