LLVM 后段实践笔记
发布时间
阅读量:
阅读量
该系列笔记是我对之前学习的《Tutorial LLVM Backend》Cpu0教程所作的补充完善与版本更新工作,
最初发布于我的知乎专栏:https://www.zhihu.com/column/c_1250484713606819840。
本文是该教程的第一部分,
其他章节可通过文章末尾提供的链接进行访问。
相应的GitHub源码文件可从https://github.com/P2Tree/LLVM_for_cpu0获取。
已经上传大部分内容,剩余章节正在编写中。
序
0.1 动机
编程工具是一个功能繁多的功能性软件系统,在其中涵盖丰富的计算机理论,并与许多数学理论有着密切联系。在学校学习《编译原理》课程时主要涉及一些基础概念知识较为晦涩难懂使得许多同学难以理解其作用与价值觉得教材中的知识实用性不强
然而,在实践中遇到问题时,
仅持有编译原理教材的人仍无法确定下一步该做什么。
其复杂性使得理论与实践间的鸿沟过于显著。
在实践中面临的内容差异较大,
包括前端处理、后端优化以及一些专门进行性能调优的专业领域。
这些细分领域各有侧重,
导致工程师的工作内容千差万别。
一部分商用编译器的具体源代码是可以公开获取的,并非仅限于像gcc和clang/LLVM这样的工具链项目。当试图使用这些开源项目的代码进行学习时,在缺乏适当的学习策略
全部评论 (0)
还没有任何评论哟~
