Sebastian Ullrich
2110da4784
chore(tests/bench/speedcenter.exec.yaml): fix deriv speedcenter benchmark
2019-09-03 21:43:50 +02:00
Sebastian Ullrich
7b7f1d2cac
test(tests/bench): add benchmarks as regular ctests with lowered inputs
2019-09-02 10:52:24 +02:00
Sebastian Ullrich
94b3de0130
chore(tests/bench): parameterize all benchmarks
2019-08-29 18:38:39 +02:00
Leonardo de Moura
4ac235212a
fix(runtime/lean): incorrect assertion
2019-08-28 15:50:11 -03:00
Leonardo de Moura
dc82c5cc70
chore(runtime/object): fix compilation error in debug mode on OSX
2019-08-28 15:43:21 -03:00
Leonardo de Moura
f40617d8dd
feat(CMakeLists, runtime): add CHECK_RC_OVERFLOW cmake option
2019-08-28 15:35:46 -03:00
Leonardo de Moura
a944d158a3
feat(CMakeLists.txt): add SMALL_RC cmake option
...
When used with `COMPRESSED_OBJECT_HEADER`, Lean uses a compressed
object header where only 32-bits are reserved for the RC.
The motivation is performance, in our experiments, it is faster to
access a 32-bit counter than a 45-bit one.
With a smaller RC, we can use 8-bits for the memory kind information,
and speedup its access.
2019-08-28 14:54:08 -03:00
Sebastian Ullrich
dbdae550ea
chore(*.nix): pin nixpkgs version, use clang/llvm 8, reorganize
2019-08-28 13:04:59 +02:00
Sebastian Ullrich
572926f5ce
perf(shell/CMakeLists.txt, tests/): define NDEBUG in leanc release builds
...
`assert` is now being used by the C runtime
2019-08-27 16:54:29 +02:00
Leonardo de Moura
cb1680e096
chore(runtime/object): use same idiom we used at del_core
2019-08-24 12:02:09 -07:00
Leonardo de Moura
2bde205a20
chore(CMakeLists): enable COMPRESSED_OBJECT_HEADER
2019-08-24 11:58:38 -07:00
Leonardo de Moura
88e44d9fdd
fix(runtime/compact): memory leak
2019-08-24 11:21:19 -07:00
Leonardo de Moura
9d09325d1e
fix(runtime): ensure we can disable LEAN_SMALL_ALLOCATOR
2019-08-24 11:18:07 -07:00
Leonardo de Moura
8f4684df32
chore(CMakeLists): temporarily disable COMPRESSED_OBJECT_HEADER
2019-08-24 11:06:20 -07:00
Leonardo de Moura
2d103caa76
perf(runtime/lean): use the low level hack we used in the previous runtime
2019-08-24 11:05:28 -07:00
Leonardo de Moura
86c2c32810
fix(runtime/object): memory leak
2019-08-24 10:24:39 -07:00
Leonardo de Moura
fb4e2daf74
fix(runtime/object): debug build
2019-08-24 09:51:37 -07:00
Leonardo de Moura
79d4addabd
chore(runtime): fix style
2019-08-24 09:33:09 -07:00
Leonardo de Moura
720c3ca3e4
fix(runtime): size_t issue OSX vs Linux
2019-08-24 09:30:12 -07:00
Leonardo de Moura
dfbc500947
fix(runtime/mpz): (try to) fix Linux build again
2019-08-24 08:13:48 -07:00
Leonardo de Moura
84de479a4c
fix(runtime/int64): compilation issue on Linux
2019-08-24 07:58:22 -07:00
Leonardo de Moura
b6decd70f0
chore(stage0): update
2019-08-24 07:40:57 -07:00
Leonardo de Moura
3e48a0cc2b
feat(library/Makefile.in): generate ".c" files
2019-08-24 07:40:56 -07:00
Leonardo de Moura
dc4ad7db38
feat(bin/leanc): use C compiler when input does not contain ".cpp"
2019-08-24 07:40:56 -07:00
Leonardo de Moura
358f8c5483
fix(runtime/lean): missing "static"
2019-08-24 07:40:56 -07:00
Leonardo de Moura
140708fe8d
chore(runtime): style
2019-08-24 07:40:56 -07:00
Leonardo de Moura
597562e5dd
fix(tests/compiler/lazylist): extern cpp ==> extern c
2019-08-24 07:40:56 -07:00
Leonardo de Moura
f697381410
feat(shell/lean.cpp): use C backend for --cpp option
2019-08-24 07:40:56 -07:00
Leonardo de Moura
88a4320117
chore(stage0): update
2019-08-24 07:40:56 -07:00
Leonardo de Moura
6afded1104
chore(library/Makefile): use C backend
2019-08-24 07:40:55 -07:00
Leonardo de Moura
09d8dd536c
fix(library/init/lean/compiler/ir/emitc): invisible unicode character
2019-08-24 07:40:55 -07:00
Leonardo de Moura
db83a52748
chore(library/init/lean/compiler/ir/emitc): cleanup
2019-08-24 07:40:55 -07:00
Leonardo de Moura
70f3537a29
feat(runtime): add lean_panic and variants
2019-08-24 07:40:39 -07:00
Leonardo de Moura
acc243b484
chore(stage0): update
2019-08-24 07:40:39 -07:00
Leonardo de Moura
5124ab07c0
feat(library/init/lean/compiler/ir/emitcpp): use extern "C" { in generated files
2019-08-24 07:40:38 -07:00
Leonardo de Moura
b66034305a
chore(stage0): update
2019-08-24 07:40:38 -07:00
Leonardo de Moura
128acd3b47
chore(library/init): remove @[extern cpp ...]
2019-08-24 07:40:38 -07:00
Leonardo de Moura
b020ca3259
feat(library/init/lean/compiler/ir/emitcpp): allow C++ backend to use @[extern c ...] when @[extern cpp ...] is missing
2019-08-24 07:40:38 -07:00
Leonardo de Moura
41a4eaacd3
fix(runtime, library/init/lean/compiler/ir/emitc): missing export, ensure we can compile with C++ compiler
2019-08-24 07:40:38 -07:00
Leonardo de Moura
cee0264363
feat(CMakeLists.txt): add "COMPRESSED_OBJECT_HEADER" cmake option
2019-08-24 07:40:38 -07:00
Leonardo de Moura
e7c8e66986
fix(runtime/object): remove incorrect assertions
...
They are not true when LEAN_COMPRESSED_OBJECT_HEADER is defined.
2019-08-24 07:40:38 -07:00
Leonardo de Moura
6553c5531c
fix(runtime): bugs at compact.cpp and object size calculation
2019-08-24 07:40:38 -07:00
Leonardo de Moura
1ba481fad5
chore(runtime/compact): minor
2019-08-24 07:40:38 -07:00
Leonardo de Moura
79f4eeea62
fix(runtime/lean): incorrect assertion
2019-08-24 07:40:38 -07:00
Leonardo de Moura
124c5da414
fix(runtime): disable compressed headers and fix bugs
2019-08-24 07:40:38 -07:00
Leonardo de Moura
3b762d4dc0
refactor(runtime): C backend
2019-08-24 07:40:38 -07:00
Leonardo de Moura
694800ce4f
chore(util): remove dead code
2019-08-24 07:40:38 -07:00
Leonardo de Moura
dcd15f3424
refactor(runtime): C backend
2019-08-24 07:40:38 -07:00
Sebastian Ullrich
cf18cda557
chore(library/Makefile.in): make sure failures from lean --deps are propagated
2019-08-23 17:24:35 +02:00
Leonardo de Moura
94c69fff2b
feat(runtime/alloc): auxiliary functions for new runtime
2019-08-21 10:44:40 -07:00