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 |
|
Vitor Santos Costa
|
81970013ed
|
allow storing a pointer.
|
2009-05-24 15:14:44 -05:00 |
|
Vitor Santos Costa
|
b94baf1e5f
|
try not to loop in infinite terms.
|
2009-05-24 15:14:23 -05:00 |
|
Vitor Santos Costa
|
b5e5a671a8
|
restore stack on JumpExec
|
2009-05-23 15:51:50 -05:00 |
|
Vitor Santos Costa
|
b9a7d24e8b
|
avoid too long messages
back to top level if Yap_Error is called in a critical region.
|
2009-05-23 15:51: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 |
|
Vitor Santos Costa
|
04c419b3b0
|
not always throw an error when it is not a variable.
|
2009-05-22 22:35:40 -05:00 |
|
Vitor Santos Costa
|
9a2dbdcb24
|
one extra warning goes away.
|
2009-05-22 21:53:24 -05:00 |
|
Vitor Santos Costa
|
f79d79e926
|
replace TYPE_ERROR_VARIABLE for attributes #57
|
2009-05-22 21:51:48 -05:00 |
|
Vitor Santos Costa
|
264d9322b9
|
fix compiler warning messages.
|
2009-05-22 21:33:09 -05:00 |
|
Costa Vitor
|
7304fbda13
|
fix lack of streams message (Ulrich Neumerkel #60)
|
2009-05-22 19:55:18 -05:00 |
|
Costa Vitor
|
c00facdd17
|
exception at fail could loop with bad env. #59
|
2009-05-22 19:43:17 -05:00 |
|
Costa Vitor
|
e611e1061a
|
fix annoying int cast problems (64 bit only)
|
2009-05-22 19:09:18 -05:00 |
|
Costa Vitor
|
8fcc534a19
|
fix bad error propagation in term comparison #53
|
2009-05-22 18:44:05 -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 |
|
Costa Vitor
|
75e08846fe
|
vargs needs include.
|
2009-05-22 14:44:32 -05:00 |
|
Vitor Santos Costa
|
23301fb19a
|
avoid warning on malloc
|
2009-05-22 14:01:22 -05:00 |
|
Vitor Santos Costa
|
51e669dcfb
|
support for passing priority as argument to write. (Ulrich's #45).
fixes on making write handle infinite loops
|
2009-05-22 13:24:27 -05:00 |
|
Vitor Santos Costa
|
e1421f207e
|
use DebugPlWrite for debugging writes
|
2009-05-22 13:23:51 -05:00 |
|
Vitor Santos Costa
|
328e2f5c22
|
don't loop on cyclic terms.
|
2009-05-22 12:24:30 -05:00 |
|
Vitor Santos Costa
|
8e1c8d723e
|
never do P=FAILCODE directly in the code.
|
2009-05-22 11:24:44 -05:00 |
|
Vitor Santos Costa
|
9852f7781d
|
- simplify error handling in arithmetic and handle infinite terms (#46)
|
2009-05-22 11:21:39 -05:00 |
|
Vitor Santos Costa
|
3a3220d1a1
|
make sure we don't generate an heapexpansion in the middle of a write.
|
2009-05-21 01:04:13 -05:00 |
|
Vitor Santos Costa
|
88b5f1a735
|
be careful to make sure we can hanle the interrupt.
|
2009-05-21 00:39:14 -05:00 |
|
Vitor Santos Costa
|
a59a434d66
|
use interrupts_disabled
make onerrupts disabled recursive (not quite needed, but maybe one day).
|
2009-05-21 00:38:35 -05:00 |
|
Vitor Santos Costa
|
aaec9ddceb
|
fix overflow while dumping very large big ints (Ulrich #18)
|
2009-05-20 08:12:18 -07:00 |
|
Vitor Santos Costa
|
c7066b43ec
|
first try of setup_call_cleanup/3 and setup_call_catcher_cleanup/4
|
2009-05-19 23:53:14 -07:00 |
|
Vitor Santos Costa
|
a1203e56dd
|
we don't always expand stack on attvar overflow.
|
2009-05-17 22:51:34 -07:00 |
|
Vitor Santos Costa
|
17e36dbda1
|
keep things right if there is a temporary overflow in loopy term checking.
|
2009-05-17 12:39:51 -07:00 |
|
Vitor Santos Costa
|
a52317b9c2
|
fix Yap_shift_visit for malloc: a few miscalculations...
|
2009-05-17 12:26:09 -07:00 |
|
Vitor Santos Costa
|
44f7e67394
|
make sure we reset global variables when exiting a thread
|
2009-05-17 10:38:39 -07:00 |
|
Vitor Santos Costa
|
ae5bf4d6e7
|
support resource errors for out of memory conditions.
improve stack dump message.
|
2009-05-17 09:42:56 -07:00 |
|
Vitor Santos Costa
|
d8590f2587
|
return error message if no room available.
|
2009-05-17 09:42:40 -07:00 |
|
Vitor Santos Costa
|
55e37020a4
|
return copy when copying term
|
2009-05-17 09:41:59 -07:00 |
|
Vitor Santos Costa
|
94e740ae31
|
reduce the initail amount of space for globals
|
2009-05-17 09:41:34 -07:00 |
|
Vitor Santos Costa
|
de1fb3e2c5
|
copy exception term early on to avoid dangling pointers.
|
2009-05-17 08:02:34 -07:00 |
|
Vitor Santos Costa
|
8e7695a42c
|
make Yap_Eval only on entry.
|
2009-05-16 22:41:44 -07:00 |
|
Vitor Santos Costa
|
7953004610
|
fix unused variable warning.
|
2009-05-13 17:12:12 -05:00 |
|
Vitor Santos Costa
|
6d8649226c
|
fix tabling code.
|
2009-05-13 17:11:46 -05:00 |
|
Vitor Santos Costa
|
13e2febd30
|
stack overflow instructions could be wiped out by Restore.
|
2009-05-12 17:01:53 -05:00 |
|
Vitor Santos Costa
|
39ccbd345d
|
make options -T -L -G work as SWI: they impose a maximum size limit
|
2009-05-10 13:36:55 -04:00 |
|
Vitor Santos Costa
|
b177a9e333
|
/ is legal in Prolog, why did I comment that out?
|
2009-05-09 23:49:10 -04:00 |
|
Vitor Santos Costa
|
61973a2be6
|
be careful: error handling may have changed PC in call_c_with_fail!
|
2009-05-09 23:40:17 -04:00 |
|
Vitor Santos Costa
|
5b527e7eeb
|
just make things prettier.
|
2009-05-09 23:39:57 -04:00 |
|
Vitor Santos Costa
|
f53c741d96
|
improve low-level tracer.
|
2009-05-09 23:30:20 -04:00 |
|
Vitor Santos Costa
|
5b537ef7e2
|
fix error handling.
|
2009-05-09 23:30:08 -04:00 |
|
Vitor Santos Costa
|
e4fdf5a1ff
|
fix (??) X^N, N< 0. When does this make sense?
|
2009-05-07 23:42:16 -04:00 |
|
Vitor Santos Costa
|
21fa27526c
|
generate error if module is unspecified (obs from Ulrich Neumerkel).
|
2009-05-07 23:14:28 -04:00 |
|
Vitor Santos Costa
|
0cd9009132
|
remove debugging message.
|
2009-05-05 10:15:34 -05:00 |
|
Vitor Santos Costa
|
32b08082f7
|
fix clean_trail: with threads, objects may be above stack, not just below.
|
2009-05-05 09:56:47 -05:00 |
|
Vitor Santos Costa
|
c2e6456c25
|
wait until sending out the abort message.
|
2009-05-04 22:30:47 -05:00 |
|
Vitor Santos Costa
|
c31737fe3d
|
make sure that a meta-call to functor/3 has an environment so that
it can do garbage collection.
|
2009-05-04 21:57:08 -05:00 |
|
Vitor Santos Costa
|
a077500795
|
should always be ENV
|
2009-05-04 21:56:49 -05:00 |
|
Vitor Santos Costa
|
780b629bff
|
fix bad handling of trail overflow.
|
2009-05-04 21:26:47 -05:00 |
|
Vitor Santos Costa
|
10c38f8164
|
1. catch should not catch outside of scope!
2. when we are catching check for the first cleanup we can find; and while
doing that going on rewinding variables, for SICStus compatibility.
|
2009-05-04 18:12:33 -05:00 |
|
Vitor Santos Costa
|
35c1cb6338
|
put future environment when waking up goals before failure.
|
2009-05-04 18:11:43 -05:00 |
|
Vitor Santos Costa
|
8385f4bea6
|
saved state should be startup.yss, not startup.yss, in case YAP looks up
saved state in current directory (obs from Ulrich Neumerkel).
|
2009-05-02 14:06: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
|
58838b7838
|
fix attributed variable space allocation
|
2009-05-01 12:11:52 -05:00 |
|
Vitor Santos Costa
|
ee44706d37
|
fix bad initialization of H0 in tabling
|
2009-05-01 12:09:49 -05:00 |
|
Vitor Santos Costa
|
91b3e4359d
|
handle tabling errors where CP->AP==NULL
|
2009-05-01 12:09:22 -05:00 |
|
Vitor Santos Costa
|
8275f2232c
|
fix handling of multiassignment variables with tabling;
fix bad overflow handling when copying terms from tries.
|
2009-05-01 11:53:59 -05:00 |
|
Vítor Santos Costa
|
04f3b32a9a
|
clean code a little bit.
|
2009-04-29 14:22:20 +01:00 |
|
Vítor Santos Costa
|
8c3406adac
|
don't forget to globalise variables before making them global.
|
2009-04-29 14:21:52 +01:00 |
|
Vitor Santos Costa
|
5baaf79916
|
fix call_with_args/.. (obs from Jose Santos).
|
2009-04-26 11:16:40 -05:00 |
|
Vitor Santos Costa
|
bb80c8d61c
|
should use YENV, not ENV.
|
2009-04-26 10:51:18 -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
|
e06ee4d4fa
|
avoid over enthusiastic stack expansion.
|
2009-04-26 10:50:10 -05:00 |
|
Vitor Santos Costa
|
4cdfbae62a
|
allow garbage collection when we store error term.
|
2009-04-26 10:48:32 -05:00 |
|
Vitor Santos Costa
|
2b79d5aada
|
fix case where we call YAP with very large arities (obs from Ulrich Neumerkel).
|
2009-04-26 10:47:41 -05:00 |
|
Vitor Santos Costa
|
c5ba7e3854
|
fix non GMP code (obs from Tony Wilson).
|
2009-04-26 10:46:00 -05:00 |
|
Vitor Santos Costa
|
c132e7e6ec
|
fix gmp support to give out of resource error if the bignum is too big.
|
2009-04-25 11:01:33 -05:00 |
|
Vitor Santos Costa
|
09d33c6cad
|
try to give more helpful message in console aborts
|
2009-04-25 11:00:39 -05:00 |
|
Vitor Santos Costa
|
d02e14415b
|
another fix to FileFromStream
|
2009-04-25 10:59:05 -05:00 |
|
Vitor Santos Costa
|
7628c875e8
|
make sure to be compatible with non-gcc/old gcc
|
2009-04-25 10:58:42 -05:00 |
|
Vitor Santos Costa
|
450123d5c6
|
fix FileNoFromStream
|
2009-04-25 10:28:34 -05:00 |
|
Vitor Santos Costa
|
291997ad77
|
fix FileDescriptorFromStream
|
2009-04-25 10:27:55 -05:00 |
|
Vitor Santos Costa
|
fadec66d2c
|
gmp_should always recover space for the temporary bignum.
|
2009-04-24 19:10:53 -05:00 |
|
Vitor Santos Costa
|
2503805aff
|
support 2^2 is 4 and not 4.0: complicated if we have to deal with bignums.
|
2009-04-24 19:03:00 -05:00 |
|
Vitor Santos Costa
|
b5dc71d080
|
is_list/1 is now a builtin.
|
2009-04-24 10:31:53 -05:00 |
|
Vitor Santos Costa
|
08320410cb
|
fix missing comma in declarations.
|
2009-04-23 09:12:03 -05:00 |
|
Vitor Santos Costa
|
1ea4a27dd1
|
YAP_FileNoFromStream for Nf
|
2009-04-22 21:42:15 -05:00 |
|
Vitor Santos Costa
|
7ed3b456ac
|
add Yap_FileDescriptorFromStream at request from NF.
|
2009-04-22 16:41:41 -05:00 |
|
Vitor Santos Costa
|
0a2c90a919
|
fix warning
|
2009-04-22 16:41:33 -05:00 |
|
Vitor Santos Costa
|
3c84466d05
|
asserting on a spied predicate might make it loop for ever :(
|
2009-04-21 18:51:01 -05:00 |
|
Vitor Santos Costa
|
e204a8b7a3
|
display({A}) should not display as an operator.
|
2009-04-21 18:04:36 -05:00 |
|
Vitor Santos Costa
|
e2d3e66632
|
fix native_op
|
2009-04-18 17:55:18 -05:00 |
|
Vitor Santos Costa
|
c92765d962
|
SREG and S could be different; also S might be in use if there is an
overflow and the index code is jumping to the middle.
|
2009-04-18 15:22:51 -05:00 |
|
Vitor Santos Costa
|
7e98e5acdb
|
fix another internal deadlock.
|
2009-04-17 14:17:43 -05:00 |
|
Vitor Santos Costa
|
c685991119
|
fix self-deadlock in empty IDB entries.
|
2009-04-16 12:55:47 -05:00 |
|
Vitor Santos Costa
|
9624026beb
|
locking fixes.
|
2009-04-16 11:19:26 -05:00 |
|
Vitor Santos Costa
|
43ae55f5f2
|
thread_local is also dynamic.
|
2009-04-14 01:24:58 +01: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
|
f97bc596b9
|
do not use int for modules, use Term.
|
2009-04-07 15:44:46 +01:00 |
|
Vitor Santos Costa
|
94b2b181a7
|
do not deref because you may want to pass a pointer.
|
2009-04-04 23:56:42 +01:00 |
|
Vitor Santos Costa
|
9e8db82391
|
updates to UDI package
|
2009-04-02 17:34:42 +01:00 |
|
Vitor Santos Costa
|
cc7ff82275
|
term_hash non non_ground terms: ignoring the variables.
|
2009-03-31 21:56:12 +01:00 |
|
Vitor Santos Costa
|
18eca09bd0
|
multiple assignment variables should always be globalised.
|
2009-03-31 21:55:17 +01:00 |
|
Vitor Santos Costa
|
67eddb5a5b
|
arity may be a long int
|
2009-03-27 15:28:32 +00:00 |
|
Vitor Santos Costa
|
4b5c07192a
|
get rid of debugging message.
|
2009-03-27 15:28:22 +00:00 |
|
Vitor Santos Costa
|
3a213d7029
|
get rid of debugging message.
|
2009-03-27 15:28:08 +00:00 |
|
Vitor Santos Costa
|
91fd215d3d
|
fix bad types.
|
2009-03-27 15:23:54 +00:00 |
|
Vitor Santos Costa
|
099edc1520
|
get rid of compilation warning.
|
2009-03-27 15:19:30 +00:00 |
|
Vitor Santos Costa
|
2aa5aa3a26
|
add -A flag to ask for more attributed stack.
|
2009-03-27 15:15:54 +00:00 |
|
Vitor Santos Costa
|
901161a413
|
patches to remove ints and be able to allocate a lot of memory in 64 bit mode.
|
2009-03-27 14:45:40 +00:00 |
|
Vitor Santos Costa
|
751426c610
|
fix unallocated variable in overflow.
|
2009-03-27 14:05:27 +00:00 |
|
Vitor Santos Costa
|
f46ff06f38
|
get rid of broken $clause/3: fixes listing of dynamic predicates.
|
2009-03-26 08:12:24 +00:00 |
|
Vitor Santos Costa
|
8a0b7312e4
|
get rid of thread warnings..
|
2009-03-26 00:39:44 +00:00 |
|
Vitor Santos Costa
|
2a6869bf28
|
just planning for the future...
|
2009-03-26 00:38:46 +00:00 |
|
Vitor Santos Costa
|
5c2e5c524b
|
recognise exceptions within comparisons.
|
2009-03-26 00:37:57 +00:00 |
|
Vitor Santos Costa
|
2e807fc5c7
|
fix static_growglobal.
|
2009-03-24 14:15:40 +00:00 |
|
Vitor Santos Costa
|
4b65b063ca
|
fixes for threads to compile and boot.
|
2009-03-24 13:27:36 +00:00 |
|
Vitor Santos Costa
|
b198de2272
|
patch from master
|
2009-03-24 01:02:44 +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
|
4fa27164e6
|
oops!
|
2009-03-16 22:22:07 +00:00 |
|
Vitor Santos Costa
|
77eaff31b8
|
cleanup stack shifting when inserting holes (growglobal).
|
2009-03-16 17:30:13 +00:00 |
|
Vitor Santos Costa
|
4cac5b6616
|
ld_path is not a fixed atom
|
2009-03-16 15:12:48 +00:00 |
|
Vitor Santos Costa
|
5ef03f2d0f
|
fix BLOB operations and get rid of warning
|
2009-03-14 10:06:55 +00:00 |
|
Vitor Santos Costa
|
1161f80426
|
fix calling SWI C-Predicates.
|
2009-03-13 19:36:38 +00:00 |
|
Vitor Santos Costa
|
08acf82266
|
handle non-wide atoms correctly.
|
2009-03-13 19:00:14 +00:00 |
|
Vitor Santos Costa
|
8b118f1778
|
fix bad lock
|
2009-03-13 11:49:38 +00:00 |
|
Vitor Santos Costa
|
c9c097b32d
|
improve implementation of call_with_args/*
|
2009-03-13 11:11:04 +00:00 |
|
Vitor Santos Costa
|
fc2e01f320
|
improve code for disjunctions by trying to avoid permanent variables.
|
2009-03-10 16:24:26 +00:00 |
|
Vitor Santos Costa
|
e4d6b529c7
|
fix bad merge in put/get instructions
|
2009-03-10 16:23:43 +00:00 |
|
Vitor Santos Costa
|
7726944e1b
|
back to normal.
|
2009-03-10 16:22:45 +00:00 |
|
Vitor Santos Costa
|
21aba71211
|
get rid of unused builtins.
|
2009-03-10 16:21:33 +00:00 |
|
Vitor Santos Costa
|
b744fabb71
|
new predicates for variable search in term.
|
2009-03-10 16:21:05 +00:00 |
|
Vitor Santos Costa
|
cd548813fd
|
make $variables_in_term/3 check for repeated variables, ie (vint(a(X),[X],[X])).
|
2009-03-09 14:15:41 +00: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 |
|