Commit Graph

443 Commits

Author SHA1 Message Date
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
Vitor Santos Costa
f679f21a71 cleanup unnecessary MkFunctor 2008-12-23 02:20:22 +00:00
Vítor Santos Costa
a8ac9bfb43 generate known atoms and functors automatically 2008-12-23 01:53:52 +00:00
Vítor Santos Costa
43e70f2003 more changes to support SWI Input/Output. Now it compiles, which does
not mean it would work!
2008-12-22 12:03:14 +00:00
Vítor Santos Costa
a2744ed186 further changes to better support SWI interface. 2008-12-17 14:47:05 +00:00
Vítor Santos Costa
2b0c27deb6 Remove attempt to emulate SWI I/O
add YAP_getcwd and PL_cwd to interface
2008-12-13 16:07:55 +00:00
Vítor Santos Costa
fdf06f486d replace if-then-else optimisation by the new mechanism. 2008-12-09 14:23:19 +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 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
Vitor Santos Costa
e62ae6be36 improve handling of local stack expansion. 2008-11-14 14:54:25 +00:00
Vítor Santos de Costa
7f365f7377 make GC happen when we have 1/4 of total memory free.
There was a problem of not having enough room to put 10% of the heap.
2008-10-24 10:35:53 +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
Vítor Santos de Costa
2cdcf87044 fix yxn instruction type. 2008-10-07 22:32:15 +01:00
Vitor Santos Costa
bcb6edfb8a include PtoAtomHashEntryAdjust to reduce casts 2008-09-18 17:59:16 +01:00
Vitor Santos Costa
02893cc83f Ricardo Rocha's code for user managed suspension.
changed code from absmi.c to tab.macros.h
2008-09-18 17:35:21 +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
f4100a8095 small update to instruction name 2008-09-12 14:09:29 +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
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
6063c019de generate rclause.h automaticallywq 2008-08-29 05:25:36 +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
ff12e2bdbf use inlines instead of macros;
add ENV_Parent function, to walk an environment chain
2008-08-28 04:37:18 +01:00
Vitor Santos Costa
b6409fc980 fix weird instruction with tabling and new optypes;
fix a stray ld.
2008-08-22 03:54:10 +01:00
Vítor Santos Costa
f499115573 redo lost updates 2008-08-21 13:38:25 +01:00
vsc
258796098e fix d optype
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2313 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-08-22 02:03:39 +00:00
vsc
27c1f89dca small change to c* optypes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2312 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-08-22 02:01:27 +00:00
vsc
d170b34624 MaxOS fixes
Avoid a thread deadlock
improvements to SWI predicates.
make variables_in_term system builtin.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2304 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-08-12 01:27:23 +00:00
vsc
5776abb31c more thread fixes.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2301 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-08-08 14:05:34 +00:00
vsc
2581c3a3bf more threadin fixes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2300 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-08-07 20:51:23 +00:00
vsc
85d7d39dbf more thread fixes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2297 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-08-06 17:32:22 +00:00
vsc
e1866e2917 improve C-interface and SWI comptaibility a bit.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2292 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-07-24 16:02:04 +00:00
vsc
75c72d7b7d SWI and module fixes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2290 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-07-22 23:34:50 +00:00
vsc
dc53522604 small fixes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2289 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-07-16 10:58:59 +00:00
vsc
d8e5f2c895 fixes by Bart and Tom: mostly libraries but nasty one in indexing
compilation.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2286 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-07-11 17:02:10 +00:00
vsc
82d9ed1521 upgrade to 5.1.4
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2282 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-06-18 10:02:27 +00:00
vsc
39c4a2e67f fix c_interface not to crash when people try to recover slots that are
not there.
fix try_logical and friends to handle case where predicate has arity 0.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2278 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-06-17 13:37:51 +00:00
vsc
175a0ba6dd make sure we do trim_trail whenever we mess with B!
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2258 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-06-04 14:47:18 +00:00
vsc
ade7b34d49 thread fixes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2251 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-05-28 17:18:35 +00:00
vsc
7c24afa0f2 handle SIGPIPE and improve USR1 and USR2
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2242 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-05-23 10:02:13 +00:00
vsc
316811d2cd user:goal_expand should be called before import
add extra apply_macros and apply stuff; fix unexisting definitions.
add forall/2 and ignore/1 to system stuff.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2237 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-05-15 13:41:48 +00:00