fixes to compilation of functor and ASP calculation for gc.

git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@31 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
This commit is contained in:
vsc 2001-05-08 20:39:01 +00:00
parent bac5432950
commit 3cde0b23bb
5 changed files with 13 additions and 4 deletions

View File

@ -1929,6 +1929,8 @@ absmi(int inp)
/* try performing garbage collection */
ASP = Y+E_CB;
if (ASP > (CELL *)B)
ASP = (CELL *)B;
saveregs();
gc(PredArity(SREG), ENV, CPREG);
setregs();

View File

@ -1099,8 +1099,6 @@ c_functor(Term Goal)
if (profiling)
emit(enter_profiling_op, (CELL)RepPredProp(p0), Zero);
c_args(Goal);
if (onlast)
emit(deallocate_op, Zero, Zero);
emit(safe_call_op, (CELL)p0 , Zero);
emit(empty_call_op, Zero, Zero);
emit(restore_tmps_and_skip_op, Zero, Zero);

View File

@ -113,6 +113,13 @@ check_trail_consistency(void) {
}
*/
static char *op_names[_std_top + 1] =
{
#define OPCODE(OP,TYPE) #OP
#include "YapOpcodes.h"
#undef OPCODE
};
void
low_level_trace(yap_low_level_port port, PredEntry *pred, CELL *args)
{
@ -122,7 +129,7 @@ low_level_trace(yap_low_level_port port, PredEntry *pred, CELL *args)
extern int gc_calls;
vsc_count++;
/* if (vsc_count < 420430) return; */
if (vsc_count < 2810) return;
/* if (vsc_count > 500000) exit(0); */
/* if (gc_calls < 1) return;*/
YP_fprintf(YP_stderr,"%lu ",vsc_count);

View File

@ -466,7 +466,7 @@ show_heads( [H|Hs], I, D, If) :-
( Hs=[] ->
If = I
; H=r(_,_), Hs=[k(_,_)|_] ->
errput(0' ), errput(0'\), errput(0' ),
errput(0' ), errput(0'\\ ), errput(0' ),
J is I+D,
show_heads( Hs, J, D, If)
;

View File

@ -6,6 +6,8 @@
<H2 ALIGN=CENTER>Yap-4.3.19:</H2>
<UL>
<LI> FIXED: functor/3 was generating too many deallocates at the
end of a clause.
<LI> FIXED: call_residue/2 should not allow constraints to
escape (use copy_term_no_variables/2 to avoid this).
<LI> SPEEDUP: optimise away true/0 at the end of a clause.