LLVM: include/llvm/MCA/HWEventListener.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12
13
14#ifndef LLVM_MCA_HWEVENTLISTENER_H
15#define LLVM_MCA_HWEVENTLISTENER_H
16
21
22namespace llvm {
23namespace mca {
24
25
26
27
29public:
30
31
32
33
34
35
36
37
52
55
56
58
59
61};
62
63
64
66
67using ResourceUse = std::pair<ResourceRef, ReleaseAtCycles>;
68
76
78public:
83
84
86
87
88
89
90
91
92
93
94
96};
97
107
108
109
111public:
125
127
128
130
131
133};
134
135
136
138public:
149
153
154
156
157
159
160
162};
163
165public:
166
169
173
175
176
177
182
184
185private:
186 virtual void anchor();
187};
188}
189}
190
191#endif
This file defines abstractions used by the Pipeline to model register reads, register writes and inst...
ArrayRef - Represent a constant reference to an array (0 or more elements consecutively in memory),...
Definition HWEventListener.h:164
virtual ~HWEventListener()=default
virtual void onCycleBegin()
Definition HWEventListener.h:167
virtual void onReleasedBuffers(const InstRef &Inst, ArrayRef< unsigned > Buffers)
Definition HWEventListener.h:180
virtual void onReservedBuffers(const InstRef &Inst, ArrayRef< unsigned > Buffers)
Definition HWEventListener.h:178
virtual void onEvent(const HWStallEvent &Event)
Definition HWEventListener.h:171
virtual void onCycleEnd()
Definition HWEventListener.h:168
virtual void onEvent(const HWInstructionEvent &Event)
Definition HWEventListener.h:170
virtual void onEvent(const HWPressureEvent &Event)
Definition HWEventListener.h:172
virtual void onResourceAvailable(const ResourceRef &RRef)
Definition HWEventListener.h:174
unsigned MicroOpcodes
Definition HWEventListener.h:95
ArrayRef< unsigned > UsedPhysRegs
Definition HWEventListener.h:85
HWInstructionDispatchedEvent(const InstRef &IR, ArrayRef< unsigned > Regs, unsigned UOps)
Definition HWEventListener.h:79
Definition HWEventListener.h:28
HWInstructionEvent(unsigned type, const InstRef &Inst)
Definition HWEventListener.h:53
const InstRef & IR
Definition HWEventListener.h:60
const unsigned Type
Definition HWEventListener.h:57
GenericEventType
Definition HWEventListener.h:38
@ LastGenericEventType
Definition HWEventListener.h:50
@ Dispatched
Definition HWEventListener.h:48
@ Executed
Definition HWEventListener.h:46
@ Retired
Definition HWEventListener.h:41
@ Issued
Definition HWEventListener.h:45
@ Invalid
Definition HWEventListener.h:39
@ Pending
Definition HWEventListener.h:43
@ Ready
Definition HWEventListener.h:44
ArrayRef< ResourceUse > UsedResources
Definition HWEventListener.h:74
HWInstructionIssuedEvent(const InstRef &IR, ArrayRef< ResourceUse > UR)
Definition HWEventListener.h:71
HWInstructionRetiredEvent(const InstRef &IR, ArrayRef< unsigned > Regs)
Definition HWEventListener.h:100
ArrayRef< unsigned > FreedPhysRegs
Definition HWEventListener.h:105
Definition HWEventListener.h:137
GenericReason Reason
Definition HWEventListener.h:155
HWPressureEvent(GenericReason reason, ArrayRef< InstRef > Insts, uint64_t Mask=0)
Definition HWEventListener.h:150
ArrayRef< InstRef > AffectedInstructions
Definition HWEventListener.h:158
const uint64_t ResourceMask
Definition HWEventListener.h:161
GenericReason
Definition HWEventListener.h:139
@ REGISTER_DEPS
Definition HWEventListener.h:145
@ INVALID
Definition HWEventListener.h:140
@ MEMORY_DEPS
Definition HWEventListener.h:147
@ RESOURCES
Definition HWEventListener.h:143
Definition HWEventListener.h:110
const unsigned Type
Definition HWEventListener.h:129
HWStallEvent(unsigned type, const InstRef &Inst)
Definition HWEventListener.h:126
const InstRef & IR
Definition HWEventListener.h:132
GenericEventType
Definition HWEventListener.h:112
@ RegisterFileStall
Definition HWEventListener.h:115
@ SchedulerQueueFull
Definition HWEventListener.h:119
@ LoadQueueFull
Definition HWEventListener.h:120
@ CustomBehaviourStall
Definition HWEventListener.h:122
@ LastGenericEvent
Definition HWEventListener.h:123
@ DispatchGroupStall
Definition HWEventListener.h:118
@ RetireControlUnitStall
Definition HWEventListener.h:116
@ Invalid
Definition HWEventListener.h:113
@ StoreQueueFull
Definition HWEventListener.h:121
An InstRef contains both a SourceMgr index and Instruction pair.
Helper functions used by various pipeline components.
std::pair< uint64_t, uint64_t > ResourceRef
Definition HWEventListener.h:65
std::pair< ResourceRef, ReleaseAtCycles > ResourceUse
Definition HWEventListener.h:67
This is an optimization pass for GlobalISel generic memory operations.