diff options
| author | qmuntal <quimmuntal@gmail.com> | 2025-09-15 14:51:40 +0200 |
|---|---|---|
| committer | Quim Muntal <quimmuntal@gmail.com> | 2025-09-15 21:59:07 -0700 |
| commit | 17a0fabc43342963c3e604ab66f9a6b970a5cb05 (patch) | |
| tree | e1967340c07c3cc71e1720506130c0828afa7109 /src/cmd | |
| parent | eb7c67fdc9e17959647a15db9e7781b9d447061a (diff) | |
| download | go-17a0fabc43342963c3e604ab66f9a6b970a5cb05.tar.xz | |
cmd/link: remove support for darwin/386 relocations
The darwin/386 port has been unsupported for years, but some
relocation handling specific to it has managed to survive till now.
Updates #37610
Change-Id: I27ae2ac5462c5f3ec219e9cb5dce6f83b037b816
Reviewed-on: https://go-review.googlesource.com/c/go/+/703777
Reviewed-by: Michael Knyszek <mknyszek@google.com>
Reviewed-by: Than McIntosh <thanm@golang.org>
Reviewed-by: Cherry Mui <cherryyz@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Diffstat (limited to 'src/cmd')
| -rw-r--r-- | src/cmd/link/internal/x86/asm.go | 45 |
1 files changed, 0 insertions, 45 deletions
diff --git a/src/cmd/link/internal/x86/asm.go b/src/cmd/link/internal/x86/asm.go index d535e5fb4d..036514819a 100644 --- a/src/cmd/link/internal/x86/asm.go +++ b/src/cmd/link/internal/x86/asm.go @@ -224,51 +224,6 @@ func adddynrel(target *ld.Target, ldr *loader.Loader, syms *ld.ArchSyms, s loade su := ldr.MakeSymbolUpdater(s) su.SetRelocType(rIdx, objabi.R_ADDR) return true - - case objabi.MachoRelocOffset + ld.MACHO_GENERIC_RELOC_VANILLA*2 + 0: - su := ldr.MakeSymbolUpdater(s) - su.SetRelocType(rIdx, objabi.R_ADDR) - if targType == sym.SDYNIMPORT { - ldr.Errorf(s, "unexpected reloc for dynamic symbol %s", ldr.SymName(targ)) - } - return true - - case objabi.MachoRelocOffset + ld.MACHO_GENERIC_RELOC_VANILLA*2 + 1: - su := ldr.MakeSymbolUpdater(s) - if targType == sym.SDYNIMPORT { - addpltsym(target, ldr, syms, targ) - su.SetRelocSym(rIdx, syms.PLT) - su.SetRelocAdd(rIdx, int64(ldr.SymPlt(targ))) - su.SetRelocType(rIdx, objabi.R_PCREL) - return true - } - - su.SetRelocType(rIdx, objabi.R_PCREL) - return true - - case objabi.MachoRelocOffset + ld.MACHO_FAKE_GOTPCREL: - su := ldr.MakeSymbolUpdater(s) - if targType != sym.SDYNIMPORT { - // have symbol - // turn MOVL of GOT entry into LEAL of symbol itself - sData := ldr.Data(s) - if r.Off() < 2 || sData[r.Off()-2] != 0x8b { - ldr.Errorf(s, "unexpected GOT reloc for non-dynamic symbol %s", ldr.SymName(targ)) - return false - } - - su.MakeWritable() - writeableData := su.Data() - writeableData[r.Off()-2] = 0x8d - su.SetRelocType(rIdx, objabi.R_PCREL) - return true - } - - ld.AddGotSym(target, ldr, syms, targ, uint32(elf.R_386_GLOB_DAT)) - su.SetRelocSym(rIdx, syms.GOT) - su.SetRelocAdd(rIdx, r.Add()+int64(ldr.SymGot(targ))) - su.SetRelocType(rIdx, objabi.R_PCREL) - return true } // Handle references to ELF symbols from our own object files. |
