1
0
mirror of https://github.com/golang/go synced 2024-10-02 16:18:38 -06:00
Commit Graph

5 Commits

Author SHA1 Message Date
Russ Cox
6c6d53052e cgo: handle references to symbols in shared libraries
Fixes #1334.

R=r
CC=golang-dev
https://golang.org/cl/3746041
2010-12-17 11:37:11 -08:00
Russ Cox
0cd3475386 misc/cgo/life: fix, add to build
#pragma dynexport is no longer needed for
this use of cgo, since the gcc and gc code are
now linked together into the same binary.
It may still be necessary later.

On the Mac, you cannot use the GOT to resolve
symbols that exist in the current binary, so 6l and 8l
translate the GOT-loading mov instructions into lea
instructions.

On ELF systems, we could use the GOT for those
symbols, but for consistency 6l and 8l apply the
same translation.

The translation is sketchy in the extreme
(depending on the relocation being in a mov
instruction) but it verifies that the instruction
is a mov before rewriting it to lea.

Also makes typedefs global across files.

Fixes #1335.
Fixes #1345.

R=iant, r
CC=golang-dev
https://golang.org/cl/3650042
2010-12-17 09:51:55 -08:00
Graham Miller
cc5c2ee0ec life: fix for new slice rules
R=golang-dev, adg, rsc
CC=golang-dev
https://golang.org/cl/2341049
2010-10-07 04:52:13 -04:00
Russ Cox
da392d9136 build: no required environment variables
R=adg, r, PeterGo
CC=golang-dev
https://golang.org/cl/1942044
2010-08-18 10:08:49 -04:00
Ian Lance Taylor
f833a8d392 A test case for cgo //export.
R=rsc
CC=golang-dev
https://golang.org/cl/881043
2010-04-09 13:31:26 -07:00