lang: Add unification optimizations
This adds a unification optimizations API, and uses it to optimize the embedded provisioner. With these turned on, type unification drops from around 1m45s to 2.5s which is a 40x speedup.
This commit is contained in:
@@ -268,6 +268,10 @@ func (obj *GAPI) Cli(info *gapi.Info) (*gapi.Deploy, error) {
|
||||
if name := args.UnifySolver; name != nil && *name != "" {
|
||||
unificationStrategy[unification.StrategyNameKey] = *name
|
||||
}
|
||||
if len(args.UnifyOptimizations) > 0 {
|
||||
// TODO: use a query string parser instead?
|
||||
unificationStrategy[unification.StrategyOptimizationsKey] = strings.Join(args.UnifyOptimizations, ",")
|
||||
}
|
||||
|
||||
if !args.SkipUnify {
|
||||
// apply type unification
|
||||
|
||||
Reference in New Issue
Block a user