class Profile

Declaration

class Profile { /* full declaration omitted */ };

Description

Profile instances are thread-compatible.

Declared at: llvm/include/llvm/XRay/Profile.h:51

Method Overview

  • public Profile()
  • public Profile(llvm::xray::Profile && O) noexcept
  • public Profile(const llvm::xray::Profile &)
  • public llvm::Error addBlock(llvm::xray::Profile::Block && B)
  • public llvm::xray::Profile::const_iterator begin() const
  • public bool empty() const
  • public llvm::xray::Profile::const_iterator end() const
  • public Expected<std::vector<FuncID>> expandPath(llvm::xray::Profile::PathID P) const
  • public llvm::xray::Profile::PathID internPath(ArrayRef<llvm::xray::Profile::FuncID> P)
  • public ~Profile()

Methods

Profile()

Declared at: llvm/include/llvm/XRay/Profile.h:85

Profile(llvm::xray::Profile&& O) noexcept

Declared at: llvm/include/llvm/XRay/Profile.h:88

Parameters

llvm::xray::Profile&& O

Profile(const llvm::xray::Profile&)

Declared at: llvm/include/llvm/XRay/Profile.h:102

Parameters

const llvm::xray::Profile&

llvm::Error addBlock(
    llvm::xray::Profile::Block&& B)

Description

Appends a fully-formed Block instance into the Profile. Returns an error condition in the following cases: - The PathData component of the Block is empty

Declared at: llvm/include/llvm/XRay/Profile.h:83

Parameters

llvm::xray::Profile::Block&& B

llvm::xray::Profile::const_iterator begin() const

Declared at: llvm/include/llvm/XRay/Profile.h:141

bool empty() const

Declared at: llvm/include/llvm/XRay/Profile.h:143

llvm::xray::Profile::const_iterator end() const

Declared at: llvm/include/llvm/XRay/Profile.h:142

Expected<std::vector<FuncID>> expandPath(
    llvm::xray::Profile::PathID P) const

Description

Provides a sequence of function IDs from a previously interned PathID. Returns an error if |P| had not been interned before into the Profile.

Declared at: llvm/include/llvm/XRay/Profile.h:71

Parameters

llvm::xray::Profile::PathID P

llvm::xray::Profile::PathID internPath(
    ArrayRef<llvm::xray::Profile::FuncID> P)

Description

The stack represented in |P| must be in stack order (leaf to root). This will always return the same PathID for |P| that has the same sequence.

Declared at: llvm/include/llvm/XRay/Profile.h:75

Parameters

ArrayRef<llvm::xray::Profile::FuncID> P

~Profile()

Declared at: llvm/include/llvm/XRay/Profile.h:86