热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

WWDC2010Session312LLVMCompiler的新特性

LLVM(LowLevelVirtualMachine)是新的compiler环境,用C编写。LLVMproject在UniversityofIllinoisatUr

LLVM(Low Level Virtual Machine)是新的compiler环境,用C++编写。LLVM project在University of Illinois at Urbana-Champaign大学的Vikram Adve和Chris Lattner的领导下,开始于2000年。当时,Lattner作为助教和硕士生刚刚加入此大学。后来在2005年,Lattner受雇于Apple。

Compiler Landscape

目前的三个编译器的架构:

3 compilers

Xcode 3.2.3中的LLVM Compiler并不支持C++。你只能使用LLVM-GCC。现在Xcode 4中的LLVM Compiler 2.0 已经完全支持C++。这就是为什么Xcode4的默认compiler是LLVM Compiler。不建议大家采用GCC 4.2,因为Apple因为不再fix GCC的bug了。

iOS4中的WebKit, JavascriptCore, OpenSSL都是使用LLVM编译的。性能提升:Open SSL 28%, JavascriptCore 11%。

LLVM Compiler

1. 编译快 - Debug builds大约是以前的3倍。

2. 更易使用

3. 优美而有意义的错误信息

Clang Frontend是C家族编程语言的解析器,可用于C, Objective-C, C++.

Clang 被好几个工具所用到: LLVM Compiler, Xcode Static Analyzer, Xcode 4, LLDB Debugger, OpenCL. Clang 被集成到了Xcode 4中完成下列功能:source code indexing, syntax highlighting, code completion, live warnings and Fix-its.
Xcode Static Analyzer通过分析静态代码,自动发现bug(并非编译时)。

LLVM Compiler 2 C++的好处

1. 更快的编译速度

2. 优美而有意义的错误信息

3. 二进制完全兼容

4. 更好的遵守C++标准

5. 支持Objective-C++

性能C++编译性能: 快25%C++内存消耗: 少33%
将来的C++ '0x Standard

将会提供libc++来支持新的C++ standard.

libc++: A New C++ Standard library

我认为每个用Xcode的程序员都应该使用LLVM。

WWDC2010 Session312 What's New in the LLVM Compiler

Author: Chris Lattner - LLVM Chief Architect


转:https://www.cnblogs.com/vinceoniphone/archive/2011/04/05/2006088.html



推荐阅读
author-avatar
石pimentel_958
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有