LLVM: llvm::OnDiskChainedHashTableGenerator< Info > Class Template Reference (original) (raw)
Generates an on disk hash table. More...
#include "[llvm/Support/OnDiskHashTable.h](OnDiskHashTable%5F8h%5Fsource.html)"
| Public Member Functions | |
|---|---|
| void | insert (typename Info::key_type_ref Key, typename Info::data_type_ref Data) |
| Insert an entry into the table. | |
| void | insert (typename Info::key_type_ref Key, typename Info::data_type_ref Data, Info &InfoObj) |
| Insert an entry into the table. | |
| bool | contains (typename Info::key_type_ref Key, Info &InfoObj) |
| Determine whether an entry has been inserted. | |
| offset_type | Emit (raw_ostream &Out) |
| Emit the table to Out, which must not be at offset 0. | |
| offset_type | Emit (raw_ostream &Out, Info &InfoObj) |
| Emit the table to Out, which must not be at offset 0. | |
| OnDiskChainedHashTableGenerator () | |
| ~OnDiskChainedHashTableGenerator () |
template<typename Info>
class llvm::OnDiskChainedHashTableGenerator< Info >
Generates an on disk hash table.
This needs an Info that handles storing values into the hash table's payload and computes the hash for a given key. This should provide the following interface:
class ExampleInfo {
public:
typedef ExampleKey key_type;
typedef ExampleKey &key_type_ref;
typedef ExampleData data_type;
typedef ExampleData &data_type_ref;
typedef uint32_t hash_value_type;
static std::pair<offset_type, offset_type>
EmitKeyDataLength(raw_ostream &Out, key_type_ref Key, data_type_ref Data);
static bool EqualKey(key_type_ref Key1, key_type_ref Key2);
};
InstrProfLookupTrait::offset_type offset_type
InstrProfLookupTrait::data_type data_type
uint64_t ComputeHash(const FunctionSummary *FS, unsigned I)
This class implements an extremely fast bulk output stream that can only output to a stream.
LLVM_ATTRIBUTE_VISIBILITY_DEFAULT AnalysisKey InnerAnalysisManagerProxy< AnalysisManagerT, IRUnitT, ExtraArgTs... >::Key
FunctionAddr VTableAddr uintptr_t uintptr_t Data
Definition at line 58 of file OnDiskHashTable.h.
◆ ~OnDiskChainedHashTableGenerator()
◆ contains()
◆ Emit() [1/2]
◆ Emit() [2/2]
◆ insert() [1/2]
◆ insert() [2/2]
The documentation for this class was generated from the following file:
- include/llvm/Support/OnDiskHashTable.h