<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 - "No live value at use" assertion failure for atomic store"
   href="https://bugs.llvm.org/show_bug.cgi?id=37296">37296</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>"No live value at use" assertion failure for atomic store
          </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>All
          </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>Common Code Generator Code
          </td>
        </tr>

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

        <tr>
          <th>Reporter</th>
          <td>smeenai@fb.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>compnerd@compnerd.org, llvm-bugs@lists.llvm.org, matze@braunis.de
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Created <span class=""><a href="attachment.cgi?id=20250" name="attach_20250" title="Reduced source and IR">attachment 20250</a> <a href="attachment.cgi?id=20250&action=edit" title="Reduced source and IR">[details]</a></span>
Reduced source and IR

% bin/clang -cc1 -triple i686--windows-msvc19.11.0 -emit-obj -target-cpu
pentium4 -Os -fexceptions vni.mm
clang: ../../lib/CodeGen/MachineScheduler.cpp:1160: void
llvm::ScheduleDAGMILive::updatePressureDiffs(llvm::ArrayRef<llvm::RegisterMaskPair>):
Assertion `VNI && "No live value at use."' failed.

The IR is lightly reduced from the source file, and just running llc on it with
no further arguments should also trigger the assertion (since llc defaults to
-O2). Seems like an MIR level issue, but I'm not familiar enough with MIR to
attempt to reduce at that level.

The reduction is pretty sensitive in that changing any part of it seems to make
the assertion go away, but from running llc with -debug-only machine-scheduler,
the atomic store seems to be the culprit (and making that store non-atomic in
the IR indeed makes the assertion failure go away).</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>