]> Cypherpunks repositories - gostls13.git/commit
[dev.ssa] cmd/compile/internal/ssa: autogenerate opcodes
authorKeith Randall <khr@golang.org>
Sat, 6 Jun 2015 23:03:33 +0000 (16:03 -0700)
committerKeith Randall <khr@golang.org>
Mon, 8 Jun 2015 21:02:03 +0000 (21:02 +0000)
commit0dca7351e9d51bdaf980e1256ec41af8cb1b9747
tree82553209d0f920fa55e54bc6a066c96c749ea3df
parent6241a41e33fb1dcfb36f86b0578592219a36d443
[dev.ssa] cmd/compile/internal/ssa: autogenerate opcodes

Revamp autogeneration.  Get rid of gogenerate commands, they are more
trouble than they are worth.  (If the code won't compile, gogenerate
doesn't work.)

Generate opcode enums & tables.  This means we only have to specify
opcodes in one place instead of two.

Add arch prefixes to opcodes so they will be globally unique.

Change-Id: I175d0a89b701b2377bbe699f3756731b7c9f5a9f
Reviewed-on: https://go-review.googlesource.com/10812
Reviewed-by: Alan Donovan <adonovan@google.com>
23 files changed:
src/cmd/compile/internal/gc/ssa.go
src/cmd/compile/internal/ssa/block.go
src/cmd/compile/internal/ssa/blockkind_string.go [deleted file]
src/cmd/compile/internal/ssa/config.go
src/cmd/compile/internal/ssa/gen/AMD64.rules [moved from src/cmd/compile/internal/ssa/rulegen/lower_amd64.rules with 81% similarity]
src/cmd/compile/internal/ssa/gen/AMD64Ops.go [new file with mode: 0644]
src/cmd/compile/internal/ssa/gen/README [new file with mode: 0644]
src/cmd/compile/internal/ssa/gen/generic.rules [moved from src/cmd/compile/internal/ssa/rulegen/generic.rules with 95% similarity]
src/cmd/compile/internal/ssa/gen/genericOps.go [new file with mode: 0644]
src/cmd/compile/internal/ssa/gen/main.go [new file with mode: 0644]
src/cmd/compile/internal/ssa/gen/rulegen.go [moved from src/cmd/compile/internal/ssa/rulegen/rulegen.go with 81% similarity]
src/cmd/compile/internal/ssa/lower.go
src/cmd/compile/internal/ssa/lowergeneric.go [new file with mode: 0644]
src/cmd/compile/internal/ssa/op.go
src/cmd/compile/internal/ssa/opGen.go [new file with mode: 0644]
src/cmd/compile/internal/ssa/op_string.go [deleted file]
src/cmd/compile/internal/ssa/opamd64.go [deleted file]
src/cmd/compile/internal/ssa/opt.go
src/cmd/compile/internal/ssa/regalloc.go
src/cmd/compile/internal/ssa/rewriteAMD64.go [moved from src/cmd/compile/internal/ssa/lowerAmd64.go with 73% similarity]
src/cmd/compile/internal/ssa/rewritegeneric.go [new file with mode: 0644]
src/cmd/compile/internal/ssa/stackalloc.go
src/cmd/compile/internal/ssa/value.go