This reverts CL 460656
Reason for revert: This breaks s390x.
Change-Id: I8fada14fabc90593b8033ed11188c04963d2da75
Reviewed-on: https://go-review.googlesource.com/c/go/+/463475
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
Reviewed-by: Cherry Mui <cherryyz@google.com>
Auto-Submit: Keith Randall <khr@golang.org>
Reviewed-by: Keith Randall <khr@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Run-TryBot: Keith Randall <khr@golang.org>
}
}
}
-
// Avoid future fixed uses if we can.
if m&^desired.avoid != 0 {
m &^= desired.avoid
// Save input 0 to a new register so we can clobber it.
c := s.allocValToReg(v.Args[0], m, true, v.Pos)
s.copies[c] = false
-
- // Normally we use the register of the old copy of input 0 as the target.
- // However, if input 0 is already in its desired register then we use
- // the register of the new copy instead.
- if rp, ok := s.f.getHome(args[0].ID).(*Register); ok {
- r := register(rp.num)
- for _, r2 := range dinfo[idx].in[0] {
- if r == r2 {
- args[0] = c
- break
- }
- }
- }
}
ok: