14#ifndef LLVM_C_COMDAT_H
15#define LLVM_C_COMDAT_H
static GCRegistry::Add< ShadowStackGC > C("shadow-stack", "Very portable GC for uncooperative code generators")
#define LLVM_C_EXTERN_C_BEGIN
#define LLVM_C_EXTERN_C_END
LLVMComdatSelectionKind LLVMGetComdatSelectionKind(LLVMComdatRef C)
LLVMComdatRef LLVMGetOrInsertComdat(LLVMModuleRef M, const char *Name)
Return the Comdat in the module with the specified name.
void LLVMSetComdat(LLVMValueRef V, LLVMComdatRef C)
Assign the Comdat to the given global object.
void LLVMSetComdatSelectionKind(LLVMComdatRef C, LLVMComdatSelectionKind Kind)
LLVMComdatRef LLVMGetComdat(LLVMValueRef V)
Get the Comdat assigned to the given global object.
@ LLVMLargestComdatSelectionKind
The linker will choose the largest COMDAT.
@ LLVMSameSizeComdatSelectionKind
The data referenced by the COMDAT must be the same size.
@ LLVMExactMatchComdatSelectionKind
The data referenced by the COMDAT must be the same.
@ LLVMAnyComdatSelectionKind
The linker may choose any COMDAT.
@ LLVMNoDeduplicateComdatSelectionKind
No deduplication is performed.
struct LLVMOpaqueValue * LLVMValueRef
Represents an individual value in LLVM IR.
struct LLVMComdat * LLVMComdatRef
struct LLVMOpaqueModule * LLVMModuleRef
The top-level container for all other LLVM Intermediate Representation (IR) objects.