Vítor Santos Costa
aab98180c5
garbage collection support for opaque variables
2011-12-13 10:01:51 +00:00
Vítor Santos Costa
bab27a5761
fix warning.
2011-10-02 16:17:30 -03:00
Vitor Santos Costa
7c57ab99f2
add debugging aids.
2011-10-01 12:59:45 -07:00
Vítor Santos Costa
7cc1d98079
fix bug with incremental gc setting HZ incorrectly.
2011-09-20 09:53:43 +01:00
Vitor Santos Costa
ec438106a0
more qly stuff
2011-08-27 21:23:14 -03:00
U-WIN-U2045GN0RNQ\Vítor Santos Costa
b6aca9463d
Merge branch 'master' of ssh://yap.git.sourceforge.net/gitroot/yap/yap-6.3
2011-08-18 22:35:13 +01:00
Ricardo Rocha
efc59cf8d6
DepFr_cons field initialization for threads
2011-07-26 16:49:49 +01:00
U-WIN-U2045GN0RNQ\Vítor Santos Costa
4fe1833ece
Merge branch 'master' of /cygdrive/z/vitor/Yap/yap-6.3
2011-07-25 17:09:43 +01:00
U-WIN-U2045GN0RNQ\Vítor Santos Costa
840e287cda
mode changes
2011-07-25 17:09:28 +01:00
Vitor Santos Costa
f6be2ed08d
support interface to foreign objects that have a backtrack handler.
2011-07-22 04:09:33 -07:00
Vitor Santos Costa
7a33b8ebbf
allow strong generic buffers in stack.
2011-07-21 02:24:21 -07:00
ubu32
cc378715e0
fix 32 bit warnings.
2011-07-09 09:15:10 -07:00
Vítor Santos Costa
7e7bc06d07
check for problems in bignums.
2011-06-21 15:08:58 +01: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
Vítor Santos Costa
0474df0b1f
improve error message.
2011-05-09 19:13:36 +01:00
Joao
bada4ddfcf
Remove LOCAL_ variables declaration from heapgc.c.
2011-05-05 17:41:05 +01:00
Joao
dc3c54c164
change LOCALS macros.
2011-05-04 10:11:41 +01:00
Joao
3e148c3541
change define SBA to YAPOR_SBA
2011-03-30 15:32:59 +01:00
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
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
6e2947e8c4
avoid _longjmp
2010-12-16 01:22:10 +00:00
Vitor Santos Costa
ab8911708b
fix YAP to use _longjmp when available. longjmp is just too expensive on OSX machines.
2010-10-26 22:03:36 +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
c52dda489b
be careful around 1L and friends
2010-05-11 00:18:12 +01:00
Vítor Santos Costa
faeef37a03
long -> Int
2010-05-10 10:21:56 +01:00
U-WIN-8E8REQR3Q7E\Vítor Santos Costa
e85d0a3939
fix unsafe test
2010-05-09 00:43:13 +01:00
Vítor Santos Costa
28ba64be94
fix garbage collector for attributed variables.
2010-05-07 23:49:20 +01:00
Vítor Santos Costa
11641c5f94
64 bit cleanups.
2010-05-06 15:00:44 +01:00
Vitor Santos Costa
950144a63f
more experiments with format
2010-05-05 00:38:46 +01:00
Vítor Santos Costa
ba22623aeb
mark slots if called from user-c-code
...
beautify oops messages.
2010-05-04 14:54:55 +01:00
Vítor Santos Costa II
7f9f10a1d9
cannot trust H0 in the att test (use Yap_GlobalBase instead).
2010-04-22 12:08:02 +01:00
Vítor Santos Costa II
da78b22324
fix fixes to garbage collector.
2010-04-20 23:08:08 +01:00
Vítor Santos Costa II
04ddd8dca0
fix garbage collection of attributed variables.
2010-04-19 16:15:33 +01:00
Vítor Santos Costa II
c4b12d5cbe
- fix memory leaks
...
- avoid unnecessary mallocs by having a first alloc to do th ework.
2010-04-15 22:23:54 +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
Vítor Santos Costa II
b10268def1
be careful about testing for attvars.
2010-04-12 17:21:19 +01:00
Vítor Santos Costa II
3fd7da94ba
more valgrind catches.
2010-04-08 00:53:38 +01:00
Vitor Santos Costa
f45e95ba68
fix sTR0 to always point to base of updates.
2010-03-30 10:59:12 +01:00
Vítor Santos Costa II
b068721c68
fix type warnings.
2010-03-22 15:01:54 +00:00
Vitor Santos Costa
57f55cbd28
fix garbage collection of pointers to attributed variables.
2010-03-16 01:07:26 +00:00
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
vsc
1656d383d5
more small fixes (thanks to Markis Triska)
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1953 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-10-11 14:25:09 +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
c7344ca385
make gc work better with globals and even lots of globals
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1940 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-09-28 13:10:46 +00:00
vsc
31ff28d3ee
upgrade JPL
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1936 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-09-27 15:25:34 +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
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