1//===- PruneUnprofitable.h --------------------------------------*- C++ -*-===//
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// Mark a SCoP as unfeasible if not deemed profitable to optimize.
10//
11//===----------------------------------------------------------------------===//
12
13#ifndef POLLY_PRUNEUNPROFITABLE_H
14#define POLLY_PRUNEUNPROFITABLE_H
15
16#include "polly/ScopPass.h"
17
18namespace llvm {
19class Pass;
20class PassRegistry;
21} // namespace llvm
22
23namespace polly {
24llvm::Pass *createPruneUnprofitableWrapperPass();
25
26struct PruneUnprofitablePass final
27 : llvm::PassInfoMixin<PruneUnprofitablePass> {
28 PruneUnprofitablePass() {}
29
30 llvm::PreservedAnalyses run(Scop &S, ScopAnalysisManager &SAM,
31 ScopStandardAnalysisResults &SAR, SPMUpdater &U);
32};
33} // namespace polly
34
35namespace llvm {
36void initializePruneUnprofitableWrapperPassPass(PassRegistry &);
37}
38
39#endif // POLLY_PRUNEUNPROFITABLE_H
40

source code of polly/include/polly/PruneUnprofitable.h