Commit graph

316 commits

Author SHA1 Message Date
Leonardo de Moura
48578c9743 chore: remove hacks 2020-01-08 21:09:17 -08:00
Leonardo de Moura
981e35b6da chore: style 2020-01-08 21:09:17 -08:00
Leonardo de Moura
4550e75dcb chore: temporary hack for solving staging issue 2020-01-08 21:09:17 -08:00
Leonardo de Moura
01c5b0710c feat: pointer equality for IO.ref 2020-01-08 21:09:17 -08:00
Sebastian Ullrich
f171404530 fix: "superficial" leaks to shut up lsan 2019-12-22 17:23:51 -08:00
Sebastian Ullrich
3b37737c8a fix: leaks 2019-12-22 15:09:19 -08:00
Leonardo de Moura
74f48414f1 feat: add option --exitOnPanic (short version -e)
Lean does not exit on panic anymore.
The old behavior (`std::exit(1)`) produces a horrible debugging
experience for the elaborator since all trace messages are lost.
The new command line option restores the old behavior.

cc @Kha @dselsam
2019-12-19 09:24:37 -08:00
Leonardo de Moura
54e5ca0c7b fix: lean_nat_abs
It must not assume a nonnegative big integer is a big nat.
2019-12-14 08:08:41 -08:00
Sebastian Ullrich
ae3b3bb825 chore: remove cygwin support 2019-11-12 08:28:58 -08:00
Sebastian Ullrich
d8bb4df96f chore: revert "chore: add std::cout.flush"
This reverts commit a43a225013.
2019-11-06 10:13:39 -08:00
Leonardo de Moura
00af75accf chore: style
fix nonsense
2019-10-29 14:50:22 -07:00
Leonardo de Moura
4b7b95cd76 fix: missing file
LEAN_SMALL_ALLOCATOR is defined at `config.h`
2019-10-29 14:48:02 -07:00
Sebastian Ullrich
a1f352b4b1 fix: undefined pointer arithmetic in apply 2019-10-29 13:43:50 -07:00
Sebastian Ullrich
90b91760aa fix: SMALL_ALLOCATOR=OFF 2019-10-29 13:41:16 -07:00
Leonardo de Moura
a43a225013 chore: add std::cout.flush
cc @kha
2019-10-29 11:07:22 -07:00
Sebastian Ullrich
58dd7346e4 fix: build with SMALL_ALLOCATOR=OFF 2019-10-29 17:07:42 +01:00
Leonardo de Moura
745367a4ed fix: remove irrelevant arguments 2019-10-23 16:51:09 -07:00
Leonardo de Moura
30571f12d4 chore: adjust runtime to new EState 2019-10-21 17:05:16 -07:00
Leonardo de Moura
5902ef30d6 refactor: prepare to change EState 2019-10-21 16:51:48 -07:00
Leonardo de Moura
10760d3eb2 chore: try (to fix) Windows build 2019-10-06 18:55:32 -07:00
Leonardo de Moura
afc5352360 chore: fix style 2019-10-04 21:16:37 -07:00
Leonardo de Moura
a4c7e597a8 chore: (try to) fix Windows build 2019-10-04 20:52:54 -07:00
Leonardo de Moura
411f397654 refactor(library/init/data/list): new name convention for List functions
cc @dselsam @kha
2019-10-01 15:15:02 -07:00
Leonardo de Moura
3d7a7c7e91 feat(library/init/util): add panic primitive 2019-09-30 16:23:18 -07:00
Leonardo de Moura
a4b860b92a fix(runtime): missing Array.data primitive 2019-09-19 10:27:10 -07:00
Leonardo de Moura
a7d616605a fix(runtime/lean): missing primitive 2019-09-19 09:54:03 -07:00
Sebastian Ullrich
8da203b91a perf(compiler/ir_interpreter): do not allocate temp closure for saturated partial applications 2019-09-12 18:26:15 +02:00
Sebastian Ullrich
99bc069fdd feat(library/compiler/ir_interpreter): implement IR interpreter 2019-09-12 18:22:02 +02:00
Sebastian Ullrich
4aa4a4d5f1 chore(runtime/object,util/object_ref): missing assertions 2019-09-12 18:22:02 +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
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
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
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
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
70f3537a29 feat(runtime): add lean_panic and variants 2019-08-24 07:40:39 -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