diff options
Diffstat (limited to 'vere/pkg/noun/nock.c')
-rw-r--r-- | vere/pkg/noun/nock.c | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/vere/pkg/noun/nock.c b/vere/pkg/noun/nock.c index 8218efa..8de6d7e 100644 --- a/vere/pkg/noun/nock.c +++ b/vere/pkg/noun/nock.c @@ -8,6 +8,7 @@ #include "jets.h" #include "jets/k.h" #include "jets/q.h" +#include "log.h" #include "manage.h" #include "options.h" #include "retrieve.h" @@ -167,6 +168,17 @@ _n_nock_on(u3_noun bus, u3_noun fol) u3R->pro.nox_d += 1; #endif + // Trace first 30 opcodes + static c3_w opcode_count = 0; + if ( opcode_count < 30 ) { + if ( c3y == u3du(hib) ) { + u3l_log("[C-Nock:%u] cell-cell formula", opcode_count); + } else { + u3l_log("[C-Nock:%u] opcode %u", opcode_count, hib); + } + opcode_count++; + } + if ( c3y == u3du(hib) ) { u3_noun poz, riv; @@ -2907,6 +2919,17 @@ u3n_burn(u3p(u3n_prog) pog_p, u3_noun bus) static u3_noun _n_burn_on(u3_noun bus, u3_noun fol) { + static c3_w burn_count = 0; + if ( burn_count < 30 ) { + u3_noun hib = u3h(fol); + if ( c3y == u3du(hib) ) { + u3l_log("[C-Burn:%u] cell-cell formula", burn_count); + } else { + u3l_log("[C-Burn:%u] opcode %u", burn_count, hib); + } + burn_count++; + } + u3n_prog* pog_u = _n_find(u3_nul, fol); u3z(fol); @@ -2920,6 +2943,12 @@ u3n_nock_on(u3_noun bus, u3_noun fol) { u3_noun pro; + static c3_w call_count = 0; + if ( call_count < 10 ) { + u3l_log(">>> u3n_nock_on call #%u <<<", call_count); + call_count++; + } + u3t_on(noc_o); #if 0 pro = _n_nock_on(bus, fol); |