]> Cypherpunks repositories - gostls13.git/commit
cmd/compile: optimize unsafe.Slice generated code
authorKeith Randall <khr@golang.org>
Wed, 27 Jul 2022 16:56:38 +0000 (09:56 -0700)
committerKeith Randall <khr@golang.org>
Mon, 8 Aug 2022 17:36:47 +0000 (17:36 +0000)
commitc2a9c55823b1ed14f84d8ce8880dbda3f5b01eb0
tree5d235511ab25de69ede9114dc3144c47a7d505b0
parentebf182c82de21858a1a167cc8d252ae85de806a7
cmd/compile: optimize unsafe.Slice generated code

We don't need a multiply when the element type is size 0 or 1.

The panic functions don't return, so we don't need any post-call
code (register restores, etc.).

Change-Id: I0dcea5df56d29d7be26554ddca966b3903c672e5
Reviewed-on: https://go-review.googlesource.com/c/go/+/419754
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Cuong Manh Le <cuong.manhle.vn@gmail.com>
Run-TryBot: Keith Randall <khr@golang.org>
Reviewed-by: Keith Randall <khr@google.com>
Reviewed-by: Than McIntosh <thanm@google.com>
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
src/cmd/compile/internal/ssa/gen/generic.rules
src/cmd/compile/internal/ssa/rewritegeneric.go
src/cmd/compile/internal/ssagen/ssa.go
test/codegen/slices.go