//===- FileLineColLocBreakpointManager.h - TODO: add message ----*- C++ -*-===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// #ifndef MLIR_TRACING_BREAKPOINTMANAGERS_FILELINECOLLOCBREAKPOINTMANAGER_H #define MLIR_TRACING_BREAKPOINTMANAGERS_FILELINECOLLOCBREAKPOINTMANAGER_H #include "mlir/Debug/BreakpointManager.h" #include "mlir/Debug/ExecutionContext.h" #include "mlir/IR/Action.h" #include "mlir/IR/Location.h" #include "mlir/IR/Operation.h" #include "llvm/ADT/DenseMap.h" #include <memory> #include <optional> namespace mlir { namespace tracing { /// This breakpoing intends to match a FileLineColLocation, that is a tuple of /// file name, line number, and column number. Using -1 for the column and the /// line number will match any column and line number respectively. class FileLineColLocBreakpoint : public BreakpointBase<FileLineColLocBreakpoint> { … }; /// This breakpoint manager is responsible for matching /// FileLineColLocBreakpoint. It'll extract the location from the action context /// looking for a FileLineColLocation, and match it against the registered /// breakpoints. class FileLineColLocBreakpointManager : public BreakpointManagerBase<FileLineColLocBreakpointManager> { … }; } // namespace tracing } // namespace mlir #endif // MLIR_TRACING_BREAKPOINTMANAGERS_FILELINECOLLOCBREAKPOINTMANAGER_H