aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRob Pike <r@golang.org>2015-06-21 18:02:44 -0700
committerRob Pike <r@golang.org>2015-06-22 06:57:19 +0000
commit71859efceb21a3f8098716ad8cf0964571be7bc5 (patch)
tree2ecc30e612a40ac7745084605cd234ea5a30a152 /src
parent626188dd314c26746ad5525721875ac72ee49c9e (diff)
downloadgo-71859efceb21a3f8098716ad8cf0964571be7bc5.tar.xz
cmd/asm: remove needless check for negative right shift
In the parser, the shift value is always a uint64. Change-Id: I9b50295a9f7d174ed1f6f9baf78ec0ed43db417f Reviewed-on: https://go-review.googlesource.com/11322 Reviewed-by: Andrew Gerrand <adg@golang.org>
Diffstat (limited to 'src')
-rw-r--r--src/cmd/asm/internal/asm/parse.go6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/cmd/asm/internal/asm/parse.go b/src/cmd/asm/internal/asm/parse.go
index 7f956cb2a8..d7b5250913 100644
--- a/src/cmd/asm/internal/asm/parse.go
+++ b/src/cmd/asm/internal/asm/parse.go
@@ -812,10 +812,8 @@ func (p *Parser) term() uint64 {
case lex.RSH:
p.next()
shift := p.term()
- if shift < 0 {
- p.errorf("negative right shift %d", shift)
- }
- if shift > 0 && value&(1<<63) != 0 {
+ // shift is a uint, so can never be negative.
+ if value&(1<<63) != 0 {
p.errorf("right shift with high bit set")
}
value >>= uint(shift)