<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 - [ARM] SCE optimization pass hoisting DIV operation outside of is-else BB as a speculative execution"
   href="https://bugs.llvm.org/show_bug.cgi?id=42405">42405</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>[ARM] SCE optimization pass hoisting DIV operation outside of is-else BB as a speculative execution
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>tools
          </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>normal
          </td>
        </tr>

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

        <tr>
          <th>Component</th>
          <td>llc
          </td>
        </tr>

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

        <tr>
          <th>Reporter</th>
          <td>ayman.musa@intel.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvm-bugs@lists.llvm.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Created <span class=""><a href="attachment.cgi?id=22144" name="attach_22144" title="reproducer mir file">attachment 22144</a> <a href="attachment.cgi?id=22144&action=edit" title="reproducer mir file">[details]</a></span>
reproducer mir file

Attached is an MIR test (reproducer.mir) that shows a case where the original
sequence performs the DIV operation only if the divisor is not 0. But after
running MachineCSE pass we can see that the DIV was hoisted outside of the
if-else BBs, what would result in an integer division by zero.

The command line for running the pass is:
llc -mtriple=aarch64-none-linux-gnu -run-pass=machine-cse -asm-verbose=1
-verify-machineinstrs reproducer.mir -o after-pass

Most likely that this bug was introduced in: <a href="https://reviews.llvm.org/rL362901">https://reviews.llvm.org/rL362901</a>.
Owner of the change is already investigating the issue.</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>