mirror of
https://github.com/golang/go
synced 2024-10-05 18:21:21 -06:00
[dev.ssa] cmd/compile: implement OIMAG and OREAL
Change-Id: I17c83f6552367d42d48c1ec62fbb494f010fd866 Reviewed-on: https://go-review.googlesource.com/14343 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> Reviewed-by: David Chase <drchase@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
This commit is contained in:
parent
1792b36310
commit
fa5fe19137
@ -823,6 +823,11 @@ var opToSSA = map[opAndType]ssa.Op{
|
||||
opAndType{OCOM, TINT64}: ssa.OpCom64,
|
||||
opAndType{OCOM, TUINT64}: ssa.OpCom64,
|
||||
|
||||
opAndType{OIMAG, TCOMPLEX64}: ssa.OpComplexImag,
|
||||
opAndType{OIMAG, TCOMPLEX128}: ssa.OpComplexImag,
|
||||
opAndType{OREAL, TCOMPLEX64}: ssa.OpComplexReal,
|
||||
opAndType{OREAL, TCOMPLEX128}: ssa.OpComplexReal,
|
||||
|
||||
opAndType{OMUL, TINT8}: ssa.OpMul8,
|
||||
opAndType{OMUL, TUINT8}: ssa.OpMul8,
|
||||
opAndType{OMUL, TINT16}: ssa.OpMul16,
|
||||
@ -1612,7 +1617,7 @@ func (s *state) expr(n *Node) *ssa.Value {
|
||||
s.newValue1(negop, tp, s.newValue1(ssa.OpComplexImag, tp, a)))
|
||||
}
|
||||
return s.newValue1(s.ssaOp(n.Op, n.Type), a.Type, a)
|
||||
case ONOT, OCOM:
|
||||
case ONOT, OCOM, OIMAG, OREAL:
|
||||
a := s.expr(n.Left)
|
||||
return s.newValue1(s.ssaOp(n.Op, n.Type), a.Type, a)
|
||||
case OPLUS:
|
||||
|
Loading…
Reference in New Issue
Block a user