Polly 19.0.0git
JSONExporter.h
Go to the documentation of this file.
1//===- polly/JSONExporter.h - Import/Export to/from jscop files.-*- 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#ifndef POLLY_JSONEXPORTER_H
10#define POLLY_JSONEXPORTER_H
11
12#include "polly/ScopPass.h"
13#include "llvm/IR/PassManager.h"
14
15namespace polly {
16llvm::Pass *createJSONExporterPass();
17llvm::Pass *createJSONImporterPass();
18llvm::Pass *createJSONImporterPrinterLegacyPass(llvm::raw_ostream &OS);
19
20/// This pass exports a scop to a jscop file. The filename is generated from the
21/// concatenation of the function and scop name.
22struct JSONExportPass final : llvm::PassInfoMixin<JSONExportPass> {
23 llvm::PreservedAnalyses run(Scop &, ScopAnalysisManager &,
25};
26
27/// This pass imports a scop from a jscop file. The filename is deduced from the
28/// concatenation of the function and scop name.
29struct JSONImportPass final : llvm::PassInfoMixin<JSONExportPass> {
30 llvm::PreservedAnalyses run(Scop &, ScopAnalysisManager &,
32};
33} // namespace polly
34
35namespace llvm {
36void initializeJSONExporterPass(llvm::PassRegistry &);
37void initializeJSONImporterPass(llvm::PassRegistry &);
39} // namespace llvm
40
41#endif /* POLLY_JSONEXPORTER_H */
Static Control Part.
Definition: ScopInfo.h:1628
This file contains the declaration of the PolyhedralInfo class, which will provide an interface to ex...
void initializeJSONImporterPass(llvm::PassRegistry &)
void initializeJSONExporterPass(llvm::PassRegistry &)
void initializeJSONImporterPrinterLegacyPassPass(llvm::PassRegistry &)
llvm::Pass * createJSONImporterPrinterLegacyPass(llvm::raw_ostream &OS)
llvm::Pass * createJSONImporterPass()
llvm::Pass * createJSONExporterPass()
AnalysisManager< Scop, ScopStandardAnalysisResults & > ScopAnalysisManager
Definition: ScopPass.h:46
This pass exports a scop to a jscop file.
Definition: JSONExporter.h:22
llvm::PreservedAnalyses run(Scop &, ScopAnalysisManager &, ScopStandardAnalysisResults &, SPMUpdater &)
This pass imports a scop from a jscop file.
Definition: JSONExporter.h:29
llvm::PreservedAnalyses run(Scop &, ScopAnalysisManager &, ScopStandardAnalysisResults &, SPMUpdater &)