Commit Graph

399 Commits

Author SHA1 Message Date
Vítor Santos Costa
014a0ec5bc CurSlot maintenance 2013-01-19 22:13:43 +00:00
Vitor Santos Costa
0f362ae77f term and goal expansion should actually call the goal 2013-01-18 14:27:06 +00:00
Vítor Santos Costa
14b67dc76d fix threads 2012-12-20 21:33:20 +00:00
Vítor Santos Costa
45b6263f85 have a separator cell not to confuse the gc. 2012-12-15 00:40:11 +00:00
Vitor Santos Costa
f329b5f06b fix compilation without threads 2012-12-14 22:54:00 +00:00
Vitor Santos Costa
e648d197a8 fix worker_id assignment in threads 2012-12-14 19:58:07 +00:00
Vitor Santos Costa
9107af2e3d improve thread startup 2012-12-13 18:12:50 +00:00
Vitor Santos Costa
e41f821d67 improve multi-threading support from C-interface. Still not quite there. 2012-12-11 22:07:10 +00:00
Vitor Santos Costa
556937195d avoid meta-call in system; improve goal/pred expansion 2012-12-07 08:08:32 +00:00
Vitor Santos Costa
88f2dc7730 change the way predicates are hidden 2012-10-19 18:10:48 +01:00
Vítor Santos Costa
2cfb744b07 fix bad frame pointer. 2012-04-17 00:21:08 +01:00
Vítor Santos Costa
683377b520 buffer output when exiting absmi. 2012-04-12 23:52:25 +01:00
Vítor Santos Costa
2f17b25885 improve error handling. 2012-02-06 11:41:58 +00:00
Vítor Santos Costa
123ef47171 fix longjmp RestartEnv to be performed by a single function. 2012-02-05 12:04:29 +00:00
Vítor Santos Costa
6c98e37e18 make sure to save absmi registers before longjmp. 2012-02-05 10:51:40 +00:00
Vítor Santos Costa
8c7d0af032 Merge branch 'master' of ssh://yap.git.sourceforge.net/gitroot/yap/yap-6.3 2011-12-22 11:44:48 +00:00
Vítor Santos Costa
551df1c70a handle blob overflows. 2011-12-22 10:27:56 +00:00
Vítor Santos Costa
18190a4633 fix types for return absmi and friends. 2011-12-13 23:09:05 +00:00
Vítor Santos Costa
32ebfe00fd use module in RunOnce. 2011-12-13 22:20:28 +00:00
Vítor Santos Costa
66ae65fe09 small look at compilation. 2011-10-02 19:55:22 -03:00
Vítor Santos Costa
36d20477fb small fixes to avoid using global reg. 2011-10-02 16:18:09 -03:00
Joao
1a6aff8aa1 Merge branch 'master' of git://yap.git.sourceforge.net/gitroot/yap/yap-6.3 2011-09-15 15:44:26 +01:00
Joao
64ae3cdf52 fix YAPOR incremental copy. 2011-09-15 15:40:47 +01:00
Vitor Santos Costa
9993ca2f3a syntax change 2011-08-31 13:54:19 -07:00
Vitor Santos Costa
991d85edf0 fixes to interrupt handling in readline. 2011-07-22 22:48:30 +01:00
ubu32
11a74236dc fix slots: have slots ready at init, even if we don't have a Prolog top-level;
don't get lost after pruning.
2011-07-11 22:12:32 -07:00
Vitor Santos Costa
6863a43e76 fix handling of backtrackable C-code in longjmp and other long range cuts. 2011-07-09 07:56:11 -04:00
Joao
971ad94311 moved several global variables to misc/GLOBALS 2011-05-25 16:40:36 +01:00
Joao
8170f6d3cb Some global variables(Yap_thread_gl) in C/init.c are now declared in misc/LOCALS 2011-05-23 16:19:47 +01:00
Ricardo Rocha
026616963c remove FOREIGN_ macros and use REMOTE_ instead 2011-05-09 20:19:49 +01:00
Ricardo Rocha
a532b6cff3 struct local_optyap_data is now part of struct worker_local (generated from the file LOCALS) 2011-05-09 19:36:51 +01:00
Joao
65a514349f Remove LOCAL_WPP. 2011-05-05 09:32:04 +01:00
Joao
dc3c54c164 change LOCALS macros. 2011-05-04 10:11:41 +01:00
Vítor Santos Costa
0b0d887275 initialise H0[-1]: avoid complaints from valgrind during gc. 2011-04-15 23:07:56 +01:00
Vítor Santos Costa
7a78d5c200 initialise initial ENV fully. 2011-04-15 23:05:03 +01:00
Joao
3e148c3541 change define SBA to YAPOR_SBA 2011-03-30 15:32:59 +01:00
Vítor Santos Costa
0d8aed7971 new implementation of corourining... 2011-03-18 19:34:58 +00:00
Vítor Santos Costa
92d2152aa7 fix bad lookout for handler choicepoint. 2011-03-11 19:47:58 +00:00
Vítor Santos Costa
90d93fdbdd cache abstra machine register in threaded mode. 2011-03-07 16:02:55 +00:00
Vitor Santos Costa
6617a63b7e attempt to improve error handliong in SWI emulation. 2011-02-11 14:17:27 +00:00
Vítor Santos Costa
eb82f5fa2a more fixes to recursive call execution and backtracking from within C-mode.
semweb java example now working.
2010-12-14 09:30:40 +00:00
Vítor Santos Costa
3933ee4053 fix slot initialization problem. 2010-12-13 20:39:12 +00:00
Vítor Santos Costa
8db05c883b make sure we separate betwen async exceptions and synchroneous. 2010-12-04 19:05:13 +00:00
Vítor Santos Costa
c6f41e2970 YAP_FAIL_ERROR in case a fail has been requested, but not accepetd yet. 2010-12-04 18:45:09 +00:00
Vitor Santos Costa
4aee4df719 single initialization for top frame. 2010-11-28 11:51:31 +00:00
Vitor Santos Costa
07907f1839 fix breakage in ball access
fix unnecuessary --ASP (why?)
2010-07-27 23:21:15 +01:00
Vitor Santos Costa
5b7f04b4b6 fix typo. 2010-07-27 23:12:16 +01:00
Vítor Santos Costa
08627579fc try to maintain a valid ASP even after a longjmp to top-level 2010-07-27 17:27:47 +01:00
Vítor Santos Costa
e031026a62 instrument PE locking
fix missing unlock in index_pred (if predicate had been indexed while we were
waiting).
2010-07-25 11:22:16 +01:00
Vítor Santos Costa
3dd68aa8bd fix EX: it cannot be a term and it should be a placeholder for BallTerm,
so the twp can never be alive at the same time.
2010-07-21 12:49:06 +01:00
Vítor Santos Costa
0ccb607f19 FIX: initslots could destroy environment 2010-06-18 00:25:24 +01:00
Vítor Santos Costa
247d59f0ef - slots should be considered as always live for gc.
- make sure slots do not die when they should be live, and vice-versa.
- improve a little on foreign_frame
2010-06-01 00:40:58 +01:00
Vitor Santos Costa
d5e1ff38f4 new interface to access globals. They are not in a file called GLOBALS, from which
we generate several files automatically.
2010-03-21 22:12:42 +00:00
Vitor Santos Costa
3c6a4435d8 Merge branch 'new_atts' 2010-03-15 15:05:42 +00:00
Ricardo Rocha
ee0022bb47 checking for frozen segments in the trail stack in now done using the
macro IN_BETWEEN(Yap_TrailBase, ref, Yap_TrailTop)
2010-03-12 20:02:32 +00:00
Vitor Santos Costa
43a822b41f IsAttVar 2010-03-08 09:21:16 +00:00
Vitor Santos Costa
3070e4ce9d fix locking issues with dynamic predicates and threads (obs from Paulo Moura). 2010-03-03 22:11:50 +00:00
Vitor Santos Costa
361c54bed8 execute0 has no access to the third argument. 2010-02-26 10:04:33 +00:00
Vítor Santos Costa
5e1f8ff84f Merge branch 'master' of gitosis@yap.dcc.fc.up.pt:yap-6 2010-02-25 17:52:30 +00:00
Vítor Santos Costa
6a7e584e94 protect better call 2010-02-25 17:52:11 +00:00
Vitor Santos Costa
7b89916c43 C-code may mess up with environment: we cannot afford to just jump
there from anywhere (obs from Stefano Ferili).
2010-02-21 00:45:49 +00:00
Vítor Manuel de Morais Santos Costa
5ef31fbfd2 experiment in or-parallel threads. 2010-01-14 15:58:19 +00:00
Vítor Manuel de Morais Santos Costa
48861db34e fix bad testing of choice-point in throw (tabling bug?) 2009-12-12 23:22:10 +00:00
Vítor Manuel de Morais Santos Costa
1176f71f3a support for making sure exceptions are reset when they should be reset (obs from Nuno Fonseca, #159) 2009-12-03 17:48:25 +00:00
Vitor Santos Costa
d2da5bfe26 fix setup_call_cleanup and friends. 2009-12-03 02:13:22 +00:00
Vitor Santos Costa
06d30b9fc9 Jump and Throw need to store the term away, if they try to use arena
the term will hang in the stack (#152).
2009-12-02 21:59:41 +00:00
Vítor Manuel de Morais Santos Costa
98f79484ae change throw mechanism to fit better with cleanup mechanism:
- balls are now stored off line and recovered by Prolog code when everything
is safe.
- if a ball exists, throw uses the *existing* one (be careful not to have one
laying around).
- Jump routine cleans up every cp except ones for setup_call handling, backtracking simply calls setup handlers.
2009-11-27 11:21:24 +00:00
Vítor Manuel de Morais Santos Costa
7f5da32c08 fix trail when you do a jumpenv (Ulrich Neumerkel #152) 2009-11-25 09:47:38 +00:00
Vitor Santos Costa
d637451bd6 make sure to put TR correctly (fixes copying DB terms with att vars #148) 2009-11-21 00:23:03 +00:00
Vitor Santos Costa
945fff50a2 we should only recover H after we backtrack, never before. 2009-11-17 10:03:14 +00:00
Vítor Manuel de Morais Santos Costa
8f46f3d71d fix bad passing of ! destination if we were running at an exec: affected debugger. 2009-11-04 12:17:17 +00:00
Costa Vitor
869671fb1b make sure to have trail entries reset on setjump (obs from Jose Santos). 2009-07-17 19:31:20 -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
f5a72828a0 fix SPARC register allocation bugs (not verified) #130 2009-06-15 10:29:31 -05:00
Vitor Santos Costa
b4ff9b492a make sure to recover stack before copying exception term. 2009-06-14 11:17:12 -05:00
Vitor Santos Costa
826b45d21c fix handling of out stack while throwing an exception. 2009-06-13 15:21:13 -05:00
Vitor Santos Costa
475e681907 do fetch and remove a the same time: PopFromDB 2009-06-13 13:06:02 -05:00
Vitor Santos Costa
4de6e48a33 save exception term in database, so that it is clean separate from stacks. #116 2009-06-12 14:35:15 -05:00
Costa Vitor
15519fa3cd tightenn conditions on JumpExec 2009-06-05 18:45:41 -05:00
Costa Vitor
7f54acb536 separate standard alarm from virtual alarm. timeout uses virtual alarm #112 2009-06-03 10:09:14 -05:00
Costa Vitor
b72345cc97 handle correctly throws within the scope of a call_cleanup. This is implemented
by using an extra argument to verify if the catcher is the current call_cleanup.
If it is, we allow the exception to go forth.
2009-06-02 19:46:41 -05:00
Vitor Santos Costa
b5e5a671a8 restore stack on JumpExec 2009-05-23 15:51:50 -05:00
Vitor Santos Costa
f79d79e926 replace TYPE_ERROR_VARIABLE for attributes #57 2009-05-22 21:51:48 -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
88b5f1a735 be careful to make sure we can hanle the interrupt. 2009-05-21 00:39:14 -05:00
Vitor Santos Costa
94e740ae31 reduce the initail amount of space for globals 2009-05-17 09:41:34 -07:00
Vitor Santos Costa
de1fb3e2c5 copy exception term early on to avoid dangling pointers. 2009-05-17 08:02:34 -07:00
Vitor Santos Costa
6d8649226c fix tabling code. 2009-05-13 17:11:46 -05:00
Vitor Santos Costa
21fa27526c generate error if module is unspecified (obs from Ulrich Neumerkel). 2009-05-07 23:14:28 -04:00
Vitor Santos Costa
0cd9009132 remove debugging message. 2009-05-05 10:15:34 -05:00
Vitor Santos Costa
32b08082f7 fix clean_trail: with threads, objects may be above stack, not just below. 2009-05-05 09:56:47 -05:00
Vitor Santos Costa
10c38f8164 1. catch should not catch outside of scope!
2. when we are catching check for the first cleanup we can find; and while
   doing that going on rewinding variables, for SICStus compatibility.
2009-05-04 18:12:33 -05:00
Vitor Santos Costa
ee44706d37 fix bad initialization of H0 in tabling 2009-05-01 12:09:49 -05:00
Vitor Santos Costa
5baaf79916 fix call_with_args/.. (obs from Jose Santos). 2009-04-26 11:16:40 -05:00
Vitor Santos Costa
2b79d5aada fix case where we call YAP with very large arities (obs from Ulrich Neumerkel). 2009-04-26 10:47:41 -05:00
Vitor Santos Costa
7628c875e8 make sure to be compatible with non-gcc/old gcc 2009-04-25 10:58:42 -05:00
Vitor Santos Costa
9624026beb locking fixes. 2009-04-16 11:19:26 -05:00
Vitor Santos Costa
3a213d7029 get rid of debugging message. 2009-03-27 15:28:08 +00:00
Vitor Santos Costa
2aa5aa3a26 add -A flag to ask for more attributed stack. 2009-03-27 15:15:54 +00:00
Vitor Santos Costa
c9c097b32d improve implementation of call_with_args/* 2009-03-13 11:11:04 +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
331d1830dd fix throw (it should undo bindings). 2008-12-29 00:11:05 +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 de Costa
7207c18e65 fix longmp in trow not to recover trail. This way we do not need to do
copy_term/2 and we avoid losing the attributed variable stack.
2008-10-18 11:03:25 +01:00
Vítor Santos Costa
6046f9f913 more fixes to debugger: make l and s option do what they are supposed to
do.
fix k and t, they had been broken.
Ideas:
DebugOn is now in the system and can disable spypoints.
Have an extra flag to distinguish fast (t,z,k) and slow(l,s) jumping.
2008-09-02 03:48:02 +01:00
Vítor Santos Costa
8f69c35e7f optime access to execute_cpred 2008-09-01 16:48:05 +01:00
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
16d0f2e749 fix TopLevelGoal to handle correctly undefined predicates. Make sure that
undefined predicated will not force the boot process to loop.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2310 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-08-19 13:33:45 +00:00
vsc
75c72d7b7d SWI and module fixes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2290 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-07-22 23:34:50 +00:00
vsc
175a0ba6dd make sure we do trim_trail whenever we mess with B!
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2258 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-06-04 14:47:18 +00:00
vsc
511181b472 debugging fixes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2238 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-05-15 18:31:02 +00:00
vsc
af0fb4f4d9 SWI-portability changes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2088 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-02-12 17:03: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
d908c8633f implement sophisticated operations with matrices.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2022 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-11-16 14:58:41 +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
642b498728 fix garbage collector and fix LeaveGoal
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1945 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-10-05 18:24:30 +00:00
vsc
fad017fcb4 fix core dump in tabling
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1922 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-09-10 22:04:10 +00:00
vsc
9c232ddd0b interface speedups
bad error message in X is foo>>2.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1894 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-06-04 12:28:02 +00:00
vsc
85f82a22d4 fix interface bug with external c-code.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1893 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-06-04 12:11:47 +00:00
vsc
498c7a6d42 fix min list
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1882 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-05-15 11:33:51 +00:00
vsc
039067068e improve external interface
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1881 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-05-14 16:44:12 +00:00
pmoura
9de3c0c7a9 Added call/5-12 (we alread have call_with_args/2-12); not sure they are worth. Alternative implementation for call_cleanup/2-3: previous implementation appears to be pruning cleanup goals before they are executed; needs testing.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1756 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-12-31 12:29:46 +00:00
vsc
7d1b20c9cd call_cleanup/2 and 3
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1750 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-12-30 03:25:47 +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
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
pmoura
0f5379cd41 Corrected a bug in the implementation of call_with_args/4 (not accepting closures for the first argument).
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1693 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-09-25 10:51:28 +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
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
tiagosoares
989d9579b3 MYDDAS: Fix a bug on memory dealocation on MYDDAS_STATS module
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1669 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-06-06 14:11:36 +00:00
tiagosoares
4bf4767073 MYDDAS: New internal organization and new MYDDAS statistics
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1646 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-05-22 16:45:07 +00:00
vsc
034e780548 fix bug in thread initialization.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1629 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-05-04 17:47:28 +00:00
vsc
b9e5416355 fix ! in debugger (execute_clause)
improve system/1 and execute/1


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1610 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-04-25 03:23:40 +00:00
tiagosoares
6f409cb962 CUT_C and MYDDAS support for 64 bits architectures
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1564 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-03-09 15:52:06 +00:00
vsc
cf669ee72b fixes to garbage collector
fixes to debugger


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1558 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-03-06 14:04:57 +00:00
vsc
46f90fc6aa fix register recovery after ^c on Macs
fix 64 bit complaints.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1542 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-02-13 16:58:55 +00:00
vsc
9e697d5bee bignum support fixes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1531 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-02-01 13:28:57 +00:00
tiagosoares
54595ec094 MyDDAS: Changed MyDDAS internal structure
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1521 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-01-17 22:54:02 +00:00
vsc
5c2e06ad50 write_depth/3
overflow handlings and garbage collection
Several ipdates to CLPBN
dif/2 could be broken in the presence of attributed variables.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1474 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-12-05 17:16:12 +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
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
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
129efd83d8 more fixes for garbage collector
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1394 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-09-21 03:49:33 +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
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
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
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
f11ab09a60 try to make initialisation process more robust
try to make name more robust (in case Lookup new atom fails)


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1254 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-03-02 18:35:49 +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
5d09011015 small fixes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1243 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-02-08 18:47:42 +00:00
vsc
52a46e5c5d fix mess with add clause
improves on sigsegv handling


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1239 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-02-08 04:05:39 +00:00
vsc
5143aebb01 try to reduce overheads when running with goal expansion enabled.
CLPBN fixes
Handle overflows when allocating big clauses properly.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1193 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-12-05 05:01:45 +00:00
vsc
fda0b76f18 fix meta-call on system predicates bug
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1181 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-11-22 05:48:43 +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
7d245377a3 change abort so that it won't be caught by handlers.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1179 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-11-19 21:32:53 +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
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
15b122b2c9 more fixes for !
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1116 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-08-16 21:02:04 +00:00
vsc
1781ff9420 whole lot of fixes:
- memory leak in indexing
  - memory management in WIN32 now supports holes
  - extend Yap interface, more support for SWI-Interface
  - new predicate mktime in system
  - buffer console I/O in WIN32


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1113 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-08-11 16:14:55 +00:00
vsc
21a3377248 debugger fixes
initial support for JPL
bad calls to garbage collector and gc
debugger fixes


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1096 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-07-22 21:32:23 +00:00
vsc
08b9f55f9c start support for java interface
bug fixes


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1093 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-07-15 15:47:08 +00:00
vsc
0101c09236 coroutining is now a part of attvars.
some more fixes.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1070 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-06-05 03:37:01 +00:00
vsc
9d12384db1 debugger fixes
make sure we always go back to current module, even during initizlization.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1062 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-05-13 20:54:58 +00:00
vsc
c90c3b7b34 thread support updates
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1006 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-02-26 13:37:24 +00:00
vsc
f609e8b93b check read locking on PRWLock
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1002 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-02-22 00:35:07 +00:00
vsc
d81bcb58e3 more fixes for threads
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1000 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-02-20 18:56:07 +00:00
vsc
6662ca157e simplify module access
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@981 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-02-12 12:37:12 +00:00
vsc
c9247ce308 make thread_local compatible with dynamic
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@977 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-02-11 13:33:19 +00:00
vsc
ca4e754af7 protect writes to SignalMask and to CreepFlag. Reads are still not
locked.
fix XREGS for threads.
fix thread_signal not even being defined.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@969 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-02-06 17:22:24 +00:00
vsc
9b84cdfe5d improved support for threads and code area allocation using malloc
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@965 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-02-05 16:57:02 +00:00
vsc
cacc407677 Bug fixes!
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@964 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-01-29 13:37:10 +00:00
vsc
0a7ec31659 bug fixes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@962 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2004-01-26 12:41:06 +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
e7ab7b4c8a fix non-tabling version
fix compilation with THREADS


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@952 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2003-12-18 17:23:22 +00:00
vsc
1aa1610e83 fix duplicated goal in meta-call execute0
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@944 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2003-12-02 18:57:48 +00:00
vsc
678ff0df82 many fixes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@940 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2003-12-01 17:27:42 +00:00
vsc
90829edc9e new infrastructure for static clauses:
they are now valid references
  they don't have the try_me block
jump_on_var now uses expand


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@936 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2003-11-26 18:36:35 +00:00
vsc
5e4816eb5a new heap allocation code
new atom table growth code and hash algorithm
more fixes for new indexing algorithm


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@905 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2003-10-28 01:16:03 +00:00
vsc
98578b16dc more fixes for indexing code
stable stuff


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@867 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2003-09-15 01:25:29 +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
b936201465 improvements to indexing: allow user control and fix bugs in sorting
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@836 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2003-06-06 11:54:02 +00:00
vsc
52b61e45ed fix meta-call handliong of : declarations
get rid of execute_within, we've got enough confusion around already.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@825 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2003-05-02 14:37:11 +00:00
vsc
d290885f8f new indexing algorithm
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@822 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2003-04-30 17:46:05 +00:00
vsc
c8c4c76e01 always pass B to meta-calls.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@755 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2003-01-30 19:34:26 +00:00
vsc
533365611c fix meta_calls with modules inside comma
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@753 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2003-01-30 18:00:26 +00:00
vsc
f5dad3ac1f don't try to do module expansion if module borders are not crossed.
expand on-line depth_call and once.
improve write_x_loc


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@752 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2003-01-30 16:27:45 +00:00
vsc
1369dfa410 new meta-call scheme.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@751 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2003-01-29 14:47:17 +00:00
vsc
e2edae71c7 cleanup: typecast to yamop * instead of CODEADDR wherever possible.
Fix integer(233333833838383) fails bug (Roberto Bagnara).


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@733 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-12-27 16:53:09 +00:00
vsc
1db1bb484e make lcc happy.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@717 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-12-06 20:03:26 +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
a721ad3e27 more of the same module fixes.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@643 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-10-18 14:52:58 +00:00
vsc
d21021da0d get rid of UnCutable
a:(a(X),b(X)) should be the same as a:a(X), a:b(X). Use PushModPred to
force that.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@642 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-10-18 13:54:53 +00:00
vsc
153b2cb2a3 YAP would break when gc was called from portray:
always save arguments before calling plwrite with possible portray
 only do it for portray because plwrite may be called from unsafe environments
 make Slot machinery mainstream.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@637 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-10-17 00:05:29 +00:00
vsc
935665ec92 fix ^c abort for PCs: registers were not being reset properly.
fix error message in abort.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@628 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-10-08 14:32:42 +00:00
vsc
e606c427fe move to UserMode when entering absmi.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@614 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2002-10-03 13:42:23 +00:00