]> Cypherpunks repositories - gostls13.git/commit
[dev.ssa] cmd/compile: Do pointer arithmetic with int, not uintptr
authorKeith Randall <khr@golang.org>
Tue, 3 Nov 2015 05:28:13 +0000 (21:28 -0800)
committerKeith Randall <khr@golang.org>
Tue, 3 Nov 2015 17:28:12 +0000 (17:28 +0000)
commit582baae22a108e0b5f09da52c20f5ced83fe6084
tree0006b7f689758a05ad7bfce20a93b77b43f9e4f2
parent991873116e316f334f41343bb9bbd97720b0ee29
[dev.ssa] cmd/compile: Do pointer arithmetic with int, not uintptr

Be more consistent about this.  There's no reason to do the
pointer arithmetic on a different type, as sizeof(int) >=
sizeof(ptr) on all of our platforms.  It simplifies our
rewrite rules also, except for a few that need duplication.

Add some more constant folding to get constant indexing and
slicing to fold down to nothing.

Change-Id: I3e56cdb14b3dc1a6a0514f0333e883f92c19e3c7
Reviewed-on: https://go-review.googlesource.com/16586
Run-TryBot: Keith Randall <khr@golang.org>
Reviewed-by: David Chase <drchase@google.com>
src/cmd/compile/internal/gc/ssa.go
src/cmd/compile/internal/ssa/func.go
src/cmd/compile/internal/ssa/gen/AMD64.rules
src/cmd/compile/internal/ssa/gen/generic.rules
src/cmd/compile/internal/ssa/gen/genericOps.go
src/cmd/compile/internal/ssa/nilcheck_test.go
src/cmd/compile/internal/ssa/opGen.go
src/cmd/compile/internal/ssa/rewrite.go
src/cmd/compile/internal/ssa/rewriteAMD64.go
src/cmd/compile/internal/ssa/rewritegeneric.go