×

LLVM终身程序分析与转换的编译框架的详细资料说明

消耗积分:1 | 格式:pdf | 大小:0.20 MB | 2020-06-07

3616

分享资料个

  本文描述了LLVM(Low Level Virtual Machine)编译器框架,它通过在编译时、链接时、运行时和运行之间的空闲时间向编译器转换提供高级信息,支持对任意程序进行透明的、终身的程序分析和转换。LLVM以静态单赋值(SSA)的形式定义了一个通用的、低级的代码表示,它有几个新的特性:一个简单的、独立于语言的类型系统,它公开了常用于实现高级语言特性的原语;一个用于类型化地址算术的指令;以及一个简单的机制,可以用来统一高效地实现高级语言(以及C语言中的setjmp/longjmp)的异常处理特性。LLVM编译器框架和代码表示一起提供了一些关键功能的组合,这些功能对于实际的、终身的程序分析和转换非常重要。据我们所知,没有任何现有的编译方法提供所有这些功能。我们描述了LLVM表示和编译器框架的设计,并从三个方面对设计进行了评估:(a)表示的大小和有效性,包括它提供的类型信息;(b)针对几个过程间问题的编译器性能;以及(c)LLVM为几个具有挑战性的编译器问题提供的好处的示例。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !