Commit Graph

287 Commits

Author SHA1 Message Date
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
vsc
13080439a6 small fixes on threaded implementation.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1700 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-10-10 14:08:17 +00:00
vsc
4ff41f7a62 improve indexing on floats
fix sending large lists to DB


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1692 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-09-20 20:03:51 +00:00
vsc
98de08022b WIN32 fixes
compiler bug fixes
extend interface


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1632 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-05-16 18:37:31 +00:00
vsc
955c6d7b32 avoid uninitialised memory at overflow.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1627 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-05-02 16:44:11 +00:00
vsc
9bb06c4c7e bug in indexing code
fix warning messages for write.c


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1626 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-05-02 16:39:06 +00:00
vsc
da7da82733 don't use <= to compare with block top (libc may not have block header).
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1613 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-04-27 17:04:08 +00:00
rslopes
87a481ca45 *** empty log message ***
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1612 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-04-27 14:13:24 +00:00
vsc
5198ba1077 more graph stuff.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1603 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-04-20 15:28:08 +00:00
vsc
af65e2dbc2 fix bug in clause: a trust_me followed by a try should be implemented by
reusing the choice-point.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1598 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-04-12 18:56:50 +00:00
vsc
30318bb60d Lots of fixes (check logfile for details
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1585 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-04-05 00:16:55 +00:00
rslopes
f8360b6016 New update to BEAM engine.
BEAM now uses YAP Indexing (JITI)


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1578 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-03-24 17:13:41 +00:00
vsc
3241452d64 take better care of zombies
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1574 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-03-22 20:07:28 +00:00
vsc
e90ddb032f avoid looking around when expanding for statics too.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1571 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-03-21 21:30:54 +00:00
vsc
b38d4fc941 fix fix on index expansion
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1570 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-03-21 19:20:35 +00:00
vsc
a578a778a4 prevent breakage
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1569 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-03-21 17:11:39 +00:00
vsc
8812310636 fixes to handle expansion of dyn amic predicates more efficiently.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1568 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-03-21 15:06:36 +00:00
vsc
1edb3a8115 fix indexing and tabling bugs
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1567 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-03-20 19:51:44 +00:00
vsc
ea6594491c indexing code would get confused about size of float/1, db_reference1.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1549 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-02-22 11:55:36 +00:00
vsc
7f360393f4 disable indexing on bigints
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1546 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-02-19 02:55:46 +00:00
vsc
3715f1b1d7 fix bug with very large integers
fix bug where indexing code was looking at code after a cut.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1513 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-01-16 02:57:52 +00:00
vsc
f5002fa37f updates to gprof
support for __POWER__
Try to saveregs before longjmp.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1485 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-12-23 00:20:14 +00:00
vsc
60d79804fe major changes to support online event-based profiling
improve error discovery and restart on scanner.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1477 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-12-17 03:25:39 +00:00
tiagosoares
da4e302b28 removed some compilation warnings related to the cut-c code
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1471 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-11-24 15:35:29 +00:00
tiagosoares
83b5a160f8 support for executing c code when a cut occurs
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1463 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-11-18 18:52:41 +00:00
vsc
1c02fa4fdc people should be able to disable indexing.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1427 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-10-29 02:21:47 +00:00
rslopes
030d16c40f BEAM for YAP update...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1385 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-09-08 22:06:45 +00:00
vsc
101abc67d0 fix bug in processing overflows of expand_clauses.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1365 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-08-17 18:48:35 +00:00
vsc
b8f1beec74 fix debugger to do well nonsource predicates.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1354 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-08-02 03:09:52 +00:00
ricroc
b36b836820 TABLING NEW: better support for incomplete tabling
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1351 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-08-01 15:40:39 +00:00
rslopes
3cb65ee103 fix for older compilers...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1346 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-07-19 16:54:20 +00:00
vsc
fc853dddfa Yap should respect single argument indexing.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1345 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-07-18 17:41:16 +00:00
ricroc
3a93e0e079 TABLING: answers for completed calls can now be obtained by loading (new option) or executing (default) them from the trie data structure.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1342 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-07-06 19:34:12 +00:00
vsc
f6da8078ae ifix some wierd cases in indexing code:
would not look at next argument
problem with pvar as last clause (R Camacho).


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1337 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-07-05 18:32:32 +00:00