LLVM: include/llvm/IR/TypeFinder.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12
13#ifndef LLVM_IR_TYPEFINDER_H
14#define LLVM_IR_TYPEFINDER_H
15
18#include
19#include
20
21namespace llvm {
22
28
29
30
32
33
38
39 std::vector<StructType*> StructTypes;
40 bool OnlyNamed = false;
41
42public:
44
45 void run(const Module &M, bool onlyNamed);
47
48 using iterator = std::vector<StructType*>::iterator;
49 using const_iterator = std::vector<StructType*>::const_iterator;
50
53
56
57 bool empty() const { return StructTypes.empty(); }
58 size_t size() const { return StructTypes.size(); }
60
62
64
65private:
66
67
68 void incorporateType(Type *Ty);
69
70
71
72
73
74 void incorporateValue(const Value *V);
75
76
77
78 void incorporateMDNode(const MDNode *V);
79
80
81 void incorporateAttributes(AttributeList AL);
82};
83
84}
85
86#endif
This file contains the simple types necessary to represent the attributes associated with functions a...
static GCRegistry::Add< CoreCLRGC > E("coreclr", "CoreCLR-compatible GC")
This file defines the DenseSet and SmallDenseSet classes.
Implements a dense probed hash-table based set.
A Module instance is used to store all the information related to an LLVM module.
Class to represent struct types.
iterator end()
Definition TypeFinder.h:52
DenseSet< const MDNode * > & getVisitedMetadata()
Definition TypeFinder.h:63
void run(const Module &M, bool onlyNamed)
iterator erase(iterator I, iterator E)
Definition TypeFinder.h:59
const_iterator end() const
Definition TypeFinder.h:55
iterator begin()
Definition TypeFinder.h:51
size_t size() const
Definition TypeFinder.h:58
const_iterator begin() const
Definition TypeFinder.h:54
std::vector< StructType * >::const_iterator const_iterator
Definition TypeFinder.h:49
StructType *& operator[](unsigned Idx)
Definition TypeFinder.h:61
bool empty() const
Definition TypeFinder.h:57
std::vector< StructType * >::iterator iterator
Definition TypeFinder.h:48
The instances of the Type class are immutable: once they are created, they are never changed.
LLVM Value Representation.
This is an optimization pass for GlobalISel generic memory operations.