diff options
-rw-r--r-- | include/llvm/Transforms/Scalar.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/include/llvm/Transforms/Scalar.h b/include/llvm/Transforms/Scalar.h index 2649366ff4..20dd48e2de 100644 --- a/include/llvm/Transforms/Scalar.h +++ b/include/llvm/Transforms/Scalar.h @@ -10,6 +10,8 @@ class Pass; class TargetData; +class BasicBlock; +class GetElementPtrInst; //===----------------------------------------------------------------------===// // @@ -60,9 +62,14 @@ Pass *createAggressiveDCEPass(); // instructions (using getelementpr and cast) so that each instruction has at // most one index (except structure references, which need an extra leading // index of [0]). -// + +// This pass decomposes all multi-dimensional references in a function. Pass *createDecomposeMultiDimRefsPass(); +// This function decomposes a single instance of such a reference. +// Return value: true if the instruction was replaced; false otherwise. +// +bool DecomposeArrayRef(GetElementPtrInst* GEP); //===----------------------------------------------------------------------===// // |