Commit graph

19538 commits

Author SHA1 Message Date
Leonardo de Moura
dfa392fa17 feat: add generalizeIndices
Helper tactic for `cases`
2020-03-04 16:27:01 -08:00
Leonardo de Moura
21ca370961 feat: add cases tactic skeleton 2020-03-02 17:55:56 -08:00
Leonardo de Moura
eca569f237 chore: use NonScalar 2020-03-02 17:55:33 -08:00
Leonardo de Moura
f607e9c478 chore: update stage0 2020-03-02 08:42:07 -08:00
Leonardo de Moura
0893b62598 perf: avoid unnecessary overhead at HashSet
List instead of AssocList saves one word per entry.
2020-03-02 08:40:15 -08:00
Leonardo de Moura
641cf90cc9 feat: add StateM.subsingleton 2020-03-02 08:37:55 -08:00
Leonardo de Moura
58ddeedced feat: add List.replace 2020-03-02 08:30:20 -08:00
Leonardo de Moura
88dc110260 feat: add Squash 2020-03-02 08:30:05 -08:00
Leonardo de Moura
b379bca28b chore: rename PtrEqResult.yes ==> PtrEqResult.yesEqual 2020-03-02 08:29:49 -08:00
Leonardo de Moura
0f8b59eed7 fix: typo Prop => Type 2020-02-29 11:22:17 -08:00
Leonardo de Moura
684554e979 feat: add PtrEqResult 2020-02-29 11:00:50 -08:00
Leonardo de Moura
94cfcbbefe chore: withPtrEqSubsingleton ==> withPtrEqResult 2020-02-29 10:12:06 -08:00
Leonardo de Moura
d511ddfa9e feat: add SemiDeciable and withPtrEqSubsingleton 2020-02-29 09:50:31 -08:00
Leonardo de Moura
796fff26d2 fix: check_optarg 2020-02-29 07:25:30 -08:00
Leonardo de Moura
1dc9f9a7d8 chore: remove old names 2020-02-28 10:53:42 -08:00
Leonardo de Moura
0f5e81f6b9 chore: update stage0 2020-02-28 10:53:41 -08:00
Leonardo de Moura
a799bcd76a chore: rename test 2020-02-28 10:53:41 -08:00
Leonardo de Moura
090b1e664d feat: rename maxSharing => shareCommon 2020-02-28 10:53:41 -08:00
Leonardo de Moura
07fff9fd92 chore: update stage0 2020-02-28 10:53:41 -08:00
Leonardo de Moura
4a05a2568a chore: add new primitive names 2020-02-28 10:53:41 -08:00
Leonardo de Moura
1f8bfa0c11 chore: rename maxsharing.cpp => sharecommon.cpp 2020-02-28 10:53:41 -08:00
Sebastian Ullrich
25cdfa8c37 chore: lower const_fold inputs again to prevent stack overflow in sanitized build 2020-02-28 13:23:39 +01:00
Sebastian Ullrich
84b53a316c chore: cumulative interpreter benchmark 2020-02-28 10:51:23 +01:00
Sebastian Ullrich
e2facc3507 chore: adjust "small" bench/ inputs to be reasonable for interpreter
The "big" benchmarking inputs are stored in speedcenter.exec.yaml
2020-02-28 10:04:13 +01:00
Sebastian Ullrich
80603a256d chore: fix benchmark once more
Github Actions' `sh` doesn't seem to like `echo -e`
2020-02-28 09:28:41 +01:00
Leonardo de Moura
bd1a37c57e chore: update stage0 2020-02-27 17:06:11 -08:00
Leonardo de Moura
fc409648eb chore: update stage0 2020-02-27 17:00:57 -08:00
Leonardo de Moura
271b753f30 feat: optimization for Bool+Decidable code 2020-02-27 16:59:18 -08:00
Leonardo de Moura
cca90b5f9f chore: simplify withPtrEqDecEq 2020-02-27 11:45:02 -08:00
Leonardo de Moura
af142a5b0d chore: update stage0 2020-02-27 10:59:47 -08:00
Leonardo de Moura
b83691baa2 feat: compute fvarSubst 2020-02-27 10:58:46 -08:00
Sebastian Ullrich
6a19f54344 chore: fix benchmark... 2020-02-27 19:55:15 +01:00
Leonardo de Moura
d6e46a38f5 chore: fix test 2020-02-27 10:02:27 -08:00
Leonardo de Moura
3836899b1e chore: update stage0 2020-02-27 10:02:27 -08:00
Leonardo de Moura
021d906542 fix: remove filler fields (part 2) 2020-02-27 10:02:26 -08:00
Leonardo de Moura
8d63b4eda0 chore: update stage0 2020-02-27 10:02:26 -08:00
Leonardo de Moura
966e5bc60d perf: remove "filler" fields
See previous commit.
2020-02-27 10:02:26 -08:00
Leonardo de Moura
e5d824a748 feat: initialize last word
Motivation: trying to get rid of explicit "filler" fields because
they slow down modules such as `RBMap`.
2020-02-27 10:02:26 -08:00
Sebastian Ullrich
79a352a0b7 chore: benchmark binary sizes 2020-02-27 18:17:25 +01:00
Leonardo de Moura
0fe465b1b8 chore: fix test 2020-02-27 08:15:49 -08:00
Leonardo de Moura
14e8a0ec9e chore: update stage0 2020-02-27 08:11:16 -08:00
Leonardo de Moura
2719eaeb63 fix: closes #119 2020-02-27 08:10:29 -08:00
Leonardo de Moura
2a16468f69 chore: fix test 2020-02-26 07:29:04 -08:00
Leonardo de Moura
657f3792b1 feat: maxsharing scalar arrays 2020-02-25 18:08:49 -08:00
Leonardo de Moura
131f2d202e chore: ignore closures at maxsharing
Closures may capture huge objects that user may be unaware.
For example, any closure created by the interpreter contains
a reference to the `Environment`.

@dselsam @kha I don't see many applications for maximizing sharing in
values captured by closures. If we want this feature, we should at
least wrap the `Environment` and `Decl` using external objects
at `mk_stub_closure` at `ir_interpreter.cpp`.
2020-02-25 17:13:05 -08:00
Leonardo de Moura
1653e75b6b feat: maxsharing for arrays and strings 2020-02-25 16:15:26 -08:00
Leonardo de Moura
46e8d193ca feat: maxsharing for constructors 2020-02-25 15:43:10 -08:00
Leonardo de Moura
d099599b19 chore: update stage0 2020-02-25 14:35:57 -08:00
Leonardo de Moura
9107849a82 chore: fix tests 2020-02-25 14:35:20 -08:00
Leonardo de Moura
53b57af125 fix: dangling file 2020-02-25 14:33:54 -08:00