llvm-project/clang/lib/Serialization
Argyrios Kyrtzidis 330268ba34 [Support/Hash functions] Change the `final()` and `result()` of the hashing functions to return an array of bytes
Returning `std::array<uint8_t, N>` is better ergonomics for the hashing functions usage, instead of a `StringRef`:

* When returning `StringRef`, client code is "jumping through hoops" to do string manipulations instead of dealing with fixed array of bytes directly, which is more natural
* Returning `std::array<uint8_t, N>` avoids the need for the hasher classes to keep a field just for the purpose of wrapping it and returning it as a `StringRef`

As part of this patch also:

* Introduce `TruncatedBLAKE3` which is useful for using BLAKE3 as the hasher type for `HashBuilder` with non-default hash sizes.
* Make `MD5Result` inherit from `std::array<uint8_t, 16>` which improves & simplifies its API.

Differential Revision: https://reviews.llvm.org/D123100
2022-04-05 21:38:06 -07:00
..
ASTCommon.cpp [modules] Merge ObjC interface ivars with anonymous types. 2022-04-04 18:48:30 -07:00
ASTCommon.h
ASTReader.cpp Serialize PragmaAssumeNonNullLoc to support preambles 2022-03-31 11:08:01 -04:00
ASTReaderDecl.cpp [modules] Merge ObjC interface ivars with anonymous types. 2022-04-04 18:48:30 -07:00
ASTReaderInternals.h [clang] Remove unused forward declarations (NFC) 2022-01-08 11:56:40 -08:00
ASTReaderStmt.cpp [OpenMP] Initial parsing/sema for the 'omp target parallel loop' construct 2022-03-24 09:19:00 -07:00
ASTWriter.cpp [Support/Hash functions] Change the `final()` and `result()` of the hashing functions to return an array of bytes 2022-04-05 21:38:06 -07:00
ASTWriterDecl.cpp [C++20] [Modules] Don't generate strong function of a partition in importing modules 2022-04-01 14:36:04 +08:00
ASTWriterStmt.cpp [OpenMP] Initial parsing/sema for the 'omp target parallel loop' construct 2022-03-24 09:19:00 -07:00
CMakeLists.txt [openmp] Base of tablegen generated OpenMP common declaration 2020-06-23 10:32:32 -04:00
GeneratePCH.cpp [clang][modules] NFC: Propagate import `SourceLocation` into `HeaderSearch::lookupModule` 2021-10-12 09:31:51 +02:00
GlobalModuleIndex.cpp [clang][NFC] Use SmallString instead of SmallVector<char 2020-11-17 13:02:58 +00:00
InMemoryModuleCache.cpp Revert "[modules] Do not cache invalid state for modules that we attempted to load." 2020-03-10 10:59:26 -07:00
ModuleFile.cpp
ModuleFileExtension.cpp [modules] Use `HashBuilder` and `MD5` for the module hash. 2021-09-03 11:13:36 -07:00
ModuleManager.cpp unique_ptrify the ModuleManager's VisitState linked list 2022-01-19 09:57:46 -08:00
MultiOnDiskHashTable.h
PCHContainerOperations.cpp