aboutsummaryrefslogtreecommitdiff
path: root/clang/test/CodeGenCXX/cxx11-thread-local-reference.cpp
AgeCommit message (Collapse)AuthorFilesLines
2016-03-18[TLS on Darwin] use CXX_FAST_TLS calling convention for tls_init.Manman Ren1-2/+4
This makes sure we don't generate a lot of code to spill/reload CSRs when calling tls_init from the access functions. This helps performance when tls_init is not inlined into the access functions. llvm-svn: 263854
2016-01-15[CodeGen] Attach attributes to thread local wrapper function.Akira Hatanaka1-3/+4
This commit is a follow-up to r251734, r251476, and r249735, which fixes a bug where function attributes were not attached to thread local wrapper functions. rdar://problem/20828324 llvm-svn: 257865
2015-12-17[TLS on Darwin] use CXX_FAST_TLS calling convention for access functions.Manman Ren1-2/+5
Also set nounwind attribute. rdar://problem/9001553 llvm-svn: 255860
2015-11-11[TLS on Darwin] change how we handle globals with linkonce or weak linkage.Manman Ren1-4/+8
This is about how we handle static member of a template. Before this commit, we use internal linkage for the IR thread-local variable, which is inefficient. With this commit, we will start to follow Itanium C++ ABI. rdar://problem/23415206 Reviewed by John McCall. llvm-svn: 252814
2015-09-11[opaque pointer type] update test cases for explicit pointee types on global ↵David Blaikie1-1/+1
aliases llvm-svn: 247380
2015-02-27Update Clang tests to handle explicitly typed load changes in LLVM.David Blaikie1-1/+1
llvm-svn: 230795
2014-07-18Mark C++ reference parameters as dereferenceableHal Finkel1-2/+2
Because references must be initialized using some evaluated expression, they must point to something, and a callee can assume the reference parameter is dereferenceable. Taking advantage of a new attribute just added to LLVM, mark them as such. Because dereferenceability in addrspace(0) implies nonnull in the backend, we don't need both attributes. However, we need to know the size of the object to use the dereferenceable attribute, so for incomplete types we still emit only nonnull. llvm-svn: 213386
2014-05-28Add 'nonnull' parameter or return attribute when producing an llvm pointer ↵Nick Lewycky1-2/+2
type in a function type where the C++ type is a reference. Update the tests. llvm-svn: 209723
2013-08-15CHECK-LABEL-ify some code gen tests to improve diagnostic experience when ↵Stephen Lin1-2/+2
tests fail. llvm-svn: 188447
2013-04-19Implement CodeGen for C++11 thread_local, following the Itanium ABI ↵Richard Smith1-0/+26
specification as discussed on cxx-abi-dev. llvm-svn: 179858