没有合适的资源?快使用搜索试试~ 我知道了~
首页LLVM Tutorial.ppt
LLVM Tutorial.ppt
4星 · 超过85%的资源 需积分: 9 100 下载量 96 浏览量
更新于2023-03-16
评论
收藏 454KB PPT 举报
学习编译器开发,尤其后端中间代码生成和生成目标机器码,借助LLVM可以非常容易地实现一个编译器,强烈推荐此教程!
资源详情
资源评论
资源推荐
The LLVM Compiler
The LLVM Compiler
Framework and
Framework and
Infrastructure
Infrastructure
Vikram Adve
Vikram Adve
vadve@cs.uiuc.e
vadve@cs.uiuc.e
du
du
Chris Lattner
Chris Lattner
lattner@cs.uiuc.e
lattner@cs.uiuc.e
du
du
http://llv m. cs . uiuc.edu/
http://llv m. cs . uiuc.edu/
LCPC Tutorial: September 22, 2004
LCPC Tutorial: September 22, 2004
Chris Lattner – lattner@cs.uiuc.edu
http://llvm.cs.uiuc.e
du/
Acknowledgements
Acknowledgements
UIUC Contributors:
UIUC Contributors:
Tanya Brethour
Tanya Brethour
Misha Brukman
Misha Brukman
Cameron Buschardt
Cameron Buschardt
John Criswell
John Criswell
Alkis Evlogimenos
Alkis Evlogimenos
Brian Gaeke
Brian Gaeke
Ruchira Sasanka
Ruchira Sasanka
Anand Shukla
Anand Shukla
Bill Wendling
Bill Wendling
External Contributors:
External Contributors:
Henrik Bach
Henrik Bach
Nate Begeman
Nate Begeman
Jeff Cohen
Jeff Cohen
Paolo Invernizzi
Paolo Invernizzi
Brad Jones
Brad Jones
Vladimir Merzliakov
Vladimir Merzliakov
Vladimir Prus
Vladimir Prus
Reid Spencer
Reid Spencer
Funding:
Funding:
This work is sponsored by the NSF Next Generation Software program through
This work is sponsored by the NSF Next Generation Software program through
grants EIA-0093426 (an NSF CAREER award) and EIA-0103756. It is also supported
grants EIA-0093426 (an NSF CAREER award) and EIA-0103756. It is also supported
in part by the NSF Operating Systems and Compilers program (grant #CCR-
in part by the NSF Operating Systems and Compilers program (grant #CCR-
9988482), the NSF Embedded Systems program (grant #CCR-0209202), the
9988482), the NSF Embedded Systems program (grant #CCR-0209202), the
MARCO/DARPA Gigascale Systems Research Center (GSRC), IBM through the
MARCO/DARPA Gigascale Systems Research Center (GSRC), IBM through the
DARPA-funded PERCS project, and the Motorola University Partnerships in
DARPA-funded PERCS project, and the Motorola University Partnerships in
Research program.
Research program.
Chris Lattner – lattner@cs.uiuc.edu
http://llvm.cs.uiuc.e
du/
LLVM Compiler System
LLVM Compiler System
The LLVM Compiler Infrastructure
The LLVM Compiler Infrastructure
Provides reusable components for building compilers
Provides reusable components for building compilers
Reduce the time/cost to build a new compiler
Reduce the time/cost to build a new compiler
Build static compilers, JITs, trace-based optimizers, ...
Build static compilers, JITs, trace-based optimizers, ...
The LLVM Compiler Framework
The LLVM Compiler Framework
End-to-end compilers using the LLVM infrastructure
End-to-end compilers using the LLVM infrastructure
C and C++ are robust and aggressive:
C and C++ are robust and aggressive:
Java, Scheme and others are in development
Java, Scheme and others are in development
Emit C code or native code for X86, Sparc, PowerPC
Emit C code or native code for X86, Sparc, PowerPC
Chris Lattner – lattner@cs.uiuc.edu
http://llvm.cs.uiuc.e
du/
Three primary LLVM components
Three primary LLVM components
The LLVM
The LLVM
Virtual Instruction Set
Virtual Instruction Set
The common language- and target-independent IR
The common language- and target-independent IR
Internal (IR) and external (persistent) representation
Internal (IR) and external (persistent) representation
A collection of well-integrated libraries
A collection of well-integrated libraries
Analyses, optimizations, code generators, JIT
Analyses, optimizations, code generators, JIT
compiler, garbage collection support, profiling, …
compiler, garbage collection support, profiling, …
A collection of tools built from the libraries
A collection of tools built from the libraries
Assemblers, automatic debugger, linker, code
Assemblers, automatic debugger, linker, code
generator, compiler driver, modular optimizer, …
generator, compiler driver, modular optimizer, …
Chris Lattner – lattner@cs.uiuc.edu
http://llvm.cs.uiuc.e
du/
Tutorial Overview
Tutorial Overview
Introduction to the running example
Introduction to the running example
LLVM C/C++ Compiler Overview
LLVM C/C++ Compiler Overview
High-level view of an example LLVM compiler
High-level view of an example LLVM compiler
The LLVM Virtual Instruction Set
The LLVM Virtual Instruction Set
IR overview and type-system
IR overview and type-system
LLVM C++ IR and important API’s
LLVM C++ IR and important API’s
Basics, PassManager, dataflow, ArgPromotion
Basics, PassManager, dataflow, ArgPromotion
Important LLVM Tools
Important LLVM Tools
opt, code generator, JIT, test suite, bugpoint
opt, code generator, JIT, test suite, bugpoint
Example applications of LLVM
Example applications of LLVM
剩余60页未读,继续阅读
houcy
- 粉丝: 1
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
- SPC统计方法基础知识.pptx
- MW全能培训汽轮机调节保安系统PPT教学课件.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论4