<html>
    <head>
      <base href="http://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 --- - Spec2006 403.gcc misscompare runfail with avx512 loop vectorization"
   href="http://llvm.org/bugs/show_bug.cgi?id=22225">22225</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Spec2006 403.gcc misscompare runfail with avx512 loop vectorization
          </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>opt
          </td>
        </tr>

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

        <tr>
          <th>Reporter</th>
          <td>sgvozdar@gmail.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvmbugs@cs.uiuc.edu
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Test 403.gcc from spec2006 started to fail after a commit:

commit 14fb445715551c6eda9146e829d0470550c8fff6
Author: Elena Demikhovsky <<a href="mailto:elena.demikhovsky@intel.com">elena.demikhovsky@intel.com</a>>
Date:   Tue Dec 16 11:50:42 2014 +0000

    Masked Load and Store Intrinsics in loop vectorizer.
    The loop vectorizer optimizes loops containing conditional memory
    accesses by generating masked load and store intrinsics.
    This decision is target dependent.

    <a href="http://reviews.llvm.org/D6527">http://reviews.llvm.org/D6527</a>

Compiler options:
-O2 -ffast-math -static -m32 -mfpmath=sse -march=core-avx2

On -march=slm this test is OK.


LOG:
...
*** Miscompare of 166.s;
32309:          movq    %rbx, %rdi
                movl    $1, %r9d
            ^
32311:          movl    $.LC154, %esi
                movq    %rbx, %rdi
            ^
32312:          movl    $.LC155, %edx
                movl    $.LC154, %esi
                    ^
32313:          movl    $max_insts, %ecx
                movl    $.LC155, %edx
               ^
32314:          movl    $1, %r9d
                movl    $max_insts, %ecx
               ^
32318:          xorl    %r8d, %r8d
                movl    $.LC156, %esi
         ^
32319:          movl    $.LC156, %esi
                movl    $.LC157, %edx
                    ^
32320:          movl    $.LC157, %edx
                movl    $fastfwd_count, %ecx
               ^
32321:          movl    $fastfwd_count, %ecx
                movq    $0, (%rsp)
            ^
32322:          movl    $1, %r9d
                call    opt_reg_int
         ^

Sergey Gvozdarev
===============
Software Engineer
Intel Compiler Team
Intel</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>