Henrik Böving
|
23e49eb519
|
perf: add prelude to all Lean modules
|
2024-02-18 14:55:17 -08:00 |
|
Henrik Böving
|
36f0acfc51
|
feat: add timing profiling to the new compiler
|
2023-04-18 12:20:27 +02:00 |
|
Leonardo de Moura
|
2e8150e50d
|
chore: port Check.lean
|
2022-11-07 16:18:36 -08:00 |
|
Leonardo de Moura
|
01791b0c19
|
chore: port ToLCNF
|
2022-11-07 16:18:36 -08:00 |
|
Mario Carneiro
|
dd5948d641
|
chore: snake-case attributes (part 1)
|
2022-10-19 09:28:08 -07:00 |
|
Leonardo de Moura
|
31f2acd97a
|
chore: cleanup trace messages
|
2022-10-13 18:56:17 -07:00 |
|
Leonardo de Moura
|
9feb4d8ab7
|
fix: do not generate code for [extern] functions
|
2022-10-09 15:35:29 -07:00 |
|
Leonardo de Moura
|
9996686690
|
feat: display mono phase code
|
2022-10-06 07:48:59 -07:00 |
|
Leonardo de Moura
|
a0894dedbb
|
feat: add phaseOut field to Pass
We need it for passes that move the code from one phase to another.
See `toMono` pass.
cc @hargoniX
|
2022-10-06 03:29:21 -07:00 |
|
Sebastian Ullrich
|
8ed831101e
|
chore: benchmark new compiler
|
2022-10-04 05:03:54 -07:00 |
|
Leonardo de Moura
|
f0be5439e6
|
feat: JpCases for join points with multiple parameters
|
2022-10-03 18:35:16 -07:00 |
|
Leonardo de Moura
|
bb1e94de82
|
feat: normalize free variable ids before saving LCNF code in the environment
|
2022-09-29 12:48:21 -07:00 |
|
Leonardo de Moura
|
fd5f3a5bad
|
feat: track recursively inlining
closes #1657
see #1646
https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/inline.20codegen.20crash/near/301099703
|
2022-09-27 16:26:49 -07:00 |
|
Leonardo de Moura
|
236885e72e
|
chore: remove Stage1
|
2022-09-25 13:17:50 -07:00 |
|
Leonardo de Moura
|
c858aa3088
|
feat: replace getStage1Decl? with new getDecl?
|
2022-09-24 15:00:19 -07:00 |
|
Leonardo de Moura
|
2be8cb93ac
|
feat: store phase at CompilerM context
|
2022-09-23 16:30:51 -07:00 |
|
Leonardo de Moura
|
e4f0f4b794
|
fix: shouldGenerateCode fix for axiom
|
2022-09-23 14:25:48 -07:00 |
|
Leonardo de Moura
|
8cf225e9ce
|
fix: PassInstaller staging issue
The builtin pass installer cannot be installed using `[cpass]` because
it will not be activated until we process `Passes.lean`
|
2022-09-23 08:17:58 -07:00 |
|
Leonardo de Moura
|
917f87fee4
|
fix: forward declaration type
|
2022-09-21 18:40:38 -07:00 |
|
Leonardo de Moura
|
05f0a6c423
|
fix: skip declarations that do not have a value
|
2022-09-21 18:40:20 -07:00 |
|
Leonardo de Moura
|
a5abe864f3
|
chore: prepare to activate new code generator
|
2022-09-21 18:09:19 -07:00 |
|
Leonardo de Moura
|
c52203ff57
|
feat: add baseExt environment extension for storing code generator results
|
2022-09-21 18:09:19 -07:00 |
|
Leonardo de Moura
|
a5ac950b54
|
chore: increase max recursion depth for compiler
|
2022-09-20 16:58:45 -07:00 |
|
Henrik Böving
|
c6db1099d0
|
feat: add occurences and phases to PassManager
|
2022-09-10 14:58:49 -07:00 |
|
Leonardo de Moura
|
ea3235c551
|
fix: skip casesOn recursors at code generation
|
2022-09-07 18:46:48 -07:00 |
|
Leonardo de Moura
|
fde8d35bbb
|
refactor: declare passes when declaring transformations
|
2022-09-05 06:58:32 -07:00 |
|
Henrik Böving
|
32157f0e42
|
feat: Basic compiler testing framework
|
2022-09-03 19:55:53 -07:00 |
|
Leonardo de Moura
|
29eddad325
|
chore: only check if compiler.check is set to true
|
2022-09-01 07:18:47 -07:00 |
|
Leonardo de Moura
|
c201133d4d
|
feat: LCNF local context dead variable checker
This commit also fixes a few local declaration leaks.
|
2022-08-31 21:07:21 -07:00 |
|
Henrik Böving
|
c1949e05e0
|
feat: migrate to new pass manager
|
2022-08-31 16:28:07 -07:00 |
|
Henrik Böving
|
fe63bd2e8e
|
feat: basic pass manager
|
2022-08-31 16:28:07 -07:00 |
|
Leonardo de Moura
|
14944aeb3c
|
chore: print decl size at trace message
|
2022-08-25 18:11:49 -07:00 |
|
Leonardo de Moura
|
4c9c2d2bf7
|
feat: new CSE.lean
|
2022-08-25 18:08:22 -07:00 |
|
Leonardo de Moura
|
98575b4250
|
feat: new PullLetDecls.lean
|
2022-08-25 13:39:15 -07:00 |
|
Leonardo de Moura
|
3a2758a59b
|
refactor: new LCNF frontend
|
2022-08-24 11:40:37 -07:00 |
|