Lines Matching refs:State

16 constexpr unsigned long long mask(BlockVerifier::State S) {  in mask()
20 constexpr std::size_t number(BlockVerifier::State S) { in number()
24 StringRef recordToString(BlockVerifier::State R) { in recordToString()
26 case BlockVerifier::State::BufferExtents: in recordToString()
28 case BlockVerifier::State::NewBuffer: in recordToString()
30 case BlockVerifier::State::WallClockTime: in recordToString()
32 case BlockVerifier::State::PIDEntry: in recordToString()
34 case BlockVerifier::State::NewCPUId: in recordToString()
36 case BlockVerifier::State::TSCWrap: in recordToString()
38 case BlockVerifier::State::CustomEvent: in recordToString()
40 case BlockVerifier::State::Function: in recordToString()
42 case BlockVerifier::State::CallArg: in recordToString()
44 case BlockVerifier::State::EndOfBuffer: in recordToString()
46 case BlockVerifier::State::TypedEvent: in recordToString()
48 case BlockVerifier::State::StateMax: in recordToString()
49 case BlockVerifier::State::Unknown: in recordToString()
56 BlockVerifier::State From;
57 std::bitset<number(BlockVerifier::State::StateMax)> ToStates;
62 Error BlockVerifier::transition(State To) { in transition()
63 using ToSet = std::bitset<number(State::StateMax)>; in transition()
64 static constexpr std::array<const Transition, number(State::StateMax)> in transition()
65 TransitionTable{{{State::Unknown, in transition()
66 {mask(State::BufferExtents) | mask(State::NewBuffer)}}, in transition()
68 {State::BufferExtents, {mask(State::NewBuffer)}}, in transition()
70 {State::NewBuffer, {mask(State::WallClockTime)}}, in transition()
72 {State::WallClockTime, in transition()
73 {mask(State::PIDEntry) | mask(State::NewCPUId)}}, in transition()
75 {State::PIDEntry, {mask(State::NewCPUId)}}, in transition()
77 {State::NewCPUId, in transition()
78 {mask(State::NewCPUId) | mask(State::TSCWrap) | in transition()
79 mask(State::CustomEvent) | mask(State::Function) | in transition()
80 mask(State::EndOfBuffer) | mask(State::TypedEvent)}}, in transition()
82 {State::TSCWrap, in transition()
83 {mask(State::TSCWrap) | mask(State::NewCPUId) | in transition()
84 mask(State::CustomEvent) | mask(State::Function) | in transition()
85 mask(State::EndOfBuffer) | mask(State::TypedEvent)}}, in transition()
87 {State::CustomEvent, in transition()
88 {mask(State::CustomEvent) | mask(State::TSCWrap) | in transition()
89 mask(State::NewCPUId) | mask(State::Function) | in transition()
90 mask(State::EndOfBuffer) | mask(State::TypedEvent)}}, in transition()
92 {State::TypedEvent, in transition()
93 {mask(State::TypedEvent) | mask(State::TSCWrap) | in transition()
94 mask(State::NewCPUId) | mask(State::Function) | in transition()
95 mask(State::EndOfBuffer) | mask(State::CustomEvent)}}, in transition()
97 {State::Function, in transition()
98 {mask(State::Function) | mask(State::TSCWrap) | in transition()
99 mask(State::NewCPUId) | mask(State::CustomEvent) | in transition()
100 mask(State::CallArg) | mask(State::EndOfBuffer) | in transition()
101 mask(State::TypedEvent)}}, in transition()
103 {State::CallArg, in transition()
104 {mask(State::CallArg) | mask(State::Function) | in transition()
105 mask(State::TSCWrap) | mask(State::NewCPUId) | in transition()
106 mask(State::CustomEvent) | mask(State::EndOfBuffer) | in transition()
107 mask(State::TypedEvent)}}, in transition()
109 {State::EndOfBuffer, {}}}}; in transition()
111 if (CurrentRecord >= State::StateMax) in transition()
120 if (CurrentRecord == State::EndOfBuffer && To != State::NewBuffer) in transition()
138 return transition(State::BufferExtents); in visit()
142 return transition(State::WallClockTime); in visit()
146 return transition(State::NewCPUId); in visit()
150 return transition(State::TSCWrap); in visit()
154 return transition(State::CustomEvent); in visit()
158 return transition(State::CustomEvent); in visit()
162 return transition(State::TypedEvent); in visit()
166 return transition(State::CallArg); in visit()
169 Error BlockVerifier::visit(PIDRecord &) { return transition(State::PIDEntry); } in visit()
172 return transition(State::NewBuffer); in visit()
176 return transition(State::EndOfBuffer); in visit()
180 return transition(State::Function); in visit()
186 case State::EndOfBuffer: in verify()
187 case State::NewCPUId: in verify()
188 case State::CustomEvent: in verify()
189 case State::TypedEvent: in verify()
190 case State::Function: in verify()
191 case State::CallArg: in verify()
192 case State::TSCWrap: in verify()
202 void BlockVerifier::reset() { CurrentRecord = State::Unknown; } in reset()