Commit Graph

771 Commits

Author SHA1 Message Date
Vitor Santos Costa
8edeead245 fix compilation warnings 2010-07-19 22:42:47 +01:00
Vitor Santos Costa
6ebc31f2d8 codes/2 functor (used by format). 2010-07-19 14:48:42 +01:00
Vitor Santos Costa
68a1ab6ce7 make sure that we don't have tails of lists with local variables. 2010-07-19 14:39:52 +01:00
Vitor Santos Costa
b2184ecb00 term export and import routines 2010-07-15 17:19:37 +01:00
Vítor Santos Costa
de2d6867ad isupport for improved SWI emulation. 2010-06-23 11:47:14 +01:00
Vitor Santos Costa
0ca38f0b57 amd64 locking does not work 2010-06-19 22:24:41 +01:00
Vítor Santos Costa
2d6fc978e4 fix for threading initialization 2010-06-19 14:38:04 +01:00
Vítor Santos Costa
bd50f087e9 imore SWI compat, including string fixes 2010-06-19 00:38:49 +01:00
Vítor Santos Costa
d1d149b9fd support for PL_ mpz and mpq ops
add missing atom_nchars
2010-06-18 23:24:36 +01:00
Vítor Santos Costa
cf90ace3e1 signal handling SWI style. 2010-06-17 08:20:34 +01:00
Vítor Santos Costa
0ff5195bd1 object loading support
blob objects (not supported yet)
2010-06-17 00:31:42 +01:00
Vítor Santos Costa
bf26536626 make frame structure thread local. 2010-06-14 09:26:32 +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
d1599bca8d fix extra uses of mpz_ in external code. 2010-05-28 15:29:20 +01:00
Vítor Santos Costa
ae2421951b fix comparison between terms when rationals come up. 2010-05-28 12:07:01 +01:00
Vítor Santos Costa
293dadb003 support for rational numbers
make floor and friends return an integer (make it closer to SICStus).
2010-05-28 09:53:56 +01:00
Vítor Santos Costa
09fef1a033 rational number support. First pass. 2010-05-27 12:24:15 +01:00
Vitor Santos Costa
fd9f4efe0b fix indexing of bignums (obs from Jos de Roo). 2010-05-14 12:42:30 +01:00
Vitor Santos Costa
a4344f5bf6 move to 6.0.6 2010-05-11 22:22:13 +01:00
Vítor Santos Costa
be2a3a635e L constants are evil in 64 bits 2010-05-11 12:25:49 +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
Vítor Santos Costa
11641c5f94 64 bit cleanups. 2010-05-06 15:00:44 +01:00
Vitor Santos Costa
ecaf6aa713 lookup with max lentgth 2010-05-06 10:58:25 +01:00
Vítor Santos Costa
950abd136e get rid of debugging info.
routines are only define with wctype.h
2010-05-05 12:51:38 +01:00
Vitor Santos Costa
f3b6a044f6 improvements to language support. 2010-05-05 12:45:11 +01:00
Vitor Santos Costa
950144a63f more experiments with format 2010-05-05 00:38:46 +01:00
Vitor Santos Costa
1a53fdc757 try to support size independent printf 2010-05-05 00:27:00 +01:00
Vítor Santos Costa
c8c34d4773 swi_reverse_hash was in a bad place. 2010-05-04 16:31:31 +01:00
Vítor Santos Costa
2be8bcb482 64 bit error 2010-05-04 14:53:05 +01:00
Vitor Santos Costa
764737fe5b add missing files. 2010-05-03 14:27:54 +01:00
Vitor Santos Costa
31554991c8 better emulation of SWI atom_t and functor_t. 2010-05-03 14:26:56 +01:00
Vítor Santos Costa II
23d01fc7a6 version 6.0.5 2010-05-01 12:20:28 +01:00
Vítor Santos Costa II
030539f33b PL_get_chars: Implement CVT_WRITE and CVT_WRITE_CANONICAL 2010-04-29 23:04:04 +01:00
Vitor Santos Costa
64528946d9 fix bad name for atom. 2010-04-28 00:32:37 +01:00
Vítor Santos Costa II
3272d5d230 inform about new module for system library 2010-04-22 12:11:15 +01:00
Vítor Santos Costa II
9f7df27e3a Merge branch 'master' of gitosis@yap.dcc.fc.up.pt:yap-6 2010-04-19 15:58:41 +01:00
Ricardo Rocha
1029828775 Merge branch 'master' of yap.dcc.fc.up.pt:yap-6 2010-04-19 02:36:14 +01:00
Ricardo Rocha
c221c2ff85 renaming some OPTYap files in order to have a more consistent name organization 2010-04-19 02:34:08 +01:00
Vitor Santos Costa
2a7765ae5c make clear that some files are generated automatically. 2010-04-18 21:48:20 +01:00
Vítor Santos Costa II
dd182fdeac Merge branch 'master' of gitosis@yap.dcc.fc.up.pt:yap-6 2010-04-16 12:12:37 +01:00
Vítor Santos Costa II
0e431dcf24 prefetch on x86 2010-04-16 12:12:25 +01:00
Vitor Santos Costa
d68c7854bd make things run in sparc-64 2010-04-16 12:12:23 +01:00
Vitor Santos Costa
1cf17cc2fe improve type in token 2010-04-16 12:11:52 +01:00
Ricardo Rocha
ddb1cd8604 adding two new modes to the yap_flag/2 and tabling_mode/2 built-in
predicates: 'local_trie' mode and 'global_trie' mode.
2010-04-16 02:08:06 +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
Vitor Santos Costa
28e006b484 Merge branch 'master' of yap.dcc.fc.up.pt:yap-6 2010-04-15 11:38:55 +01:00
Vitor Santos Costa
b737ce447f improve allocation through malloc: avoid allocating labels in the stack. 2010-04-15 11:37:39 +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
719089b96b make PL_is_initialised honest :) 2010-04-13 00:31:48 +01:00
Vítor Santos Costa II
b1621d033a export type of foreign fields. 2010-04-10 21:20:00 +01:00
Vítor Santos Costa II
0df80db205 protect from looking at unused fields 2010-04-10 21:19:31 +01:00
Vítor Santos Costa II
e9fce7c755 fix bad while: pred chain will be restored through pred hash table. 2010-04-09 11:55:36 +01:00
Vitor Santos Costa
45473e939b fix previous patch for restoring PredHashTable. 2010-04-09 11:46:59 +01:00
Vítor Santos Costa II
143022e6aa fix bad restore: we would just restore the first predicate with same name (obs from Nuno Fonseca). 2010-04-08 00:52:00 +01:00
Vitor Santos Costa
55b464dace export Yap_WinError 2010-04-07 01:35:44 +01:00
Vitor Santos Costa
9110c4db71 if we use malloc, get memory out of malloc instead of using stacks. This is in order to avoid growing stacks that never contract again. 2010-03-31 15:51:18 +01:00
Vitor Santos Costa
91542c7be1 avoid bad alignment on 64 bits. 2010-03-30 09:16:20 +01:00
Vítor Santos Costa II
b068721c68 fix type warnings. 2010-03-22 15:01:54 +00:00
Vitor Santos Costa
0c28e58dd4 do not randomise initial address. 2010-03-22 00:11:54 +00:00
Vitor Santos Costa
d5e1ff38f4 new interface to access globals. They are not in a file called GLOBALS, from which
we generate several files automatically.
2010-03-21 22:12:42 +00:00
Vitor Santos Costa
1245c85ba1 move to version 6.0.4 2010-03-16 01:16:36 +00:00
Vitor Santos Costa
54c0209d3a give macros to reset and update chain of attvars in term copy. 2010-03-15 14:19:45 +00:00
Vitor Santos Costa
117647f552 fix test 2010-03-14 09:32:31 +00:00
Vitor Santos Costa
3683da028a use correct tests. 2010-03-14 09:31:04 +00:00
Vitor Santos Costa
2908d4ccbd fix: size of quue went down. 2010-03-12 22:40:17 +00:00
Vitor Santos Costa
53b4828000 new Atts Code. 2010-03-08 09:24:11 +00:00
Vitor Santos Costa
ba091eb2f9 support db_ref_e: 2010-03-06 22:43:21 +00:00
Vitor Santos Costa
9083dc5633 new functor for attributed variables. 2010-03-06 22:34:49 +00:00
Vitor Santos Costa
43a1a754dd erf function (patch from Bernd Gutmann). 2010-03-05 00:01:04 +00:00
Vitor Santos Costa
50b692d2c1 change release to 6.0.3 2010-03-04 09:13:06 +00:00
Vitor Santos Costa
145e66063b inc version to 6.0.2 2010-03-01 23:06:25 +00:00
U-Khasa\Vitor
46f0a0644c fix bad restore of operators (obs from Paulo Moura) 2010-03-01 11:52:42 -06:00
Vitor Santos Costa
7037b38fa7 make nb_ undefined variable return an error, as SWI does. 2010-02-28 00:57:29 +00:00
Vitor Santos Costa
0bdea36358 6.0.1 2010-02-27 10:11:32 +00:00
Vitor Santos Costa
5778730b62 be less enthusiastsis about writing (op). 2010-02-26 14:14:10 +00:00
Vitor Santos Costa
d7c74d8888 fix missing commit for syntax_erro 2010-02-26 13:30:16 +00:00
Vitor Santos Costa
038b74493c more ATOM changes. 2010-02-26 10:59:43 +00:00
Vítor Santos Costa
dddad72a0e AtomDouble was not defined correctly. 2010-02-19 14:16:57 +00:00
Vitor Santos Costa
f5bba7b8f7 fix indexing of dbrefs (obs from Nicola di Mauro). 2010-02-12 15:51:31 +00:00
Vitor Santos Costa
05c3b22322 fix tabling compilation 2010-02-10 13:16:08 +00:00
Vitor Santos Costa
95e596a8a1 make LOCAL a register 2010-02-10 09:22:20 +00:00
U-Khasa\Vitor
33190e290d mingw complaint with recent versions of gcc 2010-02-10 03:03:03 -06:00
vsc
f8070bdd59 YAPOR: lock memory allocation under YAPOR/dlmalloc 2010-02-03 22:54:47 +00:00
Vítor Manuel de Morais Santos Costa
9d1f0cd361 incremental copying with or-threads. 2010-02-01 20:05:01 +00:00
Vítor Manuel de Morais Santos Costa
4d341f2aab fix bad call to gc (obs from Jose Santos). 2010-01-29 15:21:00 +00:00
Vítor Manuel de Morais Santos Costa
139fc6c440 small fixes for CUT_C 2010-01-28 15:42:49 +00:00
Vitor Santos Costa
f9bf676cb8 disable BP_FREE on 64 bits amd64 2010-01-27 11:00:25 +00:00
Vítor Manuel de Morais Santos Costa
bcc4a27206 cut_succeed and cut_fail should recover pool of try_c and should
do trim_trail (not that the latter really matters).
2010-01-26 18:03:09 +00:00
Vitor Santos Costa
5cd85f4eaa export Yap_IsGroundTerm(t) 2010-01-25 12:28:49 +00:00
Vitor Santos Costa
ad3bf0b178 pthread_locking is required for CYGWIN and Mac. 2010-01-22 22:30:43 +00:00
Vítor Manuel de Morais Santos Costa
3a0179ca9d fix XOPEN_SOURCE complaint. 2010-01-21 15:05:30 +00:00
Vitor Santos Costa
2edc06b6a2 fix unifiable for attributed variables (obs from Jiefei Ma). 2010-01-21 09:47:55 +00:00
Vítor Manuel de Morais Santos Costa
af32dc1a9c make cut_c default. 2010-01-15 15:09:18 +00:00
Vítor Manuel de Morais Santos Costa
5ef31fbfd2 experiment in or-parallel threads. 2010-01-14 15:58:19 +00:00
Vitor Santos Costa
e41c7a05c1 fix restoring of LU try chains. 2010-01-12 10:08:38 +00:00
Vitor Santos Costa
e86a995dd2 fix bad test faster interface to eval (obs from Jose Santos) 2010-01-11 10:35:36 +00:00
Vitor Santos Costa
a7e6c5672e try to speed up eval a bit. 2010-01-04 21:16:42 -02:00
Vitor Santos Costa
6d1eec34db make atom locking compatible with SWI-Prolog. 2009-12-21 10:12:47 -02:00
Vitor Santos Costa
79a1d3e13c fix thread stuff (obs from Jiefei Ma). 2009-12-17 23:55:09 -02: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
Vítor Manuel de Morais Santos Costa
1176f71f3a support for making sure exceptions are reset when they should be reset (obs from Nuno Fonseca, #159) 2009-12-03 17:48:25 +00:00
Vitor Santos Costa
d2da5bfe26 fix setup_call_cleanup and friends. 2009-12-03 02:13:22 +00:00
Vitor Santos Costa
06d30b9fc9 Jump and Throw need to store the term away, if they try to use arena
the term will hang in the stack (#152).
2009-12-02 21:59:41 +00:00
Vítor Manuel de Morais Santos Costa
506da0b1bf make write always protect operators when they are not used as operators so as to follow standard (#150). 2009-11-27 16:09:48 +00:00
Vítor Manuel de Morais Santos Costa
b16623d026 fix realloc and friends (obs from Nuno Fonseca). 2009-11-27 13:31:03 +00:00
Vítor Manuel de Morais Santos Costa
98f79484ae change throw mechanism to fit better with cleanup mechanism:
- balls are now stored off line and recovered by Prolog code when everything
is safe.
- if a ball exists, throw uses the *existing* one (be careful not to have one
laying around).
- Jump routine cleans up every cp except ones for setup_call handling, backtracking simply calls setup handlers.
2009-11-27 11:21:24 +00:00
Vitor Santos Costa
2ab3308a56 fix restore of opentries. 2009-11-25 00:38:05 +00:00
U-Xato7\Vsc
25b5464fe8 handle correctly next element after operator property. 2009-11-23 16:02:05 +00:00
Vítor Manuel de Morais Santos Costa
b300db2e96 LOW_PROF uses FILE structure, and therefore requires stdio.h 2009-11-23 13:52:13 +00:00
Vitor Santos Costa
ffe1dfdfff support for module based operators. 2009-11-20 00:33:14 +00:00
Vitor Santos Costa
73bba98946 add extra protection against useless shifts. 2009-11-20 00:31:09 +00:00
Vitor Santos Costa
26e4ce7e27 fix bug in restore operators. 2009-11-20 00:30:36 +00:00
Vitor Santos Costa
8c1ba9562a fix bad test in tabling mode. 2009-11-19 08:33:10 +00:00
Vitor Santos Costa
9cbdf8f57e tiny cleanups. 2009-11-18 23:36:07 +00:00
Vitor Santos Costa
7ddaaa1362 Term is Unsigned so you cannot add a negative to it and get away :( 2009-11-18 23:33:09 +00:00
Vitor Santos Costa
dcf7e282c8 bugs in restoring Heap: stuff repeated twice or at bad locations. 2009-11-18 23:32:31 +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
7155fbec22 fix bad ordering in HEAPFIELDS: OPERANDS must be well placed before we can
recover atom table and dependent preds.
2009-11-18 15:48:29 +00:00
Vitor Santos Costa
832f3d2e4a fix missing header for Yap_rational_tree_loop 2009-11-17 02:07:06 +00:00
Vítor Manuel de Morais Santos Costa
146718c060 fix bad call to tabling data structures. 2009-11-03 15:06:48 +00:00
Vítor Manuel de Morais Santos Costa
7fddfbc189 fix bad tabling restore. 2009-11-02 16:43:24 +00:00
Vitor Santos Costa
15fc06764a fix declaration and message_hook/3 (obs from Paulo Moura) 2009-11-02 12:53:51 +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
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
d373f23b50 make some sense of the mess that was various_codes * 2009-10-27 10:48:37 +00: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
da0186a0aa fix unused stuff. 2009-10-21 08:35:09 +01:00
Vitor Santos Costa
0f99e336cc YAPVERSION 2009-10-21 00:20:18 +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
463348bb2f fix memory collision in allocatng mmap 2009-10-16 08:09:22 +01:00
Costa Vitor
dbd5b09303 make low_level_tracer compile sequentially, again. 2009-08-20 09:38:30 -05:00
Costa Vitor
3cbdc8d14a make low level tracer understand yapor. 2009-08-19 23:46:51 -05:00
Costa Vitor
f877e78785 make YAP compile with --enable-or-parallelism 2009-08-19 21:53:49 -05:00
Costa Vitor
84646ee581 make includes compatible with configure.in 2009-08-19 20:22:49 -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
Vitor Santos Costa
1fa608010a for some reason, tabling codes likes using cp_ap == NULL for SLD complete goals. 2009-07-31 08:31:17 -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
93c6e65b7e tabling would set ap=NULL on producers and SLD nodes. Set SLD trusted nodes to TRUST_FAIL. 2009-07-24 15:08:07 -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