Commit Graph

77 Commits

Author SHA1 Message Date
Vitor Santos Costa
2fb880b64a fix bad tests for attributed variable, and use a better name for Quick Test. 2011-03-19 10:25:23 +00:00
Vítor Santos Costa
0d8aed7971 new implementation of corourining... 2011-03-18 19:34:58 +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
51a5fdfbd7 fix handling of SICStus style attributes (obs from Denys Duchier). 2011-02-02 20:14:36 +00:00
Vitor Santos Costa
8690fb8ca0 make clp(bn) work again. 2010-06-30 17:54:58 +02:00
Vitor Santos Costa
d0371b2f36 arity 2? 2010-05-10 03:05:46 +01:00
Vitor Santos Costa
c4819d8ab2 better handle over overflow. 2010-03-30 12:45:32 +01:00
Vitor Santos Costa
9869ffebfd delete_attributes deletes v as an attvar. 2010-03-27 10:57:21 +00:00
Vitor Santos Costa
8b6b9e9ac3 we don't need to wakeup variables that have no attributes, even if they have been bound. 2010-03-15 14:17:30 +00:00
Vitor Santos Costa
30a4f3cfe7 fixes to support copy_term and nb_ 2010-03-12 08:24:58 +00:00
Vitor Santos Costa
3d10482cc7 more upgrades to new coroutining code. 2010-03-10 14:06:07 +00:00
Vitor Santos Costa
e992b0dcf0 new version of attributed variable code, using arena to store variables and
removing variable chain.
2010-03-08 09:18:52 +00:00
Vítor Santos Costa II
8f41517e24 del_attrs/1 (for SWI compatibility). 2010-03-03 19:08:17 +00:00
Vitor Santos Costa
0179998d60 change Heap.h to YapHeap.h
rename $live to prolog/0 (for SWI compatibility).
2009-10-23 14:22:17 +01:00
Vitor Santos Costa
1e905eb5ef allow unification not to bound a variable. 2009-09-09 17:59:25 -05:00
Vitor Santos Costa
04c419b3b0 not always throw an error when it is not a variable. 2009-05-22 22:35:40 -05:00
Vitor Santos Costa
f79d79e926 replace TYPE_ERROR_VARIABLE for attributes #57 2009-05-22 21:51:48 -05:00
Vitor Santos Costa
5efc438e49 fix put_att_term/2: bad arity and would not bind first arg if unbound var. 2009-02-10 14:56:43 +00:00
Vitor Santos Costa
b1cf60cafb moe changes to support atomic generation of atoms
support automatic generation of code walker (to find P's predicate and clause)
2008-12-24 09:04:44 +00:00
Vítor Santos Costa
a8ac9bfb43 generate known atoms and functors automatically 2008-12-23 01:53:52 +00:00
Vitor Santos Costa
7a21ccb009 Include hack to unify two attributed variables, if the solver knows what
it is doing.
2008-11-14 14:50:54 +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
9e9c260f7e new version of viterbi implementation
fix all:atvars reporting bad info
fix bad S info in x86_64


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1968 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-10-28 00:54:09 +00:00
vsc
7f366435f4 fixes to copy term
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1931 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-09-21 13:52:52 +00:00
ricroc
9bb854ab62 tabling support for 64 bits
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1870 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-04-26 14:13:21 +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
9618c90255 YENV may be an HW register (breaks some tabling code)
All YAAM instructions are now brackedted, so Op introduced an { and EndOp introduces an }. This is because Ricardo assumes that.
Fix attvars when COROUTING is undefined.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1516 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-01-17 14:10:42 +00:00
vsc
b881f59a71 fix small bug in attvar handling.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1498 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-01-08 03:12:02 +00:00
vsc
a4b85e2abd more fixes to get_attributes.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1497 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-01-07 02:12:32 +00:00
vsc
bde8a59cec module with all attrs voided is module with no atts.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1495 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-01-04 03:47:49 +00:00
vsc
e10213929a support new interface between YAP and GMP, so that we don't rely on our own
allocation routines.
Several big fixes.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1490 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-01-02 02:16:19 +00:00
vsc
4157f2ce61 improvements to debugger
overflow fixes
reading attvars from DB was broken.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1472 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-11-26 02:57:25 +00:00
vsc
61d9980cf3 updates do documentation
put_attrs


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1433 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-10-31 18:12:51 +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
e6a15addf5 5.1:
- improvements to GC
   2 generations
   generic speedups
- new scheme for attvars
   - hProlog like interface also supported
- SWI compatibility layer
   - extra predicates
   - global variables
   - moved to Prolog module
- CLP(R) by Leslie De Koninck, Tom Schrijvers, Cristian Holzbaur, Bart
Demoen and Jan Wielemacker
- load_files/2

from 5.0.1

- WIN32 missing include files (untested)
- -L trouble (my thanks to Takeyuchi Shiramoto-san)!
- debugging of backtrable user-C preds would core dump.
- redeclaring a C-predicate as Prolog core dumps.
- badly protected  YapInterface.h.
- break/0 was failing at exit.
- YAP_cut_fail and YAP_cut_succeed were different from manual.
- tracing through data-bases could core dump.
- cut could break on very large computations.
- first pass at BigNum issues (reported by Roberto).
- debugger could get go awol after fail port.
- weird message on wrong debugger option.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1402 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-10-18 17:04:43 +00:00
vsc
03ba05f24a a new and hopefully much better implementation of atts.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1392 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-09-09 17:24:39 +00:00
vsc
4164e56aa7 fix overflow in AllAttVars
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1381 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-08-23 21:27:39 +00:00
vsc
b18224a460 more robust support for attributed vars: all_attvars and stack
expansion.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1366 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-08-17 20:13:50 +00:00
vsc
18f0de5486 fix log(0.0) and log10(0.0) to be SICStus compatible.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1245 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-02-18 21:34:02 +00:00
vsc
ae2a53d2e3 fix overflows
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1211 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-12-16 05:57:32 +00:00
vsc
f0f6dd9de5 fix USE_LD to eventually be restorable.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1201 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-12-07 06:01:55 +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
40a39a79b1 Mega clauses
Fixes to sizeof(expand_clauses) which was being overestimated
Fixes to profiling+indexing
Fixes to reallocation of memory after restoring
Make sure all clauses, even for C, end in _Ystop
Don't reuse space for Streams
Fix Stream_F on StreaNo+1


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1147 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-09-27 20:45:04 +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
8402df6bb2 more constraint simplifications
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1135 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-09-13 21:19:14 +00:00
vsc
27a98ecdde add attvar/1 to system.
sort before printing attributed variables to get rid of duplicates.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1132 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-09-10 20:18:01 +00:00
vsc
c042f13930 more fixes for overflows in copy_term with attributed variables (not necessarily).
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1131 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-09-09 20:00:59 +00:00
vsc
3c44b02093 alwas make sure you are looking at a variable before checking IsUnboundVar
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1130 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-09-08 19:06:57 +00:00
vsc
040280ea73 fix overflow of attributed variables in copy_term
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1126 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-09-07 20:20:12 +00:00