LLVM 22.0.0git
|
Represents the relative location of an instruction. More...
#include "llvm/ProfileData/SampleProf.h"
Public Member Functions | |
LineLocation (uint32_t L, uint32_t D) | |
LLVM_ABI void | print (raw_ostream &OS) const |
LLVM_ABI void | dump () const |
LLVM_ABI void | serialize (raw_ostream &OS) const |
bool | operator< (const LineLocation &O) const |
bool | operator== (const LineLocation &O) const |
bool | operator!= (const LineLocation &O) const |
uint64_t | getHashCode () const |
Public Attributes | |
uint32_t | LineOffset |
uint32_t | Discriminator |
Represents the relative location of an instruction.
Instruction locations are specified by the line offset from the beginning of the function (marked by the line where the function header is) and the discriminator value within that line.
The discriminator value is useful to distinguish instructions that are on the same line but belong to different basic blocks (e.g., the two post-increment instructions in "if (p) x++; else y++;").
Definition at line 283 of file SampleProf.h.
Definition at line 284 of file SampleProf.h.
LLVM_DUMP_METHOD void LineLocation::dump | ( | ) | const |
Definition at line 152 of file SampleProf.cpp.
References llvm::dbgs(), and print().
|
inline |
Definition at line 305 of file SampleProf.h.
References Discriminator, and LineOffset.
Referenced by llvm::sampleprof::SampleContextFrame::getHashCode(), and llvm::sampleprof::LineLocationHash::operator()().
|
inline |
Definition at line 301 of file SampleProf.h.
References Discriminator, and LineOffset.
|
inline |
Definition at line 292 of file SampleProf.h.
References Discriminator, and LineOffset.
|
inline |
Definition at line 297 of file SampleProf.h.
References Discriminator, and LineOffset.
void LineLocation::print | ( | raw_ostream & | OS | ) | const |
Definition at line 108 of file SampleProf.cpp.
References Discriminator, LineOffset, and OS.
Referenced by dump(), llvm::sampleprof::operator<<(), and llvm::sampleprof::SampleProfileWriterText::writeSample().
void LineLocation::serialize | ( | raw_ostream & | OS | ) | const |
Definition at line 155 of file SampleProf.cpp.
References Discriminator, llvm::encodeULEB128(), LineOffset, and OS.
Referenced by llvm::sampleprof::SampleProfileWriterBinary::writeBody().
uint32_t llvm::sampleprof::LineLocation::Discriminator |
Definition at line 310 of file SampleProf.h.
Referenced by llvm::sampleprof::SampleContext::decodeContextString(), dumpFunctionProfileJson(), getHashCode(), operator!=(), operator<(), operator==(), print(), serialize(), llvm::sampleprof::SampleContextFrame::toString(), and llvm::sampleprof::SampleProfileWriterExtBinaryBase::writeFuncMetadata().
uint32_t llvm::sampleprof::LineLocation::LineOffset |
Definition at line 309 of file SampleProf.h.
Referenced by llvm::sampleprof::SampleContext::decodeContextString(), dumpFunctionProfileJson(), getHashCode(), operator!=(), operator<(), operator==(), print(), serialize(), llvm::sampleprof::SampleContextFrame::toString(), and llvm::sampleprof::SampleProfileWriterExtBinaryBase::writeFuncMetadata().