GitHub PushEvent at 2014-10-05 06:00:06
Repository: clang
Actor: llvm-mirror
Payload: {"shas":[["6c9b7bc80ace5c3de55dc117a9022a1257ff798e","fbe9e45cbb51ebd86366cc402735e3c7e9b1e064@gmail.com","MS ABI: Implement thread_local for global variables\n\nSummary:\nThis add support for the C++11 feature, thread_local global variables.\nThe ABI Clang implements is an improvement of the MSVC ABI.  Sadly,\nfurther improvements could be made but not without sacrificing ABI\ncompatibility.\n\nThe feature is implemented as follows:\n- All thread_local initialization routines are pointed to from the\n  .CRT$XDU section.\n- All non-weak thread_local variables have their initialization routines\n  call from a single function instead of getting their own .CRT$XDU\n  section entry.  This is done to open up optimization opportunities to\n  the compiler.\n- All weak thread_local variables have their own .CRT$XDU section entry.\n  This entry is in a COMDAT with the global variable it is initializing;\n  this ensures that we will initialize the global exactly once.\n- Destructors are registered in the initialization function using\n  __tlregdtor.\n\nDifferential Revision: http://reviews.llvm.org/D5597\n\ngit-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219074 91177308-0d34-0410-b5e6-96231b3b80d8","David Majnemer",true]],"size":1,"ref":"refs/heads/master","head":"6c9b7bc80ace5c3de55dc117a9022a1257ff798e"}