]> Cypherpunks repositories - gostls13.git/commitdiff
[dev.ssa] cmd/compile: implement OSPTR
authorJosh Bleecher Snyder <josharian@gmail.com>
Wed, 12 Aug 2015 17:12:14 +0000 (10:12 -0700)
committerJosh Bleecher Snyder <josharian@gmail.com>
Wed, 12 Aug 2015 20:56:48 +0000 (20:56 +0000)
Change-Id: Iaa40f14a1e3e4393af3c446953ffc315e79a3762
Reviewed-on: https://go-review.googlesource.com/13581
Reviewed-by: Keith Randall <khr@golang.org>
src/cmd/compile/internal/gc/ssa.go

index 81f9c8f6ced592711a871b520df2ca50fa282f1e..2a1c184803bf1d9607deab1b8cb9a7e87dd6c536 100644 (file)
@@ -1268,6 +1268,14 @@ func (s *state) expr(n *Node) *ssa.Value {
                        return s.constInt(Types[TINT], n.Left.Type.Bound)
                }
 
+       case OSPTR:
+               a := s.expr(n.Left)
+               if n.Left.Type.IsSlice() {
+                       return s.newValue1(ssa.OpSlicePtr, n.Type, a)
+               } else {
+                       return s.newValue1(ssa.OpStringPtr, n.Type, a)
+               }
+
        case OITAB:
                a := s.expr(n.Left)
                return s.newValue1(ssa.OpITab, n.Type, a)