1 //===- Verifier.h - Verifier analysis for MLIR structures -------*- C++ -*-===// 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_IR_VERIFIER_H 10 #define MLIR_IR_VERIFIER_H 11 12 namespace mlir { 13 struct LogicalResult; 14 class Operation; 15 16 /// Perform (potentially expensive) checks of invariants, used to detect 17 /// compiler bugs, on this operation and any nested operations. On error, this 18 /// reports the error through the MLIRContext and returns failure. 19 LogicalResult verify(Operation *op); 20 } // end namespace mlir 21 22 #endif 23