diff options
author | Russ Cox <rsc@golang.org> | 2013-03-07 19:57:25 -0800 |
---|---|---|
committer | Russ Cox <rsc@golang.org> | 2013-03-07 19:57:25 -0800 |
commit | ff767d40f51adf48f76959feb564219f742a9727 (patch) | |
tree | 87f89a975706b657c406ee12f44795bda05e0a61 /src/cmd/8l | |
parent | a583abf416b36c1ad78b5b8cb696d85f3834f8c3 (diff) | |
download | go-ff767d40f51adf48f76959feb564219f742a9727.tar.gz |
cmd/ld: steps toward 386 host linking
- Introduce MaxAlign constant and use in data layout
and ELF section header.
- Allow up to 16-byte alignment for large objects
(will help Keith's hash changes).
- Emit ELF symbol for .rathole (global /dev/null used by 8c).
- Invoke gcc with -m32/-m64 as appropriate.
- Don't invoke gcc if writing the .o file failed.
R=golang-dev, iant
CC=golang-dev
https://codereview.appspot.com/7563045
Diffstat (limited to 'src/cmd/8l')
-rw-r--r-- | src/cmd/8l/l.h | 1 | ||||
-rw-r--r-- | src/cmd/8l/obj.c | 4 |
2 files changed, 5 insertions, 0 deletions
diff --git a/src/cmd/8l/l.h b/src/cmd/8l/l.h index 062dc0566..f6de74646 100644 --- a/src/cmd/8l/l.h +++ b/src/cmd/8l/l.h @@ -42,6 +42,7 @@ enum thechar = '8', PtrSize = 4, IntSize = 4, + MaxAlign = 32, // max data alignment FuncAlign = 16 }; diff --git a/src/cmd/8l/obj.c b/src/cmd/8l/obj.c index f06bc5d9d..8144dfadd 100644 --- a/src/cmd/8l/obj.c +++ b/src/cmd/8l/obj.c @@ -130,6 +130,10 @@ main(int argc, char *argv[]) flagparse(&argc, &argv, usage); + // TODO: link mode flag instead of isobj + if(isobj) + linkmode = LinkExternal; + if(argc != 1) usage(); |