summaryrefslogtreecommitdiff
path: root/src/runtime/c
AgeCommit message (Collapse)Author
2014-10-24comment out a few assertions in bits.h. this code is run too often to have ↵kr.angelov
explicit assertions
2014-10-24make it possible to specify the initial size of a map in libgukr.angelov
2014-10-24simplify gu/mapkr.angelov
2014-10-24fix memory leak in the pgf-parse toolkr.angelov
2014-10-24add extern declarations for all inline functions in seq.h. this ensures that ↵kr.angelov
everything works even when the compiler's optimizations are off
2014-10-23a simple optimization in cmp_item_prob with great effect on the parser's speedkr.angelov
2014-10-23remove some deadcode in gu/seq.hkr.angelov
2014-10-23inline a number of functions in gu/seq.c. this has a noticeable effect on ↵kr.angelov
the parser's speed
2014-10-23a cosmetic optimization in mem.ckr.angelov
2014-10-23fix the debug mode in the reasonerkr.angelov
2014-10-23fix warning in ucs.ckr.angelov
2014-10-22CAPIT is now naturally supported in the C runtimekr.angelov
2014-10-22add Unicode classification routines to libgu. ported from the base package ↵kr.angelov
in Haskell.
2014-10-22an explicit PUSH_FRAME instructionkr.angelov
2014-10-20get rid of gu/str.(c|h)kr.angelov
2014-10-17the C runtime now supports reading and writing expressions with indexed meta ↵kr.angelov
variables. The type checker generates fresh indices
2014-10-16bugfix in the parser for abstract expressions in the C runtimekr.angelov
2014-10-16finally proper stack unwind in the evaluatorkr.angelov
2014-10-14the compiler now allows + to be used as a floating point addition in the ↵kr.angelov
abstract syntax
2014-10-14bugfix in the bytecode generatorkr.angelov
2014-10-14simplify jit_bare_retkr.angelov
2014-10-09Prelude.CAPIT is now a built-in primitive. It still generates &| in the ↵kr.angelov
Haskell runtime but will be intepreted in the C runtime
2014-10-09throw away the long obsolete runtime type information in the C runtimekr.angelov
2014-10-09fix two warnings in mem.ckr.angelov
2014-10-09fix in gu_mmap_pool for Androidkr.angelov
2014-10-09fix for lightning for ARMkr.angelov
2014-10-09remove the pgf-service util which is obsolete anywaykr.angelov
2014-10-09replace the hash maps in the abstract syntax with binary search tableskr.angelov
2014-10-09add the const modifier to the key in the two procedures for binary search in ↵kr.angelov
libgu
2014-10-08use MAP_FIXED in gu_mmap_poolkr.angelov
2014-10-08an experimental memory mapped pool. still not in usekr.angelov
2014-10-08now we statically allocate closures for all top-level functions and all ↵kr.angelov
nullary constructors. closures are dynamically allocated only for CAFs. this reduces memory use and time to allocate dynamic closures
2014-10-07a missing case in instruction SETkr.angelov
2014-10-07added a missing case for PUSH instruction with a global closurekr.angelov
2014-10-07the indirection should be done in the evaluate_expr_thunk gate instead of in ↵kr.angelov
the pgf_evaluate_expr_thunk function. this ensures lazyness
2014-10-06using instruction RET was wrong; now use EVALkr.angelov
2014-10-06fix the order in which arguments are stored in the mk_const gatekr.angelov
2014-10-06push a stack frame around recursive calls to guarantee that a nested call to ↵kr.angelov
a failing function will not crash
2014-10-06partial implementation for the FAIL instructionkr.angelov
2014-09-30bugfix in pgf_evaluate_expr_thunkkr.angelov
2014-09-30fix pgf_value2expr for partial applicationskr.angelov
2014-09-30enough fixes to get the JIT compiler compile for ARM. It is still broken if ↵kr.angelov
you try to use it
2014-09-30fix in reader.h for compiling jpgf.ckr.angelov
2014-09-30fix in pgf_print_expr for lambda abstractions with more than one argumentkr.angelov
2014-09-30bugfix in the gate evaluate_value_lambdakr.angelov
2014-09-29bugfix in the pattern matching compiler and a number of other fixes that I ↵kr.angelov
somehow did not push before
2014-09-29bugfix in the RET instructionkr.angelov
2014-09-29enlarge the code window in pgf_jit_gates to ensure enough space on 64-bit ↵kr.angelov
machines
2014-09-25switch off the debugging of the JIT compiler which I had turned on ↵kr.angelov
accidentally. silence two harmless warnings
2014-09-25now a complete JIT compiler and ByteCode compiler for the def rules in the ↵kr.angelov
abstract syntax. there might be some bugs yet to be found, meta variables and computation under lambda is only partially supported