LLVM: lib/XRay/RecordPrinter.cpp Source File (original) (raw)

1

2

3

4

5

6

7

9

11

12using namespace llvm;

14

16 OS << formatv("<Buffer: size = {0} bytes>", R.size()) << Delim;

18}

19

21 OS << formatv("", R.seconds(), R.nanos())

22 << Delim;

24}

25

27 OS << formatv("<CPU: id = {0}, tsc = {1}>", R.cpuid(), R.tsc()) << Delim;

29}

30

32 OS << formatv("", R.tsc()) << Delim;

34}

35

38 "",

39 R.tsc(), R.cpu(), R.size(), R.data())

40 << Delim;

42}

43

45 OS << formatv("",

46 R.delta(), R.size(), R.data())

47 << Delim;

49}

50

53 "<Typed Event: delta = +{0}, type = {1}, size = {2}, data = '{3}'",

54 R.delta(), R.eventType(), R.size(), R.data())

55 << Delim;

57}

58

60 OS << formatv("<Call Argument: data = {0} (hex = {0:x})>", R.arg()) << Delim;

62}

63

65 OS << formatv("<PID: {0}>", R.pid()) << Delim;

67}

68

70 OS << formatv("<Thread ID: {0}>", R.tid()) << Delim;

72}

73

75 OS << "" << Delim;

77}

78

80

81 switch (R.recordType()) {

83 OS << formatv("<Function Enter: #{0} delta = +{1}>", R.functionId(),

84 R.delta());

85 break;

87 OS << formatv("<Function Enter With Arg: #{0} delta = +{1}>",

88 R.functionId(), R.delta());

89 break;

91 OS << formatv("<Function Exit: #{0} delta = +{1}>", R.functionId(),

92 R.delta());

93 break;

95 OS << formatv("<Function Tail Exit: #{0} delta = +{1}>", R.functionId(),

96 R.delta());

97 break;

100

101 break;

102 }

103 OS << Delim;

105}

Lightweight error class with error context and mandatory checking.

static ErrorSuccess success()

Create a success value.

Error visit(BufferExtents &) override

Definition RecordPrinter.cpp:15

This is an optimization pass for GlobalISel generic memory operations.

auto formatv(bool Validate, const char *Fmt, Ts &&...Vals)