fixes for thread support
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1153 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
This commit is contained in:
parent
3ab3fb59cc
commit
2c91ebc7bc
@ -10,8 +10,11 @@
|
||||
* *
|
||||
* File: absmi.c *
|
||||
* comments: Portable abstract machine interpreter *
|
||||
* Last rev: $Date: 2004-09-30 19:51:53 $,$Author: vsc $ *
|
||||
* Last rev: $Date: 2004-09-30 21:37:40 $,$Author: vsc $ *
|
||||
* $Log: not supported by cvs2svn $
|
||||
* Revision 1.147 2004/09/30 19:51:53 vsc
|
||||
* fix overflow from within clause/2
|
||||
*
|
||||
* Revision 1.146 2004/09/27 20:45:02 vsc
|
||||
* Mega clauses
|
||||
* Fixes to sizeof(expand_clauses) which was being overestimated
|
||||
@ -1240,7 +1243,7 @@ Yap_absmi(int inp)
|
||||
{
|
||||
yamop *ipc;
|
||||
#if defined(YAPOR) || defined(THREADS)
|
||||
PredEntry *pe = PREG->u.Ill.l1->u.ld.p;
|
||||
PredEntry *pe = PREG->u.Ill.p;
|
||||
#endif
|
||||
|
||||
/* update ASP before calling IPred */
|
||||
|
14
C/amasm.c
14
C/amasm.c
@ -11,8 +11,17 @@
|
||||
* File: amasm.c *
|
||||
* comments: abstract machine assembler *
|
||||
* *
|
||||
* Last rev: $Date: 2004-09-27 20:45:02 $ *
|
||||
* Last rev: $Date: 2004-09-30 21:37:40 $ *
|
||||
* $Log: not supported by cvs2svn $
|
||||
* Revision 1.63 2004/09/27 20:45:02 vsc
|
||||
* Mega clauses
|
||||
* Fixes to sizeof(expand_clauses) which was being overestimated
|
||||
* Fixes to profiling+indexing
|
||||
* Fixes to reallocation of memory after restoring
|
||||
* Make sure all clauses, even for C, end in _Ystop
|
||||
* Don't reuse space for Streams
|
||||
* Fix Stream_F on StreaNo+1
|
||||
*
|
||||
* Revision 1.62 2004/08/20 16:16:23 vsc
|
||||
* growheap was not checking some compiler instructions
|
||||
* source was getting confused in reconsult
|
||||
@ -339,6 +348,9 @@ a_lucl(op_numbers opcode, yamop *code_p, int pass_no, struct intermediates *cip)
|
||||
code_p->u.Ill.l1 = emit_ilabel(cip->cpc->rnd1, cip);
|
||||
code_p->u.Ill.l2 = emit_ilabel(cip->cpc->rnd2, cip);
|
||||
code_p->u.Ill.s = cip->cpc->rnd3;
|
||||
#if defined(YAPOR) || defined(THREADS)
|
||||
code_p->u.Ill.p = cip->CurrentPred;
|
||||
#endif
|
||||
}
|
||||
GONEXT(Ill);
|
||||
return code_p;
|
||||
|
@ -1,4 +1,3 @@
|
||||
|
||||
/*************************************************************************
|
||||
* *
|
||||
* YAP Prolog *
|
||||
@ -12,8 +11,11 @@
|
||||
* File: cdmgr.c *
|
||||
* comments: Code manager *
|
||||
* *
|
||||
* Last rev: $Date: 2004-09-30 19:51:53 $,$Author: vsc $ *
|
||||
* Last rev: $Date: 2004-09-30 21:37:40 $,$Author: vsc $ *
|
||||
* $Log: not supported by cvs2svn $
|
||||
* Revision 1.134 2004/09/30 19:51:53 vsc
|
||||
* fix overflow from within clause/2
|
||||
*
|
||||
* Revision 1.133 2004/09/27 20:45:02 vsc
|
||||
* Mega clauses
|
||||
* Fixes to sizeof(expand_clauses) which was being overestimated
|
||||
|
@ -504,7 +504,7 @@ RBMalloc(UInt size)
|
||||
if ((ADDR)db_vec > Yap_TrailTop-1024) {
|
||||
Yap_growtrail(64 * 1024L);
|
||||
#if USE_SYSTEM_MALLOC
|
||||
jump;
|
||||
/* TODO */
|
||||
#endif
|
||||
}
|
||||
return (rb_red_blk_node *)new;
|
||||
|
@ -11,8 +11,11 @@
|
||||
* File: index.c *
|
||||
* comments: Indexing a Prolog predicate *
|
||||
* *
|
||||
* Last rev: $Date: 2004-09-30 19:51:54 $,$Author: vsc $ *
|
||||
* Last rev: $Date: 2004-09-30 21:37:41 $,$Author: vsc $ *
|
||||
* $Log: not supported by cvs2svn $
|
||||
* Revision 1.100 2004/09/30 19:51:54 vsc
|
||||
* fix overflow from within clause/2
|
||||
*
|
||||
* Revision 1.99 2004/09/27 20:45:03 vsc
|
||||
* Mega clauses
|
||||
* Fixes to sizeof(expand_clauses) which was being overestimated
|
||||
@ -5802,6 +5805,9 @@ replace_lu_block(LogUpdIndex *blk, int flag, PredEntry *ap, yamop *code, int has
|
||||
codep->opc = Yap_opcode(_enter_lu_pred);
|
||||
codep->u.Ill.s = begin->u.Ill.s;
|
||||
codep->u.Ill.I = ncl;
|
||||
#if defined(YAPOR) || defined(THREADS)
|
||||
codep->u.Ill.p = ap;
|
||||
#endif
|
||||
codep = NEXTOP(codep,Ill);
|
||||
ocodep = begin->u.Ill.l1;
|
||||
if (flag == RECORDA) {
|
||||
|
14
H/amidefs.h
14
H/amidefs.h
@ -11,8 +11,17 @@
|
||||
* File: amidefs.h *
|
||||
* comments: Abstract machine peculiarities *
|
||||
* *
|
||||
* Last rev: $Date: 2004-09-27 20:45:04 $ *
|
||||
* Last rev: $Date: 2004-09-30 21:37:41 $ *
|
||||
* $Log: not supported by cvs2svn $
|
||||
* Revision 1.25 2004/09/27 20:45:04 vsc
|
||||
* Mega clauses
|
||||
* Fixes to sizeof(expand_clauses) which was being overestimated
|
||||
* Fixes to profiling+indexing
|
||||
* Fixes to reallocation of memory after restoring
|
||||
* Make sure all clauses, even for C, end in _Ystop
|
||||
* Don't reuse space for Streams
|
||||
* Fix Stream_F on StreaNo+1
|
||||
*
|
||||
* Revision 1.24 2004/04/14 19:10:40 vsc
|
||||
* expand_clauses: keep a list of clauses to expand
|
||||
* fix new trail scheme for multi-assignment variables
|
||||
@ -227,6 +236,9 @@ typedef struct yami {
|
||||
struct yami *l1;
|
||||
struct yami *l2;
|
||||
COUNT s;
|
||||
#if defined(YAPOR) || defined(THREADS)
|
||||
struct pred_entry *p;
|
||||
#endif
|
||||
CELL next;
|
||||
} Ill;
|
||||
struct {
|
||||
|
@ -20,7 +20,7 @@
|
||||
regexp/4
|
||||
]).
|
||||
|
||||
:- load_foreign_files([regexp,regcomp,regfree,regerror,regexec], [], init_regexp).
|
||||
:- load_foreign_files([regexp], [], init_regexp).
|
||||
|
||||
regexp(RegExp, String, Opts) :-
|
||||
length(RegExp, LRE),
|
||||
|
Reference in New Issue
Block a user