易燃物汇聚 YouTube 有声书与书评
深入分析GCC 封面

深入分析GCC

王亚刚

2684人在读
60.9万字总字数
¥35定价

内容简介

本书将围绕GCC编译过程,详细介绍从源代码到AST、从AST到GIMPLE、从GIMPLE到RTL,以及从RTL到最终的目标机器汇编代码的详细过程,涉及各个阶段中间表示的详细分析、生成过程。本书提供了大量的图表和实例,展示了GCC编译系统的总体工作流程和工作细节。本书的另外一个特点是结合GCC 4.4.0的源代码进行分析,使读者在了解编译原理的基础上进一步掌握其实现的总体流程和细节,让更多读者对编译技术的认识不再只停留在理论层面,而是向其展示一个编译系统实例的实现过程。在编写这本书的时候,有一种精神支撑着我,我相信“兴趣”加上“坚持”就是胜利!分析GCC不是一年半载的事情,需要3年、5年,甚至更长时间,不过我可以坚持,我要用我的坚持换来对GCC的深入分析,让更多的GCC爱好者熟悉它、接触它、了解它,更多地参与GCC的开发与维护。

读者书评

★★★☆☆

一直以来都对GCC的实现很感兴趣,但是它庞大的代码量和复杂的文件组织让人望而却步。虽然一直也在读相关资料,但是没有机会系统地进行分析。在本书的帮助下,得以揭开它神秘的面纱。该书粘贴了大量代码,有充数之嫌,而且关键的一些数据结构没有讲清楚,比如用于存储AST和token的全局变量,读完似懂又非懂;可取之处,在于可以快速入门,同时用作工具书籍。建议配合着网上的一些博客一起看,效果更佳。 仔细阅读了GCC中处理c family的代码后,五味杂陈,尤其其代码风格更是一言难尽,我很担心GCC还能不能跟得上C++标准的快速迭代…..

★★★★☆

虽然有些地方讲得还是不够明白,不过还是收益不少

★★★☆☆

这本书内容成书于2016年。在2016年时,gcc已经到了5版本,完全支持了c++11,和4.4大为不同。64位架构已经成为主流。clang和llvm也已经异军突起(clang和llvm模块化做的很好,其实更有利于分析,不知道作者没什么没考虑)。而这本书的参考内容最晚的也是2012年的,主要的文献还是1990-2006这段时间,在选型上,看不出来选择老旧技术的原因何在。 另外,很多内容就是单纯介绍了做了什么。但是却没讲为什么这么做。书里用了大量的篇幅整段整段粘贴代码,在互联网发达的今天,不知这样行文意义何在。 最后,介绍的所谓paag处理器移植,结构十分简单,似乎是学生作业作品,而且工程方面的东西着墨不多,似乎这一部分不是作者自己动手完成的。 总体而言,这本书的内容,和标题是有一定差距。对于实际价值,主要在于可以了解一下如何去调试gcc,其他的内容,还是遇到的时候自己去翻代码吧。

★★★★★

本书结合GCC4.4.0源代码,围绕GCC编译过程,详细介绍了GCC的设计框架和实现过程,包括从源代码到AST、从AST到GIMPLE、从GIMPLE到RTL,以及从RTL到终的目标机器代码的详细过程,涉及各个阶段中间表示的详细分析、生成过程,使读者在了解编译原理的基础上进一步掌握其实现的总体流程和实现细节,让更多的读者对编译技术不再只是停留在理论层面,而是学会如何实现一个编译系统实例。

★★★★☆

给个4星,虽然对绝大多数人而言,这本书里的绝大多数内容都不必了解。

★★★★★

是一本了解gcc internal的好书!

★★★★★

对gcc源码分析相当深入,不过一般很少用到这么底层

★★★★★

值得一看,跟着做一遍,再动手自己实现一遍能收获很多

书籍信息

作者王亚刚
出版社机械工业出版社
出版时间2017-02-01
ISBN9787111556329
分类计算机-编程设计
格式EPUB
完结状态连载中
章节数92