-
- Downloads
cmd/compile: move flagalloc op splitting to rewrite rules
Flagalloc has the unenviable task of splitting flag-generating ops that have been merged with loads when the flags need to "spilled" (i.e. regenerated). Since there weren't very many of them, there was a hard-coded list of ops and bespoke code written to split them. This change migrates load splitting into rewrite rules, to make them easier to maintain. Change-Id: I7750eafb888a802206c410f9c341b3133e7748b8 Reviewed-on: https://go-review.googlesource.com/c/go/+/166978 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by:Keith Randall <khr@golang.org>
Showing
- src/cmd/compile/internal/ssa/config.go 4 additions, 0 deletionssrc/cmd/compile/internal/ssa/config.go
- src/cmd/compile/internal/ssa/flagalloc.go 1 addition, 82 deletionssrc/cmd/compile/internal/ssa/flagalloc.go
- src/cmd/compile/internal/ssa/gen/386splitload.rules 9 additions, 0 deletionssrc/cmd/compile/internal/ssa/gen/386splitload.rules
- src/cmd/compile/internal/ssa/gen/AMD64splitload.rules 16 additions, 0 deletionssrc/cmd/compile/internal/ssa/gen/AMD64splitload.rules
- src/cmd/compile/internal/ssa/gen/main.go 1 addition, 0 deletionssrc/cmd/compile/internal/ssa/gen/main.go
- src/cmd/compile/internal/ssa/gen/rulegen.go 18 additions, 10 deletionssrc/cmd/compile/internal/ssa/gen/rulegen.go
- src/cmd/compile/internal/ssa/op.go 12 additions, 0 deletionssrc/cmd/compile/internal/ssa/op.go
- src/cmd/compile/internal/ssa/rewrite386splitload.go 198 additions, 0 deletionssrc/cmd/compile/internal/ssa/rewrite386splitload.go
- src/cmd/compile/internal/ssa/rewriteAMD64splitload.go 253 additions, 0 deletionssrc/cmd/compile/internal/ssa/rewriteAMD64splitload.go
- src/cmd/dist/buildtool.go 1 addition, 0 deletionssrc/cmd/dist/buildtool.go
Loading
Please register or sign in to comment