Expand description
Automatic filter generation.
This module stores a global filter-generation configuration of type FilterGen
. It stores the
parameters (if any) for an actual filter-generation strategy. The following functions allow to
interact with this global configuration: get
, set
, and set_from_cla
.
Filter Generation Strategies
Strategies are defined in sub-modules such as inactive
and alloc_site
. They typically
define a unit-struct (e.g. AllocSite
) implementing the FilterGenExt
trait which
defines a parameter type Params
among other things.
FilterGen
features a variant for each strategy that stores the parameters for the strategy,
so that it can run it when asked to. Note that strategies also define how they can be activated
and controlled by implementing FilterGenExt
.
NB: when creating a new filter generator, make sure you activate it by updating the
all_gens
private macro in this module. Overall, you should take inspiration fromalloc_site
when adding a new generator.
Filter generation also handles chart generation, which is is the chart_gen
module.
Modules
Allocation-site-file-based automatic filter generation.
Simple chart generators.
Filter generation strategy that generates nothing.
Parser for filter generator arguments.
Enums
Enumeration of the filter generation techniques.
Traits
Trait implemented by filter generation techniques.
Functions
Retrieves the active filter generator.
Sets the active filter generator.
Sets the active filter generator from a command-line argument.