[all-commits] [llvm/llvm-project] 2c8e9c: [MLIR][OpenMP] Add omp.simd operation

Sergio Afonso via All-commits all-commits at lists.llvm.org
Mon Jan 29 06:51:23 PST 2024


  Branch: refs/heads/users/skatrak/spr/simd-mlir
  Home:   https://github.com/llvm/llvm-project
  Commit: 2c8e9c7e67cc2a2dd77fff546fae82108564fb36
      https://github.com/llvm/llvm-project/commit/2c8e9c7e67cc2a2dd77fff546fae82108564fb36
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-01-29 (Mon, 29 Jan 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] Add omp.simd operation

This patch introduces the `omp.simd` operation. In contrast to the existing
`omp.simdloop` operation, it is intended to hold SIMD information within
worksharing loops, rather than representing a SIMD-only loop. Some examples
of such loops are "omp do/for simd", "omp distribute simd", "omp target teams
distribute parallel do/for simd", etc. For more context on this work, refer to
PR #79559.

This operation must always be nested within an `omp.wsloop` operation as its
only non-terminator child. It follows the same approach as the `omp.distribute`
operation, by serving as a simple wrapper operation holding clause information.




More information about the All-commits mailing list