diff options
author | Hal Finkel <hfinkel@anl.gov> | 2012-02-01 03:51:43 +0000 |
---|---|---|
committer | Hal Finkel <hfinkel@anl.gov> | 2012-02-01 03:51:43 +0000 |
commit | de5e5ec3045a73a06b1054417f9ac6c02929e9ce (patch) | |
tree | 02f43070729c0328db2d86e33acd94df3ab52d53 /include/llvm/Transforms | |
parent | d0e277d272d517ca1cda368267d199f0da7cad95 (diff) | |
download | external_llvm-de5e5ec3045a73a06b1054417f9ac6c02929e9ce.zip external_llvm-de5e5ec3045a73a06b1054417f9ac6c02929e9ce.tar.gz external_llvm-de5e5ec3045a73a06b1054417f9ac6c02929e9ce.tar.bz2 |
Add a basic-block autovectorization pass.
This is the initial checkin of the basic-block autovectorization pass along with some supporting vectorization infrastructure.
Special thanks to everyone who helped review this code over the last several months (especially Tobias Grosser).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149468 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Transforms')
-rw-r--r-- | include/llvm/Transforms/IPO/PassManagerBuilder.h | 1 | ||||
-rw-r--r-- | include/llvm/Transforms/Vectorize.h | 30 |
2 files changed, 31 insertions, 0 deletions
diff --git a/include/llvm/Transforms/IPO/PassManagerBuilder.h b/include/llvm/Transforms/IPO/PassManagerBuilder.h index b4ba184..a1b4f5c 100644 --- a/include/llvm/Transforms/IPO/PassManagerBuilder.h +++ b/include/llvm/Transforms/IPO/PassManagerBuilder.h @@ -99,6 +99,7 @@ public: bool DisableSimplifyLibCalls; bool DisableUnitAtATime; bool DisableUnrollLoops; + bool Vectorize; private: /// ExtensionList - This is list of all of the extensions that are registered. diff --git a/include/llvm/Transforms/Vectorize.h b/include/llvm/Transforms/Vectorize.h new file mode 100644 index 0000000..dfc099d --- /dev/null +++ b/include/llvm/Transforms/Vectorize.h @@ -0,0 +1,30 @@ +//===-- Vectorize.h - Vectorization Transformations -------------*- C++ -*-===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// +// This header file defines prototypes for accessor functions that expose passes +// in the Vectorize transformations library. +// +//===----------------------------------------------------------------------===// + +#ifndef LLVM_TRANSFORMS_VECTORIZE_H +#define LLVM_TRANSFORMS_VECTORIZE_H + +namespace llvm { + +class BasicBlockPass; + +//===----------------------------------------------------------------------===// +// +// BBVectorize - A basic-block vectorization pass. +// +BasicBlockPass *createBBVectorizePass(); + +} // End llvm namespace + +#endif |