Commit Graph

161 Commits

Author SHA1 Message Date
Vítor Santos Costa
cadb0fe4ae ifix bad call to unnumbervars. 2011-11-16 14:59:28 +00:00
Vítor Santos Costa
64dded4a53 iunnumbervars may be copying terms from outside the stacks, so don't share
unless we know we share.
2011-11-04 09:28:33 +00:00
Vítor Santos Costa
6ed7736c28 C implementation of numbervars 2011-11-03 07:44:08 +09:00
Vitor Santos Costa
15f5277ca4 use structure for visited terms in hash.
predicates that did stack expansion were declared safe.
2011-07-06 17:26:53 -04:00
Joao
971ad94311 moved several global variables to misc/GLOBALS 2011-05-25 16:40:36 +01:00
Joao
8170f6d3cb Some global variables(Yap_thread_gl) in C/init.c are now declared in misc/LOCALS 2011-05-23 16:19:47 +01:00
Vítor Santos Costa
8fb8aec9bf MULTIPLE_STACKS - or-parallelism/threads/tabling
YAPOR_THREADS - threads with or-parallelism
make tabling require reference counting for dynamic predicates.
2011-04-14 18:51:11 +01:00
Vitor Santos Costa
d51dc81032 fix bad left-over. 2011-03-19 23:24:13 +00:00
Vitor Santos Costa
a1fbcf872b bad handling of overflow. 2011-03-19 23:21:37 +00:00
Vítor Santos Costa
0d8aed7971 new implementation of corourining... 2011-03-18 19:34:58 +00:00
Vítor Santos Costa
90d93fdbdd cache abstra machine register in threaded mode. 2011-03-07 16:02:55 +00:00
Vítor Santos Costa
e509d11c2e routines to copy rational terms to tree and vice-versa. 2010-11-01 20:11:28 +00:00
Vítor Santos Costa
388f4fb782 expand C-interface to allow access to common term operations (request from Ingo Molnar). 2010-08-02 19:48:17 +01:00
Vítor Santos Costa
e031026a62 instrument PE locking
fix missing unlock in index_pred (if predicate had been indexed while we were
waiting).
2010-07-25 11:22:16 +01:00
Vitor Santos Costa
a7612bb15e fix bad call to subsumes (obs from Jose Santos) 2010-07-21 00:09:24 +01:00
Vitor Santos Costa
6183ff0282 semweb and http compile now (but they don't work properly yet). 2010-07-15 23:35:37 +01:00
Vitor Santos Costa
a45105ee04 export wide atoms and add a little comment.y 2010-07-15 17:46:52 +01:00
Vitor Santos Costa
b2184ecb00 term export and import routines 2010-07-15 17:19:37 +01:00
Vítor Santos Costa
11641c5f94 64 bit cleanups. 2010-05-06 15:00:44 +01:00
Vitor Santos Costa
da51afc1e4 fix term_hash of floats and large ints (obs from Jose Santos). 2010-03-22 00:09:50 +00:00
Vítor Santos Costa II
3c67550975 fix stupid use of ++ within macro. 2010-03-15 16:20:47 +00:00
Vitor Santos Costa
8b6b9e9ac3 we don't need to wakeup variables that have no attributes, even if they have been bound. 2010-03-15 14:17:30 +00:00
Vitor Santos Costa
4fafe10fbe fix error messages 2010-03-14 09:32:04 +00:00
Vitor Santos Costa
222ead095c term_attvars/2. 2010-03-12 08:49:12 +00:00
Vitor Santos Costa
30a4f3cfe7 fixes to support copy_term and nb_ 2010-03-12 08:24:58 +00:00
Vitor Santos Costa
3d10482cc7 more upgrades to new coroutining code. 2010-03-10 14:06:07 +00:00
Vitor Santos Costa
34ca485e42 new Atts code. 2010-03-08 09:23:58 +00:00
Vitor Santos Costa
2702c7e973 oops, forgot deref 2010-01-25 21:28:51 +00:00
Vitor Santos Costa
5cd85f4eaa export Yap_IsGroundTerm(t) 2010-01-25 12:28:49 +00:00
Vítor Manuel de Morais Santos Costa
a7c1e9afba fix hashing over empty atoms (obs from Jose Santos). 2010-01-21 15:21:26 +00:00
Vitor Santos Costa
2edc06b6a2 fix unifiable for attributed variables (obs from Jiefei Ma). 2010-01-21 09:47:55 +00:00
Vitor Santos Costa
6852a0c861 make =@= an well known alias to variant. 2009-11-23 10:10:14 +00:00
Vitor Santos Costa
7b85efff0c subsumes should check for loops (Ulrich's #146). 2009-11-17 02:08:01 +00:00
Vitor Santos Costa
0179998d60 change Heap.h to YapHeap.h
rename $live to prolog/0 (for SWI compatibility).
2009-10-23 14:22:17 +01:00
Costa Vitor
56d37591a5 fix var_in_term 2009-09-12 17:17:16 -05:00
Costa Vitor
bf9091b5ed fix bug in copyterm 2009-06-17 14:43:24 -05:00
Costa Vitor
ec595374a6 fix allocation of temporary stack so that unification can work even for
very deep terms.
fix occur_unification_bug X = a(f(Y)).
2009-05-22 18:35:24 -05:00
Vitor Santos Costa
780b629bff fix bad handling of trail overflow. 2009-05-04 21:26:47 -05:00
Vitor Santos Costa
b5dc71d080 is_list/1 is now a builtin. 2009-04-24 10:31:53 -05:00
Vitor Santos Costa
cc7ff82275 term_hash non non_ground terms: ignoring the variables. 2009-03-31 21:56:12 +01:00
Vitor Santos Costa
b744fabb71 new predicates for variable search in term. 2009-03-10 16:21:05 +00:00
Vitor Santos Costa
cd548813fd make $variables_in_term/3 check for repeated variables, ie (vint(a(X),[X],[X])). 2009-03-09 14:15:41 +00:00
Vítor Santos Costa
a8ac9bfb43 generate known atoms and functors automatically 2008-12-23 01:53:52 +00:00
Vítor Santos Costa
13dd600f88 add type to BIG NUMs, so that we can easily know what it is all about. 2008-11-28 15:54:46 +00:00
Vitor Santos Costa
99c5cb3e36 new version of term_hash based on SWI-ideas.
It handles infinite terms, and it seems to be a better hash.
2008-11-18 11:28:11 +00:00
Vítor Santos Costa
17ba194c1e Include new instruction execute_cpred to perform tail optimisation for
builtins. Required changes:
- be careful about creeping in deallocate: it may be followed by
something that is not a cut nor a proceed.
- include new instruction in absmi.c: it is a merge of execute and
call_cpred.
- change compiler to generate execute even for C builtins.
- be careful with dexecute: it may not be done if execute_op is a C
builtin.
- if we are in execute_cpred, the garbage collector cannot trust P:
instead it must look at CP to find out the size of the current
environment. The macro gc_P receives that information.
- We don't need to change CP if we do a meta-call from within
execute_cpred (and we in fact cannot). Check places where we do
meta-calls: exec, clause in cdmgr, and lu_recorded.
2008-08-28 04:43:00 +01:00
vsc
d170b34624 MaxOS fixes
Avoid a thread deadlock
improvements to SWI predicates.
make variables_in_term system builtin.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2304 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-08-12 01:27:23 +00:00
vsc
85d7d39dbf more thread fixes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2297 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-08-06 17:32:22 +00:00
vsc
257c3a2cbc fix threads and LU
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2233 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-05-10 23:24:13 +00:00
vsc
92d26f604e term_variables could store local variable in global.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2199 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-04-03 10:50:28 +00:00
vsc
b2274186bd make or-parallelism compile again
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2164 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-03-25 16:45:53 +00:00
vsc
d02bc3de81 update chr
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2143 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-03-13 14:38:02 +00:00
vsc
af0fb4f4d9 SWI-portability changes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2088 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-02-12 17:03:59 +00:00
vsc
01432a467a fix a few extra overflows.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1993 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-11-14 09:23:42 +00:00
vsc
c0c2d8767b fix trail overflow while copying huge terms
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1990 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-11-12 10:39:49 +00:00
vsc
a5f5f4c237 compile ground terms away.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1975 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-11-06 17:02:13 +00:00
vsc
1656d383d5 more small fixes (thanks to Markis Triska)
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1953 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-10-11 14:25:09 +00:00
vsc
7f366435f4 fixes to copy term
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1931 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-09-21 13:52:52 +00:00
vsc
9cdf70aa41 fix number of overflows (comments by Bart Demoen).
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1857 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-03-27 13:48:51 +00:00
vsc
78b52b925c diverse fixes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1738 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-12-27 01:32:38 +00:00
vsc
f0b132b083 more fixes for global data-structures.
statistics on atom space.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1690 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-09-01 20:14:42 +00:00
vsc
d11fd73306 global variables
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1685 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-08-22 16:12:46 +00:00
vsc
0f714371e5 fix garbage collector not to try to garbage collect when we ask for large
chunks of stack in a single go.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1684 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-08-07 18:51:44 +00:00
vsc
79c0a8cc27 fix nasty variable shunting bug in garbage collector :-(:wq
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1583 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-03-30 01:11:10 +00:00
vsc
9e697d5bee bignum support fixes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1531 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-02-01 13:28:57 +00:00
vsc
640bbe7431 fix default opyions for Makefile so that both coroutining and rational trees are
enabled.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1429 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-10-30 00:32:55 +00:00
vsc
1fa46c6051 sveral updates
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1415 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-10-28 17:38:50 +00:00
vsc
38b3140eab change array semantics to allow creating same array several times.
implement SWI style global variables.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1395 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-09-22 03:26:13 +00:00
rslopes
934f7d6791 solved warning: cast from pointer to integer of different size
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1348 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-07-20 13:54:42 +00:00
vsc
697604bbae fix fix to ground
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1276 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-04-15 20:26:45 +00:00
vsc
f331b192c3 fix overflows in user utilities
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1273 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-04-13 19:37:32 +00:00
vsc
59561e2688 fix excessive pruning in meta-calls
fix Term->int breakage in compiler
improve JPL (at least it does something now for amd64).


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1264 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-03-13 06:26:13 +00:00
vsc
9807a22069 Improve error handling routine, trying to make it more robust.
Improve hole handling in stack expansion
Clause interrpeter was supposed to prune _trust_me
Wrong messages for acos and atanh


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1249 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-02-24 21:46:40 +00:00
vsc
0139bfc33a amd64 fixes
library fixes


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1247 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-02-21 16:50:21 +00:00
vsc
18f0de5486 fix log(0.0) and log10(0.0) to be SICStus compatible.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1245 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-02-18 21:34:02 +00:00
vsc
ae2a53d2e3 fix overflows
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1211 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-12-16 05:57:32 +00:00
vsc
5143aebb01 try to reduce overheads when running with goal expansion enabled.
CLPBN fixes
Handle overflows when allocating big clauses properly.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1193 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-12-05 05:01:45 +00:00
vsc
0070c26061 a few fixes for 64 bit compiling.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1178 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-11-19 17:14:15 +00:00
vsc
8d2cb067ec fix situation where we might assume nonextsing double initialisation of C predicates (use
Hidden Pred Flag).
$host_type was double initialised.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1177 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-11-18 22:32:40 +00:00
vsc
ac2a3b01af change configure to support big mem configs
get rid of extra globals
fix trouble with multifile preds


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1155 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-10-06 16:55:48 +00:00
vsc
2e2df1a64f IsUnboundVar should check addresses
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1144 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-09-18 14:03:42 +00:00
vsc
bb2cb9e9f8 fix some overflows recorded.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1141 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-09-17 20:47:35 +00:00
vsc
c042f13930 more fixes for overflows in copy_term with attributed variables (not necessarily).
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1131 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-09-09 20:00:59 +00:00
vsc
3c44b02093 alwas make sure you are looking at a variable before checking IsUnboundVar
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1130 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-09-08 19:06:57 +00:00
vsc
040280ea73 fix overflow of attributed variables in copy_term
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1126 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-09-07 20:20:12 +00:00
vsc
33bd3a9385 fix variant and friends
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1092 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-07-12 16:01:21 +00:00
vsc
ceaa77c6f5 fix copy_term for attributed variables.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1079 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-06-16 14:10:20 +00:00
vsc
9d12384db1 debugger fixes
make sure we always go back to current module, even during initizlization.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1062 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-05-13 20:54:58 +00:00
vsc
91f87b3109 more fixes for USE_SYSTEM_MEMORY
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1047 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-04-22 20:07:07 +00:00
vsc
27f85f3355 fixes for corourining
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1042 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-04-20 22:08:57 +00:00
vsc
ea52ce8b26 fixes for copy_term
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1041 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-04-19 17:06:51 +00:00
vsc
cfd3683891 fix integer as DBRef
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@971 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-02-09 14:19:05 +00:00
vsc
ba9876268f threads, clean signals, and much more...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@957 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-01-23 02:23:51 +00:00
vsc
77bb5fed93 variant and subsumes with coroutining should always reset to slot, not to
value.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@906 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2003-10-28 16:20:44 +00:00
vsc
bd383b7e3f more fixes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@827 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2003-05-19 13:04:09 +00:00
vsc
d7f80ea1ad Stasinos noticed that _YAP_ breaks C standard: use Yap_ instead.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@691 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-11-18 18:18:05 +00:00
vsc
7b2c4dc6ff all global symbols should now start with _YAP
global functions should not be called from within file (bug in
binutils/WIN32).


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@675 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-11-11 17:38:10 +00:00
vsc
523fae9544 stack overflow patches:
process overflows as high-level as possible;
   introduce overflow related errors
   ExpandWorkSpace should never call Error: use ErrorMessage instead,
   format_putc should never release memory, causes memory corruption,
   Linux does not like MAP_FIXED, it can overwrite the actual program
code.
   condor: twick configure to disable readline with condor.
----------------------------------------------------------------------


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@632 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-10-10 05:58:49 +00:00
vsc
dba17092b2 fix error handling when copy_term was not called from a builtin.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@624 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-10-07 21:20:12 +00:00
vsc
325cfeeadc fix debugging info
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@570 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-08-13 17:02:26 +00:00