]> Cypherpunks repositories - gostls13.git/commit
cmd/compile: add more ARM64 optimizations
authorCherry Zhang <cherryyz@google.com>
Tue, 16 Aug 2016 18:17:33 +0000 (14:17 -0400)
committerCherry Zhang <cherryyz@google.com>
Wed, 17 Aug 2016 18:44:39 +0000 (18:44 +0000)
commit659dd4f1d7ed4e040d32346fa18c4ae3311ed81a
treef44a438c07f51f7df7157dd0644bb5fc39038b09
parentcda633b39b1353d23965337fb3118a3fc532a0c1
cmd/compile: add more ARM64 optimizations

- Use machine instructions for uint64<->float conversions
- Do not enforce alignment on Zero/Move
ARM64 supports unaligned load/stores, but only aligned offset
or small offset can be encoded into instructions.
- Do combined loads

Change-Id: Iffca7dd0f13070b17b784861ce5a30af584680eb
Reviewed-on: https://go-review.googlesource.com/27086
Reviewed-by: David Chase <drchase@google.com>
src/cmd/compile/internal/arm64/prog.go
src/cmd/compile/internal/arm64/ssa.go
src/cmd/compile/internal/gc/ssa.go
src/cmd/compile/internal/ssa/gen/ARM64.rules
src/cmd/compile/internal/ssa/gen/ARM64Ops.go
src/cmd/compile/internal/ssa/gen/genericOps.go
src/cmd/compile/internal/ssa/opGen.go
src/cmd/compile/internal/ssa/rewrite.go
src/cmd/compile/internal/ssa/rewriteARM64.go
src/cmd/internal/obj/arm64/asm7.go