LLVM API Documentation
00001 /*===-- llvm-c/Support.h - Support C Interface --------------------*- C -*-===*\ 00002 |* *| 00003 |* The LLVM Compiler Infrastructure *| 00004 |* *| 00005 |* This file is distributed under the University of Illinois Open Source *| 00006 |* License. See LICENSE.TXT for details. *| 00007 |* *| 00008 |*===----------------------------------------------------------------------===*| 00009 |* *| 00010 |* This file defines the C interface to the LLVM support library. *| 00011 |* *| 00012 \*===----------------------------------------------------------------------===*/ 00013 00014 #ifndef LLVM_C_SUPPORT_H 00015 #define LLVM_C_SUPPORT_H 00016 00017 #include "llvm/Support/DataTypes.h" 00018 00019 #ifdef __cplusplus 00020 extern "C" { 00021 #endif 00022 00023 /** 00024 * @defgroup LLVMCSupportTypes Types and Enumerations 00025 * 00026 * @{ 00027 */ 00028 00029 typedef int LLVMBool; 00030 00031 /** 00032 * Used to pass regions of memory through LLVM interfaces. 00033 * 00034 * @see llvm::MemoryBuffer 00035 */ 00036 typedef struct LLVMOpaqueMemoryBuffer *LLVMMemoryBufferRef; 00037 00038 /** 00039 * @} 00040 */ 00041 00042 /** 00043 * This function permanently loads the dynamic library at the given path. 00044 * It is safe to call this function multiple times for the same library. 00045 * 00046 * @see sys::DynamicLibrary::LoadLibraryPermanently() 00047 */ 00048 LLVMBool LLVMLoadLibraryPermanently(const char* Filename); 00049 00050 #ifdef __cplusplus 00051 } 00052 #endif 00053 00054 #endif