Skip to content

Commit 8ec8017

Browse files
Alexandru Moșoibrtzsnr
Alexandru Moșoi
authored andcommitted
cmd/compile: move decompose builtin closer to late opt
* Shaves about 10k from pkg/tools/linux_amd64. * Was suggested by drchase before * Found by looking at ssa output of #14758 Change-Id: If2c4ddf3b2603d4dfd8fb4d9199b9a3dcb05b17d Reviewed-on: https://go-review.googlesource.com/20570 Reviewed-by: David Chase <[email protected]> Run-TryBot: Alexandru Moșoi <[email protected]> TryBot-Result: Gobot Gobot <[email protected]>
1 parent fdc0422 commit 8ec8017

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

src/cmd/compile/internal/ssa/compile.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -174,14 +174,14 @@ var passes = [...]pass{
174174
{name: "early deadcode", fn: deadcode}, // remove generated dead code to avoid doing pointless work during opt
175175
{name: "short circuit", fn: shortcircuit},
176176
{name: "decompose user", fn: decomposeUser, required: true},
177-
{name: "decompose builtin", fn: decomposeBuiltIn, required: true},
178177
{name: "opt", fn: opt, required: true}, // TODO: split required rules and optimizing rules
179178
{name: "zero arg cse", fn: zcse, required: true}, // required to merge OpSB values
180179
{name: "opt deadcode", fn: deadcode}, // remove any blocks orphaned during opt
181180
{name: "generic cse", fn: cse},
182181
{name: "phiopt", fn: phiopt},
183182
{name: "nilcheckelim", fn: nilcheckelim},
184183
{name: "prove", fn: prove},
184+
{name: "decompose builtin", fn: decomposeBuiltIn, required: true},
185185
{name: "dec", fn: dec, required: true},
186186
{name: "late opt", fn: opt}, // TODO: split required rules and optimizing rules
187187
{name: "generic deadcode", fn: deadcode},
@@ -234,7 +234,7 @@ var passOrder = [...]constraint{
234234
{"generic deadcode", "tighten"},
235235
{"generic cse", "tighten"},
236236
// don't run optimization pass until we've decomposed builtin objects
237-
{"decompose builtin", "opt"},
237+
{"decompose builtin", "late opt"},
238238
// don't layout blocks until critical edges have been removed
239239
{"critical", "layout"},
240240
// regalloc requires the removal of all critical edges

0 commit comments

Comments
 (0)