Commit Graph

120 Commits

Author SHA1 Message Date
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
Vitor Santos Costa f3c2dea752 use the right type in call. 2010-02-22 23:08:40 +00:00
vsc 976ae73266 fix get_dbterm compilation. 2010-02-03 18:52:10 +00:00
Vitor Santos Costa ab0913a2df ask for space proportional to the free trail space at trail overflow. 2009-12-21 10:26:00 -02:00
Costa Vitor d02c9d23c2 handle cases where test is called with unbound variable. 2009-08-31 23:59:34 -05:00
Vitor Santos Costa 7155aa943f make sure that variables in tabled predicates are safe for backtracking: new
variables should be bound carefully.
2009-07-22 23:28:04 -05:00
Costa Vitor d9a48c4014 disable inlining in tabled predicates (maybe a bit too harsh). 2009-07-22 17:00:49 -05:00
Costa Vitor 8a38c64441 fix uninitialised variable (valgrind). 2009-07-15 14:27:56 -05:00
Vitor Santos Costa 4d6cd779cb fix warnings. 2009-06-25 22:31:02 -05:00
Costa Vitor 2588f5b7c5 make sure we count built-ins. 2009-06-22 16:03:14 -05:00
Costa Vitor d47560342c more fixes to call_counter: try to keep on counting system builtins. 2009-06-22 12:40:55 -05:00
Costa Vitor 50f7a80546 transfer call and profiler to spy. 2009-06-22 11:12:56 -05:00
Vitor Santos Costa a0750ff5b7 handle heap overflows when constructing new predicates. 2009-05-24 19:25:26 -05:00
Vitor Santos Costa 9a9767d73c cannot just do error when user does crazy things. 2009-05-24 19:20:00 -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 b92b026c90 more patches to support Anderson's JIT. 2009-04-08 00:32:36 +01:00
Vitor Santos Costa f97bc596b9 do not use int for modules, use Term. 2009-04-07 15:44:46 +01:00
Vitor Santos Costa 4b5c07192a get rid of debugging message. 2009-03-27 15:28:22 +00:00
Vitor Santos Costa fc2e01f320 improve code for disjunctions by trying to avoid permanent variables. 2009-03-10 16:24:26 +00:00
Vitor Santos Costa 828964c3c1 remove optimised arithmetic instructions. They made the emulator even bigger than
usual, and they were not performing.
2009-03-09 11:52:01 +00:00
Vitor Santos Costa afd979a246 improve substantially handling of soft disjunctions. 2009-03-05 16:12:21 +00:00
Vitor Santos Costa 083b7c9b92 improve compilation of arithmetic and other builtins, this should
make it more aggressive (and still correct).
2009-02-25 00:13:56 +00:00
Vitor Santos Costa e5d11cfa16 MYDDAS is too closely integreated to be a package. 2009-02-16 17:15:21 +00:00
Vitor Santos Costa bde2b57f07 compile =/2 to use an extra temporary, and not ARG1. 2009-02-09 22:29:44 +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 18d5fa12e4 fix case where compiler would coredump on badly typed arguments to functor/3. 2008-12-28 11:00:38 +00:00
Vítor Santos Costa 14a162dc6a fix compilation of NewX = f instructions. 2008-12-13 21:22:07 +00:00
Vítor Santos Costa 2b0c27deb6 Remove attempt to emulate SWI I/O
add YAP_getcwd and PL_cwd to interface
2008-12-13 16:07:55 +00:00
Vítor Santos Costa fdf06f486d replace if-then-else optimisation by the new mechanism. 2008-12-09 14:23:19 +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
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 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 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 926d21808e purge_clauses does not need to do anything if there are no clauses
fix gprof bugs.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2045 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-12-18 17:46:58 +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 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 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 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 230c812a76 fix bb entries
comment development code for timestamp overflow.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1703 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-10-11 15:08:03 +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 db0ab3fd62 fix compilation of |
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1677 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-08-01 13:14:17 +00:00
vsc beba8315ca fix nasty overflows in and add some very preliminary support for very large
clauses with lots
of disjuncts (eg, query packs).


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1676 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-07-27 19:04:56 +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 871bb9e024 help to make Yap work with dynamic libs
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1638 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-05-19 13:48:11 +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 176f36d5fd fix debugging typo
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1600 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-04-13 02:04:24 +00:00
vsc ab361ad9fd make it sure that making vars safe does not propagate across branches of disjunctions.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1599 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-04-12 20:08:51 +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