zl程序教程

您现在的位置是:首页 >  其它

当前栏目

LLVM每日谈之十 LLVM Test简介

简介 每日 test LLVM
2023-09-27 14:26:37 时间
作者:snsn1984 就像很多优秀的软件都有自己的测试框架一样,LLVM也有自己的测试框架。LLVM的测试主要分为两 部分:regression tests 和 whole programs。

作者:snsn1984

就像很多优秀的软件都有自己的测试框架一样,LLVM也有自己的测试框架。LLVM的测试主要分为两

部分:regression tests 和 whole programs。其中,regression tests主要位于LLVM源码/test目录下,主要是
用来测试LLVM的一些特性或者是用来测试一些bug的。我们在平时的工作中,一般使用的就是这个类型的test。
whole programs这个类型的测试,不在LLVM的源码中,在SVN库上有自己的单独目录,一般称之为test-suit,
它的测试范围要广的多,因为我们目前这里不涉及,所以这里不做过多介绍。
        运行regression tests的方法比较简单,但是必须有已经编译好的LLVM源码。在build目录下,运行make check,
这样就可以运行所有的LLVM源码/test目录下的regression tests。如果已经编译好的LLVM源码下还包含了Clang,也
就是说在编译LLVM之前,已经将Clang的远方放置到LLVM源码/tools目录下了,那么在编译成功之后,就可以使用
make check-all,这样可以运行LLVM和Clang的所有的regression tests。
        如果需要运行单个的测试用例,可以使用llvm-lit工具。直接使用llvm-lit工具,后面跟上测试用例的位置和名字,

就可以单独运行这个测试。或者在llvm-lit后面跟上一个测试目录,llvm-lit可以运行这个目录下的所有测试用例。

如果在运行llvm-lit的三个时候碰到了bash: ./llvm-lit: Permission denied 这个错误,那么可以使用$ chmod +x llvm-lit命令。

LLVM官方介绍测试的文档:http://llvm.org/docs/TestingGuide.html

LLVM官方介绍lit的文档:http://llvm.org/docs/CommandGuide/lit.html




---------------------------------------------------转载请注明出处----------------------------------------------------------------------------


LLVM编译器前端 Clang 简介 昨天晚上安装rails的开发环境,被ruby的编译搞的有点崩溃。下载的ruby的源码不能用系统自带的gcc -4.21编译,也不能用系统自带的clang进行编译,必须下载并使用gcc -4.2进行编译才能通过。今天稍微看看编译器的一些背景。
带你读《LLVM编译器实战教程》之一:构建和安装LLVM 本书的前半部分将向您介绍怎么样去配置、构建、和安装LLVM的不同软件库、工具和外部项目。接下来,本书的后半部分将向您介绍LLVM的各种设计细节,并逐步地讲解LLVM的各个编译步骤:前段、中间表示(IR)、后端、即时编译(JIT)引擎、跨平台编译和插件接口。本书包含有大量翔实的示例和代码片段,以帮助读者平稳顺利的掌握LLVM的编译器开发环境。
深入研究Clang(十) Clang Static Analyzer简介 Clang Static Analyzer 官网地址:http://clang-analyzer.llvm.org/ Clang Static Analyer是一个源码分析工具,它可以发现C、C++和Objective-C程序中的bug。
LLVM每日谈之二十三 LLVM/Clang编译Linux内核资料 作者:史宁宁(snsn1984) 之前有朋友问到这个问题,是否有使用LLVM/Clang编译Linux内核的,随手找了一些相关资料,在这里贴出来,与大家共享。 网址:http://llvm.
LLVM是什么?这是一个虽然基础,但是也曾经让很多新入门的人迷惑的一个问题。从字面上来讲,LLVM(Low Level Virtual Machine)是一个底层虚拟机,LLVM曾经有一部分功能对虚拟机有所帮助。
LLVM每日谈之二十一 一些关于编译器和LLVM/Clang的代码 作者:史宁宁(snsn1984) 自己收集了一些LLVM/Clang的代码,并且自己也在一点一点的写一些LLVM/Clang以及编译器的代码,在这里把这些代码库分享出来,欢迎大家交流探讨。
LLVM每日谈之十九 LLVM的第一本系统的书 Getting Started with LLVM Core Libraries 作者:史宁宁(snsn1984) LLVM终于有了一本系统的书了——《Getting Started with LLVM Core Libraries》。这本书号称是LLVM的第一本书,但是据说日本早就有两本日文的关于LLVM的书,这个了解的不多。
        之前一直关注LLVM和基于LLVM的工程(工具)多一些,对Clang和基于Clang的工具关注不是很多。这就导致了一个很严重的问题,觉的如果要深入理解Clang就必须要去读Clang的源码,这个想法不是不对,但是这不是唯一的路,而且Clang的源码太多,容易让人无法坚持下去,也容易让人无从下手。
snsn1984 多年研发和团队管理经验,熟悉LLVM、GPU等技术领域,具备公司层面技术管理能力。