Commit graph

11 commits

Author SHA1 Message Date
Leonardo de Moura
1f8bfa0c11 chore: rename maxsharing.cpp => sharecommon.cpp 2020-02-28 10:53:41 -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
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
74d08e47e5 chore: style 2020-02-24 21:04:48 -08:00
Leonardo de Moura
dae1a3172e fix: maxsharing hash and eq, and expand skeleton 2020-02-24 21:00:01 -08:00
Leonardo de Moura
fdc76934f5 feat: max_sharing_fn skeleton 2020-02-24 19:50:37 -08:00
Leonardo de Moura
f84e1c2fbd feat: add dummy implementation of MaxSharing primitives 2020-02-24 19:30:53 -08:00
Leonardo de Moura
46fd5ed929 feat: maxSharing primitives 2020-02-24 19:23:45 -08:00