python html5 bootstrap 视频教程

德云社区

 找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

数字 IDE 网页 ── \"所见即所得\" 编写 HTML4、HTML5 静态 \"网站站群\" 动态网站,生成 Robots、站点地图,死链检测,强大文本编辑器功能。。。集成中英自动 TTS 文本诵读功能。。。
数字 IDE Python ── 支持 \"极速编写-重构\" Python、Django、HTML5、XML、C/C++、Java、Perl、PHP、Ruby、C#、VB .Net 等程序源代码。。。集成了很多常用编程智能辅助工具。。。
业务范围:
01、企业 \"内部 | 外部\" 数据管理、分析、挖据
02、企业效率优化专用 APP 程序定制、IT 外包
03、智能数字化系统平台架设、开发、部署、维护
04、高仿真、低成本,可动画-可 VR 数字样机建模、开发、规划
05、企业 Linux 云计算 \"IaaS | SaaS\" 服务器架设、开发、部署、维护
06、\"标准 | 非标\" 设备全流程研发,PLC、单片机、工控系统开发、集成
07、企业 Linux / Windows 平台 PLM、ERP 系统架设、开发、部署、维护
08、企业 Linux / Windows 平台 \"内网 | 外网\" 服务器架设、开发、部署、维护
09、企业微信公众号智能互动营销、策划,Web 网站代码、SEO 排名优化,大数据网络推广
10、企业跨平台、跨硬件、跨浏览器 HTML5 Web 电子商务平台、\"静态 | 动态\" 网站开发、部署、维护
11、企业文档、资料、公司网页多语种翻译,数据资料标准化、版本化、数字化管理的规划、研发、实施
数字翻译 ── 能 \"批量翻译\" 文档 GUI 用户界面。。。网页浏览 批处理 全文搜索 全文替换 全文删除 全文插入 数据比较 。。。集成中英自动 TTS 文本诵读功能。。。
查看: 744|回复: 0

LLVM ── 以C++编写Apple支持的compiler编译器框架系统

[复制链接]

155

主题

157

帖子

952

积分

高级技师

Rank: 4

金钱
595
金币
19
威望
0
贡献
0
发表于 2017-5-1 11:30:33 | 显示全部楼层 |阅读模式
|          
LLVM ── 以C++编写Apple支持的compiler编译器框架系统

LLVM 是构架编译器 (compiler) 的框架系统,以C++编写而成,用于优化以任意程序语言编写的程序的编译时间 (compile-time)、链接时间 (link-time)、运行时间 (run-time) 及空闲时间 (idle-time)。


Apple 是 LLVM 计划的主要资助者,LLVM 也相当于是由 Apple 官方支持的编译器。


LLVM 的命名源于底层虚拟机 Low Level Virtual Machine,目前 LLVM 是该项目的全称。LLVM 项目是一个模块化和可重复使用的编译器和工具技术的集合。LLVM 提供了一个现代化的,基于 SSA 的编译策略,能同时支持任意编程语言的静态、动态编译目标。


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


LLVM 对开发者保持开放,并兼容已有脚本。LLVM 核心库提供了与编译器相关的支持,可作为多种语言编译器的后台来使用。LLVM 能进行程序语言的编译期优化、链接优化、在线编译优化、代码生成。


LLVM 项目提供了越来越多的可以使用的、编译器以外的其他工具。譬如:代码静态检查工具 LLVM/Clang Static Analyzer,这是 Clang 的一个子项目,能使用同样的 Makefile 生成 HTML 格式的分析报告。


2000 年,LLVM 计划最初由 University of Illinois at Urbana-Champaign (伊利诺伊大学香槟分校) 的 Chris Lattner 主持开展。


2006 年 Chris Lattner 加盟 Apple Inc。并致力于 LLVM 在 Apple 开发体系中的应用。Apple 将 LLVM 用于 OpenCL 流水线优化,Xcode 使用 llvm-gcc 编译代码。


2011 年12 年 02 日 LLVM 3.0 发布,LLVM 包括了一系列子项目,如 C/C++/Objective-C 前端 Clang 3.0 改进了C++程序编译支持;改进 C++ 2011 标准支持;实现支持即将发布的 C1x 标准的某些特性;更快的生成代码,更快的编译等。


2012年 LLVM 荣获 ACM 软件系统奖。


MicroSoft Windows 上可用 Mingw 编译 LLVM,或用 MicroSoft Visual Studio 编译 LLVM。


Linux上可用 GCC 编译 LLVM,或以 Clang 编译 LLVM。


Mac OS X 上 XCode 自带 LLVM。


timg.jpg


主要特性

01、现代化设计

LLVM 设计是高度模块化的,使得其代码更为清晰,更便于排查问题所在。


02、 语言无关的中间代码

LLVM 和大家所熟知的 JVM、.net Runtime 虚拟机不同,LLVM 虚拟系统提供了一套中立的中间代码和编译基础设施,并围绕这些设施提供了一套全新的编译策略。


这使得透过 LLVM 能将不同的语言相互连结起来,也使得 LLVM 能够紧密地与 IDE 交互和集成。


另一方面,发布中间代码而非目标代码,能在目标系统上更好地发挥其潜能而又不伤害可调试性;譬如:在目标系统上针对本机的硬件环境产生目标代码,但又能够直接通过中间代码来进行行级调试。


03、作为工具和函数库

使用 LLVM 提供的工具,可比较容易地实现新编程语言的优化编译器或 VM,或为现有编程语言引入一些更好的优化、调试特性。


版本历史
时间
版本
说明
备注
2003 年 10 月 24 日LLVM 1.0首次发布
2007 年 05 月 23 日LLVM 2.0
2009 年 10 月 23 日LLVM 2.6
首次包含 Clang
2011 年 12 月 02 日LLVM 3.0全新寄存器分配器,大幅性能提升;完全支持 C++ 内存模型中的全新原子操作;改进 MIPS 后端;支持 gprof/gcov 风格的 profile 信息。
2012 年 05 月 22 日LLVM 3.1用于检测内存错误的新 Address Sanitizer 工具新增 ARM 集成汇编工具
2015 年 05月 26 日LLVM 3.6大量 bug 修复,优化改进,Clang 支持更多被提议的 C++1z 功能,更好的原生 Windows 兼容性,本地对象文件中嵌入 LLVM IR 等绑定 Go 语言
2015 年 09 月 02 日LLVM 3.7
完全支持 OpenMP 3.1(behind a flag),the On Request Compilation (ORC) JIT API,一个全新后端用于 Berkeley Packet Filter (BPF)、Control Flow Integrity 检查,新 Clang 警告
2017 年 03 月 13 日LLVM 4.0

长按二维码关注 "德云社区" ,点击最下方 "阅读原文" 了解更多资讯

版权声明:
本文为独家原创稿件,版权归 德云社区,未经许可不得转载;否则,将追究其法律责任。

AI人工智能 语音助理 人工翻译 教程
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|Sitemap|手机版|小黑屋| |网站地图  

GMT+8, 2018-10-19 20:32 , Processed in 0.052570 second(s), 34 queries .

技术支持 乐数软件  版权所有 © 2014-2019 德云社区

工业和信息化部:粤ICP备14079481号-2

快速回复 返回顶部 返回列表