[dev.ssa] cmd/compile/internal/ssa/gen: generate better code when right-shifting with a constant.
The lowering rules were missing the non-64 bit case. SBBLcarrymask can be folded to a int32 integer whose type has a smaller bit size. Without the new AND rules the following would be generated: v19 = MOVLconst <uint8> [-1] : SI v20 = ANDB <uint8> v18 v19 : DI which is obviously a NOP. Fixes #12022 Change-Id: I5f4209f78edc0f118e5b9b2908739f09cefebca4 Reviewed-on: https://go-review.googlesource.com/13301Reviewed-by: Keith Randall <khr@golang.org>
Showing
Please
register
or
sign in
to comment