<html>
    <head>
      <base href="https://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 --- - arm_neon_intrinsics.c test fails"
   href="https://llvm.org/bugs/show_bug.cgi?id=26894">26894</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>arm_neon_intrinsics.c test fails
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>clang
          </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>LLVM Codegen
          </td>
        </tr>

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

        <tr>
          <th>Reporter</th>
          <td>rtrieu@google.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvm-bugs@lists.llvm.org, t.p.northover@gmail.com
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr></table>
      <p>
        <div>
        <pre>arm_neon_intrinsics.c test has two problems.  The last change to this test was
in r263048.  This test is marked "REQUIRES: long_tests" which hides this test
from most configs.

1) The RUN line is incorrect:
 // RUN: %clang_cc1 -triple thumbv7s-apple-darwin -target-abi apcs-gnu\
 // RUN:  -target-cpu swift -ffreestanding -emit-llvm -S -o - %s\
 // RUN:  opt -S -mem2reg | FileCheck %s
Clang doesn't need the -S flag, and opt is an argument to Clang due to a
missing pipe.  This is fixed to:
 // RUN: %clang_cc1 -triple thumbv7s-apple-darwin -target-abi apcs-gnu\
 // RUN:  -target-cpu swift -ffreestanding -emit-llvm -o - %s\
 // RUN:  | opt -S -mem2reg | FileCheck %s

2)
Even with the fixed RUN line, the FileCheck fails due to multiple errors.  Here
is the start of it:

llvm/tools/clang/test/CodeGen/arm_neon_intrinsics.c:9:11: error: expected
string not found in input
// CHECK: [[VABD_I_I:%.*]] = call <8 x i8> @llvm.aarch64.neon.sabd.v8i8(<8 x
i8> %b, <8 x i8> %c) #4
          ^
<stdin>:74:1: note: scanning from here
entry:
^
<stdin>:75:9: note: possible intended match here
 %vabd_v.i.i = call <8 x i8> @llvm.arm.neon.vabds.v8i8(<8 x i8> %b, <8 x i8>
%c) #4
        ^
llvm/tools/clang/test/CodeGen/arm_neon_intrinsics.c:21:11: error: expected
string not found in input
// CHECK: [[VABD2_I_I:%.*]] = call <4 x i16> @llvm.aarch64.neon.sabd.v4i16(<4 x
i16> [[VABD_I_I]], <4 x i16> [[VABD1_I_I]]) #4
          ^
<stdin>:87:2: note: scanning from here
 %vabd_v2.i.i = call <4 x i16> @llvm.arm.neon.vabds.v4i16(<4 x i16>
%vabd_v.i.i, <4 x i16> %vabd_v1.i.i) #4
 ^
<stdin>:87:2: note: with variable "VABD_I_I" equal to "%vabd_v.i.i"
 %vabd_v2.i.i = call <4 x i16> @llvm.arm.neon.vabds.v4i16(<4 x i16>
%vabd_v.i.i, <4 x i16> %vabd_v1.i.i) #4
 ^
<stdin>:87:2: note: with variable "VABD1_I_I" equal to "%vabd_v1.i.i"
 %vabd_v2.i.i = call <4 x i16> @llvm.arm.neon.vabds.v4i16(<4 x i16>
%vabd_v.i.i, <4 x i16> %vabd_v1.i.i) #4
 ^
<stdin>:87:10: note: possible intended match here
 %vabd_v2.i.i = call <4 x i16> @llvm.arm.neon.vabds.v4i16(<4 x i16>
%vabd_v.i.i, <4 x i16> %vabd_v1.i.i) #4
         ^
llvm/tools/clang/test/CodeGen/arm_neon_intrinsics.c:33:11: error: expected
string not found in input
// CHECK: [[VABD2_I_I:%.*]] = call <2 x i32> @llvm.aarch64.neon.sabd.v2i32(<2 x
i32> [[VABD_I_I]], <2 x i32> [[VABD1_I_I]]) #4
          ^
<stdin>:101:2: note: scanning from here
 %vabd_v2.i.i = call <2 x i32> @llvm.arm.neon.vabds.v2i32(<2 x i32>
%vabd_v.i.i, <2 x i32> %vabd_v1.i.i) #4
 ^
<stdin>:101:2: note: with variable "VABD_I_I" equal to "%vabd_v.i.i"
 %vabd_v2.i.i = call <2 x i32> @llvm.arm.neon.vabds.v2i32(<2 x i32>
%vabd_v.i.i, <2 x i32> %vabd_v1.i.i) #4
 ^
<stdin>:101:2: note: with variable "VABD1_I_I" equal to "%vabd_v1.i.i"
 %vabd_v2.i.i = call <2 x i32> @llvm.arm.neon.vabds.v2i32(<2 x i32>
%vabd_v.i.i, <2 x i32> %vabd_v1.i.i) #4
 ^
<stdin>:101:10: note: possible intended match here
 %vabd_v2.i.i = call <2 x i32> @llvm.arm.neon.vabds.v2i32(<2 x i32>
%vabd_v.i.i, <2 x i32> %vabd_v1.i.i) #4
         ^</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>