]> Cypherpunks repositories - gostls13.git/commit
cmd/ld: move instruction selection + layout into compilers, assemblers
authorRuss Cox <rsc@golang.org>
Mon, 16 Dec 2013 17:51:58 +0000 (12:51 -0500)
committerRuss Cox <rsc@golang.org>
Mon, 16 Dec 2013 17:51:58 +0000 (12:51 -0500)
commita9f6db58cea016957391f3ca9d36247177895e96
tree0a1122e09381ac022e6165e880e7eb93ede416b0
parent870e821ded81043a65ff9abef871b29514efc1d7
cmd/ld: move instruction selection + layout into compilers, assemblers

- new object file reader/writer (liblink/objfile.c)
- remove old object file writing routines
- add pcdata iterator
- remove all trace of "line number stack" and "path fragments" from
  object files, linker (!!!)
- dwarf now writes a single "compilation unit" instead of one per package

This CL disables the check for chains of no-split functions that
could overflow the stack red zone. A future CL will attack the problem
of reenabling that check (issue 6931).

This CL is just the liblink and cmd/ld changes.
There are minor associated adjustments in CL 37030045.
Each depends on the other.

R=golang-dev, dave, iant
CC=golang-dev
https://golang.org/cl/39680043
27 files changed:
include/link.h
src/cmd/5l/obj.c
src/cmd/6l/obj.c
src/cmd/8l/obj.c
src/cmd/ld/data.c
src/cmd/ld/dwarf.c
src/cmd/ld/dwarf.h
src/cmd/ld/go.c
src/cmd/ld/lib.c
src/cmd/ld/lib.h
src/cmd/ld/pcln.c
src/cmd/ld/pobj.c
src/liblink/asm5.c
src/liblink/asm6.c
src/liblink/asm8.c
src/liblink/ld.c
src/liblink/obj.c
src/liblink/obj5.c
src/liblink/obj6.c
src/liblink/obj8.c
src/liblink/objfile.c [new file with mode: 0644]
src/liblink/pass.c
src/liblink/pcln.c
src/liblink/rdobj5.c [deleted file]
src/liblink/rdobj6.c [deleted file]
src/liblink/rdobj8.c [deleted file]
src/liblink/sym.c