Commit Graph

134 Commits

Author SHA1 Message Date
Vítor Santos Costa
1226b58d8e The debugger relied on the environment stack. To fix it:
- absmi.c now tells who called the debugger, besides who it was calling
- this is used to control whether we allow a goal to be debugged.
- I have creep to start creeping immediately, and signal_creep to tell
  the next meta-call to creep what it executes!
- The debugger uses CalledFromTheDebugger to know if it is within the
debugger. If so, we do not need to creep on leaving.
2008-08-30 02:39:36 +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
vsc
e1866e2917 improve C-interface and SWI comptaibility a bit.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2292 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-07-24 16:02:04 +00:00
vsc
ac6ddd5005 fix syntax error messages
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2275 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-06-12 10:55:52 +00:00
vsc
0c4388a66b fix some restore bugs
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2212 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-04-06 11:53:02 +00:00
vsc
6fe55c580f fix flags
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2152 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-03-15 12:19:33 +00:00
vsc
e748bd9b33 more fixes to modules
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2102 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-02-15 12:41:33 +00:00
vsc
a4a26478e0 fix some bugs from yesterday plus improve support for modules in
operators.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2095 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-02-13 10:15:36 +00:00
vsc
83e941e4cf don't break ISO standard in current_predicate/1.
Include Nicos flag.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2081 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-02-07 23:09:13 +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
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
c625347697 fix global variables
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1962 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-10-18 08:24:16 +00:00
vsc
5df974b857 some more fixes to make YAP swi compatible
fix absolute_file_name (again)
fix setarg


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1951 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-10-10 09:44:28 +00:00
vsc
d4f01ee67b minor fixes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1946 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-10-08 23:02:16 +00:00
vsc
dc3b7079f4 fix deadlock when trying to create a module with the same name as a
predicate (for now, just don't lock modules). obs Paulo Moura.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1869 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-04-18 23:01:16 +00:00
vsc
e10bb2a6ae fix prolog_flags for chr.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1802 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-02-26 10:41:40 +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
90c1641841 several debugger and CLP(BN) improvements.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1732 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-12-13 16:10:26 +00:00
vsc
ac8590d1f6 fix wide_char support for name/2.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1729 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-11-28 13:46:41 +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
1d49a93d76 fix handling of infinity in name/2 and friends.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1721 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-11-16 14:26:00 +00:00
vsc
39ae1ce717 fix argument order in db statistics.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1715 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-11-08 01:56:47 +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
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
07b2b76c48 ichanges for QSAR
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1691 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-09-15 19:32:47 +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
93501eb171 hacks
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1668 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-06-05 19:36:00 +00:00
vsc
eea9f2a58e get rid of IntArrays and FloatArray code.
include holes when calculating memory usage.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1640 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-05-19 14:31:32 +00:00
vsc
ee78d90bb9 fix info reported by memory manager under DL_MALLOC and SYSTEM_MALLOC
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1635 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-05-18 16:33:05 +00:00
vsc
62f7b73f09 fix the expand_consult patch
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1618 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-04-28 17:53:44 +00:00
vsc
6fb10bfc51 fix number of overflow bugs affecting threaded version
make current_op faster.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1615 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-04-28 13:23:23 +00:00
tiagosoares
8b5e4a267c MYDDAS: Top Level Functionality
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1535 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-02-05 02:26:35 +00:00
tiagosoares
8012773ae1 MYDDAS: Top Level Functionality
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1534 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-02-05 02:19:15 +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
253f5e7f9a support for the MyDDAS interface library
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1465 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-11-22 11:25:59 +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
f5fc38a79e SWI compatible module only operators
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1412 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-10-21 16:09:03 +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
ricroc
34b2a0df4f TABLING NEW: support to limit the table space size
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1355 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-08-04 15:45:56 +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
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
6979a873cc improvements to compiler: merged instructions and fixes for ->
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1338 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-07-06 15:10:18 +00:00
rslopes
35357f7f17 *** empty log message ***
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1294 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-05-26 18:03:08 +00:00
vsc
4c15c9371e indexing code could get confused with suspension points
some further improvements on oveflow handling
fix paths in Java makefile
changs to support gibbs sampling in CLP(BN)


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1283 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-04-27 20:09:26 +00:00
ricroc
de17f5cca4 Adding tabling support for mixed strategy evaluation (batched and local scheduling)
UPDATE: compilation flags -DTABLING_BATCHED_SCHEDULING and -DTABLING_LOCAL_SCHEDULING removed. To support tabling use -DTABLING in the Makefile or --enable-tabling in configure.
  NEW: yap_flag(tabling_mode,MODE) changes the tabling execution mode of all tabled predicates to MODE (batched, local or default).
  NEW: tabling_mode(PRED,MODE) changes the default tabling execution mode of predicate PRED to MODE (batched or local).


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1268 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-04-07 17:56:58 +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
81b4413a33 Fix some possible errors in name/2 and friends, and cleanup code a bit
YAP_Error changed.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1256 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-03-02 19:48:03 +00:00