LLVM: include/llvm/XRay/BlockVerifier.h Source File (original) (raw)

Go to the documentation of this file.

1

2

3

4

5

6

7

8

9

10

11

12

13#ifndef LLVM_XRAY_BLOCKVERIFIER_H

14#define LLVM_XRAY_BLOCKVERIFIER_H

15

18

20

22public:

23

24 enum class State : std::size_t {

38 };

39

40private:

41

42 State CurrentRecord = State::Unknown;

43

44

45

46 Error transition(State To);

47

48public:

61

63 void reset();

64};

65

66}

67

68#endif

void visit(MachineFunction &MF, MachineBasicBlock &Start, std::function< void(MachineBasicBlock *)> op)

Lightweight error class with error context and mandatory checking.

Definition BlockVerifier.h:21

State

Definition BlockVerifier.h:24

@ WallClockTime

Definition BlockVerifier.h:28

@ CallArg

Definition BlockVerifier.h:35

@ NewCPUId

Definition BlockVerifier.h:30

@ TypedEvent

Definition BlockVerifier.h:33

@ TSCWrap

Definition BlockVerifier.h:31

@ Function

Definition BlockVerifier.h:34

@ Unknown

Definition BlockVerifier.h:25

@ NewBuffer

Definition BlockVerifier.h:27

@ StateMax

Definition BlockVerifier.h:37

@ PIDEntry

Definition BlockVerifier.h:29

@ CustomEvent

Definition BlockVerifier.h:32

@ BufferExtents

Definition BlockVerifier.h:26

@ EndOfBuffer

Definition BlockVerifier.h:36