don't make mega-clauses always source
This commit is contained in:
parent
048c00a7a6
commit
577b99367d
@ -894,7 +894,7 @@ Yap_BuildMegaClause(PredEntry *ap)
|
||||
ap->cs.p_code.FirstClause =
|
||||
ap->cs.p_code.LastClause =
|
||||
mcl->ClCode;
|
||||
ap->PredFlags |= MegaClausePredFlag|SourcePredFlag;
|
||||
ap->PredFlags |= MegaClausePredFlag;
|
||||
Yap_inform_profiler_of_clause(mcl, (char *)mcl+required, ap, GPROF_MEGA);
|
||||
}
|
||||
|
||||
@ -6044,7 +6044,7 @@ p_dbload_get_space( USES_REGS1 )
|
||||
ap->cs.p_code.FirstClause =
|
||||
ap->cs.p_code.LastClause =
|
||||
mcl->ClCode;
|
||||
ap->PredFlags |= (MegaClausePredFlag|SourcePredFlag);
|
||||
ap->PredFlags |= (MegaClausePredFlag);
|
||||
ap->cs.p_code.NOfClauses = ncls;
|
||||
if (ap->PredFlags & (SpiedPredFlag|CountPredFlag|ProfiledPredFlag)) {
|
||||
ap->OpcodeOfPred = Yap_opcode(_spy_pred);
|
||||
|
2
C/exo.c
2
C/exo.c
@ -629,7 +629,7 @@ p_exodb_get_space( USES_REGS1 )
|
||||
ap->cs.p_code.FirstClause =
|
||||
ap->cs.p_code.LastClause =
|
||||
mcl->ClCode;
|
||||
ap->PredFlags |= MegaClausePredFlag|SourcePredFlag;
|
||||
ap->PredFlags |= MegaClausePredFlag;
|
||||
ap->cs.p_code.NOfClauses = ncls;
|
||||
if (ap->PredFlags & (SpiedPredFlag|CountPredFlag|ProfiledPredFlag)) {
|
||||
ap->OpcodeOfPred = Yap_opcode(_spy_pred);
|
||||
|
@ -275,6 +275,12 @@ writebig(Term t, int p, int depth, int rinfixarg, struct write_globs *wglb, stru
|
||||
else
|
||||
wrputc('"',wglb->stream);
|
||||
return;
|
||||
} else if (big_tag == ARRAY_INT || big_tag == ARRAY_FLOAT) {
|
||||
wrputc('{', wglb->stream);
|
||||
wrputs("...", wglb->stream);
|
||||
wrputc('}', wglb->stream);
|
||||
lastw = separator;
|
||||
return;
|
||||
} else if (big_tag >= USER_BLOB_START && big_tag < USER_BLOB_END) {
|
||||
Opaque_CallOnWrite f;
|
||||
CELL blob_info;
|
||||
@ -283,6 +289,7 @@ writebig(Term t, int p, int depth, int rinfixarg, struct write_globs *wglb, stru
|
||||
if (GLOBAL_OpaqueHandlers &&
|
||||
(f= GLOBAL_OpaqueHandlers[blob_info].write_handler)) {
|
||||
(f)(wglb->stream, big_tag, ExternalBlobFromTerm(t), 0);
|
||||
return;
|
||||
}
|
||||
}
|
||||
wrputs("0",wglb->stream);
|
||||
|
Reference in New Issue
Block a user