24 lines
523 B
Java
24 lines
523 B
Java
package midend.optimize;
|
|
|
|
import java.util.ArrayList;
|
|
|
|
import midend.llvm.IrModule;
|
|
|
|
public class Optimize {
|
|
private ArrayList<Optimizer> optimizers;
|
|
|
|
public Optimize(IrModule module) {
|
|
Optimizer.setIrModule(module);
|
|
optimizers = new ArrayList<>();
|
|
optimizers.add(new CfgMake());
|
|
optimizers.add(new MemToReg());
|
|
optimizers.add(new CfgMake());
|
|
}
|
|
|
|
public void run() {
|
|
for (Optimizer optimizer : optimizers) {
|
|
optimizer.optimize();
|
|
}
|
|
}
|
|
}
|