LLVM API Documentation
00001 /*===-- llvm-c/Initialization.h - Initialization 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 header declares the C interface to LLVM initialization routines, *| 00011 |* which must be called before you can use the functionality provided by *| 00012 |* the corresponding LLVM library. *| 00013 |* *| 00014 \*===----------------------------------------------------------------------===*/ 00015 00016 #ifndef LLVM_C_INITIALIZATION_H 00017 #define LLVM_C_INITIALIZATION_H 00018 00019 #include "llvm-c/Core.h" 00020 00021 #ifdef __cplusplus 00022 extern "C" { 00023 #endif 00024 00025 /** 00026 * @defgroup LLVMCInitialization Initialization Routines 00027 * @ingroup LLVMC 00028 * 00029 * This module contains routines used to initialize the LLVM system. 00030 * 00031 * @{ 00032 */ 00033 00034 void LLVMInitializeCore(LLVMPassRegistryRef R); 00035 void LLVMInitializeTransformUtils(LLVMPassRegistryRef R); 00036 void LLVMInitializeScalarOpts(LLVMPassRegistryRef R); 00037 void LLVMInitializeObjCARCOpts(LLVMPassRegistryRef R); 00038 void LLVMInitializeVectorization(LLVMPassRegistryRef R); 00039 void LLVMInitializeInstCombine(LLVMPassRegistryRef R); 00040 void LLVMInitializeIPO(LLVMPassRegistryRef R); 00041 void LLVMInitializeInstrumentation(LLVMPassRegistryRef R); 00042 void LLVMInitializeAnalysis(LLVMPassRegistryRef R); 00043 void LLVMInitializeIPA(LLVMPassRegistryRef R); 00044 void LLVMInitializeCodeGen(LLVMPassRegistryRef R); 00045 void LLVMInitializeTarget(LLVMPassRegistryRef R); 00046 00047 /** 00048 * @} 00049 */ 00050 00051 #ifdef __cplusplus 00052 } 00053 #endif 00054 00055 #endif