llvm with tablegen backend for capstone disassembler
Go to file
Duncan P. N. Exon Smith 775c178a90 PGO: Add explicit static initialization
Instead of relying on explicit static initialization from translation
units, create a new file, InstrProfilingRuntime.cc, with an
__llvm_pgo_runtime variable.  After this commit (and its pair in clang),
the driver will create a use of this variable.  Unless the user defines
their own version, the new object file will get pulled in, including
that C++ static initialization that calls
__llvm_pgo_register_write_atexit.

The result is that, at least on Darwin, static initialization typically
consists of a single function call, which registers a writeout functino
atexit.  Furthermore, users can skip even this behaviour by defining
their own __llvm_pgo_runtime.

<rdar://problem/15943240>

llvm-svn: 204380
2014-03-20 19:23:53 +00:00
clang PGO: Remove explicit static initialization 2014-03-20 19:23:46 +00:00
clang-tools-extra ClangTidyContext: Don't use initializer on non-static member. 2014-03-20 10:53:03 +00:00
compiler-rt PGO: Add explicit static initialization 2014-03-20 19:23:53 +00:00
debuginfo-tests relax testcase for LLDB output format compatibility. 2014-03-19 23:06:18 +00:00
libclc Fix build since r202052 2014-02-24 21:31:56 +00:00
libcxx Implement N3891: A proposal to rename shared_mutex to shared_timed_mutex 2014-03-17 20:19:44 +00:00
libcxxabi Simplify. 2014-03-20 01:28:28 +00:00
lld [Mips] Reduce the number of 'const' casts. 2014-03-20 16:26:25 +00:00
lldb Add support for dumping DW_LNE_set_discriminator line table extended entries. 2014-03-20 18:31:11 +00:00
llvm Typo. 2014-03-20 19:16:20 +00:00
openmp Revert commit (testing commit hook). 2014-03-04 18:06:04 +00:00
polly [www] announce static links of polly in tools 2014-03-19 21:31:09 +00:00