Skip to content

Commit 039b969

Browse files
committed
Revert "[MLIR] Update pass declarations to new autogenerated files"
This reverts commit 2be8af8.
1 parent 349e5bd commit 039b969

File tree

301 files changed

+2059
-2433
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

301 files changed

+2059
-2433
lines changed

flang/include/flang/Optimizer/CodeGen/CGPasses.td

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
include "mlir/Pass/PassBase.td"
1818

19-
def FIRToLLVMLoweringPass : Pass<"fir-to-llvm-ir", "mlir::ModuleOp"> {
19+
def FIRToLLVMLowering : Pass<"fir-to-llvm-ir", "mlir::ModuleOp"> {
2020
let summary = "Convert FIR dialect to LLVM-IR dialect";
2121
let description = [{
2222
Convert the FIR dialect to the LLVM-IR dialect of MLIR. This conversion
@@ -30,7 +30,7 @@ def FIRToLLVMLoweringPass : Pass<"fir-to-llvm-ir", "mlir::ModuleOp"> {
3030
];
3131
}
3232

33-
def CodeGenRewritePass : Pass<"cg-rewrite", "mlir::ModuleOp"> {
33+
def CodeGenRewrite : Pass<"cg-rewrite", "mlir::ModuleOp"> {
3434
let summary = "Rewrite some FIR ops into their code-gen forms.";
3535
let description = [{
3636
Fuse specific subgraphs into single Ops for code generation.
@@ -44,7 +44,7 @@ def CodeGenRewritePass : Pass<"cg-rewrite", "mlir::ModuleOp"> {
4444
];
4545
}
4646

47-
def TargetRewritePass : Pass<"target-rewrite", "mlir::ModuleOp"> {
47+
def TargetRewrite : Pass<"target-rewrite", "mlir::ModuleOp"> {
4848
let summary = "Rewrite some FIR dialect into target specific forms.";
4949
let description = [{
5050
Certain abstractions in the FIR dialect need to be rewritten to reflect

flang/include/flang/Optimizer/CodeGen/CodeGen.h

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,6 @@ namespace fir {
2020

2121
struct NameUniquer;
2222

23-
#define GEN_PASS_DECL_FIRTOLLVMLOWERINGPASS
24-
#define GEN_PASS_DECL_CODEGENREWRITEPASS
25-
#define GEN_PASS_DECL_TARGETREWRITEPASS
26-
#define GEN_PASS_DECL_BOXEDPROCEDUREPASS
27-
#include "flang/Optimizer/CodeGen/CGPasses.h.inc"
28-
2923
/// Prerequiste pass for code gen. Perform intermediate rewrites to perform
3024
/// the code gen (to LLVM-IR dialect) conversion.
3125
std::unique_ptr<mlir::Pass> createFirCodeGenRewritePass();

flang/include/flang/Optimizer/Transforms/Passes.h

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -28,22 +28,6 @@ namespace fir {
2828
// Passes defined in Passes.td
2929
//===----------------------------------------------------------------------===//
3030

31-
#define GEN_PASS_DECL_ABSTRACTRESULTONFUNCOPTPASS
32-
#define GEN_PASS_DECL_ABSTRACTRESULTONGLOBALOPTPASS
33-
#define GEN_PASS_DECL_AFFINEDIALECTPROMOTIONPASS
34-
#define GEN_PASS_DECL_AFFINEDIALECTDEMOTIONPASS
35-
#define GEN_PASS_DECL_ANNOTATECONSTANTOPERANDSPASS
36-
#define GEN_PASS_DECL_ARRAYVALUECOPYPASS
37-
#define GEN_PASS_DECL_CHARACTERCONVERSIONPASS
38-
#define GEN_PASS_DECL_CFGCONVERSIONPASS
39-
#define GEN_PASS_DECL_EXTERNALNAMECONVERSIONPASS
40-
#define GEN_PASS_DECL_MEMREFDATAFLOWOPTPASS
41-
#define GEN_PASS_DECL_SIMPLIFYINTRINSICSPASS
42-
#define GEN_PASS_DECL_MEMORYALLOCATIONOPTPASS
43-
#define GEN_PASS_DECL_SIMPLIFYREGIONLITEPASS
44-
#define GEN_PASS_DECL_ALGEBRAICSIMPLIFICATIONPASS
45-
#include "flang/Optimizer/Transforms/Passes.h.inc"
46-
4731
std::unique_ptr<mlir::Pass> createAbstractResultOnFuncOptPass();
4832
std::unique_ptr<mlir::Pass> createAbstractResultOnGlobalOptPass();
4933
std::unique_ptr<mlir::Pass> createAffineDemotionPass();

flang/include/flang/Optimizer/Transforms/Passes.td

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
include "mlir/Pass/PassBase.td"
1818

19-
class AbstractResultOptBase<string optExt, string operation>
19+
class AbstractResultOptBase<string optExt, string operation>
2020
: Pass<"abstract-result-on-" # optExt # "-opt", operation> {
2121
let summary = "Convert fir.array, fir.box and fir.rec function result to "
2222
"function argument";
@@ -35,15 +35,15 @@ class AbstractResultOptBase<string optExt, string operation>
3535
];
3636
}
3737

38-
def AbstractResultOnFuncOptPass : AbstractResultOptBase<"func", "mlir::func::FuncOp"> {
38+
def AbstractResultOnFuncOpt : AbstractResultOptBase<"func", "mlir::func::FuncOp"> {
3939
let constructor = "::fir::createAbstractResultOnFuncOptPass()";
4040
}
4141

42-
def AbstractResultOnGlobalOptPass : AbstractResultOptBase<"global", "fir::GlobalOp"> {
42+
def AbstractResultOnGlobalOpt : AbstractResultOptBase<"global", "fir::GlobalOp"> {
4343
let constructor = "::fir::createAbstractResultOnGlobalOptPass()";
4444
}
4545

46-
def AffineDialectPromotionPass : Pass<"promote-to-affine", "::mlir::func::FuncOp"> {
46+
def AffineDialectPromotion : Pass<"promote-to-affine", "::mlir::func::FuncOp"> {
4747
let summary = "Promotes `fir.{do_loop,if}` to `affine.{for,if}`.";
4848
let description = [{
4949
Convert fir operations which satisfy affine constraints to the affine
@@ -68,7 +68,7 @@ def AffineDialectPromotionPass : Pass<"promote-to-affine", "::mlir::func::FuncOp
6868
];
6969
}
7070

71-
def AffineDialectDemotionPass : Pass<"demote-affine", "::mlir::func::FuncOp"> {
71+
def AffineDialectDemotion : Pass<"demote-affine", "::mlir::func::FuncOp"> {
7272
let summary = "Converts `affine.{load,store}` back to fir operations";
7373
let description = [{
7474
Affine dialect's default lowering for loads and stores is different from
@@ -82,7 +82,7 @@ def AffineDialectDemotionPass : Pass<"demote-affine", "::mlir::func::FuncOp"> {
8282
];
8383
}
8484

85-
def AnnotateConstantOperandsPass : Pass<"annotate-constant"> {
85+
def AnnotateConstantOperands : Pass<"annotate-constant"> {
8686
let summary = "Annotate constant operands to all FIR operations";
8787
let description = [{
8888
The MLIR canonicalizer makes a distinction between constants based on how
@@ -99,7 +99,7 @@ def AnnotateConstantOperandsPass : Pass<"annotate-constant"> {
9999
let dependentDialects = [ "fir::FIROpsDialect" ];
100100
}
101101

102-
def ArrayValueCopyPass : Pass<"array-value-copy", "::mlir::func::FuncOp"> {
102+
def ArrayValueCopy : Pass<"array-value-copy", "::mlir::func::FuncOp"> {
103103
let summary = "Convert array value operations to memory operations.";
104104
let description = [{
105105
Transform the set of array value primitives to a memory-based array
@@ -119,7 +119,7 @@ def ArrayValueCopyPass : Pass<"array-value-copy", "::mlir::func::FuncOp"> {
119119
let dependentDialects = [ "fir::FIROpsDialect" ];
120120
}
121121

122-
def CharacterConversionPass : Pass<"character-conversion"> {
122+
def CharacterConversion : Pass<"character-conversion"> {
123123
let summary = "Convert CHARACTER entities with different KINDs";
124124
let description = [{
125125
Translates entities of one CHARACTER KIND to another.
@@ -137,7 +137,7 @@ def CharacterConversionPass : Pass<"character-conversion"> {
137137
];
138138
}
139139

140-
def CFGConversionPass : Pass<"cfg-conversion", "::mlir::func::FuncOp"> {
140+
def CFGConversion : Pass<"cfg-conversion", "::mlir::func::FuncOp"> {
141141
let summary = "Convert FIR structured control flow ops to CFG ops.";
142142
let description = [{
143143
Transform the `fir.do_loop`, `fir.if`, and `fir.iterate_while` ops into
@@ -157,15 +157,15 @@ def CFGConversionPass : Pass<"cfg-conversion", "::mlir::func::FuncOp"> {
157157
];
158158
}
159159

160-
def ExternalNameConversionPass : Pass<"external-name-interop", "mlir::ModuleOp"> {
160+
def ExternalNameConversion : Pass<"external-name-interop", "mlir::ModuleOp"> {
161161
let summary = "Convert name for external interoperability";
162162
let description = [{
163163
Demangle FIR internal name and mangle them for external interoperability.
164164
}];
165165
let constructor = "::fir::createExternalNameConversionPass()";
166166
}
167167

168-
def MemRefDataFlowOptPass : Pass<"fir-memref-dataflow-opt", "::mlir::func::FuncOp"> {
168+
def MemRefDataFlowOpt : Pass<"fir-memref-dataflow-opt", "::mlir::func::FuncOp"> {
169169
let summary =
170170
"Perform store/load forwarding and potentially removing dead stores.";
171171
let description = [{
@@ -182,7 +182,7 @@ def MemRefDataFlowOptPass : Pass<"fir-memref-dataflow-opt", "::mlir::func::FuncO
182182
// functions into the module, which is invalid if a finer grain mlir::Operation
183183
// is used as the pass specification says to not touch things outside hte scope
184184
// of the operation being processed.
185-
def SimplifyIntrinsicsPass : Pass<"simplify-intrinsics", "mlir::ModuleOp"> {
185+
def SimplifyIntrinsics : Pass<"simplify-intrinsics", "mlir::ModuleOp"> {
186186
let summary = "Intrinsics simplification";
187187
let description = [{
188188
Qualifying intrinsics calls are replaced with calls to a specialized and
@@ -198,7 +198,7 @@ def SimplifyIntrinsicsPass : Pass<"simplify-intrinsics", "mlir::ModuleOp"> {
198198
];
199199
}
200200

201-
def MemoryAllocationOptPass : Pass<"memory-allocation-opt", "mlir::func::FuncOp"> {
201+
def MemoryAllocationOpt : Pass<"memory-allocation-opt", "mlir::func::FuncOp"> {
202202
let summary = "Convert stack to heap allocations and vice versa.";
203203
let description = [{
204204
Convert stack allocations to heap allocations and vice versa based on
@@ -216,15 +216,15 @@ def MemoryAllocationOptPass : Pass<"memory-allocation-opt", "mlir::func::FuncOp"
216216
let constructor = "::fir::createMemoryAllocationPass()";
217217
}
218218

219-
def SimplifyRegionLitePass : Pass<"simplify-region-lite", "mlir::ModuleOp"> {
219+
def SimplifyRegionLite : Pass<"simplify-region-lite", "mlir::ModuleOp"> {
220220
let summary = "Region simplification";
221221
let description = [{
222222
Run region DCE and erase unreachable blocks in regions.
223223
}];
224224
let constructor = "::fir::createSimplifyRegionLitePass()";
225225
}
226226

227-
def AlgebraicSimplificationPass : Pass<"flang-algebraic-simplification"> {
227+
def AlgebraicSimplification : Pass<"flang-algebraic-simplification"> {
228228
let summary = "";
229229
let description = [{
230230
Run algebraic simplifications for Math/Complex/etc. dialect operations.

flang/include/flang/Tools/CLOptions.inc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -183,7 +183,7 @@ inline void createDefaultFIROptimizerPassPipeline(
183183

184184
// convert control flow to CFG form
185185
fir::addCfgConversionPass(pm);
186-
pm.addPass(mlir::createConvertSCFToControlFlowPass());
186+
pm.addPass(mlir::createConvertSCFToCFPass());
187187

188188
pm.addPass(mlir::createCanonicalizerPass(config));
189189
pm.addPass(fir::createSimplifyRegionLitePass());

flang/lib/Optimizer/CodeGen/BoxedProcedure.cpp

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9-
#include "flang/Optimizer/CodeGen/CodeGen.h"
10-
9+
#include "PassDetail.h"
1110
#include "flang/Optimizer/Builder/FIRBuilder.h"
1211
#include "flang/Optimizer/Builder/LowLevelIntrinsics.h"
12+
#include "flang/Optimizer/CodeGen/CodeGen.h"
1313
#include "flang/Optimizer/Dialect/FIRDialect.h"
1414
#include "flang/Optimizer/Dialect/FIROps.h"
1515
#include "flang/Optimizer/Dialect/FIRType.h"
@@ -19,11 +19,6 @@
1919
#include "mlir/Pass/Pass.h"
2020
#include "mlir/Transforms/DialectConversion.h"
2121

22-
namespace fir {
23-
#define GEN_PASS_DEF_BOXEDPROCEDUREPASS
24-
#include "flang/Optimizer/CodeGen/CGPasses.h.inc"
25-
} // namespace fir
26-
2722
#define DEBUG_TYPE "flang-procedure-pointer"
2823

2924
using namespace fir;
@@ -174,8 +169,7 @@ class BoxprocTypeRewriter : public mlir::TypeConverter {
174169
/// the frame pointer during execution. In LLVM IR, the frame pointer is
175170
/// designated with the `nest` attribute. The thunk's address will then be used
176171
/// as the call target instead of the original function's address directly.
177-
class BoxedProcedurePass
178-
: public fir::impl::BoxedProcedurePassBase<BoxedProcedurePass> {
172+
class BoxedProcedurePass : public BoxedProcedurePassBase<BoxedProcedurePass> {
179173
public:
180174
BoxedProcedurePass() { options = {true}; }
181175
BoxedProcedurePass(bool useThunks) { options = {useThunks}; }

flang/lib/Optimizer/CodeGen/CodeGen.cpp

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111
//===----------------------------------------------------------------------===//
1212

1313
#include "flang/Optimizer/CodeGen/CodeGen.h"
14-
1514
#include "CGOps.h"
15+
#include "PassDetail.h"
1616
#include "flang/ISO_Fortran_binding.h"
1717
#include "flang/Optimizer/Dialect/FIRAttr.h"
1818
#include "flang/Optimizer/Dialect/FIROps.h"
@@ -26,19 +26,12 @@
2626
#include "mlir/Conversion/MathToLLVM/MathToLLVM.h"
2727
#include "mlir/Conversion/MathToLibm/MathToLibm.h"
2828
#include "mlir/Conversion/OpenMPToLLVM/ConvertOpenMPToLLVM.h"
29-
#include "mlir/Dialect/LLVMIR/LLVMDialect.h"
30-
#include "mlir/Dialect/OpenMP/OpenMPDialect.h"
3129
#include "mlir/IR/BuiltinTypes.h"
3230
#include "mlir/IR/Matchers.h"
3331
#include "mlir/Pass/Pass.h"
3432
#include "mlir/Target/LLVMIR/ModuleTranslation.h"
3533
#include "llvm/ADT/ArrayRef.h"
3634

37-
namespace fir {
38-
#define GEN_PASS_DEF_FIRTOLLVMLOWERINGPASS
39-
#include "flang/Optimizer/CodeGen/CGPasses.h.inc"
40-
} // namespace fir
41-
4235
#define DEBUG_TYPE "flang-codegen"
4336

4437
// fir::LLVMTypeConverter for converting to LLVM IR dialect types.
@@ -3050,8 +3043,7 @@ struct IsPresentOpConversion : public FIROpConversion<fir::IsPresentOp> {
30503043
auto ptr = adaptor.getOperands()[0];
30513044

30523045
if (isPresent.getVal().getType().isa<fir::BoxCharType>()) {
3053-
[[maybe_unused]] auto structTy =
3054-
ptr.getType().cast<mlir::LLVM::LLVMStructType>();
3046+
[[maybe_unused]] auto structTy = ptr.getType().cast<mlir::LLVM::LLVMStructType>();
30553047
assert(!structTy.isOpaque() && !structTy.getBody().empty());
30563048

30573049
ptr = rewriter.create<mlir::LLVM::ExtractValueOp>(loc, ptr, 0);
@@ -3288,8 +3280,7 @@ namespace {
32883280
///
32893281
/// This pass lowers all FIR dialect operations to LLVM IR dialect. An
32903282
/// MLIR pass is used to lower residual Std dialect to LLVM IR dialect.
3291-
class FIRToLLVMLowering
3292-
: public fir::impl::FIRToLLVMLoweringPassBase<FIRToLLVMLowering> {
3283+
class FIRToLLVMLowering : public fir::FIRToLLVMLoweringBase<FIRToLLVMLowering> {
32933284
public:
32943285
FIRToLLVMLowering() = default;
32953286
FIRToLLVMLowering(fir::FIRToLLVMPassOptions options) : options{options} {}

flang/lib/Optimizer/CodeGen/PreCGRewrite.cpp

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@
1010
//
1111
//===----------------------------------------------------------------------===//
1212

13-
#include "flang/Optimizer/CodeGen/CodeGen.h"
14-
1513
#include "CGOps.h"
14+
#include "PassDetail.h"
15+
#include "flang/Optimizer/CodeGen/CodeGen.h"
1616
#include "flang/Optimizer/Dialect/FIRDialect.h"
1717
#include "flang/Optimizer/Dialect/FIROps.h"
1818
#include "flang/Optimizer/Dialect/FIRType.h"
@@ -21,11 +21,6 @@
2121
#include "llvm/ADT/STLExtras.h"
2222
#include "llvm/Support/Debug.h"
2323

24-
namespace fir {
25-
#define GEN_PASS_DEF_CODEGENREWRITEPASS
26-
#include "flang/Optimizer/CodeGen/CGPasses.h.inc"
27-
} // namespace fir
28-
2924
//===----------------------------------------------------------------------===//
3025
// Codegen rewrite: rewriting of subgraphs of ops
3126
//===----------------------------------------------------------------------===//
@@ -263,8 +258,7 @@ class ArrayCoorConversion : public mlir::OpRewritePattern<fir::ArrayCoorOp> {
263258
}
264259
};
265260

266-
class CodeGenRewrite
267-
: public fir::impl::CodeGenRewritePassBase<CodeGenRewrite> {
261+
class CodeGenRewrite : public fir::CodeGenRewriteBase<CodeGenRewrite> {
268262
public:
269263
void runOn(mlir::Operation *op, mlir::Region &region) {
270264
auto &context = getContext();

flang/lib/Optimizer/CodeGen/TargetRewrite.cpp

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,12 @@
1414
//
1515
//===----------------------------------------------------------------------===//
1616

17-
#include "flang/Optimizer/CodeGen/CodeGen.h"
18-
17+
#include "PassDetail.h"
1918
#include "Target.h"
2019
#include "flang/Optimizer/Builder/Character.h"
2120
#include "flang/Optimizer/Builder/FIRBuilder.h"
2221
#include "flang/Optimizer/Builder/Todo.h"
22+
#include "flang/Optimizer/CodeGen/CodeGen.h"
2323
#include "flang/Optimizer/Dialect/FIRDialect.h"
2424
#include "flang/Optimizer/Dialect/FIROps.h"
2525
#include "flang/Optimizer/Dialect/FIROpsSupport.h"
@@ -30,11 +30,6 @@
3030
#include "llvm/ADT/TypeSwitch.h"
3131
#include "llvm/Support/Debug.h"
3232

33-
namespace fir {
34-
#define GEN_PASS_DEF_TARGETREWRITEPASS
35-
#include "flang/Optimizer/CodeGen/CGPasses.h.inc"
36-
} // namespace fir
37-
3833
#define DEBUG_TYPE "flang-target-rewrite"
3934

4035
namespace {
@@ -71,7 +66,7 @@ struct FixupTy {
7166
/// generation that traverses the FIR and modifies types and operations to a
7267
/// form that is appropriate for the specific target. LLVM IR has specific
7368
/// idioms that are used for distinct target processor and ABI combinations.
74-
class TargetRewrite : public fir::impl::TargetRewritePassBase<TargetRewrite> {
69+
class TargetRewrite : public fir::TargetRewriteBase<TargetRewrite> {
7570
public:
7671
TargetRewrite(const fir::TargetRewriteOptions &options) {
7772
noCharacterConversion = options.noCharacterConversion;

flang/lib/Optimizer/Transforms/AbstractResult.cpp

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9+
#include "PassDetail.h"
910
#include "flang/Optimizer/Builder/Todo.h"
1011
#include "flang/Optimizer/Dialect/FIRDialect.h"
1112
#include "flang/Optimizer/Dialect/FIROps.h"
@@ -18,12 +19,6 @@
1819
#include "mlir/Transforms/Passes.h"
1920
#include "llvm/ADT/TypeSwitch.h"
2021

21-
namespace fir {
22-
#define GEN_PASS_DEF_ABSTRACTRESULTONFUNCOPTPASS
23-
#define GEN_PASS_DEF_ABSTRACTRESULTONGLOBALOPTPASS
24-
#include "flang/Optimizer/Transforms/Passes.h.inc"
25-
} // namespace fir
26-
2722
#define DEBUG_TYPE "flang-abstract-result-opt"
2823

2924
namespace fir {
@@ -252,8 +247,8 @@ class AbstractResultOptTemplate : public PassBase<Pass> {
252247
};
253248

254249
class AbstractResultOnFuncOpt
255-
: public AbstractResultOptTemplate<
256-
AbstractResultOnFuncOpt, fir::impl::AbstractResultOnFuncOptPassBase> {
250+
: public AbstractResultOptTemplate<AbstractResultOnFuncOpt,
251+
fir::AbstractResultOnFuncOptBase> {
257252
public:
258253
void runOnSpecificOperation(mlir::func::FuncOp func, bool shouldBoxResult,
259254
mlir::RewritePatternSet &patterns,
@@ -297,9 +292,8 @@ inline static bool containsFunctionTypeWithAbstractResult(mlir::Type type) {
297292
}
298293

299294
class AbstractResultOnGlobalOpt
300-
: public AbstractResultOptTemplate<
301-
AbstractResultOnGlobalOpt,
302-
fir::impl::AbstractResultOnGlobalOptPassBase> {
295+
: public AbstractResultOptTemplate<AbstractResultOnGlobalOpt,
296+
fir::AbstractResultOnGlobalOptBase> {
303297
public:
304298
void runOnSpecificOperation(fir::GlobalOp global, bool,
305299
mlir::RewritePatternSet &,

0 commit comments

Comments
 (0)