Vitor Santos Costa
504c2f3000
fix loop in restore
2013-01-22 16:01:37 +00:00
Vitor Santos Costa
2a44a0205b
support backtracking with uninst args
2013-01-08 12:35:18 +00:00
Vítor Santos Costa
f063a2bd52
exo first step.
2013-01-07 09:47:14 +00:00
Vitor Santos Costa
f0b44b9b77
fix bad indexing (obs from Jos)
2012-12-07 23:43:00 +00:00
Ricardo Rocha
72f79b8c4f
fix compilation errors for multi-threaded tabling
2012-01-05 11:41:46 +00:00
Ricardo Rocha
c594d321ef
Miguel's support for multi-threaded tabling
2011-12-22 16:50:20 +00:00
Vitor Santos Costa
51e635f0c9
more QLY stuff.
2011-08-31 13:59:30 -07:00
Vitor Santos Costa
ec438106a0
more qly stuff
2011-08-27 21:23:14 -03:00
Vitor Santos Costa
a56402303e
first step for quick loader, and fix an instruction format.
2011-07-30 00:07:35 +01:00
Vítor Santos Costa
e74a25d366
handle slowdown when retracting clauses.
2011-06-24 21:08:22 +01:00
Vítor Santos Costa
90d93fdbdd
cache abstra machine register in threaded mode.
2011-03-07 16:02:55 +00:00
ubu32
67d23051c2
fix pruning to handle backtrackable C-predicates in a much nicer way.
2011-02-14 11:29:20 -08:00
ubu32
1717b113b3
cut should know about environment size.
2011-02-14 06:57:16 -08:00
Vítor Santos Costa
cfe0dda995
more bigint and dbterm fixes.
2010-12-16 22:21:46 +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
Vitor Santos Costa
80c38081da
no need for special procceed instruction.
2010-10-12 22:02:51 +01:00
Vitor Santos Costa
e5232bc8fc
force system to check for overflows at end of procceed for clauses with body.
2010-10-11 14:45:15 +01:00
Vítor Santos Costa
473fd5516d
small fix to Osbmp type instructions.
2010-08-02 19:47:29 +01:00
Vítor Santos Costa
ffc094e25f
make sure we have enough room before we enter a clause.
2010-08-02 18:20:03 +01:00
Vitor Santos Costa
3d6e223dae
support for space reservation (goal: call gc before trying to insert very large terms).
2010-08-02 13:04:30 +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
e41c7a05c1
fix restoring of LU try chains.
2010-01-12 10:08:38 +00:00
Vitor Santos Costa
df2b11a6ec
define Optype for xxc, for instructions whose constant argument is a term, like functor(a,X,T).
2009-12-06 00:37:48 +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
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
Ricardo Rocha
c47da032a8
Merge branch 'master' of gitosis@yap.dcc.fc.up.pt:yap-6
2009-06-24 20:06:00 +01:00
Ricardo Rocha
eeb62b63b4
support for trie compact lists
2009-06-24 20:04:16 +01: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
b92b026c90
more patches to support Anderson's JIT.
2009-04-08 00:32:36 +01:00
Vitor Santos Costa
b2ad3bd000
first cut at Anderson's JIT code.
2009-04-07 23:55:16 +01:00
Vitor Santos Costa
828964c3c1
remove optimised arithmetic instructions. They made the emulator even bigger than
...
usual, and they were not performing.
2009-03-09 11:52:01 +00:00
Vitor Santos Costa
afd979a246
improve substantially handling of soft disjunctions.
2009-03-05 16:12:21 +00:00
Vitor Santos Costa
15b86cded4
new merged instructions and small changes to the emulator.
2009-03-03 10:04:13 +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
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
a36be5bf20
massive changes to support new scheme for arithmetic:
...
- compilation and assembly support
2008-12-09 12:54:27 +00:00
Vítor Santos de Costa
2cdcf87044
fix yxn instruction type.
2008-10-07 22:32:15 +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
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
Vítor Santos Costa
f499115573
redo lost updates
2008-08-21 13:38:25 +01:00
vsc
f4173813ff
updates to restore
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2234 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-05-12 14:04:23 +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
0c0826b938
fix some icc warnings
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2165 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-03-25 22:03:14 +00:00
vsc
f1613bf732
fix small bug in restore opcode
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2068 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-01-28 18:12:36 +00:00