From a1bb5475cc1a6ce4c18f8a130a9f3f55c0669fc5 Mon Sep 17 00:00:00 2001 From: couriersud Date: Sat, 18 Jul 2020 17:38:37 +0200 Subject: netlist: include timestamp in newton-raphson loop warnings. --- src/lib/netlist/nl_errstr.h | 4 ++-- src/lib/netlist/solver/nld_matrix_solver.cpp | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/lib/netlist/nl_errstr.h b/src/lib/netlist/nl_errstr.h index d4c811c3ad9..93225a99023 100644 --- a/src/lib/netlist/nl_errstr.h +++ b/src/lib/netlist/nl_errstr.h @@ -133,8 +133,8 @@ namespace netlist PERRMSGV(MF_UNHANDLED_ELEMENT_1_FOUND, 1, "setup_base:unhandled element <{1}> found") PERRMSGV(MF_FOUND_TERM_WITH_MISSING_OTHERNET, 1, "found term with missing othernet {1}") - PERRMSGV(MW_NEWTON_LOOPS_EXCEEDED_INVOCATION_2, 2, "NEWTON_LOOPS exceeded resolution invoked {1} times on net {2}") - PERRMSGV(MW_NEWTON_LOOPS_EXCEEDED_ON_NET_1, 1, "NEWTON_LOOPS exceeded resolution failed on net {1} ... reschedule") + PERRMSGV(MW_NEWTON_LOOPS_EXCEEDED_INVOCATION_3, 3, "NEWTON_LOOPS exceeded resolution invoked {1} times on net {2} at {3} us") + PERRMSGV(MW_NEWTON_LOOPS_EXCEEDED_ON_NET_2, 2, "NEWTON_LOOPS exceeded resolution failed on net {1} ... reschedule at {2} us") // nld_solver.cpp diff --git a/src/lib/netlist/solver/nld_matrix_solver.cpp b/src/lib/netlist/solver/nld_matrix_solver.cpp index 8c46699416b..0bd175017d7 100644 --- a/src/lib/netlist/solver/nld_matrix_solver.cpp +++ b/src/lib/netlist/solver/nld_matrix_solver.cpp @@ -490,12 +490,12 @@ namespace solver } if (m_stat_newton_raphson % 100 == 0) - log().warning(MW_NEWTON_LOOPS_EXCEEDED_INVOCATION_2(100, this->name())); + log().warning(MW_NEWTON_LOOPS_EXCEEDED_INVOCATION_3(100, this->name(), exec().time().as_double() * 1e6)); if (resched && !m_Q_sync.net().is_queued()) { // reschedule .... - log().warning(MW_NEWTON_LOOPS_EXCEEDED_ON_NET_1(this->name())); + log().warning(MW_NEWTON_LOOPS_EXCEEDED_ON_NET_2(this->name(), exec().time().as_double() * 1e6)); // FIXME: test and enable - this is working better, though not optimal yet #if 0 // Don't store, the result can not be used -- cgit v1.2.3