aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/compile/internal/ssa/gen
diff options
context:
space:
mode:
authorCherry Zhang <cherryyz@google.com>2021-03-17 19:15:38 -0400
committerCherry Zhang <cherryyz@google.com>2021-03-19 23:21:21 +0000
commit6ae3b70ef255cd7317764a12b7230f293683f2c5 (patch)
treeba2d6362e17980c0123f9e1b37c3c3a54e4d4214 /src/cmd/compile/internal/ssa/gen
parent9f2a71b6e7b418182dd0467e7d054ccf8130c026 (diff)
downloadgo-6ae3b70ef255cd7317764a12b7230f293683f2c5.tar.gz
go-6ae3b70ef255cd7317764a12b7230f293683f2c5.zip
cmd/compile: add clobberdeadreg mode
When -clobberdeadreg flag is set, the compiler inserts code that clobbers integer registers at call sites. This may be helpful for debugging register ABI. Only implemented on AMD64 for now. Change-Id: Ia203d3f891c30fd95d0103489056fe01d63a2899 Reviewed-on: https://go-review.googlesource.com/c/go/+/302809 Trust: Cherry Zhang <cherryyz@google.com> Run-TryBot: Cherry Zhang <cherryyz@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: David Chase <drchase@google.com>
Diffstat (limited to 'src/cmd/compile/internal/ssa/gen')
-rw-r--r--src/cmd/compile/internal/ssa/gen/genericOps.go1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/cmd/compile/internal/ssa/gen/genericOps.go b/src/cmd/compile/internal/ssa/gen/genericOps.go
index 85c58ef74c..c38d22e07f 100644
--- a/src/cmd/compile/internal/ssa/gen/genericOps.go
+++ b/src/cmd/compile/internal/ssa/gen/genericOps.go
@@ -613,6 +613,7 @@ var genericOps = []opData{
// Clobber experiment op
{name: "Clobber", argLength: 0, typ: "Void", aux: "SymOff", symEffect: "None"}, // write an invalid pointer value to the given pointer slot of a stack variable
+ {name: "ClobberReg", argLength: 0, typ: "Void"}, // clobber a register
}
// kind controls successors implicit exit