Skip to content

Commit d5ec49f

Browse files
authored
[mlir] Initialize DefaultTimingManager::out. (#87522)
`DefaultTimingManager::clear()` uses `out` to initialize `TimerImpl`, but the `out` is `nullptr` by default. This means if `DefaultTimingManager::setOutput()` is never called, `DefaultTimingManager` destructor may generate SIGSEGV.
1 parent d83233f commit d5ec49f

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

mlir/lib/Support/Timing.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -499,7 +499,8 @@ class DefaultTimingManagerImpl {
499499
} // namespace mlir
500500

501501
DefaultTimingManager::DefaultTimingManager()
502-
: impl(std::make_unique<DefaultTimingManagerImpl>()) {
502+
: impl(std::make_unique<DefaultTimingManagerImpl>()),
503+
out(std::make_unique<OutputTextStrategy>(llvm::errs())) {
503504
clear(); // initializes the root timer
504505
}
505506

0 commit comments

Comments
 (0)