aboutsummaryrefslogtreecommitdiff
path: root/flang/lib/Optimizer/Dialect
diff options
context:
space:
mode:
Diffstat (limited to 'flang/lib/Optimizer/Dialect')
-rw-r--r--flang/lib/Optimizer/Dialect/FIRDialect.cpp2
-rw-r--r--flang/lib/Optimizer/Dialect/FIROps.cpp20
-rw-r--r--flang/lib/Optimizer/Dialect/Support/FIRContext.cpp51
-rw-r--r--flang/lib/Optimizer/Dialect/Support/KindMapping.cpp1
4 files changed, 12 insertions, 62 deletions
diff --git a/flang/lib/Optimizer/Dialect/FIRDialect.cpp b/flang/lib/Optimizer/Dialect/FIRDialect.cpp
index 4b1dada..12f1baf3 100644
--- a/flang/lib/Optimizer/Dialect/FIRDialect.cpp
+++ b/flang/lib/Optimizer/Dialect/FIRDialect.cpp
@@ -56,7 +56,7 @@ struct FIRInlinerInterface : public mlir::DialectInlinerInterface {
mlir::Value input,
mlir::Type resultType,
mlir::Location loc) const final {
- return builder.create<fir::ConvertOp>(loc, resultType, input);
+ return fir::ConvertOp::create(builder, loc, resultType, input);
}
};
} // namespace
diff --git a/flang/lib/Optimizer/Dialect/FIROps.cpp b/flang/lib/Optimizer/Dialect/FIROps.cpp
index cf20d84..01975f3 100644
--- a/flang/lib/Optimizer/Dialect/FIROps.cpp
+++ b/flang/lib/Optimizer/Dialect/FIROps.cpp
@@ -782,8 +782,8 @@ private:
return nullptr;
mlir::OpBuilder::InsertionGuard guard(rewriter);
rewriter.setInsertionPoint(shapeShiftOp);
- return rewriter.create<fir::ShapeOp>(shapeShiftOp.getLoc(),
- shapeShiftOp.getExtents());
+ return fir::ShapeOp::create(rewriter, shapeShiftOp.getLoc(),
+ shapeShiftOp.getExtents());
}
static std::optional<IndicesVectorTy>
@@ -797,19 +797,19 @@ private:
rewriter.setInsertionPoint(op);
mlir::Location loc = op->getLoc();
mlir::Type idxTy = rewriter.getIndexType();
- mlir::Value one = rewriter.create<mlir::arith::ConstantOp>(
- loc, idxTy, rewriter.getIndexAttr(1));
+ mlir::Value one = mlir::arith::ConstantOp::create(
+ rewriter, loc, idxTy, rewriter.getIndexAttr(1));
rewriter.restoreInsertionPoint(savedIP);
auto nsw = mlir::arith::IntegerOverflowFlags::nsw;
IndicesVectorTy shiftedIndices;
for (auto [lb, idx] : llvm::zip(lbs, indices)) {
- mlir::Value extLb = rewriter.create<fir::ConvertOp>(loc, idxTy, lb);
- mlir::Value extIdx = rewriter.create<fir::ConvertOp>(loc, idxTy, idx);
+ mlir::Value extLb = fir::ConvertOp::create(rewriter, loc, idxTy, lb);
+ mlir::Value extIdx = fir::ConvertOp::create(rewriter, loc, idxTy, idx);
mlir::Value add =
- rewriter.create<mlir::arith::AddIOp>(loc, extIdx, extLb, nsw);
+ mlir::arith::AddIOp::create(rewriter, loc, extIdx, extLb, nsw);
mlir::Value sub =
- rewriter.create<mlir::arith::SubIOp>(loc, add, one, nsw);
+ mlir::arith::SubIOp::create(rewriter, loc, add, one, nsw);
shiftedIndices.push_back(sub);
}
@@ -4711,7 +4711,7 @@ mlir::func::FuncOp fir::createFuncOp(mlir::Location loc, mlir::ModuleOp module,
return f;
mlir::OpBuilder modBuilder(module.getBodyRegion());
modBuilder.setInsertionPointToEnd(module.getBody());
- auto result = modBuilder.create<mlir::func::FuncOp>(loc, name, type, attrs);
+ auto result = mlir::func::FuncOp::create(modBuilder, loc, name, type, attrs);
result.setVisibility(mlir::SymbolTable::Visibility::Private);
return result;
}
@@ -4731,7 +4731,7 @@ fir::GlobalOp fir::createGlobalOp(mlir::Location loc, mlir::ModuleOp module,
if (auto g = module.lookupSymbol<fir::GlobalOp>(name))
return g;
mlir::OpBuilder modBuilder(module.getBodyRegion());
- auto result = modBuilder.create<fir::GlobalOp>(loc, name, type, attrs);
+ auto result = fir::GlobalOp::create(modBuilder, loc, name, type, attrs);
result.setVisibility(mlir::SymbolTable::Visibility::Private);
return result;
}
diff --git a/flang/lib/Optimizer/Dialect/Support/FIRContext.cpp b/flang/lib/Optimizer/Dialect/Support/FIRContext.cpp
index c2e0afe1..01c0be6 100644
--- a/flang/lib/Optimizer/Dialect/Support/FIRContext.cpp
+++ b/flang/lib/Optimizer/Dialect/Support/FIRContext.cpp
@@ -88,57 +88,6 @@ void fir::setTuneCPU(mlir::ModuleOp mod, llvm::StringRef cpu) {
mod->setAttr(tuneCpuName, mlir::StringAttr::get(ctx, cpu));
}
-static constexpr const char *atomicIgnoreDenormalModeName =
- "fir.atomic_ignore_denormal_mode";
-
-void fir::setAtomicIgnoreDenormalMode(mlir::ModuleOp mod, bool value) {
- if (value) {
- auto *ctx = mod.getContext();
- mod->setAttr(atomicIgnoreDenormalModeName, mlir::UnitAttr::get(ctx));
- } else {
- if (mod->hasAttr(atomicIgnoreDenormalModeName))
- mod->removeAttr(atomicIgnoreDenormalModeName);
- }
-}
-
-bool fir::getAtomicIgnoreDenormalMode(mlir::ModuleOp mod) {
- return mod->hasAttr(atomicIgnoreDenormalModeName);
-}
-
-static constexpr const char *atomicFineGrainedMemoryName =
- "fir.atomic_fine_grained_memory";
-
-void fir::setAtomicFineGrainedMemory(mlir::ModuleOp mod, bool value) {
- if (value) {
- auto *ctx = mod.getContext();
- mod->setAttr(atomicFineGrainedMemoryName, mlir::UnitAttr::get(ctx));
- } else {
- if (mod->hasAttr(atomicFineGrainedMemoryName))
- mod->removeAttr(atomicFineGrainedMemoryName);
- }
-}
-
-bool fir::getAtomicFineGrainedMemory(mlir::ModuleOp mod) {
- return mod->hasAttr(atomicFineGrainedMemoryName);
-}
-
-static constexpr const char *atomicRemoteMemoryName =
- "fir.atomic_remote_memory";
-
-void fir::setAtomicRemoteMemory(mlir::ModuleOp mod, bool value) {
- if (value) {
- auto *ctx = mod.getContext();
- mod->setAttr(atomicRemoteMemoryName, mlir::UnitAttr::get(ctx));
- } else {
- if (mod->hasAttr(atomicRemoteMemoryName))
- mod->removeAttr(atomicRemoteMemoryName);
- }
-}
-
-bool fir::getAtomicRemoteMemory(mlir::ModuleOp mod) {
- return mod->hasAttr(atomicRemoteMemoryName);
-}
-
llvm::StringRef fir::getTuneCPU(mlir::ModuleOp mod) {
if (auto attr = mod->getAttrOfType<mlir::StringAttr>(tuneCpuName))
return attr.getValue();
diff --git a/flang/lib/Optimizer/Dialect/Support/KindMapping.cpp b/flang/lib/Optimizer/Dialect/Support/KindMapping.cpp
index 30c6030..6cf8adb 100644
--- a/flang/lib/Optimizer/Dialect/Support/KindMapping.cpp
+++ b/flang/lib/Optimizer/Dialect/Support/KindMapping.cpp
@@ -12,6 +12,7 @@
#include "flang/Optimizer/Dialect/Support/KindMapping.h"
#include "mlir/Dialect/LLVMIR/LLVMDialect.h"
+#include "llvm/IR/LLVMContext.h"
#include "llvm/Support/CommandLine.h"
/// Allow the user to set the FIR intrinsic type kind value to LLVM type