1//===- TransformAttrs.td - Transform dialect attributes ----*- tablegen -*-===// 2// 3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4// See https://llvm.org/LICENSE.txt for license information. 5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6// 7//===----------------------------------------------------------------------===// 8 9#ifndef MLIR_DIALECT_TRANSFORM_IR_TRANSFORMATTRS 10#define MLIR_DIALECT_TRANSFORM_IR_TRANSFORMATTRS 11 12include "mlir/IR/EnumAttr.td" 13 14def PropagateFailuresCase : I32EnumAttrCase<"Propagate", 1, "propagate">; 15def SuppressFailuresCase : I32EnumAttrCase<"Suppress", 2, "suppress">; 16 17def FailurePropagationMode : I32EnumAttr< 18 "FailurePropagationMode", "Silenceable error propagation policy", 19 [PropagateFailuresCase, SuppressFailuresCase]> { 20 let cppNamespace = "::mlir::transform"; 21} 22 23def MatchCmpIPredicateAttr : I32EnumAttr< 24 "MatchCmpIPredicate", "", 25 [ 26 I32EnumAttrCase<"eq", 0>, 27 I32EnumAttrCase<"ne", 1>, 28 I32EnumAttrCase<"lt", 2>, 29 I32EnumAttrCase<"le", 3>, 30 I32EnumAttrCase<"gt", 4>, 31 I32EnumAttrCase<"ge", 5>, 32 ]> { 33 let cppNamespace = "::mlir::transform"; 34} 35 36#endif // MLIR_DIALECT_TRANSFORM_IR_TRANSFORMATTRS 37