]> Cypherpunks repositories - gostls13.git/commit
cmd/compile: shift tests, fix triple-shift rules
authorKeith Randall <khr@golang.org>
Sun, 29 May 2016 04:15:24 +0000 (21:15 -0700)
committerKeith Randall <khr@golang.org>
Sun, 29 May 2016 20:36:21 +0000 (20:36 +0000)
commit17396575135ba71472ab8a5b82f31af50d8bf312
tree7f7433cbd6b65c4ee967737929cbc34e5331236d
parent79f7ccf2c3931745aeb97c5c985b6ac7b44befb4
cmd/compile: shift tests, fix triple-shift rules

Add a bunch of tests for shifts.

Fix triple-shift rules to always take constant shifts as 64 bits.
(Earlier rules always promote shift amounts to 64 bits.)
Add overflow checks.

Increases generic rule coverage to 91%

Change-Id: I6b42d368d19d36ac482dbb8e0d4f67e30ad7145d
Reviewed-on: https://go-review.googlesource.com/23555
Reviewed-by: Todd Neal <todd@tneal.org>
src/cmd/compile/internal/gc/shift_test.go [new file with mode: 0644]
src/cmd/compile/internal/ssa/gen/generic.rules
src/cmd/compile/internal/ssa/rewritegeneric.go