summaryrefslogtreecommitdiff
path: root/src/cmd/5l
AgeCommit message (Collapse)AuthorFilesLines
2011-09-13Imported Upstream version 60upstream/60Ondřej Surý14-0/+6224
2011-09-13Imported Upstream version 60Ondřej Surý14-6265/+0
2011-08-03Imported Upstream version 59upstream/59Ondřej Surý3-62/+23
2011-06-30Imported Upstream version 58upstream/58Ondřej Surý13-2604/+169
2011-04-28Imported Upstream version 2011.04.27upstream/2011.04.27Ondřej Surý2-2/+3
2011-04-26Imported Upstream version 2011.04.13upstream/2011.04.13Ondřej Surý5-23/+21
2011-04-20Imported Upstream version 2011.03.07.1upstream/2011.03.07.1Ondřej Surý10-48/+107
2011-02-18Imported Upstream version 2011.02.15upstream/2011.02.15Ondřej Surý3-29/+18
2011-02-14Imported Upstream version 2011-02-01.1upstream/2011-02-01.1Ondřej Surý8-13/+38
2011-01-17Imported Upstream version 2011.01.12upstream/2011.01.12Ondřej Surý14-3515/+1908
2010-06-30cgo: use slash-free relative paths for .so referencesRuss Cox1-0/+2
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-21ld: add -u flag to check safe bits; discard old -u, -x flagsRuss Cox1-10/+0
R=r, r2 CC=golang-dev http://codereview.appspot.com/1707043
2010-06-11Pad Go symbol table out to page boundary when linking dynamically.Ian Lance Taylor1-2/+4
This avoids a crash when using cgo where glibc's malloc thinks that it can use some of the memory following the symbol table. This fails because the symbol table is mapped read-only, which affects the whole page. R=rsc CC=golang-dev http://codereview.appspot.com/1616042
2010-04-275l, 6l, 8l, runtime: make -s binaries workRuss Cox4-15/+85
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-06replace original float instruction with jump to make branchesKai Backman1-11/+12
to float instructions work correctly. R=rsc CC=golang-dev http://codereview.appspot.com/870044
2010-04-05runtime: various arm fixesRuss Cox3-4/+8
* correct symbol table size * do not reorder functions in output * traceback * signal handling * use same code for go + defer * handle leaf functions in symbol table R=kaib, dpx CC=golang-dev http://codereview.appspot.com/884041
2010-03-23Add support for #pragma dynexport.Ian Lance Taylor2-33/+64
R=rsc CC=golang-dev http://codereview.appspot.com/661043
2010-03-22Rename dynld to dynimport throughout.Ian Lance Taylor2-7/+7
Cgo users will need to rerun cgo. R=rsc CC=golang-dev http://codereview.appspot.com/692041
2010-03-08arm: cleanup build warningsDean Prichard1-2/+2
trivial stuff lex.c: these prototypes are in a.h asm.c: unused variables arm-pass.txt deal w/ sieve.go rename and addition of sieve2.go R=kaib, rsc CC=golang-dev http://codereview.appspot.com/244041 Committer: Russ Cox <rsc@golang.org>
2010-02-26Add -r option to 6l/8l/5l.Ian Lance Taylor4-1/+9
This permits more flexibility with cgo and swig in cases where the program is run on a machine other than the one on which it is built. Rather than storing the absolute path to the shared library in the DT_NEEDED entry, we can store just the name, and let the dynamic linker find it using DT_RUNPATH or the LD_LIBRARY_PATH environment variable. R=rsc CC=golang-dev http://codereview.appspot.com/223068
2010-02-10arm: fix build on androidRuss Cox6-257/+552
R=kaib CC=golang-dev http://codereview.appspot.com/206059
2010-02-08*l/*c: add -V flag to display version numberAndrew Gerrand2-0/+5
R=rsc CC=golang-dev http://codereview.appspot.com/204044
2010-02-046l: move mapped symbol table lower in memoryAndrew Gerrand1-1/+1
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-5/+4
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 Cox1-1/+1
Fixes issue 585. R=r CC=golang-dev http://codereview.appspot.com/195075
2010-01-25salvaging 183105 from dead clientKai Backman3-8/+9
a number of fixes for arm elf generation in 5l. -T now works as advertised, -D now works properly. R=rsc CC=golang-dev http://codereview.appspot.com/194076
2010-01-255l, 6l, 8l: accept only one object fileRuss Cox1-4/+4
(package main; others are pulled in automatically) R=ken2 CC=golang-dev http://codereview.appspot.com/194069
2010-01-25ld: do not load the same object file multiple times.Russ Cox1-0/+6
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 Cox2-11/+8
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 Cox2-6/+6
* 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
2009-12-17 first stub for softfloats, intercepts float instructions and skipsKai Backman4-1/+84
them in the stream. R=rsc http://codereview.appspot.com/174052
2009-11-23go: makes it build for the case $GOROOT has whitespacesSergio Luis O. B. Correia1-2/+2
the bash scripts and makefiles for building go didn't take into account the fact $GOROOT / $GOBIN could both be directories containing whitespaces, and was not possible to build it in such a situation. this commit adjusts the various makefiles/scripts to make it aware of that possibility, and now it builds successfully when using a path with whitespaces as well. Fixes issue 115. R=rsc, dsymonds1 http://codereview.appspot.com/157067 Committer: Russ Cox <rsc@golang.org>
2009-11-09tweak documentation of commandsRuss Cox1-1/+1
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-03document the gc go compilers.Rob Pike1-0/+2
fix the usage message. R=rsc CC=go-dev http://go/go-review/1016033
2009-11-03more command documentation, including nm and profRob Pike1-1/+1
R=rsc http://go/go-review/1017022
2009-11-03First steps at command documentation: C compilers and linkers.Rob Pike1-0/+26
Each command gets a doc.go file for godoc to analyze. Its main element is a package comment. R=rsc CC=go-dev http://go/go-review/1018029
2009-10-25 make 5l ignore multiple defs, remove use of multipleKai Backman1-0/+9
defs from embed1 and gotest R=rsc http://go/go-review/1014009
2009-10-25frame size > StackBig supportKai Backman1-7/+49
R=rsc http://go/go-review/1015010
2009-10-23fix off by 4 bug in morestack (lr again). remove storing of r0Kai Backman1-6/+17
now that all arguments are passed on the stack. go/test: passes 89% (310/345) R=rsc APPROVED=rsc DELTA=33 (13 added, 14 deleted, 6 changed) OCL=36009 CL=36022
2009-10-21change stack splitting comparisons from signed to unsigned (oversight)Kai Backman1-9/+9
R=rsc APPROVED=rsc DELTA=9 (0 added, 0 deleted, 9 changed) OCL=35911 CL=35952
2009-10-19support for 5.out filesRuss Cox1-1/+4
R=kaib DELTA=1262 (1247 added, 7 deleted, 8 changed) OCL=35907 CL=35909
2009-10-15rename sys functions to runtime,Russ Cox1-4/+4
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-14LDREX and STREXKai Backman4-0/+27
R=rsc APPROVED=rsc DELTA=30 (30 added, 0 deleted, 0 changed) OCL=35751 CL=35756
2009-10-08dupok, gcc compile fix, sync and syscall asm fixKai Backman2-3/+11
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 Cox8-669/+44
R=r DELTA=3214 (904 added, 2260 deleted, 50 changed) OCL=35425 CL=35427
2009-10-065l library loading, 64 bit entry pointsKai Backman1-6/+31
R=rsc APPROVED=rsc DELTA=58 (52 added, 3 deleted, 3 changed) OCL=35417 CL=35417
2009-10-03clean moreRuss Cox1-1/+1
R=r DELTA=40 (9 added, 3 deleted, 28 changed) OCL=35277 CL=35305
2009-09-18changed 5c calling convention to use stack exclusively for inKai Backman1-1/+2
params. a number of fixes to assembly routines that assumed R0 had the first arg. one stack offset fix, arm pushes the link register on stack top. go/test: passes 65% (235/364) tests R=rsc APPROVED=rsc DELTA=20 (11 added, 0 deleted, 9 changed) OCL=34809 CL=34812
2009-09-17fixing width bug in DATA output. some logging to make fixingKai Backman1-2/+2
similar issues easier in the future. R=rsc APPROVED=rsc DELTA=6 (1 added, 0 deleted, 5 changed) OCL=34771 CL=34773
2009-08-30fix line numbers, again.Russ Cox2-0/+7
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