Better optimization pipeline

This commit is contained in:
James Miller 2013-06-02 00:08:38 +12:00
parent e516d2333f
commit 6e075b6bb6

View File

@ -70,9 +70,12 @@ pub fn create_standard_passes(level:OptLevel) -> ~[~str] {
passes.push(~"targetlibinfo");
passes.push(~"tbaa");
passes.push(~"scev-aa");
passes.push(~"basicaa");
passes.push(~"instcombine");
passes.push(~"simplifycfg");
passes.push(~"scalarrepl-ssa");
passes.push(~"early-cse");
passes.push(~"globalopt");
@ -83,10 +86,6 @@ pub fn create_standard_passes(level:OptLevel) -> ~[~str] {
passes.push(~"prune-eh");
if level == Aggressive {
passes.push(~"mergefunc");
}
passes.push(~"inline");
passes.push(~"functionattrs");
@ -95,6 +94,7 @@ pub fn create_standard_passes(level:OptLevel) -> ~[~str] {
passes.push(~"argpromotion");
}
passes.push(~"scalarrepl-ssa");
passes.push(~"early-cse");
passes.push(~"simplify-libcalls");
passes.push(~"jump-threading");
@ -134,11 +134,6 @@ pub fn create_standard_passes(level:OptLevel) -> ~[~str] {
passes.push(~"correlated-propagation");
passes.push(~"dse");
passes.push(~"instcombine");
passes.push(~"early-cse");
passes.push(~"loop-unroll");
passes.push(~"adce");
passes.push(~"simplifycfg");
passes.push(~"instsimplify");