Commit Graph

320 Commits

Author SHA1 Message Date
Ricardo Rocha
22d8e33a5f fix cut support for or-parallelism 2011-07-13 17:36:26 +01:00
Vitor Santos Costa
e160d86304 use assembler to tell whether a clause has cut, instead of stupidly searching the clause. 2011-07-05 07:28:28 +01:00
Vítor Santos Costa
e74a25d366 handle slowdown when retracting clauses. 2011-06-24 21:08:22 +01: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
a9899c5443 ifix bad registers corrupting garbage collection. 2011-05-09 19:13:10 +01:00
Joao
d9cee607e9 Merge branch 'master' of ssh://yap.git.sourceforge.net/gitroot/yap/yap-6.3
Conflicts:
	C/cdmgr.c
2011-05-04 11:10:20 +01:00
Joao
dc3c54c164 change LOCALS macros. 2011-05-04 10:11:41 +01:00
Vítor Santos Costa
6a3e422c11 timestamps are stored as terms! (fix also uninportant bug). 2011-04-30 01:08:48 +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
26dc567a0f fix bad overflow handling. 2011-04-08 11:58:22 +01:00
Vítor Santos Costa
2a76f86785 don't lock ThreadLocal predicates. 2011-03-15 09:08:09 +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
d12762ffa2 fix missing cases in cut handling 2011-03-02 09:16:40 +00:00
Vítor Santos Costa
e93df788e5 fix indexing bug (report from Jos DeRoo). 2011-02-15 21:19:27 +00:00
ubu32
67d23051c2 fix pruning to handle backtrackable C-predicates in a much nicer way. 2011-02-14 11:29:20 -08:00
ubu32
b3fb1d1e73 ifix cut stuff 2011-02-14 06:58:42 -08:00
Vitor Santos Costa
76b3aec555 remove debugging stubs. 2011-01-20 12:01:50 -06:00
Vitor Santos Costa
4e90d68748 fix bad casts 2011-01-20 12:01:18 -06:00
Vitor Santos Costa
6e2947e8c4 avoid _longjmp 2010-12-16 01:22:10 +00:00
Vitor Santos Costa
ab8911708b fix YAP to use _longjmp when available. longjmp is just too expensive on OSX machines. 2010-10-26 22:03:36 +01:00
Vitor Santos Costa
80c38081da no need for special procceed instruction. 2010-10-12 22:02:51 +01:00
Vitor Santos Costa
e5232bc8fc force system to check for overflows at end of procceed for clauses with body. 2010-10-11 14:45:15 +01:00
Vitor Santos Costa
8f49db480d fix stupid code. 2010-08-30 21:52:11 -05:00
Vítor Santos Costa
6ee0ce8e48 support missing instructions. 2010-08-04 11:36:10 +01:00
Vitor Santos Costa
fd9f4efe0b fix indexing of bignums (obs from Jos de Roo). 2010-05-14 12:42:30 +01:00
Vitor Santos Costa
e302eb3463 fix bad assumption in indexing code. 2010-04-27 22:09:44 +01:00
Vítor Santos Costa II
052c20a29b more memory allocation fixes. 2010-04-15 22:49:25 +01:00
Vítor Santos Costa II
c4b12d5cbe - fix memory leaks
- avoid unnecessary mallocs by having a first alloc to do th ework.
2010-04-15 22:23:54 +01:00
Vitor Santos Costa
28e006b484 Merge branch 'master' of yap.dcc.fc.up.pt:yap-6 2010-04-15 11:38:55 +01:00
Vitor Santos Costa
b737ce447f improve allocation through malloc: avoid allocating labels in the stack. 2010-04-15 11:37:39 +01:00
Ricardo Rocha
e122f2ca8d Global trie support: atomic terms (vars, integers and atoms) are now stored
in the local tries (and not in the global trie). This required major changes
to the trie instructions in order to unify the use of the auxiliary stack
organization for the terms in the local tries and in the global trie.
2010-04-15 01:09:59 +01:00
Vítor Santos Costa II
894666efb8 unnecessary access could result in core dump (patch from Keri Harris). 2010-04-10 21:52:53 +01:00
Vítor Santos Costa II
b6f704fc7a fix possible memory leak. 2010-04-09 17:02:24 +01:00
Vítor Santos Costa II
222aac067b fix bad limit test (caught by valgrind). 2010-04-08 00:52:59 +01:00
Vitor Santos Costa
9110c4db71 if we use malloc, get memory out of malloc instead of using stacks. This is in order to avoid growing stacks that never contract again. 2010-03-31 15:51:18 +01:00
Vítor Santos Costa II
ff97f53a24 expand_index was broken for long_ints 2010-03-12 18:03:15 +00:00
Vítor Santos Costa
1b66eba611 fix handling of float/1 by indexing code. 2010-02-19 14:16:41 +00:00
Vítor Manuel de Morais Santos Costa
4d341f2aab fix bad call to gc (obs from Jose Santos). 2010-01-29 15:21:00 +00:00
Vitor Santos Costa
98769ce9af fix case where debugger was finding the wrong clause. 2010-01-25 10:21:40 +00:00
Vítor Manuel de Morais Santos Costa
a498dc1265 icompile table+orp 2010-01-14 17:38:39 +00:00
Vítor Manuel de Morais Santos Costa
a316090f8c fix nth_instance: fix bugs and actually add two versions (obs from Theofrastos Mantadelis) 2009-11-18 13:06:37 +00:00
Costa Vitor
f877e78785 make YAP compile with --enable-or-parallelism 2009-08-19 21:53:49 -05:00
Ricardo Rocha
5e4d7078ab support for trie compact lists (version 2): this new version uses
different marks to distinguish the lists ending with the empty list
from the lists ending with a non-empty list term.
2009-07-05 05:14:08 +01:00
Costa Vitor
50f7a80546 transfer call and profiler to spy. 2009-06-22 11:12:56 -05:00
Vitor Santos Costa
e1421f207e use DebugPlWrite for debugging writes 2009-05-22 13:23:51 -05:00
Vitor Santos Costa
2016e118b3 Ulrich Neumerkel's patch so that variables are declared in front of a block. 2009-05-02 10:54:09 -05:00
Vitor Santos Costa
b92b026c90 more patches to support Anderson's JIT. 2009-04-08 00:32:36 +01:00
Vitor Santos Costa
751426c610 fix unallocated variable in overflow. 2009-03-27 14:05:27 +00:00
Vitor Santos Costa
b198de2272 patch from master 2009-03-24 01:02:44 +00:00
Vitor Santos Costa
afd979a246 improve substantially handling of soft disjunctions. 2009-03-05 16:12:21 +00:00
Vitor Santos Costa
94ebb90719 UDI patch: make it work with YAP. 2009-02-20 11:42:48 +00:00
Vítor Santos Costa
f7046286a0 cleanups and a bug fix (it is lp now, not just p as before). 2009-02-12 21:45:41 +00:00
Vítor Santos Costa
8a6e0acedc compiler support for udi including user_index instruction 2009-02-12 21:35:31 +00:00
Vitor Santos Costa
1b41a08e74 fix indexing of tabling predicates: make sure we don't jump to the middle
of the code if we come from a retry.
2009-02-10 22:35:54 +00:00
Vitor Santos Costa
8a3978e3e1 rename BinaryTestPredFlag to BinaryPredFlag
get rid of small annoying arithmetic bugs
2009-02-09 21:56:40 +00:00
Vítor Santos Costa
11eed457c1 use automatucally generate code to find indexing information. 2008-12-29 00:14:47 +00:00
Vítor Santos Costa
a36be5bf20 massive changes to support new scheme for arithmetic:
- compilation and assembly support
2008-12-09 12:54:27 +00:00
Vitor Santos Costa
09ccb295c2 FIX: in tabling mode _trust_me was being assembled as _retry_me (obs from Chris Mungali) 2008-09-26 18:52:29 +01:00
Vitor Santos Costa
537dbb19fa "single" indexing cannot disable wait nodes for LU predicates.
Otherwise, memory recovery breaks down.
2008-09-14 05:11:51 +01:00
Vítor Santos Costa
fdf762e326 push changes to make tabling work: don't ignore tabling and yapor fields
in optype.
2008-09-05 05:22:19 +01:00
Vítor Santos Costa
0fc361d331 indexer was going bad on _pop instruction. 2008-08-30 23:59:09 +01:00
Vítor Santos Costa
b2d9eb7aac instructions xyc really has optype xyn. 2008-08-30 23:00:50 +01:00
Vitor Santos Costa
2a84e259a2 Upgrade to new CHR (with Jan's changes).
Found out I need to add an extra field to allocate so that the
exception handling code knows where the clause is.
Protect creep_allowed from NULL pointers.
2008-08-30 16:24:44 +01:00
Vitor Santos Costa
d636450512 more fixes to make rclause.h automatic:
define new type n for Integers, as they were mistaken for Term.
 define early return cases and ifdef exceptions.
2008-08-29 17:27:11 +01: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
Vítor Santos Costa
f499115573 redo lost updates 2008-08-21 13:38:25 +01:00
vsc
2581c3a3bf more threadin fixes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2300 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-08-07 20:51:23 +00:00
vsc
d8e5f2c895 fixes by Bart and Tom: mostly libraries but nasty one in indexing
compilation.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2286 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-07-11 17:02:10 +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
89bdffe91e make static_clause only commit to a lause if it is sure that is the true
clause. Otherwise, search for the clause.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2220 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-04-16 17:16:47 +00:00
vsc
3edc72b4c1 fixed a bug in static_clause (thanks to Jose Santos)
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2218 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-04-14 21:20:36 +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
ca67a28a0c fixes for indexing code.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2099 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-02-14 14:35:13 +00:00
vsc
cfa2a8f75f fix indexing in 64 bits (it would split ints from atoms :( ).
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2072 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-01-30 10:35:43 +00:00
vsc
42c88eddff clause should not try to discover who is fail.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2059 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-01-24 10:20:42 +00:00
vsc
e353d8811f garbage collector was not asking for space.
avoid 0 sized calls to mmap.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2058 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-01-24 00:11:59 +00:00
vsc
637f381d94 valgrind it!
enable atom garbage collection.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2055 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-01-23 17:57:56 +00:00
vsc
3beda27d14 fixes to support threads and assert correctly, even if inefficiently.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2030 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-11-26 23:43:10 +00:00
vsc
7b6c96e3d7 fix some bugs in new dbterm code.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1986 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-11-08 15:52:15 +00:00
vsc
42048570f3 speedup meta-calls
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1976 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-11-07 09:25:27 +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
22c5632a53 fix overflow
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1969 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-10-28 11:23:41 +00:00
vsc
0dc508eda0 nb_ extra stuff plus an indexing overflow fix.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1933 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-09-22 08:38:05 +00:00
vsc
7a98e7df59 fix bug in index emulator
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1905 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-06-20 13:48:45 +00:00
vsc
d79a6f8dcf get rid of type punning warnings.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1873 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-05-02 11:01:41 +00:00
vsc
57b7f544d1 debugging and clause/3 over tabled predicates would kill YAP.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1856 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-03-26 15:18:43 +00:00
vsc
51e0e2f54e fix excessive trail cleaning in gc tr overflow.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1853 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-03-21 23:23:46 +00:00
vsc
47765f7739 WIN32 support
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1790 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-01-28 14:26:37 +00:00
vsc
0cef3c5389 fix restore (Trevor)
make indexing a bit faster on IDB


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1771 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-01-08 08:27:19 +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
0705ca0640 support for UNICODE, and other bug fixes.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1725 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-11-27 17:42:03 +00:00
vsc
0a21ac1b71 fix I/O mess
fix spy/reconsult mess


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1724 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-11-21 16:21:33 +00:00
vsc
29642223bb fixes for indexing code.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1719 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-11-15 00:13:37 +00:00
vsc
1e78b948dd avoid generating suspensions on static code.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1714 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-11-08 01:53:08 +00:00
vsc
9c506b2a2c 1estranha
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1709 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-11-06 18:35:05 +00:00
vsc
776262bc9b fix emulation of trust_logical
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1708 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-10-25 02:31:07 +00:00
vsc
cb34dbdc88 index.c implementation of trust_logical was decrementing the wrong
cp_tr


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1706 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-10-18 13:47:32 +00:00
vsc
23e9f546fe fixes for threaded version.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1705 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-10-16 17:12:48 +00:00
vsc
d3dab0f5a1 fix memory leak
fix overflow handling
VS: ----------------------------------------------------------------------


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1702 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-10-11 14:53:57 +00:00