A few of the changes suggested in code review (by Nick Lewycky)
[oota-llvm.git] / include / llvm-c / Transforms / Vectorize.h
1 /*===---------------------------Vectorize.h --------------------- -*- C -*-===*\
2 |*===----------- Vectorization Transformation Library C Interface ---------===*|
3 |*                                                                            *|
4 |*                     The LLVM Compiler Infrastructure                       *|
5 |*                                                                            *|
6 |* This file is distributed under the University of Illinois Open Source      *|
7 |* License. See LICENSE.TXT for details.                                      *|
8 |*                                                                            *|
9 |*===----------------------------------------------------------------------===*|
10 |*                                                                            *|
11 |* This header declares the C interface to libLLVMVectorize.a, which          *|
12 |* implements various vectorization transformations of the LLVM IR.           *|
13 |*                                                                            *|
14 |* Many exotic languages can interoperate with C code but have a harder time  *|
15 |* with C++ due to name mangling. So in addition to C, this interface enables *|
16 |* tools written in such languages.                                           *|
17 |*                                                                            *|
18 \*===----------------------------------------------------------------------===*/
19
20 #ifndef LLVM_C_TRANSFORMS_VECTORIZE_H
21 #define LLVM_C_TRANSFORMS_VECTORIZE_H
22
23 #include "llvm-c/Core.h"
24
25 #ifdef __cplusplus
26 extern "C" {
27 #endif
28
29 /** See llvm::createBBVectorizePass function. */
30 void LLVMAddBBVectorizePass(LLVMPassManagerRef PM);
31
32 #ifdef __cplusplus
33 }
34 #endif /* defined(__cplusplus) */
35
36 #endif
37