<html>
    <head>
      <base href="https://llvm.org/bugs/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - Files created by insert-gcov-profiling pass unusable, errors during execution"
   href="https://llvm.org/bugs/show_bug.cgi?id=26294">26294</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Files created by insert-gcov-profiling pass unusable, errors during execution
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>new-bugs
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>3.7
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>new bugs
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>unassignedbugs@nondot.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>bugs+llvm+org@sebastianhahn.net
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvm-bugs@lists.llvm.org
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Created <span class=""><a href="attachment.cgi?id=15706" name="attach_15706" title="created gcda file">attachment 15706</a> <a href="attachment.cgi?id=15706&action=edit" title="created gcda file">[details]</a></span>
created gcda file

I am trying to build a rust binary with support for coverage analysis. To this
end, I've built a compiler-rt with profiling support and linked it as well as
instructed rustc to use the inclde-gcov-profiling pass ("-C
passes=insert-gcov-profiling  -C link-args=/path/to/libcompiler_rt.a" arguments
for rustc).

When I build my rust program, a .gcno file is produced as expected, and when
running the binary a .gcda file is also created. I get a lot of errors during
.gcda creation, tho:

{{{
profiling: main.gcda: cannot merge previous GCDA file: corrupt arc tag
(0x00000000)
profiling: main.gcda: cannot merge previous GCDA file: corrupt arc tag
(0x00000000)
...
profiling: main.gcda: cannot merge previous GCDA file: corrupt arc tag
(0x726f7461)
profiling: main.gcda: cannot merge previous GCDA file: corrupt arc tag
(0x00000000)
profiling: main.gcda: cannot merge previous GCDA file: corrupt arc tag
(0x00000000)
profiling: main.gcda: cannot merge previous GCDA file: corrupt arc tag
(0x00004565)
profiling: main.gcda: cannot merge previous GCDA file: mismatched number of
counters (26)
profiling: main.gcda: cannot merge previous GCDA file: corrupt arc tag
(0x00000001)
...
profiling: main.gcda: cannot merge previous GCDA file: corrupt arc tag
(0x63655677)
profiling: main.gcda: cannot merge previous GCDA file: corrupt arc tag
(0x55353172)
profiling: main.gcda: cannot merge previous GCDA file: corrupt arc tag
(0x543c6f72)
profiling: main.gcda: cannot merge previous GCDA file: corrupt arc tag
(0x61725f6d)
profiling: main.gcda: cannot merge previous GCDA file: mismatched number of
counters (4)
profiling: main.gcda: cannot merge previous GCDA file: corrupt arc tag
(0x9d6e59a2)
profiling: main.gcda: cannot merge previous GCDA file: corrupt arc tag
(0x00000009)
...
profiling: main.gcda: cannot merge previous GCDA file: corrupt arc tag
(0x64657265)
profiling: main.gcda: cannot merge previous GCDA file: corrupt arc tag
(0x2c4b3c74)
profiling: main.gcda: cannot merge previous GCDA file: corrupt arc tag
(0x324475e5)
profiling: main.gcda: cannot merge previous run count: corrupt object tag
(0x0000000f)
}}}

When using llvm-cov on the created main.gcda file like this: "llvm-cov gcov
main.gcda", I get the following output:

{{{
File checksums do not match: 2401456232 != 3219325286.
Invalid .gcda File!
}}}

I've tried this on both OSX and Linux (both 64bit) and am getting the same
issue on both platforms.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>