Vítor Santos Costa
e737599dc4
Change to simpler Eval mechanism
...
- avoid duplicate code
- implement different optimised code.
2008-12-04 23:33:32 +00:00
Vítor Santos Costa
13dd600f88
add type to BIG NUMs, so that we can easily know what it is all about.
2008-11-28 15:54:46 +00:00
Vítor Santos Costa
e8cbc5034e
first patch to isolate GMP code.
2008-11-28 15:54:08 +00:00
Vítor Santos Costa
58d4442883
fixes for gcc-4.3 (same as stable)
2008-11-26 09:56:18 +00:00
Vitor Santos Costa
99c5cb3e36
new version of term_hash based on SWI-ideas.
...
It handles infinite terms, and it seems to be a better hash.
2008-11-18 11:28:11 +00:00
Vitor Santos Costa
0ef147459a
handle case where we can expand attributed variable stack
...
without having to grow stack physically.
2008-11-14 14:52:55 +00:00
Vitor Santos Costa
9296762791
fix bug in reserving space for queues.
2008-11-14 14:52:00 +00:00
Vitor Santos Costa
7a21ccb009
Include hack to unify two attributed variables, if the solver knows what
...
it is doing.
2008-11-14 14:50:54 +00:00
Vitor Santos Costa
1c334ea198
fix bad marking of attributed variables from trail.
2008-11-13 09:03:27 +00:00
Vitor Santos Costa
6920041189
fix bad size in grow stack
2008-11-13 09:02:33 +00:00
Vitor Santos Costa
297ea16dcb
fix type in gprof
2008-11-05 13:28:44 +00:00
Vitor Santos Costa
e19a8eeb87
fix case where index has no clauses.
2008-11-04 17:01:57 +00:00
Vitor Santos Costa
181e122200
try to avoid doing stack expansion so often on arena overflow
2008-10-29 18:21:41 +00:00
Vitor Santos Costa
de043e3ee9
generate an Error on memory overflow.
2008-10-29 18:19:15 +00:00
Vitor Santos Costa
d4016ce69e
make -/1 fy with 200 priority, for compatibility with other Prologs (obs from Paylo Moura)
2008-10-28 11:34:19 +00:00
Vitor Santos Costa
e783a03610
fix write_strings breakage
2008-10-25 09:02:42 +01:00
Vítor Santos de Costa
5c959aee93
go back to SICSTus accents mode (and accept newlines in quoted atoms).
2008-10-24 00:23:45 +01:00
Vitor Santos Costa
0dcf34b7bc
mainbranch fixes to:
...
- fix quoted characters output
- fix line position in read_term and friends
- make messages look a bit better
- CLP(BN) EM improvements.
2008-10-23 22:17:45 +01:00
Vítor Santos de Costa
7207c18e65
fix longmp in trow not to recover trail. This way we do not need to do
...
copy_term/2 and we avoid losing the attributed variable stack.
2008-10-18 11:03:25 +01:00
Vitor Santos Costa
87987d0b85
fix extra arguments.
2008-10-17 12:37:39 +01:00
Vítor Santos de Costa
aef5725901
fix overflow fixes
2008-10-08 13:15:09 +01:00
Vítor Santos de Costa
444fc8fb7f
fix overflow bug
2008-10-07 23:52:26 +01:00
Vítor Santos de Costa
681d0f186d
fix bad type for p_number_y
2008-10-07 22:00:38 +01:00
Vitor Santos Costa
09ccb295c2
FIX: in tabling mode _trust_me was being assembled as _retry_me (obs from Chris Mungali)
2008-09-26 18:52:29 +01:00
Vítor Santos Costa
770e838ddd
fix cast warnings in heapgc.c
2008-09-24 20:45:12 +01:00
Vítor Santos Costa
abcb8f99fe
FIX: InitCPred and friends should check for overflow.
2008-09-24 00:59:41 +01:00
Vítor Santos Costa
30900bd61f
go back to only doing gc when needed.wq
2008-09-24 00:11:22 +01:00
Vítor Santos Costa
e252ef0b2f
more debugger fixes!
...
- make sure donotrace and oncenotrace are known to the signal mechanism:
they should disable creeping
- avoid creep at deallocate: it is a very bad idea :(
2008-09-23 23:43:01 +01:00
Vítor Santos Costa
1e8de3f86c
fix ) in arity 0 predicates
2008-09-23 22:49:44 +01:00
Vitor Santos Costa
bcb6edfb8a
include PtoAtomHashEntryAdjust to reduce casts
2008-09-18 17:59:16 +01:00
Vitor Santos Costa
20e8924bba
fix type warning in EnvPreg/error.c
2008-09-18 17:48:31 +01:00
Vitor Santos Costa
5db95de67d
first cut at making GPROF work on Leopard
...
based on Ocaml macport.
2008-09-18 17:34:46 +01:00
Vitor Santos Costa
821cc384a3
allow statistics on data base keys of integers.
...
change pred_entry not to fail on this case.
avoid using functor in this case.
2008-09-15 04:30:09 +01:00
Vitor Santos Costa
537dbb19fa
"single" indexing cannot disable wait nodes for LU predicates.
...
Otherwise, memory recovery breaks down.
2008-09-14 05:11:51 +01:00
Vitor Santos Costa
473012316a
put tracer.c back to normal.
2008-09-14 05:11:35 +01:00
Vítor Santos Costa
d70cb39c1d
fix answer_trie compilation and execution:
...
- YapOpcodes.h should have do/trust/try/trust: force this order in
tab.tries.insts.i
- retry and trust instructions should not trust YENV
2008-09-05 18:34:26 +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
6046f9f913
more fixes to debugger: make l and s option do what they are supposed to
...
do.
fix k and t, they had been broken.
Ideas:
DebugOn is now in the system and can disable spypoints.
Have an extra flag to distinguish fast (t,z,k) and slow(l,s) jumping.
2008-09-02 03:48:02 +01:00
Vítor Santos Costa
8f69c35e7f
optime access to execute_cpred
2008-09-01 16:48:05 +01:00
Vítor Santos Costa
84ad9adff0
fix clause to support new execute_cpred
2008-09-01 16:30:37 +01:00
Vítor Santos Costa
0fc361d331
indexer was going bad on _pop instruction.
2008-08-30 23:59:09 +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
05f93cd4e6
be more careful about marking attributed variables:
...
- only mark unbound attributed variables in first step.
- remove deterministic bindings for those variables.
- mark non-deterministic bindings at mark_trail.
2008-08-28 17:41:07 +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
Vitor Santos Costa
3a7b3e15c6
include type information in mark_delays.
2008-08-27 17:12:03 +01:00
Vitor Santos Costa
d5d5a6c95f
escape from NULL pointer.
2008-08-26 01:08:52 +01:00
Vitor Santos Costa
a6b9d096a6
make sure we always close intermediate memory streams on exit.
2008-08-25 15:19:00 +01:00