[flang] [llvm] [mlir] [MLIR][OpenMP] Lowering nontemporal clause to LLVM IR for SIMD directive (PR #118751)

Kaviya Rajendiran via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 7 06:21:19 PDT 2025


================
@@ -81,6 +81,13 @@ def DoConcurrentConversionPass : Pass<"omp-do-concurrent-conversion", "mlir::fun
   ];
 }
 
+def LowerNontemporalPass : Pass<"lower-nontemporal", "mlir::func::FuncOp"> {
----------------
kaviya2510 wrote:

I am applying this pass specifically to omp::simdOp, not to all operations within the function. All the nontemporal examples that I referred so far have omp.simd nested inside a function, so I run the pass at the function level, look for omp::simdOp  and only add the attribute when such an operation(omp::simdop) is present. 

Could you please share an example that explains the scenario "omp.simd" op is not nested inside function? 
That would help me to understand better.

https://github.com/llvm/llvm-project/pull/118751


More information about the llvm-commits mailing list