Avoid privatization of TLS variables

Markus Trippelsdorf markus@trippelsdorf.de
Wed Sep 24 19:10:00 GMT 2014


On 2014.09.24 at 20:18 +0200, Jan Hubicka wrote:
> > On 2014.09.20 at 05:16 +0200, Jan Hubicka wrote:
> > > Hi,
> > > libreoffice fails to build with TLS because of "Cannot load any more object
> > > with static TLS". Iant pointed out to me the difference that the initial exec
> > > TLS model is also used by static TLS variables.
> > > 
> > > This patch prevents turning TLS variables into static that lets me to finish
> > > libreoffice build.
> > 
> > This patch triggers an assert in gold:
> > 
> > ~ % echo "int main () {}" | g++ -flto -fprofile-generate -x c++ -
> > ld: internal error in relocate_tls, at/gold/x86_64.cc:3829
> > collect2: error: ld returned 1 exit status
> 
> I saw this error, too, just not with such a simple testcase :)
> Ian, I think this is bug in gold. What does the assert mean?

I've opened: https://sourceware.org/bugzilla/show_bug.cgi?id=17432

-- 
Markus



More information about the Gcc-patches mailing list