[dev.link] cmd/link: use new reloc pass on S390X

Change-Id: Ia51ca2c89f1d382813a27310211c1f8631afb125
Reviewed-on: https://go-review.googlesource.com/c/go/+/231919
Run-TryBot: Cherry Zhang <cherryyz@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Than McIntosh <thanm@google.com>
This commit is contained in:
Cherry Zhang 2020-04-29 22:22:33 -04:00
parent c89251204e
commit 0586fbb9d3
5 changed files with 41 additions and 47 deletions

View file

@ -246,7 +246,8 @@ type Arch struct {
// indicates a fatal error).
Archreloc func(target *Target, syms *ArchSyms, rel *sym.Reloc, sym *sym.Symbol,
offset int64) (relocatedOffset int64, success bool)
Archreloc2 func(*Target, *loader.Loader, *ArchSyms, loader.Reloc2, *loader.ExtReloc, loader.Sym, int64) (int64, bool, bool)
Archreloc2 func(*Target, *loader.Loader, *ArchSyms, loader.Reloc2, *loader.ExtReloc,
loader.Sym, int64) (relocatedOffset int64, needExtReloc bool, ok bool)
// Archrelocvariant is a second arch-specific hook used for
// relocation processing; it handles relocations where r.Type is
// insufficient to describe the relocation (r.Variant !=
@ -257,6 +258,8 @@ type Arch struct {
// offset value.
Archrelocvariant func(target *Target, syms *ArchSyms, rel *sym.Reloc, sym *sym.Symbol,
offset int64) (relocatedOffset int64)
Archrelocvariant2 func(target *Target, ldr *loader.Loader, rel loader.Reloc2,
rv sym.RelocVariant, sym loader.Sym, offset int64) (relocatedOffset int64)
// Generate a trampoline for a call from s to rs if necessary. ri is
// index of the relocation.