diff options
author | Russ Cox <rsc@golang.org> | 2008-09-08 15:22:55 -0700 |
---|---|---|
committer | Russ Cox <rsc@golang.org> | 2008-09-08 15:22:55 -0700 |
commit | e6aeb062a19fbfd1ff3de3dc1f141d8b008d4d5f (patch) | |
tree | 9f16759de21f16447baa7854fec87081411775ef /src | |
parent | 4474659ff3af6bb6cd07edd95d0f609765277b33 (diff) | |
download | golang-e6aeb062a19fbfd1ff3de3dc1f141d8b008d4d5f.tar.gz |
go linux x86-64 kernel fixes:
* change .gosymtab and .gopclntab to section 7 (note)
* start INITTEXT at 4MB, not 4KB
R=r
OCL=14953
CL=14959
Diffstat (limited to 'src')
-rw-r--r-- | src/cmd/6l/asm.c | 6 | ||||
-rw-r--r-- | src/cmd/6l/obj.c | 2 |
2 files changed, 4 insertions, 4 deletions
diff --git a/src/cmd/6l/asm.c b/src/cmd/6l/asm.c index 53e39ac40..868322864 100644 --- a/src/cmd/6l/asm.c +++ b/src/cmd/6l/asm.c @@ -426,7 +426,7 @@ asmb(void) wputl(4); /* Shdr with strings */ fo = 0; - va = INITRND; + va = INITTEXT & ~((vlong)INITRND - 1); w = HEADR+textsize; linuxphdr(1, /* text - type = PT_LOAD */ @@ -537,7 +537,7 @@ asmb(void) w = symsize; linuxshdr(".gosymtab", /* name */ - 2, /* type */ + 7, /* type */ 0, /* flags */ 0, /* addr */ fo, /* off */ @@ -551,7 +551,7 @@ asmb(void) w = lcsize; linuxshdr(".gopclntab", /* name */ - 2, /* type */ + 7, /* type */ 0, /* flags */ 0, /* addr */ fo, /* off */ diff --git a/src/cmd/6l/obj.c b/src/cmd/6l/obj.c index 47c0280de..1b57687ea 100644 --- a/src/cmd/6l/obj.c +++ b/src/cmd/6l/obj.c @@ -198,7 +198,7 @@ main(int argc, char *argv[]) case 7: /* elf64 executable */ HEADR = linuxheadr(); if(INITTEXT == -1) - INITTEXT = 4096+HEADR; + INITTEXT = (1<<22)+HEADR; if(INITDAT == -1) INITDAT = 0; if(INITRND == -1) |