summaryrefslogtreecommitdiff
path: root/mlir/lib/Debug/ExecutionContext.cpp
AgeCommit message (Collapse)Author
2025-07-15[mlir] Remove unused includes (NFC) (#148872)Kazu Hirata
These are identified by misc-include-cleaner. I've filtered out those that break builds. Also, I'm staying away from llvm-config.h, config.h, and Compiler.h, which likely cause platform- or compiler-specific build failures.
2023-04-24Add a GDB/LLDB interface for interactive debugging of MLIR ActionsMehdi Amini
This includes a small runtime acting as callback for the ExecutionEngine and a C API that makes it possible to control from the debugger. A python script for LLDB is included that hook a new `mlir` subcommand and allows to set breakpoints and inspect the current action, the context and the stack. Differential Revision: https://reviews.llvm.org/D144817
2023-03-12Introduce mlir::tracing::ExecutionContextMehdi Amini
This component acts as an action handler that can be registered in the MLIRContext. It is the main orchestration of the infrastructure, and implements support for clients to hook there and snoop on or control the execution. This is the basis to build tracing as well as a "gdb-like" control of the compilation flow. The ExecutionContext acts as a handler in the MLIRContext for executing an Action. When an action is dispatched, it'll query its set of Breakpoints managers for a breakpoint matching this action. If a breakpoint is hit, it passes the action and the breakpoint information to a callback. The callback is responsible for controlling the execution of the action through an enum value it returns. Optionally, observers can be registered to be notified before and after the callback is executed. Differential Revision: https://reviews.llvm.org/D144812