kr.angelov
|
2927c8b7e1
|
fix in GNU lightning to enable the compilation of two of the the floating point operations.
|
2014-12-01 09:42:21 +00:00 |
|
kr.angelov
|
2e765fbfe1
|
fix in linearizer.h to make jpgf compilable
|
2014-12-01 09:41:48 +00:00 |
|
kr.angelov
|
0b2a81ad4d
|
fix in linearizer.h which resolves a warning
|
2014-11-27 15:20:46 +00:00 |
|
kr.angelov
|
80cf34bfd1
|
remove pgf/parser.h
|
2014-11-27 11:12:14 +00:00 |
|
kr.angelov
|
d830c75da2
|
fix the handling of the heuristic factor. it was broken when I added the BIND token which means that the App grammar was running about 2-3 times slower.
|
2014-11-26 15:56:36 +00:00 |
|
kr.angelov
|
057d830133
|
expand the JIT window for x64
|
2014-11-07 15:43:12 +00:00 |
|
kr.angelov
|
1cfb975229
|
a skeletal module for higher-order pattern unification in the C runtime
|
2014-10-31 19:57:56 +00:00 |
|
kr.angelov
|
2bde418b15
|
now (+) in the abstract syntax works, i.e. it knows how to deal with partial sums
|
2014-10-31 14:16:11 +00:00 |
|
kr.angelov
|
4db6e30b54
|
a more efficient tail call by using the new TUCK instruction
|
2014-10-30 13:09:50 +00:00 |
|
kr.angelov
|
77d3775385
|
an explicit SAVE instruction
|
2014-10-26 11:40:12 +00:00 |
|
kr.angelov
|
b4046e1797
|
a simple optimization in cmp_item_prob with great effect on the parser's speed
|
2014-10-23 21:22:22 +00:00 |
|
kr.angelov
|
f421dd4c68
|
fix the debug mode in the reasoner
|
2014-10-23 08:15:12 +00:00 |
|
kr.angelov
|
3a95d733dd
|
CAPIT is now naturally supported in the C runtime
|
2014-10-22 15:05:55 +00:00 |
|
kr.angelov
|
0da379f97b
|
an explicit PUSH_FRAME instruction
|
2014-10-22 14:11:41 +00:00 |
|
kr.angelov
|
70bf9f78b1
|
the C runtime now supports reading and writing expressions with indexed meta variables. The type checker generates fresh indices
|
2014-10-17 09:27:37 +00:00 |
|
kr.angelov
|
fd8e4d3dd7
|
bugfix in the parser for abstract expressions in the C runtime
|
2014-10-16 11:40:47 +00:00 |
|
kr.angelov
|
76a448e26f
|
finally proper stack unwind in the evaluator
|
2014-10-16 10:00:32 +00:00 |
|
kr.angelov
|
6aa0fd2590
|
the compiler now allows + to be used as a floating point addition in the abstract syntax
|
2014-10-14 11:15:18 +00:00 |
|
kr.angelov
|
e8b81c145b
|
bugfix in the bytecode generator
|
2014-10-14 09:27:24 +00:00 |
|
kr.angelov
|
0e91de3b5f
|
simplify jit_bare_ret
|
2014-10-14 09:09:26 +00:00 |
|
kr.angelov
|
4efb2d5a22
|
Prelude.CAPIT is now a built-in primitive. It still generates &| in the Haskell runtime but will be intepreted in the C runtime
|
2014-10-09 19:34:12 +00:00 |
|
kr.angelov
|
57f7b61c6b
|
throw away the long obsolete runtime type information in the C runtime
|
2014-10-09 13:44:26 +00:00 |
|
kr.angelov
|
58e1eb33fc
|
fix for lightning for ARM
|
2014-10-09 13:17:01 +00:00 |
|
kr.angelov
|
4ac5902fc9
|
replace the hash maps in the abstract syntax with binary search tables
|
2014-10-09 08:38:55 +00:00 |
|
kr.angelov
|
23642fbb90
|
now we statically allocate closures for all top-level functions and all nullary constructors. closures are dynamically allocated only for CAFs. this reduces memory use and time to allocate dynamic closures
|
2014-10-08 12:57:29 +00:00 |
|
kr.angelov
|
e9a871db7f
|
a missing case in instruction SET
|
2014-10-07 20:05:05 +00:00 |
|
kr.angelov
|
e7404c8f7a
|
added a missing case for PUSH instruction with a global closure
|
2014-10-07 11:46:38 +00:00 |
|
kr.angelov
|
9e493031b2
|
the indirection should be done in the evaluate_expr_thunk gate instead of in the pgf_evaluate_expr_thunk function. this ensures lazyness
|
2014-10-07 07:12:40 +00:00 |
|
kr.angelov
|
8d09f62efc
|
using instruction RET was wrong; now use EVAL
|
2014-10-06 15:57:42 +00:00 |
|
kr.angelov
|
2bc0734b6e
|
fix the order in which arguments are stored in the mk_const gate
|
2014-10-06 12:31:39 +00:00 |
|
kr.angelov
|
f5041fa67b
|
push a stack frame around recursive calls to guarantee that a nested call to a failing function will not crash
|
2014-10-06 09:21:08 +00:00 |
|
kr.angelov
|
b07a2652d8
|
partial implementation for the FAIL instruction
|
2014-10-06 09:04:25 +00:00 |
|
kr.angelov
|
dee64838f4
|
bugfix in pgf_evaluate_expr_thunk
|
2014-09-30 17:34:29 +00:00 |
|
kr.angelov
|
0bdd599972
|
fix pgf_value2expr for partial applications
|
2014-09-30 13:46:46 +00:00 |
|
kr.angelov
|
8801915523
|
enough fixes to get the JIT compiler compile for ARM. It is still broken if you try to use it
|
2014-09-30 12:39:31 +00:00 |
|
kr.angelov
|
ceb5b7bbf3
|
fix in reader.h for compiling jpgf.c
|
2014-09-30 11:25:27 +00:00 |
|
kr.angelov
|
cdac80b6b2
|
fix in pgf_print_expr for lambda abstractions with more than one argument
|
2014-09-30 09:42:18 +00:00 |
|
kr.angelov
|
9fd8d5d019
|
bugfix in the gate evaluate_value_lambda
|
2014-09-30 08:42:06 +00:00 |
|
kr.angelov
|
698329f469
|
bugfix in the pattern matching compiler and a number of other fixes that I somehow did not push before
|
2014-09-29 15:00:04 +00:00 |
|
kr.angelov
|
0d08417efe
|
bugfix in the RET instruction
|
2014-09-29 13:04:49 +00:00 |
|
kr.angelov
|
1d7e976560
|
enlarge the code window in pgf_jit_gates to ensure enough space on 64-bit machines
|
2014-09-29 07:34:32 +00:00 |
|
kr.angelov
|
3064fc737e
|
switch off the debugging of the JIT compiler which I had turned on accidentally. silence two harmless warnings
|
2014-09-25 11:44:45 +00:00 |
|
kr.angelov
|
25e8e4ce5a
|
now a complete JIT compiler and ByteCode compiler for the def rules in the abstract syntax. there might be some bugs yet to be found, meta variables and computation under lambda is only partially supported
|
2014-09-25 10:35:06 +00:00 |
|
kr.angelov
|
e308f384de
|
dummy jit_base_tail_finishr for x86_64.
|
2014-09-16 12:29:35 +00:00 |
|
kr.angelov
|
923ad6b3c0
|
a major revision of the bytecode generator and JIT compiler. the effect is that now we can compute with lambda functions and with true tail recursion
|
2014-09-11 15:39:39 +00:00 |
|
kr.angelov
|
d7dc541f74
|
the code for def rules now uses proper graph update to preserve lazyness
|
2014-09-05 11:53:02 +00:00 |
|
kr.angelov
|
5e5ad8f2db
|
full support for recursive def rules in the C runtime
|
2014-09-05 10:09:43 +00:00 |
|
kr.angelov
|
442dadf100
|
partial implementation for recursive def rules
|
2014-09-01 14:51:20 +00:00 |
|
kr.angelov
|
9adf01a91e
|
bug fixes in the JIT compiler
|
2014-09-01 12:53:14 +00:00 |
|
kr.angelov
|
9bc507f1d6
|
added evaluator.h which I had forgoten
|
2014-08-29 08:36:53 +00:00 |
|