Commit Graph

53 Commits

Author SHA1 Message Date
Vítor Santos Costa
a8ac9bfb43 generate known atoms and functors automatically 2008-12-23 01:53:52 +00:00
Vítor Santos Costa
e737599dc4 Change to simpler Eval mechanism
- avoid duplicate code
- implement different optimised code.
2008-12-04 23:33:32 +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
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
02565ae625 some nice extra predicatesy
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2273 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-06-11 11:08:25 +00:00
vsc
1f2d769971 fix bug in add array element
make agc on by default.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1911 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-07-01 00:14:35 +00:00
vsc
400b1958b2 fix atom garbage collector (although it is still off by default)
make valgrind feel better


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1797 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-02-18 00:26:36 +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
1f5f6c7f12 fixed bug that would mnake GC and stack shifting loop.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1563 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-03-07 22:14:20 +00:00
vsc
d62ec41632 thread support fixes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1462 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-11-17 13:40:18 +00:00
vsc
4c0865ca37 more tabling fixes
use malloc when AllocCodeSpace fails
use snprintf when available.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1458 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-11-16 01:55:03 +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
vsc
40c2f19c7a fix nb_terms
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1408 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-10-19 23:17:22 +00:00
vsc
4479ee4626 extend arrays with nb_terms so that we can implement nb_ builtins
correctly.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1406 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-10-19 19:00:48 +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
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
vsc
056ccbc819 bug fixes, I hope!
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1270 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-04-10 04:01:15 +00:00
vsc
9dfcbc1de9 replace SYSTEM_ERROR by out OUT_OF_WHATEVER_ERROR whenever appropriate.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1180 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-11-19 22:08:43 +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
6e0defe923 bug in dbref arrays with log updates
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1148 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-09-28 18:37:05 +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
0de365678a simplify frozen/2
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1140 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-09-17 19:34:53 +00:00
vsc
f6503f0100 fix multithreaded version
include new version of Ricardo's profiler
new predicat atomic_concat
allow multithreaded-debugging
small fixes


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1085 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-06-29 19:04:46 +00:00
vsc
a7f550d667 New comment-based message style
Fix thread support (at least don't deadlock with oneself)
small fixes for coroutining predicates
force Yap to recover space in arrays of dbrefs
use private predicates in debugger.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1084 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-06-23 17:24:20 +00:00
vsc
34ea2e6905 fix array handling of DBRefs
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1083 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-06-18 16:35:18 +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
526ec2e50f call the garbage collector the right way
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@902 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2003-10-17 02:11:21 +00:00
vsc
17ecf0dc14 continue big commit
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@863 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2003-08-27 13:37:10 +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
bf3c147f53 support long long for profiling counters. Requires better support for LL
in Yap code (only for __GNUC__ right now).


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@802 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2003-03-20 15:10:18 +00:00
vsc
8334aa1f5e protect live against people who hide system predicates away.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@784 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2003-02-19 16:43:24 +00:00
vsc
7e5b706936 extra array functionality
fix YAPOr compilation.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@708 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-11-26 22:28:32 +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
41011ddb56 forgot committing arrays.c
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@483 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-05-23 12:44:18 +00:00
vsc
376d26f93f more fixes to error checking in error access.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@454 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-04-23 23:23:45 +00:00
vsc
6f051a5025 fix arrays of generic terms.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@422 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-03-27 20:53:58 +00:00
vsc
798bdbdf39 be more careful about error handling when storing DB terms
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@399 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-03-07 05:13:21 +00:00
vsc
c771c14b0f disable cache when checking whether static was in use.
heap overflow while storing db term.
trust_fail should be preceeded by an sla.
make sla point to current pred, get rid of current pred in bitmap.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@374 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-02-26 15:51:54 +00:00
vsc
f92947d61b configurarion changes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@369 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-02-22 06:12:18 +00:00
vsc
293fdf9061 VC++ changes
use clock in WIN98
fix manual
get rid of ISO X/0


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@347 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-02-04 16:12:54 +00:00
vsc
20c6b50a0d fix error after error and error within error
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@344 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-02-01 15:48:17 +00:00
vsc
289d0da079 fix point where we assume unbound array
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@303 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-01-16 22:08:03 +00:00
vsc
5997e5a109 new catch and throw mechanism (first try).
hide built-in predicates that should not be seen in trace mode


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@275 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-01-07 06:28:04 +00:00
vsc
2b78d7ce14 pesky ^C and abort fixes (I hope)
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@236 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2001-12-18 22:01:26 +00:00
vsc
418fb0680a fix locking for YapOr
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@173 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2001-10-30 22:13:18 +00:00
vsc
458a0a857f New metacall mechanism
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@169 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2001-10-30 16:42:05 +00:00
vsc
835f315727 access_array_element is unsafe
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@70 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2001-06-08 19:22:35 +00:00