[dev.ssa] cmd/compile: implement reserved registers
BP for framepointer experiment
R15 for dynamic linking
Change-Id: I28e48be461d04a4d5c9b013f48fce5c0e58d6a08
Reviewed-on: https://go-review.googlesource.com/16231
Run-TryBot: Todd Neal <todd@tneal.org>
Reviewed-by: Todd Neal <todd@tneal.org>
diff --git a/src/cmd/compile/internal/gc/ssa.go b/src/cmd/compile/internal/gc/ssa.go
index 918d71c..64391b0 100644
--- a/src/cmd/compile/internal/gc/ssa.go
+++ b/src/cmd/compile/internal/gc/ssa.go
@@ -41,7 +41,7 @@
var e ssaExport
e.log = usessa
- s.config = ssa.NewConfig(Thearch.Thestring, &e)
+ s.config = ssa.NewConfig(Thearch.Thestring, &e, Ctxt)
s.f = s.config.NewFunc()
s.f.Name = name
s.exitCode = fn.Func.Exit
@@ -239,7 +239,7 @@
// symbols for PEXTERN, PAUTO and PPARAMOUT variables so they can be reused.
varsyms map[*Node]interface{}
- // starting values. Memory, frame pointer, and stack pointer
+ // starting values. Memory, stack pointer, and globals pointer
startmem *ssa.Value
sp *ssa.Value
sb *ssa.Value
@@ -4367,7 +4367,7 @@
return n
}
-func (e ssaExport) CanSSA(t ssa.Type) bool {
+func (e *ssaExport) CanSSA(t ssa.Type) bool {
return canSSAType(t.(*Type))
}