Default powerpc64 to --plt-thread-safe for Go
authorAlan Modra <amodra@gmail.com>
Wed, 19 Nov 2014 22:22:46 +0000 (08:52 +1030)
committerAlan Modra <amodra@gmail.com>
Wed, 19 Nov 2014 22:33:31 +0000 (09:03 +1030)
commit240f0ba1b9f06ce951dfcc9307d91c3c903496a4
tree7883710c9e629b97fac1948d0568ac1d82bda11b
parenta30720e3e633f275250e26f85ccae5dbdddfb6c6
Default powerpc64 to --plt-thread-safe for Go

Go is multi-threaded, so use thread-safe plt stubs.  __go_go doesn't
actually start threads, but is a convenient libgo function with a
reasonably unique name that is called by all Go executables.  (Threads
are started by a static function of libgo, runtime_newosproc, called
by a whole lot of global functions, including runtime_starttheworld
and runtime_main.)

bfd/
* elf64-ppc.c (ppc64_elf_size_stubs): Add __go_go to thread_starters.
gold/
* powerpc.cc (Target_powerpc::do_relax): Add __go_go to thread_starters.
bfd/ChangeLog
bfd/elf64-ppc.c
gold/ChangeLog
gold/powerpc.cc