compiler: move Optimizer function to transform package

This refactor is a prerequisite to much larger refactors in the
compiler.
This commit is contained in:
Ayke van Laethem
2020-03-18 19:12:07 +01:00
committed by Ron Evans
parent 78bd7e094f
commit 9d3de55229
5 changed files with 252 additions and 239 deletions
+6 -6
View File
@@ -72,16 +72,16 @@ func Build(pkgName, outpath string, config *compileopts.Config, action func(stri
// exactly.
errs = nil
switch config.Options.Opt {
case "none:", "0":
errs = c.Optimize(0, 0, 0) // -O0
case "none", "0":
errs = transform.Optimize(c.Module(), config, 0, 0, 0) // -O0
case "1":
errs = c.Optimize(1, 0, 0) // -O1
errs = transform.Optimize(c.Module(), config, 1, 0, 0) // -O1
case "2":
errs = c.Optimize(2, 0, 225) // -O2
errs = transform.Optimize(c.Module(), config, 2, 0, 225) // -O2
case "s":
errs = c.Optimize(2, 1, 225) // -Os
errs = transform.Optimize(c.Module(), config, 2, 1, 225) // -Os
case "z":
errs = c.Optimize(2, 2, 5) // -Oz, default
errs = transform.Optimize(c.Module(), config, 2, 2, 5) // -Oz, default
default:
errs = []error{errors.New("unknown optimization level: -opt=" + config.Options.Opt)}
}