diff --git a/src/cmd/compile/internal/gc/ssa.go b/src/cmd/compile/internal/gc/ssa.go
index 557564d..afba7db 100644
--- a/src/cmd/compile/internal/gc/ssa.go
+++ b/src/cmd/compile/internal/gc/ssa.go
@@ -1953,7 +1953,7 @@
 		for !data.Type.IsPtr() {
 			switch {
 			case data.Type.IsArray():
-				data = s.newValue1I(ssa.OpArrayIndex, data.Type.Elem(), 0, data)
+				data = s.newValue1I(ssa.OpArrayIndex, data.Type.ElemType(), 0, data)
 			case data.Type.IsStruct():
 				for i := data.Type.NumFields() - 1; i >= 0; i-- {
 					f := data.Type.FieldType(i)
diff --git a/src/cmd/compile/internal/gc/type.go b/src/cmd/compile/internal/gc/type.go
index 8ba625d..ec06407 100644
--- a/src/cmd/compile/internal/gc/type.go
+++ b/src/cmd/compile/internal/gc/type.go
@@ -584,8 +584,12 @@
 	return t.Etype == TINTER
 }
 
-func (t *Type) Elem() ssa.Type {
-	return t.Type
+func (t *Type) ElemType() ssa.Type {
+	switch t.Etype {
+	case TARRAY, TPTR32, TPTR64:
+		return t.Type
+	}
+	panic(fmt.Sprintf("ElemType on invalid type %v", t))
 }
 func (t *Type) PtrTo() ssa.Type {
 	return Ptrto(t)
