LLVM: lib/ProfileData/InstrProfReader.cpp File Reference (original) (raw)
Go to the source code of this file.
| Namespaces | |
|---|---|
| namespace | llvm |
| This is an optimization pass for GlobalISel generic memory operations. |
| Macros | |
|---|---|
| #define | CHECK_LINE_END(Line) |
| #define | READ_NUM(Str, Dst) |
| #define | VP_READ_ADVANCE(Val) |
| Functions | |
|---|---|
| static InstrProfKind | getProfileKindFromVersion (uint64_t Version) |
| static Expected< std::unique_ptr< MemoryBuffer > > | setupMemoryBuffer (const Twine &Filename, vfs::FileSystem &FS) |
| static Error | initializeReader (InstrProfReader &Reader) |
| static Error | readBinaryIdsInternal (const MemoryBuffer &DataBuffer, ArrayRef< uint8_t > BinaryIdsBuffer, std::vector< llvm::object::BuildID > &BinaryIds, const llvm::endianness Endian) |
| Read a list of binary ids from a profile that consist of a. | |
| static void | printBinaryIdsInternal (raw_ostream &OS, ArrayRef< llvm::object::BuildID > BinaryIds) |
| static Expected< memprof::MemProfRecord > | getMemProfRecordV2 (const memprof::IndexedMemProfRecord &IndexedRecord, MemProfFrameHashTable &MemProfFrameTable, MemProfCallStackHashTable &MemProfCallStackTable) |
◆ CHECK_LINE_END
| #define CHECK_LINE_END | ( | Line | ) |
|---|
Value:
if (Line.is_at_end()) \
return error(instrprof_error::truncated);
◆ READ_NUM
| #define READ_NUM | ( | Str, |
|---|---|---|
| Dst ) |
Value:
if ((Str).getAsInteger(10, (Dst))) \
return error(instrprof_error::malformed);
◆ VP_READ_ADVANCE
| #define VP_READ_ADVANCE | ( | Val | ) |
|---|
Value:
CHECK_LINE_END(Line); \
READ_NUM((*Line), (Val)); \
Line++;
#define CHECK_LINE_END(Line)
◆ data_type
◆ offset_type
◆ getMemProfRecordV2()
◆ getProfileKindFromVersion()
Definition at line 45 of file InstrProfReader.cpp.
References llvm::ContextSensitive, llvm::FunctionEntryInstrumentation, llvm::FunctionEntryOnly, llvm::IRInstrumentation, llvm::LoopEntriesInstrumentation, llvm::MemProf, llvm::SingleByteCoverage, llvm::TemporalProfile, llvm::Unknown, VARIANT_MASK_BYTE_COVERAGE, VARIANT_MASK_CSIR_PROF, VARIANT_MASK_FUNCTION_ENTRY_ONLY, VARIANT_MASK_INSTR_ENTRY, VARIANT_MASK_INSTR_LOOP_ENTRIES, VARIANT_MASK_IR_PROF, VARIANT_MASK_MEMPROF, and VARIANT_MASK_TEMPORAL_PROF.
Referenced by llvm::InstrProfReaderIndex< HashTableImpl >::getProfileKind(), and llvm::RawInstrProfReader< IntPtrT >::getProfileKind().