[llvm] r227411 - [LPM] Clean up the use of TLS in pretty stack trace and disable it

Kristof Beyls kristof.beyls at arm.com
Thu Jan 29 11:21:22 PST 2015

For AArch64, clang produces relocations for TLS variables that ld.bfd or ld.gold can’t handle.

It seems that gcc, ld and gas only support the “small memory model 16Mib TLS address model”,
and AFAIK, it may take a while for these to grow support for other address models.


I haven’t had time to come fully up to speed on this, but at the moment, the only workable
solution I can think of is to:

·         Not use thread_local variables in LLVM for the 3.6 release on AArch64, so that clang 3.6
can bootstrap itself on AArch64-linux.

·         On trunk, let clang targeting AArch64-ELF systems only produce the relocations that ld supports.
At first sight that seems possible, but I’m not sure.


Does anyone have a better set of suggestions than the above?






From: llvm-commits-bounces at cs.uiuc.edu [mailto:llvm-commits-bounces at cs.uiuc.edu] On Behalf Of Chandler Carruth
Sent: 29 January 2015 18:59
To: Hans Wennborg
Cc: Commit Messages and Patches for LLVM
Subject: Re: [llvm] r227411 - [LPM] Clean up the use of TLS in pretty stack trace and disable it


I'm still waiting for some of the dust to settle with ppc and arm. I'll have a list before long and can help merge.

On Jan 29, 2015 9:50 AM, "Hans Wennborg" <hans at chromium.org> wrote:

On Wed, Jan 28, 2015 at 5:23 PM, Chandler Carruth <chandlerc at gmail.com> wrote:
> Author: chandlerc
> Date: Wed Jan 28 19:23:04 2015
> New Revision: 227411
> URL: http://llvm.org/viewvc/llvm-project?rev=227411 <http://llvm.org/viewvc/llvm-project?rev=227411&view=rev> &view=rev
> Log:
> [LPM] Clean up the use of TLS in pretty stack trace and disable it
> entirely when threads are not enabled. This should allow anyone who
> needs to bootstrap or cope with a host loader without TLS support to
> limp along without threading support.

I assume we want this (and r227412) for the 3.6 branch. Any others?
llvm-commits mailing list
llvm-commits at cs.uiuc.edu
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150129/d50735de/attachment.html>

More information about the llvm-commits mailing list