From: Josh Bleecher Snyder Date: Sun, 19 Apr 2020 22:34:32 +0000 (-0700) Subject: cmd/compile: use dereference boundedness hint during ssa conversion X-Git-Tag: go1.15beta1~494 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=e8518731be26f92f4f94c383b5cd7e02b47fcdb1;p=gostls13.git cmd/compile: use dereference boundedness hint during ssa conversion This has a minor positive effect on generated code, particularly code using type switches. Change-Id: I7269769ab0d861ef6fc9e6d7809ffc3573c68340 Reviewed-on: https://go-review.googlesource.com/c/go/+/228885 Run-TryBot: Josh Bleecher Snyder TryBot-Result: Gobot Gobot Reviewed-by: Matthew Dempsky --- diff --git a/src/cmd/compile/internal/gc/ssa.go b/src/cmd/compile/internal/gc/ssa.go index 4829c5f5fc..40e2f52467 100644 --- a/src/cmd/compile/internal/gc/ssa.go +++ b/src/cmd/compile/internal/gc/ssa.go @@ -2549,7 +2549,7 @@ func (s *state) expr(n *Node) *ssa.Value { return s.load(n.Type, addr) case ODEREF: - p := s.exprPtr(n.Left, false, n.Pos) + p := s.exprPtr(n.Left, n.Bounded(), n.Pos) return s.load(n.Type, p) case ODOT: @@ -2574,7 +2574,7 @@ func (s *state) expr(n *Node) *ssa.Value { return s.newValue1I(ssa.OpStructSelect, n.Type, int64(fieldIdx(n)), v) case ODOTPTR: - p := s.exprPtr(n.Left, false, n.Pos) + p := s.exprPtr(n.Left, n.Bounded(), n.Pos) p = s.newValue1I(ssa.OpOffPtr, types.NewPtr(n.Type), n.Xoffset, p) return s.load(n.Type, p)