[ORC] Add std::tuple support to SimplePackedSerialization.
[llvm-project.git] / llvm / test / CodeGen / Hexagon / autohvx / align2-64b.ll
blob34bc04432870a6e2fea431f0b7c2f7decc953d0b
1 ; RUN: llc -march=hexagon < %s | FileCheck %s
3 ; CHECK-LABEL: test_00:
4 ; CHECK-NOT: v0 =
5 ; CHECK: jumpr r31
6 define <64 x i8> @test_00(<64 x i8> %v0, <64 x i8> %v1) #0 {
7   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
8   ret <64 x i8> %t0
11 ; CHECK-LABEL: test_01:
12 ; CHECK: v0 = valign(v0,v0,#1)
13 ; CHECK: jumpr r31
14 define <64 x i8> @test_01(<64 x i8> %v0, <64 x i8> %v1) #0 {
15   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
16   ret <64 x i8> %t0
19 ; CHECK-LABEL: test_02:
20 ; CHECK: v0 = valign(v0,v0,#2)
21 ; CHECK: jumpr r31
22 define <64 x i8> @test_02(<64 x i8> %v0, <64 x i8> %v1) #0 {
23   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
24   ret <64 x i8> %t0
27 ; CHECK-LABEL: test_03:
28 ; CHECK: v0 = valign(v0,v0,#3)
29 ; CHECK: jumpr r31
30 define <64 x i8> @test_03(<64 x i8> %v0, <64 x i8> %v1) #0 {
31   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
32   ret <64 x i8> %t0
35 ; CHECK-LABEL: test_04:
36 ; CHECK: v0 = valign(v0,v0,#4)
37 ; CHECK: jumpr r31
38 define <64 x i8> @test_04(<64 x i8> %v0, <64 x i8> %v1) #0 {
39   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
40   ret <64 x i8> %t0
43 ; CHECK-LABEL: test_05:
44 ; CHECK: v0 = valign(v0,v0,#5)
45 ; CHECK: jumpr r31
46 define <64 x i8> @test_05(<64 x i8> %v0, <64 x i8> %v1) #0 {
47   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
48   ret <64 x i8> %t0
51 ; CHECK-LABEL: test_06:
52 ; CHECK: v0 = valign(v0,v0,#6)
53 ; CHECK: jumpr r31
54 define <64 x i8> @test_06(<64 x i8> %v0, <64 x i8> %v1) #0 {
55   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
56   ret <64 x i8> %t0
59 ; CHECK-LABEL: test_07:
60 ; CHECK: v0 = valign(v0,v0,#7)
61 ; CHECK: jumpr r31
62 define <64 x i8> @test_07(<64 x i8> %v0, <64 x i8> %v1) #0 {
63   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
64   ret <64 x i8> %t0
67 ; CHECK-LABEL: test_08:
68 ; CHECK: r[[REG08:[0-9]+]] = #8
69 ; CHECK: v0 = valign(v0,v0,r[[REG08]])
70 ; CHECK: jumpr r31
71 define <64 x i8> @test_08(<64 x i8> %v0, <64 x i8> %v1) #0 {
72   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
73   ret <64 x i8> %t0
76 ; CHECK-LABEL: test_09:
77 ; CHECK: r[[REG09:[0-9]+]] = #9
78 ; CHECK: v0 = valign(v0,v0,r[[REG09]])
79 ; CHECK: jumpr r31
80 define <64 x i8> @test_09(<64 x i8> %v0, <64 x i8> %v1) #0 {
81   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
82   ret <64 x i8> %t0
85 ; CHECK-LABEL: test_10:
86 ; CHECK: r[[REG10:[0-9]+]] = #10
87 ; CHECK: v0 = valign(v0,v0,r[[REG10]])
88 ; CHECK: jumpr r31
89 define <64 x i8> @test_10(<64 x i8> %v0, <64 x i8> %v1) #0 {
90   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
91   ret <64 x i8> %t0
94 ; CHECK-LABEL: test_11:
95 ; CHECK: r[[REG11:[0-9]+]] = #11
96 ; CHECK: v0 = valign(v0,v0,r[[REG11]])
97 ; CHECK: jumpr r31
98 define <64 x i8> @test_11(<64 x i8> %v0, <64 x i8> %v1) #0 {
99   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
100   ret <64 x i8> %t0
103 ; CHECK-LABEL: test_12:
104 ; CHECK: r[[REG12:[0-9]+]] = #12
105 ; CHECK: v0 = valign(v0,v0,r[[REG12]])
106 ; CHECK: jumpr r31
107 define <64 x i8> @test_12(<64 x i8> %v0, <64 x i8> %v1) #0 {
108   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
109   ret <64 x i8> %t0
112 ; CHECK-LABEL: test_13:
113 ; CHECK: r[[REG13:[0-9]+]] = #13
114 ; CHECK: v0 = valign(v0,v0,r[[REG13]])
115 ; CHECK: jumpr r31
116 define <64 x i8> @test_13(<64 x i8> %v0, <64 x i8> %v1) #0 {
117   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
118   ret <64 x i8> %t0
121 ; CHECK-LABEL: test_14:
122 ; CHECK: r[[REG14:[0-9]+]] = #14
123 ; CHECK: v0 = valign(v0,v0,r[[REG14]])
124 ; CHECK: jumpr r31
125 define <64 x i8> @test_14(<64 x i8> %v0, <64 x i8> %v1) #0 {
126   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
127   ret <64 x i8> %t0
130 ; CHECK-LABEL: test_15:
131 ; CHECK: r[[REG15:[0-9]+]] = #15
132 ; CHECK: v0 = valign(v0,v0,r[[REG15]])
133 ; CHECK: jumpr r31
134 define <64 x i8> @test_15(<64 x i8> %v0, <64 x i8> %v1) #0 {
135   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
136   ret <64 x i8> %t0
139 ; CHECK-LABEL: test_16:
140 ; CHECK: r[[REG16:[0-9]+]] = #16
141 ; CHECK: v0 = valign(v0,v0,r[[REG16]])
142 ; CHECK: jumpr r31
143 define <64 x i8> @test_16(<64 x i8> %v0, <64 x i8> %v1) #0 {
144   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
145   ret <64 x i8> %t0
148 ; CHECK-LABEL: test_17:
149 ; CHECK: r[[REG17:[0-9]+]] = #17
150 ; CHECK: v0 = valign(v0,v0,r[[REG17]])
151 ; CHECK: jumpr r31
152 define <64 x i8> @test_17(<64 x i8> %v0, <64 x i8> %v1) #0 {
153   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
154   ret <64 x i8> %t0
157 ; CHECK-LABEL: test_18:
158 ; CHECK: r[[REG18:[0-9]+]] = #18
159 ; CHECK: v0 = valign(v0,v0,r[[REG18]])
160 ; CHECK: jumpr r31
161 define <64 x i8> @test_18(<64 x i8> %v0, <64 x i8> %v1) #0 {
162   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
163   ret <64 x i8> %t0
166 ; CHECK-LABEL: test_19:
167 ; CHECK: r[[REG19:[0-9]+]] = #19
168 ; CHECK: v0 = valign(v0,v0,r[[REG19]])
169 ; CHECK: jumpr r31
170 define <64 x i8> @test_19(<64 x i8> %v0, <64 x i8> %v1) #0 {
171   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
172   ret <64 x i8> %t0
175 ; CHECK-LABEL: test_20:
176 ; CHECK: r[[REG20:[0-9]+]] = #20
177 ; CHECK: v0 = valign(v0,v0,r[[REG20]])
178 ; CHECK: jumpr r31
179 define <64 x i8> @test_20(<64 x i8> %v0, <64 x i8> %v1) #0 {
180   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
181   ret <64 x i8> %t0
184 ; CHECK-LABEL: test_21:
185 ; CHECK: r[[REG21:[0-9]+]] = #21
186 ; CHECK: v0 = valign(v0,v0,r[[REG21]])
187 ; CHECK: jumpr r31
188 define <64 x i8> @test_21(<64 x i8> %v0, <64 x i8> %v1) #0 {
189   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
190   ret <64 x i8> %t0
193 ; CHECK-LABEL: test_22:
194 ; CHECK: r[[REG22:[0-9]+]] = #22
195 ; CHECK: v0 = valign(v0,v0,r[[REG22]])
196 ; CHECK: jumpr r31
197 define <64 x i8> @test_22(<64 x i8> %v0, <64 x i8> %v1) #0 {
198   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
199   ret <64 x i8> %t0
202 ; CHECK-LABEL: test_23:
203 ; CHECK: r[[REG23:[0-9]+]] = #23
204 ; CHECK: v0 = valign(v0,v0,r[[REG23]])
205 ; CHECK: jumpr r31
206 define <64 x i8> @test_23(<64 x i8> %v0, <64 x i8> %v1) #0 {
207   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
208   ret <64 x i8> %t0
211 ; CHECK-LABEL: test_24:
212 ; CHECK: r[[REG24:[0-9]+]] = #24
213 ; CHECK: v0 = valign(v0,v0,r[[REG24]])
214 ; CHECK: jumpr r31
215 define <64 x i8> @test_24(<64 x i8> %v0, <64 x i8> %v1) #0 {
216   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
217   ret <64 x i8> %t0
220 ; CHECK-LABEL: test_25:
221 ; CHECK: r[[REG25:[0-9]+]] = #25
222 ; CHECK: v0 = valign(v0,v0,r[[REG25]])
223 ; CHECK: jumpr r31
224 define <64 x i8> @test_25(<64 x i8> %v0, <64 x i8> %v1) #0 {
225   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
226   ret <64 x i8> %t0
229 ; CHECK-LABEL: test_26:
230 ; CHECK: r[[REG26:[0-9]+]] = #26
231 ; CHECK: v0 = valign(v0,v0,r[[REG26]])
232 ; CHECK: jumpr r31
233 define <64 x i8> @test_26(<64 x i8> %v0, <64 x i8> %v1) #0 {
234   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
235   ret <64 x i8> %t0
238 ; CHECK-LABEL: test_27:
239 ; CHECK: r[[REG27:[0-9]+]] = #27
240 ; CHECK: v0 = valign(v0,v0,r[[REG27]])
241 ; CHECK: jumpr r31
242 define <64 x i8> @test_27(<64 x i8> %v0, <64 x i8> %v1) #0 {
243   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
244   ret <64 x i8> %t0
247 ; CHECK-LABEL: test_28:
248 ; CHECK: r[[REG28:[0-9]+]] = #28
249 ; CHECK: v0 = valign(v0,v0,r[[REG28]])
250 ; CHECK: jumpr r31
251 define <64 x i8> @test_28(<64 x i8> %v0, <64 x i8> %v1) #0 {
252   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
253   ret <64 x i8> %t0
256 ; CHECK-LABEL: test_29:
257 ; CHECK: r[[REG29:[0-9]+]] = #29
258 ; CHECK: v0 = valign(v0,v0,r[[REG29]])
259 ; CHECK: jumpr r31
260 define <64 x i8> @test_29(<64 x i8> %v0, <64 x i8> %v1) #0 {
261   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
262   ret <64 x i8> %t0
265 ; CHECK-LABEL: test_30:
266 ; CHECK: r[[REG30:[0-9]+]] = #30
267 ; CHECK: v0 = valign(v0,v0,r[[REG30]])
268 ; CHECK: jumpr r31
269 define <64 x i8> @test_30(<64 x i8> %v0, <64 x i8> %v1) #0 {
270   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
271   ret <64 x i8> %t0
274 ; CHECK-LABEL: test_31:
275 ; CHECK: r[[REG31:[0-9]+]] = #31
276 ; CHECK: v0 = valign(v0,v0,r[[REG31]])
277 ; CHECK: jumpr r31
278 define <64 x i8> @test_31(<64 x i8> %v0, <64 x i8> %v1) #0 {
279   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
280   ret <64 x i8> %t0
283 ; CHECK-LABEL: test_32:
284 ; CHECK: r[[REG32:[0-9]+]] = #32
285 ; CHECK: v0 = valign(v1,v0,r[[REG32]])
286 ; CHECK: jumpr r31
287 define <64 x i8> @test_32(<64 x i8> %v0, <64 x i8> %v1) #0 {
288   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
289   ret <64 x i8> %t0
292 ; CHECK-LABEL: test_33:
293 ; CHECK: r[[REG33:[0-9]+]] = #33
294 ; CHECK: v0 = valign(v1,v0,r[[REG33]])
295 ; CHECK: jumpr r31
296 define <64 x i8> @test_33(<64 x i8> %v0, <64 x i8> %v1) #0 {
297   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
298   ret <64 x i8> %t0
301 ; CHECK-LABEL: test_34:
302 ; CHECK: r[[REG34:[0-9]+]] = #34
303 ; CHECK: v0 = valign(v1,v0,r[[REG34]])
304 ; CHECK: jumpr r31
305 define <64 x i8> @test_34(<64 x i8> %v0, <64 x i8> %v1) #0 {
306   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
307   ret <64 x i8> %t0
310 ; CHECK-LABEL: test_35:
311 ; CHECK: r[[REG35:[0-9]+]] = #35
312 ; CHECK: v0 = valign(v1,v0,r[[REG35]])
313 ; CHECK: jumpr r31
314 define <64 x i8> @test_35(<64 x i8> %v0, <64 x i8> %v1) #0 {
315   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
316   ret <64 x i8> %t0
319 ; CHECK-LABEL: test_36:
320 ; CHECK: r[[REG36:[0-9]+]] = #36
321 ; CHECK: v0 = valign(v1,v0,r[[REG36]])
322 ; CHECK: jumpr r31
323 define <64 x i8> @test_36(<64 x i8> %v0, <64 x i8> %v1) #0 {
324   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
325   ret <64 x i8> %t0
328 ; CHECK-LABEL: test_37:
329 ; CHECK: r[[REG37:[0-9]+]] = #37
330 ; CHECK: v0 = valign(v1,v0,r[[REG37]])
331 ; CHECK: jumpr r31
332 define <64 x i8> @test_37(<64 x i8> %v0, <64 x i8> %v1) #0 {
333   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
334   ret <64 x i8> %t0
337 ; CHECK-LABEL: test_38:
338 ; CHECK: r[[REG38:[0-9]+]] = #38
339 ; CHECK: v0 = valign(v1,v0,r[[REG38]])
340 ; CHECK: jumpr r31
341 define <64 x i8> @test_38(<64 x i8> %v0, <64 x i8> %v1) #0 {
342   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
343   ret <64 x i8> %t0
346 ; CHECK-LABEL: test_39:
347 ; CHECK: r[[REG39:[0-9]+]] = #39
348 ; CHECK: v0 = valign(v1,v0,r[[REG39]])
349 ; CHECK: jumpr r31
350 define <64 x i8> @test_39(<64 x i8> %v0, <64 x i8> %v1) #0 {
351   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
352   ret <64 x i8> %t0
355 ; CHECK-LABEL: test_40:
356 ; CHECK: r[[REG40:[0-9]+]] = #40
357 ; CHECK: v0 = valign(v1,v0,r[[REG40]])
358 ; CHECK: jumpr r31
359 define <64 x i8> @test_40(<64 x i8> %v0, <64 x i8> %v1) #0 {
360   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
361   ret <64 x i8> %t0
364 ; CHECK-LABEL: test_41:
365 ; CHECK: r[[REG41:[0-9]+]] = #41
366 ; CHECK: v0 = valign(v1,v0,r[[REG41]])
367 ; CHECK: jumpr r31
368 define <64 x i8> @test_41(<64 x i8> %v0, <64 x i8> %v1) #0 {
369   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
370   ret <64 x i8> %t0
373 ; CHECK-LABEL: test_42:
374 ; CHECK: r[[REG42:[0-9]+]] = #42
375 ; CHECK: v0 = valign(v1,v0,r[[REG42]])
376 ; CHECK: jumpr r31
377 define <64 x i8> @test_42(<64 x i8> %v0, <64 x i8> %v1) #0 {
378   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
379   ret <64 x i8> %t0
382 ; CHECK-LABEL: test_43:
383 ; CHECK: r[[REG43:[0-9]+]] = #43
384 ; CHECK: v0 = valign(v1,v0,r[[REG43]])
385 ; CHECK: jumpr r31
386 define <64 x i8> @test_43(<64 x i8> %v0, <64 x i8> %v1) #0 {
387   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
388   ret <64 x i8> %t0
391 ; CHECK-LABEL: test_44:
392 ; CHECK: r[[REG44:[0-9]+]] = #44
393 ; CHECK: v0 = valign(v1,v0,r[[REG44]])
394 ; CHECK: jumpr r31
395 define <64 x i8> @test_44(<64 x i8> %v0, <64 x i8> %v1) #0 {
396   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
397   ret <64 x i8> %t0
400 ; CHECK-LABEL: test_45:
401 ; CHECK: r[[REG45:[0-9]+]] = #45
402 ; CHECK: v0 = valign(v1,v0,r[[REG45]])
403 ; CHECK: jumpr r31
404 define <64 x i8> @test_45(<64 x i8> %v0, <64 x i8> %v1) #0 {
405   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
406   ret <64 x i8> %t0
409 ; CHECK-LABEL: test_46:
410 ; CHECK: r[[REG46:[0-9]+]] = #46
411 ; CHECK: v0 = valign(v1,v0,r[[REG46]])
412 ; CHECK: jumpr r31
413 define <64 x i8> @test_46(<64 x i8> %v0, <64 x i8> %v1) #0 {
414   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
415   ret <64 x i8> %t0
418 ; CHECK-LABEL: test_47:
419 ; CHECK: r[[REG47:[0-9]+]] = #47
420 ; CHECK: v0 = valign(v1,v0,r[[REG47]])
421 ; CHECK: jumpr r31
422 define <64 x i8> @test_47(<64 x i8> %v0, <64 x i8> %v1) #0 {
423   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
424   ret <64 x i8> %t0
427 ; CHECK-LABEL: test_48:
428 ; CHECK: r[[REG48:[0-9]+]] = #48
429 ; CHECK: v0 = valign(v1,v0,r[[REG48]])
430 ; CHECK: jumpr r31
431 define <64 x i8> @test_48(<64 x i8> %v0, <64 x i8> %v1) #0 {
432   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
433   ret <64 x i8> %t0
436 ; CHECK-LABEL: test_49:
437 ; CHECK: r[[REG49:[0-9]+]] = #49
438 ; CHECK: v0 = valign(v1,v0,r[[REG49]])
439 ; CHECK: jumpr r31
440 define <64 x i8> @test_49(<64 x i8> %v0, <64 x i8> %v1) #0 {
441   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
442   ret <64 x i8> %t0
445 ; CHECK-LABEL: test_50:
446 ; CHECK: r[[REG50:[0-9]+]] = #50
447 ; CHECK: v0 = valign(v1,v0,r[[REG50]])
448 ; CHECK: jumpr r31
449 define <64 x i8> @test_50(<64 x i8> %v0, <64 x i8> %v1) #0 {
450   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
451   ret <64 x i8> %t0
454 ; CHECK-LABEL: test_51:
455 ; CHECK: r[[REG51:[0-9]+]] = #51
456 ; CHECK: v0 = valign(v1,v0,r[[REG51]])
457 ; CHECK: jumpr r31
458 define <64 x i8> @test_51(<64 x i8> %v0, <64 x i8> %v1) #0 {
459   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
460   ret <64 x i8> %t0
463 ; CHECK-LABEL: test_52:
464 ; CHECK: r[[REG52:[0-9]+]] = #52
465 ; CHECK: v0 = valign(v1,v0,r[[REG52]])
466 ; CHECK: jumpr r31
467 define <64 x i8> @test_52(<64 x i8> %v0, <64 x i8> %v1) #0 {
468   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
469   ret <64 x i8> %t0
472 ; CHECK-LABEL: test_53:
473 ; CHECK: r[[REG53:[0-9]+]] = #53
474 ; CHECK: v0 = valign(v1,v0,r[[REG53]])
475 ; CHECK: jumpr r31
476 define <64 x i8> @test_53(<64 x i8> %v0, <64 x i8> %v1) #0 {
477   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
478   ret <64 x i8> %t0
481 ; CHECK-LABEL: test_54:
482 ; CHECK: r[[REG54:[0-9]+]] = #54
483 ; CHECK: v0 = valign(v1,v0,r[[REG54]])
484 ; CHECK: jumpr r31
485 define <64 x i8> @test_54(<64 x i8> %v0, <64 x i8> %v1) #0 {
486   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
487   ret <64 x i8> %t0
490 ; CHECK-LABEL: test_55:
491 ; CHECK: r[[REG55:[0-9]+]] = #55
492 ; CHECK: v0 = valign(v1,v0,r[[REG55]])
493 ; CHECK: jumpr r31
494 define <64 x i8> @test_55(<64 x i8> %v0, <64 x i8> %v1) #0 {
495   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
496   ret <64 x i8> %t0
499 ; CHECK-LABEL: test_56:
500 ; CHECK: r[[REG56:[0-9]+]] = #56
501 ; CHECK: v0 = valign(v1,v0,r[[REG56]])
502 ; CHECK: jumpr r31
503 define <64 x i8> @test_56(<64 x i8> %v0, <64 x i8> %v1) #0 {
504   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
505   ret <64 x i8> %t0
508 ; CHECK-LABEL: test_57:
509 ; CHECK: v0 = vlalign(v1,v0,#7)
510 ; CHECK: jumpr r31
511 define <64 x i8> @test_57(<64 x i8> %v0, <64 x i8> %v1) #0 {
512   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
513   ret <64 x i8> %t0
516 ; CHECK-LABEL: test_58:
517 ; CHECK: v0 = vlalign(v1,v0,#6)
518 ; CHECK: jumpr r31
519 define <64 x i8> @test_58(<64 x i8> %v0, <64 x i8> %v1) #0 {
520   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
521   ret <64 x i8> %t0
524 ; CHECK-LABEL: test_59:
525 ; CHECK: v0 = vlalign(v1,v0,#5)
526 ; CHECK: jumpr r31
527 define <64 x i8> @test_59(<64 x i8> %v0, <64 x i8> %v1) #0 {
528   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
529   ret <64 x i8> %t0
532 ; CHECK-LABEL: test_60:
533 ; CHECK: v0 = vlalign(v1,v0,#4)
534 ; CHECK: jumpr r31
535 define <64 x i8> @test_60(<64 x i8> %v0, <64 x i8> %v1) #0 {
536   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
537   ret <64 x i8> %t0
540 ; CHECK-LABEL: test_61:
541 ; CHECK: v0 = vlalign(v1,v0,#3)
542 ; CHECK: jumpr r31
543 define <64 x i8> @test_61(<64 x i8> %v0, <64 x i8> %v1) #0 {
544   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
545   ret <64 x i8> %t0
548 ; CHECK-LABEL: test_62:
549 ; CHECK: v0 = vlalign(v1,v0,#2)
550 ; CHECK: jumpr r31
551 define <64 x i8> @test_62(<64 x i8> %v0, <64 x i8> %v1) #0 {
552   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
553   ret <64 x i8> %t0
556 ; CHECK-LABEL: test_63:
557 ; CHECK: v0 = vlalign(v1,v0,#1)
558 ; CHECK: jumpr r31
559 define <64 x i8> @test_63(<64 x i8> %v0, <64 x i8> %v1) #0 {
560   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
561   ret <64 x i8> %t0
564 ; CHECK-LABEL: test_64:
565 ; CHECK: v0 = v1
566 ; CHECK: jumpr r31
567 define <64 x i8> @test_64(<64 x i8> %v0, <64 x i8> %v1) #0 {
568   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
569   ret <64 x i8> %t0
572 ; CHECK-LABEL: test_65:
573 ; CHECK: v0 = valign(v0,v1,#1)
574 ; CHECK: jumpr r31
575 define <64 x i8> @test_65(<64 x i8> %v0, <64 x i8> %v1) #0 {
576   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
577   ret <64 x i8> %t0
580 ; CHECK-LABEL: test_66:
581 ; CHECK: v0 = valign(v0,v1,#2)
582 ; CHECK: jumpr r31
583 define <64 x i8> @test_66(<64 x i8> %v0, <64 x i8> %v1) #0 {
584   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
585   ret <64 x i8> %t0
588 ; CHECK-LABEL: test_67:
589 ; CHECK: v0 = valign(v0,v1,#3)
590 ; CHECK: jumpr r31
591 define <64 x i8> @test_67(<64 x i8> %v0, <64 x i8> %v1) #0 {
592   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
593   ret <64 x i8> %t0
596 ; CHECK-LABEL: test_68:
597 ; CHECK: v0 = valign(v0,v1,#4)
598 ; CHECK: jumpr r31
599 define <64 x i8> @test_68(<64 x i8> %v0, <64 x i8> %v1) #0 {
600   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
601   ret <64 x i8> %t0
604 ; CHECK-LABEL: test_69:
605 ; CHECK: v0 = valign(v0,v1,#5)
606 ; CHECK: jumpr r31
607 define <64 x i8> @test_69(<64 x i8> %v0, <64 x i8> %v1) #0 {
608   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
609   ret <64 x i8> %t0
612 ; CHECK-LABEL: test_70:
613 ; CHECK: v0 = valign(v0,v1,#6)
614 ; CHECK: jumpr r31
615 define <64 x i8> @test_70(<64 x i8> %v0, <64 x i8> %v1) #0 {
616   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
617   ret <64 x i8> %t0
620 ; CHECK-LABEL: test_71:
621 ; CHECK: v0 = valign(v0,v1,#7)
622 ; CHECK: jumpr r31
623 define <64 x i8> @test_71(<64 x i8> %v0, <64 x i8> %v1) #0 {
624   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
625   ret <64 x i8> %t0
628 ; CHECK-LABEL: test_72:
629 ; CHECK: r[[REG72:[0-9]+]] = #8
630 ; CHECK: v0 = valign(v0,v1,r[[REG72]])
631 ; CHECK: jumpr r31
632 define <64 x i8> @test_72(<64 x i8> %v0, <64 x i8> %v1) #0 {
633   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
634   ret <64 x i8> %t0
637 ; CHECK-LABEL: test_73:
638 ; CHECK: r[[REG73:[0-9]+]] = #9
639 ; CHECK: v0 = valign(v0,v1,r[[REG73]])
640 ; CHECK: jumpr r31
641 define <64 x i8> @test_73(<64 x i8> %v0, <64 x i8> %v1) #0 {
642   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
643   ret <64 x i8> %t0
646 ; CHECK-LABEL: test_74:
647 ; CHECK: r[[REG74:[0-9]+]] = #10
648 ; CHECK: v0 = valign(v0,v1,r[[REG74]])
649 ; CHECK: jumpr r31
650 define <64 x i8> @test_74(<64 x i8> %v0, <64 x i8> %v1) #0 {
651   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
652   ret <64 x i8> %t0
655 ; CHECK-LABEL: test_75:
656 ; CHECK: r[[REG75:[0-9]+]] = #11
657 ; CHECK: v0 = valign(v0,v1,r[[REG75]])
658 ; CHECK: jumpr r31
659 define <64 x i8> @test_75(<64 x i8> %v0, <64 x i8> %v1) #0 {
660   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
661   ret <64 x i8> %t0
664 ; CHECK-LABEL: test_76:
665 ; CHECK: r[[REG76:[0-9]+]] = #12
666 ; CHECK: v0 = valign(v0,v1,r[[REG76]])
667 ; CHECK: jumpr r31
668 define <64 x i8> @test_76(<64 x i8> %v0, <64 x i8> %v1) #0 {
669   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 108, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
670   ret <64 x i8> %t0
673 ; CHECK-LABEL: test_77:
674 ; CHECK: r[[REG77:[0-9]+]] = #13
675 ; CHECK: v0 = valign(v0,v1,r[[REG77]])
676 ; CHECK: jumpr r31
677 define <64 x i8> @test_77(<64 x i8> %v0, <64 x i8> %v1) #0 {
678   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 108, i32 109, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
679   ret <64 x i8> %t0
682 ; CHECK-LABEL: test_78:
683 ; CHECK: r[[REG78:[0-9]+]] = #14
684 ; CHECK: v0 = valign(v0,v1,r[[REG78]])
685 ; CHECK: jumpr r31
686 define <64 x i8> @test_78(<64 x i8> %v0, <64 x i8> %v1) #0 {
687   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 108, i32 109, i32 110, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
688   ret <64 x i8> %t0
691 ; CHECK-LABEL: test_79:
692 ; CHECK: r[[REG79:[0-9]+]] = #15
693 ; CHECK: v0 = valign(v0,v1,r[[REG79]])
694 ; CHECK: jumpr r31
695 define <64 x i8> @test_79(<64 x i8> %v0, <64 x i8> %v1) #0 {
696   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 108, i32 109, i32 110, i32 111, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
697   ret <64 x i8> %t0
700 ; CHECK-LABEL: test_80:
701 ; CHECK: r[[REG80:[0-9]+]] = #16
702 ; CHECK: v0 = valign(v0,v1,r[[REG80]])
703 ; CHECK: jumpr r31
704 define <64 x i8> @test_80(<64 x i8> %v0, <64 x i8> %v1) #0 {
705   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 108, i32 109, i32 110, i32 111, i32 112, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
706   ret <64 x i8> %t0
709 ; CHECK-LABEL: test_81:
710 ; CHECK: r[[REG81:[0-9]+]] = #17
711 ; CHECK: v0 = valign(v0,v1,r[[REG81]])
712 ; CHECK: jumpr r31
713 define <64 x i8> @test_81(<64 x i8> %v0, <64 x i8> %v1) #0 {
714   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 108, i32 109, i32 110, i32 111, i32 112, i32 113, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
715   ret <64 x i8> %t0
718 ; CHECK-LABEL: test_82:
719 ; CHECK: r[[REG82:[0-9]+]] = #18
720 ; CHECK: v0 = valign(v0,v1,r[[REG82]])
721 ; CHECK: jumpr r31
722 define <64 x i8> @test_82(<64 x i8> %v0, <64 x i8> %v1) #0 {
723   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 108, i32 109, i32 110, i32 111, i32 112, i32 113, i32 114, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
724   ret <64 x i8> %t0
727 ; CHECK-LABEL: test_83:
728 ; CHECK: r[[REG83:[0-9]+]] = #19
729 ; CHECK: v0 = valign(v0,v1,r[[REG83]])
730 ; CHECK: jumpr r31
731 define <64 x i8> @test_83(<64 x i8> %v0, <64 x i8> %v1) #0 {
732   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 108, i32 109, i32 110, i32 111, i32 112, i32 113, i32 114, i32 115, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
733   ret <64 x i8> %t0
736 ; CHECK-LABEL: test_84:
737 ; CHECK: r[[REG84:[0-9]+]] = #20
738 ; CHECK: v0 = valign(v0,v1,r[[REG84]])
739 ; CHECK: jumpr r31
740 define <64 x i8> @test_84(<64 x i8> %v0, <64 x i8> %v1) #0 {
741   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 108, i32 109, i32 110, i32 111, i32 112, i32 113, i32 114, i32 115, i32 116, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
742   ret <64 x i8> %t0
745 ; CHECK-LABEL: test_85:
746 ; CHECK: r[[REG85:[0-9]+]] = #21
747 ; CHECK: v0 = valign(v0,v1,r[[REG85]])
748 ; CHECK: jumpr r31
749 define <64 x i8> @test_85(<64 x i8> %v0, <64 x i8> %v1) #0 {
750   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 108, i32 109, i32 110, i32 111, i32 112, i32 113, i32 114, i32 115, i32 116, i32 117, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
751   ret <64 x i8> %t0
754 ; CHECK-LABEL: test_86:
755 ; CHECK: r[[REG86:[0-9]+]] = #22
756 ; CHECK: v0 = valign(v0,v1,r[[REG86]])
757 ; CHECK: jumpr r31
758 define <64 x i8> @test_86(<64 x i8> %v0, <64 x i8> %v1) #0 {
759   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 108, i32 109, i32 110, i32 111, i32 112, i32 113, i32 114, i32 115, i32 116, i32 117, i32 118, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
760   ret <64 x i8> %t0
763 ; CHECK-LABEL: test_87:
764 ; CHECK: r[[REG87:[0-9]+]] = #23
765 ; CHECK: v0 = valign(v0,v1,r[[REG87]])
766 ; CHECK: jumpr r31
767 define <64 x i8> @test_87(<64 x i8> %v0, <64 x i8> %v1) #0 {
768   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 108, i32 109, i32 110, i32 111, i32 112, i32 113, i32 114, i32 115, i32 116, i32 117, i32 118, i32 119, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
769   ret <64 x i8> %t0
772 ; CHECK-LABEL: test_88:
773 ; CHECK: r[[REG88:[0-9]+]] = #24
774 ; CHECK: v0 = valign(v0,v1,r[[REG88]])
775 ; CHECK: jumpr r31
776 define <64 x i8> @test_88(<64 x i8> %v0, <64 x i8> %v1) #0 {
777   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 108, i32 109, i32 110, i32 111, i32 112, i32 113, i32 114, i32 115, i32 116, i32 117, i32 118, i32 119, i32 120, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
778   ret <64 x i8> %t0
781 ; CHECK-LABEL: test_89:
782 ; CHECK: r[[REG89:[0-9]+]] = #25
783 ; CHECK: v0 = valign(v0,v1,r[[REG89]])
784 ; CHECK: jumpr r31
785 define <64 x i8> @test_89(<64 x i8> %v0, <64 x i8> %v1) #0 {
786   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 108, i32 109, i32 110, i32 111, i32 112, i32 113, i32 114, i32 115, i32 116, i32 117, i32 118, i32 119, i32 120, i32 121, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
787   ret <64 x i8> %t0
790 ; CHECK-LABEL: test_90:
791 ; CHECK: r[[REG90:[0-9]+]] = #26
792 ; CHECK: v0 = valign(v0,v1,r[[REG90]])
793 ; CHECK: jumpr r31
794 define <64 x i8> @test_90(<64 x i8> %v0, <64 x i8> %v1) #0 {
795   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 108, i32 109, i32 110, i32 111, i32 112, i32 113, i32 114, i32 115, i32 116, i32 117, i32 118, i32 119, i32 120, i32 121, i32 122, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
796   ret <64 x i8> %t0
799 ; CHECK-LABEL: test_91:
800 ; CHECK: r[[REG91:[0-9]+]] = #27
801 ; CHECK: v0 = valign(v0,v1,r[[REG91]])
802 ; CHECK: jumpr r31
803 define <64 x i8> @test_91(<64 x i8> %v0, <64 x i8> %v1) #0 {
804   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 108, i32 109, i32 110, i32 111, i32 112, i32 113, i32 114, i32 115, i32 116, i32 117, i32 118, i32 119, i32 120, i32 121, i32 122, i32 123, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
805   ret <64 x i8> %t0
808 ; CHECK-LABEL: test_92:
809 ; CHECK: r[[REG92:[0-9]+]] = #28
810 ; CHECK: v0 = valign(v0,v1,r[[REG92]])
811 ; CHECK: jumpr r31
812 define <64 x i8> @test_92(<64 x i8> %v0, <64 x i8> %v1) #0 {
813   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 108, i32 109, i32 110, i32 111, i32 112, i32 113, i32 114, i32 115, i32 116, i32 117, i32 118, i32 119, i32 120, i32 121, i32 122, i32 123, i32 124, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
814   ret <64 x i8> %t0
817 ; CHECK-LABEL: test_93:
818 ; CHECK: r[[REG93:[0-9]+]] = #29
819 ; CHECK: v0 = valign(v0,v1,r[[REG93]])
820 ; CHECK: jumpr r31
821 define <64 x i8> @test_93(<64 x i8> %v0, <64 x i8> %v1) #0 {
822   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 108, i32 109, i32 110, i32 111, i32 112, i32 113, i32 114, i32 115, i32 116, i32 117, i32 118, i32 119, i32 120, i32 121, i32 122, i32 123, i32 124, i32 125, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
823   ret <64 x i8> %t0
826 ; CHECK-LABEL: test_94:
827 ; CHECK: r[[REG94:[0-9]+]] = #30
828 ; CHECK: v0 = valign(v0,v1,r[[REG94]])
829 ; CHECK: jumpr r31
830 define <64 x i8> @test_94(<64 x i8> %v0, <64 x i8> %v1) #0 {
831   %t0 = shufflevector <64 x i8> %v0, <64 x i8> %v1, <64 x i32><i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 108, i32 109, i32 110, i32 111, i32 112, i32 113, i32 114, i32 115, i32 116, i32 117, i32 118, i32 119, i32 120, i32 121, i32 122, i32 123, i32 124, i32 125, i32 126, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>
832   ret <64 x i8> %t0
835 attributes #0 = { nounwind readnone "target-cpu"="hexagonv60" "target-features"="+hvx,+hvx-length64b" }