go/include
Aram Hăvărneanu decd810945 liblink, runtime: preliminary support for plan9/amd64
A TLS slot is reserved by _rt0_.*_plan9 as an automatic and
its address (which is static on Plan 9) is saved in the
global _privates symbol. The startup linkage now is exactly
like that from Plan 9 libc, and the way we access g is
exactly as if we'd have used privalloc(2).

Aside from making the code more standard, this change
drastically simplifies it, both for 386 and for amd64, and
makes the Plan 9 code in liblink common for both 386 and
amd64.

The amd64 runtime code was cleared of nxm assumptions, and
now runs on the standard Plan 9 kernel.

Note handling fixes will follow in a separate CL.

LGTM=rsc
R=golang-codereviews, rsc, bradfitz, dave
CC=0intro, ality, golang-codereviews, jas, minux.ma, mischief
https://golang.org/cl/101510049
2014-07-02 21:04:10 +10:00
..
plan9 include/plan9: make mklibc.rc compatible with 9atom 2014-04-19 09:55:09 +02:00
ar.h gopack: change archive file name length back to 16 2011-11-01 00:29:16 -04:00
bio.h libbio, libmach: warnings from the Plan 9 tool chain 2014-04-07 08:40:13 -07:00
fmt.h convert C runtime to 32-bit runes; 2009-08-31 16:38:50 -07:00
libc.h cmd/dist, cmd/ld: GO_EXTLINK_ENABLED=0 defaults to -linkmode=internal 2013-03-29 16:33:35 -07:00
link.h liblink, runtime: preliminary support for plan9/amd64 2014-07-02 21:04:10 +10:00
README include: add a README file 2013-05-22 18:51:15 +08:00
u.h liblink: create new library based on linker code 2013-12-08 22:49:37 -05:00
utf.h add missing include file 2008-06-12 13:31:17 -07:00

The header files under this directory are strictly internal to the gc
toolchain, so please don't copy them to the system include file
directory (/usr/include, /usr/local/include, etc.)

Also note that they must be kept as is in $GOROOT/include, or cmd/dist
will malfunction.