Commit Graph

51 Commits

Author SHA1 Message Date
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
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
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
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
0705ca0640 support for UNICODE, and other bug fixes.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1725 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-11-27 17:42:03 +00:00
vsc
13080439a6 small fixes on threaded implementation.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1700 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-10-10 14:08:17 +00:00
vsc
4ff41f7a62 improve indexing on floats
fix sending large lists to DB


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1692 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-09-20 20:03:51 +00:00
rslopes
87a481ca45 *** empty log message ***
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1612 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-04-27 14:13:24 +00:00
vsc
60d79804fe major changes to support online event-based profiling
improve error discovery and restart on scanner.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1477 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-12-17 03:25:39 +00:00
tiagosoares
da4e302b28 removed some compilation warnings related to the cut-c code
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1471 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-11-24 15:35:29 +00:00
vsc
c6c9e71e31 fix two instructions that were being read badly: op_fail and
switch_list_nl.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1393 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-09-19 19:14:50 +00:00
rslopes
ed92d70e68 BEAM for YAP update...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1384 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-09-08 21:59:58 +00:00
ricroc
b36b836820 TABLING NEW: better support for incomplete tabling
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1351 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-08-01 15:40:39 +00:00
ricroc
3a93e0e079 TABLING: answers for completed calls can now be obtained by loading (new option) or executing (default) them from the trie data structure.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1342 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-07-06 19:34:12 +00:00
vsc
6979a873cc improvements to compiler: merged instructions and fixes for ->
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1338 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-07-06 15:10:18 +00:00
ricroc
3d8c03f3c9 long int support for tabling
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1327 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-06-04 07:28:24 +00:00
ricroc
08eaaa570d float support for tabling
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1323 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-06-03 08:19:18 +00:00
vsc
7af3eafd12 == and \= should not need a choice-point in ->
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1321 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-06-01 20:25:23 +00:00
vsc
aff5df7760 get_rid of try_me?, retry_me? and trust_me? instructions: they are not
significantly used nowadays.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1319 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-06-01 14:02:52 +00:00
vsc
b45acf1195 add some atom gc fixes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1299 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-05-30 03:26:37 +00:00
vsc
056ccbc819 bug fixes, I hope!
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1270 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-04-10 04:01:15 +00:00