clang
23.0.0git
include
clang
CIR
Dialect
Passes.h
Go to the documentation of this file.
1
//===- Passes.h - CIR pass entry points -------------------------*- 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
// This header file defines prototypes that expose pass constructors.
10
//
11
//===----------------------------------------------------------------------===//
12
13
#ifndef CLANG_CIR_DIALECT_PASSES_H
14
#define CLANG_CIR_DIALECT_PASSES_H
15
16
#include "mlir/Pass/Pass.h"
17
18
namespace
clang
{
19
class
ASTContext
;
20
}
21
22
namespace
mlir
{
23
24
std::unique_ptr<Pass>
createCIRCanonicalizePass
();
25
std::unique_ptr<Pass>
createCIRFlattenCFGPass
();
26
std::unique_ptr<Pass>
createCIRSimplifyPass
();
27
std::unique_ptr<Pass>
createCIREHABILoweringPass
();
28
std::unique_ptr<Pass>
createCXXABILoweringPass
();
29
std::unique_ptr<Pass>
createTargetLoweringPass
();
30
std::unique_ptr<Pass>
createHoistAllocasPass
();
31
std::unique_ptr<Pass>
createLoweringPreparePass
();
32
std::unique_ptr<Pass>
createLoweringPreparePass
(clang::ASTContext *astCtx);
33
std::unique_ptr<Pass>
createGotoSolverPass
();
34
std::unique_ptr<Pass>
createIdiomRecognizerPass
();
35
std::unique_ptr<Pass>
createIdiomRecognizerPass
(clang::ASTContext *astCtx);
36
37
void
populateCIRPreLoweringPasses
(mlir::OpPassManager &pm);
38
39
//===----------------------------------------------------------------------===//
40
// Registration
41
//===----------------------------------------------------------------------===//
42
43
void
registerCIRDialectTranslation
(mlir::MLIRContext &context);
44
45
/// Generate the code for registering passes.
46
#define GEN_PASS_REGISTRATION
47
#include "clang/CIR/Dialect/Passes.h.inc"
48
49
}
// namespace mlir
50
51
#endif
// CLANG_CIR_DIALECT_PASSES_H
clang::ASTContext
Holds long-lived AST nodes (such as types and decls) that can be referred to throughout the semantic ...
Definition
ASTContext.h:226
clang
The JSON file list parser is used to communicate input to InstallAPI.
Definition
CalledOnceCheck.h:17
mlir
Definition
CIRGenerator.h:33
mlir::createCIREHABILoweringPass
std::unique_ptr< Pass > createCIREHABILoweringPass()
Definition
EHABILowering.cpp:500
mlir::createCIRCanonicalizePass
std::unique_ptr< Pass > createCIRCanonicalizePass()
Definition
CIRCanonicalize.cpp:88
mlir::createCIRFlattenCFGPass
std::unique_ptr< Pass > createCIRFlattenCFGPass()
Definition
FlattenCFG.cpp:1667
mlir::createIdiomRecognizerPass
std::unique_ptr< Pass > createIdiomRecognizerPass()
Definition
IdiomRecognizer.cpp:87
mlir::populateCIRPreLoweringPasses
void populateCIRPreLoweringPasses(mlir::OpPassManager &pm)
mlir::createTargetLoweringPass
std::unique_ptr< Pass > createTargetLoweringPass()
Definition
TargetLowering.cpp:67
mlir::createGotoSolverPass
std::unique_ptr< Pass > createGotoSolverPass()
Definition
GotoSolver.cpp:73
mlir::createLoweringPreparePass
std::unique_ptr< Pass > createLoweringPreparePass()
Definition
LoweringPrepare.cpp:1587
mlir::createCIRSimplifyPass
std::unique_ptr< Pass > createCIRSimplifyPass()
Definition
CIRSimplify.cpp:327
mlir::createCXXABILoweringPass
std::unique_ptr< Pass > createCXXABILoweringPass()
Definition
CXXABILowering.cpp:524
mlir::createHoistAllocasPass
std::unique_ptr< Pass > createHoistAllocasPass()
Definition
HoistAllocas.cpp:88
mlir::registerCIRDialectTranslation
void registerCIRDialectTranslation(mlir::MLIRContext &context)
Definition
LowerToLLVMIR.cpp:63
Generated on
for clang by
1.14.0