mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
cmd/compile: use soft-float routines for soft-float targets
Updates #18162 (mostly fixes) Change-Id: I35bcb8a688bdaa432adb0ddbb73a2f7adda47b9e Reviewed-on: https://go-review.googlesource.com/37958 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Cherry Zhang <cherryyz@google.com>
This commit is contained in:
parent
f0f62fcc46
commit
6be1c09e19
11 changed files with 271 additions and 41 deletions
|
|
@ -344,6 +344,7 @@ var passes = [...]pass{
|
|||
{name: "prove", fn: prove},
|
||||
{name: "loopbce", fn: loopbce},
|
||||
{name: "decompose builtin", fn: decomposeBuiltIn, required: true},
|
||||
{name: "softfloat", fn: softfloat, required: true},
|
||||
{name: "late opt", fn: opt, required: true}, // TODO: split required rules and optimizing rules
|
||||
{name: "generic deadcode", fn: deadcode},
|
||||
{name: "check bce", fn: checkbce},
|
||||
|
|
@ -413,6 +414,8 @@ var passOrder = [...]constraint{
|
|||
{"generic deadcode", "check bce"},
|
||||
// don't run optimization pass until we've decomposed builtin objects
|
||||
{"decompose builtin", "late opt"},
|
||||
// decompose builtin is the last pass that may introduce new float ops, so run softfloat after it
|
||||
{"decompose builtin", "softfloat"},
|
||||
// don't layout blocks until critical edges have been removed
|
||||
{"critical", "layout"},
|
||||
// regalloc requires the removal of all critical edges
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue