当前位置: 首页 > news >正文

LLVM学习--外部项目

不包含核心LLVMClang存储库项目需要单独下载在本章中我们介绍各种其他官方LLVM项目介绍如何构建安装它们仅仅核心LLVM工具感兴趣读者可以跳过本章或者需要时候翻阅

在本章我们介绍以下项目安装方法

Clang外部工具

Compiler-RT

DragonEgg

LLVM测试套件

LLDB

libc++

除了本章设计项目之外还有两个本书范围之外官方LLVM项目Polly 以及lld(目前正在开发的LLVM链接器)

预构建二进制包不包含本章提及任何外部项目(Compiler-RT)因此上一不同我们仅仅介绍如何下载源代码自行构建它们

2.1 Clang外部项目介绍

LLVM最引人注目设计就是后端前段隔离两个独立的项目LLVM核心ClangLLVM开始时候LLVM中间表示中心一组工具并且依赖可自行修改GCC高级语言程序转换独有IR形式存储位码bitcode 文件中位码是一个术语模仿了java字节码命名Clang作为LLVm团队专门设街第一个LLVM项目一个重要里程碑有着LLVM核心相同代码质量清晰文档组织结构不仅可以CC++程序转换LLVM IR还可以作为灵活编译器驱动程序整个编译过程进行监督以便尽可能保持GCC兼容性

我们后面Clang程序而不驱动程序负责CC++程序转换LLVM IRClang 一大亮点可以用于编写强大工具比如C++代码重构工具源代码分析工具从而使C++程序员可以自由的研究C++热点问题Clang预包装一些工具可以帮助了解如何利用这些库

Clang Check 能够执行语法检查还能应用快速修复解决常见问题还可以转储任何程序内部Clang抽象语法AST表示

Clang Format 包含一个工具一个LibFormat不仅可以缩进代码还可以任何一部分C++代码格式化任何样式符合LLVM编码标准以及Google Chromium Mozilla或者Webkit样式指南

clang-tools-extra 存储库建立Clang智商多个应用程序集合能够读取大型C或者C++代码库执行各种代码重构分析我们下面列出这个一些工具但是不是全部

Clang Modernizer 是一个代码重构工具用于扫描C++代码更改旧样式结构符合比较新标准提出现代样式

Clang Tidy 是一个错误检查工具用于检查违反LLVM或者google 编码标准常见编程错误

Modularize 可以帮助识别适合组成模块C++头文件

PPTrace 是一个简单工具用于跟踪Clang C++处理器活动

相关文章:

  • 第二章 Python 数据结构入门详解
  • 378_Python_python修改.xls表格,不改变表格原有样式,仅仅修改指定行、列的单元格内容
  • 数仓开发那些事(10)
  • 【亚马逊云科技】大模型选型实战(挑选和测评对比最适合业务的大模型)
  • 实测 Gemini 2.0 Flash 图像生成:多模态 AI 的创作力边界
  • 如何打造企业 DevOps 文化
  • 【初学者】数据结构与算法关系解析
  • 【杂记一】虚拟环境以及项目依赖
  • 一个成功的Git分支模型
  • 深入了解Python的shutil模块
  • 流量层级、流量价格、流量速度如何突破?
  • 基于51单片机和LCD12864、DS3231、独立按键的万年历可调时钟+温度显示
  • 和鲸科技受邀赴中国气象局气象干部培训学院湖南分院开展 DeepSeek 趋势下的人工智能技术应用专题培训
  • 【Java】grpc-java在IDEA中build不成功的相关问题,Android,codegen C++语言排除
  • LeetCode135☞分糖果
  • 【每日论文】Rewards Are Enough for Fast Photo-Realistic Text-to-image Generation
  • 实现前端.ttf字体包的压缩
  • 日程提醒类软件选择用哪个?理由是什么?
  • error LNK2019: 无法解析的外部符号 main,函数 “int __cdecl invoke_main(void)“
  • 信创系统极速文件查找:locate 命令详解
  • 公募基金行业迎系统性变革:基金公司业绩差必须少收费
  • 外交部发言人就当前印巴局势答记者问
  • 我国科研团队发布第四代量子计算测控系统
  • 柳向春:关于美国国会图书馆所藏《全芳备祖》的一些故事
  • 南京明孝陵石兽遭涂鸦“到此一游”,景区:已恢复原貌,警方在排查
  • 最会说亚军感言的鲁德,站上了马德里公开赛的冠军领奖台