summaryrefslogtreecommitdiff
path: root/src/cmd/ld
AgeCommit message (Collapse)AuthorFilesLines
2011-09-13Imported Upstream version 60upstream/60Ondřej Surý18-0/+12155
2011-09-13Imported Upstream version 60Ondřej Surý18-11815/+0
2011-08-03Imported Upstream version 59upstream/59Ondřej Surý10-77/+113
2011-06-30Imported Upstream version 58upstream/58Ondřej Surý12-117/+228
2011-04-28Imported Upstream version 2011.04.27upstream/2011.04.27Ondřej Surý11-64/+181
2011-04-26Imported Upstream version 2011.04.13upstream/2011.04.13Ondřej Surý10-106/+209
2011-04-20Imported Upstream version 2011.03.07.1upstream/2011.03.07.1Ondřej Surý8-31/+312
2011-02-18Imported Upstream version 2011.02.15upstream/2011.02.15Ondřej Surý4-9/+121
2011-02-14Imported Upstream version 2011-02-01.1upstream/2011-02-01.1Ondřej Surý8-185/+901
2011-01-17Imported Upstream version 2011.01.12upstream/2011.01.12Ondřej Surý16-637/+6916
2010-06-30cgo: use slash-free relative paths for .so referencesRuss Cox1-0/+7
The Makefile and cgo now rewrite / to _ when creating the path. The .so for gosqlite.googlecode.com/hg/sqlite is named cgo_gosqlite.googlecode.com_hg_sqlite.so, and then 6l and 8l both include a default rpath of $GOROOT/pkg/$GOOS_$GOARCH. This should make it easier to move binaries from one system to another. Fixes issue 857. R=iant, r CC=golang-dev http://codereview.appspot.com/1700048
2010-06-29ld: fix implementation of -uRuss Cox3-19/+57
R=r CC=golang-dev http://codereview.appspot.com/1678046
2010-06-21ld: add -u flag to check safe bits; discard old -u, -x flagsRuss Cox1-1/+28
R=r, r2 CC=golang-dev http://codereview.appspot.com/1707043
2010-04-308l: fix absolute path detection on WindowsRuss Cox1-0/+4
Fixes issue 755. R=ken2 CC=golang-dev http://codereview.appspot.com/965047
2010-04-275l, 6l, 8l, runtime: make -s binaries workRuss Cox3-2/+6
5l, 6l, 8l: change ELF header so that strip doesn't destroy binary Fixes issue 261. R=iant, r CC=golang-dev http://codereview.appspot.com/994044
2010-04-138l: add DOS stub to PE binariesEvan Shaw1-2/+23
R=rsc CC=golang-dev http://codereview.appspot.com/915041 Committer: Russ Cox <rsc@golang.org>
2010-03-25Support #pragma dynexport on OS X.Ian Lance Taylor1-20/+108
R=rsc CC=golang-dev http://codereview.appspot.com/733041
2010-03-23Add support for #pragma dynexport.Ian Lance Taylor3-5/+139
R=rsc CC=golang-dev http://codereview.appspot.com/661043
2010-03-22Rename dynld to dynimport throughout.Ian Lance Taylor2-17/+17
Cgo users will need to rerun cgo. R=rsc CC=golang-dev http://codereview.appspot.com/692041
2010-02-108l: pe executable building code changed to include import table for ↵Alex Brainman2-0/+99
kernel32.dll functions Fixes issue 586. R=rsc CC=golang-dev http://codereview.appspot.com/203060 Committer: Russ Cox <rsc@golang.org>
2010-02-10ld: unused variableRuss Cox1-1/+0
R=adg CC=golang-dev http://codereview.appspot.com/207050
2010-02-046l: move mapped symbol table lower in memoryAndrew Gerrand1-0/+3
Allows binary to run on some Linux system. Fix for issue 365. R=rsc CC=golang-dev http://codereview.appspot.com/199096
2010-02-03search for runtime.a in the package path instead of hardcodingKai Backman1-7/+21
the location. remove last remnants of broken -l flag. R=rsc CC=golang-dev http://codereview.appspot.com/201042
2010-02-03ld: include main and runtime in the library loopRuss Cox2-14/+33
Fixes issue 585. R=r CC=golang-dev http://codereview.appspot.com/195075
2010-02-01nacl: fix build, finally fixed 8l convergence bugRuss Cox1-1/+1
R=r CC=golang-dev http://codereview.appspot.com/199042
2010-01-25ld: typoRuss Cox1-1/+1
R=ken2 CC=golang-dev http://codereview.appspot.com/194073
2010-01-25eliminate package global name spaceRuss Cox1-4/+11
R=ken2 CC=golang-dev http://codereview.appspot.com/194071
2010-01-25ld: do not load the same object file multiple times.Russ Cox1-3/+9
eliminates spurious multiple initialization errors. give more information in the multiple init errors that remain. Fixes issue 87. R=r CC=golang-dev http://codereview.appspot.com/194052
2010-01-22eliminate the package global name space assumption in object filesRuss Cox3-69/+170
5g/6g/8g: add import statements to export metadata, mapping package path to package name. recognize "" as the path of the package in export metadata. use "" as the path of the package in object symbol names. 5c/6c/8c, 5a/6a/8a: rewrite leading . to "". so that ·Sin means Sin in this package. 5l/6l/8l: rewrite "" in symbol names as object files are read. gotest: handle new symbol names. gopack: handle new import lines in export metadata. Collectively, these changes eliminate the assumption of a global name space in the object file formats. Higher level pieces such as reflect and the computation of type hashes still depend on the assumption; we're not done yet. R=ken2, r, ken3 CC=golang-dev http://codereview.appspot.com/186263 Committer: Russ Cox <rsc@golang.org>
2010-01-19cleanup toward eliminating package global name spaceRuss Cox1-14/+14
* switch to real dot (.) instead of center dot (·) everywhere in object files. before it was half and half depending on where in the name it appeared. * in 6c/6a/etc identifiers, · can still be used but turns into . immediately. * in export metadata, replace package identifiers with quoted strings (still package names, not paths). R=ken2, r CC=golang-dev http://codereview.appspot.com/190076
2010-01-19ld: unused variableRuss Cox1-2/+0
R=r CC=golang-dev http://codereview.appspot.com/186229
2010-01-18build: move GOOS, GOARCH, GOROOT lookup into central library.Russ Cox1-14/+2
bake default values in during build. R=r CC=golang-dev http://codereview.appspot.com/186173
2010-01-13runtime: add demo running Go on raw (emulated) hwRuss Cox2-0/+5
8l: add GOOS=pchw, stop spelling out all the elf numbers. R=r CC=golang-dev http://codereview.appspot.com/186144
2010-01-13ignore $GOARCH inside the compiler and linker.Rob Pike2-4/+2
by definition, they know what they are building for. makes it easier to switch architectures when testing. % 6g x.go % 6l x.6 % 6.out "Wed Jan 13 10:57:46 EST 2010" % 8g x.go % 8l x.8 % 8.out "Wed Jan 13 10:57:46 EST 2010" % echo $GOARCH % R=rsc CC=golang-dev http://codereview.appspot.com/186116
2009-12-17 first stub for softfloats, intercepts float instructions and skipsKai Backman2-2/+3
them in the stream. R=rsc http://codereview.appspot.com/174052
2009-12-138l: add support for PE output.Hector Chu2-0/+248
R=rsc http://codereview.appspot.com/166080 Committer: Russ Cox <rsc@golang.org>
2009-11-18ld: move interpreter string into first block of ELF fileRuss Cox2-1/+31
necessary on freebsd. R=r, dho CC=golang-dev http://codereview.appspot.com/157069
2009-11-15gc: five bug fixes, one better error.Russ Cox1-5/+14
* check for struct literal assignment to private fields. * record, fix crash involving parallel map assignment. * avoid infinite recursion in exportassignok. * make floating point bounds check precise. * avoid crash on invalid receiver. * add context to error about implicit assignment. Fixes issue 86. Fixes issue 88. Fixes issue 158. Fixes issue 174. Fixes issue 201. Fixes issue 204. R=ken2 http://codereview.appspot.com/154144
2009-11-12cc, ld: fix more gcc 4.3 -O2 compile bugsRuss Cox2-4/+4
same as http://codereview.appspot.com/152088 in more files. Fixes issue 83. R=r, r1 http://codereview.appspot.com/152091
2009-11-09tweak documentation of commandsRuss Cox1-2/+2
so that first sentence is better for cmd page. live at http://r45:3456/cmd/ R=gri, r http://go/go-review/1024034
2009-11-03more command documentation, including nm and profRob Pike1-0/+11
R=rsc http://go/go-review/1017022
2009-11-036l -e: emit external ELF symbol table.Russ Cox1-1/+1
enough to make nm and oprofile work. R=r http://go/go-review/1017016
2009-10-15rename sys functions to runtime,Russ Cox1-14/+14
because they are in package runtime. another step to enforcing package boundaries. R=r DELTA=732 (114 added, 93 deleted, 525 changed) OCL=35811 CL=35824
2009-10-10reallocate library, libraryobj: 50 isn't nearly enoughRob Pike2-5/+7
R=rsc DELTA=7 (2 added, 0 deleted, 5 changed) OCL=35569 CL=35569
2009-10-08dupok, gcc compile fix, sync and syscall asm fixKai Backman1-1/+6
R=rsc APPROVED=rsc DELTA=27 (18 added, 0 deleted, 9 changed) OCL=35503 CL=35505
2009-10-07factor portable object+library bits out of 5l/6l/8l into ldRuss Cox5-1/+856
R=r DELTA=3214 (904 added, 2260 deleted, 50 changed) OCL=35425 CL=35427
2009-10-038c, 8l dynamic loading support.Russ Cox3-2/+330
better mach binaries. cgo working on darwin+linux amd64+386. eliminated context switches - pi is 30x faster. add libcgo to build. on snow leopard: - non-cgo binaries work; all tests pass. - cgo binaries work on amd64 but not 386. R=r DELTA=2031 (1316 added, 626 deleted, 89 changed) OCL=35264 CL=35304
2009-09-30step toward darwin ffi: factor out macho codeRuss Cox3-1/+278
R=r DELTA=771 (374 added, 287 deleted, 110 changed) OCL=35187 CL=35187
2009-09-24convert 8l to new ELF code.Russ Cox2-37/+120
mostly cut and paste from 6l. R=r DELTA=930 (525 added, 182 deleted, 223 changed) OCL=34976 CL=34976
2009-08-30fix line numbers, again.Russ Cox1-25/+0
if first function in file was dead code, it was being discarded along with the file name information for that file. leave the functions in the master function list longer: let xfol take the dead code out of the code list, and let span skip the unreachable functions during output. before throw: sys·mapaccess1: key not in map panic PC=0x2e7b20 throw+0x33 /Users/rsc/go/src/pkg/runtime/runtime.c:65 throw(0x5834f, 0x0) sys·mapaccess1+0x73 /Users/rsc/go/src/pkg/runtime/hashmap.c:769 sys·mapaccess1(0x2b9bd0, 0x0) gob·*Encoder·Encode+0x16b /Users/rsc/go/src/pkg/fmt/print.go:2926 gob·*Encoder·Encode(0x2bb440, 0x0, 0x558b0, 0x0, 0x2e4be0, ...) main·walk+0x331 :1603 main·walk(0x33a480, 0x0) main·walk+0x271 :1596 main·walk(0x300640, 0x0) main·walk+0x271 :1596 main·walk(0x300520, 0x0) main·walk+0x271 :1596 main·walk(0x300240, 0x0) main·walk+0x271 :1596 main·walk(0x678f8, 0x0) main·main+0x22 :1610 main·main() after throw: sys·mapaccess1: key not in map panic PC=0x2e7b20 throw+0x33 /Users/rsc/go/src/pkg/runtime/runtime.c:65 throw(0x5834f, 0x0) sys·mapaccess1+0x73 /Users/rsc/go/src/pkg/runtime/hashmap.c:769 sys·mapaccess1(0x2b9bd0, 0x0) gob·*Encoder·Encode+0x16b /Users/rsc/go/src/pkg/gob/encoder.go:319 gob·*Encoder·Encode(0x2bb3c0, 0x0, 0x558b0, 0x0, 0x2e4be0, ...) main·walk+0x331 /Users/rsc/dir.go:121 main·walk(0x2f6ab0, 0x0) main·walk+0x271 /Users/rsc/dir.go:114 main·walk(0x301640, 0x0) main·walk+0x271 /Users/rsc/dir.go:114 main·walk(0x301520, 0x0) main·walk+0x271 /Users/rsc/dir.go:114 main·walk(0x301240, 0x0) main·walk+0x271 /Users/rsc/dir.go:114 main·walk(0x678f8, 0x0) main·main+0x22 /Users/rsc/dir.go:128 main·main() mainstart+0xe /Users/rsc/go/src/pkg/runtime/amd64/asm.s:55 mainstart() goexit /Users/rsc/go/src/pkg/runtime/proc.c:133 goexit() R=r DELTA=46 (20 added, 25 deleted, 1 changed) OCL=34094 CL=34103