fix new special choice-points
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1059 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
This commit is contained in:
parent
fc1dc1280d
commit
3b376f87e7
15
C/heapgc.c
15
C/heapgc.c
@ -1391,14 +1391,13 @@ static void
|
||||
mark_choicepoints(register choiceptr gc_B, tr_fr_ptr saved_TR, int very_verbose)
|
||||
{
|
||||
|
||||
yamop *lu_cl0 = NEXTOP(PredLogUpdClause0->CodeOfPred,ld), *lu_cl = NEXTOP(PredLogUpdClause->CodeOfPred,ld), *su_cl = NEXTOP(PredStaticClause->CodeOfPred,ld);
|
||||
#ifdef TABLING
|
||||
dep_fr_ptr depfr = LOCAL_top_dep_fr;
|
||||
#endif
|
||||
#ifdef EASY_SHUNTING
|
||||
HB = H;
|
||||
#endif
|
||||
yamop *lu_cl0 = NEXTOP(PredLogUpdClause0->CodeOfPred,ld), *lu_cl = NEXTOP(PredLogUpdClause->CodeOfPred,ld), *su_cl = NEXTOP(PredStaticClause->CodeOfPred,ld);
|
||||
|
||||
|
||||
while (gc_B != NULL) {
|
||||
op_numbers opnum;
|
||||
@ -1704,12 +1703,6 @@ mark_choicepoints(register choiceptr gc_B, tr_fr_ptr saved_TR, int very_verbose)
|
||||
case _trust_me4:
|
||||
case _retry:
|
||||
case _trust:
|
||||
if (gc_B->cp_ap == lu_cl0 ||
|
||||
gc_B->cp_ap == lu_cl ||
|
||||
gc_B->cp_ap == su_cl) {
|
||||
CELL *pt = (CELL *)IntegerOfTerm(gc_B->cp_args[1]);
|
||||
mark_db_fixed(pt);
|
||||
}
|
||||
nargs = rtp->u.ld.s;
|
||||
break;
|
||||
default:
|
||||
@ -1722,6 +1715,12 @@ mark_choicepoints(register choiceptr gc_B, tr_fr_ptr saved_TR, int very_verbose)
|
||||
}
|
||||
|
||||
|
||||
if (gc_B->cp_ap == lu_cl0 ||
|
||||
gc_B->cp_ap == lu_cl ||
|
||||
gc_B->cp_ap == su_cl) {
|
||||
CELL *pt = (CELL *)IntegerOfTerm(gc_B->cp_args[1]);
|
||||
mark_db_fixed(pt);
|
||||
}
|
||||
/* for each saved register */
|
||||
for (saved_reg = &gc_B->cp_a1;
|
||||
/* assumes we can count registers in CP this
|
||||
|
@ -127,8 +127,6 @@ low_level_trace(yap_low_level_port port, PredEntry *pred, CELL *args)
|
||||
}
|
||||
#endif
|
||||
vsc_count++;
|
||||
if (vsc_count < 16489200)
|
||||
return;
|
||||
#ifdef COMMENTED
|
||||
// if (vsc_count == 218280)
|
||||
// vsc_xstop = 1;
|
||||
|
Reference in New Issue
Block a user