]> Cypherpunks repositories - gostls13.git/commit
cmd/compile: ensure S390X moves don't overflow int32
authorKeith Randall <keithr@alum.mit.edu>
Wed, 28 Nov 2018 20:41:23 +0000 (12:41 -0800)
committerKeith Randall <khr@golang.org>
Wed, 28 Nov 2018 21:17:40 +0000 (21:17 +0000)
commit4f15b54780af7159732794f9d67c9a8a455bbf61
treee3c88b9d574194a09c74a89ad131fc18996b5dc1
parent96d41786c5bd5b3597b6a28a7e8c412c33f15086
cmd/compile: ensure S390X moves don't overflow int32

Break ADDconst into ADD + MOVDconst, so that if the constant
is too big it won't overflow ADDconst's constant field.

For normal sizes, other rules will recombine into an ADDconst.

Fixes S390X breakage from CL 33909.

Change-Id: Id804ee052365527efb580f797688b0ce83c47915
Reviewed-on: https://go-review.googlesource.com/c/151597
Run-TryBot: Keith Randall <khr@golang.org>
Reviewed-by: Michael Munday <mike.munday@ibm.com>
src/cmd/compile/internal/ssa/gen/S390X.rules
src/cmd/compile/internal/ssa/rewriteS390X.go