<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 - wasm32: Failure to select what looks like a simd instruction?"
   href="https://bugs.llvm.org/show_bug.cgi?id=39275">39275</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>wasm32: Failure to select what looks like a simd instruction?
          </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>Windows NT
          </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>Backend: WebAssembly
          </td>
        </tr>

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

        <tr>
          <th>Reporter</th>
          <td>alex@crichton.co
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvm-bugs@lists.llvm.org, tlively@google.com
          </td>
        </tr></table>
      <p>
        <div>
        <pre>I unfortunately haven't been able to reduce this much but compiling crates in
Rust with the `simd128` feature enabled causes a few to fail to compile. This
is presumably because with access to SIMD vectors LLVM will either
auto-vectorize or attempt to optimize loads/stores, but none of these crates
started with explicit SIMD (and the failures to codegen are limited to
optimized mode in Rust)

The first failure is this --
<a href="https://gist.github.com/alexcrichton/e902f1bd3ca5acc8a4b7c0902d5cb15c">https://gist.github.com/alexcrichton/e902f1bd3ca5acc8a4b7c0902d5cb15c</a> --
bytecode file. While `bugpoint` was able to reduce it the `bugpoint` reduction
looked a bit different than the original failure. I can try to reduce it more
though if that's helpful! (running `llc` over the file in that gist should
crash)

The second is this file --
<a href="https://gist.github.com/alexcrichton/d6d8556e11210ad02bc7348566c93826">https://gist.github.com/alexcrichton/d6d8556e11210ad02bc7348566c93826</a> -- which
looks similar to the first. This time `llc` requires the `-thread-model=single`
and `-wasm-enable-unimplemented-simd` flags to reproduce</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>