This is an archive of the discontinued LLVM Phabricator instance.

Remove home-grown thread-local storage wrappers
ClosedPublic

Authored by labath on Jun 16 2017, 5:28 AM.

Details

Summary

Use c++11 thread_local variables instead. As far as I am aware, they are
supported by all compilers/targets we care about.

Diff Detail

Repository
rL LLVM

Event Timeline

labath created this revision.Jun 16 2017, 5:28 AM
zturner edited edge metadata.Jun 16 2017, 11:05 AM

The last time I tried to do this we couldn't because it didn't yet work on iOS. I checked with some Apple people though and they said thread_local support was released last year on all Apple platforms. So hopefully there's no more hurdles to getting this in.

Modern BSDs should be fine on popular platforms.

emaste added a subscriber: emaste.Jun 16 2017, 7:36 PM

Fine from FreeBSD

The last time I tried to do this we couldn't because it didn't yet work on iOS. I checked with some Apple people though and they said thread_local support was released last year on all Apple platforms. So hopefully there's no more hurdles to getting this in.

Thanks, I didn't know about the iOS angle. Jim, can you confirm that this is ok?

jasonmolenda accepted this revision.Jun 19 2017, 8:49 PM
jasonmolenda added a subscriber: jasonmolenda.

We have thread local storage support on all our current darwin platforms.

This revision is now accepted and ready to land.Jun 19 2017, 8:49 PM
This revision was automatically updated to reflect the committed changes.