-
- Downloads
[release-branch.go1.8] cmd/compile: fix s390x unsigned comparison constant merging rules
On s390x unsigned integer comparisons with immediates require the immediate to be an unsigned 32-bit integer. The rule was checking that the immediate was a signed 32-bit integer. This CL also adds a test for comparisons that could be turned into compare with immediate or equivalent instructions (depending on architecture and optimizations applied). Cherry-pick of CL 40433 and CL 40873. Fixes #19940. Reviewed-on: https://go-review.googlesource.com/40931 Reviewed-by:Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Change-Id: I3daaeaa40d7637bd4421e6b8d37ea4ffd74448ce Reviewed-on: https://go-review.googlesource.com/43994 Reviewed-by:
Brad Fitzpatrick <bradfitz@golang.org>
Showing
- src/cmd/compile/internal/gc/ssa_test.go 3 additions, 0 deletionssrc/cmd/compile/internal/gc/ssa_test.go
- src/cmd/compile/internal/gc/testdata/cmpConst.go 2217 additions, 0 deletionssrc/cmd/compile/internal/gc/testdata/cmpConst.go
- src/cmd/compile/internal/gc/testdata/gen/cmpConstGen.go 248 additions, 0 deletionssrc/cmd/compile/internal/gc/testdata/gen/cmpConstGen.go
- src/cmd/compile/internal/ssa/gen/S390X.rules 2 additions, 2 deletionssrc/cmd/compile/internal/ssa/gen/S390X.rules
- src/cmd/compile/internal/ssa/rewriteS390X.go 4 additions, 4 deletionssrc/cmd/compile/internal/ssa/rewriteS390X.go
Loading
Please register or sign in to comment