]> Cypherpunks.ru repositories - gostls13.git/commit
[dev.link] cmd/link: begin converting dodata() to loader APIs
authorThan McIntosh <thanm@google.com>
Tue, 21 Apr 2020 22:37:43 +0000 (18:37 -0400)
committerThan McIntosh <thanm@google.com>
Fri, 24 Apr 2020 14:09:38 +0000 (14:09 +0000)
commit941de9760bcf35ad1ef4eee23d2851d3f2fa087b
tree128dbec7db74ed82eb8732bff494e44b502096de
parent3d1007d28e92316b08974dc65cde44a6aa31bf21
[dev.link] cmd/link: begin converting dodata() to loader APIs

This patch begins the work of converting the linker's dodata phase to
work with loader APIs. Passes all.bash on linux/amd64, but hasn't been
tested on anything else (more arch-specific code needs to be written).
Use of the new dodata() phase is currently gated by a temporary
command line flag ("-newdodata"), and there is code in the linker's
main routine to insure that we only use the new version for the right
GOOS/GOARCH (currently restricted to ELF + AMD64).

Change-Id: Ied3966677d2a450bc3e0990e0f519b3fceaab806
Reviewed-on: https://go-review.googlesource.com/c/go/+/229706
Run-TryBot: Than McIntosh <thanm@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
18 files changed:
src/cmd/link/internal/amd64/asm.go
src/cmd/link/internal/amd64/asm2.go [new file with mode: 0644]
src/cmd/link/internal/amd64/obj.go
src/cmd/link/internal/ld/data.go
src/cmd/link/internal/ld/data2.go [new file with mode: 0644]
src/cmd/link/internal/ld/elf.go
src/cmd/link/internal/ld/elf2.go [new file with mode: 0644]
src/cmd/link/internal/ld/go.go
src/cmd/link/internal/ld/lib.go
src/cmd/link/internal/ld/link.go
src/cmd/link/internal/ld/main.go
src/cmd/link/internal/ld/symtab.go
src/cmd/link/internal/ld/xcoff.go
src/cmd/link/internal/ld/xcoff2.go [new file with mode: 0644]
src/cmd/link/internal/loader/loader.go
src/cmd/link/internal/loader/symbolbuilder.go
src/cmd/link/internal/ppc64/asm.go
src/cmd/link/internal/sym/segment.go