@@ -30,19 +30,18 @@ class DoConcurrentConversion : public mlir::OpConversionPattern<fir::DoLoopOp> {
30
30
public:
31
31
using mlir::OpConversionPattern<fir::DoLoopOp>::OpConversionPattern;
32
32
33
- DoConcurrentConversion (mlir::MLIRContext *context, bool mapToDevice,
34
- llvm::DenseSet<fir::DoLoopOp> &concurrentLoopsToSkip)
35
- : OpConversionPattern(context), mapToDevice(mapToDevice),
36
- concurrentLoopsToSkip (concurrentLoopsToSkip) {}
33
+ DoConcurrentConversion (mlir::MLIRContext *context, bool mapToDevice)
34
+ : OpConversionPattern(context), mapToDevice(mapToDevice) {}
37
35
38
36
mlir::LogicalResult
39
37
matchAndRewrite (fir::DoLoopOp doLoop, OpAdaptor adaptor,
40
38
mlir::ConversionPatternRewriter &rewriter) const override {
39
+ // TODO This will be filled in with the next PRs that upstreams the rest of
40
+ // the ROCm implementaion.
41
41
return mlir::success ();
42
42
}
43
43
44
44
bool mapToDevice;
45
- llvm::DenseSet<fir::DoLoopOp> &concurrentLoopsToSkip;
46
45
};
47
46
48
47
class DoConcurrentConversionPass
@@ -58,9 +57,8 @@ class DoConcurrentConversionPass
58
57
void runOnOperation () override {
59
58
mlir::func::FuncOp func = getOperation ();
60
59
61
- if (func.isDeclaration ()) {
60
+ if (func.isDeclaration ())
62
61
return ;
63
- }
64
62
65
63
auto *context = &getContext ();
66
64
@@ -72,15 +70,12 @@ class DoConcurrentConversionPass
72
70
return ;
73
71
}
74
72
75
- llvm::DenseSet<fir::DoLoopOp> concurrentLoopsToSkip;
76
73
mlir::RewritePatternSet patterns (context);
77
74
patterns.insert <DoConcurrentConversion>(
78
- context, mapTo == flangomp::DoConcurrentMappingKind::DCMK_Device,
79
- concurrentLoopsToSkip);
75
+ context, mapTo == flangomp::DoConcurrentMappingKind::DCMK_Device);
80
76
mlir::ConversionTarget target (*context);
81
- target.addDynamicallyLegalOp <fir::DoLoopOp>([&](fir::DoLoopOp op) {
82
- return !op.getUnordered () || concurrentLoopsToSkip.contains (op);
83
- });
77
+ target.addDynamicallyLegalOp <fir::DoLoopOp>(
78
+ [&](fir::DoLoopOp op) { return !op.getUnordered (); });
84
79
target.markUnknownOpDynamicallyLegal (
85
80
[](mlir::Operation *) { return true ; });
86
81
0 commit comments