Commit Graph

1666 Commits

Author SHA1 Message Date
Vitor Santos Costa
ffe1dfdfff support for module based operators. 2009-11-20 00:33:14 +00:00
Vitor Santos Costa
d476e36a90 initialise LOCAL in system_malloc (obs from Jose Santos). 2009-11-19 08:25:08 +00:00
Vitor Santos Costa
d9016fa650 init_local should be called Yap_init_local to avoid clashesh. 2009-11-19 08:24:38 +00:00
Vitor Santos Costa
9cbdf8f57e tiny cleanups. 2009-11-18 23:36:07 +00:00
Vitor Santos Costa
6c887452e6 allow randomization of initial address, this enables testing restore routine. 2009-11-18 23:32:00 +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
Vítor Manuel de Morais Santos Costa
a316090f8c fix nth_instance: fix bugs and actually add two versions (obs from Theofrastos Mantadelis) 2009-11-18 13:06:37 +00:00
Vítor Manuel de Morais Santos Costa
f31aeff952 fix bad order of comparison in NthClause. 2009-11-18 12:48:22 +00:00
Vitor Santos Costa
939eda0050 just be consistent in calls. 2009-11-17 10:04:07 +00:00
Vitor Santos Costa
945fff50a2 we should only recover H after we backtrack, never before. 2009-11-17 10:03:14 +00:00
Vitor Santos Costa
1c52d17a4d get_bom should consider the case the file is empty. 2009-11-17 02:37:29 +00:00
Vitor Santos Costa
7b85efff0c subsumes should check for loops (Ulrich's #146). 2009-11-17 02:08:01 +00:00
Vitor Santos Costa
b7646836b6 remove some weird white spaces. 2009-11-17 02:07:48 +00:00
Vitor Santos Costa
832f3d2e4a fix missing header for Yap_rational_tree_loop 2009-11-17 02:07:06 +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
Vítor Manuel de Morais Santos Costa
99b2347cd8 SWI supports xor operator. 2009-11-11 10:54:38 +00:00
Vítor Manuel de Morais Santos Costa
8ecac6c2f9 sebuf on stdin was called if any std stream was a tty. Bad. (obs from Ashwin Srinivasan). 2009-11-10 11:25:56 +00:00
Vítor Manuel de Morais Santos Costa
b5ad71c9c1 improve functor tracing 2009-11-10 11:25:39 +00:00
Vítor Manuel de Morais Santos Costa
8f46f3d71d fix bad passing of ! destination if we were running at an exec: affected debugger. 2009-11-04 12:17:17 +00:00
Vítor Manuel de Morais Santos Costa
2fdf8e9bda fix bad ! register when calling continuation of meta-predicate (obs from A Kimmig). 2009-11-03 23:17:06 +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
Vitor Santos Costa
a628079e00 make sure we walk every clause when doing restore mega_clause. 2009-11-02 12:46:39 +00:00
Vítor Manuel de Morais Santos Costa
6a8cee8b79 compilation fixes 2009-10-31 00:18:13 +00:00
Vitor Santos Costa
bda231f24d Use "Foreign.h" 2009-10-31 00:02:17 +00:00
Vitor Santos Costa
923094bd01 more updates to HEAPFIELDS. 2009-10-30 23:59:00 +00:00
Vitor Santos Costa
7116d1385b move more fields to HEAPFIELDS 2009-10-28 15:53:23 +00:00
Vitor Santos Costa
838b14cb77 more data structures. 2009-10-28 15:20:46 +00:00
Vitor Santos Costa
d3f969e1b1 various_codes includes all the head pointers to the code space. Try to
centralise everything in a single file (HEAPFIELDS) and generate them
from a Prolog script (buildheap).
2009-10-28 13:11:35 +00:00
Vitor Santos Costa
36a7e5c59e fix error handling in syntax_error (don't assume ARG2 has the output). 2009-10-26 22:56:18 +00:00
Vitor Santos Costa
4c8eb33e06 we had args already (no need for argv0)
improve error handling in YAP_ReadBuffer
2009-10-26 10:42:19 +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
Vitor Santos Costa
253444d7ca support parms.h
pass argv[0]
2009-10-23 09:09:16 +01:00
Vitor Santos Costa
c6e16a608a fix @ option in format/2 2009-10-21 00:07:31 +01:00
Vítor Manuel de Morais Santos Costa
54465b08f1 support ISO extension popcount/1 2009-10-20 10:03:10 +01:00
Vítor Manuel de Morais Santos Costa
36e0c6bcf7 support for msb 2009-10-20 09:50:51 +01:00
Vítor Manuel de Morais Santos Costa
d18cb214fa implement epsilon (from ISO) 2009-10-20 09:21:59 +01:00
Vítor Manuel de Morais Santos Costa
91b47a438b indenting stuff. 2009-10-19 16:39:06 +01: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
Costa Vitor
56d37591a5 fix var_in_term 2009-09-12 17:17:16 -05:00
Costa Vitor
a1d44f068e fix stupid typo. 2009-09-12 16:45:00 -05:00
Costa Vitor
c0fd49df34 fix bad functor in heap routines. 2009-09-12 16:44:28 -05:00
Costa Vitor
32122f4171 make sure we have enough room when splitting mega clause. 2009-09-12 16:43:44 -05:00
Costa Vitor
fc28a49122 just use stderr 2009-09-12 16:43:18 -05:00
Vitor Santos Costa
1e905eb5ef allow unification not to bound a variable. 2009-09-09 17:59:25 -05:00
Costa Vitor
d02c9d23c2 handle cases where test is called with unbound variable. 2009-08-31 23:59:34 -05:00
Costa Vitor
4431682276 get rid of unused variable. 2009-08-31 23:58:05 -05:00
Costa Vitor
a00c69b6f7 badly initialised memory stream (obs from J Santos). 2009-08-31 23:56:00 -05:00
Costa Vitor
3cbdc8d14a make low level tracer understand yapor. 2009-08-19 23:46:51 -05:00
Costa Vitor
33085fd8d1 fix YAPOR not being threadtes as threads. 2009-08-19 22:44:48 -05:00
Costa Vitor
f877e78785 make YAP compile with --enable-or-parallelism 2009-08-19 21:53:49 -05:00
Costa Vitor
418fa1a396 64 bit machines may be using S while calling ExpandIndex. 2009-08-19 20:22:04 -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
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
Ricardo Rocha
7d50687c46 stdio.h include missing 2009-08-07 00:16:21 +01:00
U-Khasa\Vitor
f68cc92bce make sure binary files are open as binary in WIN32 (obs from Meera Sridhar). 2009-08-02 16:04:21 -05:00
U-Khasa\Vitor
2c53d1f8ed fix error message in put 2009-08-02 15:54:27 -05: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
Vitor Santos Costa
daa05caf86 Merge branch 'master' of gitosis@yap.dcc.fc.up.pt:yap-6 2009-07-28 21:38:26 -05:00
Vitor Santos Costa
9c74080512 fix memory overflow when doing very large writes on strings (obs from Jos Deroo). 2009-07-28 18:30:15 -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
Vitor Santos Costa
22ac3ee80b Use >< for xor (Paulo Mour, Iso meeting) 2009-07-23 14:31:04 -05:00
Vitor Santos Costa
a1e6a2baa7 bad priority for +/1. (Paulo Moura, ISO) 2009-07-23 14:27:04 -05:00
Vitor Santos Costa
7155aa943f make sure that variables in tabled predicates are safe for backtracking: new
variables should be bound carefully.
2009-07-22 23:28:04 -05:00
Costa Vitor
4882cefa12 get rid of debugging code. 2009-07-22 17:02:56 -05:00
Costa Vitor
0e2d3e3a91 fix bad argument processing in non-inlined arithmetic comparisons. 2009-07-22 17:02:02 -05:00
Costa Vitor
c8946e1e4e support inline arithemtic builtins as non-inlined. 2009-07-22 17:01:30 -05:00
Costa Vitor
d9a48c4014 disable inlining in tabled predicates (maybe a bit too harsh). 2009-07-22 17:00:49 -05:00
Vitor Santos Costa
c1024caa53 Unify emptylist of variables if one reads EOF. 2009-07-21 00:11:44 -05:00
U-Khasa\Vitor
d67332dc19 Improve error handling when loading DLLs 2009-07-20 20:55:22 -07:00
Costa Vitor
869671fb1b make sure to have trail entries reset on setjump (obs from Jose Santos). 2009-07-17 19:31:20 -05:00
Costa Vitor
66683aeef9 slots were not inited in tabling code, due to bad ifdef (obs from Chris Mungall). 2009-07-17 18:39:50 -05:00
Costa Vitor
390408d5af fix checking profiled choice-points (obs from Jose Santos). 2009-07-15 22:16:05 -05:00
Costa Vitor
0b85333018 fix int/UInt messup. 2009-07-15 17:29:26 -05:00
Costa Vitor
8a38c64441 fix uninitialised variable (valgrind). 2009-07-15 14:27:56 -05:00
Costa Vitor
8569aacfe5 check for very long wchar_t strings when scanning (obs from Jan Wielemaker). 2009-07-15 14:26:56 -05:00
Vitor Santos Costa
a1775fb031 Merge branch 'master' of gitosis@yap.dcc.fc.up.pt:yap-6 2009-07-13 21:58:29 -05:00
Vitor Santos Costa
11cefa668a handle overflow error in YAP_MkPairTerm ( obs from Fabrizio Riguzzi). 2009-07-13 21:55:57 -05:00
Vitor Santos Costa
6e3830aa4b improve error handling in arithmetic comparison (obs from Jose Santos) 2009-07-08 10:32:14 -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
026a666055 trail check on C entry: make sure we don't have unhandled trail overflows. 2009-06-26 14:08:15 -05:00
Costa Vitor
772d091a70 fix bad call to retry_counter 2009-06-26 13:16:42 -05:00
Costa Vitor
69c0a52548 Revert "ENV may not be in scope of catch in very special cases (eg, call counter)."
This reverts commit 15f9a68a35.

Botch!
2009-06-26 13:04:07 -05:00
Vitor Santos Costa
15f9a68a35 ENV may not be in scope of catch in very special cases (eg, call counter). 2009-06-26 09:15:19 -05:00
Vitor Santos Costa
ff20a23e64 stop counters at counter underflow event 2009-06-26 08:42:40 -05:00
Vitor Santos Costa
4d6cd779cb fix warnings. 2009-06-25 22:31:02 -05: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
246d32551a do not set PREG until being sure we have to jump 2009-06-23 06:50:53 -05:00
Costa Vitor
2588f5b7c5 make sure we count built-ins. 2009-06-22 16:03:14 -05:00
Costa Vitor
09f5a9ccb1 make YAP ask less space in deeply nested calls of findall. 2009-06-22 15:37:17 -05:00
Costa Vitor
d8595221d0 optimise sub_atom when sub_atom is known. 2009-06-22 15:35:40 -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
Costa Vitor
bf9091b5ed fix bug in copyterm 2009-06-17 14:43:24 -05:00
Costa Vitor
53fa330d90 always use YREG, not YENV, in case we have enough registers. 2009-06-16 21:20:35 -05:00
Costa Vitor
de5a09039f no_readline patches
avoid warnings in no_gmp world
avoid complaining by Solaris
2009-06-15 14:59:50 -05:00
Costa Vitor
7f0a712c88 fix call to trim_trail on solaris 2009-06-15 13:51:30 -05:00
Costa Vitor
f5a72828a0 fix SPARC register allocation bugs (not verified) #130 2009-06-15 10:29:31 -05:00
Costa Vitor
9569d04a9f remove some warnings in the absence of GMP 2009-06-15 10:11:05 -05:00
Vitor Santos Costa
b4ff9b492a make sure to recover stack before copying exception term. 2009-06-14 11:17:12 -05:00
Vitor Santos Costa
826b45d21c fix handling of out stack while throwing an exception. 2009-06-13 15:21:13 -05:00
Vitor Santos Costa
5a10dda14e fix threads version. 2009-06-13 14:01:16 -05:00
Vitor Santos Costa
475e681907 do fetch and remove a the same time: PopFromDB 2009-06-13 13:06:02 -05:00
Vitor Santos Costa
4de6e48a33 save exception term in database, so that it is clean separate from stacks. #116 2009-06-12 14:35:15 -05:00
Vitor Santos Costa
e6265e9d84 only dump stack if user not handling the stack #47 2009-06-12 14:04:32 -05:00
Vitor Santos Costa
1005fa8abf PLIOError should not prevent weird errors, like
resource_errors (#36).
2009-06-12 13:46:44 -05:00
Vitor Santos Costa
303261b283 improve error messages. 2009-06-12 13:44:22 -05:00
Ulrich Neumerkel
2f47f8902b Operator change for ISO/SWI 2009-06-11 09:27:48 -05:00
Costa Vitor
9b7d2b1cd4 if the compiler has ommited the instructions, it means we should the
argument set up there by the compiler.
2009-06-08 20:08:21 -05:00
Costa Vitor
15519fa3cd tightenn conditions on JumpExec 2009-06-05 18:45:41 -05:00
Costa Vitor
5e4be93491 able to commit 64 bits 2009-06-05 12:18:10 -05:00
Vitor Santos Costa
7e108201b0 fix memory leak in mod. 2009-06-05 10:55:28 -05:00
Vitor Santos Costa
ecb03a61c0 fix memory leak in min/2 and max/2. 2009-06-05 10:38:07 -05:00
Vitor Santos Costa
a1b621507a max of bignums would always return the first bignum #118 2009-06-05 09:49:00 -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
b455f057a8 fix writing of atributed variables. 2009-06-04 10:18:28 -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
5da51d615d fix crashes in 64-bit mode with unknown predicates. 2009-06-03 15:27:53 -05:00
Costa Vitor
efb72f7d0e make sure we send unsigned chars to writing routine (obs from Simon Strobl) 2009-06-03 10:25:21 -05:00
Costa Vitor
7f54acb536 separate standard alarm from virtual alarm. timeout uses virtual alarm #112 2009-06-03 10:09:14 -05:00
Costa Vitor
b72345cc97 handle correctly throws within the scope of a call_cleanup. This is implemented
by using an extra argument to verify if the catcher is the current call_cleanup.
If it is, we allow the exception to go forth.
2009-06-02 19:46:41 -05:00
Costa Vitor
2daccab1cb avoid setjmp if we can do it. 2009-06-02 18:08:40 -05:00
Costa Vitor
adb25ff96f growglobal would core dump over holes. 2009-06-02 18:08:18 -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
a2a8f8e40e stop writing at very long lists. 2009-06-01 22:54:56 -05:00
Costa Vitor
8870a1e661 define virtual timer and use it for timeout (#96) 2009-06-01 19:49:03 -05:00
Costa Vitor
8e55611d90 fix bad test for space overflow 2009-06-01 19:28:30 -05:00
Costa Vitor
00c9194014 fix reference to Yap_regp 2009-06-01 15:46:37 -05:00
Vitor Santos Costa
0bd3c910dd step towards better emulation of SWI in backtrackable predicates. 2009-06-01 15:32:36 -05:00
Vitor Santos Costa
45a1544307 use Int for 32 bit flags (int would be ok, though). 2009-06-01 15:32:07 -05:00
Vitor Santos Costa
95f28228f6 - separate user_try and user_retry
- make sure we have slots inited in retrying user C code.
2009-06-01 15:30:22 -05:00
Vitor Santos Costa
e84ecf2eaf fix #37: give resource error if trying to create a functor with bignum arity
also, allow meta-call to create large functors > Int.
2009-05-29 22:34:50 -05:00
Vitor Santos Costa
0cd72ad258 changes to compile YAP in WIN32 2009-05-29 14:36:49 -05:00
Vitor Santos Costa
a45da5f722 check for memory overflows in format (very long double, say) obs from Ingo Thon. 2009-05-29 10:26:48 -05:00
Costa Vitor
43e9e9f337 alarm(0) should be careful to kill existing signals. 2009-05-26 17:31:21 -05:00
Vitor Santos Costa
3c57286531 make sure we disable disabling interrupts on error handler. 2009-05-25 09:58:27 -05:00
Vitor Santos Costa
a6f0b8cc9f ignore specific limit for max write depth on lists. Use same limit everywhere. 2009-05-24 19:37:07 -05:00
Vitor Santos Costa
a0750ff5b7 handle heap overflows when constructing new predicates. 2009-05-24 19:25:26 -05:00
Vitor Santos Costa
9a9767d73c cannot just do error when user does crazy things. 2009-05-24 19:20:00 -05:00
Vitor Santos Costa
46dc2b1a49 should exit if interrupts *are* disabled. 2009-05-24 19:19:22 -05:00
Vitor Santos Costa
de3c042143 just update, no interesting change. 2009-05-24 15:17:23 -05:00
Vitor Santos Costa
09216a70b8 fix unprotected calls to plwrite. 2009-05-24 15:15:36 -05:00