mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-10-14 21:09:41 -07:00
add support for LLVM ghash sections
This commit is contained in:
1 parent
cd4f81d473
commit
0a791e5876
10 files changed
+449
-39
No files matched your search
@@ -0,0 +1,24 @@
|
||||
// Copyright (c) Epic Games Tools
|
||||
// Licensed under the MIT license (https://opensource.org/license/mit/)
|
||||
|
||||
internal String8
|
||||
llvm_string_from_ghash_alg(LLVM_GHashAlg v)
|
||||
{
|
||||
switch (v) {
|
||||
case LLVM_GHashAlg_SHA1: return str8_lit("SHA1");
|
||||
case LLVM_GHashAlg_SHA1_8: return str8_lit("SHA1_8");
|
||||
case LLVM_GHashAlg_BLAKE3: return str8_lit("BALK3");
|
||||
}
|
||||
return str8_zero();
|
||||
}
|
||||
|
||||
internal U64
|
||||
llvm_hash_size_from_alg(LLVM_GHashAlg v)
|
||||
{
|
||||
switch (v) {
|
||||
case LLVM_GHashAlg_SHA1: return 20;
|
||||
case LLVM_GHashAlg_SHA1_8: return 8;
|
||||
case LLVM_GHashAlg_BLAKE3: return 8;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
// Copyright (c) Epic Games Tools
|
||||
// Licensed under the MIT license (https://opensource.org/license/mit/)
|
||||
|
||||
#ifndef LLVM_H
|
||||
#define LLVM_H
|
||||
|
||||
#define LLVM_GHash_Magic 0x133c9c5
|
||||
#define LLVM_GHash_CurrentVersion 0
|
||||
|
||||
typedef U16 LLVM_GHashAlg;
|
||||
typedef enum LLVM_GHashAlgEnum
|
||||
{
|
||||
LLVM_GHashAlg_SHA1 = 0,
|
||||
LLVM_GHashAlg_SHA1_8 = 1,
|
||||
LLVM_GHashAlg_BLAKE3 = 2,
|
||||
} LLVM_GHashAlgEnum;
|
||||
|
||||
typedef struct LLVM_GHash
|
||||
{
|
||||
U32 magic;
|
||||
LLVM_GHashAlg hash_alg;
|
||||
U16 version;
|
||||
// * hashes[]
|
||||
} LLVM_GHash;
|
||||
|
||||
internal String8 llvm_string_from_ghash_alg(LLVM_GHashAlg v);
|
||||
|
||||
#endif // LLVM_H
|
||||
|
||||
Reference in new issue
Block a user