llvm-project icon indicating copy to clipboard operation
llvm-project copied to clipboard

[MLIR][OpenMP] Add omp.loopnest operation

Open skatrak opened this issue 1 year ago • 2 comments

This patch introduces the omp.loopnest MLIR operation, which contains the information of a rectangular collapsed loop nest. It mirrors the existing representation of omp.wsloop, omp.simdloop and omp.taskloop, with the intent of removing loop information from these in a subsequent patch.

This representation is a temporary solution that does not address loop transformations. That is the goal of the omp.canonical_loop discussion.

skatrak avatar Feb 28 '24 13:02 skatrak

Can we use a different name than omp.canonical_loop (or propose a new name for what we will use to create a CanonicalLoopInfo)? I fear that when we eventually introduce the final omp.canonical_loop we would have to fight a lot of non-obvious conflicts of two operations with the same name, even if only the working branches of the final omp.canonical_loop merges the last top-of-free from trunk. With a different name, both can coexist (for a while) until final omp.canonical_loop reaches parity with the stopgap solution.

Meinersbur avatar Mar 06 '24 14:03 Meinersbur

That's a good point, using another name to avoid conflicts during the transition, if we follow this approach, makes sense.

skatrak avatar Mar 06 '24 14:03 skatrak

Features in this PR already landed via merge from main.

skatrak avatar May 08 '24 09:05 skatrak