[dev.ssa] cmd/compile: handle boolean values for SSA on ARM

Fix hardcoded flag register mask in ssa/flagalloc.go by auto-generating
the mask.

Also fix a mistake (in previous CL) about conditional branches.

Progress on SSA backend for ARM. Still not complete. Now "container/ring"
package compiles and tests passed.

Updates #15365.

Change-Id: Id7c8805c30dbb8107baedb485ed0f71f59ed6ea8
Reviewed-on: https://go-review.googlesource.com/23093
Reviewed-by: Keith Randall <khr@golang.org>
This commit is contained in:
Cherry Zhang 2016-05-13 11:25:07 -04:00
parent e2848de9ef
commit ccaed50c7b
11 changed files with 616 additions and 49 deletions

View file

@ -985,7 +985,7 @@ func (s *regAllocState) regalloc(f *Func) {
args = append(args[:0], v.Args...)
for _, i := range regspec.inputs {
mask := i.regs
if mask == flagRegMask {
if mask == f.Config.flagRegMask {
// TODO: remove flag input from regspec.inputs.
continue
}