diff --git a/C/absmi.c b/C/absmi.c index e9c490d61..13d1552bb 100644 --- a/C/absmi.c +++ b/C/absmi.c @@ -10,8 +10,11 @@ * * * File: absmi.c * * comments: Portable abstract machine interpreter * -* Last rev: $Date: 2006-01-26 19:13:24 $,$Author: vsc $ * +* Last rev: $Date: 2006-02-01 13:28:56 $,$Author: vsc $ * * $Log: not supported by cvs2svn $ +* Revision 1.194 2006/01/26 19:13:24 vsc +* avoid compilation issues with lack of gmp (Remko Troncon) +* * Revision 1.193 2006/01/18 15:34:53 vsc * avoid sideffects from MkBigInt * @@ -9835,9 +9838,7 @@ Yap_absmi(int inp) { Int d1 = PREG->u.xxc.c; if (IsIntTerm(d0)) { - fprintf(stderr,"%d<<%d\n",IntOfTerm(d0), d1); d0 = do_sll(IntOfTerm(d0), (Int)d1); - fprintf(stderr,"%d\n",IntegerOfTerm(d0)); } else { saveregs(); diff --git a/C/bignum.c b/C/bignum.c index eea2787e6..8000af4a2 100644 --- a/C/bignum.c +++ b/C/bignum.c @@ -38,8 +38,8 @@ Yap_MkBigIntTerm(MP_INT *big) CELL *ret = H; if (mpz_fits_slong_p(big)) { - int out = mpz_get_si(big); - return MkIntegerTerm(out); + long int out = mpz_get_si(big); + return MkIntegerTerm((Int)out); } nlimbs = (big->_mp_alloc)*(sizeof(mp_limb_t)/CellSize); if (nlimbs > (ASP-ret)-1024) { diff --git a/C/cdmgr.c b/C/cdmgr.c index 9d5b43e20..29cd5856e 100644 --- a/C/cdmgr.c +++ b/C/cdmgr.c @@ -11,8 +11,11 @@ * File: cdmgr.c * * comments: Code manager * * * -* Last rev: $Date: 2006-01-08 03:12:00 $,$Author: vsc $ * +* Last rev: $Date: 2006-02-01 13:28:56 $,$Author: vsc $ * * $Log: not supported by cvs2svn $ +* Revision 1.175 2006/01/08 03:12:00 vsc +* fix small bug in attvar handling. +* * Revision 1.174 2005/12/23 00:20:13 vsc * updates to gprof * support for __POWER__ @@ -5283,7 +5286,7 @@ p_predicate_erased_statistics(void) Yap_unify(ARG5,MkIntegerTerm(isz)); } -static int +static Int p_program_continuation(void) { PredEntry *pe = EnvPreg(((CELL *)ENV[E_E])[E_CP]); diff --git a/C/exec.c b/C/exec.c index 33fd1e629..d86c4afce 100644 --- a/C/exec.c +++ b/C/exec.c @@ -263,7 +263,8 @@ do_execute_n(Term t, Term mod, unsigned int n) Atom Name; register CELL *pt; PredEntry *pen; - unsigned int i, arity, j = -n; + unsigned int i, arity; + int j = -n; restart_exec: if (IsVarTerm(t)) { diff --git a/C/gprof.c b/C/gprof.c index 56a1da1d5..914abd73b 100644 --- a/C/gprof.c +++ b/C/gprof.c @@ -11,8 +11,13 @@ * File: gprof.c * * comments: Interrupt Driven Profiler * * * -* Last rev: $Date: 2006-01-17 14:10:40 $,$Author: vsc $ * +* Last rev: $Date: 2006-02-01 13:28:56 $,$Author: vsc $ * * $Log: not supported by cvs2svn $ +* Revision 1.3 2006/01/17 14:10:40 vsc +* YENV may be an HW register (breaks some tabling code) +* All YAAM instructions are now brackedted, so Op introduced an { and EndOp introduces an }. This is because Ricardo assumes that. +* Fix attvars when COROUTING is undefined. +* * Revision 1.2 2005/12/23 00:20:13 vsc * updates to gprof * support for __POWER__ @@ -905,7 +910,7 @@ prof_alrm(int signo, siginfo_t *si, void *scv) ProfCalls++; if (Yap_PrologMode & TestMode) { if (Yap_OffLineProfiler) { - fprintf(FProf,"%p %p\n", (void *) (Yap_PrologMode & TestMode), P); + fprintf(FProf,"%p %p\n", (void *) ((CELL)Yap_PrologMode & TestMode), P); ProfOn = FALSE; return; } diff --git a/C/iopreds.c b/C/iopreds.c index d9d397b94..043cea1b1 100644 --- a/C/iopreds.c +++ b/C/iopreds.c @@ -4142,7 +4142,7 @@ format(volatile Term otail, volatile Term oargs, int sno) if (IsIntegerTerm(t)) { Int il = IntegerOfTerm(t); #if HAVE_SNPRINTF - snprintf(tmp1, 256, "%d", il); + snprintf(tmp1, 256, "%ld", il); #else sprintf(tmp1, "%ld", (long int)il); #endif diff --git a/C/utilpreds.c b/C/utilpreds.c index e7e4b8375..dc343c86d 100644 --- a/C/utilpreds.c +++ b/C/utilpreds.c @@ -1812,7 +1812,7 @@ static int subsumes_complex(register CELL *pt0, register CELL *pt0_end, register pt0_end = to_visit[1]; pt1 = to_visit[2]; *pt0 = (CELL)to_visit[3]; - write_mode = (int)to_visit[4]; + write_mode = (Int)to_visit[ 4]; to_visit += 5; #else pt0 = to_visit[0]; diff --git a/H/Regs.h b/H/Regs.h index 8774d0430..468277ba3 100644 --- a/H/Regs.h +++ b/H/Regs.h @@ -10,7 +10,7 @@ * File: Regs.h * * mods: * * comments: YAP abstract machine registers * -* version: $Id: Regs.h,v 1.34 2006-01-17 22:50:10 tiagosoares Exp $ * +* version: $Id: Regs.h,v 1.35 2006-02-01 13:28:56 vsc Exp $ * *************************************************************************/ @@ -30,6 +30,11 @@ #undef PUSH_X #endif +#ifdef __x86_64__ +#undef PUSH_REGS +#undef PUSH_X +#endif + #if defined(sparc) || defined(__sparc) #undef PUSH_REGS #undef PUSH_X diff --git a/H/absmi.h b/H/absmi.h index 377c1e89d..a00ef9774 100644 --- a/H/absmi.h +++ b/H/absmi.h @@ -84,6 +84,14 @@ register struct yami* P1REG asm ("bp"); /* can't use yamop before Yap.h */ #endif /* BP_FREE */ #endif /* i386 */ +#ifdef __x86_64__ +#define SHADOW_P 1 +#define SHADOW_REGS 1 +#define SHADOW_S 1 +#define Y_IN_MEM 1 +#define TR_IN_MEM 1 +#endif /* __x86_64__ */ + #else /* other compilers */ #define S_IN_MEM 1 diff --git a/LGPL/JPL/src/jpl.c b/LGPL/JPL/src/jpl.c index 65152c12d..44fbfe918 100644 --- a/LGPL/JPL/src/jpl.c +++ b/LGPL/JPL/src/jpl.c @@ -1,4 +1,4 @@ -/* $Id: jpl.c,v 1.8 2005-05-25 18:18:00 vsc Exp $ +/* $Id: jpl.c,v 1.9 2006-02-01 13:28:56 vsc Exp $ Part of JPL -- SWI-Prolog/Java interface @@ -1908,7 +1908,7 @@ jni_create_jvm_c( // opt[optn].optionString = "abort"; // I don't understand this yet... // opt[optn++].extraInfo = jvm_abort; // opt[optn++].optionString = "-Xcheck:jni"; // extra checking of JNI calls - opt[optn++].optionString = "-Xmx1024m"; // give java enough space + opt[optn++].optionString = "-Xmx1512m"; // give java enough space // opt[optn++].optionString = "-Xnoclassgc"; // so method/field IDs remain valid (?) // opt[optn].optionString = "vfprintf"; // opt[optn++].extraInfo = fprintf; // no O/P, then SEGV diff --git a/changes-5.1.html b/changes-5.1.html index 9be04ed13..727b51020 100644 --- a/changes-5.1.html +++ b/changes-5.1.html @@ -16,6 +16,9 @@

Yap-5.1.0: