【FCon上海】与行业领袖共话AI大模型、数字化风控等前沿技术。 了解详情
写点什么

LLVM 3.3 完全兼容 C++11

  • 2013-07-01
  • 本文字数:779 字

    阅读完需:约 3 分钟

AI 大模型超全落地场景&金融应用实践,8 月 16 - 19 日 FCon x AICon 大会联诀来袭、干货翻倍!

最近发布的 LLVM 3.3 带来了大量新特性,其中包括通过 Clang 子项目实现的完全兼容 C++11 的编译器。最重要的新特性是支持一些新的 CPU 架构,包括 AArch64(64 位 ARM)、 AMD 的 R600 GPU 和 IBM 的 z/Architecture(s390x),再就是改进了对 MIPS 和 PowerPC 的支持。

LLVM 有两种向量识别器(vectorizer):循环向量识别器和新增的 SLP 向量识别器。在 3.3 版本中,得益于一些改进,循环向量识别器能够生成更好的代码,在使用–O3 标记时会默认启用该特性。新添加的特性包括指针的运行时检查、反向迭代器和 If 转换。SLP(superword-level parallelism)向量识别器可以将“类似的独立指令合并为向量指令”。SLP 向量识别器通过“-fslp-vectorize”标记启用。

Dragon Egg 是 LLVM 的子项目,它将 LLVM 技术带向了 GCC。DragonEgg 将 GCC 的优化器和代码生成器替换成了 LLVM 的。在 3.3 版本中还有一些值得注意的改进,如支持 gcc-4.8.1 及更高版本,提供了更好的调试信息等。LLDB(Low Level Debugger)添加了一些 Linux 特性:

  • 支持观察点
  • 通过一个 vim 插件,在 vim 中集成了 lldb 命令和程序状态
  • 改进了寄存器支持,其中包括向量寄存器
  • 可以使用 make/ninja/auto-tools/clang 3.3/gcc 4.6 构建

使用 C++11 的开发者,或考虑将 C++11 应用于现有项目的开发者,可以研究一下 LLVM 的 C++11 迁移工具——cpp11-migrate。按照 LLVM 博客上的说法,“C++11 迁移程序的意图是通过从源代码到源代码的翻译,将现有的 C++ 代码迁移为使用 C++11 特性的代码,以增强可维护性、可读性、运行时性能和编译时性能。”

LLVM 3.3 以多种格式发布,其中包括源代码和预先构建好的二进制包。Linux、FreeBSD 和 Mac OS X 用户可以直接从项目网站下载安装程序。作为选择,也可以检查操作系统发行包,或从源代码编译。LLVM 团队提供了详细的编译说明

查看英文原文: LLVM 3.3 Achieves Full C++11 Compliance

2013-07-01 10:542055
用户头像
臧秀涛 略懂技术的运营同学。

发布了 300 篇内容, 共 131.7 次阅读, 收获喜欢 34 次。

关注

评论

发布
暂无评论
发现更多内容

OpenHarmony设备截屏的5种方式

OpenHarmony开发者

OpenHarmony

软件测试 | 人工智能的广泛应用领域有哪些?

测吧(北京)科技有限公司

测试

一文讲透 JavaScript 应用的演进历程

高端章鱼哥

JavaScript 软件开发 #web

小灯塔系列-中小企业数字化转型系列研究——表单管理测评报告

向量智库

OpenHarmony组件复用示例

OpenHarmony开发者

OpenHarmony

Karmada 结合 coreDNS 插件实现跨集群统一域名访问

华为云开发者联盟

云原生 后端 华为云 华为云开发者联盟 企业号 8 月 PK 榜

软件测试/测试开发丨Selenium 高级定位 CSS

测试人

CSS Python 程序员 软件测试 selenium

延时摄影视频制作软件LRTimelapse mac中文激活版v6.5.0

mac

苹果mac Windows软件下载 lrTimelapse 延时摄影视频制作软件

软件测试 | 人工智能的背景与发展历程

测吧(北京)科技有限公司

测试

性能专家深度解读:常见的压测模型

优测云服务平台

性能测试 压力测试 云平台 性能瓶颈 云平台技术

通过AOP拦截Spring Boot日志并将其存入数据库

华为云开发者联盟

数据库 开发 华为云 华为云开发者联盟 企业号 8 月 PK 榜

技术看点:基于多副本的IO负载均衡思考

鹏云网络

负载均衡 分布式系统 #分布式存储

一文让你简单知道银行建设堡垒机的意义

行云管家

网络安全 银行 堡垒机

为什么 Higress 是 Knative 入口网关的最佳实践?

阿里巴巴云原生

阿里云 云原生 Higress

大数据平台数据安全解决方案就看行云管家!

行云管家

大数据 数据安全 大数据平台

【收藏】制作艺术二维码,用 Stable Diffusion 就行!

阿里巴巴云原生

阿里云 云原生 Stable Diffusion Stable

JavaScript原型链污染

互联网工科生

JavaScript 前端 js

软件测试 | 人工智能的引领,医疗的未来

测吧(北京)科技有限公司

测试

华为云新生代开发者招募

华为云PaaS服务小智

开发者 有奖活动 华为云

直播预约丨《实时湖仓实践五讲》第一讲:企业为什么需要实时湖仓?

袋鼠云数栈

直播 实时湖仓

NFT沙盒游戏开发搭建

V\TG【ch3nguang】

NFT数字藏品系统

基于飞桨图学习框架的空间异配性感知图神经网络

飞桨PaddlePaddle

人工智能 百度飞桨

文心一言 VS 讯飞星火 VS chatgpt (83)-- 算法导论8.1 4题

福大大架构师每日一题

福大大架构师每日一题

创新医疗:人工智能引领健康未来

测吧(北京)科技有限公司

测试

LLVM 3.3完全兼容C++11_语言 & 开发_Jeff Martin_InfoQ精选文章