Commit Graph

210 Commits

Author SHA1 Message Date
Vítor Santos Costa 4eeb977c2c fix backtracking from generators to dynamic predicates. 2011-04-22 12:20:52 +01:00
Vítor Santos Costa 8fb8aec9bf MULTIPLE_STACKS - or-parallelism/threads/tabling
YAPOR_THREADS - threads with or-parallelism
make tabling require reference counting for dynamic predicates.
2011-04-14 18:51:11 +01: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 a097fdc38f fix warning. 2011-03-02 09:17:43 +00:00
Vítor Santos Costa cce6bb6354 LD should be local to threads.
get rid of write_depth on YAP side.
2011-03-01 10:26:25 +00:00
Vítor Santos Costa f92fa69eab more PLStream stuff. 2011-02-23 17:46:50 +00:00
Vitor Santos Costa 4a5ba35937 assembly fixes
more support for readline, including getting more stuff from read.
2011-02-17 00:57:49 +00:00
ubu32 67d23051c2 fix pruning to handle backtrackable C-predicates in a much nicer way. 2011-02-14 11:29:20 -08:00
Vítor Santos Costa d0a5571900 trace the total number of choice-points created in profiling mode. 2011-02-08 21:02:10 +00:00
Vitor Santos Costa d64af810da force wakeups before ! 2010-12-29 09:29:42 -06:00
Vítor Santos Costa 2d1ece71c8 iget rid of message. 2010-12-12 19:05:49 +00:00
Vitor Santos Costa 22c27e0d5e fix debugging stuff. 2010-11-30 22:34:54 +00:00
Vitor Santos Costa aead067476 mv swi compatibility stuff to library/dialect 2010-11-30 22:33:33 +00:00
Vítor Santos Costa 457d5c11cb remove debugging info from tracer.c 2010-05-25 16:14:44 +01:00
Vitor Santos Costa fd9f4efe0b fix indexing of bignums (obs from Jos de Roo). 2010-05-14 12:42:30 +01:00
Vítor Santos Costa faeef37a03 long -> Int 2010-05-10 10:21:56 +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 3683da028a use correct tests. 2010-03-14 09:31:04 +00:00
Vítor Manuel de Morais Santos Costa 10744069fc fix global variable core dump in threaded yapor. 2010-01-29 18:09:07 +00:00
Vítor Manuel de Morais Santos Costa 4d341f2aab fix bad call to gc (obs from Jose Santos). 2010-01-29 15:21:00 +00:00
Vitor Santos Costa 5824e5ecea fix debugging info. 2010-01-12 10:08:15 +00:00
Vitor Santos Costa e86a995dd2 fix bad test faster interface to eval (obs from Jose Santos) 2010-01-11 10:35:36 +00:00
Vítor Manuel de Morais Santos Costa b16623d026 fix realloc and friends (obs from Nuno Fonseca). 2009-11-27 13:31:03 +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
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 9c74080512 fix memory overflow when doing very large writes on strings (obs from Jos Deroo). 2009-07-28 18:30:15 -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 4882cefa12 get rid of debugging code. 2009-07-22 17:02:56 -05:00
Vitor Santos Costa c1024caa53 Unify emptylist of variables if one reads EOF. 2009-07-21 00:11:44 -05:00
Vitor Santos Costa de3c042143 just update, no interesting change. 2009-05-24 15:17:23 -05:00
Vitor Santos Costa 51e669dcfb support for passing priority as argument to write. (Ulrich's #45).
fixes on making write handle infinite loops
2009-05-22 13:24:27 -05:00
Vitor Santos Costa 0a2c90a919 fix warning 2009-04-22 16:41:33 -05:00
Vitor Santos Costa 67eddb5a5b arity may be a long int 2009-03-27 15:28:32 +00:00
Vitor Santos Costa 7726944e1b back to normal. 2009-03-10 16:22:45 +00:00
Vitor Santos Costa afd979a246 improve substantially handling of soft disjunctions. 2009-03-05 16:12:21 +00:00
Vitor Santos Costa 48eaa975f2 if we have many embedded calls to nb_queue, make sure we don't allocate a lot of memory for each one. 2009-02-27 00:31:29 +00:00
Vitor Santos Costa 51875c627a avoid excessive overflows and too large overflows in delay stack. 2009-02-26 23:06:27 +00:00
Vítor Santos Costa 43e70f2003 more changes to support SWI Input/Output. Now it compiles, which does
not mean it would work!
2008-12-22 12:03:14 +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 1e8de3f86c fix ) in arity 0 predicates 2008-09-23 22:49:44 +01:00
Vitor Santos Costa 473012316a put tracer.c back to normal. 2008-09-14 05:11:35 +01:00
Vítor Santos Costa d70cb39c1d fix answer_trie compilation and execution:
- YapOpcodes.h should have do/trust/try/trust: force this order in
tab.tries.insts.i
- retry and trust instructions should not trust YENV
2008-09-05 18:34:26 +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 0fc361d331 indexer was going bad on _pop instruction. 2008-08-30 23:59:09 +01:00
Vitor Santos Costa 2a84e259a2 Upgrade to new CHR (with Jan's changes).
Found out I need to add an extra field to allocate so that the
exception handling code knows where the clause is.
Protect creep_allowed from NULL pointers.
2008-08-30 16:24:44 +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
Vitor Santos Costa d636450512 more fixes to make rclause.h automatic:
define new type n for Integers, as they were mistaken for Term.
 define early return cases and ifdef exceptions.
2008-08-29 17:27:11 +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 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 87fcf6233c put chr back to life
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2265 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-06-08 08:05:11 +00:00