aboutsummaryrefslogtreecommitdiff
path: root/runtime/libprofile/GCDAProfiling.c
AgeCommit message (Collapse)Author
2013-03-07Remove GCDAProfiling.c. This copy is old, the copy in compiler-rt is newer andNick Lewycky
is the one that should be used. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176608 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-27Forgot that this file needs to be C89 not C99 thanks to MSVC. No functionalityNick Lewycky
change! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176176 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-27In GCC 4.7, function names are now forbidden from .gcda files. Support this byNick Lewycky
passing a null pointer to the function name in to GCDAProfiling, and add another switch onto GCOVProfiling. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176173 91177308-0d34-0410-b5e6-96231b3b80d8
2012-06-15Free the allocated filename. Found by clang static analyzer.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158513 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-25Small code cleanup. No functionality change.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157502 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-25Open in read/write mode, creating the file if it doesn't exist.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157501 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-25Early-continue.Reducing indentation.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157451 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-25Don't call exit from a runtime.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157450 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-28Use the correct filename for the error message.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153564 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-28Use Nakamura's suggestion of bypassing using 'filename' and just the ↵Bill Wendling
pointers directly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153558 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-27MSVC doesn't like the mixing of declarations and statements in a .c file.Francois Pichet
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153549 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-27Try to use the CWD if the path to the GCDA output is not available (e.g., theBill Wendling
executable has been moved to another machine). If that's not available (read-only or something), then exit gracefully. <rdar://problem/11111686> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153538 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-08Include direct.h for _mkdir on mingw32 too.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141495 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-28Use version 402 for the GCDA files when compiling for Apple.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136369 91177308-0d34-0410-b5e6-96231b3b80d8
2011-06-23Fix build for (some versions of?) MinGW. Patch by Ruben Van Boxem.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133741 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-26Fix MSVC warning regarding mkdir function usage.Francois Pichet
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132109 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-05The computation of string length is not that complicated. Fix it, again. :)Nick Lewycky
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130967 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-05Update the gcov version used slightly, to make it stop causing modern gcov's toNick Lewycky
crash. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130911 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-04Create the parent directories to place the .gcda files in if they don't exist.Nick Lewycky
That's kinda weird because the .gcno files are supposed to already be there, but libgcov does this and somehow Google has managed to depend on it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130879 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-04Fix crash when not setting GCOV_PREFIX.Nick Lewycky
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130834 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-28Only read *predecessor once so as to fix a theoretical issue where it changesNick Lewycky
between two reads (threading). Fix an off-by-one in the indirect counter table that I meant to revert after an earlier experiment. Whoops! Implement GCOV_PREFIX. Doesn't handle GCOV_PREFIX_STRIP yet. Fix an off-by-one in string emission. Extra whoops! Tolerate DISubprograms that have null Function*'s attached to them. I don't yet understand what this means, but it happens when you have a global static with a non-trivial constructor/destructor. Fix a crash on switch statements with a single successor (default-only). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130443 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-26Rename everything to follow LLVM style ... I think.Nick Lewycky
Add support for switch and indirectbr edges. This works by densely numbering all blocks which have such terminators, and then separately numbering the possible successors. The predecessors write down a number, the successor knows its own number (as a ConstantInt) and sends that and the pointer to the number the predecessor wrote down to the runtime, who looks up the counter in a per-function table. Coverage data should now be functional, but I haven't tested it on anything other than my 2-file synthetic test program for coverage. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130186 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-16Write out uint64_t as i{0..32},i{33..64} instead of i{0..32},0.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129638 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-16Don't use C++ comments in C code.Nick Lewycky
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129637 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-16Rename LineProfiling to GCOVProfiling to more accurately represent what itNick Lewycky
does. Also mostly implement it. Still a work-in-progress, but generates legal output on crafted test cases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129630 91177308-0d34-0410-b5e6-96231b3b80d8