Predator
[unstable] git snapshot
Main Page
Related Pages
Namespaces
Data Structures
Files
File List
Globals
killer.hh
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2011 Kamil Dudka <kdudka@redhat.com>
3
*
4
* This file is part of predator.
5
*
6
* predator is free software: you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License as published by
8
* the Free Software Foundation, either version 3 of the License, or
9
* any later version.
10
*
11
* predator is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
15
*
16
* You should have received a copy of the GNU General Public License
17
* along with predator. If not, see <http://www.gnu.org/licenses/>.
18
*/
19
20
#ifndef H_GUARD_KILLER_H
21
#define H_GUARD_KILLER_H
22
23
/**
24
* @file killer.hh
25
* @todo some dox
26
*/
27
28
#include <map>
29
#include <set>
30
31
namespace
CodeStorage {
32
struct
Insn;
33
struct
Storage;
34
35
void
killLocalVariables
(Storage &stor);
36
37
namespace
VarKiller {
38
typedef
int
TVar
;
39
typedef
std::set<TVar>
TSet
;
40
typedef
std::map<TVar, TVar>
TAliasMap
;
41
42
43
/// per-block data
44
struct
BlockData
{
45
TSet
gen
;
46
TSet
kill
;
47
};
48
49
void
scanInsn
(
50
BlockData
*pDst,
51
const
Insn
*insn,
52
TAliasMap
*pAliasMap = 0);
53
54
}
// namespace VarKiller
55
56
}
// namespace CodeStorage
57
58
#endif
/* H_GUARD_KILLER_H */
Generated on Mon Nov 9 2015 14:51:59 for Predator by
1.8.1.2