[clang] [CIR][AArch64] Lower NEON vuzp1/2 intrinsics (PR #195527)

via cfe-commits cfe-commits at lists.llvm.org
Sun May 3 07:25:13 PDT 2026


github-actions[bot] wrote:

<!--PREMERGE ADVISOR COMMENT: Windows-->
# :window: Windows x64 Test Results

* 53769 tests passed
* 1173 tests skipped
* 1 test failed

## Failed Tests
(click on a test name to see its output)

### Clang
<details>
<summary>Clang.CodeGen/AArch64/neon-perm.c</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
c:\_work\llvm-project\llvm-project\build\bin\clang.exe -cc1 -internal-isystem C:\_work\llvm-project\llvm-project\build\lib\clang\23\include -nostdsysteminc -triple arm64-none-linux-gnu -target-feature +neon  -disable-O0-optnone -emit-llvm -o - C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c | c:\_work\llvm-project\llvm-project\build\bin\opt.exe -S -passes=mem2reg,sroa | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\clang.exe' -cc1 -internal-isystem 'C:\_work\llvm-project\llvm-project\build\lib\clang\23\include' -nostdsysteminc -triple arm64-none-linux-gnu -target-feature +neon -disable-O0-optnone -emit-llvm -o - 'C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c'
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\opt.exe' -S -passes=mem2reg,sroa
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:10:75: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i8> noundef [[A:%.*]], <8 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                           ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:20:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <16 x i8> noundef [[A:%.*]], <16 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:30:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x i16> noundef [[A:%.*]], <4 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:40:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i16> noundef [[A:%.*]], <8 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:50:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <2 x i32> noundef [[A:%.*]], <2 x i32> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:60:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x i32> noundef [[A:%.*]], <4 x i32> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:70:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <2 x i64> noundef [[A:%.*]], <2 x i64> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:80:75: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i8> noundef [[A:%.*]], <8 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                           ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:90:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <16 x i8> noundef [[A:%.*]], <16 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:100:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x i16> noundef [[A:%.*]], <4 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:110:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i16> noundef [[A:%.*]], <8 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:120:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <2 x i32> noundef [[A:%.*]], <2 x i32> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:130:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x i32> noundef [[A:%.*]], <4 x i32> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:140:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <2 x i64> noundef [[A:%.*]], <2 x i64> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:150:81: error: undefined variable: ATTR0
# | // CHECK-SAME: <2 x float> noundef [[A:%.*]], <2 x float> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                                 ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:160:81: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x float> noundef [[A:%.*]], <4 x float> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                                 ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:170:83: error: undefined variable: ATTR0
# | // CHECK-SAME: <2 x double> noundef [[A:%.*]], <2 x double> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                                   ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:180:75: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i8> noundef [[A:%.*]], <8 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                           ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:190:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <16 x i8> noundef [[A:%.*]], <16 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:200:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x i16> noundef [[A:%.*]], <4 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:210:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i16> noundef [[A:%.*]], <8 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:220:75: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i8> noundef [[A:%.*]], <8 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                           ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:230:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <16 x i8> noundef [[A:%.*]], <16 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:240:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x i16> noundef [[A:%.*]], <4 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:250:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i16> noundef [[A:%.*]], <8 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:260:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <2 x i32> noundef [[A:%.*]], <2 x i32> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:270:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x i32> noundef [[A:%.*]], <4 x i32> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:280:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <2 x i64> noundef [[A:%.*]], <2 x i64> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:290:75: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i8> noundef [[A:%.*]], <8 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                           ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:300:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <16 x i8> noundef [[A:%.*]], <16 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:310:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x i16> noundef [[A:%.*]], <4 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:320:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i16> noundef [[A:%.*]], <8 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:330:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <2 x i32> noundef [[A:%.*]], <2 x i32> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:340:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x i32> noundef [[A:%.*]], <4 x i32> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:350:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <2 x i64> noundef [[A:%.*]], <2 x i64> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:360:81: error: undefined variable: ATTR0
# | // CHECK-SAME: <2 x float> noundef [[A:%.*]], <2 x float> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                                 ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:370:81: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x float> noundef [[A:%.*]], <4 x float> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                                 ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:380:83: error: undefined variable: ATTR0
# | // CHECK-SAME: <2 x double> noundef [[A:%.*]], <2 x double> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                                   ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:390:75: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i8> noundef [[A:%.*]], <8 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                           ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:400:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <16 x i8> noundef [[A:%.*]], <16 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:410:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x i16> noundef [[A:%.*]], <4 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:420:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i16> noundef [[A:%.*]], <8 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:430:75: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i8> noundef [[A:%.*]], <8 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                           ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:448:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x i16> noundef [[A:%.*]], <4 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:470:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <2 x i32> noundef [[A:%.*]], <2 x i32> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:492:75: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i8> noundef [[A:%.*]], <8 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                           ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:510:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x i16> noundef [[A:%.*]], <4 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:532:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <2 x i32> noundef [[A:%.*]], <2 x i32> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:554:81: error: undefined variable: ATTR0
# | // CHECK-SAME: <2 x float> noundef [[A:%.*]], <2 x float> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                                 ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:578:75: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i8> noundef [[A:%.*]], <8 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                           ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:596:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x i16> noundef [[A:%.*]], <4 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:618:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <16 x i8> noundef [[A:%.*]], <16 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:636:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i16> noundef [[A:%.*]], <8 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:658:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x i32> noundef [[A:%.*]], <4 x i32> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:680:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <16 x i8> noundef [[A:%.*]], <16 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:698:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i16> noundef [[A:%.*]], <8 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:720:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x i32> noundef [[A:%.*]], <4 x i32> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:742:81: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x float> noundef [[A:%.*]], <4 x float> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                                 ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:766:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <16 x i8> noundef [[A:%.*]], <16 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:784:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i16> noundef [[A:%.*]], <8 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:806:75: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i8> noundef [[A:%.*]], <8 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                           ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:824:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x i16> noundef [[A:%.*]], <4 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:846:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <2 x i32> noundef [[A:%.*]], <2 x i32> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:868:75: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i8> noundef [[A:%.*]], <8 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                           ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:886:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x i16> noundef [[A:%.*]], <4 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:908:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <2 x i32> noundef [[A:%.*]], <2 x i32> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:930:81: error: undefined variable: ATTR0
# | // CHECK-SAME: <2 x float> noundef [[A:%.*]], <2 x float> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                                 ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:954:75: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i8> noundef [[A:%.*]], <8 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                           ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:972:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x i16> noundef [[A:%.*]], <4 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:994:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <16 x i8> noundef [[A:%.*]], <16 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:1012:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i16> noundef [[A:%.*]], <8 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:1034:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x i32> noundef [[A:%.*]], <4 x i32> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:1056:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <16 x i8> noundef [[A:%.*]], <16 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:1074:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i16> noundef [[A:%.*]], <8 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:1096:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x i32> noundef [[A:%.*]], <4 x i32> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:1118:81: error: undefined variable: ATTR0
# | // CHECK-SAME: <4 x float> noundef [[A:%.*]], <4 x float> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                                 ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:1142:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <16 x i8> noundef [[A:%.*]], <16 x i8> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c:1160:77: error: undefined variable: ATTR0
# | // CHECK-SAME: <8 x i16> noundef [[A:%.*]], <8 x i16> noundef [[B:%.*]]) #[[ATTR0]] {
# |                                                                             ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\clang\test\CodeGen\AArch64\neon-perm.c
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |              .
# |              .
# |              .
# |             21: %struct.float32x4x2_t = type { [2 x <4 x float>] } 
# |             22: %struct.poly8x16x2_t = type { [2 x <16 x i8>] } 
# |             23: %struct.poly16x8x2_t = type { [2 x <8 x i16>] } 
# |             24:  
# |             25: ; Function Attrs: noinline nounwind 
# |             26: define dso_local <8 x i8> @test_vtrn1_s8(<8 x i8> noundef %a, <8 x i8> noundef %b) #0 { 
# | same:10'0                                                X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:10'1                                                                                                undefined variable: ATTR0
# |             27: entry: 
# | same:10'0       ~~~~~~~
# |             28:  %shuffle.i = shufflevector <8 x i8> %a, <8 x i8> %b, <8 x i32> <i32 0, i32 8, i32 2, i32 10, i32 4, i32 12, i32 6, i32 14> 
# | same:10'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             29:  ret <8 x i8> %shuffle.i 
# | same:10'0       ~~~~~~~~~~~~~~~~~~~~~~~~~
# |             30: } 
# | same:10'0       ~~
# |             31:  
# | same:10'0       ~
# |             32: ; Function Attrs: noinline nounwind 
# | same:10'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             33: define dso_local <16 x i8> @test_vtrn1q_s8(<16 x i8> noundef %a, <16 x i8> noundef %b) #0 { 
# | same:10'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:20'0                                                  X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:20'1                                                                                                    undefined variable: ATTR0
# |             34: entry: 
# | same:20'0       ~~~~~~~
# |             35:  %shuffle.i = shufflevector <16 x i8> %a, <16 x i8> %b, <16 x i32> <i32 0, i32 16, i32 2, i32 18, i32 4, i32 20, i32 6, i32 22, i32 8, i32 24, i32 10, i32 26, i32 12, i32 28, i32 14, i32 30> 
# | same:20'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             36:  ret <16 x i8> %shuffle.i 
# | same:20'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             37: } 
# | same:20'0       ~~
# |             38:  
# | same:20'0       ~
# |             39: ; Function Attrs: noinline nounwind 
# | same:20'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             40: define dso_local <4 x i16> @test_vtrn1_s16(<4 x i16> noundef %a, <4 x i16> noundef %b) #0 { 
# | same:20'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:30'0                                                  X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:30'1                                                                                                    undefined variable: ATTR0
# |             41: entry: 
# | same:30'0       ~~~~~~~
# |             42:  %shuffle.i = shufflevector <4 x i16> %a, <4 x i16> %b, <4 x i32> <i32 0, i32 4, i32 2, i32 6> 
# | same:30'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             43:  ret <4 x i16> %shuffle.i 
# | same:30'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             44: } 
# | same:30'0       ~~
# |             45:  
# | same:30'0       ~
# |             46: ; Function Attrs: noinline nounwind 
# | same:30'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             47: define dso_local <8 x i16> @test_vtrn1q_s16(<8 x i16> noundef %a, <8 x i16> noundef %b) #0 { 
# | same:30'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:40'0                                                   X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:40'1                                                                                                     undefined variable: ATTR0
# |             48: entry: 
# | same:40'0       ~~~~~~~
# |             49:  %shuffle.i = shufflevector <8 x i16> %a, <8 x i16> %b, <8 x i32> <i32 0, i32 8, i32 2, i32 10, i32 4, i32 12, i32 6, i32 14> 
# | same:40'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             50:  ret <8 x i16> %shuffle.i 
# | same:40'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             51: } 
# | same:40'0       ~~
# |             52:  
# | same:40'0       ~
# |             53: ; Function Attrs: noinline nounwind 
# | same:40'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             54: define dso_local <2 x i32> @test_vtrn1_s32(<2 x i32> noundef %a, <2 x i32> noundef %b) #0 { 
# | same:40'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:50'0                                                  X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:50'1                                                                                                    undefined variable: ATTR0
# |             55: entry: 
# | same:50'0       ~~~~~~~
# |             56:  %shuffle.i = shufflevector <2 x i32> %a, <2 x i32> %b, <2 x i32> <i32 0, i32 2> 
# | same:50'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             57:  ret <2 x i32> %shuffle.i 
# | same:50'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             58: } 
# | same:50'0       ~~
# |             59:  
# | same:50'0       ~
# |             60: ; Function Attrs: noinline nounwind 
# | same:50'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             61: define dso_local <4 x i32> @test_vtrn1q_s32(<4 x i32> noundef %a, <4 x i32> noundef %b) #0 { 
# | same:50'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:60'0                                                   X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:60'1                                                                                                     undefined variable: ATTR0
# |             62: entry: 
# | same:60'0       ~~~~~~~
# |             63:  %shuffle.i = shufflevector <4 x i32> %a, <4 x i32> %b, <4 x i32> <i32 0, i32 4, i32 2, i32 6> 
# | same:60'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             64:  ret <4 x i32> %shuffle.i 
# | same:60'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             65: } 
# | same:60'0       ~~
# |             66:  
# | same:60'0       ~
# |             67: ; Function Attrs: noinline nounwind 
# | same:60'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             68: define dso_local <2 x i64> @test_vtrn1q_s64(<2 x i64> noundef %a, <2 x i64> noundef %b) #0 { 
# | same:60'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:70'0                                                   X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:70'1                                                                                                     undefined variable: ATTR0
# |             69: entry: 
# | same:70'0       ~~~~~~~
# |             70:  %shuffle.i = shufflevector <2 x i64> %a, <2 x i64> %b, <2 x i32> <i32 0, i32 2> 
# | same:70'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             71:  ret <2 x i64> %shuffle.i 
# | same:70'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             72: } 
# | same:70'0       ~~
# |             73:  
# | same:70'0       ~
# |             74: ; Function Attrs: noinline nounwind 
# | same:70'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             75: define dso_local <8 x i8> @test_vtrn1_u8(<8 x i8> noundef %a, <8 x i8> noundef %b) #0 { 
# | same:70'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:80'0                                                X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:80'1                                                                                                undefined variable: ATTR0
# |             76: entry: 
# | same:80'0       ~~~~~~~
# |             77:  %shuffle.i = shufflevector <8 x i8> %a, <8 x i8> %b, <8 x i32> <i32 0, i32 8, i32 2, i32 10, i32 4, i32 12, i32 6, i32 14> 
# | same:80'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             78:  ret <8 x i8> %shuffle.i 
# | same:80'0       ~~~~~~~~~~~~~~~~~~~~~~~~~
# |             79: } 
# | same:80'0       ~~
# |             80:  
# | same:80'0       ~
# |             81: ; Function Attrs: noinline nounwind 
# | same:80'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             82: define dso_local <16 x i8> @test_vtrn1q_u8(<16 x i8> noundef %a, <16 x i8> noundef %b) #0 { 
# | same:80'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:90'0                                                  X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:90'1                                                                                                    undefined variable: ATTR0
# |             83: entry: 
# | same:90'0       ~~~~~~~
# |             84:  %shuffle.i = shufflevector <16 x i8> %a, <16 x i8> %b, <16 x i32> <i32 0, i32 16, i32 2, i32 18, i32 4, i32 20, i32 6, i32 22, i32 8, i32 24, i32 10, i32 26, i32 12, i32 28, i32 14, i32 30> 
# | same:90'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             85:  ret <16 x i8> %shuffle.i 
# | same:90'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             86: } 
# | same:90'0       ~~
# |             87:  
# | same:90'0       ~
# |             88: ; Function Attrs: noinline nounwind 
# | same:90'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             89: define dso_local <4 x i16> @test_vtrn1_u16(<4 x i16> noundef %a, <4 x i16> noundef %b) #0 { 
# | same:90'0       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:100'0                                                 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:100'1                                                                                                   undefined variable: ATTR0
# |             90: entry: 
# | same:100'0      ~~~~~~~
# |             91:  %shuffle.i = shufflevector <4 x i16> %a, <4 x i16> %b, <4 x i32> <i32 0, i32 4, i32 2, i32 6> 
# | same:100'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             92:  ret <4 x i16> %shuffle.i 
# | same:100'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             93: } 
# | same:100'0      ~~
# |             94:  
# | same:100'0      ~
# |             95: ; Function Attrs: noinline nounwind 
# | same:100'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             96: define dso_local <8 x i16> @test_vtrn1q_u16(<8 x i16> noundef %a, <8 x i16> noundef %b) #0 { 
# | same:100'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:110'0                                                  X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:110'1                                                                                                    undefined variable: ATTR0
# |             97: entry: 
# | same:110'0      ~~~~~~~
# |             98:  %shuffle.i = shufflevector <8 x i16> %a, <8 x i16> %b, <8 x i32> <i32 0, i32 8, i32 2, i32 10, i32 4, i32 12, i32 6, i32 14> 
# | same:110'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             99:  ret <8 x i16> %shuffle.i 
# | same:110'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            100: } 
# | same:110'0      ~~
# |            101:  
# | same:110'0      ~
# |            102: ; Function Attrs: noinline nounwind 
# | same:110'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            103: define dso_local <2 x i32> @test_vtrn1_u32(<2 x i32> noundef %a, <2 x i32> noundef %b) #0 { 
# | same:110'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:120'0                                                 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:120'1                                                                                                   undefined variable: ATTR0
# |            104: entry: 
# | same:120'0      ~~~~~~~
# |            105:  %shuffle.i = shufflevector <2 x i32> %a, <2 x i32> %b, <2 x i32> <i32 0, i32 2> 
# | same:120'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            106:  ret <2 x i32> %shuffle.i 
# | same:120'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            107: } 
# | same:120'0      ~~
# |            108:  
# | same:120'0      ~
# |            109: ; Function Attrs: noinline nounwind 
# | same:120'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            110: define dso_local <4 x i32> @test_vtrn1q_u32(<4 x i32> noundef %a, <4 x i32> noundef %b) #0 { 
# | same:120'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:130'0                                                  X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:130'1                                                                                                    undefined variable: ATTR0
# |            111: entry: 
# | same:130'0      ~~~~~~~
# |            112:  %shuffle.i = shufflevector <4 x i32> %a, <4 x i32> %b, <4 x i32> <i32 0, i32 4, i32 2, i32 6> 
# | same:130'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            113:  ret <4 x i32> %shuffle.i 
# | same:130'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            114: } 
# | same:130'0      ~~
# |            115:  
# | same:130'0      ~
# |            116: ; Function Attrs: noinline nounwind 
# | same:130'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            117: define dso_local <2 x i64> @test_vtrn1q_u64(<2 x i64> noundef %a, <2 x i64> noundef %b) #0 { 
# | same:130'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:140'0                                                  X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:140'1                                                                                                    undefined variable: ATTR0
# |            118: entry: 
# | same:140'0      ~~~~~~~
# |            119:  %shuffle.i = shufflevector <2 x i64> %a, <2 x i64> %b, <2 x i32> <i32 0, i32 2> 
# | same:140'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            120:  ret <2 x i64> %shuffle.i 
# | same:140'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            121: } 
# | same:140'0      ~~
# |            122:  
# | same:140'0      ~
# |            123: ; Function Attrs: noinline nounwind 
# | same:140'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            124: define dso_local <2 x float> @test_vtrn1_f32(<2 x float> noundef %a, <2 x float> noundef %b) #0 { 
# | same:140'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:150'0                                                   X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:150'1                                                                                                         undefined variable: ATTR0
# |            125: entry: 
# | same:150'0      ~~~~~~~
# |            126:  %shuffle.i = shufflevector <2 x float> %a, <2 x float> %b, <2 x i32> <i32 0, i32 2> 
# | same:150'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            127:  ret <2 x float> %shuffle.i 
# | same:150'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            128: } 
# | same:150'0      ~~
# |            129:  
# | same:150'0      ~
# |            130: ; Function Attrs: noinline nounwind 
# | same:150'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            131: define dso_local <4 x float> @test_vtrn1q_f32(<4 x float> noundef %a, <4 x float> noundef %b) #0 { 
# | same:150'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:160'0                                                    X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:160'1                                                                                                          undefined variable: ATTR0
# |            132: entry: 
# | same:160'0      ~~~~~~~
# |            133:  %shuffle.i = shufflevector <4 x float> %a, <4 x float> %b, <4 x i32> <i32 0, i32 4, i32 2, i32 6> 
# | same:160'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            134:  ret <4 x float> %shuffle.i 
# | same:160'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            135: } 
# | same:160'0      ~~
# |            136:  
# | same:160'0      ~
# |            137: ; Function Attrs: noinline nounwind 
# | same:160'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            138: define dso_local <2 x double> @test_vtrn1q_f64(<2 x double> noundef %a, <2 x double> noundef %b) #0 { 
# | same:160'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:170'0                                                     X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:170'1                                                                                                             undefined variable: ATTR0
# |            139: entry: 
# | same:170'0      ~~~~~~~
# |            140:  %shuffle.i = shufflevector <2 x double> %a, <2 x double> %b, <2 x i32> <i32 0, i32 2> 
# | same:170'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            141:  ret <2 x double> %shuffle.i 
# | same:170'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            142: } 
# | same:170'0      ~~
# |            143:  
# | same:170'0      ~
# |            144: ; Function Attrs: noinline nounwind 
# | same:170'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            145: define dso_local <8 x i8> @test_vtrn1_p8(<8 x i8> noundef %a, <8 x i8> noundef %b) #0 { 
# | same:170'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:180'0                                               X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:180'1                                                                                               undefined variable: ATTR0
# |            146: entry: 
# | same:180'0      ~~~~~~~
# |            147:  %shuffle.i = shufflevector <8 x i8> %a, <8 x i8> %b, <8 x i32> <i32 0, i32 8, i32 2, i32 10, i32 4, i32 12, i32 6, i32 14> 
# | same:180'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            148:  ret <8 x i8> %shuffle.i 
# | same:180'0      ~~~~~~~~~~~~~~~~~~~~~~~~~
# |            149: } 
# | same:180'0      ~~
# |            150:  
# | same:180'0      ~
# |            151: ; Function Attrs: noinline nounwind 
# | same:180'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            152: define dso_local <16 x i8> @test_vtrn1q_p8(<16 x i8> noundef %a, <16 x i8> noundef %b) #0 { 
# | same:180'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:190'0                                                 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:190'1                                                                                                   undefined variable: ATTR0
# |            153: entry: 
# | same:190'0      ~~~~~~~
# |            154:  %shuffle.i = shufflevector <16 x i8> %a, <16 x i8> %b, <16 x i32> <i32 0, i32 16, i32 2, i32 18, i32 4, i32 20, i32 6, i32 22, i32 8, i32 24, i32 10, i32 26, i32 12, i32 28, i32 14, i32 30> 
# | same:190'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            155:  ret <16 x i8> %shuffle.i 
# | same:190'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            156: } 
# | same:190'0      ~~
# |            157:  
# | same:190'0      ~
# |            158: ; Function Attrs: noinline nounwind 
# | same:190'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            159: define dso_local <4 x i16> @test_vtrn1_p16(<4 x i16> noundef %a, <4 x i16> noundef %b) #0 { 
# | same:190'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:200'0                                                 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:200'1                                                                                                   undefined variable: ATTR0
# |            160: entry: 
# | same:200'0      ~~~~~~~
# |            161:  %shuffle.i = shufflevector <4 x i16> %a, <4 x i16> %b, <4 x i32> <i32 0, i32 4, i32 2, i32 6> 
# | same:200'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            162:  ret <4 x i16> %shuffle.i 
# | same:200'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            163: } 
# | same:200'0      ~~
# |            164:  
# | same:200'0      ~
# |            165: ; Function Attrs: noinline nounwind 
# | same:200'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            166: define dso_local <8 x i16> @test_vtrn1q_p16(<8 x i16> noundef %a, <8 x i16> noundef %b) #0 { 
# | same:200'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:210'0                                                  X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:210'1                                                                                                    undefined variable: ATTR0
# |            167: entry: 
# | same:210'0      ~~~~~~~
# |            168:  %shuffle.i = shufflevector <8 x i16> %a, <8 x i16> %b, <8 x i32> <i32 0, i32 8, i32 2, i32 10, i32 4, i32 12, i32 6, i32 14> 
# | same:210'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            169:  ret <8 x i16> %shuffle.i 
# | same:210'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            170: } 
# | same:210'0      ~~
# |            171:  
# | same:210'0      ~
# |            172: ; Function Attrs: noinline nounwind 
# | same:210'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            173: define dso_local <8 x i8> @test_vtrn2_s8(<8 x i8> noundef %a, <8 x i8> noundef %b) #0 { 
# | same:210'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:220'0                                               X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:220'1                                                                                               undefined variable: ATTR0
# |            174: entry: 
# | same:220'0      ~~~~~~~
# |            175:  %shuffle.i = shufflevector <8 x i8> %a, <8 x i8> %b, <8 x i32> <i32 1, i32 9, i32 3, i32 11, i32 5, i32 13, i32 7, i32 15> 
# | same:220'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            176:  ret <8 x i8> %shuffle.i 
# | same:220'0      ~~~~~~~~~~~~~~~~~~~~~~~~~
# |            177: } 
# | same:220'0      ~~
# |            178:  
# | same:220'0      ~
# |            179: ; Function Attrs: noinline nounwind 
# | same:220'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            180: define dso_local <16 x i8> @test_vtrn2q_s8(<16 x i8> noundef %a, <16 x i8> noundef %b) #0 { 
# | same:220'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:230'0                                                 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:230'1                                                                                                   undefined variable: ATTR0
# |            181: entry: 
# | same:230'0      ~~~~~~~
# |            182:  %shuffle.i = shufflevector <16 x i8> %a, <16 x i8> %b, <16 x i32> <i32 1, i32 17, i32 3, i32 19, i32 5, i32 21, i32 7, i32 23, i32 9, i32 25, i32 11, i32 27, i32 13, i32 29, i32 15, i32 31> 
# | same:230'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            183:  ret <16 x i8> %shuffle.i 
# | same:230'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            184: } 
# | same:230'0      ~~
# |            185:  
# | same:230'0      ~
# |            186: ; Function Attrs: noinline nounwind 
# | same:230'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            187: define dso_local <4 x i16> @test_vtrn2_s16(<4 x i16> noundef %a, <4 x i16> noundef %b) #0 { 
# | same:230'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:240'0                                                 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:240'1                                                                                                   undefined variable: ATTR0
# |            188: entry: 
# | same:240'0      ~~~~~~~
# |            189:  %shuffle.i = shufflevector <4 x i16> %a, <4 x i16> %b, <4 x i32> <i32 1, i32 5, i32 3, i32 7> 
# | same:240'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            190:  ret <4 x i16> %shuffle.i 
# | same:240'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            191: } 
# | same:240'0      ~~
# |            192:  
# | same:240'0      ~
# |            193: ; Function Attrs: noinline nounwind 
# | same:240'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            194: define dso_local <8 x i16> @test_vtrn2q_s16(<8 x i16> noundef %a, <8 x i16> noundef %b) #0 { 
# | same:240'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:250'0                                                  X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:250'1                                                                                                    undefined variable: ATTR0
# |            195: entry: 
# | same:250'0      ~~~~~~~
# |            196:  %shuffle.i = shufflevector <8 x i16> %a, <8 x i16> %b, <8 x i32> <i32 1, i32 9, i32 3, i32 11, i32 5, i32 13, i32 7, i32 15> 
# | same:250'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            197:  ret <8 x i16> %shuffle.i 
# | same:250'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            198: } 
# | same:250'0      ~~
# |            199:  
# | same:250'0      ~
# |            200: ; Function Attrs: noinline nounwind 
# | same:250'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            201: define dso_local <2 x i32> @test_vtrn2_s32(<2 x i32> noundef %a, <2 x i32> noundef %b) #0 { 
# | same:250'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:260'0                                                 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:260'1                                                                                                   undefined variable: ATTR0
# |            202: entry: 
# | same:260'0      ~~~~~~~
# |            203:  %shuffle.i = shufflevector <2 x i32> %a, <2 x i32> %b, <2 x i32> <i32 1, i32 3> 
# | same:260'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            204:  ret <2 x i32> %shuffle.i 
# | same:260'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            205: } 
# | same:260'0      ~~
# |            206:  
# | same:260'0      ~
# |            207: ; Function Attrs: noinline nounwind 
# | same:260'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            208: define dso_local <4 x i32> @test_vtrn2q_s32(<4 x i32> noundef %a, <4 x i32> noundef %b) #0 { 
# | same:260'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:270'0                                                  X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:270'1                                                                                                    undefined variable: ATTR0
# |            209: entry: 
# | same:270'0      ~~~~~~~
# |            210:  %shuffle.i = shufflevector <4 x i32> %a, <4 x i32> %b, <4 x i32> <i32 1, i32 5, i32 3, i32 7> 
# | same:270'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            211:  ret <4 x i32> %shuffle.i 
# | same:270'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            212: } 
# | same:270'0      ~~
# |            213:  
# | same:270'0      ~
# |            214: ; Function Attrs: noinline nounwind 
# | same:270'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            215: define dso_local <2 x i64> @test_vtrn2q_s64(<2 x i64> noundef %a, <2 x i64> noundef %b) #0 { 
# | same:270'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:280'0                                                  X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:280'1                                                                                                    undefined variable: ATTR0
# |            216: entry: 
# | same:280'0      ~~~~~~~
# |            217:  %shuffle.i = shufflevector <2 x i64> %a, <2 x i64> %b, <2 x i32> <i32 1, i32 3> 
# | same:280'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            218:  ret <2 x i64> %shuffle.i 
# | same:280'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            219: } 
# | same:280'0      ~~
# |            220:  
# | same:280'0      ~
# |            221: ; Function Attrs: noinline nounwind 
# | same:280'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            222: define dso_local <8 x i8> @test_vtrn2_u8(<8 x i8> noundef %a, <8 x i8> noundef %b) #0 { 
# | same:280'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:290'0                                               X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:290'1                                                                                               undefined variable: ATTR0
# |            223: entry: 
# | same:290'0      ~~~~~~~
# |            224:  %shuffle.i = shufflevector <8 x i8> %a, <8 x i8> %b, <8 x i32> <i32 1, i32 9, i32 3, i32 11, i32 5, i32 13, i32 7, i32 15> 
# | same:290'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            225:  ret <8 x i8> %shuffle.i 
# | same:290'0      ~~~~~~~~~~~~~~~~~~~~~~~~~
# |            226: } 
# | same:290'0      ~~
# |            227:  
# | same:290'0      ~
# |            228: ; Function Attrs: noinline nounwind 
# | same:290'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            229: define dso_local <16 x i8> @test_vtrn2q_u8(<16 x i8> noundef %a, <16 x i8> noundef %b) #0 { 
# | same:290'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:300'0                                                 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:300'1                                                                                                   undefined variable: ATTR0
# |            230: entry: 
# | same:300'0      ~~~~~~~
# |            231:  %shuffle.i = shufflevector <16 x i8> %a, <16 x i8> %b, <16 x i32> <i32 1, i32 17, i32 3, i32 19, i32 5, i32 21, i32 7, i32 23, i32 9, i32 25, i32 11, i32 27, i32 13, i32 29, i32 15, i32 31> 
# | same:300'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            232:  ret <16 x i8> %shuffle.i 
# | same:300'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            233: } 
# | same:300'0      ~~
# |            234:  
# | same:300'0      ~
# |            235: ; Function Attrs: noinline nounwind 
# | same:300'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            236: define dso_local <4 x i16> @test_vtrn2_u16(<4 x i16> noundef %a, <4 x i16> noundef %b) #0 { 
# | same:300'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:310'0                                                 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:310'1                                                                                                   undefined variable: ATTR0
# |            237: entry: 
# | same:310'0      ~~~~~~~
# |            238:  %shuffle.i = shufflevector <4 x i16> %a, <4 x i16> %b, <4 x i32> <i32 1, i32 5, i32 3, i32 7> 
# | same:310'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            239:  ret <4 x i16> %shuffle.i 
# | same:310'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            240: } 
# | same:310'0      ~~
# |            241:  
# | same:310'0      ~
# |            242: ; Function Attrs: noinline nounwind 
# | same:310'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            243: define dso_local <8 x i16> @test_vtrn2q_u16(<8 x i16> noundef %a, <8 x i16> noundef %b) #0 { 
# | same:310'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:320'0                                                  X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:320'1                                                                                                    undefined variable: ATTR0
# |            244: entry: 
# | same:320'0      ~~~~~~~
# |            245:  %shuffle.i = shufflevector <8 x i16> %a, <8 x i16> %b, <8 x i32> <i32 1, i32 9, i32 3, i32 11, i32 5, i32 13, i32 7, i32 15> 
# | same:320'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            246:  ret <8 x i16> %shuffle.i 
# | same:320'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            247: } 
# | same:320'0      ~~
# |            248:  
# | same:320'0      ~
# |            249: ; Function Attrs: noinline nounwind 
# | same:320'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            250: define dso_local <2 x i32> @test_vtrn2_u32(<2 x i32> noundef %a, <2 x i32> noundef %b) #0 { 
# | same:320'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:330'0                                                 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:330'1                                                                                                   undefined variable: ATTR0
# |            251: entry: 
# | same:330'0      ~~~~~~~
# |            252:  %shuffle.i = shufflevector <2 x i32> %a, <2 x i32> %b, <2 x i32> <i32 1, i32 3> 
# | same:330'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            253:  ret <2 x i32> %shuffle.i 
# | same:330'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            254: } 
# | same:330'0      ~~
# |            255:  
# | same:330'0      ~
# |            256: ; Function Attrs: noinline nounwind 
# | same:330'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            257: define dso_local <4 x i32> @test_vtrn2q_u32(<4 x i32> noundef %a, <4 x i32> noundef %b) #0 { 
# | same:330'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:340'0                                                  X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:340'1                                                                                                    undefined variable: ATTR0
# |            258: entry: 
# | same:340'0      ~~~~~~~
# |            259:  %shuffle.i = shufflevector <4 x i32> %a, <4 x i32> %b, <4 x i32> <i32 1, i32 5, i32 3, i32 7> 
# | same:340'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            260:  ret <4 x i32> %shuffle.i 
# | same:340'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            261: } 
# | same:340'0      ~~
# |            262:  
# | same:340'0      ~
# |            263: ; Function Attrs: noinline nounwind 
# | same:340'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            264: define dso_local <2 x i64> @test_vtrn2q_u64(<2 x i64> noundef %a, <2 x i64> noundef %b) #0 { 
# | same:340'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:350'0                                                  X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:350'1                                                                                                    undefined variable: ATTR0
# |            265: entry: 
# | same:350'0      ~~~~~~~
# |            266:  %shuffle.i = shufflevector <2 x i64> %a, <2 x i64> %b, <2 x i32> <i32 1, i32 3> 
# | same:350'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            267:  ret <2 x i64> %shuffle.i 
# | same:350'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            268: } 
# | same:350'0      ~~
# |            269:  
# | same:350'0      ~
# |            270: ; Function Attrs: noinline nounwind 
# | same:350'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            271: define dso_local <2 x float> @test_vtrn2_f32(<2 x float> noundef %a, <2 x float> noundef %b) #0 { 
# | same:350'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:360'0                                                   X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:360'1                                                                                                         undefined variable: ATTR0
# |            272: entry: 
# | same:360'0      ~~~~~~~
# |            273:  %shuffle.i = shufflevector <2 x float> %a, <2 x float> %b, <2 x i32> <i32 1, i32 3> 
# | same:360'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            274:  ret <2 x float> %shuffle.i 
# | same:360'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            275: } 
# | same:360'0      ~~
# |            276:  
# | same:360'0      ~
# |            277: ; Function Attrs: noinline nounwind 
# | same:360'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            278: define dso_local <4 x float> @test_vtrn2q_f32(<4 x float> noundef %a, <4 x float> noundef %b) #0 { 
# | same:360'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:370'0                                                    X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:370'1                                                                                                          undefined variable: ATTR0
# |            279: entry: 
# | same:370'0      ~~~~~~~
# |            280:  %shuffle.i = shufflevector <4 x float> %a, <4 x float> %b, <4 x i32> <i32 1, i32 5, i32 3, i32 7> 
# | same:370'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            281:  ret <4 x float> %shuffle.i 
# | same:370'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            282: } 
# | same:370'0      ~~
# |            283:  
# | same:370'0      ~
# |            284: ; Function Attrs: noinline nounwind 
# | same:370'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            285: define dso_local <2 x double> @test_vtrn2q_f64(<2 x double> noundef %a, <2 x double> noundef %b) #0 { 
# | same:370'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:380'0                                                     X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:380'1                                                                                                             undefined variable: ATTR0
# |            286: entry: 
# | same:380'0      ~~~~~~~
# |            287:  %shuffle.i = shufflevector <2 x double> %a, <2 x double> %b, <2 x i32> <i32 1, i32 3> 
# | same:380'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            288:  ret <2 x double> %shuffle.i 
# | same:380'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            289: } 
# | same:380'0      ~~
# |            290:  
# | same:380'0      ~
# |            291: ; Function Attrs: noinline nounwind 
# | same:380'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            292: define dso_local <8 x i8> @test_vtrn2_p8(<8 x i8> noundef %a, <8 x i8> noundef %b) #0 { 
# | same:380'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:390'0                                               X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:390'1                                                                                               undefined variable: ATTR0
# |            293: entry: 
# | same:390'0      ~~~~~~~
# |            294:  %shuffle.i = shufflevector <8 x i8> %a, <8 x i8> %b, <8 x i32> <i32 1, i32 9, i32 3, i32 11, i32 5, i32 13, i32 7, i32 15> 
# | same:390'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            295:  ret <8 x i8> %shuffle.i 
# | same:390'0      ~~~~~~~~~~~~~~~~~~~~~~~~~
# |            296: } 
# | same:390'0      ~~
# |            297:  
# | same:390'0      ~
# |            298: ; Function Attrs: noinline nounwind 
# | same:390'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            299: define dso_local <16 x i8> @test_vtrn2q_p8(<16 x i8> noundef %a, <16 x i8> noundef %b) #0 { 
# | same:390'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:400'0                                                 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:400'1                                                                                                   undefined variable: ATTR0
# |            300: entry: 
# | same:400'0      ~~~~~~~
# |            301:  %shuffle.i = shufflevector <16 x i8> %a, <16 x i8> %b, <16 x i32> <i32 1, i32 17, i32 3, i32 19, i32 5, i32 21, i32 7, i32 23, i32 9, i32 25, i32 11, i32 27, i32 13, i32 29, i32 15, i32 31> 
# | same:400'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            302:  ret <16 x i8> %shuffle.i 
# | same:400'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            303: } 
# | same:400'0      ~~
# |            304:  
# | same:400'0      ~
# |            305: ; Function Attrs: noinline nounwind 
# | same:400'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            306: define dso_local <4 x i16> @test_vtrn2_p16(<4 x i16> noundef %a, <4 x i16> noundef %b) #0 { 
# | same:400'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:410'0                                                 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:410'1                                                                                                   undefined variable: ATTR0
# |            307: entry: 
# | same:410'0      ~~~~~~~
# |            308:  %shuffle.i = shufflevector <4 x i16> %a, <4 x i16> %b, <4 x i32> <i32 1, i32 5, i32 3, i32 7> 
# | same:410'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            309:  ret <4 x i16> %shuffle.i 
# | same:410'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            310: } 
# | same:410'0      ~~
# |            311:  
# | same:410'0      ~
# |            312: ; Function Attrs: noinline nounwind 
# | same:410'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            313: define dso_local <8 x i16> @test_vtrn2q_p16(<8 x i16> noundef %a, <8 x i16> noundef %b) #0 { 
# | same:410'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:420'0                                                  X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:420'1                                                                                                    undefined variable: ATTR0
# |            314: entry: 
# | same:420'0      ~~~~~~~
# |            315:  %shuffle.i = shufflevector <8 x i16> %a, <8 x i16> %b, <8 x i32> <i32 1, i32 9, i32 3, i32 11, i32 5, i32 13, i32 7, i32 15> 
# | same:420'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            316:  ret <8 x i16> %shuffle.i 
# | same:420'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            317: } 
# | same:420'0      ~~
# |            318:  
# | same:420'0      ~
# |            319: ; Function Attrs: noinline nounwind 
# | same:420'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            320: define dso_local %struct.int8x8x2_t @test_vuzp_s8(<8 x i8> noundef %a, <8 x i8> noundef %b) #0 { 
# | same:420'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:430'0                                                        X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:430'1                                                                                                        undefined variable: ATTR0
# |            321: entry: 
# | same:430'0      ~~~~~~~
# |            322:  %vuzp.i = shufflevector <8 x i8> %a, <8 x i8> %b, <8 x i32> <i32 0, i32 2, i32 4, i32 6, i32 8, i32 10, i32 12, i32 14> 
# | same:430'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            323:  %vuzp1.i = shufflevector <8 x i8> %a, <8 x i8> %b, <8 x i32> <i32 1, i32 3, i32 5, i32 7, i32 9, i32 11, i32 13, i32 15> 
# | same:430'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            324:  %.fca.0.0.insert1 = insertvalue %struct.int8x8x2_t poison, <8 x i8> %vuzp.i, 0, 0 
# | same:430'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            325:  %.fca.0.1.insert2 = insertvalue %struct.int8x8x2_t %.fca.0.0.insert1, <8 x i8> %vuzp1.i, 0, 1 
# | same:430'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            330:  %.fca.0.1.insert = insertvalue %struct.int8x8x2_t %.fca.0.0.insert, <8 x i8> %.fca.1.extract, 0, 1 
# | same:430'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            331:  ret %struct.int8x8x2_t %.fca.0.1.insert 
# | same:430'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            332: } 
# | same:430'0      ~~
# |            333:  
# | same:430'0      ~
# |            334: ; Function Attrs: noinline nounwind 
# | same:430'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            335: define dso_local %struct.int16x4x2_t @test_vuzp_s16(<4 x i16> noundef %a, <4 x i16> noundef %b) #0 { 
# | same:430'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:448'0                                                          X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:448'1                                                                                                            undefined variable: ATTR0
# |            336: entry: 
# | same:448'0      ~~~~~~~
# |            337:  %0 = bitcast <4 x i16> %a to <8 x i8> 
# | same:448'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            338:  %1 = bitcast <4 x i16> %b to <8 x i8> 
# | same:448'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            339:  %2 = bitcast <8 x i8> %0 to <4 x i16> 
# | same:448'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            340:  %3 = bitcast <8 x i8> %1 to <4 x i16> 
# | same:448'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            349:  %.fca.0.1.insert = insertvalue %struct.int16x4x2_t %.fca.0.0.insert, <4 x i16> %.fca.1.extract, 0, 1 
# | same:448'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            350:  ret %struct.int16x4x2_t %.fca.0.1.insert 
# | same:448'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            351: } 
# | same:448'0      ~~
# |            352:  
# | same:448'0      ~
# |            353: ; Function Attrs: noinline nounwind 
# | same:448'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            354: define dso_local %struct.int32x2x2_t @test_vuzp_s32(<2 x i32> noundef %a, <2 x i32> noundef %b) #0 { 
# | same:448'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:470'0                                                          X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:470'1                                                                                                            undefined variable: ATTR0
# |            355: entry: 
# | same:470'0      ~~~~~~~
# |            356:  %0 = bitcast <2 x i32> %a to <8 x i8> 
# | same:470'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            357:  %1 = bitcast <2 x i32> %b to <8 x i8> 
# | same:470'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            358:  %2 = bitcast <8 x i8> %0 to <2 x i32> 
# | same:470'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            359:  %3 = bitcast <8 x i8> %1 to <2 x i32> 
# | same:470'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            368:  %.fca.0.1.insert = insertvalue %struct.int32x2x2_t %.fca.0.0.insert, <2 x i32> %.fca.1.extract, 0, 1 
# | same:470'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            369:  ret %struct.int32x2x2_t %.fca.0.1.insert 
# | same:470'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            370: } 
# | same:470'0      ~~
# |            371:  
# | same:470'0      ~
# |            372: ; Function Attrs: noinline nounwind 
# | same:470'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            373: define dso_local %struct.uint8x8x2_t @test_vuzp_u8(<8 x i8> noundef %a, <8 x i8> noundef %b) #0 { 
# | same:470'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:492'0                                                         X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:492'1                                                                                                         undefined variable: ATTR0
# |            374: entry: 
# | same:492'0      ~~~~~~~
# |            375:  %vuzp.i = shufflevector <8 x i8> %a, <8 x i8> %b, <8 x i32> <i32 0, i32 2, i32 4, i32 6, i32 8, i32 10, i32 12, i32 14> 
# | same:492'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            376:  %vuzp1.i = shufflevector <8 x i8> %a, <8 x i8> %b, <8 x i32> <i32 1, i32 3, i32 5, i32 7, i32 9, i32 11, i32 13, i32 15> 
# | same:492'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            377:  %.fca.0.0.insert1 = insertvalue %struct.uint8x8x2_t poison, <8 x i8> %vuzp.i, 0, 0 
# | same:492'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            378:  %.fca.0.1.insert2 = insertvalue %struct.uint8x8x2_t %.fca.0.0.insert1, <8 x i8> %vuzp1.i, 0, 1 
# | same:492'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            383:  %.fca.0.1.insert = insertvalue %struct.uint8x8x2_t %.fca.0.0.insert, <8 x i8> %.fca.1.extract, 0, 1 
# | same:492'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            384:  ret %struct.uint8x8x2_t %.fca.0.1.insert 
# | same:492'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            385: } 
# | same:492'0      ~~
# |            386:  
# | same:492'0      ~
# |            387: ; Function Attrs: noinline nounwind 
# | same:492'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            388: define dso_local %struct.uint16x4x2_t @test_vuzp_u16(<4 x i16> noundef %a, <4 x i16> noundef %b) #0 { 
# | same:492'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:510'0                                                           X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:510'1                                                                                                             undefined variable: ATTR0
# |            389: entry: 
# | same:510'0      ~~~~~~~
# |            390:  %0 = bitcast <4 x i16> %a to <8 x i8> 
# | same:510'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            391:  %1 = bitcast <4 x i16> %b to <8 x i8> 
# | same:510'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            392:  %2 = bitcast <8 x i8> %0 to <4 x i16> 
# | same:510'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            393:  %3 = bitcast <8 x i8> %1 to <4 x i16> 
# | same:510'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            402:  %.fca.0.1.insert = insertvalue %struct.uint16x4x2_t %.fca.0.0.insert, <4 x i16> %.fca.1.extract, 0, 1 
# | same:510'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            403:  ret %struct.uint16x4x2_t %.fca.0.1.insert 
# | same:510'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            404: } 
# | same:510'0      ~~
# |            405:  
# | same:510'0      ~
# |            406: ; Function Attrs: noinline nounwind 
# | same:510'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            407: define dso_local %struct.uint32x2x2_t @test_vuzp_u32(<2 x i32> noundef %a, <2 x i32> noundef %b) #0 { 
# | same:510'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:532'0                                                           X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:532'1                                                                                                             undefined variable: ATTR0
# |            408: entry: 
# | same:532'0      ~~~~~~~
# |            409:  %0 = bitcast <2 x i32> %a to <8 x i8> 
# | same:532'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            410:  %1 = bitcast <2 x i32> %b to <8 x i8> 
# | same:532'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            411:  %2 = bitcast <8 x i8> %0 to <2 x i32> 
# | same:532'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            412:  %3 = bitcast <8 x i8> %1 to <2 x i32> 
# | same:532'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            421:  %.fca.0.1.insert = insertvalue %struct.uint32x2x2_t %.fca.0.0.insert, <2 x i32> %.fca.1.extract, 0, 1 
# | same:532'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            422:  ret %struct.uint32x2x2_t %.fca.0.1.insert 
# | same:532'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            423: } 
# | same:532'0      ~~
# |            424:  
# | same:532'0      ~
# |            425: ; Function Attrs: noinline nounwind 
# | same:532'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            426: define dso_local %struct.float32x2x2_t @test_vuzp_f32(<2 x float> noundef %a, <2 x float> noundef %b) #0 { 
# | same:532'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:554'0                                                            X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:554'1                                                                                                                  undefined variable: ATTR0
# |            427: entry: 
# | same:554'0      ~~~~~~~
# |            428:  %0 = bitcast <2 x float> %a to <2 x i32> 
# | same:554'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            429:  %1 = bitcast <2 x float> %b to <2 x i32> 
# | same:554'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            430:  %2 = bitcast <2 x i32> %0 to <8 x i8> 
# | same:554'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            431:  %3 = bitcast <2 x i32> %1 to <8 x i8> 
# | same:554'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            442:  %.fca.0.1.insert = insertvalue %struct.float32x2x2_t %.fca.0.0.insert, <2 x float> %.fca.1.extract, 0, 1 
# | same:554'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            443:  ret %struct.float32x2x2_t %.fca.0.1.insert 
# | same:554'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            444: } 
# | same:554'0      ~~
# |            445:  
# | same:554'0      ~
# |            446: ; Function Attrs: noinline nounwind 
# | same:554'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            447: define dso_local %struct.poly8x8x2_t @test_vuzp_p8(<8 x i8> noundef %a, <8 x i8> noundef %b) #0 { 
# | same:554'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:578'0                                                         X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:578'1                                                                                                         undefined variable: ATTR0
# |            448: entry: 
# | same:578'0      ~~~~~~~
# |            449:  %vuzp.i = shufflevector <8 x i8> %a, <8 x i8> %b, <8 x i32> <i32 0, i32 2, i32 4, i32 6, i32 8, i32 10, i32 12, i32 14> 
# | same:578'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            450:  %vuzp1.i = shufflevector <8 x i8> %a, <8 x i8> %b, <8 x i32> <i32 1, i32 3, i32 5, i32 7, i32 9, i32 11, i32 13, i32 15> 
# | same:578'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            451:  %.fca.0.0.insert1 = insertvalue %struct.poly8x8x2_t poison, <8 x i8> %vuzp.i, 0, 0 
# | same:578'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            452:  %.fca.0.1.insert2 = insertvalue %struct.poly8x8x2_t %.fca.0.0.insert1, <8 x i8> %vuzp1.i, 0, 1 
# | same:578'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            457:  %.fca.0.1.insert = insertvalue %struct.poly8x8x2_t %.fca.0.0.insert, <8 x i8> %.fca.1.extract, 0, 1 
# | same:578'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            458:  ret %struct.poly8x8x2_t %.fca.0.1.insert 
# | same:578'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            459: } 
# | same:578'0      ~~
# |            460:  
# | same:578'0      ~
# |            461: ; Function Attrs: noinline nounwind 
# | same:578'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            462: define dso_local %struct.poly16x4x2_t @test_vuzp_p16(<4 x i16> noundef %a, <4 x i16> noundef %b) #0 { 
# | same:578'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:596'0                                                           X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:596'1                                                                                                             undefined variable: ATTR0
# |            463: entry: 
# | same:596'0      ~~~~~~~
# |            464:  %0 = bitcast <4 x i16> %a to <8 x i8> 
# | same:596'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            465:  %1 = bitcast <4 x i16> %b to <8 x i8> 
# | same:596'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            466:  %2 = bitcast <8 x i8> %0 to <4 x i16> 
# | same:596'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            467:  %3 = bitcast <8 x i8> %1 to <4 x i16> 
# | same:596'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            476:  %.fca.0.1.insert = insertvalue %struct.poly16x4x2_t %.fca.0.0.insert, <4 x i16> %.fca.1.extract, 0, 1 
# | same:596'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            477:  ret %struct.poly16x4x2_t %.fca.0.1.insert 
# | same:596'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            478: } 
# | same:596'0      ~~
# |            479:  
# | same:596'0      ~
# |            480: ; Function Attrs: noinline nounwind 
# | same:596'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            481: define dso_local %struct.int8x16x2_t @test_vuzpq_s8(<16 x i8> noundef %a, <16 x i8> noundef %b) #0 { 
# | same:596'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:618'0                                                          X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:618'1                                                                                                            undefined variable: ATTR0
# |            482: entry: 
# | same:618'0      ~~~~~~~
# |            483:  %vuzp.i = shufflevector <16 x i8> %a, <16 x i8> %b, <16 x i32> <i32 0, i32 2, i32 4, i32 6, i32 8, i32 10, i32 12, i32 14, i32 16, i32 18, i32 20, i32 22, i32 24, i32 26, i32 28, i32 30> 
# | same:618'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            484:  %vuzp1.i = shufflevector <16 x i8> %a, <16 x i8> %b, <16 x i32> <i32 1, i32 3, i32 5, i32 7, i32 9, i32 11, i32 13, i32 15, i32 17, i32 19, i32 21, i32 23, i32 25, i32 27, i32 29, i32 31> 
# | same:618'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            485:  %.fca.0.0.insert1 = insertvalue %struct.int8x16x2_t poison, <16 x i8> %vuzp.i, 0, 0 
# | same:618'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            486:  %.fca.0.1.insert2 = insertvalue %struct.int8x16x2_t %.fca.0.0.insert1, <16 x i8> %vuzp1.i, 0, 1 
# | same:618'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            491:  %.fca.0.1.insert = insertvalue %struct.int8x16x2_t %.fca.0.0.insert, <16 x i8> %.fca.1.extract, 0, 1 
# | same:618'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            492:  ret %struct.int8x16x2_t %.fca.0.1.insert 
# | same:618'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            493: } 
# | same:618'0      ~~
# |            494:  
# | same:618'0      ~
# |            495: ; Function Attrs: noinline nounwind 
# | same:618'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            496: define dso_local %struct.int16x8x2_t @test_vuzpq_s16(<8 x i16> noundef %a, <8 x i16> noundef %b) #0 { 
# | same:618'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:636'0                                                           X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:636'1                                                                                                             undefined variable: ATTR0
# |            497: entry: 
# | same:636'0      ~~~~~~~
# |            498:  %0 = bitcast <8 x i16> %a to <16 x i8> 
# | same:636'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            499:  %1 = bitcast <8 x i16> %b to <16 x i8> 
# | same:636'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            500:  %2 = bitcast <16 x i8> %0 to <8 x i16> 
# | same:636'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            501:  %3 = bitcast <16 x i8> %1 to <8 x i16> 
# | same:636'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            510:  %.fca.0.1.insert = insertvalue %struct.int16x8x2_t %.fca.0.0.insert, <8 x i16> %.fca.1.extract, 0, 1 
# | same:636'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            511:  ret %struct.int16x8x2_t %.fca.0.1.insert 
# | same:636'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            512: } 
# | same:636'0      ~~
# |            513:  
# | same:636'0      ~
# |            514: ; Function Attrs: noinline nounwind 
# | same:636'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            515: define dso_local %struct.int32x4x2_t @test_vuzpq_s32(<4 x i32> noundef %a, <4 x i32> noundef %b) #0 { 
# | same:636'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:658'0                                                           X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:658'1                                                                                                             undefined variable: ATTR0
# |            516: entry: 
# | same:658'0      ~~~~~~~
# |            517:  %0 = bitcast <4 x i32> %a to <16 x i8> 
# | same:658'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            518:  %1 = bitcast <4 x i32> %b to <16 x i8> 
# | same:658'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            519:  %2 = bitcast <16 x i8> %0 to <4 x i32> 
# | same:658'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            520:  %3 = bitcast <16 x i8> %1 to <4 x i32> 
# | same:658'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            529:  %.fca.0.1.insert = insertvalue %struct.int32x4x2_t %.fca.0.0.insert, <4 x i32> %.fca.1.extract, 0, 1 
# | same:658'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            530:  ret %struct.int32x4x2_t %.fca.0.1.insert 
# | same:658'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            531: } 
# | same:658'0      ~~
# |            532:  
# | same:658'0      ~
# |            533: ; Function Attrs: noinline nounwind 
# | same:658'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            534: define dso_local %struct.uint8x16x2_t @test_vuzpq_u8(<16 x i8> noundef %a, <16 x i8> noundef %b) #0 { 
# | same:658'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:680'0                                                           X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:680'1                                                                                                             undefined variable: ATTR0
# |            535: entry: 
# | same:680'0      ~~~~~~~
# |            536:  %vuzp.i = shufflevector <16 x i8> %a, <16 x i8> %b, <16 x i32> <i32 0, i32 2, i32 4, i32 6, i32 8, i32 10, i32 12, i32 14, i32 16, i32 18, i32 20, i32 22, i32 24, i32 26, i32 28, i32 30> 
# | same:680'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            537:  %vuzp1.i = shufflevector <16 x i8> %a, <16 x i8> %b, <16 x i32> <i32 1, i32 3, i32 5, i32 7, i32 9, i32 11, i32 13, i32 15, i32 17, i32 19, i32 21, i32 23, i32 25, i32 27, i32 29, i32 31> 
# | same:680'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            538:  %.fca.0.0.insert1 = insertvalue %struct.uint8x16x2_t poison, <16 x i8> %vuzp.i, 0, 0 
# | same:680'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            539:  %.fca.0.1.insert2 = insertvalue %struct.uint8x16x2_t %.fca.0.0.insert1, <16 x i8> %vuzp1.i, 0, 1 
# | same:680'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            544:  %.fca.0.1.insert = insertvalue %struct.uint8x16x2_t %.fca.0.0.insert, <16 x i8> %.fca.1.extract, 0, 1 
# | same:680'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            545:  ret %struct.uint8x16x2_t %.fca.0.1.insert 
# | same:680'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            546: } 
# | same:680'0      ~~
# |            547:  
# | same:680'0      ~
# |            548: ; Function Attrs: noinline nounwind 
# | same:680'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            549: define dso_local %struct.uint16x8x2_t @test_vuzpq_u16(<8 x i16> noundef %a, <8 x i16> noundef %b) #0 { 
# | same:680'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:698'0                                                            X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:698'1                                                                                                              undefined variable: ATTR0
# |            550: entry: 
# | same:698'0      ~~~~~~~
# |            551:  %0 = bitcast <8 x i16> %a to <16 x i8> 
# | same:698'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            552:  %1 = bitcast <8 x i16> %b to <16 x i8> 
# | same:698'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            553:  %2 = bitcast <16 x i8> %0 to <8 x i16> 
# | same:698'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            554:  %3 = bitcast <16 x i8> %1 to <8 x i16> 
# | same:698'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            563:  %.fca.0.1.insert = insertvalue %struct.uint16x8x2_t %.fca.0.0.insert, <8 x i16> %.fca.1.extract, 0, 1 
# | same:698'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            564:  ret %struct.uint16x8x2_t %.fca.0.1.insert 
# | same:698'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            565: } 
# | same:698'0      ~~
# |            566:  
# | same:698'0      ~
# |            567: ; Function Attrs: noinline nounwind 
# | same:698'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            568: define dso_local %struct.uint32x4x2_t @test_vuzpq_u32(<4 x i32> noundef %a, <4 x i32> noundef %b) #0 { 
# | same:698'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:720'0                                                            X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:720'1                                                                                                              undefined variable: ATTR0
# |            569: entry: 
# | same:720'0      ~~~~~~~
# |            570:  %0 = bitcast <4 x i32> %a to <16 x i8> 
# | same:720'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            571:  %1 = bitcast <4 x i32> %b to <16 x i8> 
# | same:720'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            572:  %2 = bitcast <16 x i8> %0 to <4 x i32> 
# | same:720'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            573:  %3 = bitcast <16 x i8> %1 to <4 x i32> 
# | same:720'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            582:  %.fca.0.1.insert = insertvalue %struct.uint32x4x2_t %.fca.0.0.insert, <4 x i32> %.fca.1.extract, 0, 1 
# | same:720'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            583:  ret %struct.uint32x4x2_t %.fca.0.1.insert 
# | same:720'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            584: } 
# | same:720'0      ~~
# |            585:  
# | same:720'0      ~
# |            586: ; Function Attrs: noinline nounwind 
# | same:720'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            587: define dso_local %struct.float32x4x2_t @test_vuzpq_f32(<4 x float> noundef %a, <4 x float> noundef %b) #0 { 
# | same:720'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:742'0                                                             X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:742'1                                                                                                                   undefined variable: ATTR0
# |            588: entry: 
# | same:742'0      ~~~~~~~
# |            589:  %0 = bitcast <4 x float> %a to <4 x i32> 
# | same:742'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            590:  %1 = bitcast <4 x float> %b to <4 x i32> 
# | same:742'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            591:  %2 = bitcast <4 x i32> %0 to <16 x i8> 
# | same:742'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            592:  %3 = bitcast <4 x i32> %1 to <16 x i8> 
# | same:742'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            603:  %.fca.0.1.insert = insertvalue %struct.float32x4x2_t %.fca.0.0.insert, <4 x float> %.fca.1.extract, 0, 1 
# | same:742'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            604:  ret %struct.float32x4x2_t %.fca.0.1.insert 
# | same:742'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            605: } 
# | same:742'0      ~~
# |            606:  
# | same:742'0      ~
# |            607: ; Function Attrs: noinline nounwind 
# | same:742'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            608: define dso_local %struct.poly8x16x2_t @test_vuzpq_p8(<16 x i8> noundef %a, <16 x i8> noundef %b) #0 { 
# | same:742'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:766'0                                                           X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:766'1                                                                                                             undefined variable: ATTR0
# |            609: entry: 
# | same:766'0      ~~~~~~~
# |            610:  %vuzp.i = shufflevector <16 x i8> %a, <16 x i8> %b, <16 x i32> <i32 0, i32 2, i32 4, i32 6, i32 8, i32 10, i32 12, i32 14, i32 16, i32 18, i32 20, i32 22, i32 24, i32 26, i32 28, i32 30> 
# | same:766'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            611:  %vuzp1.i = shufflevector <16 x i8> %a, <16 x i8> %b, <16 x i32> <i32 1, i32 3, i32 5, i32 7, i32 9, i32 11, i32 13, i32 15, i32 17, i32 19, i32 21, i32 23, i32 25, i32 27, i32 29, i32 31> 
# | same:766'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            612:  %.fca.0.0.insert1 = insertvalue %struct.poly8x16x2_t poison, <16 x i8> %vuzp.i, 0, 0 
# | same:766'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            613:  %.fca.0.1.insert2 = insertvalue %struct.poly8x16x2_t %.fca.0.0.insert1, <16 x i8> %vuzp1.i, 0, 1 
# | same:766'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            618:  %.fca.0.1.insert = insertvalue %struct.poly8x16x2_t %.fca.0.0.insert, <16 x i8> %.fca.1.extract, 0, 1 
# | same:766'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            619:  ret %struct.poly8x16x2_t %.fca.0.1.insert 
# | same:766'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            620: } 
# | same:766'0      ~~
# |            621:  
# | same:766'0      ~
# |            622: ; Function Attrs: noinline nounwind 
# | same:766'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            623: define dso_local %struct.poly16x8x2_t @test_vuzpq_p16(<8 x i16> noundef %a, <8 x i16> noundef %b) #0 { 
# | same:766'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:784'0                                                            X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:784'1                                                                                                              undefined variable: ATTR0
# |            624: entry: 
# | same:784'0      ~~~~~~~
# |            625:  %0 = bitcast <8 x i16> %a to <16 x i8> 
# | same:784'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            626:  %1 = bitcast <8 x i16> %b to <16 x i8> 
# | same:784'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            627:  %2 = bitcast <16 x i8> %0 to <8 x i16> 
# | same:784'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            628:  %3 = bitcast <16 x i8> %1 to <8 x i16> 
# | same:784'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            637:  %.fca.0.1.insert = insertvalue %struct.poly16x8x2_t %.fca.0.0.insert, <8 x i16> %.fca.1.extract, 0, 1 
# | same:784'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            638:  ret %struct.poly16x8x2_t %.fca.0.1.insert 
# | same:784'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            639: } 
# | same:784'0      ~~
# |            640:  
# | same:784'0      ~
# |            641: ; Function Attrs: noinline nounwind 
# | same:784'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            642: define dso_local %struct.int8x8x2_t @test_vtrn_s8(<8 x i8> noundef %a, <8 x i8> noundef %b) #0 { 
# | same:784'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:806'0                                                        X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:806'1                                                                                                        undefined variable: ATTR0
# |            643: entry: 
# | same:806'0      ~~~~~~~
# |            644:  %vtrn.i = shufflevector <8 x i8> %a, <8 x i8> %b, <8 x i32> <i32 0, i32 8, i32 2, i32 10, i32 4, i32 12, i32 6, i32 14> 
# | same:806'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            645:  %vtrn1.i = shufflevector <8 x i8> %a, <8 x i8> %b, <8 x i32> <i32 1, i32 9, i32 3, i32 11, i32 5, i32 13, i32 7, i32 15> 
# | same:806'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            646:  %.fca.0.0.insert1 = insertvalue %struct.int8x8x2_t poison, <8 x i8> %vtrn.i, 0, 0 
# | same:806'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            647:  %.fca.0.1.insert2 = insertvalue %struct.int8x8x2_t %.fca.0.0.insert1, <8 x i8> %vtrn1.i, 0, 1 
# | same:806'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            652:  %.fca.0.1.insert = insertvalue %struct.int8x8x2_t %.fca.0.0.insert, <8 x i8> %.fca.1.extract, 0, 1 
# | same:806'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            653:  ret %struct.int8x8x2_t %.fca.0.1.insert 
# | same:806'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            654: } 
# | same:806'0      ~~
# |            655:  
# | same:806'0      ~
# |            656: ; Function Attrs: noinline nounwind 
# | same:806'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            657: define dso_local %struct.int16x4x2_t @test_vtrn_s16(<4 x i16> noundef %a, <4 x i16> noundef %b) #0 { 
# | same:806'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:824'0                                                          X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:824'1                                                                                                            undefined variable: ATTR0
# |            658: entry: 
# | same:824'0      ~~~~~~~
# |            659:  %0 = bitcast <4 x i16> %a to <8 x i8> 
# | same:824'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            660:  %1 = bitcast <4 x i16> %b to <8 x i8> 
# | same:824'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            661:  %2 = bitcast <8 x i8> %0 to <4 x i16> 
# | same:824'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            662:  %3 = bitcast <8 x i8> %1 to <4 x i16> 
# | same:824'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            671:  %.fca.0.1.insert = insertvalue %struct.int16x4x2_t %.fca.0.0.insert, <4 x i16> %.fca.1.extract, 0, 1 
# | same:824'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            672:  ret %struct.int16x4x2_t %.fca.0.1.insert 
# | same:824'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            673: } 
# | same:824'0      ~~
# |            674:  
# | same:824'0      ~
# |            675: ; Function Attrs: noinline nounwind 
# | same:824'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            676: define dso_local %struct.int32x2x2_t @test_vtrn_s32(<2 x i32> noundef %a, <2 x i32> noundef %b) #0 { 
# | same:824'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:846'0                                                          X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:846'1                                                                                                            undefined variable: ATTR0
# |            677: entry: 
# | same:846'0      ~~~~~~~
# |            678:  %0 = bitcast <2 x i32> %a to <8 x i8> 
# | same:846'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            679:  %1 = bitcast <2 x i32> %b to <8 x i8> 
# | same:846'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            680:  %2 = bitcast <8 x i8> %0 to <2 x i32> 
# | same:846'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            681:  %3 = bitcast <8 x i8> %1 to <2 x i32> 
# | same:846'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            690:  %.fca.0.1.insert = insertvalue %struct.int32x2x2_t %.fca.0.0.insert, <2 x i32> %.fca.1.extract, 0, 1 
# | same:846'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            691:  ret %struct.int32x2x2_t %.fca.0.1.insert 
# | same:846'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            692: } 
# | same:846'0      ~~
# |            693:  
# | same:846'0      ~
# |            694: ; Function Attrs: noinline nounwind 
# | same:846'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            695: define dso_local %struct.uint8x8x2_t @test_vtrn_u8(<8 x i8> noundef %a, <8 x i8> noundef %b) #0 { 
# | same:846'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:868'0                                                         X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:868'1                                                                                                         undefined variable: ATTR0
# |            696: entry: 
# | same:868'0      ~~~~~~~
# |            697:  %vtrn.i = shufflevector <8 x i8> %a, <8 x i8> %b, <8 x i32> <i32 0, i32 8, i32 2, i32 10, i32 4, i32 12, i32 6, i32 14> 
# | same:868'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            698:  %vtrn1.i = shufflevector <8 x i8> %a, <8 x i8> %b, <8 x i32> <i32 1, i32 9, i32 3, i32 11, i32 5, i32 13, i32 7, i32 15> 
# | same:868'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            699:  %.fca.0.0.insert1 = insertvalue %struct.uint8x8x2_t poison, <8 x i8> %vtrn.i, 0, 0 
# | same:868'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            700:  %.fca.0.1.insert2 = insertvalue %struct.uint8x8x2_t %.fca.0.0.insert1, <8 x i8> %vtrn1.i, 0, 1 
# | same:868'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            705:  %.fca.0.1.insert = insertvalue %struct.uint8x8x2_t %.fca.0.0.insert, <8 x i8> %.fca.1.extract, 0, 1 
# | same:868'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            706:  ret %struct.uint8x8x2_t %.fca.0.1.insert 
# | same:868'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            707: } 
# | same:868'0      ~~
# |            708:  
# | same:868'0      ~
# |            709: ; Function Attrs: noinline nounwind 
# | same:868'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            710: define dso_local %struct.uint16x4x2_t @test_vtrn_u16(<4 x i16> noundef %a, <4 x i16> noundef %b) #0 { 
# | same:868'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:886'0                                                           X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:886'1                                                                                                             undefined variable: ATTR0
# |            711: entry: 
# | same:886'0      ~~~~~~~
# |            712:  %0 = bitcast <4 x i16> %a to <8 x i8> 
# | same:886'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            713:  %1 = bitcast <4 x i16> %b to <8 x i8> 
# | same:886'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            714:  %2 = bitcast <8 x i8> %0 to <4 x i16> 
# | same:886'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            715:  %3 = bitcast <8 x i8> %1 to <4 x i16> 
# | same:886'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            724:  %.fca.0.1.insert = insertvalue %struct.uint16x4x2_t %.fca.0.0.insert, <4 x i16> %.fca.1.extract, 0, 1 
# | same:886'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            725:  ret %struct.uint16x4x2_t %.fca.0.1.insert 
# | same:886'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            726: } 
# | same:886'0      ~~
# |            727:  
# | same:886'0      ~
# |            728: ; Function Attrs: noinline nounwind 
# | same:886'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            729: define dso_local %struct.uint32x2x2_t @test_vtrn_u32(<2 x i32> noundef %a, <2 x i32> noundef %b) #0 { 
# | same:886'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:908'0                                                           X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:908'1                                                                                                             undefined variable: ATTR0
# |            730: entry: 
# | same:908'0      ~~~~~~~
# |            731:  %0 = bitcast <2 x i32> %a to <8 x i8> 
# | same:908'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            732:  %1 = bitcast <2 x i32> %b to <8 x i8> 
# | same:908'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            733:  %2 = bitcast <8 x i8> %0 to <2 x i32> 
# | same:908'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            734:  %3 = bitcast <8 x i8> %1 to <2 x i32> 
# | same:908'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            743:  %.fca.0.1.insert = insertvalue %struct.uint32x2x2_t %.fca.0.0.insert, <2 x i32> %.fca.1.extract, 0, 1 
# | same:908'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            744:  ret %struct.uint32x2x2_t %.fca.0.1.insert 
# | same:908'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            745: } 
# | same:908'0      ~~
# |            746:  
# | same:908'0      ~
# |            747: ; Function Attrs: noinline nounwind 
# | same:908'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            748: define dso_local %struct.float32x2x2_t @test_vtrn_f32(<2 x float> noundef %a, <2 x float> noundef %b) #0 { 
# | same:908'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:930'0                                                            X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:930'1                                                                                                                  undefined variable: ATTR0
# |            749: entry: 
# | same:930'0      ~~~~~~~
# |            750:  %0 = bitcast <2 x float> %a to <2 x i32> 
# | same:930'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            751:  %1 = bitcast <2 x float> %b to <2 x i32> 
# | same:930'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            752:  %2 = bitcast <2 x i32> %0 to <8 x i8> 
# | same:930'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            753:  %3 = bitcast <2 x i32> %1 to <8 x i8> 
# | same:930'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            764:  %.fca.0.1.insert = insertvalue %struct.float32x2x2_t %.fca.0.0.insert, <2 x float> %.fca.1.extract, 0, 1 
# | same:930'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            765:  ret %struct.float32x2x2_t %.fca.0.1.insert 
# | same:930'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            766: } 
# | same:930'0      ~~
# |            767:  
# | same:930'0      ~
# |            768: ; Function Attrs: noinline nounwind 
# | same:930'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            769: define dso_local %struct.poly8x8x2_t @test_vtrn_p8(<8 x i8> noundef %a, <8 x i8> noundef %b) #0 { 
# | same:930'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:954'0                                                         X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:954'1                                                                                                         undefined variable: ATTR0
# |            770: entry: 
# | same:954'0      ~~~~~~~
# |            771:  %vtrn.i = shufflevector <8 x i8> %a, <8 x i8> %b, <8 x i32> <i32 0, i32 8, i32 2, i32 10, i32 4, i32 12, i32 6, i32 14> 
# | same:954'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            772:  %vtrn1.i = shufflevector <8 x i8> %a, <8 x i8> %b, <8 x i32> <i32 1, i32 9, i32 3, i32 11, i32 5, i32 13, i32 7, i32 15> 
# | same:954'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            773:  %.fca.0.0.insert1 = insertvalue %struct.poly8x8x2_t poison, <8 x i8> %vtrn.i, 0, 0 
# | same:954'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            774:  %.fca.0.1.insert2 = insertvalue %struct.poly8x8x2_t %.fca.0.0.insert1, <8 x i8> %vtrn1.i, 0, 1 
# | same:954'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            779:  %.fca.0.1.insert = insertvalue %struct.poly8x8x2_t %.fca.0.0.insert, <8 x i8> %.fca.1.extract, 0, 1 
# | same:954'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            780:  ret %struct.poly8x8x2_t %.fca.0.1.insert 
# | same:954'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            781: } 
# | same:954'0      ~~
# |            782:  
# | same:954'0      ~
# |            783: ; Function Attrs: noinline nounwind 
# | same:954'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            784: define dso_local %struct.poly16x4x2_t @test_vtrn_p16(<4 x i16> noundef %a, <4 x i16> noundef %b) #0 { 
# | same:954'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:972'0                                                           X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:972'1                                                                                                             undefined variable: ATTR0
# |            785: entry: 
# | same:972'0      ~~~~~~~
# |            786:  %0 = bitcast <4 x i16> %a to <8 x i8> 
# | same:972'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            787:  %1 = bitcast <4 x i16> %b to <8 x i8> 
# | same:972'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            788:  %2 = bitcast <8 x i8> %0 to <4 x i16> 
# | same:972'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            789:  %3 = bitcast <8 x i8> %1 to <4 x i16> 
# | same:972'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            798:  %.fca.0.1.insert = insertvalue %struct.poly16x4x2_t %.fca.0.0.insert, <4 x i16> %.fca.1.extract, 0, 1 
# | same:972'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            799:  ret %struct.poly16x4x2_t %.fca.0.1.insert 
# | same:972'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            800: } 
# | same:972'0      ~~
# |            801:  
# | same:972'0      ~
# |            802: ; Function Attrs: noinline nounwind 
# | same:972'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            803: define dso_local %struct.int8x16x2_t @test_vtrnq_s8(<16 x i8> noundef %a, <16 x i8> noundef %b) #0 { 
# | same:972'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:994'0                                                          X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:994'1                                                                                                            undefined variable: ATTR0
# |            804: entry: 
# | same:994'0      ~~~~~~~
# |            805:  %vtrn.i = shufflevector <16 x i8> %a, <16 x i8> %b, <16 x i32> <i32 0, i32 16, i32 2, i32 18, i32 4, i32 20, i32 6, i32 22, i32 8, i32 24, i32 10, i32 26, i32 12, i32 28, i32 14, i32 30> 
# | same:994'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            806:  %vtrn1.i = shufflevector <16 x i8> %a, <16 x i8> %b, <16 x i32> <i32 1, i32 17, i32 3, i32 19, i32 5, i32 21, i32 7, i32 23, i32 9, i32 25, i32 11, i32 27, i32 13, i32 29, i32 15, i32 31> 
# | same:994'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            807:  %.fca.0.0.insert1 = insertvalue %struct.int8x16x2_t poison, <16 x i8> %vtrn.i, 0, 0 
# | same:994'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            808:  %.fca.0.1.insert2 = insertvalue %struct.int8x16x2_t %.fca.0.0.insert1, <16 x i8> %vtrn1.i, 0, 1 
# | same:994'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            813:  %.fca.0.1.insert = insertvalue %struct.int8x16x2_t %.fca.0.0.insert, <16 x i8> %.fca.1.extract, 0, 1 
# | same:994'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            814:  ret %struct.int8x16x2_t %.fca.0.1.insert 
# | same:994'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            815: } 
# | same:994'0      ~~
# |            816:  
# | same:994'0      ~
# |            817: ; Function Attrs: noinline nounwind 
# | same:994'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            818: define dso_local %struct.int16x8x2_t @test_vtrnq_s16(<8 x i16> noundef %a, <8 x i16> noundef %b) #0 { 
# | same:994'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:1012'0                                                          X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:1012'1                                                                                                            undefined variable: ATTR0
# |            819: entry: 
# | same:1012'0     ~~~~~~~
# |            820:  %0 = bitcast <8 x i16> %a to <16 x i8> 
# | same:1012'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            821:  %1 = bitcast <8 x i16> %b to <16 x i8> 
# | same:1012'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            822:  %2 = bitcast <16 x i8> %0 to <8 x i16> 
# | same:1012'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            823:  %3 = bitcast <16 x i8> %1 to <8 x i16> 
# | same:1012'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            832:  %.fca.0.1.insert = insertvalue %struct.int16x8x2_t %.fca.0.0.insert, <8 x i16> %.fca.1.extract, 0, 1 
# | same:1012'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            833:  ret %struct.int16x8x2_t %.fca.0.1.insert 
# | same:1012'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            834: } 
# | same:1012'0     ~~
# |            835:  
# | same:1012'0     ~
# |            836: ; Function Attrs: noinline nounwind 
# | same:1012'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            837: define dso_local %struct.int32x4x2_t @test_vtrnq_s32(<4 x i32> noundef %a, <4 x i32> noundef %b) #0 { 
# | same:1012'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:1034'0                                                          X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:1034'1                                                                                                            undefined variable: ATTR0
# |            838: entry: 
# | same:1034'0     ~~~~~~~
# |            839:  %0 = bitcast <4 x i32> %a to <16 x i8> 
# | same:1034'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            840:  %1 = bitcast <4 x i32> %b to <16 x i8> 
# | same:1034'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            841:  %2 = bitcast <16 x i8> %0 to <4 x i32> 
# | same:1034'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            842:  %3 = bitcast <16 x i8> %1 to <4 x i32> 
# | same:1034'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            851:  %.fca.0.1.insert = insertvalue %struct.int32x4x2_t %.fca.0.0.insert, <4 x i32> %.fca.1.extract, 0, 1 
# | same:1034'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            852:  ret %struct.int32x4x2_t %.fca.0.1.insert 
# | same:1034'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            853: } 
# | same:1034'0     ~~
# |            854:  
# | same:1034'0     ~
# |            855: ; Function Attrs: noinline nounwind 
# | same:1034'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            856: define dso_local %struct.uint8x16x2_t @test_vtrnq_u8(<16 x i8> noundef %a, <16 x i8> noundef %b) #0 { 
# | same:1034'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:1056'0                                                          X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:1056'1                                                                                                            undefined variable: ATTR0
# |            857: entry: 
# | same:1056'0     ~~~~~~~
# |            858:  %vtrn.i = shufflevector <16 x i8> %a, <16 x i8> %b, <16 x i32> <i32 0, i32 16, i32 2, i32 18, i32 4, i32 20, i32 6, i32 22, i32 8, i32 24, i32 10, i32 26, i32 12, i32 28, i32 14, i32 30> 
# | same:1056'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            859:  %vtrn1.i = shufflevector <16 x i8> %a, <16 x i8> %b, <16 x i32> <i32 1, i32 17, i32 3, i32 19, i32 5, i32 21, i32 7, i32 23, i32 9, i32 25, i32 11, i32 27, i32 13, i32 29, i32 15, i32 31> 
# | same:1056'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            860:  %.fca.0.0.insert1 = insertvalue %struct.uint8x16x2_t poison, <16 x i8> %vtrn.i, 0, 0 
# | same:1056'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            861:  %.fca.0.1.insert2 = insertvalue %struct.uint8x16x2_t %.fca.0.0.insert1, <16 x i8> %vtrn1.i, 0, 1 
# | same:1056'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            866:  %.fca.0.1.insert = insertvalue %struct.uint8x16x2_t %.fca.0.0.insert, <16 x i8> %.fca.1.extract, 0, 1 
# | same:1056'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            867:  ret %struct.uint8x16x2_t %.fca.0.1.insert 
# | same:1056'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            868: } 
# | same:1056'0     ~~
# |            869:  
# | same:1056'0     ~
# |            870: ; Function Attrs: noinline nounwind 
# | same:1056'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            871: define dso_local %struct.uint16x8x2_t @test_vtrnq_u16(<8 x i16> noundef %a, <8 x i16> noundef %b) #0 { 
# | same:1056'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:1074'0                                                           X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:1074'1                                                                                                             undefined variable: ATTR0
# |            872: entry: 
# | same:1074'0     ~~~~~~~
# |            873:  %0 = bitcast <8 x i16> %a to <16 x i8> 
# | same:1074'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            874:  %1 = bitcast <8 x i16> %b to <16 x i8> 
# | same:1074'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            875:  %2 = bitcast <16 x i8> %0 to <8 x i16> 
# | same:1074'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            876:  %3 = bitcast <16 x i8> %1 to <8 x i16> 
# | same:1074'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            885:  %.fca.0.1.insert = insertvalue %struct.uint16x8x2_t %.fca.0.0.insert, <8 x i16> %.fca.1.extract, 0, 1 
# | same:1074'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            886:  ret %struct.uint16x8x2_t %.fca.0.1.insert 
# | same:1074'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            887: } 
# | same:1074'0     ~~
# |            888:  
# | same:1074'0     ~
# |            889: ; Function Attrs: noinline nounwind 
# | same:1074'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            890: define dso_local %struct.uint32x4x2_t @test_vtrnq_u32(<4 x i32> noundef %a, <4 x i32> noundef %b) #0 { 
# | same:1074'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:1096'0                                                           X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:1096'1                                                                                                             undefined variable: ATTR0
# |            891: entry: 
# | same:1096'0     ~~~~~~~
# |            892:  %0 = bitcast <4 x i32> %a to <16 x i8> 
# | same:1096'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            893:  %1 = bitcast <4 x i32> %b to <16 x i8> 
# | same:1096'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            894:  %2 = bitcast <16 x i8> %0 to <4 x i32> 
# | same:1096'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            895:  %3 = bitcast <16 x i8> %1 to <4 x i32> 
# | same:1096'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            904:  %.fca.0.1.insert = insertvalue %struct.uint32x4x2_t %.fca.0.0.insert, <4 x i32> %.fca.1.extract, 0, 1 
# | same:1096'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            905:  ret %struct.uint32x4x2_t %.fca.0.1.insert 
# | same:1096'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            906: } 
# | same:1096'0     ~~
# |            907:  
# | same:1096'0     ~
# |            908: ; Function Attrs: noinline nounwind 
# | same:1096'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            909: define dso_local %struct.float32x4x2_t @test_vtrnq_f32(<4 x float> noundef %a, <4 x float> noundef %b) #0 { 
# | same:1096'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:1118'0                                                            X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:1118'1                                                                                                                  undefined variable: ATTR0
# |            910: entry: 
# | same:1118'0     ~~~~~~~
# |            911:  %0 = bitcast <4 x float> %a to <4 x i32> 
# | same:1118'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            912:  %1 = bitcast <4 x float> %b to <4 x i32> 
# | same:1118'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            913:  %2 = bitcast <4 x i32> %0 to <16 x i8> 
# | same:1118'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            914:  %3 = bitcast <4 x i32> %1 to <16 x i8> 
# | same:1118'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            925:  %.fca.0.1.insert = insertvalue %struct.float32x4x2_t %.fca.0.0.insert, <4 x float> %.fca.1.extract, 0, 1 
# | same:1118'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            926:  ret %struct.float32x4x2_t %.fca.0.1.insert 
# | same:1118'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            927: } 
# | same:1118'0     ~~
# |            928:  
# | same:1118'0     ~
# |            929: ; Function Attrs: noinline nounwind 
# | same:1118'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            930: define dso_local %struct.poly8x16x2_t @test_vtrnq_p8(<16 x i8> noundef %a, <16 x i8> noundef %b) #0 { 
# | same:1118'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:1142'0                                                          X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:1142'1                                                                                                            undefined variable: ATTR0
# |            931: entry: 
# | same:1142'0     ~~~~~~~
# |            932:  %vtrn.i = shufflevector <16 x i8> %a, <16 x i8> %b, <16 x i32> <i32 0, i32 16, i32 2, i32 18, i32 4, i32 20, i32 6, i32 22, i32 8, i32 24, i32 10, i32 26, i32 12, i32 28, i32 14, i32 30> 
# | same:1142'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            933:  %vtrn1.i = shufflevector <16 x i8> %a, <16 x i8> %b, <16 x i32> <i32 1, i32 17, i32 3, i32 19, i32 5, i32 21, i32 7, i32 23, i32 9, i32 25, i32 11, i32 27, i32 13, i32 29, i32 15, i32 31> 
# | same:1142'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            934:  %.fca.0.0.insert1 = insertvalue %struct.poly8x16x2_t poison, <16 x i8> %vtrn.i, 0, 0 
# | same:1142'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            935:  %.fca.0.1.insert2 = insertvalue %struct.poly8x16x2_t %.fca.0.0.insert1, <16 x i8> %vtrn1.i, 0, 1 
# | same:1142'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            940:  %.fca.0.1.insert = insertvalue %struct.poly8x16x2_t %.fca.0.0.insert, <16 x i8> %.fca.1.extract, 0, 1 
# | same:1142'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            941:  ret %struct.poly8x16x2_t %.fca.0.1.insert 
# | same:1142'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            942: } 
# | same:1142'0     ~~
# |            943:  
# | same:1142'0     ~
# |            944: ; Function Attrs: noinline nounwind 
# | same:1142'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            945: define dso_local %struct.poly16x8x2_t @test_vtrnq_p16(<8 x i16> noundef %a, <8 x i16> noundef %b) #0 { 
# | same:1142'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | same:1160'0                                                           X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: match failed for invalid pattern
# | same:1160'1                                                                                                             undefined variable: ATTR0
# |            946: entry: 
# | same:1160'0     ~~~~~~~
# |            947:  %0 = bitcast <8 x i16> %a to <16 x i8> 
# | same:1160'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            948:  %1 = bitcast <8 x i16> %b to <16 x i8> 
# | same:1160'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            949:  %2 = bitcast <16 x i8> %0 to <8 x i16> 
# | same:1160'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            950:  %3 = bitcast <16 x i8> %1 to <8 x i16> 
# | same:1160'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>

If these failures are unrelated to your changes (for example tests are broken or flaky at HEAD), please open an issue at https://github.com/llvm/llvm-project/issues and add the `infrastructure` label.

https://github.com/llvm/llvm-project/pull/195527


More information about the cfe-commits mailing list