Owen Anderson | fbd121e | 2010-10-07 18:05:11 +0000 | [diff] [blame] | 1 | /*===-- llvm-c/Initialization.h - Initialization C Interface ------*- C -*-===*\ |
| 2 | |* *| |
| 3 | |* The LLVM Compiler Infrastructure *| |
| 4 | |* *| |
| 5 | |* This file is distributed under the University of Illinois Open Source *| |
| 6 | |* License. See LICENSE.TXT for details. *| |
| 7 | |* *| |
| 8 | |*===----------------------------------------------------------------------===*| |
| 9 | |* *| |
| 10 | |* This header declares the C interface to LLVM initialization routines, *| |
| 11 | |* which must be called before you can use the functionality provided by *| |
| 12 | |* the corresponding LLVM library. *| |
| 13 | |* *| |
| 14 | \*===----------------------------------------------------------------------===*/ |
| 15 | |
Benjamin Kramer | 00e08fc | 2014-08-13 16:26:38 +0000 | [diff] [blame] | 16 | #ifndef LLVM_C_INITIALIZATION_H |
| 17 | #define LLVM_C_INITIALIZATION_H |
Owen Anderson | fbd121e | 2010-10-07 18:05:11 +0000 | [diff] [blame] | 18 | |
Eric Christopher | cca8dbe | 2015-12-18 01:46:52 +0000 | [diff] [blame] | 19 | #include "llvm-c/Types.h" |
Owen Anderson | fbd121e | 2010-10-07 18:05:11 +0000 | [diff] [blame] | 20 | |
| 21 | #ifdef __cplusplus |
| 22 | extern "C" { |
| 23 | #endif |
| 24 | |
Gregory Szorc | 6244b51 | 2012-03-21 03:54:29 +0000 | [diff] [blame] | 25 | /** |
| 26 | * @defgroup LLVMCInitialization Initialization Routines |
| 27 | * @ingroup LLVMC |
| 28 | * |
| 29 | * This module contains routines used to initialize the LLVM system. |
| 30 | * |
| 31 | * @{ |
| 32 | */ |
| 33 | |
Owen Anderson | b8a1ccfc | 2010-10-07 19:51:21 +0000 | [diff] [blame] | 34 | void LLVMInitializeCore(LLVMPassRegistryRef R); |
Owen Anderson | fbd121e | 2010-10-07 18:05:11 +0000 | [diff] [blame] | 35 | void LLVMInitializeTransformUtils(LLVMPassRegistryRef R); |
| 36 | void LLVMInitializeScalarOpts(LLVMPassRegistryRef R); |
Michael Gottesman | 24c4898 | 2013-01-28 01:35:51 +0000 | [diff] [blame] | 37 | void LLVMInitializeObjCARCOpts(LLVMPassRegistryRef R); |
Hal Finkel | de5e5ec | 2012-02-01 03:51:43 +0000 | [diff] [blame] | 38 | void LLVMInitializeVectorization(LLVMPassRegistryRef R); |
Owen Anderson | 74cfb0c | 2010-10-07 20:04:55 +0000 | [diff] [blame] | 39 | void LLVMInitializeInstCombine(LLVMPassRegistryRef R); |
Craig Topper | f7d7c68 | 2018-04-24 00:39:29 +0000 | [diff] [blame] | 40 | void LLVMInitializeAggressiveInstCombiner(LLVMPassRegistryRef R); |
Owen Anderson | 2c81296 | 2010-10-07 18:09:59 +0000 | [diff] [blame] | 41 | void LLVMInitializeIPO(LLVMPassRegistryRef R); |
Owen Anderson | aa4897f | 2010-10-07 20:17:24 +0000 | [diff] [blame] | 42 | void LLVMInitializeInstrumentation(LLVMPassRegistryRef R); |
Owen Anderson | 861f4c3 | 2010-10-07 18:31:00 +0000 | [diff] [blame] | 43 | void LLVMInitializeAnalysis(LLVMPassRegistryRef R); |
| 44 | void LLVMInitializeIPA(LLVMPassRegistryRef R); |
Owen Anderson | 78b1524 | 2010-10-07 18:41:20 +0000 | [diff] [blame] | 45 | void LLVMInitializeCodeGen(LLVMPassRegistryRef R); |
Owen Anderson | 9966306 | 2010-10-07 18:50:11 +0000 | [diff] [blame] | 46 | void LLVMInitializeTarget(LLVMPassRegistryRef R); |
Owen Anderson | fbd121e | 2010-10-07 18:05:11 +0000 | [diff] [blame] | 47 | |
Gregory Szorc | 6244b51 | 2012-03-21 03:54:29 +0000 | [diff] [blame] | 48 | /** |
| 49 | * @} |
| 50 | */ |
| 51 | |
Owen Anderson | fbd121e | 2010-10-07 18:05:11 +0000 | [diff] [blame] | 52 | #ifdef __cplusplus |
| 53 | } |
| 54 | #endif |
| 55 | |
| 56 | #endif |