Vítor Santos Costa
0d8aed7971
new implementation of corourining...
2011-03-18 19:34:58 +00:00
Vítor Santos Costa
2a76f86785
don't lock ThreadLocal predicates.
2011-03-15 09:08:09 +00:00
ubu32
e98ba46ccb
make new code work in 32 bit Linux.
2011-03-07 08:34:20 -08:00
Vítor Santos Costa
90d93fdbdd
cache abstra machine register in threaded mode.
2011-03-07 16:02:55 +00:00
Vitor Santos Costa
9bdc7ca96e
get rid of references to freed code.
2011-02-04 01:23:01 +00:00
vsc
58b838b8e1
fix bad overflow handling
2010-12-31 05:37:25 +00:00
Vítor Santos Costa
5a2d908489
fix restore of instructions that manipulate bigints or db terms.
2010-12-16 20:39:53 +00:00
Vítor Santos Costa
1369057cc4
fix style checker to be more self-contained.
2010-12-13 19:13:33 +00:00
Vítor Santos Costa
378035a4b0
fix bad marking of dbterms (obs from Ines Dutra).
2010-12-12 16:45:39 +00:00
Vitor Santos Costa
e0aa6ae30a
improve low level profiler interface. Still doesn't work too well.
2010-10-26 22:01:29 +01:00
Vitor Santos Costa
8d5aa09e05
fix threaded error handling.
2010-07-30 00:57:46 +01:00
Vítor Santos Costa
c017bccd1a
more locking fixes
2010-07-28 17:12:17 +01:00
Vitor Santos Costa
7b9ab9252c
get rid of debugging info.
2010-07-28 11:30:28 +01:00
Vitor Santos Costa
ccb7991a56
should not use PP for thread private
...
more lock tracing aids.
2010-07-28 11:26:20 +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
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
Vítor Santos Costa
11641c5f94
64 bit cleanups.
2010-05-06 15:00:44 +01:00
Vitor Santos Costa
3e8dc5cd19
try to handle overflows in stack dumpers.
2010-04-29 10:29:06 +01:00
Ricardo Rocha
ddb1cd8604
adding two new modes to the yap_flag/2 and tabling_mode/2 built-in
...
predicates: 'local_trie' mode and 'global_trie' mode.
2010-04-16 02:08:06 +01:00
Ricardo Rocha
e122f2ca8d
Global trie support: atomic terms (vars, integers and atoms) are now stored
...
in the local tries (and not in the global trie). This required major changes
to the trie instructions in order to unify the use of the auxiliary stack
organization for the terms in the local tries and in the global trie.
2010-04-15 01:09:59 +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
e440953256
use IsAttVar
2010-03-08 09:19:57 +00:00
Vitor Santos Costa
8b18242138
fix missing ; (obs from Paulo Moura).
2010-03-01 00:06:45 +00:00
Vitor Santos Costa
16a9c8a807
SWI-compatible source_file/1 and 2
2010-02-28 22:24:51 +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
Vítor Manuel de Morais Santos Costa
89e38cbcc0
or_last is different under yapor.
2010-01-15 16:15:36 +00:00
Vitor Santos Costa
c6406b822b
prolog: multifiles are not really system predicates (they can be redefined).
2009-11-23 10:10:47 +00:00
Vítor Manuel de Morais Santos Costa
71de4ed52a
Merge branch 'master' of gitosis@yap.dcc.fc.up.pt:yap-6
2009-11-18 13:13:51 +00:00
Vítor Manuel de Morais Santos Costa
c108ac508d
check for callable before looking at predicate terms...
2009-11-18 13:13:16 +00:00
Vitor Santos Costa
c51c17aa52
make sure to get valid terms in meta_call, not references.
2009-11-17 00:23:34 +00:00
Vitor Santos Costa
a628079e00
make sure we walk every clause when doing restore mega_clause.
2009-11-02 12:46:39 +00:00
Vitor Santos Costa
0ea348c26d
extend SWI interface with PL_toplevel and to handle C++ code.
...
prolog/0 built-in
fixes to parms.h changes.
2009-10-23 16:50:43 +01: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
Costa Vitor
32122f4171
make sure we have enough room when splitting mega clause.
2009-09-12 16:43:44 -05:00
Costa Vitor
f877e78785
make YAP compile with --enable-or-parallelism
2009-08-19 21:53:49 -05:00
Costa Vitor
40ea33c150
Merge branch 'master' of gitosis@yap.dcc.fc.up.pt:yap-6
2009-08-12 10:01:34 -05:00
Costa Vitor
dccf3cf8a2
assert logupd should set the clause in use (obs by Jose Santos).
2009-08-12 10:00:38 -05:00
Ricardo Rocha
fc31e7066e
improve the support for deterministic tabling (still experimental,
...
problems mainly with the garbage collector)
2009-08-07 17:29:53 +01:00
Ricardo Rocha
5e4d7078ab
support for trie compact lists (version 2): this new version uses
...
different marks to distinguish the lists ending with the empty list
from the lists ending with a non-empty list term.
2009-07-05 05:14:08 +01:00
Costa Vitor
924cf77fed
fix another loop in spy_pred.
2009-06-23 23:24:16 -05:00
Costa Vitor
058b389566
asserta dynamic predicates should not kill preexisting code.
2009-06-23 06:51:28 -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
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
3c84466d05
asserting on a spied predicate might make it loop for ever :(
2009-04-21 18:51:01 -05:00
Vitor Santos Costa
f46ff06f38
get rid of broken $clause/3: fixes listing of dynamic predicates.
2009-03-26 08:12:24 +00:00
Vitor Santos Costa
d7c2c74acc
fix counting of C-pred: it should not be in caller.
2009-02-26 00:00:23 +00:00
Vitor Santos Costa
95fc66be25
more fixes to profiling code.
2009-02-25 22:15:18 +00:00
Vitor Santos Costa
94ebb90719
UDI patch: make it work with YAP.
2009-02-20 11:42:48 +00:00
Vítor Santos Costa
f7046286a0
cleanups and a bug fix (it is lp now, not just p as before).
2009-02-12 21:45:41 +00:00
Vítor Santos Costa
8a6e0acedc
compiler support for udi including user_index instruction
2009-02-12 21:35:31 +00:00
Vitor Santos Costa
9a0d481528
avoid too many discontiguous warnings by keeping track of last clause predicate.
2009-02-10 23:42:26 +00:00
Vitor Santos Costa
0886bd2e59
get rid of unused mk_cl_not_first.
2009-02-10 23:17:41 +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
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
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
Vitor Santos Costa
821cc384a3
allow statistics on data base keys of integers.
...
change pred_entry not to fail on this case.
avoid using functor in this case.
2008-09-15 04:30:09 +01:00
Vítor Santos Costa
fdf762e326
push changes to make tabling work: don't ignore tabling and yapor fields
...
in optype.
2008-09-05 05:22:19 +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
84ad9adff0
fix clause to support new execute_cpred
2008-09-01 16:30:37 +01:00
Vítor Santos Costa
b2d9eb7aac
instructions xyc really has optype xyn.
2008-08-30 23:00:50 +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
Vitor Santos Costa
d5d5a6c95f
escape from NULL pointer.
2008-08-26 01:08:52 +01:00
Vítor Santos Costa
f499115573
redo lost updates
2008-08-21 13:38:25 +01: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
8e6403794f
fix abolish bug
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2252 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-06-02 17:20:28 +00:00
vsc
ade7b34d49
thread fixes
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2251 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-05-28 17:18:35 +00:00
vsc
f1d5e84918
fix bug in current_predicate/2
...
fix bug in c_interface.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2221 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-04-28 23:02:32 +00:00
ricroc
ddcd80d2a9
*** empty log message ***
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2215 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-04-11 16:30:28 +00:00
vsc
0dd21aab71
put YAPOR back to life.
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2187 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-04-01 22:28:41 +00:00
vsc
c23cce1cc1
fix restore and small VISTA thingies
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2177 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-04-01 08:42:46 +00:00
vsc
5b6e8e742b
more fixes
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2176 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-03-31 22:56:22 +00:00
vsc
b2274186bd
make or-parallelism compile again
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2164 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-03-25 16:45:53 +00:00
vsc
c20c0f7767
fix maximum number of threads open error
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2158 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-03-24 23:48:47 +00:00
vsc
ba2023436a
fix bug in all_calls
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2157 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-03-22 23:35:00 +00:00
vsc
1090771c90
fix breakage in module system
...
disable stack writing in error for now
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2155 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-03-17 18:31:16 +00:00
vsc
17d16e0b14
Big update to support more SICStus/SWI like message handling
...
fix YAPSHAREDIR
fix yap.tex (Bernd)
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2107 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-02-22 15:08:37 +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
3faa45cb0a
new version of clp(fd)
...
fix deadlock with empty args facts in clause/2.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2047 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-12-26 19:50:40 +00:00
vsc
65d3704e4b
recover stack space
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2046 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-12-23 22:48:44 +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
1bd96722de
junction tree algorithm
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2031 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-11-28 23:52:14 +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
925639eccc
YAP would always say the system has tabling!
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1979 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-11-08 09:53:01 +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
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
b5c8c9bad3
fix uninitalised lock and reconsult test.
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1971 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-11-01 10:01:35 +00:00
vsc
d3bbba177f
small fixes
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1970 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-10-29 22:48:54 +00:00
vsc
67738fbbd1
fix max modules limitation
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1865 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-04-10 22:13:21 +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
3ddc4cef3a
all/3 should fail on no solutions.
...
get rid of annoying gcc complaints.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1787 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-01-25 22:11:55 +00:00
vsc
48fdba3f1e
fix matrix mess
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1778 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-01-24 10:01:40 +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