[置顶] LLVM每日谈之二十四 Google的ClangMR

ClangMR的论文《Large-Scale Automated Refactoring Using ClangMR》:http://www.hyrumwright.org/papers/icsm2013.pdfClangMR是Goolge的一个工具,严格的说,并不属于Clang家族,是属于基于Clang所构建的一个工具。Google秉承他们一贯的原则,在构建该工具并投入使用之后,将该工具的情况发...
阅读(768) 评论(0)

[置顶] 深入研究Clang(十) Clang Static Analyzer简介

Clang Static Analyzer 官网地址:http://clang-analyzer.llvm.org/Clang Static Analyer是一个源码分析工具,它可以发现C、C++和Objective-C程序中的bug。现在Clang Static Analyer既可以作为一个单独的工具使用,也可以集成在Xcode中使用。作为单独的工具使用的时候,可以通过命令行调用,作为一个代码库...
阅读(1057) 评论(0)

LLVM官方文档翻译---- LLVM原子指令与并发指引

英文原文地址:http://llvm.org/docs/Atomics.html译文原文地址:http://blog.csdn.net/wuhui_gdnt/article/details/52485591注:该文章转载已经得到译者授权。---------------------------------------------------------------------------------...
阅读(838) 评论(0)

Devirtualization in LLVM and Clang

Devirtualization in LLVM and ClangThis blog post is part of a series of blog posts from students who were funded by the LLVM Foundation to attend the 2016 LLVM Developers' Meeting in San Jose, CA. Ple...
阅读(423) 评论(0)

LLVM每日谈之二十三 LLVM/Clang编译Linux内核资料

作者:史宁宁(snsn1984)之前有朋友问到这个问题,是否有使用LLVM/Clang编译Linux内核的,随手找了一些相关资料,在这里贴出来,与大家共享。网址:http://llvm.linuxfoundation.org项目简介:LLVMLinux Project OverviewThis project aims to fully build the Linux kernel using C...
阅读(1221) 评论(0)

Generate C interface from C++ source code using Clang libtooling

原文地址Generate C interface from C++ source code using Clang libtoolingDec 6, 2016 · 24 minute read · Comments clangllvmCC++I developed a concurrent user-thread library using C++, and was looking for a w...
阅读(483) 评论(0)

深入研究Clang(九) Clang代码阅读之打log读流程2

继续上一篇,同样的hello.c,同样的执行过程,只不过继续添加了一些log信息,而且对代码进行了更近一步的挖掘。先看输入和输出的log信息(前半部分):shining@shining-VirtualBox:~/llvm-3.9.0/build/bin$ ./clang hello.c -o hello clang/tools/driver/driver.cpp/main()_begin/shin...
阅读(1285) 评论(0)

深入研究Clang(八) Clang代码阅读之打log读流程1

#includeint main() {  printf("Hello world!\n");}#include "llvm/Support/raw_ostream.h"    llvm::errs() //shining add begin#include "llvm/Support/raw_ostream.h"//shining add end  //shining add begin  ll...
阅读(865) 评论(0)

深入研究Clang(七) Clang Lexer代码阅读笔记之Lexer

作者:史宁宁(snsn1984)源码位置:clang/lib/Lexer.cpp源码网络地址:http://clang.llvm.org/doxygen/Lexer_8cpp_source.htmlLexer.cpp这个文件,是Clang这个前端的词法分析器的主要文件,它的内容是对Lexer这个类的具体实现,原文件的注释中:“This file implements the Lexer and T...
阅读(2724) 评论(9)

《深入理解LLVM》第一章 LLVM简介

第一章 LLVM简介作者:史宁宁1.1 LLVM是什么LLVM是什么?这是一个虽然基础,但是也曾经让很多新入门的人迷惑的一个问题。从字面上来讲,LLVM(Low Level Virtual Machine)是一个底层虚拟机,LLVM曾经有一部分功能对虚拟机有所帮助。但是现在,LLVM所代表的基本和虚拟机没有关系了,也不在作为一个缩写使用了,而是直接作为一个名字使用。那么LLVM到底是什么? L...
阅读(14402) 评论(0)

从今天起,写一本关于LLVM的书----《深入理解LLVM》

一直想写一本关于深入学习LLVM的书,这个想法有了很久了,但是一直没有机会动手。现在虽然很忙,但是依然觉的有必要马上动手去做这个事情。任何事情都是一点一点积累起来的,如果一直不动手,什么都做不成。还有句话:活在当下。抓紧时间去做想做的事情,才不会给自己的人生留遗憾。       现在关于LLVM的书,只见过一本英文的《Getting Started with LLVM Core Libraries...
阅读(6254) 评论(23)

深入研究Clang(六) Clang Lexer代码阅读笔记之Preprocesser

clang/include/clang/Lex/Preprocesser.h这个文件是包含clang::Preprocesser类的定义的头文件。它是类C语言(C、C++、Object C)的预处理的头文件。也就是说,类C语言的预处理都会用到此处的代码。00082 /// \brief Context in which macro name is used. 00083 enum MacroUse...
阅读(3282) 评论(0)

LLVM每日谈之二十二 llvm-config工具的使用

作者:史宁宁(snsn1984)llvm-config作为LLVM的一个工具,是非常有用的,官方文档(http://llvm.org/docs/CommandGuide/llvm-config.html)关于它的介绍如下:llvm-config makes it easier to build applications that use LLVM. It can print the compile...
阅读(5559) 评论(2)

深入研究Clang(五) Clang Lexer代码阅读笔记之Lexer

作者:史宁宁(snsn1984)Clang的Lexer(词法分析器)的源码的主要位置如下:clang/lib/Lex    这里是主要的Lexer的代码;clang/include/clang/Lex   这里是Lexer的头文件代码的位置;同时,Lexer还使用了clangBasic库,所以要分析Lexer的代码,clangBasic(clang/lib/Basic)的一些代码也会用到。首先从L...
阅读(4377) 评论(4)

LLVM每日谈之二十一 一些关于编译器和LLVM/Clang的代码

作者:史宁宁(snsn1984)自己收集了一些LLVM/Clang的代码,并且自己也在一点一点的写一些LLVM/Clang以及编译器的代码,在这里把这些代码库分享出来,欢迎大家交流探讨。1.crangehttps://github.com/shining1984/crange这是一个python写的调用libclang去定位和交叉检索C/C++源码的工具。这个工具不是我写的,我给fork过来了,方...
阅读(3526) 评论(0)
72条 共5页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:834206次
    • 积分:10121
    • 等级:
    • 排名:第1747名
    • 原创:151篇
    • 转载:50篇
    • 译文:9篇
    • 评论:431条
    博客专栏
    最新评论