]> Cypherpunks repositories - gostls13.git/commit
cmd/compile/internal/ssa: combine more const stores
authorIlya Tocar <ilya.tocar@intel.com>
Wed, 16 Aug 2017 19:01:48 +0000 (14:01 -0500)
committerIlya Tocar <ilya.tocar@intel.com>
Thu, 17 Aug 2017 17:40:40 +0000 (17:40 +0000)
commitda34ddf24b4ed9b495143f58c6c5ded918ce4d16
treecc7384d4df5c49ebf3a2bc873e44ea1172d0df9d
parentb5dab2b9d9ef44eee709e4b6704fee1092afcdd5
cmd/compile/internal/ssa: combine more const stores

We already combine const stores up-to MOVQstoreconst.
Combine 2 64-bit stores of const zero into 1 sse store of 128-bit zero.

Shaves significant (>1%) amount of code from go tool:
/localdisk/itocar/golang/bin/go 10334877
go_old 10388125 [53248 bytes]

global text (code) = 51041 bytes (1.343944%)
read-only data = 663 bytes (0.039617%)
Total difference 51704 bytes (0.873981%)

Change-Id: I7bc40968023c3a69f379b10fbb433cdb11364f1b
Reviewed-on: https://go-review.googlesource.com/56250
Run-TryBot: Ilya Tocar <ilya.tocar@intel.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Giovanni Bajo <rasky@develer.com>
Reviewed-by: Keith Randall <khr@golang.org>
src/cmd/compile/internal/gc/asm_test.go
src/cmd/compile/internal/ssa/gen/AMD64.rules
src/cmd/compile/internal/ssa/rewriteAMD64.go