<html>
    <head>
      <base href="https://bugs.llvm.org/">
    </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 - Regression(r347379): __tsan_{read,write}8 are ~10% slower"
   href="https://bugs.llvm.org/show_bug.cgi?id=39748">39748</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Regression(r347379): __tsan_{read,write}8 are ~10% slower
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>libraries
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>trunk
          </td>
        </tr>

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

        <tr>
          <th>OS</th>
          <td>Linux
          </td>
        </tr>

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

        <tr>
          <th>Severity</th>
          <td>enhancement
          </td>
        </tr>

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

        <tr>
          <th>Component</th>
          <td>Global Analyses
          </td>
        </tr>

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

        <tr>
          <th>Reporter</th>
          <td>peter@pcc.me.uk
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvm-bugs@lists.llvm.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>It seems that r347379 has had the effect of making the __tsan_read8 and
__tsan_write8 functions about 10% slower. These functions are performance
critical since they are called on every 64-bit load and store in a
tsan-instrumented function. This was caught by the
sanitizer-x86_64-linux-autoconf bot:
<a href="http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-autoconf/builds/31402/steps/tsan%20analyze/logs/stdio">http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-autoconf/builds/31402/steps/tsan%20analyze/logs/stdio</a>

I can observe the regression on my local machine like this:

$ projects/compiler-rt/lib/tsan/tests/rtl/TsanRtlTest-x86_64-Test 
--gtest_also_run_disabled_tests --gtest_filter=DISABLED_BENCH.Mop8*
Note: Google Test filter = DISABLED_BENCH.Mop8*
[==========] Running 3 tests from 1 test case.
[----------] Global test environment set-up.
[----------] 3 tests from DISABLED_BENCH
[ RUN      ] DISABLED_BENCH.Mop8
[       OK ] DISABLED_BENCH.Mop8 (74 ms)
[ RUN      ] DISABLED_BENCH.Mop8Read
[       OK ] DISABLED_BENCH.Mop8Read (820 ms)
[ RUN      ] DISABLED_BENCH.Mop8Write
[       OK ] DISABLED_BENCH.Mop8Write (817 ms)
[----------] 3 tests from DISABLED_BENCH (1711 ms total)

[----------] Global test environment tear-down
[==========] 3 tests from 1 test case ran. (1711 ms total)
[  PASSED  ] 3 tests.
$ projects/compiler-rt/lib/tsan/tests/rtl/TsanRtlTest-x86_64-Test1 
--gtest_also_run_disabled_tests --gtest_filter=DISABLED_BENCH.Mop8*
Note: Google Test filter = DISABLED_BENCH.Mop8*
[==========] Running 3 tests from 1 test case.
[----------] Global test environment set-up.
[----------] 3 tests from DISABLED_BENCH
[ RUN      ] DISABLED_BENCH.Mop8
[       OK ] DISABLED_BENCH.Mop8 (91 ms)
[ RUN      ] DISABLED_BENCH.Mop8Read
[       OK ] DISABLED_BENCH.Mop8Read (905 ms)
[ RUN      ] DISABLED_BENCH.Mop8Write
[       OK ] DISABLED_BENCH.Mop8Write (889 ms)
[----------] 3 tests from DISABLED_BENCH (1885 ms total)

[----------] Global test environment tear-down
[==========] 3 tests from 1 test case ran. (1885 ms total)
[  PASSED  ] 3 tests.

and the timings are reasonably consistent between runs.</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>