File tree Expand file tree Collapse file tree 2 files changed +20
-0
lines changed
flang/include/flang/Optimizer/Dialect/Support
mlir/include/mlir/Dialect/OpenMP Expand file tree Collapse file tree 2 files changed +20
-0
lines changed Original file line number Diff line number Diff line change @@ -75,6 +75,12 @@ bool getAtomicRemoteMemory(mlir::ModuleOp mod);
7575// / module `mod` is still live.
7676void setTuneCPU (mlir::ModuleOp mod, llvm::StringRef cpu);
7777
78+ // set Atomic control options for amd gpu.
79+ void setAmdgpuAtomicControlOptions (mlir::ModuleOp mod,
80+ bool amdgpuIgnoreDenormalMode,
81+ bool amdgpuNoFineGrainedMemory,
82+ bool amdgpuNoRemoteMemory);
83+
7884// / Get the tune CPU string from the Module or return a null reference.
7985llvm::StringRef getTuneCPU (mlir::ModuleOp mod);
8086
Original file line number Diff line number Diff line change @@ -69,6 +69,20 @@ def FlagsAttr : OpenMP_Attr<"Flags", "flags"> {
6969 let assemblyFormat = "`<` struct(params) `>`";
7070}
7171
72+ //===----------------------------------------------------------------------===//
73+ // AtomicControlAttr
74+ //===----------------------------------------------------------------------===//
75+
76+ // Runtime library flags attribute that holds information for lowering to LLVM.
77+ def AtomicControlAttr : OpenMP_Attr<"AtomicControl", "atomic_control"> {
78+ let parameters =
79+ (ins DefaultValuedParameter<"bool", "false">:$amdgpu_ignore_denormal_mode,
80+ DefaultValuedParameter<"bool", "false">:$amdgpu_fine_grained_memory,
81+ DefaultValuedParameter<"bool", "false">:$amdgpu_remote_memory);
82+
83+ let assemblyFormat = "`<` struct(params) `>`";
84+ }
85+
7286//===----------------------------------------------------------------------===//
7387// TaskDependArrayAttr
7488//===----------------------------------------------------------------------===//
You can’t perform that action at this time.
0 commit comments