From e8518731be26f92f4f94c383b5cd7e02b47fcdb1 Mon Sep 17 00:00:00 2001 From: Josh Bleecher Snyder Date: Sun, 19 Apr 2020 15:34:32 -0700 Subject: [PATCH] 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 --- src/cmd/compile/internal/gc/ssa.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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) -- 2.50.0