Changeset: cc73fc92ff47 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=cc73fc92ff47
Modified Files:
monetdb5/mal/mal_debugger.c
monetdb5/mal/mal_debugger.h
Branch: Oct2014
Log Message:
Fix the interface, matching the MAL signature
diffs (52 lines):
diff --git a/monetdb5/mal/mal_debugger.c b/monetdb5/mal/mal_debugger.c
--- a/monetdb5/mal/mal_debugger.c
+++ b/monetdb5/mal/mal_debugger.c
@@ -1049,11 +1049,11 @@ static MalBlkPtr trapped_mb;
static MalStkPtr trapped_stk;
static int trapped_pc;
-str mdbTrap(Client cntxt, MalBlkPtr mb, MalStkPtr stk, int pc)
+str mdbTrap(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p)
{
- InstrPtr p;
int cnt = 20; /* total 10 sec delay */
- p = getInstrPtr(mb, pc);
+ int pc = getPC(mb,p);
+
mnstr_printf(mal_clients[0].fdout, "#trapped %s.%s[%d]\n",
getModuleId(mb->stmt[0]), getFunctionId(mb->stmt[0]),
pc);
printInstruction(mal_clients[0].fdout, mb, stk, p, LIST_MAL_DEBUG);
@@ -1097,7 +1097,7 @@ mdbStep(Client cntxt, MalBlkPtr mb, MalS
cntxt->mdb = &state;
mnstr_printf(mal_clients[0].fdout, "#Process %d put to
sleep\n", (int) (cntxt - mal_clients));
cntxt->itrace = 'W';
- mdbTrap(cntxt, mb, stk, pc);
+ mdbTrap(cntxt, mb, stk, state.p);
while (cntxt->itrace == 'W')
MT_sleep_ms(300);
mnstr_printf(mal_clients[0].fdout, "#Process %d woke up\n",
(int) (cntxt - mal_clients));
@@ -1108,7 +1108,7 @@ mdbStep(Client cntxt, MalBlkPtr mb, MalS
/* a trapped call leads to process suspension */
/* then the console can be used to attach a debugger */
if (mb->trap) {
- mdbTrap(cntxt, mb, stk, pc);
+ mdbTrap(cntxt, mb, stk, getInstrPtr(mb,pc));
return;
}
p = getInstrPtr(mb, pc);
diff --git a/monetdb5/mal/mal_debugger.h b/monetdb5/mal/mal_debugger.h
--- a/monetdb5/mal/mal_debugger.h
+++ b/monetdb5/mal/mal_debugger.h
@@ -32,9 +32,9 @@ mal_export int MDBdelay; /* do not immed
mal_export void mdbSetBreakRequest(Client cntxt, MalBlkPtr mb, str request,
char cmd);
mal_export int mdbSetTrap(Client cntxt, str modnme, str fcnnme, int flag);
-mal_export str mdbGrab(Client cntxt, MalBlkPtr mb1, MalStkPtr stk1, InstrPtr
pc1);
-mal_export str mdbTrapClient(Client cntxt, MalBlkPtr mb1, MalStkPtr stk1,
InstrPtr pc1);
-mal_export str mdbTrap(Client cntxt, MalBlkPtr mb, MalStkPtr stk, int pc);
+mal_export str mdbGrab(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr
pci);
+mal_export str mdbTrapClient(Client cntxt, MalBlkPtr mb, MalStkPtr stk,
InstrPtr pci);
+mal_export str mdbTrap(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr
pci);
mal_export int mdbSession(void);
mal_export void mdbDump(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr
pci);
mal_export void printStack(stream *f, MalBlkPtr mb, MalStkPtr s);
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list