diff options
Diffstat (limited to 'gnu/llvm/include/llvm-c/Object.h')
| -rw-r--r-- | gnu/llvm/include/llvm-c/Object.h | 100 |
1 files changed, 0 insertions, 100 deletions
diff --git a/gnu/llvm/include/llvm-c/Object.h b/gnu/llvm/include/llvm-c/Object.h deleted file mode 100644 index a2980e89fe3..00000000000 --- a/gnu/llvm/include/llvm-c/Object.h +++ /dev/null @@ -1,100 +0,0 @@ -/*===-- llvm-c/Object.h - Object Lib C Iface --------------------*- C++ -*-===*/ -/* */ -/* The LLVM Compiler Infrastructure */ -/* */ -/* This file is distributed under the University of Illinois Open Source */ -/* License. See LICENSE.TXT for details. */ -/* */ -/*===----------------------------------------------------------------------===*/ -/* */ -/* This header declares the C interface to libLLVMObject.a, which */ -/* implements object file reading and writing. */ -/* */ -/* Many exotic languages can interoperate with C code but have a harder time */ -/* with C++ due to name mangling. So in addition to C, this interface enables */ -/* tools written in such languages. */ -/* */ -/*===----------------------------------------------------------------------===*/ - -#ifndef LLVM_C_OBJECT_H -#define LLVM_C_OBJECT_H - -#include "llvm-c/Types.h" -#include "llvm/Config/llvm-config.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * @defgroup LLVMCObject Object file reading and writing - * @ingroup LLVMC - * - * @{ - */ - -// Opaque type wrappers -typedef struct LLVMOpaqueObjectFile *LLVMObjectFileRef; -typedef struct LLVMOpaqueSectionIterator *LLVMSectionIteratorRef; -typedef struct LLVMOpaqueSymbolIterator *LLVMSymbolIteratorRef; -typedef struct LLVMOpaqueRelocationIterator *LLVMRelocationIteratorRef; - -// ObjectFile creation -LLVMObjectFileRef LLVMCreateObjectFile(LLVMMemoryBufferRef MemBuf); -void LLVMDisposeObjectFile(LLVMObjectFileRef ObjectFile); - -// ObjectFile Section iterators -LLVMSectionIteratorRef LLVMGetSections(LLVMObjectFileRef ObjectFile); -void LLVMDisposeSectionIterator(LLVMSectionIteratorRef SI); -LLVMBool LLVMIsSectionIteratorAtEnd(LLVMObjectFileRef ObjectFile, - LLVMSectionIteratorRef SI); -void LLVMMoveToNextSection(LLVMSectionIteratorRef SI); -void LLVMMoveToContainingSection(LLVMSectionIteratorRef Sect, - LLVMSymbolIteratorRef Sym); - -// ObjectFile Symbol iterators -LLVMSymbolIteratorRef LLVMGetSymbols(LLVMObjectFileRef ObjectFile); -void LLVMDisposeSymbolIterator(LLVMSymbolIteratorRef SI); -LLVMBool LLVMIsSymbolIteratorAtEnd(LLVMObjectFileRef ObjectFile, - LLVMSymbolIteratorRef SI); -void LLVMMoveToNextSymbol(LLVMSymbolIteratorRef SI); - -// SectionRef accessors -const char *LLVMGetSectionName(LLVMSectionIteratorRef SI); -uint64_t LLVMGetSectionSize(LLVMSectionIteratorRef SI); -const char *LLVMGetSectionContents(LLVMSectionIteratorRef SI); -uint64_t LLVMGetSectionAddress(LLVMSectionIteratorRef SI); -LLVMBool LLVMGetSectionContainsSymbol(LLVMSectionIteratorRef SI, - LLVMSymbolIteratorRef Sym); - -// Section Relocation iterators -LLVMRelocationIteratorRef LLVMGetRelocations(LLVMSectionIteratorRef Section); -void LLVMDisposeRelocationIterator(LLVMRelocationIteratorRef RI); -LLVMBool LLVMIsRelocationIteratorAtEnd(LLVMSectionIteratorRef Section, - LLVMRelocationIteratorRef RI); -void LLVMMoveToNextRelocation(LLVMRelocationIteratorRef RI); - - -// SymbolRef accessors -const char *LLVMGetSymbolName(LLVMSymbolIteratorRef SI); -uint64_t LLVMGetSymbolAddress(LLVMSymbolIteratorRef SI); -uint64_t LLVMGetSymbolSize(LLVMSymbolIteratorRef SI); - -// RelocationRef accessors -uint64_t LLVMGetRelocationOffset(LLVMRelocationIteratorRef RI); -LLVMSymbolIteratorRef LLVMGetRelocationSymbol(LLVMRelocationIteratorRef RI); -uint64_t LLVMGetRelocationType(LLVMRelocationIteratorRef RI); -// NOTE: Caller takes ownership of returned string of the two -// following functions. -const char *LLVMGetRelocationTypeName(LLVMRelocationIteratorRef RI); -const char *LLVMGetRelocationValueString(LLVMRelocationIteratorRef RI); - -/** - * @} - */ - -#ifdef __cplusplus -} -#endif /* defined(__cplusplus) */ - -#endif |
