On 2018-12-08, at 10:24 AM, Ken Cunningham wrote:

> 
>> At present I don't seem to know enough about the underpinnings to see how to 
>> change the visibility settings on the emutls objects from libclang_rt when 
>> placed into the executable.

> So perhaps having emutls.c in libclang_rt can never actually work...maybe the 
> emutls.o code needs to exist in a separate dylib (like it does in libgcc).
> 
> So putting it into libc++abi.dylib might indeed be the only workable method, 
> assuming each executable would get it's own copy in memory and they wouldn't 
> all collide together.
> 


And I sorted it out.

We are building libc++abi with nodefaultlibs . The emutls.o symbols indeed 
belong right in libc++abi, and I will either compile them in with emutls.c or 
link them in manually by adding that library.

And then we should be in business, and all systems will have thread_local .

Ken


Reply via email to