diff options
Diffstat (limited to 'llvm/tools/llvm-xray/xray-sleds.h')
-rw-r--r-- | llvm/tools/llvm-xray/xray-sleds.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/llvm/tools/llvm-xray/xray-sleds.h b/llvm/tools/llvm-xray/xray-sleds.h new file mode 100644 index 00000000000..99279579ed4 --- /dev/null +++ b/llvm/tools/llvm-xray/xray-sleds.h @@ -0,0 +1,32 @@ +//===- xray-sleds.h - XRay Sleds Data Structure ---------------------------===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// +// Defines the structure used to represent XRay instrumentation map entries. +// +//===----------------------------------------------------------------------===// + +#ifndef LLVM_TOOLS_LLVM_XRAY_XRAY_SLEDS_H +#define LLVM_TOOLS_LLVM_XRAY_XRAY_SLEDS_H + +namespace llvm { +namespace xray { + +struct SledEntry { + enum class FunctionKinds { ENTRY, EXIT, TAIL }; + + uint64_t Address; + uint64_t Function; + FunctionKinds Kind; + bool AlwaysInstrument; +}; + +} // namespace xray +} // namespace llvm + +#endif // LLVM_TOOLS_LLVM_XRAY_XRAY_SLEDS_H |