Commit graph

11581 commits

Author SHA1 Message Date
Leonardo de Moura
4181f35546 chore(stage0): update 2019-08-04 09:30:52 -07:00
Leonardo de Moura
8a8b45b6e0 chore(stage0): update 2019-08-04 08:41:19 -07:00
Leonardo de Moura
1ef23950a4 chore(library/init/lean/expr): expose temporary legacy constructor 2019-08-04 08:03:09 -07:00
Leonardo de Moura
41d8cd9eb9 chore(kernel/expr): remove depth and weight fields
These fields were rarely used, but they were used in the hash code
calculation. So, we may see a negative performance impact.
There is also a positive performance impact since `Expr` consumes less
memory, and it is faster to allocate them.
2019-08-03 11:05:01 -07:00
Leonardo de Moura
7f142ac7e3 chore(kernel/expr): hide get_weight and get_depth 2019-08-03 10:57:30 -07:00
Leonardo de Moura
d2f169a211 chore(library/init/lean/parser/parser): remove unnecessary unsafe code 2019-08-02 14:32:47 -07:00
Leonardo de Moura
1be9ee97be chore(stage0): update 2019-08-02 14:26:22 -07:00
Leonardo de Moura
9e53db95ba chore(CMakeLists): set default to OFF
@joehendrix I changed the default to `LLVM=OFF` for now to avoid
disrupting existing projects. It will become `LLVM=ON` after we have
tested it more, and have the JIT integrated.

@kha Could you please set a new Azure pipeline job for `LLVM=ON`?
2019-08-01 10:15:43 -07:00
Joe Hendrix
a113832342 chore(CMakeLists): Typo 2019-07-31 18:21:49 -07:00
Joe Hendrix
37ff241467 feat(CMakeLists): Add option to link in LLVM.
This updates cmake and Lean to link against the LLVM libraries.
2019-07-31 18:21:49 -07:00
Leonardo de Moura
1016309d1f feat(library/init/lean/path): always add builtin search path
We also add "." (i.e., current directory) if `LEAN_PATH` is not defined.
Users may still override stdlib since we add the builtin search path in the end.

@dselsam You should now be able to compile your project without setting `LEAN_PATH`

cc @kha
2019-07-31 18:13:17 -07:00
Leonardo de Moura
b221b09ad5 chore(library/init, frontends/lean): ensure old and new parser use the same command for initializing quotient module 2019-07-31 17:07:05 -07:00
Leonardo de Moura
b0c84874ba chore(runtime/compact): add additional comments 2019-07-30 17:58:15 -07:00
Sebastian Ullrich
55104ad0c6 chore(library/compiler/csimp): remove wrong assertion 2019-07-30 17:52:43 -07:00
Sebastian Ullrich
2c12f9d0f6 chore(runtime/object): LEAN_FAKE_FREE: assert on double-free 2019-07-30 17:52:43 -07:00
Sebastian Ullrich
d09c512784 chore(library/module): lsan: ignore module objects 2019-07-30 17:52:43 -07:00
Sebastian Ullrich
20b6502aaf fix(runtime/compact): badly aligned "field" in terminator 2019-07-30 17:52:43 -07:00
Leonardo de Moura
2f5b2b2409 feat(library/init/lean/path): add realPathNormalized 2019-07-28 20:52:41 -07:00
Leonardo de Moura
4b10f09baf chore(stage0): update 2019-07-28 20:13:01 -07:00
Leonardo de Moura
6cf8571e37 feat(library/init/system/platform): add System.Platform.isOSX 2019-07-28 19:49:40 -07:00
Leonardo de Moura
17e5f0b719 chore(stage0): update 2019-07-28 09:54:57 -07:00
Leonardo de Moura
fb14110b22 fix(library/compiler/llnf): sort scalar fields by size to avoid UB 2019-07-28 09:53:53 -07:00
Leonardo de Moura
ff6b868440 chore(library/module): remove dead code 2019-07-27 19:03:07 -07:00
Leonardo de Moura
943f6cbd55 chore(library/module): use module_name_of_file in Lean 2019-07-27 18:59:54 -07:00
Leonardo de Moura
bc525d980e chore(shell/CMakeLists): fix test 2019-07-27 18:52:53 -07:00
Leonardo de Moura
fda2cd23ec chore(shell/lean): use find_lean_file in Lean 2019-07-27 18:38:27 -07:00
Leonardo de Moura
fe45476d91 chore(stage0): update 2019-07-27 18:23:53 -07:00
Leonardo de Moura
a336176017 feat(runtime/io): improve "file not found" error message 2019-07-27 09:45:38 -07:00
Leonardo de Moura
761149e029 chore(stage0): update 2019-07-26 17:59:22 -07:00
Leonardo de Moura
8a27a5e164 chore(stage0): update 2019-07-26 17:43:59 -07:00
Leonardo de Moura
dea1e52c96 feat(shell/lean): initialize searchPath implemented in Lean 2019-07-26 16:15:38 -07:00
Leonardo de Moura
e9fafd3c4b chore(library/init/lean/path,stage0): export initSearchPath and update 2019-07-26 16:06:19 -07:00
Sebastian Ullrich
7b18bc94fd fix(library/module): make sure header length preserves alignment 2019-07-26 12:39:35 -07:00
Sebastian Ullrich
d45cc4cb7b fix(kernel): manually align unboxed fields 2019-07-26 12:39:35 -07:00
Sebastian Ullrich
8fb004f917 fix(runtime/alloc): fix out-of-bounds pointer reported by ubsan 2019-07-26 12:39:35 -07:00
Sebastian Ullrich
aa30a8f273 fix(frontends/lean/elaborator): remove dubious error reporting code that makes Lean compiled with clang 8 segfault 2019-07-26 12:39:35 -07:00
Leonardo de Moura
a16df483fa fix(runtime/io): compilation error on windows 2019-07-26 10:09:55 -07:00
Leonardo de Moura
70b5e33766 chore(CMakeLists.txt): add link to cmake documentation 2019-07-26 08:10:46 -07:00
Sebastian Ullrich
e129a65948 fix(shell/CMakeLists): mark libleanstatic.a and libleanstdlib.a as cyclically dependent 2019-07-26 14:38:28 +02:00
Leonardo de Moura
798bbc0662 feat(library/init/system/io): new primitives 2019-07-25 18:12:44 -07:00
Sebastian Ullrich
53a26b94ff chore(util/lean_path): remove leanpkg.path support
Because Lean 4 will not compile dependencies by itself, there is not much of a
point in it resolving them by itself either. The build tool that ensures that
all dependencies have been built should call `lean` with the `LEAN_PATH`
environment variable set accordingly.
2019-07-25 17:46:40 -07:00
Leonardo de Moura
804c856282 chore(stage0): update 2019-07-25 17:39:40 -07:00
Leonardo de Moura
92a8b7028e chore(stage0): update 2019-07-25 17:30:47 -07:00
Leonardo de Moura
f6d3fc881d feat(library/init): add platform.cpp 2019-07-25 17:19:50 -07:00
Leonardo de Moura
02f516f09d feat(runtime/io): add primitives 2019-07-25 09:36:37 -07:00
Leonardo de Moura
77a59f4998 feat(library/init/io): add IO.getEnv 2019-07-25 08:31:23 -07:00
Leonardo de Moura
4f3b2eff0c chore(stage0): update 2019-07-24 13:31:23 -07:00
Leonardo de Moura
cf8daf4b24 feat(library/init/lean/elaborator): process header
TODO:
- improve/fix `setSearchPath`
- add `IO.getEnv`
- add support for relative imports at `absolutizeModuleName`
2019-07-24 07:37:33 -07:00
Leonardo de Moura
a7f18cff12 chore(stage0): update 2019-07-22 18:53:49 -07:00
Leonardo de Moura
2ad33a23db chore(runtime,library/init/lean): remove evalConst 2019-07-19 11:04:57 -07:00