LLVM 是 Low Level Virtual Machine (低级虚拟机)的简称,这个库提供了与编译器相关的支持,可以作为多种语言编译器的后台来使用。能够进行程序语言的编译期优化、链接优化、在线编译优化、代码生成。LLVM的项目是一个模块化和可重复使用的编译器和工具技术的集合。LLVM是伊利诺伊大学的一个研究项目,提供一个现代化的,基于SSA的编译策略能够同时支持静态和动态的任意编程语言的编译目标。自那时以来,已经成长为LLVM的主干项目,由不同的子项目组成,其中许多正在生产中使用的各种商业和开源的项目,以及被广泛用于学术研究。

LLVM 是 Illinois 大学发起的一个开源项目,和之前为大家所熟知的JVM 以及 .net Runtime这样的虚拟机不同,这个虚拟系统提供了一套中立的中间代码和编译基础设施,并围绕这些设施提供了一套全新的编译策略(使得优化能够在编译、连接、运行环境执行过程中,以及安装之后以有效的方式进行)和其他一些非常有意思的功能。

对于普通的开发人员来说,LLVM计划提供了越来越多的可以使用、编译器以外的其他工具。例如代码静态检查工具 LLVM/Clang Static Analyzer,是一个 Clang 的子项目,能够使用同样的 Makefile 生成 HTML 格式的分析报告。

更多LLVM的资讯:

linux编译器项目,编译器架构 LLVM相关推荐

  1. 详解三大编译器:gcc、llvm 和 clang

    传统的编译器通常分为三个部分,前端(frontEnd),优化器(Optimizer)和后端(backEnd). 编译器一般构成 传统的编译器通常分为三个部分,前端(frontEnd),优化器(Opti ...

  2. linux怎么运行g77,Linux安装g77编译器的技巧

    在Ubuntu10.10系统中,g77已经被gfortran完全替代了,但并不能完全兼容过去的g77,这样就不能使用一些用977编译的程序了.所以我们只能自己再安装g77了.今天华军小编给大家展示的是 ...

  3. linux中python编译器的配置_PyCharm配置虚拟编译环境(windows/linux通用版)

    无论哪一个虚拟环境都需要依靠python官方的包(python2.×/python3.×),所以第一件事情就是要安装一个python包,主要途径如下:安装anaconda,目前最方便的python环境 ...

  4. 原来linux自带编译器啊!!!

    一说到编译器就不知不觉想起,编译器与编辑器差别,,,, 编辑器就是像文本文件一样的,写东西,保存,删除,等等. 编译器就是像VC,GCC一样能把代码编译成可执行文件. 这几天一直以为UBUNTU(li ...

  5. Redhat linux 安装 gcc编译器,Gcc源码包,rpm包安装方法!

    点评:分两种情况: 先看这篇转过来的文章,俺老孙懒得写了. Linux软件安装通用思路 在Linux系统中,软件安装程序比较纷繁复杂,不过最常见的有两种: 1)一种是软件的源代码,您需要自己动手编译它 ...

  6. linux编译freebsd,freebsd下作x86/arm linux的交叉编译器

    freebsd下作x86/arm linux的交叉编译器 2009-05-13 01:40:08来源:未知 阅读 () 以纯粹的源码编译交叉编译器,还是头一遭.以往都是利用目标主机上的头文件和库文件作 ...

  7. linux g 编译目录下,你真的了解Linux下gcc编译器的工作过程吗?

    小豆丁:老张!老张! 老张:干嘛? 小豆丁:咋啦?愁眉苦脸的,是不是又被媳妇给揍了? 老张:开玩笑,我在家那就是相当于老虎的存在,谁敢揍我! 媳妇:老张,你说啥?我没听清,你再说一遍? 老张:我是老虎 ...

  8. Linux运维企业架构项目实战系列

    Linux运维企业架构项目实战系列 目录 一.全网备份 (一)部署Rsync守护进程 1)服务端(backup) 2)客户端(web01/02/03 nfs01) (二)编写脚本文件 1)客户端脚本编 ...

  9. 如何把antlr4融合到编译器项目中使用

    antlr4是什么? antlr4是一个开源的词法.语法分析程序生成器,仅需要配置词法和语法规则,即可自动生成语言编译器所需的词法.语法分析程序. 问题:antlr4官方给出了jar包,可以命令行运行 ...

最新文章

  1. 深度学习之PyTorch物体检测
  2. C++ 打造自己的Windows终端服务客户端(转)
  3. ASP.NET学习笔记(9)--SqlDataReader和SqlDataSet的比较
  4. 如何使用CSS为文本或图像提供透明背景?
  5. POJ1061 青蛙的约会(扩展欧几里得)题解
  6. ]flume高并发优化——(1)load_balance
  7. 干货 | 各大AI研究院共35场NLP算法岗面经奉上
  8. Web全栈工程师基本素养
  9. 配置svn忽略 node_modules等文件
  10. nginx代理、白名单过滤、双域名备案代理
  11. 什么是支付通道,一篇文章了解支付通道理念
  12. 黑马程序员pink老师前端入门教程,零基础必看的h5(html5)+css3+移动端前端视频教程(HTML)
  13. Tensorflow学习之tf.keras(一) tf.keras.layers.BatchNormalization
  14. 视觉镜头上的闪回画面
  15. python遍历列表易出错!!!!!
  16. 华为计算机魔术,华为荣耀magic给大家变了一个魔术,想“拆穿”他吗?
  17. 地铁出行规划项目分析
  18. 中国最美情诗100句
  19. C305例会-电脑攒机
  20. 【游戏介绍】aiwi体感balance

热门文章

  1. vue自定义组件,插槽,自定义事件
  2. leetcode 102 C++AC
  3. java深度克隆大数据_Java - 深拷贝技巧
  4. python NoSuchElementException异常处理
  5. node.js Error: connect EMFILE 或者 getaddrinfo ENOTFOUND
  6. 年轻的工程师如何月入伍万XD
  7. 使用SqlCommandBuilder
  8. (JavaScript)实现在客户端动态改变Treeview节点的选中状态
  9. leetcode之回溯backtracing专题3
  10. [Leedcode][JAVA][第837题][新21点][动态规划][数学]