aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/log.cc
diff options
context:
space:
mode:
authorMiodrag Milanović <mmicko@gmail.com>2022-12-05 17:00:16 +0100
committerGitHub <noreply@github.com>2022-12-05 17:00:16 +0100
commitb60baad6629788063774b38d8e0ff483b0779b01 (patch)
tree3b0f4e72cc0a436309c8c9ffe436448ccfb3a94a /kernel/log.cc
parent9362fdb4c67f09bfaf3841364bd01e4d10ce5608 (diff)
parent6589accfa9e858cc93b87d09cf6644aeea5151a4 (diff)
downloadyosys-b60baad6629788063774b38d8e0ff483b0779b01.tar.gz
yosys-b60baad6629788063774b38d8e0ff483b0779b01.tar.bz2
yosys-b60baad6629788063774b38d8e0ff483b0779b01.zip
Merge pull request #3572 from jix/tcl-recover
tcl: Don't exit repl on recoverable command errors
Diffstat (limited to 'kernel/log.cc')
-rw-r--r--kernel/log.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/kernel/log.cc b/kernel/log.cc
index af8c422b8..25d198744 100644
--- a/kernel/log.cc
+++ b/kernel/log.cc
@@ -40,6 +40,7 @@ YOSYS_NAMESPACE_BEGIN
std::vector<FILE*> log_files;
std::vector<std::ostream*> log_streams;
+std::vector<std::string> log_scratchpads;
std::map<std::string, std::set<std::string>> log_hdump;
std::vector<YS_REGEX_TYPE> log_warn_regexes, log_nowarn_regexes, log_werror_regexes;
dict<std::string, LogExpectedItem> log_expect_log, log_expect_warning, log_expect_error;
@@ -158,6 +159,11 @@ void logv(const char *format, va_list ap)
for (auto f : log_streams)
*f << str;
+ RTLIL::Design *design = yosys_get_design();
+ if (design != nullptr)
+ for (auto &scratchpad : log_scratchpads)
+ design->scratchpad[scratchpad].append(str);
+
static std::string linebuffer;
static bool log_warn_regex_recusion_guard = false;