[all-commits] [llvm/llvm-project] c9ee93: [MLIR][OpenMP] Group clause operands into structures

Sergio Afonso via All-commits all-commits at lists.llvm.org
Wed Mar 27 05:24:33 PDT 2024


  Branch: refs/heads/users/skatrak/spr/clause-operands-01-mlir
  Home:   https://github.com/llvm/llvm-project
  Commit: c9ee93f1c28e9d4518ec842f66f497bf0911c9d5
      https://github.com/llvm/llvm-project/commit/c9ee93f1c28e9d4518ec842f66f497bf0911c9d5
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-03-27 (Wed, 27 Mar 2024)

  Changed paths:
    A mlir/include/mlir/Dialect/OpenMP/OpenMPClauseOperands.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPDialect.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp

  Log Message:
  -----------
  [MLIR][OpenMP] Group clause operands into structures

This patch introduces a set of composable structures grouping the MLIR operands
associated to each OpenMP clause. This makes it easier to keep the MLIR
representation for the same clause consistent throughout all operations that
accept it.

The relevant clause operand structures are grouped into per-operation
structures using a mixin pattern and used to define new operation constructors.
These constructors can be used to avoid having to get the order of a possibly
large list of operands right.

Missing clauses are documented as TODOs, as well as operands which are part of
the relevant operation's operand structure but cannot be attached to the
associated operation yet, due to missing op arguments to its MLIR definition.

A follow-up patch will update Flang lowering to make use of these structures,
simplifying the passing of information from clause processing to operation-
generating functions and also simplifying the creation of operations through
the use of the new operation constructors.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list