22 , bb_only_(bb_only) {}
35 enum Lattice :
u8 { Dead, Prop, Keep };
36 enum :
u32 { Varxy, Appxy };
Optimistically performs β-reduction (aka inlining).
Performs η-expansion: f -> λx.f x, if f is a Lam with more than one user and does not appear in calle...
FPPass(PassMan &man, std::string_view name)
This is a thin wrapper for absl::InlinedVector<T, N, A> which is a drop-in replacement for std::vecto...
CopyProp(PassMan &man, BetaRed *beta_red, EtaExp *eta_exp, bool bb_only=false)
const Def * rewrite(const Def *) override
undo_t analyze(const Proxy *) override
GIDMap< Lam *, To > LamMap