自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 资源 (21)
  • 收藏
  • 关注

原创 为Linux rm命令别名

有时候会不小心使用rm误删文件或者文件夹。找回很困难。可以把transh-put 别名成rm1)安装trash-put$ sudo apt-get install trash-cli2) 进行别名设置在HOME目录的.profile文件中加入一行alias rm=trash-put附: rm和trash-put的参数。可以看出trash-put是完全兼容rm

2014-03-23 10:37:21 2351

转载 Tarjan求有向图的强连通分量

强连通分量的定义在有向图G中,如果两个顶点间至少存在一条路径,称两个顶点强连通(strongly connected)。如果有向图G的每两个顶点都强连通,称G是一个强连通图。非强连通图有向图的极大强连通子图,称为强连通分量(strongly connected components)。Tarjan算法的原理如果u是某个强连通分量的根,那么:1) u不存在路径可以返回到它的祖先2

2014-03-04 14:09:31 889

原创 LLVM 的后序支配树(Post Dominator Tree)使用方法

在头文件llvm/Analysis/PostDominators.h中提供了后序支配树PostDominatorTree。方法与前序支配树DominatorTree类似,可以查看文章在LLVM中如何判断二个基本块(Basic Block)的支配关系。//为函数*F的控制流图构建后支配树(PostDominatorTree)PostDominatorTree* PostDT=n

2014-02-25 22:42:33 6200

原创 在LLVM中如何判断二个基本块(Basic Block)的支配关系

一、支配的定义根据维基百科 支配的概念如下:控制流图(CFG)的一个节点 d 支配节点 n,当且仅当从开始节点(可以理解为源)到节点 n的每一条路径均要经过节点d,写作d dom n (一写作d \gg n)。根据上述定义,容易得到每个节点均控制其自身。英文维基百科中提到的一些概念There are a number of related concepts:A

2014-02-24 16:11:53 5812

原创 LLVM--如何在代码中调用遍(Pass)

本文介绍三种调用遍(Pass)的方法一、直接调用如果要调用的遍没有依赖其他的遍,我们可以直接调用,如可以使用如下方法调用函数遍(FunctionPass) DominatorTree。 DominatorTree*T=new DominatorTree(); T->runOnFunction(*F); T->print(errs());二、使用遍管理器

2014-02-24 15:30:13 3443

原创 LLVM IR指令的抽象

我总结的LLVM IR指令的抽象

2014-02-19 17:19:19 1596

原创 LLVM IR 语言的形式化描述

我总结的LLVM IR的词法的形式化描述

2014-02-19 17:15:22 1350

原创 LLVM TableGen介绍

1.TableGen间介TableGen是用来帮助程序员开发和维护某一领域想逛的信息记录。它定义了一套描述这些信息记录的数据结构和语法规范。编写代码时,如果使用TableGen描述信息记录,我们可以减少大量的重复工作,这也减少了编码错误出现的几率。在llvm中,我们主要使用TableGen来生成LLVM后端代码生成器(LLVMcodegenerator)。我们编写一些描述目标机器和指令集属

2014-02-19 17:04:45 4389

原创 LLVM Metadata 介绍

1 Meatadata 介绍1.1什么是 Metadata?在 LLVM 中,我们使用 Clang 进行编译的时候,加上“-g”参数可以在 IR 文件中额外可以得到一些源代码级别的信息。例如:clang -emit-llvm -S -g test.c -o test.llLLVM 把这些调试信息称为 Metadata。在 IR 层次上的分析遍或者转换遍可以使用这些信息。

2014-02-19 16:46:47 6794 1

原创 如何获得的LLVM控制流图(CFG)的强连通分量(SCC)的拓扑排序(topological order)

一、思路使用llvm/ADT/SCCIterator.h中定义的scc_iterator迭代器获得。但是scc_iterator获得是逆拓扑排序的。它的注释如下:// The SCC iterator has the important property that if a node in SCC S1 has an// edge to a node in SCC S2, then

2014-02-19 16:19:31 3318

原创 在llvm3.3上安装poolalloc

Lattner的DSA(数据结构分析)代码位于poolalloc项目。如果需要使用DSA需要安装poolalloc。本文介绍如何使用使用Ninja的方法安装poolalloc。其实需要把llvm重新安装一遍在llvm3.3上安装poolmalloc1下载代码=========llvm所有的项目的代码的svn库都在:http://llvm.org/svn/llvm

2014-02-19 16:06:28 1685

原创 如何使用ninja快速编译LLVM和Clang(以llvm3.3为例子)

在使用Make工具编译LLVM是非常耗时的。往往需要三四个小时。但是使用goolge开源的ninja编译LLVM只需要10到20分钟。本文以llvm3.3为例,演示在linux上编译和安装过程。第一步 安装ninja和cmake1 获取并编译安装 ninja$ git clone git://github.com/martine/ninja.git$ cd ninj

2014-02-19 15:58:42 7056

原创 在LLVM控制流图(CFG)中如何获得某个块(Block)的前继块和后继块

如何遍历LLVM控制流图、块一 、获得block BB所有的前继块#include "llvm/Support/CFG.h"BasicBlock *BB = ...;for (pred_iterator PI = pred_begin(BB), E = pred_end(BB); PI != E; ++PI) { BasicBlock *Pred = *PI; /

2014-02-19 15:40:01 4211 1

人事档案管理系统 VBA

人事档案管理系统 VBA 人事档案管理系统 VBA 人事档案管理系统 VBA 人事档案管理系统 VBA

2011-05-24

人事档案管理系统 论文 毕业论文

人事档案管理系统 论文 毕业论文 人事档案管理系统 论文 毕业论文 人事档案管理系统 论文 毕业论文 人事档案管理系统 论文 毕业论文

2011-05-24

C++应用程序性能优化ch06

C++应用程序性能优化ch06 C++应用程序性能优化ch06 C++应用程序性能优化ch06

2011-05-03

C++应用程序性能优化ch05

C++应用程序性能优化ch05 C++应用程序性能优化ch05 C++应用程序性能优化ch05

2011-05-03

C++应用程序性能优化ch03

C++应用程序性能优化ch03 C++应用程序性能优化ch03

2011-05-03

MFC 简明教程 MFC 简明教程

MFC 简明教程 MFC 简明教程 MFC 简明教程 MFC 简明教程

2011-04-24

浅析MFC程序运行机制

浅析MFC程序运行机制 浅析MFC程序运行机制 浅析MFC程序运行机制浅析MFC程序运行机制 浅析MFC程序运行机制

2011-04-24

MFC 编写的最简单的程序 Helloworld

MFC 编写的最简单的程序 Helloworld MFC 编写的最简单的程序 Helloworld MFC 编写的最简单的程序 Helloworld

2011-04-24

MFC 入门 MFC 入门 MFC 入门

MFC 入门MFC 入门MFC 入门MFC 入门MFC 入门 MFC 入门 MFC 入门 MFC 入门

2011-04-24

EXCEL VBA教程 EXCEL VBA教程

EXCEL VBA教程EXCEL VBA教程EXCEL VBA教程EXCEL VBA教程EXCEL VBA教程EXCEL VBA教程EXCEL VBA教程EXCEL VBA教程EXCEL VBA教程EXCEL VBA教程EXCEL VBA教程EXCEL VBA教程EXCEL VBA教程EXCEL VBA教程EXCEL VBA教程EXCEL VBA教程EXCEL VBA教程EXCEL VBA教程EXCEL VBA教程EXCEL VBA教程

2011-04-16

2010年数学建模 美赛 题目

2010年数学建模 美赛 题目 2010年数学建模 美赛 题目 2010年数学建模 美赛 题目

2011-04-16

vba教材 vba教材

vba教材 vba教材vba教材 vba教材vba教材 vba教材vba教材 vba教材vba教材 vba教材vba教材 vba教材vba教材 vba教材vba教材 vba教材vba教材 vba教材vba教材 vba教材vba教材 vba教材vba教材 vba教材vba教材 vba教材

2010-07-15

Excel用法提高实例整理 Excel用法提高实例整理

Excel用法提高实例整理Excel用法提高实例整理Excel用法提高实例整理Excel用法提高实例整理Excel用法提高实例整理Excel用法提高实例整理Excel用法提高实例整理Excel用法提高实例整理Excel用法提高实例整理

2010-07-03

背包问题 背包问题背包问题背包问题背包问题背包问题

背包问题背包问题背包问题背包问题背包问题背包问题背包问题背包问题背包问题背包问题背包问题背包问题背包问题背包问题背包问题背包问题背包问题背包问题背包问题背包问题背包问题

2010-07-03

LINGO.ppt LINGO.ppt

LINGO.pptLINGO.pptLINGO.pptLINGO.pptLINGO.pptLINGO.pptLINGO.pptLINGO.pptLINGO.pptLINGO.pptLINGO.pptLINGO.pptLINGO.ppt

2010-07-03

Lingo快速入门 Lingo快速入门.doc

Lingo快速入门.docLingo快速入门.docLingo快速入门.docLingo快速入门.docLingo快速入门.docLingo快速入门.docLingo快速入门.docLingo快速入门.docLingo快速入门.docLingo快速入门.docLingo快速入门.docLingo快速入门.docLingo快速入门.docLingo快速入门.docLingo快速入门.docLingo快速入门.docLingo快速入门.docLingo快速入门.doc

2010-07-03

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除