1//===- SeparateConstOffsetFromGEP.h ---------------------------------------===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#ifndef LLVM_TRANSFORMS_SCALAR_SEPARATECONSTOFFSETFROMGEP_H
10#define LLVM_TRANSFORMS_SCALAR_SEPARATECONSTOFFSETFROMGEP_H
11
12#include "llvm/IR/PassManager.h"
13
14namespace llvm {
15
16class SeparateConstOffsetFromGEPPass
17 : public PassInfoMixin<SeparateConstOffsetFromGEPPass> {
18 bool LowerGEP;
19
20public:
21 SeparateConstOffsetFromGEPPass(bool LowerGEP = false) : LowerGEP(LowerGEP) {}
22 void printPipeline(raw_ostream &OS,
23 function_ref<StringRef(StringRef)> MapClassName2PassName);
24 PreservedAnalyses run(Function &F, FunctionAnalysisManager &);
25};
26
27} // end namespace llvm
28
29#endif // LLVM_TRANSFORMS_SCALAR_SEPARATECONSTOFFSETFROMGEP_H
30