Vitor Santos Costa
3d10482cc7
more upgrades to new coroutining code.
2010-03-10 14:06:07 +00:00
Vitor Santos Costa
34ca485e42
new Atts code.
2010-03-08 09:23:58 +00:00
Vítor Manuel de Morais Santos Costa
69d34fb0ce
fix over zealous cleaning of attributed variables in heapgc.c
2009-11-03 15:07:48 +00:00
Vítor Manuel de Morais Santos Costa
230d8f504f
should make sure when we reset a trail_entry it looks like a variable pointer.
2009-10-19 16:37:25 +01:00
Ricardo Rocha
23d44f959d
include cp_h field in deterministic choice points, otherwise we get in trouble
2009-08-09 03:38:07 +01:00
Ricardo Rocha
4f6676e5af
fix garbage collector for deterministic tabling (still very
...
experimental)
2009-08-08 05:02:27 +01: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
981bee74f0
fix garbage collector for dealing with float/longint trie instructions
2009-08-07 04:34:48 +01:00
Vitor Santos Costa
5327c8bfe7
gc of tabling cps: now, if current cp is in gen chain, mark it as completion,
...
otherwise, mark it as trust_fail.
2009-07-31 08:29:27 -05:00
Costa Vitor
59e0f71a7d
trust_fail needs not to mark environments, but in contrast termination needs.
2009-07-24 15:07:39 -05:00
Vitor Santos Costa
11fb9183e1
make sure we track both producers and consumers (I am not sure we need to track
...
producers, though)
Always mark choicepoint, even if cp_ap==NULL (fixes wine).
2009-07-23 23:13:16 -05:00
Costa Vitor
390408d5af
fix checking profiled choice-points (obs from Jose Santos).
2009-07-15 22:16:05 -05: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
5e4be93491
able to commit 64 bits
2009-06-05 12:18:10 -05:00
Vitor Santos Costa
4b91f13ee1
allow easy shunting, but make sure we do not shunt chains below the current CP.
2009-06-05 09:47:17 -05:00
Vitor Santos Costa
cd63a1f493
temporary disable easy shunting until I understand trouble with aattributed variables #80
2009-06-04 10:14:27 -05:00
Vitor Santos Costa
ea4f3f6447
always count gc calls #93
2009-06-03 20:36:15 -05:00
Costa Vitor
f10dde5b90
make sure garbage collector goes to FAILCODE, not do a hard reset.
2009-06-02 16:36:00 -05:00
Vitor Santos Costa
4d497193b6
fix garbage collection on attributed variables with lots of choice points.
2009-05-23 12:41:37 -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
2016e118b3
Ulrich Neumerkel's patch so that variables are declared in front of a block.
2009-05-02 10:54:09 -05:00
Vitor Santos Costa
e7b01f64d0
don't add minimums, compare them for memory overflows.
2009-04-26 10:50:56 -05:00
Vitor Santos Costa
2a6869bf28
just planning for the future...
2009-03-26 00:38:46 +00:00
Vitor Santos Costa
7769c33be7
fix shunting where it breaks variable order.
2009-03-24 00:17:59 +00:00
Vitor Santos Costa
1b238d62ec
fix bad copy and paste from master
2009-03-17 22:29:24 +00:00
Vitor Santos Costa
a221244b8c
fix bug in following retry chains.
2009-03-17 20:10:14 +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
Vitor Santos Costa
1191b039d5
include support for dynamically created clause lists.
2009-02-11 15:10:57 +00:00
Vítor Santos Costa
2e8d898e86
add new eval compiler
...
fix garbage collector for new big allocation scheme.
2008-12-05 16:08:44 +00:00
Vítor Santos Costa
13dd600f88
add type to BIG NUMs, so that we can easily know what it is all about.
2008-11-28 15:54:46 +00:00
Vitor Santos Costa
1c334ea198
fix bad marking of attributed variables from trail.
2008-11-13 09:03:27 +00:00
Vítor Santos Costa
770e838ddd
fix cast warnings in heapgc.c
2008-09-24 20:45:12 +01:00
Vítor Santos Costa
30900bd61f
go back to only doing gc when needed.wq
2008-09-24 00:11:22 +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
05f93cd4e6
be more careful about marking attributed variables:
...
- only mark unbound attributed variables in first step.
- remove deterministic bindings for those variables.
- mark non-deterministic bindings at mark_trail.
2008-08-28 17:41:07 +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
3a7b3e15c6
include type information in mark_delays.
2008-08-27 17:12:03 +01:00
Vítor Santos Costa
f499115573
redo lost updates
2008-08-21 13:38:25 +01:00
vsc
39c4a2e67f
fix c_interface not to crash when people try to recover slots that are
...
not there.
fix try_logical and friends to handle case where predicate has arity 0.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2278 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-06-17 13:37:51 +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
vsc
08422c967a
more fixes to C-interface
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2257 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-06-04 13:58:42 +00:00
vsc
fd6b87e5cf
oops
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2061 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-01-24 22:47:14 +00:00
vsc
82508f287b
avoid self-locking in garbage collector.
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2060 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-01-24 22:21:27 +00:00
vsc
e353d8811f
garbage collector was not asking for space.
...
avoid 0 sized calls to mmap.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2058 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-01-24 00:11: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
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
ff4aa369be
allow conditional compilation
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1965 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-10-21 08:48:06 +00:00
vsc
c625347697
fix global variables
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1962 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-10-18 08:24:16 +00:00