七天LLVM零基础入门(Linux版本)------第二天

简介: 作者:snsn1984 在第一天的时候,我们简单了解了llvm和clang。今天我们继续对LLVM进行学习。第一步:学会如何查找LLVM的文档LLVM的文档很多,也很全面,是开源软件中文档比较全面并且比较细致的,这是很难得的一个事情。
作者: snsn1984
在第一天的时候,我们简单了解了llvm和clang。今天我们继续对LLVM进行学习。

第一步:学会如何查找LLVM的文档
LLVM的文档很多,也很全面,是开源软件中文档比较全面并且比较细致的,这是很难得的一个事情。所以只要和LLVM打交道,就一定要学会并且善于去使用这些LLVM的文档。
因为LLVM文档比较多,初学者可能不太容易搞清楚,我之前写过一个关于LLVM的文档的博文,可以参考:
http://blog.csdn.net/snsn1984/article/details/8165529
这个博文把文档的地址和文档的分类进行了简单介绍。

第二步:熟悉LLVM的IR
IR是 intermediate representation的缩写,顾名思义是中间表示的的缩写。中间表示已经被越来越多的编译器所采用,传统的编译器多采用汇编语言作为自己的中间语言,而现在大一些的编译器都有了自己专属的中间表示。LLVM IR的官方文档地址: http://llvm.org/docs/LangRef.html
简要介绍可参加我之前的博文: http://blog.csdn.net/snsn1984/article/details/8037414
LLVM IR是整个LLVM框架中极其重要的一部分,一般与LLVM相关的项目都无法避开LLVM IR这个部分,因为它是整个LLVM框架中的枢纽,所以LLVM IR的官方文档必须要完全熟悉。初学者做不到完全熟悉的,至少也应该读几遍,知道整个LLVM IR的大部分内容,细节的内容记不住的可以在使用的时候进行查找文档。
另外,应该可以使用clang去获取一个程序的.ll格式和.bc格式的IR文件,并且能够让这两种格式的文件进行相互转换。
相关知识补充:如果编译原理相关知识比较差的话,需要在这个环节补充一下编译原理的相关知识,至少要知道从源码到可执行文件中的每一个大的环节。同时,也需要去补充一下为什么编译器都采用中间表示,这对LLVM IR的学习,以及后续的学习都很有帮助。

----------------------------------------------------------转载请注明出处---------------------------------------------------------------------------
目录
相关文章
|
22天前
|
安全 Linux 虚拟化
|
3月前
|
Ubuntu Linux
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
897 3
|
1月前
|
Kubernetes Linux 测试技术
|
2月前
|
Linux 编译器 开发工具
快速在linux上配置python3.x的环境以及可能报错的解决方案(python其它版本可同样方式安装)
这篇文章介绍了在Linux系统上配置Python 3.x环境的步骤,包括安装系统依赖、下载和解压Python源码、编译安装、修改环境变量,以及常见安装错误的解决方案。
175 1
|
3月前
|
Linux 开发工具
Linux查看已经安装软件的版本,安装软件的路径,以及dpkg、aptitude、apt-get、apt工具的使用
Linux查看已经安装软件的版本,安装软件的路径,以及dpkg、aptitude、apt-get、apt工具的使用
145 2
Linux查看已经安装软件的版本,安装软件的路径,以及dpkg、aptitude、apt-get、apt工具的使用
|
1月前
|
Java Linux Maven
用sdkman在linux上管理多个java版本
本文介绍了如何在Linux上使用SDKMAN来管理多个Java版本,包括安装SDKMAN、验证安装、列出和安装不同版本的JDK、Maven和Gradle,以及如何切换使用不同版本。
58 0
|
2月前
|
安全 Linux API
关于Linux稳定版本的一切你想知道的内容 【ChatGPT】
关于Linux稳定版本的一切你想知道的内容 【ChatGPT】
|
2月前
|
Linux 编译器 C语言
Linux内核对GCC版本的检测
Linux内核对GCC版本的检测
|
3月前
|
Linux TensorFlow 算法框架/工具
在Linux上安装其他版本的cmake 或 升级cmake
在Linux上安装其他版本的cmake 或 升级cmake
108 2
|
3月前
|
Ubuntu Linux 虚拟化
安装Windows Linux 子系统的方法:适用于windows 11 版本
本文提供了在Windows 11系统上安装Linux子系统(WSL)的详细步骤,包括启用子系统和虚拟化功能、从Microsoft Store安装Linux发行版、设置WSL默认版本、安装WSL2补丁,以及完成Ubuntu的首次安装设置。
1007 2
下一篇
无影云桌面