brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.0 MiB · 64ddca7 Raw
16539 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc < %s -mtriple=x86_64-- -mattr=+sse2 | FileCheck %s --check-prefixes=SSE3; RUN: llc < %s -mtriple=x86_64-- -mattr=+avx  | FileCheck %s --check-prefixes=AVX4; RUN: llc < %s -mtriple=x86_64-- -mattr=+avx2 | FileCheck %s --check-prefixes=AVX25; RUN: llc < %s -mtriple=x86_64-- -mattr=+avx2,+fast-variable-perlane-shuffle | FileCheck %s --check-prefixes=AVX2-FP6; RUN: llc < %s -mtriple=x86_64-- -mattr=+avx2,+fast-variable-crosslane-shuffle,+fast-variable-perlane-shuffle | FileCheck %s --check-prefixes=AVX2-FCP7; RUN: llc < %s -mtriple=x86_64-- -mattr=+avx512vl | FileCheck %s --check-prefixes=AVX5128; RUN: llc < %s -mtriple=x86_64-- -mattr=+avx512vl,+fast-variable-crosslane-shuffle,+fast-variable-perlane-shuffle | FileCheck %s --check-prefixes=AVX512-FCP9; RUN: llc < %s -mtriple=x86_64-- -mattr=+avx512vl,+avx512dq | FileCheck %s --check-prefixes=AVX512DQ10; RUN: llc < %s -mtriple=x86_64-- -mattr=+avx512vl,+avx512dq,+fast-variable-crosslane-shuffle,+fast-variable-perlane-shuffle | FileCheck %s --check-prefixes=AVX512DQ-FCP11; RUN: llc < %s -mtriple=x86_64-- -mattr=+avx512vl,+avx512bw | FileCheck %s --check-prefixes=AVX512BW12; RUN: llc < %s -mtriple=x86_64-- -mattr=+avx512vl,+avx512bw,+fast-variable-crosslane-shuffle,+fast-variable-perlane-shuffle | FileCheck %s --check-prefixes=AVX512BW-FCP13; RUN: llc < %s -mtriple=x86_64-- -mattr=+avx512vl,+avx512dq,+avx512bw | FileCheck %s --check-prefixes=AVX512DQ-BW14; RUN: llc < %s -mtriple=x86_64-- -mattr=+avx512vl,+avx512dq,+avx512bw,+fast-variable-crosslane-shuffle,+fast-variable-perlane-shuffle | FileCheck %s --check-prefixes=AVX512DQ-BW-FCP15 16; These patterns are produced by LoopVectorizer for interleaved loads.17 18define void @load_i32_stride7_vf2(ptr %in.vec, ptr %out.vec0, ptr %out.vec1, ptr %out.vec2, ptr %out.vec3, ptr %out.vec4, ptr %out.vec5, ptr %out.vec6) nounwind {19; SSE-LABEL: load_i32_stride7_vf2:20; SSE:       # %bb.0:21; SSE-NEXT:    movdqa (%rdi), %xmm122; SSE-NEXT:    movdqa 16(%rdi), %xmm023; SSE-NEXT:    movdqa 32(%rdi), %xmm224; SSE-NEXT:    pshufd {{.*#+}} xmm3 = xmm0[3,3,3,3]25; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm1[1,1,1,1]26; SSE-NEXT:    pshufd {{.*#+}} xmm5 = xmm1[2,3,2,3]27; SSE-NEXT:    pshufd {{.*#+}} xmm6 = xmm1[2,2,3,3]28; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm3[0],xmm1[1],xmm3[1]29; SSE-NEXT:    movdqa 48(%rdi), %xmm330; SSE-NEXT:    movq %xmm1, (%rsi)31; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %rax32; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %rsi33; SSE-NEXT:    punpckldq {{.*#+}} xmm4 = xmm4[0],xmm2[0],xmm4[1],xmm2[1]34; SSE-NEXT:    movq %xmm4, (%rdx)35; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm2[1,1,1,1]36; SSE-NEXT:    punpckldq {{.*#+}} xmm5 = xmm5[0],xmm1[0],xmm5[1],xmm1[1]37; SSE-NEXT:    movq %xmm5, (%rcx)38; SSE-NEXT:    punpckhdq {{.*#+}} xmm6 = xmm6[2],xmm2[2],xmm6[3],xmm2[3]39; SSE-NEXT:    movq %xmm6, (%r8)40; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm2[3,3,3,3]41; SSE-NEXT:    pshufd {{.*#+}} xmm2 = xmm0[1,1,1,1]42; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm0[2,3,2,3]43; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]44; SSE-NEXT:    movq %xmm0, (%r9)45; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm3[0],xmm2[1],xmm3[1]46; SSE-NEXT:    movq %xmm2, (%rsi)47; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm3[1,1,1,1]48; SSE-NEXT:    punpckldq {{.*#+}} xmm4 = xmm4[0],xmm0[0],xmm4[1],xmm0[1]49; SSE-NEXT:    movq %xmm4, (%rax)50; SSE-NEXT:    retq51;52; AVX-LABEL: load_i32_stride7_vf2:53; AVX:       # %bb.0:54; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %rax55; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %r1056; AVX-NEXT:    vmovaps (%rdi), %ymm057; AVX-NEXT:    vmovaps 32(%rdi), %ymm158; AVX-NEXT:    vmovaps (%rdi), %xmm259; AVX-NEXT:    vmovaps 16(%rdi), %xmm360; AVX-NEXT:    vmovaps 32(%rdi), %xmm461; AVX-NEXT:    vshufps {{.*#+}} xmm5 = xmm3[2,3,2,3]62; AVX-NEXT:    vblendps {{.*#+}} xmm5 = xmm2[0],xmm5[1],xmm2[2,3]63; AVX-NEXT:    vmovlps %xmm5, (%rsi)64; AVX-NEXT:    vblendps {{.*#+}} xmm5 = xmm4[0],xmm2[1],xmm4[2,3]65; AVX-NEXT:    vshufps {{.*#+}} xmm5 = xmm5[1,0,2,3]66; AVX-NEXT:    vmovlps %xmm5, (%rdx)67; AVX-NEXT:    vshufps {{.*#+}} xmm5 = xmm2[2,3,2,3]68; AVX-NEXT:    vblendps {{.*#+}} xmm5 = xmm5[0],xmm4[1],xmm5[2,3]69; AVX-NEXT:    vmovlps %xmm5, (%rcx)70; AVX-NEXT:    vblendps {{.*#+}} xmm2 = xmm4[0,1,2],xmm2[3]71; AVX-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[3,2,2,3]72; AVX-NEXT:    vmovlps %xmm2, (%r8)73; AVX-NEXT:    vshufps {{.*#+}} xmm2 = xmm4[2,3,2,3]74; AVX-NEXT:    vblendps {{.*#+}} xmm2 = xmm3[0],xmm2[1],xmm3[2,3]75; AVX-NEXT:    vmovlps %xmm2, (%r9)76; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm1[0,0],ymm0[1,0],ymm1[4,4],ymm0[5,4]77; AVX-NEXT:    vextractf128 $1, %ymm2, %xmm278; AVX-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[2,0,2,3]79; AVX-NEXT:    vmovlps %xmm2, (%r10)80; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm1[1,0],ymm0[2,0],ymm1[5,4],ymm0[6,4]81; AVX-NEXT:    vextractf128 $1, %ymm0, %xmm082; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[2,0,2,3]83; AVX-NEXT:    vmovlps %xmm0, (%rax)84; AVX-NEXT:    vzeroupper85; AVX-NEXT:    retq86;87; AVX2-LABEL: load_i32_stride7_vf2:88; AVX2:       # %bb.0:89; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %rax90; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %r1091; AVX2-NEXT:    vmovaps (%rdi), %ymm092; AVX2-NEXT:    vmovaps 32(%rdi), %ymm193; AVX2-NEXT:    vbroadcastss 28(%rdi), %xmm294; AVX2-NEXT:    vmovaps (%rdi), %xmm395; AVX2-NEXT:    vmovaps 32(%rdi), %xmm496; AVX2-NEXT:    vunpcklps {{.*#+}} xmm2 = xmm3[0],xmm2[0],xmm3[1],xmm2[1]97; AVX2-NEXT:    vbroadcastss 8(%rdi), %xmm598; AVX2-NEXT:    vmovlps %xmm2, (%rsi)99; AVX2-NEXT:    vblendps {{.*#+}} xmm2 = xmm4[0],xmm3[1],xmm4[2,3]100; AVX2-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[1,0,2,3]101; AVX2-NEXT:    vmovlps %xmm2, (%rdx)102; AVX2-NEXT:    vblendps {{.*#+}} xmm2 = xmm5[0],xmm4[1],xmm5[2,3]103; AVX2-NEXT:    vmovlps %xmm2, (%rcx)104; AVX2-NEXT:    vblendps {{.*#+}} xmm2 = xmm4[0,1,2],xmm3[3]105; AVX2-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[3,2,2,3]106; AVX2-NEXT:    vmovlps %xmm2, (%r8)107; AVX2-NEXT:    vmovsd {{.*#+}} xmm2 = [4,3,0,0]108; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm1[0,1,2,3],ymm0[4,5,6,7]109; AVX2-NEXT:    vpermps %ymm3, %ymm2, %ymm2110; AVX2-NEXT:    vmovlps %xmm2, (%r9)111; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm1[0],ymm0[1],ymm1[2,3,4],ymm0[5],ymm1[6,7]112; AVX2-NEXT:    vextractf128 $1, %ymm2, %xmm2113; AVX2-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[1,0,2,3]114; AVX2-NEXT:    vmovlps %xmm2, (%r10)115; AVX2-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[2,3,2,3,6,7,6,7]116; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm1[1],ymm0[2,3,4],ymm1[5],ymm0[6,7]117; AVX2-NEXT:    vextractf128 $1, %ymm0, %xmm0118; AVX2-NEXT:    vmovlps %xmm0, (%rax)119; AVX2-NEXT:    vzeroupper120; AVX2-NEXT:    retq121;122; AVX2-FP-LABEL: load_i32_stride7_vf2:123; AVX2-FP:       # %bb.0:124; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %rax125; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %r10126; AVX2-FP-NEXT:    vmovaps (%rdi), %ymm0127; AVX2-FP-NEXT:    vmovaps 32(%rdi), %ymm1128; AVX2-FP-NEXT:    vbroadcastss 28(%rdi), %xmm2129; AVX2-FP-NEXT:    vmovaps (%rdi), %xmm3130; AVX2-FP-NEXT:    vmovaps 32(%rdi), %xmm4131; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm2 = xmm3[0],xmm2[0],xmm3[1],xmm2[1]132; AVX2-FP-NEXT:    vbroadcastss 8(%rdi), %xmm5133; AVX2-FP-NEXT:    vmovlps %xmm2, (%rsi)134; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm2 = xmm4[0],xmm3[1],xmm4[2,3]135; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[1,0,2,3]136; AVX2-FP-NEXT:    vmovlps %xmm2, (%rdx)137; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm2 = xmm5[0],xmm4[1],xmm5[2,3]138; AVX2-FP-NEXT:    vmovlps %xmm2, (%rcx)139; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm2 = xmm4[0,1,2],xmm3[3]140; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[3,2,2,3]141; AVX2-FP-NEXT:    vmovlps %xmm2, (%r8)142; AVX2-FP-NEXT:    vmovsd {{.*#+}} xmm2 = [4,3,0,0]143; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm1[0,1,2,3],ymm0[4,5,6,7]144; AVX2-FP-NEXT:    vpermps %ymm3, %ymm2, %ymm2145; AVX2-FP-NEXT:    vmovlps %xmm2, (%r9)146; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm1[0],ymm0[1],ymm1[2,3,4],ymm0[5],ymm1[6,7]147; AVX2-FP-NEXT:    vextractf128 $1, %ymm2, %xmm2148; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[1,0,2,3]149; AVX2-FP-NEXT:    vmovlps %xmm2, (%r10)150; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[2,3,2,3,6,7,6,7]151; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm1[1],ymm0[2,3,4],ymm1[5],ymm0[6,7]152; AVX2-FP-NEXT:    vextractf128 $1, %ymm0, %xmm0153; AVX2-FP-NEXT:    vmovlps %xmm0, (%rax)154; AVX2-FP-NEXT:    vzeroupper155; AVX2-FP-NEXT:    retq156;157; AVX2-FCP-LABEL: load_i32_stride7_vf2:158; AVX2-FCP:       # %bb.0:159; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax160; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r10161; AVX2-FCP-NEXT:    vmovaps (%rdi), %ymm0162; AVX2-FCP-NEXT:    vmovaps 32(%rdi), %ymm1163; AVX2-FCP-NEXT:    vbroadcastss 28(%rdi), %xmm2164; AVX2-FCP-NEXT:    vmovaps (%rdi), %xmm3165; AVX2-FCP-NEXT:    vmovaps 32(%rdi), %xmm4166; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm2 = xmm3[0],xmm2[0],xmm3[1],xmm2[1]167; AVX2-FCP-NEXT:    vbroadcastss 8(%rdi), %xmm5168; AVX2-FCP-NEXT:    vmovlps %xmm2, (%rsi)169; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm2 = xmm4[0],xmm3[1],xmm4[2,3]170; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[1,0,2,3]171; AVX2-FCP-NEXT:    vmovlps %xmm2, (%rdx)172; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm2 = xmm5[0],xmm4[1],xmm5[2,3]173; AVX2-FCP-NEXT:    vmovlps %xmm2, (%rcx)174; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm2 = xmm4[0,1,2],xmm3[3]175; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[3,2,2,3]176; AVX2-FCP-NEXT:    vmovlps %xmm2, (%r8)177; AVX2-FCP-NEXT:    vmovsd {{.*#+}} xmm2 = [4,3,0,0]178; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm1[0,1,2,3],ymm0[4,5,6,7]179; AVX2-FCP-NEXT:    vpermps %ymm3, %ymm2, %ymm2180; AVX2-FCP-NEXT:    vmovlps %xmm2, (%r9)181; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm1[0],ymm0[1],ymm1[2,3,4],ymm0[5],ymm1[6,7]182; AVX2-FCP-NEXT:    vextractf128 $1, %ymm2, %xmm2183; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[1,0,2,3]184; AVX2-FCP-NEXT:    vmovlps %xmm2, (%r10)185; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[2,3,2,3,6,7,6,7]186; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm1[1],ymm0[2,3,4],ymm1[5],ymm0[6,7]187; AVX2-FCP-NEXT:    vextractf128 $1, %ymm0, %xmm0188; AVX2-FCP-NEXT:    vmovlps %xmm0, (%rax)189; AVX2-FCP-NEXT:    vzeroupper190; AVX2-FCP-NEXT:    retq191;192; AVX512-LABEL: load_i32_stride7_vf2:193; AVX512:       # %bb.0:194; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %rax195; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %r10196; AVX512-NEXT:    vmovdqa (%rdi), %xmm0197; AVX512-NEXT:    vmovdqa 32(%rdi), %xmm1198; AVX512-NEXT:    vmovd %xmm1, %r11d199; AVX512-NEXT:    vpinsrd $1, 28(%rdi), %xmm0, %xmm2200; AVX512-NEXT:    vpbroadcastd 8(%rdi), %xmm3201; AVX512-NEXT:    vpmovsxbd {{.*#+}} xmm4 = [4,11,0,0]202; AVX512-NEXT:    vpermps (%rdi), %zmm4, %zmm4203; AVX512-NEXT:    vmovaps 32(%rdi), %ymm5204; AVX512-NEXT:    vmovaps (%rdi), %ymm6205; AVX512-NEXT:    vmovq %xmm2, (%rsi)206; AVX512-NEXT:    vpshufd {{.*#+}} xmm2 = xmm0[1,1,1,1]207; AVX512-NEXT:    vpinsrd $1, %r11d, %xmm2, %xmm2208; AVX512-NEXT:    vmovq %xmm2, (%rdx)209; AVX512-NEXT:    vpblendd {{.*#+}} xmm2 = xmm3[0],xmm1[1],xmm3[2,3]210; AVX512-NEXT:    vmovq %xmm2, (%rcx)211; AVX512-NEXT:    vpblendd {{.*#+}} xmm0 = xmm1[0,1,2],xmm0[3]212; AVX512-NEXT:    vpshufd {{.*#+}} xmm0 = xmm0[3,2,2,3]213; AVX512-NEXT:    vmovq %xmm0, (%r8)214; AVX512-NEXT:    vmovlps %xmm4, (%r9)215; AVX512-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0],ymm6[1],ymm5[2,3,4],ymm6[5],ymm5[6,7]216; AVX512-NEXT:    vextractf128 $1, %ymm0, %xmm0217; AVX512-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[1,0,2,3]218; AVX512-NEXT:    vmovlps %xmm0, (%r10)219; AVX512-NEXT:    vshufps {{.*#+}} ymm0 = ymm6[2,3,2,3,6,7,6,7]220; AVX512-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm5[1],ymm0[2,3,4],ymm5[5],ymm0[6,7]221; AVX512-NEXT:    vextractf128 $1, %ymm0, %xmm0222; AVX512-NEXT:    vmovlps %xmm0, (%rax)223; AVX512-NEXT:    vzeroupper224; AVX512-NEXT:    retq225;226; AVX512-FCP-LABEL: load_i32_stride7_vf2:227; AVX512-FCP:       # %bb.0:228; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax229; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r10230; AVX512-FCP-NEXT:    vmovaps (%rdi), %zmm0231; AVX512-FCP-NEXT:    vmovdqa (%rdi), %xmm1232; AVX512-FCP-NEXT:    vmovdqa 32(%rdi), %xmm2233; AVX512-FCP-NEXT:    vpinsrd $1, 28(%rdi), %xmm1, %xmm3234; AVX512-FCP-NEXT:    vpbroadcastd 8(%rdi), %xmm4235; AVX512-FCP-NEXT:    vmovq %xmm3, (%rsi)236; AVX512-FCP-NEXT:    vpbroadcastq {{.*#+}} xmm3 = [1,4,1,4]237; AVX512-FCP-NEXT:    vpermi2d %xmm2, %xmm1, %xmm3238; AVX512-FCP-NEXT:    vmovq %xmm3, (%rdx)239; AVX512-FCP-NEXT:    vpblendd {{.*#+}} xmm3 = xmm4[0],xmm2[1],xmm4[2,3]240; AVX512-FCP-NEXT:    vmovq %xmm3, (%rcx)241; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm3 = [7,2,0,0]242; AVX512-FCP-NEXT:    vpermi2d %xmm1, %xmm2, %xmm3243; AVX512-FCP-NEXT:    vmovq %xmm3, (%r8)244; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm1 = [4,11,0,0]245; AVX512-FCP-NEXT:    vpermps %zmm0, %zmm1, %zmm1246; AVX512-FCP-NEXT:    vmovlps %xmm1, (%r9)247; AVX512-FCP-NEXT:    vmovaps {{\.?LCPI[0-9]+_[0-9]+}}+16(%rip), %xmm1248; AVX512-FCP-NEXT:    vpermps %zmm0, %zmm1, %zmm1249; AVX512-FCP-NEXT:    vmovlps %xmm1, (%r10)250; AVX512-FCP-NEXT:    vmovaps {{\.?LCPI[0-9]+_[0-9]+}}+16(%rip), %xmm1251; AVX512-FCP-NEXT:    vpermps %zmm0, %zmm1, %zmm0252; AVX512-FCP-NEXT:    vmovlps %xmm0, (%rax)253; AVX512-FCP-NEXT:    vzeroupper254; AVX512-FCP-NEXT:    retq255;256; AVX512DQ-LABEL: load_i32_stride7_vf2:257; AVX512DQ:       # %bb.0:258; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %rax259; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %r10260; AVX512DQ-NEXT:    vmovdqa (%rdi), %xmm0261; AVX512DQ-NEXT:    vmovdqa 32(%rdi), %xmm1262; AVX512DQ-NEXT:    vmovd %xmm1, %r11d263; AVX512DQ-NEXT:    vpinsrd $1, 28(%rdi), %xmm0, %xmm2264; AVX512DQ-NEXT:    vpbroadcastd 8(%rdi), %xmm3265; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} xmm4 = [4,11,0,0]266; AVX512DQ-NEXT:    vpermps (%rdi), %zmm4, %zmm4267; AVX512DQ-NEXT:    vmovaps 32(%rdi), %ymm5268; AVX512DQ-NEXT:    vmovaps (%rdi), %ymm6269; AVX512DQ-NEXT:    vmovq %xmm2, (%rsi)270; AVX512DQ-NEXT:    vpshufd {{.*#+}} xmm2 = xmm0[1,1,1,1]271; AVX512DQ-NEXT:    vpinsrd $1, %r11d, %xmm2, %xmm2272; AVX512DQ-NEXT:    vmovq %xmm2, (%rdx)273; AVX512DQ-NEXT:    vpblendd {{.*#+}} xmm2 = xmm3[0],xmm1[1],xmm3[2,3]274; AVX512DQ-NEXT:    vmovq %xmm2, (%rcx)275; AVX512DQ-NEXT:    vpblendd {{.*#+}} xmm0 = xmm1[0,1,2],xmm0[3]276; AVX512DQ-NEXT:    vpshufd {{.*#+}} xmm0 = xmm0[3,2,2,3]277; AVX512DQ-NEXT:    vmovq %xmm0, (%r8)278; AVX512DQ-NEXT:    vmovlps %xmm4, (%r9)279; AVX512DQ-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0],ymm6[1],ymm5[2,3,4],ymm6[5],ymm5[6,7]280; AVX512DQ-NEXT:    vextractf128 $1, %ymm0, %xmm0281; AVX512DQ-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[1,0,2,3]282; AVX512DQ-NEXT:    vmovlps %xmm0, (%r10)283; AVX512DQ-NEXT:    vshufps {{.*#+}} ymm0 = ymm6[2,3,2,3,6,7,6,7]284; AVX512DQ-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm5[1],ymm0[2,3,4],ymm5[5],ymm0[6,7]285; AVX512DQ-NEXT:    vextractf128 $1, %ymm0, %xmm0286; AVX512DQ-NEXT:    vmovlps %xmm0, (%rax)287; AVX512DQ-NEXT:    vzeroupper288; AVX512DQ-NEXT:    retq289;290; AVX512DQ-FCP-LABEL: load_i32_stride7_vf2:291; AVX512DQ-FCP:       # %bb.0:292; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax293; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r10294; AVX512DQ-FCP-NEXT:    vmovaps (%rdi), %zmm0295; AVX512DQ-FCP-NEXT:    vmovdqa (%rdi), %xmm1296; AVX512DQ-FCP-NEXT:    vmovdqa 32(%rdi), %xmm2297; AVX512DQ-FCP-NEXT:    vpinsrd $1, 28(%rdi), %xmm1, %xmm3298; AVX512DQ-FCP-NEXT:    vpbroadcastd 8(%rdi), %xmm4299; AVX512DQ-FCP-NEXT:    vmovq %xmm3, (%rsi)300; AVX512DQ-FCP-NEXT:    vpbroadcastq {{.*#+}} xmm3 = [1,4,1,4]301; AVX512DQ-FCP-NEXT:    vpermi2d %xmm2, %xmm1, %xmm3302; AVX512DQ-FCP-NEXT:    vmovq %xmm3, (%rdx)303; AVX512DQ-FCP-NEXT:    vpblendd {{.*#+}} xmm3 = xmm4[0],xmm2[1],xmm4[2,3]304; AVX512DQ-FCP-NEXT:    vmovq %xmm3, (%rcx)305; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm3 = [7,2,0,0]306; AVX512DQ-FCP-NEXT:    vpermi2d %xmm1, %xmm2, %xmm3307; AVX512DQ-FCP-NEXT:    vmovq %xmm3, (%r8)308; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm1 = [4,11,0,0]309; AVX512DQ-FCP-NEXT:    vpermps %zmm0, %zmm1, %zmm1310; AVX512DQ-FCP-NEXT:    vmovlps %xmm1, (%r9)311; AVX512DQ-FCP-NEXT:    vmovaps {{\.?LCPI[0-9]+_[0-9]+}}+16(%rip), %xmm1312; AVX512DQ-FCP-NEXT:    vpermps %zmm0, %zmm1, %zmm1313; AVX512DQ-FCP-NEXT:    vmovlps %xmm1, (%r10)314; AVX512DQ-FCP-NEXT:    vmovaps {{\.?LCPI[0-9]+_[0-9]+}}+16(%rip), %xmm1315; AVX512DQ-FCP-NEXT:    vpermps %zmm0, %zmm1, %zmm0316; AVX512DQ-FCP-NEXT:    vmovlps %xmm0, (%rax)317; AVX512DQ-FCP-NEXT:    vzeroupper318; AVX512DQ-FCP-NEXT:    retq319;320; AVX512BW-LABEL: load_i32_stride7_vf2:321; AVX512BW:       # %bb.0:322; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax323; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %r10324; AVX512BW-NEXT:    vmovdqa (%rdi), %xmm0325; AVX512BW-NEXT:    vmovdqa 32(%rdi), %xmm1326; AVX512BW-NEXT:    vmovd %xmm1, %r11d327; AVX512BW-NEXT:    vpinsrd $1, 28(%rdi), %xmm0, %xmm2328; AVX512BW-NEXT:    vpbroadcastd 8(%rdi), %xmm3329; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} xmm4 = [4,11,0,0]330; AVX512BW-NEXT:    vpermps (%rdi), %zmm4, %zmm4331; AVX512BW-NEXT:    vmovaps 32(%rdi), %ymm5332; AVX512BW-NEXT:    vmovaps (%rdi), %ymm6333; AVX512BW-NEXT:    vmovq %xmm2, (%rsi)334; AVX512BW-NEXT:    vpshufd {{.*#+}} xmm2 = xmm0[1,1,1,1]335; AVX512BW-NEXT:    vpinsrd $1, %r11d, %xmm2, %xmm2336; AVX512BW-NEXT:    vmovq %xmm2, (%rdx)337; AVX512BW-NEXT:    vpblendd {{.*#+}} xmm2 = xmm3[0],xmm1[1],xmm3[2,3]338; AVX512BW-NEXT:    vmovq %xmm2, (%rcx)339; AVX512BW-NEXT:    vpblendd {{.*#+}} xmm0 = xmm1[0,1,2],xmm0[3]340; AVX512BW-NEXT:    vpshufd {{.*#+}} xmm0 = xmm0[3,2,2,3]341; AVX512BW-NEXT:    vmovq %xmm0, (%r8)342; AVX512BW-NEXT:    vmovlps %xmm4, (%r9)343; AVX512BW-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0],ymm6[1],ymm5[2,3,4],ymm6[5],ymm5[6,7]344; AVX512BW-NEXT:    vextractf128 $1, %ymm0, %xmm0345; AVX512BW-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[1,0,2,3]346; AVX512BW-NEXT:    vmovlps %xmm0, (%r10)347; AVX512BW-NEXT:    vshufps {{.*#+}} ymm0 = ymm6[2,3,2,3,6,7,6,7]348; AVX512BW-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm5[1],ymm0[2,3,4],ymm5[5],ymm0[6,7]349; AVX512BW-NEXT:    vextractf128 $1, %ymm0, %xmm0350; AVX512BW-NEXT:    vmovlps %xmm0, (%rax)351; AVX512BW-NEXT:    vzeroupper352; AVX512BW-NEXT:    retq353;354; AVX512BW-FCP-LABEL: load_i32_stride7_vf2:355; AVX512BW-FCP:       # %bb.0:356; AVX512BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax357; AVX512BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r10358; AVX512BW-FCP-NEXT:    vmovaps (%rdi), %zmm0359; AVX512BW-FCP-NEXT:    vmovdqa (%rdi), %xmm1360; AVX512BW-FCP-NEXT:    vmovdqa 32(%rdi), %xmm2361; AVX512BW-FCP-NEXT:    vpinsrd $1, 28(%rdi), %xmm1, %xmm3362; AVX512BW-FCP-NEXT:    vpbroadcastd 8(%rdi), %xmm4363; AVX512BW-FCP-NEXT:    vmovq %xmm3, (%rsi)364; AVX512BW-FCP-NEXT:    vpbroadcastq {{.*#+}} xmm3 = [1,4,1,4]365; AVX512BW-FCP-NEXT:    vpermi2d %xmm2, %xmm1, %xmm3366; AVX512BW-FCP-NEXT:    vmovq %xmm3, (%rdx)367; AVX512BW-FCP-NEXT:    vpblendd {{.*#+}} xmm3 = xmm4[0],xmm2[1],xmm4[2,3]368; AVX512BW-FCP-NEXT:    vmovq %xmm3, (%rcx)369; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm3 = [7,2,0,0]370; AVX512BW-FCP-NEXT:    vpermi2d %xmm1, %xmm2, %xmm3371; AVX512BW-FCP-NEXT:    vmovq %xmm3, (%r8)372; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm1 = [4,11,0,0]373; AVX512BW-FCP-NEXT:    vpermps %zmm0, %zmm1, %zmm1374; AVX512BW-FCP-NEXT:    vmovlps %xmm1, (%r9)375; AVX512BW-FCP-NEXT:    vmovaps {{\.?LCPI[0-9]+_[0-9]+}}+16(%rip), %xmm1376; AVX512BW-FCP-NEXT:    vpermps %zmm0, %zmm1, %zmm1377; AVX512BW-FCP-NEXT:    vmovlps %xmm1, (%r10)378; AVX512BW-FCP-NEXT:    vmovaps {{\.?LCPI[0-9]+_[0-9]+}}+16(%rip), %xmm1379; AVX512BW-FCP-NEXT:    vpermps %zmm0, %zmm1, %zmm0380; AVX512BW-FCP-NEXT:    vmovlps %xmm0, (%rax)381; AVX512BW-FCP-NEXT:    vzeroupper382; AVX512BW-FCP-NEXT:    retq383;384; AVX512DQ-BW-LABEL: load_i32_stride7_vf2:385; AVX512DQ-BW:       # %bb.0:386; AVX512DQ-BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax387; AVX512DQ-BW-NEXT:    movq {{[0-9]+}}(%rsp), %r10388; AVX512DQ-BW-NEXT:    vmovdqa (%rdi), %xmm0389; AVX512DQ-BW-NEXT:    vmovdqa 32(%rdi), %xmm1390; AVX512DQ-BW-NEXT:    vmovd %xmm1, %r11d391; AVX512DQ-BW-NEXT:    vpinsrd $1, 28(%rdi), %xmm0, %xmm2392; AVX512DQ-BW-NEXT:    vpbroadcastd 8(%rdi), %xmm3393; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} xmm4 = [4,11,0,0]394; AVX512DQ-BW-NEXT:    vpermps (%rdi), %zmm4, %zmm4395; AVX512DQ-BW-NEXT:    vmovaps 32(%rdi), %ymm5396; AVX512DQ-BW-NEXT:    vmovaps (%rdi), %ymm6397; AVX512DQ-BW-NEXT:    vmovq %xmm2, (%rsi)398; AVX512DQ-BW-NEXT:    vpshufd {{.*#+}} xmm2 = xmm0[1,1,1,1]399; AVX512DQ-BW-NEXT:    vpinsrd $1, %r11d, %xmm2, %xmm2400; AVX512DQ-BW-NEXT:    vmovq %xmm2, (%rdx)401; AVX512DQ-BW-NEXT:    vpblendd {{.*#+}} xmm2 = xmm3[0],xmm1[1],xmm3[2,3]402; AVX512DQ-BW-NEXT:    vmovq %xmm2, (%rcx)403; AVX512DQ-BW-NEXT:    vpblendd {{.*#+}} xmm0 = xmm1[0,1,2],xmm0[3]404; AVX512DQ-BW-NEXT:    vpshufd {{.*#+}} xmm0 = xmm0[3,2,2,3]405; AVX512DQ-BW-NEXT:    vmovq %xmm0, (%r8)406; AVX512DQ-BW-NEXT:    vmovlps %xmm4, (%r9)407; AVX512DQ-BW-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0],ymm6[1],ymm5[2,3,4],ymm6[5],ymm5[6,7]408; AVX512DQ-BW-NEXT:    vextractf128 $1, %ymm0, %xmm0409; AVX512DQ-BW-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[1,0,2,3]410; AVX512DQ-BW-NEXT:    vmovlps %xmm0, (%r10)411; AVX512DQ-BW-NEXT:    vshufps {{.*#+}} ymm0 = ymm6[2,3,2,3,6,7,6,7]412; AVX512DQ-BW-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm5[1],ymm0[2,3,4],ymm5[5],ymm0[6,7]413; AVX512DQ-BW-NEXT:    vextractf128 $1, %ymm0, %xmm0414; AVX512DQ-BW-NEXT:    vmovlps %xmm0, (%rax)415; AVX512DQ-BW-NEXT:    vzeroupper416; AVX512DQ-BW-NEXT:    retq417;418; AVX512DQ-BW-FCP-LABEL: load_i32_stride7_vf2:419; AVX512DQ-BW-FCP:       # %bb.0:420; AVX512DQ-BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax421; AVX512DQ-BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r10422; AVX512DQ-BW-FCP-NEXT:    vmovaps (%rdi), %zmm0423; AVX512DQ-BW-FCP-NEXT:    vmovdqa (%rdi), %xmm1424; AVX512DQ-BW-FCP-NEXT:    vmovdqa 32(%rdi), %xmm2425; AVX512DQ-BW-FCP-NEXT:    vpinsrd $1, 28(%rdi), %xmm1, %xmm3426; AVX512DQ-BW-FCP-NEXT:    vpbroadcastd 8(%rdi), %xmm4427; AVX512DQ-BW-FCP-NEXT:    vmovq %xmm3, (%rsi)428; AVX512DQ-BW-FCP-NEXT:    vpbroadcastq {{.*#+}} xmm3 = [1,4,1,4]429; AVX512DQ-BW-FCP-NEXT:    vpermi2d %xmm2, %xmm1, %xmm3430; AVX512DQ-BW-FCP-NEXT:    vmovq %xmm3, (%rdx)431; AVX512DQ-BW-FCP-NEXT:    vpblendd {{.*#+}} xmm3 = xmm4[0],xmm2[1],xmm4[2,3]432; AVX512DQ-BW-FCP-NEXT:    vmovq %xmm3, (%rcx)433; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm3 = [7,2,0,0]434; AVX512DQ-BW-FCP-NEXT:    vpermi2d %xmm1, %xmm2, %xmm3435; AVX512DQ-BW-FCP-NEXT:    vmovq %xmm3, (%r8)436; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm1 = [4,11,0,0]437; AVX512DQ-BW-FCP-NEXT:    vpermps %zmm0, %zmm1, %zmm1438; AVX512DQ-BW-FCP-NEXT:    vmovlps %xmm1, (%r9)439; AVX512DQ-BW-FCP-NEXT:    vmovaps {{\.?LCPI[0-9]+_[0-9]+}}+16(%rip), %xmm1440; AVX512DQ-BW-FCP-NEXT:    vpermps %zmm0, %zmm1, %zmm1441; AVX512DQ-BW-FCP-NEXT:    vmovlps %xmm1, (%r10)442; AVX512DQ-BW-FCP-NEXT:    vmovaps {{\.?LCPI[0-9]+_[0-9]+}}+16(%rip), %xmm1443; AVX512DQ-BW-FCP-NEXT:    vpermps %zmm0, %zmm1, %zmm0444; AVX512DQ-BW-FCP-NEXT:    vmovlps %xmm0, (%rax)445; AVX512DQ-BW-FCP-NEXT:    vzeroupper446; AVX512DQ-BW-FCP-NEXT:    retq447  %wide.vec = load <14 x i32>, ptr %in.vec, align 64448  %strided.vec0 = shufflevector <14 x i32> %wide.vec, <14 x i32> poison, <2 x i32> <i32 0, i32 7>449  %strided.vec1 = shufflevector <14 x i32> %wide.vec, <14 x i32> poison, <2 x i32> <i32 1, i32 8>450  %strided.vec2 = shufflevector <14 x i32> %wide.vec, <14 x i32> poison, <2 x i32> <i32 2, i32 9>451  %strided.vec3 = shufflevector <14 x i32> %wide.vec, <14 x i32> poison, <2 x i32> <i32 3, i32 10>452  %strided.vec4 = shufflevector <14 x i32> %wide.vec, <14 x i32> poison, <2 x i32> <i32 4, i32 11>453  %strided.vec5 = shufflevector <14 x i32> %wide.vec, <14 x i32> poison, <2 x i32> <i32 5, i32 12>454  %strided.vec6 = shufflevector <14 x i32> %wide.vec, <14 x i32> poison, <2 x i32> <i32 6, i32 13>455  store <2 x i32> %strided.vec0, ptr %out.vec0, align 64456  store <2 x i32> %strided.vec1, ptr %out.vec1, align 64457  store <2 x i32> %strided.vec2, ptr %out.vec2, align 64458  store <2 x i32> %strided.vec3, ptr %out.vec3, align 64459  store <2 x i32> %strided.vec4, ptr %out.vec4, align 64460  store <2 x i32> %strided.vec5, ptr %out.vec5, align 64461  store <2 x i32> %strided.vec6, ptr %out.vec6, align 64462  ret void463}464 465define void @load_i32_stride7_vf4(ptr %in.vec, ptr %out.vec0, ptr %out.vec1, ptr %out.vec2, ptr %out.vec3, ptr %out.vec4, ptr %out.vec5, ptr %out.vec6) nounwind {466; SSE-LABEL: load_i32_stride7_vf4:467; SSE:       # %bb.0:468; SSE-NEXT:    movdqa 96(%rdi), %xmm1469; SSE-NEXT:    movdqa 64(%rdi), %xmm0470; SSE-NEXT:    movdqa 80(%rdi), %xmm2471; SSE-NEXT:    movdqa (%rdi), %xmm11472; SSE-NEXT:    movdqa 16(%rdi), %xmm3473; SSE-NEXT:    movdqa 32(%rdi), %xmm4474; SSE-NEXT:    movdqa 48(%rdi), %xmm6475; SSE-NEXT:    pshufd {{.*#+}} xmm10 = xmm3[3,3,3,3]476; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm11[1,1,1,1]477; SSE-NEXT:    pshufd {{.*#+}} xmm8 = xmm11[2,3,2,3]478; SSE-NEXT:    pshufd {{.*#+}} xmm9 = xmm11[2,2,3,3]479; SSE-NEXT:    punpckldq {{.*#+}} xmm11 = xmm11[0],xmm10[0],xmm11[1],xmm10[1]480; SSE-NEXT:    pshufd {{.*#+}} xmm5 = xmm6[2,2,3,3]481; SSE-NEXT:    punpckldq {{.*#+}} xmm5 = xmm5[0],xmm2[0],xmm5[1],xmm2[1]482; SSE-NEXT:    movsd {{.*#+}} xmm5 = xmm11[0],xmm5[1]483; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm4[0],xmm7[1],xmm4[1]484; SSE-NEXT:    pshufd {{.*#+}} xmm11 = xmm2[2,2,2,2]485; SSE-NEXT:    pshufd {{.*#+}} xmm10 = xmm3[1,1,1,1]486; SSE-NEXT:    punpckldq {{.*#+}} xmm10 = xmm10[0],xmm6[0],xmm10[1],xmm6[1]487; SSE-NEXT:    pshufd {{.*#+}} xmm12 = xmm6[1,1,1,1]488; SSE-NEXT:    punpckhdq {{.*#+}} xmm6 = xmm6[2],xmm11[2],xmm6[3],xmm11[3]489; SSE-NEXT:    movsd {{.*#+}} xmm6 = xmm7[0],xmm6[1]490; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm4[1,1,1,1]491; SSE-NEXT:    punpckldq {{.*#+}} xmm8 = xmm8[0],xmm7[0],xmm8[1],xmm7[1]492; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm2[2,3,2,3]493; SSE-NEXT:    pshufd {{.*#+}} xmm11 = xmm0[0,0,1,1]494; SSE-NEXT:    punpckldq {{.*#+}} xmm11 = xmm11[0],xmm7[0],xmm11[1],xmm7[1]495; SSE-NEXT:    movsd {{.*#+}} xmm11 = xmm8[0],xmm11[1]496; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm1[0,0,1,1]497; SSE-NEXT:    movdqa %xmm0, %xmm8498; SSE-NEXT:    punpckldq {{.*#+}} xmm8 = xmm8[0],xmm7[0],xmm8[1],xmm7[1]499; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %rax500; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %rdi501; SSE-NEXT:    punpckhdq {{.*#+}} xmm9 = xmm9[2],xmm4[2],xmm9[3],xmm4[3]502; SSE-NEXT:    movsd {{.*#+}} xmm8 = xmm9[0],xmm8[1]503; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm4[3,3,3,3]504; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm3[2,3,2,3]505; SSE-NEXT:    punpckldq {{.*#+}} xmm3 = xmm3[0],xmm4[0],xmm3[1],xmm4[1]506; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm0[2,2,3,3]507; SSE-NEXT:    punpckldq {{.*#+}} xmm4 = xmm4[0],xmm1[0],xmm4[1],xmm1[1]508; SSE-NEXT:    movsd {{.*#+}} xmm4 = xmm3[0],xmm4[1]509; SSE-NEXT:    pshufd {{.*#+}} xmm3 = xmm1[2,2,2,2]510; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm3[2],xmm0[3],xmm3[3]511; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm10[0],xmm0[1]512; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm12[0],xmm7[1],xmm12[1]513; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[2,3,2,3]514; SSE-NEXT:    pshufd {{.*#+}} xmm2 = xmm2[0,0,1,1]515; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]516; SSE-NEXT:    movsd {{.*#+}} xmm2 = xmm7[0],xmm2[1]517; SSE-NEXT:    movapd %xmm5, (%rsi)518; SSE-NEXT:    movapd %xmm6, (%rdx)519; SSE-NEXT:    movapd %xmm11, (%rcx)520; SSE-NEXT:    movapd %xmm8, (%r8)521; SSE-NEXT:    movapd %xmm4, (%r9)522; SSE-NEXT:    movapd %xmm0, (%rdi)523; SSE-NEXT:    movapd %xmm2, (%rax)524; SSE-NEXT:    retq525;526; AVX-LABEL: load_i32_stride7_vf4:527; AVX:       # %bb.0:528; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %rax529; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %r10530; AVX-NEXT:    vmovaps 32(%rdi), %ymm0531; AVX-NEXT:    vmovaps (%rdi), %ymm1532; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm1[0,1,2,3,4,5],ymm0[6],ymm1[7]533; AVX-NEXT:    vextractf128 $1, %ymm2, %xmm2534; AVX-NEXT:    vmovaps (%rdi), %xmm3535; AVX-NEXT:    vmovaps 32(%rdi), %xmm4536; AVX-NEXT:    vmovaps 64(%rdi), %xmm5537; AVX-NEXT:    vblendps {{.*#+}} xmm2 = xmm3[0,1],xmm2[2,3]538; AVX-NEXT:    vmovaps 80(%rdi), %xmm6539; AVX-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0],xmm6[1],xmm2[2,3]540; AVX-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[0,3,2,1]541; AVX-NEXT:    vblendps {{.*#+}} xmm7 = xmm4[0],xmm3[1],xmm4[2,3]542; AVX-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[1,0],mem[3,3]543; AVX-NEXT:    vinsertps {{.*#+}} xmm7 = xmm7[0,1,2],xmm6[2]544; AVX-NEXT:    vshufps {{.*#+}} xmm8 = xmm5[0,1,0,1]545; AVX-NEXT:    vblendps {{.*#+}} xmm8 = xmm8[0,1,2],xmm6[3]546; AVX-NEXT:    vshufps {{.*#+}} xmm9 = xmm3[2,3,2,3]547; AVX-NEXT:    vblendps {{.*#+}} xmm9 = xmm9[0],xmm4[1],xmm9[2,3]548; AVX-NEXT:    vblendps {{.*#+}} xmm8 = xmm9[0,1],xmm8[2,3]549; AVX-NEXT:    vmovaps 96(%rdi), %xmm9550; AVX-NEXT:    vblendps {{.*#+}} xmm10 = xmm9[0],xmm5[1],xmm9[2,3]551; AVX-NEXT:    vblendps {{.*#+}} xmm3 = xmm4[0,1,2],xmm3[3]552; AVX-NEXT:    vblendps {{.*#+}} xmm3 = xmm10[0,1],xmm3[2,3]553; AVX-NEXT:    vshufps {{.*#+}} xmm3 = xmm3[3,2,1,0]554; AVX-NEXT:    vshufps {{.*#+}} xmm10 = xmm9[0,1,0,1]555; AVX-NEXT:    vblendps {{.*#+}} xmm10 = xmm5[0,1,2],xmm10[3]556; AVX-NEXT:    vshufps {{.*#+}} xmm4 = xmm4[2,3,2,3]557; AVX-NEXT:    vblendps {{.*#+}} xmm4 = mem[0],xmm4[1],mem[2,3]558; AVX-NEXT:    vblendps {{.*#+}} xmm4 = xmm4[0,1],xmm10[2,3]559; AVX-NEXT:    vblendps {{.*#+}} xmm5 = xmm9[0,1,2],xmm5[3]560; AVX-NEXT:    vshufps {{.*#+}} ymm10 = ymm0[0,0],ymm1[1,0],ymm0[4,4],ymm1[5,4]561; AVX-NEXT:    vextractf128 $1, %ymm10, %xmm10562; AVX-NEXT:    vshufps {{.*#+}} xmm5 = xmm10[2,0],xmm5[3,2]563; AVX-NEXT:    vshufps {{.*#+}} xmm6 = xmm6[0,1,0,1]564; AVX-NEXT:    vblendps {{.*#+}} xmm6 = xmm6[0,1,2],xmm9[3]565; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[1,0],ymm1[2,0],ymm0[5,4],ymm1[6,4]566; AVX-NEXT:    vextractf128 $1, %ymm0, %xmm0567; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[2,0],xmm6[2,3]568; AVX-NEXT:    vmovaps %xmm2, (%rsi)569; AVX-NEXT:    vmovaps %xmm7, (%rdx)570; AVX-NEXT:    vmovaps %xmm8, (%rcx)571; AVX-NEXT:    vmovaps %xmm3, (%r8)572; AVX-NEXT:    vmovaps %xmm4, (%r9)573; AVX-NEXT:    vmovaps %xmm5, (%r10)574; AVX-NEXT:    vmovaps %xmm0, (%rax)575; AVX-NEXT:    vzeroupper576; AVX-NEXT:    retq577;578; AVX2-LABEL: load_i32_stride7_vf4:579; AVX2:       # %bb.0:580; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %rax581; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %r10582; AVX2-NEXT:    vmovaps (%rdi), %ymm0583; AVX2-NEXT:    vmovaps 32(%rdi), %ymm1584; AVX2-NEXT:    vmovaps {{.*#+}} xmm2 = [0,7,6,u]585; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm0[0,1,2,3,4,5],ymm1[6],ymm0[7]586; AVX2-NEXT:    vpermps %ymm3, %ymm2, %ymm2587; AVX2-NEXT:    vbroadcastss 84(%rdi), %xmm3588; AVX2-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0,1,2],xmm3[3]589; AVX2-NEXT:    vmovaps 80(%rdi), %xmm4590; AVX2-NEXT:    vshufps {{.*#+}} xmm3 = xmm4[2,2,2,2]591; AVX2-NEXT:    vblendps {{.*#+}} ymm5 = ymm1[0],ymm0[1],ymm1[2,3,4],ymm0[5],ymm1[6,7]592; AVX2-NEXT:    vshufps {{.*#+}} ymm6 = ymm5[1,0,3,3,5,4,7,7]593; AVX2-NEXT:    vpermpd {{.*#+}} ymm6 = ymm6[0,3,2,3]594; AVX2-NEXT:    vblendps {{.*#+}} xmm3 = xmm6[0,1,2],xmm3[3]595; AVX2-NEXT:    vbroadcastss 8(%rdi), %xmm6596; AVX2-NEXT:    vmovaps 32(%rdi), %xmm7597; AVX2-NEXT:    vblendps {{.*#+}} xmm6 = xmm6[0],xmm7[1],xmm6[2,3]598; AVX2-NEXT:    vmovaps 64(%rdi), %xmm8599; AVX2-NEXT:    vbroadcastss %xmm8, %xmm9600; AVX2-NEXT:    vunpckhps {{.*#+}} xmm4 = xmm9[2],xmm4[2],xmm9[3],xmm4[3]601; AVX2-NEXT:    vblendps {{.*#+}} xmm4 = xmm6[0,1],xmm4[2,3]602; AVX2-NEXT:    vblendps {{.*#+}} xmm6 = xmm7[0,1,2],mem[3]603; AVX2-NEXT:    vmovaps 96(%rdi), %xmm7604; AVX2-NEXT:    vblendps {{.*#+}} xmm9 = xmm7[0],xmm8[1],xmm7[2,3]605; AVX2-NEXT:    vblendps {{.*#+}} xmm6 = xmm9[0,1],xmm6[2,3]606; AVX2-NEXT:    vshufps {{.*#+}} xmm6 = xmm6[3,2,1,0]607; AVX2-NEXT:    vbroadcastss 100(%rdi), %xmm9608; AVX2-NEXT:    vblendps {{.*#+}} xmm9 = xmm8[0,1,2],xmm9[3]609; AVX2-NEXT:    vmovsd {{.*#+}} xmm10 = [4,3,0,0]610; AVX2-NEXT:    vblendps {{.*#+}} ymm11 = ymm1[0,1,2,3],ymm0[4,5,6,7]611; AVX2-NEXT:    vpermps %ymm11, %ymm10, %ymm10612; AVX2-NEXT:    vblendps {{.*#+}} xmm9 = xmm10[0,1],xmm9[2,3]613; AVX2-NEXT:    vblendps {{.*#+}} xmm8 = xmm7[0,1,2],xmm8[3]614; AVX2-NEXT:    vshufps {{.*#+}} xmm8 = xmm8[0,1,3,2]615; AVX2-NEXT:    vshufps {{.*#+}} ymm5 = ymm5[1,0,2,3,5,4,6,7]616; AVX2-NEXT:    vextractf128 $1, %ymm5, %xmm5617; AVX2-NEXT:    vblendps {{.*#+}} xmm5 = xmm5[0,1],xmm8[2,3]618; AVX2-NEXT:    vbroadcastss 80(%rdi), %ymm8619; AVX2-NEXT:    vblendps {{.*#+}} xmm7 = xmm8[0,1,2],xmm7[3]620; AVX2-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[2,3,2,3,6,7,6,7]621; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm1[1],ymm0[2,3,4],ymm1[5],ymm0[6,7]622; AVX2-NEXT:    vextractf128 $1, %ymm0, %xmm0623; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0,1],xmm7[2,3]624; AVX2-NEXT:    vmovaps %xmm2, (%rsi)625; AVX2-NEXT:    vmovaps %xmm3, (%rdx)626; AVX2-NEXT:    vmovaps %xmm4, (%rcx)627; AVX2-NEXT:    vmovaps %xmm6, (%r8)628; AVX2-NEXT:    vmovaps %xmm9, (%r9)629; AVX2-NEXT:    vmovaps %xmm5, (%r10)630; AVX2-NEXT:    vmovaps %xmm0, (%rax)631; AVX2-NEXT:    vzeroupper632; AVX2-NEXT:    retq633;634; AVX2-FP-LABEL: load_i32_stride7_vf4:635; AVX2-FP:       # %bb.0:636; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %rax637; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %r10638; AVX2-FP-NEXT:    vmovaps (%rdi), %ymm0639; AVX2-FP-NEXT:    vmovaps 32(%rdi), %ymm1640; AVX2-FP-NEXT:    vmovaps {{.*#+}} xmm2 = [0,7,6,u]641; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm0[0,1,2,3,4,5],ymm1[6],ymm0[7]642; AVX2-FP-NEXT:    vpermps %ymm3, %ymm2, %ymm2643; AVX2-FP-NEXT:    vbroadcastss 84(%rdi), %xmm3644; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0,1,2],xmm3[3]645; AVX2-FP-NEXT:    vmovaps 80(%rdi), %xmm4646; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm3 = xmm4[2,2,2,2]647; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm5 = ymm1[0],ymm0[1],ymm1[2,3,4],ymm0[5],ymm1[6,7]648; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm6 = ymm5[1,0,3,3,5,4,7,7]649; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm6 = ymm6[0,3,2,3]650; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm3 = xmm6[0,1,2],xmm3[3]651; AVX2-FP-NEXT:    vbroadcastss 8(%rdi), %xmm6652; AVX2-FP-NEXT:    vmovaps 32(%rdi), %xmm7653; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm6 = xmm6[0],xmm7[1],xmm6[2,3]654; AVX2-FP-NEXT:    vmovaps 64(%rdi), %xmm8655; AVX2-FP-NEXT:    vbroadcastss %xmm8, %xmm9656; AVX2-FP-NEXT:    vunpckhps {{.*#+}} xmm4 = xmm9[2],xmm4[2],xmm9[3],xmm4[3]657; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm4 = xmm6[0,1],xmm4[2,3]658; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm6 = xmm7[0,1,2],mem[3]659; AVX2-FP-NEXT:    vmovaps 96(%rdi), %xmm7660; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm9 = xmm7[0],xmm8[1],xmm7[2,3]661; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm6 = xmm9[0,1],xmm6[2,3]662; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm6 = xmm6[3,2,1,0]663; AVX2-FP-NEXT:    vbroadcastss 100(%rdi), %xmm9664; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm9 = xmm8[0,1,2],xmm9[3]665; AVX2-FP-NEXT:    vmovsd {{.*#+}} xmm10 = [4,3,0,0]666; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm11 = ymm1[0,1,2,3],ymm0[4,5,6,7]667; AVX2-FP-NEXT:    vpermps %ymm11, %ymm10, %ymm10668; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm9 = xmm10[0,1],xmm9[2,3]669; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm8 = xmm7[0,1,2],xmm8[3]670; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm8 = xmm8[0,1,3,2]671; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm5 = ymm5[1,0,2,3,5,4,6,7]672; AVX2-FP-NEXT:    vextractf128 $1, %ymm5, %xmm5673; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm5 = xmm5[0,1],xmm8[2,3]674; AVX2-FP-NEXT:    vbroadcastss 80(%rdi), %ymm8675; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm7 = xmm8[0,1,2],xmm7[3]676; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[2,3,2,3,6,7,6,7]677; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm1[1],ymm0[2,3,4],ymm1[5],ymm0[6,7]678; AVX2-FP-NEXT:    vextractf128 $1, %ymm0, %xmm0679; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0,1],xmm7[2,3]680; AVX2-FP-NEXT:    vmovaps %xmm2, (%rsi)681; AVX2-FP-NEXT:    vmovaps %xmm3, (%rdx)682; AVX2-FP-NEXT:    vmovaps %xmm4, (%rcx)683; AVX2-FP-NEXT:    vmovaps %xmm6, (%r8)684; AVX2-FP-NEXT:    vmovaps %xmm9, (%r9)685; AVX2-FP-NEXT:    vmovaps %xmm5, (%r10)686; AVX2-FP-NEXT:    vmovaps %xmm0, (%rax)687; AVX2-FP-NEXT:    vzeroupper688; AVX2-FP-NEXT:    retq689;690; AVX2-FCP-LABEL: load_i32_stride7_vf4:691; AVX2-FCP:       # %bb.0:692; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax693; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r10694; AVX2-FCP-NEXT:    vmovaps (%rdi), %ymm0695; AVX2-FCP-NEXT:    vmovaps 32(%rdi), %ymm1696; AVX2-FCP-NEXT:    vmovaps {{.*#+}} xmm2 = [0,7,6,u]697; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm0[0,1,2,3,4,5],ymm1[6],ymm0[7]698; AVX2-FCP-NEXT:    vpermps %ymm3, %ymm2, %ymm2699; AVX2-FCP-NEXT:    vbroadcastss 84(%rdi), %xmm3700; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0,1,2],xmm3[3]701; AVX2-FCP-NEXT:    vbroadcastf128 {{.*#+}} ymm3 = [1,0,7,0,1,0,7,0]702; AVX2-FCP-NEXT:    # ymm3 = mem[0,1,0,1]703; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm1[0],ymm0[1],ymm1[2,3,4],ymm0[5],ymm1[6,7]704; AVX2-FCP-NEXT:    vpermps %ymm4, %ymm3, %ymm3705; AVX2-FCP-NEXT:    vmovaps 80(%rdi), %xmm5706; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm6 = xmm5[2,2,2,2]707; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm3 = xmm3[0,1,2],xmm6[3]708; AVX2-FCP-NEXT:    vbroadcastss 8(%rdi), %xmm6709; AVX2-FCP-NEXT:    vmovaps 32(%rdi), %xmm7710; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm6 = xmm6[0],xmm7[1],xmm6[2,3]711; AVX2-FCP-NEXT:    vmovaps 64(%rdi), %xmm8712; AVX2-FCP-NEXT:    vbroadcastss %xmm8, %xmm9713; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} xmm5 = xmm9[2],xmm5[2],xmm9[3],xmm5[3]714; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm5 = xmm6[0,1],xmm5[2,3]715; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm6 = xmm7[0,1,2],mem[3]716; AVX2-FCP-NEXT:    vmovaps 96(%rdi), %xmm7717; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm9 = xmm7[0],xmm8[1],xmm7[2,3]718; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm6 = xmm9[0,1],xmm6[2,3]719; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm6 = xmm6[3,2,1,0]720; AVX2-FCP-NEXT:    vbroadcastss 100(%rdi), %xmm9721; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm9 = xmm8[0,1,2],xmm9[3]722; AVX2-FCP-NEXT:    vmovsd {{.*#+}} xmm10 = [4,3,0,0]723; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm11 = ymm1[0,1,2,3],ymm0[4,5,6,7]724; AVX2-FCP-NEXT:    vpermps %ymm11, %ymm10, %ymm10725; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm9 = xmm10[0,1],xmm9[2,3]726; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm8 = xmm7[0,1,2],xmm8[3]727; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm8 = xmm8[0,1,3,2]728; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm4 = ymm4[1,0,2,3,5,4,6,7]729; AVX2-FCP-NEXT:    vextractf128 $1, %ymm4, %xmm4730; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm4 = xmm4[0,1],xmm8[2,3]731; AVX2-FCP-NEXT:    vbroadcastss 80(%rdi), %ymm8732; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm7 = xmm8[0,1,2],xmm7[3]733; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[2,3,2,3,6,7,6,7]734; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm1[1],ymm0[2,3,4],ymm1[5],ymm0[6,7]735; AVX2-FCP-NEXT:    vextractf128 $1, %ymm0, %xmm0736; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0,1],xmm7[2,3]737; AVX2-FCP-NEXT:    vmovaps %xmm2, (%rsi)738; AVX2-FCP-NEXT:    vmovaps %xmm3, (%rdx)739; AVX2-FCP-NEXT:    vmovaps %xmm5, (%rcx)740; AVX2-FCP-NEXT:    vmovaps %xmm6, (%r8)741; AVX2-FCP-NEXT:    vmovaps %xmm9, (%r9)742; AVX2-FCP-NEXT:    vmovaps %xmm4, (%r10)743; AVX2-FCP-NEXT:    vmovaps %xmm0, (%rax)744; AVX2-FCP-NEXT:    vzeroupper745; AVX2-FCP-NEXT:    retq746;747; AVX512-LABEL: load_i32_stride7_vf4:748; AVX512:       # %bb.0:749; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %rax750; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %r10751; AVX512-NEXT:    vmovdqa64 (%rdi), %zmm0752; AVX512-NEXT:    vmovdqa64 64(%rdi), %zmm1753; AVX512-NEXT:    vpmovsxbd {{.*#+}} xmm2 = [0,7,14,21]754; AVX512-NEXT:    vpermi2d %zmm1, %zmm0, %zmm2755; AVX512-NEXT:    vpmovsxbd {{.*#+}} xmm3 = [1,8,15,22]756; AVX512-NEXT:    vpermi2d %zmm1, %zmm0, %zmm3757; AVX512-NEXT:    vpmovsxbd {{.*#+}} xmm4 = [2,9,16,23]758; AVX512-NEXT:    vpermi2d %zmm1, %zmm0, %zmm4759; AVX512-NEXT:    vpmovsxbd {{.*#+}} xmm5 = [3,10,17,24]760; AVX512-NEXT:    vpermi2d %zmm1, %zmm0, %zmm5761; AVX512-NEXT:    vpmovsxbd {{.*#+}} xmm6 = [4,11,18,25]762; AVX512-NEXT:    vpermi2d %zmm1, %zmm0, %zmm6763; AVX512-NEXT:    vpmovsxbd {{.*#+}} xmm7 = [5,12,19,26]764; AVX512-NEXT:    vpermi2d %zmm1, %zmm0, %zmm7765; AVX512-NEXT:    vpmovsxbd {{.*#+}} xmm8 = [6,13,20,27]766; AVX512-NEXT:    vpermi2d %zmm1, %zmm0, %zmm8767; AVX512-NEXT:    vmovdqa %xmm2, (%rsi)768; AVX512-NEXT:    vmovdqa %xmm3, (%rdx)769; AVX512-NEXT:    vmovdqa %xmm4, (%rcx)770; AVX512-NEXT:    vmovdqa %xmm5, (%r8)771; AVX512-NEXT:    vmovdqa %xmm6, (%r9)772; AVX512-NEXT:    vmovdqa %xmm7, (%r10)773; AVX512-NEXT:    vmovdqa %xmm8, (%rax)774; AVX512-NEXT:    vzeroupper775; AVX512-NEXT:    retq776;777; AVX512-FCP-LABEL: load_i32_stride7_vf4:778; AVX512-FCP:       # %bb.0:779; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax780; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r10781; AVX512-FCP-NEXT:    vmovdqa64 (%rdi), %zmm0782; AVX512-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm1783; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm2 = [0,7,14,21]784; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm2785; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm3 = [1,8,15,22]786; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm3787; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm4 = [2,9,16,23]788; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm4789; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm5 = [3,10,17,24]790; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm5791; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm6 = [4,11,18,25]792; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm6793; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm7 = [5,12,19,26]794; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm7795; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm8 = [6,13,20,27]796; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm8797; AVX512-FCP-NEXT:    vmovdqa %xmm2, (%rsi)798; AVX512-FCP-NEXT:    vmovdqa %xmm3, (%rdx)799; AVX512-FCP-NEXT:    vmovdqa %xmm4, (%rcx)800; AVX512-FCP-NEXT:    vmovdqa %xmm5, (%r8)801; AVX512-FCP-NEXT:    vmovdqa %xmm6, (%r9)802; AVX512-FCP-NEXT:    vmovdqa %xmm7, (%r10)803; AVX512-FCP-NEXT:    vmovdqa %xmm8, (%rax)804; AVX512-FCP-NEXT:    vzeroupper805; AVX512-FCP-NEXT:    retq806;807; AVX512DQ-LABEL: load_i32_stride7_vf4:808; AVX512DQ:       # %bb.0:809; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %rax810; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %r10811; AVX512DQ-NEXT:    vmovdqa64 (%rdi), %zmm0812; AVX512DQ-NEXT:    vmovdqa64 64(%rdi), %zmm1813; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} xmm2 = [0,7,14,21]814; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm0, %zmm2815; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} xmm3 = [1,8,15,22]816; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm0, %zmm3817; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} xmm4 = [2,9,16,23]818; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm0, %zmm4819; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} xmm5 = [3,10,17,24]820; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm0, %zmm5821; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} xmm6 = [4,11,18,25]822; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm0, %zmm6823; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} xmm7 = [5,12,19,26]824; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm0, %zmm7825; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} xmm8 = [6,13,20,27]826; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm0, %zmm8827; AVX512DQ-NEXT:    vmovdqa %xmm2, (%rsi)828; AVX512DQ-NEXT:    vmovdqa %xmm3, (%rdx)829; AVX512DQ-NEXT:    vmovdqa %xmm4, (%rcx)830; AVX512DQ-NEXT:    vmovdqa %xmm5, (%r8)831; AVX512DQ-NEXT:    vmovdqa %xmm6, (%r9)832; AVX512DQ-NEXT:    vmovdqa %xmm7, (%r10)833; AVX512DQ-NEXT:    vmovdqa %xmm8, (%rax)834; AVX512DQ-NEXT:    vzeroupper835; AVX512DQ-NEXT:    retq836;837; AVX512DQ-FCP-LABEL: load_i32_stride7_vf4:838; AVX512DQ-FCP:       # %bb.0:839; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax840; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r10841; AVX512DQ-FCP-NEXT:    vmovdqa64 (%rdi), %zmm0842; AVX512DQ-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm1843; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm2 = [0,7,14,21]844; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm2845; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm3 = [1,8,15,22]846; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm3847; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm4 = [2,9,16,23]848; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm4849; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm5 = [3,10,17,24]850; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm5851; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm6 = [4,11,18,25]852; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm6853; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm7 = [5,12,19,26]854; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm7855; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm8 = [6,13,20,27]856; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm8857; AVX512DQ-FCP-NEXT:    vmovdqa %xmm2, (%rsi)858; AVX512DQ-FCP-NEXT:    vmovdqa %xmm3, (%rdx)859; AVX512DQ-FCP-NEXT:    vmovdqa %xmm4, (%rcx)860; AVX512DQ-FCP-NEXT:    vmovdqa %xmm5, (%r8)861; AVX512DQ-FCP-NEXT:    vmovdqa %xmm6, (%r9)862; AVX512DQ-FCP-NEXT:    vmovdqa %xmm7, (%r10)863; AVX512DQ-FCP-NEXT:    vmovdqa %xmm8, (%rax)864; AVX512DQ-FCP-NEXT:    vzeroupper865; AVX512DQ-FCP-NEXT:    retq866;867; AVX512BW-LABEL: load_i32_stride7_vf4:868; AVX512BW:       # %bb.0:869; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax870; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %r10871; AVX512BW-NEXT:    vmovdqa64 (%rdi), %zmm0872; AVX512BW-NEXT:    vmovdqa64 64(%rdi), %zmm1873; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} xmm2 = [0,7,14,21]874; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm2875; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} xmm3 = [1,8,15,22]876; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm3877; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} xmm4 = [2,9,16,23]878; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm4879; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} xmm5 = [3,10,17,24]880; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm5881; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} xmm6 = [4,11,18,25]882; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm6883; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} xmm7 = [5,12,19,26]884; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm7885; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} xmm8 = [6,13,20,27]886; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm8887; AVX512BW-NEXT:    vmovdqa %xmm2, (%rsi)888; AVX512BW-NEXT:    vmovdqa %xmm3, (%rdx)889; AVX512BW-NEXT:    vmovdqa %xmm4, (%rcx)890; AVX512BW-NEXT:    vmovdqa %xmm5, (%r8)891; AVX512BW-NEXT:    vmovdqa %xmm6, (%r9)892; AVX512BW-NEXT:    vmovdqa %xmm7, (%r10)893; AVX512BW-NEXT:    vmovdqa %xmm8, (%rax)894; AVX512BW-NEXT:    vzeroupper895; AVX512BW-NEXT:    retq896;897; AVX512BW-FCP-LABEL: load_i32_stride7_vf4:898; AVX512BW-FCP:       # %bb.0:899; AVX512BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax900; AVX512BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r10901; AVX512BW-FCP-NEXT:    vmovdqa64 (%rdi), %zmm0902; AVX512BW-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm1903; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm2 = [0,7,14,21]904; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm2905; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm3 = [1,8,15,22]906; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm3907; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm4 = [2,9,16,23]908; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm4909; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm5 = [3,10,17,24]910; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm5911; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm6 = [4,11,18,25]912; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm6913; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm7 = [5,12,19,26]914; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm7915; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm8 = [6,13,20,27]916; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm8917; AVX512BW-FCP-NEXT:    vmovdqa %xmm2, (%rsi)918; AVX512BW-FCP-NEXT:    vmovdqa %xmm3, (%rdx)919; AVX512BW-FCP-NEXT:    vmovdqa %xmm4, (%rcx)920; AVX512BW-FCP-NEXT:    vmovdqa %xmm5, (%r8)921; AVX512BW-FCP-NEXT:    vmovdqa %xmm6, (%r9)922; AVX512BW-FCP-NEXT:    vmovdqa %xmm7, (%r10)923; AVX512BW-FCP-NEXT:    vmovdqa %xmm8, (%rax)924; AVX512BW-FCP-NEXT:    vzeroupper925; AVX512BW-FCP-NEXT:    retq926;927; AVX512DQ-BW-LABEL: load_i32_stride7_vf4:928; AVX512DQ-BW:       # %bb.0:929; AVX512DQ-BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax930; AVX512DQ-BW-NEXT:    movq {{[0-9]+}}(%rsp), %r10931; AVX512DQ-BW-NEXT:    vmovdqa64 (%rdi), %zmm0932; AVX512DQ-BW-NEXT:    vmovdqa64 64(%rdi), %zmm1933; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} xmm2 = [0,7,14,21]934; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm2935; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} xmm3 = [1,8,15,22]936; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm3937; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} xmm4 = [2,9,16,23]938; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm4939; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} xmm5 = [3,10,17,24]940; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm5941; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} xmm6 = [4,11,18,25]942; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm6943; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} xmm7 = [5,12,19,26]944; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm7945; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} xmm8 = [6,13,20,27]946; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm8947; AVX512DQ-BW-NEXT:    vmovdqa %xmm2, (%rsi)948; AVX512DQ-BW-NEXT:    vmovdqa %xmm3, (%rdx)949; AVX512DQ-BW-NEXT:    vmovdqa %xmm4, (%rcx)950; AVX512DQ-BW-NEXT:    vmovdqa %xmm5, (%r8)951; AVX512DQ-BW-NEXT:    vmovdqa %xmm6, (%r9)952; AVX512DQ-BW-NEXT:    vmovdqa %xmm7, (%r10)953; AVX512DQ-BW-NEXT:    vmovdqa %xmm8, (%rax)954; AVX512DQ-BW-NEXT:    vzeroupper955; AVX512DQ-BW-NEXT:    retq956;957; AVX512DQ-BW-FCP-LABEL: load_i32_stride7_vf4:958; AVX512DQ-BW-FCP:       # %bb.0:959; AVX512DQ-BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax960; AVX512DQ-BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r10961; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 (%rdi), %zmm0962; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm1963; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm2 = [0,7,14,21]964; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm2965; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm3 = [1,8,15,22]966; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm3967; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm4 = [2,9,16,23]968; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm4969; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm5 = [3,10,17,24]970; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm5971; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm6 = [4,11,18,25]972; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm6973; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm7 = [5,12,19,26]974; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm7975; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm8 = [6,13,20,27]976; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm8977; AVX512DQ-BW-FCP-NEXT:    vmovdqa %xmm2, (%rsi)978; AVX512DQ-BW-FCP-NEXT:    vmovdqa %xmm3, (%rdx)979; AVX512DQ-BW-FCP-NEXT:    vmovdqa %xmm4, (%rcx)980; AVX512DQ-BW-FCP-NEXT:    vmovdqa %xmm5, (%r8)981; AVX512DQ-BW-FCP-NEXT:    vmovdqa %xmm6, (%r9)982; AVX512DQ-BW-FCP-NEXT:    vmovdqa %xmm7, (%r10)983; AVX512DQ-BW-FCP-NEXT:    vmovdqa %xmm8, (%rax)984; AVX512DQ-BW-FCP-NEXT:    vzeroupper985; AVX512DQ-BW-FCP-NEXT:    retq986  %wide.vec = load <28 x i32>, ptr %in.vec, align 64987  %strided.vec0 = shufflevector <28 x i32> %wide.vec, <28 x i32> poison, <4 x i32> <i32 0, i32 7, i32 14, i32 21>988  %strided.vec1 = shufflevector <28 x i32> %wide.vec, <28 x i32> poison, <4 x i32> <i32 1, i32 8, i32 15, i32 22>989  %strided.vec2 = shufflevector <28 x i32> %wide.vec, <28 x i32> poison, <4 x i32> <i32 2, i32 9, i32 16, i32 23>990  %strided.vec3 = shufflevector <28 x i32> %wide.vec, <28 x i32> poison, <4 x i32> <i32 3, i32 10, i32 17, i32 24>991  %strided.vec4 = shufflevector <28 x i32> %wide.vec, <28 x i32> poison, <4 x i32> <i32 4, i32 11, i32 18, i32 25>992  %strided.vec5 = shufflevector <28 x i32> %wide.vec, <28 x i32> poison, <4 x i32> <i32 5, i32 12, i32 19, i32 26>993  %strided.vec6 = shufflevector <28 x i32> %wide.vec, <28 x i32> poison, <4 x i32> <i32 6, i32 13, i32 20, i32 27>994  store <4 x i32> %strided.vec0, ptr %out.vec0, align 64995  store <4 x i32> %strided.vec1, ptr %out.vec1, align 64996  store <4 x i32> %strided.vec2, ptr %out.vec2, align 64997  store <4 x i32> %strided.vec3, ptr %out.vec3, align 64998  store <4 x i32> %strided.vec4, ptr %out.vec4, align 64999  store <4 x i32> %strided.vec5, ptr %out.vec5, align 641000  store <4 x i32> %strided.vec6, ptr %out.vec6, align 641001  ret void1002}1003 1004define void @load_i32_stride7_vf8(ptr %in.vec, ptr %out.vec0, ptr %out.vec1, ptr %out.vec2, ptr %out.vec3, ptr %out.vec4, ptr %out.vec5, ptr %out.vec6) nounwind {1005; SSE-LABEL: load_i32_stride7_vf8:1006; SSE:       # %bb.0:1007; SSE-NEXT:    subq $24, %rsp1008; SSE-NEXT:    movdqa 144(%rdi), %xmm91009; SSE-NEXT:    movdqa 80(%rdi), %xmm51010; SSE-NEXT:    movdqa (%rdi), %xmm121011; SSE-NEXT:    movdqa 16(%rdi), %xmm111012; SSE-NEXT:    movdqa 48(%rdi), %xmm61013; SSE-NEXT:    movdqa 192(%rdi), %xmm81014; SSE-NEXT:    movdqa 160(%rdi), %xmm101015; SSE-NEXT:    movdqa %xmm10, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1016; SSE-NEXT:    movdqa 112(%rdi), %xmm151017; SSE-NEXT:    movdqa 128(%rdi), %xmm01018; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1019; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[3,3,3,3]1020; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm15[1,1,1,1]1021; SSE-NEXT:    pshufd {{.*#+}} xmm2 = xmm15[2,3,2,3]1022; SSE-NEXT:    movdqa %xmm15, %xmm31023; SSE-NEXT:    punpckldq {{.*#+}} xmm3 = xmm3[0],xmm0[0],xmm3[1],xmm0[1]1024; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm10[2,2,3,3]1025; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm8[0],xmm0[1],xmm8[1]1026; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm3[0],xmm0[1]1027; SSE-NEXT:    movapd %xmm0, (%rsp) # 16-byte Spill1028; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm11[3,3,3,3]1029; SSE-NEXT:    pshufd {{.*#+}} xmm3 = xmm12[1,1,1,1]1030; SSE-NEXT:    movdqa %xmm12, %xmm41031; SSE-NEXT:    punpckldq {{.*#+}} xmm4 = xmm4[0],xmm0[0],xmm4[1],xmm0[1]1032; SSE-NEXT:    movdqa %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1033; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm6[2,2,3,3]1034; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm5[0],xmm0[1],xmm5[1]1035; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm4[0],xmm0[1]1036; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1037; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm9[0],xmm1[1],xmm9[1]1038; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm8[2,2,2,2]1039; SSE-NEXT:    movdqa %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1040; SSE-NEXT:    movdqa %xmm10, %xmm41041; SSE-NEXT:    punpckhdq {{.*#+}} xmm4 = xmm4[2],xmm0[2],xmm4[3],xmm0[3]1042; SSE-NEXT:    movsd {{.*#+}} xmm4 = xmm1[0],xmm4[1]1043; SSE-NEXT:    movapd %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1044; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm5[2,2,2,2]1045; SSE-NEXT:    movdqa %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1046; SSE-NEXT:    movdqa %xmm6, %xmm11047; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]1048; SSE-NEXT:    movdqa 32(%rdi), %xmm41049; SSE-NEXT:    punpckldq {{.*#+}} xmm3 = xmm3[0],xmm4[0],xmm3[1],xmm4[1]1050; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm3[0],xmm1[1]1051; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1052; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm9[1,1,1,1]1053; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]1054; SSE-NEXT:    movdqa 176(%rdi), %xmm101055; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm8[2,3,2,3]1056; SSE-NEXT:    pshufd {{.*#+}} xmm13 = xmm10[0,0,1,1]1057; SSE-NEXT:    punpckldq {{.*#+}} xmm13 = xmm13[0],xmm1[0],xmm13[1],xmm1[1]1058; SSE-NEXT:    movsd {{.*#+}} xmm13 = xmm2[0],xmm13[1]1059; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm12[2,3,2,3]1060; SSE-NEXT:    pshufd {{.*#+}} xmm2 = xmm4[1,1,1,1]1061; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]1062; SSE-NEXT:    movdqa 64(%rdi), %xmm141063; SSE-NEXT:    pshufd {{.*#+}} xmm2 = xmm5[2,3,2,3]1064; SSE-NEXT:    pshufd {{.*#+}} xmm8 = xmm14[0,0,1,1]1065; SSE-NEXT:    punpckldq {{.*#+}} xmm8 = xmm8[0],xmm2[0],xmm8[1],xmm2[1]1066; SSE-NEXT:    movsd {{.*#+}} xmm8 = xmm1[0],xmm8[1]1067; SSE-NEXT:    movdqa 208(%rdi), %xmm31068; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm3[0,0,1,1]1069; SSE-NEXT:    movdqa %xmm10, %xmm71070; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm1[0],xmm7[1],xmm1[1]1071; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm15[2,2,3,3]1072; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm9[2],xmm1[3],xmm9[3]1073; SSE-NEXT:    movsd {{.*#+}} xmm7 = xmm1[0],xmm7[1]1074; SSE-NEXT:    movdqa 96(%rdi), %xmm51075; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm5[0,0,1,1]1076; SSE-NEXT:    movdqa %xmm14, %xmm151077; SSE-NEXT:    punpckldq {{.*#+}} xmm15 = xmm15[0],xmm0[0],xmm15[1],xmm0[1]1078; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm12[2,2,3,3]1079; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm4[2],xmm0[3],xmm4[3]1080; SSE-NEXT:    movsd {{.*#+}} xmm15 = xmm0[0],xmm15[1]1081; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm9[3,3,3,3]1082; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload1083; SSE-NEXT:    movdqa %xmm6, %xmm121084; SSE-NEXT:    punpckldq {{.*#+}} xmm12 = xmm12[0],xmm0[0],xmm12[1],xmm0[1]1085; SSE-NEXT:    pshufd {{.*#+}} xmm9 = xmm10[2,2,3,3]1086; SSE-NEXT:    punpckldq {{.*#+}} xmm9 = xmm9[0],xmm3[0],xmm9[1],xmm3[1]1087; SSE-NEXT:    movsd {{.*#+}} xmm9 = xmm12[0],xmm9[1]1088; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm4[3,3,3,3]1089; SSE-NEXT:    movdqa %xmm11, %xmm121090; SSE-NEXT:    movdqa %xmm11, %xmm41091; SSE-NEXT:    punpckldq {{.*#+}} xmm4 = xmm4[0],xmm0[0],xmm4[1],xmm0[1]1092; SSE-NEXT:    pshufd {{.*#+}} xmm2 = xmm14[2,2,3,3]1093; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm5[0],xmm2[1],xmm5[1]1094; SSE-NEXT:    movsd {{.*#+}} xmm2 = xmm4[0],xmm2[1]1095; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm3[2,2,2,2]1096; SSE-NEXT:    punpckhdq {{.*#+}} xmm10 = xmm10[2],xmm4[2],xmm10[3],xmm4[3]1097; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm6[1,1,1,1]1098; SSE-NEXT:    movdqa %xmm6, %xmm111099; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload1100; SSE-NEXT:    punpckldq {{.*#+}} xmm4 = xmm4[0],xmm1[0],xmm4[1],xmm1[1]1101; SSE-NEXT:    movsd {{.*#+}} xmm10 = xmm4[0],xmm10[1]1102; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm5[2,2,2,2]1103; SSE-NEXT:    punpckhdq {{.*#+}} xmm14 = xmm14[2],xmm4[2],xmm14[3],xmm4[3]1104; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm12[1,1,1,1]1105; SSE-NEXT:    movdqa %xmm12, %xmm61106; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload1107; SSE-NEXT:    punpckldq {{.*#+}} xmm4 = xmm4[0],xmm0[0],xmm4[1],xmm0[1]1108; SSE-NEXT:    movsd {{.*#+}} xmm14 = xmm4[0],xmm14[1]1109; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm1[1,1,1,1]1110; SSE-NEXT:    pshufd {{.*#+}} xmm12 = xmm11[2,3,2,3]1111; SSE-NEXT:    punpckldq {{.*#+}} xmm12 = xmm12[0],xmm4[0],xmm12[1],xmm4[1]1112; SSE-NEXT:    pshufd {{.*#+}} xmm3 = xmm3[2,3,2,3]1113; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload1114; SSE-NEXT:    # xmm4 = mem[0,0,1,1]1115; SSE-NEXT:    punpckldq {{.*#+}} xmm4 = xmm4[0],xmm3[0],xmm4[1],xmm3[1]1116; SSE-NEXT:    movsd {{.*#+}} xmm4 = xmm12[0],xmm4[1]1117; SSE-NEXT:    pshufd {{.*#+}} xmm3 = xmm0[1,1,1,1]1118; SSE-NEXT:    pshufd {{.*#+}} xmm12 = xmm6[2,3,2,3]1119; SSE-NEXT:    punpckldq {{.*#+}} xmm12 = xmm12[0],xmm3[0],xmm12[1],xmm3[1]1120; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm5[2,3,2,3]1121; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Folded Reload1122; SSE-NEXT:    # xmm3 = mem[0,0,1,1]1123; SSE-NEXT:    punpckldq {{.*#+}} xmm3 = xmm3[0],xmm1[0],xmm3[1],xmm1[1]1124; SSE-NEXT:    movsd {{.*#+}} xmm3 = xmm12[0],xmm3[1]1125; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload1126; SSE-NEXT:    movaps %xmm1, (%rsi)1127; SSE-NEXT:    movaps (%rsp), %xmm1 # 16-byte Reload1128; SSE-NEXT:    movaps %xmm1, 16(%rsi)1129; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload1130; SSE-NEXT:    movaps %xmm0, (%rdx)1131; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload1132; SSE-NEXT:    movaps %xmm0, 16(%rdx)1133; SSE-NEXT:    movapd %xmm8, (%rcx)1134; SSE-NEXT:    movapd %xmm13, 16(%rcx)1135; SSE-NEXT:    movapd %xmm15, (%r8)1136; SSE-NEXT:    movapd %xmm7, 16(%r8)1137; SSE-NEXT:    movapd %xmm2, (%r9)1138; SSE-NEXT:    movapd %xmm9, 16(%r9)1139; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %rax1140; SSE-NEXT:    movapd %xmm14, (%rax)1141; SSE-NEXT:    movapd %xmm10, 16(%rax)1142; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %rax1143; SSE-NEXT:    movapd %xmm3, (%rax)1144; SSE-NEXT:    movapd %xmm4, 16(%rax)1145; SSE-NEXT:    addq $24, %rsp1146; SSE-NEXT:    retq1147;1148; AVX-LABEL: load_i32_stride7_vf8:1149; AVX:       # %bb.0:1150; AVX-NEXT:    vmovaps 160(%rdi), %ymm41151; AVX-NEXT:    vmovaps 128(%rdi), %ymm71152; AVX-NEXT:    vmovaps 64(%rdi), %ymm101153; AVX-NEXT:    vmovaps 32(%rdi), %ymm01154; AVX-NEXT:    vmovaps (%rdi), %ymm11155; AVX-NEXT:    vmovaps 96(%rdi), %ymm121156; AVX-NEXT:    vmovaps 80(%rdi), %xmm21157; AVX-NEXT:    vunpcklpd {{.*#+}} ymm3 = ymm12[0],ymm2[0],ymm12[2],ymm2[2]1158; AVX-NEXT:    vblendps {{.*#+}} ymm5 = ymm1[0,1,2,3,4,5],ymm0[6],ymm1[7]1159; AVX-NEXT:    vextractf128 $1, %ymm5, %xmm51160; AVX-NEXT:    vmovaps (%rdi), %xmm141161; AVX-NEXT:    vmovaps 32(%rdi), %xmm91162; AVX-NEXT:    vblendps {{.*#+}} xmm5 = xmm14[0,1],xmm5[2,3]1163; AVX-NEXT:    vshufps {{.*#+}} xmm5 = xmm5[0,3,2,3]1164; AVX-NEXT:    vblendps {{.*#+}} ymm6 = ymm5[0,1,2],ymm3[3,4,5,6,7]1165; AVX-NEXT:    vmovaps 160(%rdi), %xmm31166; AVX-NEXT:    vmovaps 128(%rdi), %xmm51167; AVX-NEXT:    vunpckhpd {{.*#+}} xmm8 = xmm5[1],xmm3[1]1168; AVX-NEXT:    vmovaps 192(%rdi), %xmm111169; AVX-NEXT:    vinsertps {{.*#+}} xmm8 = zero,xmm8[1,2],xmm11[1]1170; AVX-NEXT:    vinsertf128 $1, %xmm8, %ymm0, %ymm81171; AVX-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3,4],ymm8[5,6,7]1172; AVX-NEXT:    vshufps {{.*#+}} ymm8 = ymm12[1,1],ymm10[2,2],ymm12[5,5],ymm10[6,6]1173; AVX-NEXT:    vperm2f128 {{.*#+}} ymm8 = ymm8[2,3,2,3]1174; AVX-NEXT:    vblendps {{.*#+}} xmm13 = xmm9[0],xmm14[1],xmm9[2,3]1175; AVX-NEXT:    vshufps {{.*#+}} xmm13 = xmm13[1,0],mem[3,3]1176; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm13[0,1,2],ymm8[3,4,5,6,7]1177; AVX-NEXT:    vperm2f128 {{.*#+}} ymm13 = ymm7[2,3],ymm4[0,1]1178; AVX-NEXT:    vshufps {{.*#+}} ymm13 = ymm7[0,0],ymm13[3,3],ymm7[4,4],ymm13[7,7]1179; AVX-NEXT:    vextractf128 $1, %ymm13, %xmm131180; AVX-NEXT:    vinsertps {{.*#+}} xmm13 = zero,xmm13[1,2],xmm11[2]1181; AVX-NEXT:    vinsertf128 $1, %xmm13, %ymm0, %ymm131182; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1,2,3,4],ymm13[5,6,7]1183; AVX-NEXT:    vshufps {{.*#+}} xmm13 = xmm14[2,3,2,3]1184; AVX-NEXT:    vblendps {{.*#+}} xmm13 = xmm13[0],xmm9[1],xmm13[2,3]1185; AVX-NEXT:    vshufps {{.*#+}} ymm15 = ymm2[3,1],ymm10[0,3],ymm2[7,5],ymm10[4,7]1186; AVX-NEXT:    vshufps {{.*#+}} ymm15 = ymm12[2,1],ymm15[2,0],ymm12[6,5],ymm15[6,4]1187; AVX-NEXT:    vblendps {{.*#+}} ymm15 = ymm13[0,1],ymm15[2,3,4,5,6,7]1188; AVX-NEXT:    vunpcklpd {{.*#+}} ymm13 = ymm7[0],ymm4[0],ymm7[2],ymm4[2]1189; AVX-NEXT:    vextractf128 $1, %ymm13, %xmm131190; AVX-NEXT:    vblendps {{.*#+}} xmm11 = xmm13[0,1,2],xmm11[3]1191; AVX-NEXT:    vmovaps 192(%rdi), %ymm131192; AVX-NEXT:    vinsertf128 $1, %xmm11, %ymm0, %ymm111193; AVX-NEXT:    vblendps {{.*#+}} ymm11 = ymm15[0,1,2,3,4],ymm11[5,6,7]1194; AVX-NEXT:    vmovaps 64(%rdi), %xmm151195; AVX-NEXT:    vshufps {{.*#+}} ymm10 = ymm10[1,0],ymm12[0,0],ymm10[5,4],ymm12[4,4]1196; AVX-NEXT:    vshufps {{.*#+}} ymm10 = ymm12[3,1],ymm10[0,2],ymm12[7,5],ymm10[4,6]1197; AVX-NEXT:    vblendps {{.*#+}} xmm12 = xmm9[0,1,2],xmm14[3]1198; AVX-NEXT:    vshufps {{.*#+}} xmm12 = xmm12[3,2,2,3]1199; AVX-NEXT:    vblendps {{.*#+}} ymm10 = ymm12[0,1],ymm10[2,3,4,5,6,7]1200; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm13[0,1],ymm4[1,3],ymm13[4,5],ymm4[5,7]1201; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm7[0,2],ymm12[2,0],ymm7[4,6],ymm12[6,4]1202; AVX-NEXT:    vblendps {{.*#+}} ymm10 = ymm10[0,1,2,3,4],ymm12[5,6,7]1203; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm13[1,0],ymm4[2,0],ymm13[5,4],ymm4[6,4]1204; AVX-NEXT:    vperm2f128 {{.*#+}} ymm14 = ymm7[2,3,0,1]1205; AVX-NEXT:    vshufps {{.*#+}} ymm7 = ymm7[3,0],ymm14[0,0],ymm7[7,4],ymm14[4,4]1206; AVX-NEXT:    vshufps {{.*#+}} ymm7 = ymm7[2,0],ymm12[2,0],ymm7[6,4],ymm12[6,4]1207; AVX-NEXT:    vmovaps 96(%rdi), %xmm121208; AVX-NEXT:    vshufps {{.*#+}} xmm14 = xmm12[0,1,0,1]1209; AVX-NEXT:    vblendps {{.*#+}} xmm14 = xmm15[0,1,2],xmm14[3]1210; AVX-NEXT:    vshufps {{.*#+}} xmm9 = xmm9[2,3,2,3]1211; AVX-NEXT:    vblendps {{.*#+}} xmm9 = mem[0],xmm9[1],mem[2,3]1212; AVX-NEXT:    vblendps {{.*#+}} xmm9 = xmm9[0,1],xmm14[2,3]1213; AVX-NEXT:    vblendps {{.*#+}} ymm7 = ymm9[0,1,2,3],ymm7[4,5,6,7]1214; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm13[2,1],ymm4[3,3],ymm13[6,5],ymm4[7,7]1215; AVX-NEXT:    vblendps {{.*#+}} xmm9 = xmm3[0],xmm5[1],xmm3[2,3]1216; AVX-NEXT:    vinsertf128 $1, %xmm9, %ymm0, %ymm91217; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm9[1,0],ymm4[2,0],ymm9[5,4],ymm4[6,4]1218; AVX-NEXT:    vblendps {{.*#+}} xmm9 = xmm12[0,1,2],xmm15[3]1219; AVX-NEXT:    vshufps {{.*#+}} ymm14 = ymm0[0,0],ymm1[1,0],ymm0[4,4],ymm1[5,4]1220; AVX-NEXT:    vextractf128 $1, %ymm14, %xmm141221; AVX-NEXT:    vshufps {{.*#+}} xmm9 = xmm14[2,0],xmm9[3,2]1222; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm9[0,1,2,3],ymm4[4,5,6,7]1223; AVX-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[0,1,0,1]1224; AVX-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0,1,2],xmm12[3]1225; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[1,0],ymm1[2,0],ymm0[5,4],ymm1[6,4]1226; AVX-NEXT:    vextractf128 $1, %ymm0, %xmm01227; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[2,0],xmm2[2,3]1228; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm13[2,3,0,1]1229; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm13[3,0],ymm1[0,0],ymm13[7,4],ymm1[4,4]1230; AVX-NEXT:    vshufps {{.*#+}} xmm2 = xmm5[2,3,2,3]1231; AVX-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0],xmm3[1],xmm2[2,3]1232; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm0, %ymm21233; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[0,1],ymm1[2,0],ymm2[4,5],ymm1[6,4]1234; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]1235; AVX-NEXT:    vmovaps %ymm6, (%rsi)1236; AVX-NEXT:    vmovaps %ymm8, (%rdx)1237; AVX-NEXT:    vmovaps %ymm11, (%rcx)1238; AVX-NEXT:    vmovaps %ymm10, (%r8)1239; AVX-NEXT:    vmovaps %ymm7, (%r9)1240; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %rax1241; AVX-NEXT:    vmovaps %ymm4, (%rax)1242; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %rax1243; AVX-NEXT:    vmovaps %ymm0, (%rax)1244; AVX-NEXT:    vzeroupper1245; AVX-NEXT:    retq1246;1247; AVX2-LABEL: load_i32_stride7_vf8:1248; AVX2:       # %bb.0:1249; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %rax1250; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %r101251; AVX2-NEXT:    vmovdqa 64(%rdi), %ymm91252; AVX2-NEXT:    vmovdqa 160(%rdi), %ymm41253; AVX2-NEXT:    vmovdqa 128(%rdi), %ymm51254; AVX2-NEXT:    vmovdqa (%rdi), %ymm01255; AVX2-NEXT:    vmovdqa 32(%rdi), %ymm11256; AVX2-NEXT:    vmovdqa 96(%rdi), %ymm101257; AVX2-NEXT:    vpbroadcastq 80(%rdi), %ymm21258; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm10[4,5,6,7]1259; AVX2-NEXT:    vpmovsxbd {{.*#+}} xmm3 = [0,7,6,0]1260; AVX2-NEXT:    vpblendd {{.*#+}} ymm6 = ymm0[0,1,2,3,4,5],ymm1[6],ymm0[7]1261; AVX2-NEXT:    vpermd %ymm6, %ymm3, %ymm31262; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm3[0,1,2],ymm2[3,4,5,6,7]1263; AVX2-NEXT:    vmovdqa 128(%rdi), %xmm61264; AVX2-NEXT:    vmovdqa 160(%rdi), %xmm31265; AVX2-NEXT:    vpunpckhqdq {{.*#+}} xmm6 = xmm6[1],xmm3[1]1266; AVX2-NEXT:    vinserti128 $1, %xmm6, %ymm0, %ymm61267; AVX2-NEXT:    vpbroadcastd 196(%rdi), %ymm71268; AVX2-NEXT:    vpblendd {{.*#+}} ymm6 = ymm6[0,1,2,3,4,5,6],ymm7[7]1269; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm6[5,6,7]1270; AVX2-NEXT:    vpshufd {{.*#+}} xmm6 = mem[2,2,2,2]1271; AVX2-NEXT:    vinserti128 $1, %xmm6, %ymm0, %ymm61272; AVX2-NEXT:    vpalignr {{.*#+}} ymm7 = ymm4[12,13,14,15],ymm5[0,1,2,3,4,5,6,7,8,9,10,11],ymm4[28,29,30,31],ymm5[16,17,18,19,20,21,22,23,24,25,26,27]1273; AVX2-NEXT:    vpermq {{.*#+}} ymm7 = ymm7[0,1,2,0]1274; AVX2-NEXT:    vpblendd {{.*#+}} ymm6 = ymm7[0,1,2,3,4,5,6],ymm6[7]1275; AVX2-NEXT:    vpblendd {{.*#+}} ymm7 = ymm10[0,1],ymm9[2,3],ymm10[4,5],ymm9[6,7]1276; AVX2-NEXT:    vpblendd {{.*#+}} ymm8 = ymm1[0],ymm0[1],ymm1[2,3,4],ymm0[5],ymm1[6,7]1277; AVX2-NEXT:    vpblendd {{.*#+}} ymm7 = ymm8[0,1,2,3,4],ymm7[5,6],ymm8[7]1278; AVX2-NEXT:    vpmovsxbd {{.*#+}} ymm11 = [1,0,7,6,5,0,0,0]1279; AVX2-NEXT:    vpermd %ymm7, %ymm11, %ymm71280; AVX2-NEXT:    vpblendd {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6,7]1281; AVX2-NEXT:    vmovdqa 80(%rdi), %xmm71282; AVX2-NEXT:    vpalignr {{.*#+}} ymm11 = ymm10[8,9,10,11,12,13,14,15],ymm9[0,1,2,3,4,5,6,7],ymm10[24,25,26,27,28,29,30,31],ymm9[16,17,18,19,20,21,22,23]1283; AVX2-NEXT:    vpblendd {{.*#+}} ymm7 = ymm11[0,1,2],ymm7[3],ymm11[4,5,6,7]1284; AVX2-NEXT:    vpbroadcastd 8(%rdi), %xmm111285; AVX2-NEXT:    vmovdqa 32(%rdi), %xmm121286; AVX2-NEXT:    vpblendd {{.*#+}} xmm11 = xmm11[0],xmm12[1],xmm11[2,3]1287; AVX2-NEXT:    vpblendd {{.*#+}} ymm7 = ymm11[0,1],ymm7[2,3,4,5,6,7]1288; AVX2-NEXT:    vpunpcklqdq {{.*#+}} ymm11 = ymm5[0],ymm4[0],ymm5[2],ymm4[2]1289; AVX2-NEXT:    vpbroadcastd 204(%rdi), %ymm131290; AVX2-NEXT:    vpblendd {{.*#+}} ymm11 = ymm11[0,1,2,3,4,5,6],ymm13[7]1291; AVX2-NEXT:    vpblendd {{.*#+}} ymm7 = ymm7[0,1,2,3,4],ymm11[5,6,7]1292; AVX2-NEXT:    vpblendd {{.*#+}} xmm11 = xmm12[0,1,2],mem[3]1293; AVX2-NEXT:    vpshufd {{.*#+}} xmm11 = xmm11[3,2,2,3]1294; AVX2-NEXT:    vpblendd {{.*#+}} ymm9 = ymm10[0],ymm9[1],ymm10[2,3,4,5,6,7]1295; AVX2-NEXT:    vpshufd {{.*#+}} ymm9 = ymm9[3,1,1,0,7,5,5,4]1296; AVX2-NEXT:    vpblendd {{.*#+}} ymm9 = ymm11[0,1],ymm9[2,3,4,5,6,7]1297; AVX2-NEXT:    vshufps {{.*#+}} ymm10 = ymm5[0,2],ymm4[1,3],ymm5[4,6],ymm4[5,7]1298; AVX2-NEXT:    vbroadcastss 208(%rdi), %ymm111299; AVX2-NEXT:    vblendps {{.*#+}} ymm10 = ymm10[0,1,2,3,4,5,6],ymm11[7]1300; AVX2-NEXT:    vpblendd {{.*#+}} ymm9 = ymm9[0,1,2,3,4],ymm10[5,6,7]1301; AVX2-NEXT:    vpbroadcastd 100(%rdi), %xmm101302; AVX2-NEXT:    vmovdqa 64(%rdi), %xmm111303; AVX2-NEXT:    vpblendd {{.*#+}} xmm10 = xmm11[0,1,2],xmm10[3]1304; AVX2-NEXT:    vpmovsxbd {{.*#+}} xmm12 = [4,3,0,0]1305; AVX2-NEXT:    vpblendd {{.*#+}} ymm13 = ymm1[0,1,2,3],ymm0[4,5,6,7]1306; AVX2-NEXT:    vpermd %ymm13, %ymm12, %ymm121307; AVX2-NEXT:    vpblendd {{.*#+}} xmm10 = xmm12[0,1],xmm10[2,3]1308; AVX2-NEXT:    vpbroadcastq {{.*#+}} ymm12 = [0,7,0,7,0,7,0,7]1309; AVX2-NEXT:    vpermd %ymm5, %ymm12, %ymm131310; AVX2-NEXT:    vpblendd {{.*#+}} ymm13 = ymm13[0,1,2,3,4,5],ymm4[6,7]1311; AVX2-NEXT:    vpbroadcastd 212(%rdi), %ymm141312; AVX2-NEXT:    vpblendd {{.*#+}} ymm13 = ymm13[0,1,2,3,4,5,6],ymm14[7]1313; AVX2-NEXT:    vpblendd {{.*#+}} ymm10 = ymm10[0,1,2,3],ymm13[4,5,6,7]1314; AVX2-NEXT:    vpblendd {{.*#+}} ymm4 = ymm4[0],ymm5[1],ymm4[2,3,4],ymm5[5],ymm4[6,7]1315; AVX2-NEXT:    vpshufd {{.*#+}} ymm4 = ymm4[1,0,3,3,5,4,7,7]1316; AVX2-NEXT:    vpermq {{.*#+}} ymm4 = ymm4[0,1,0,3]1317; AVX2-NEXT:    vpbroadcastd 216(%rdi), %ymm51318; AVX2-NEXT:    vpblendd {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm5[7]1319; AVX2-NEXT:    vmovdqa 96(%rdi), %xmm51320; AVX2-NEXT:    vpblendd {{.*#+}} xmm11 = xmm5[0,1,2],xmm11[3]1321; AVX2-NEXT:    vpshufd {{.*#+}} xmm11 = xmm11[0,1,3,2]1322; AVX2-NEXT:    vpshufd {{.*#+}} ymm8 = ymm8[1,0,2,3,5,4,6,7]1323; AVX2-NEXT:    vextracti128 $1, %ymm8, %xmm81324; AVX2-NEXT:    vpblendd {{.*#+}} xmm8 = xmm8[0,1],xmm11[2,3]1325; AVX2-NEXT:    vpblendd {{.*#+}} ymm4 = ymm8[0,1,2,3],ymm4[4,5,6,7]1326; AVX2-NEXT:    vpermd 192(%rdi), %ymm12, %ymm81327; AVX2-NEXT:    vpbroadcastd 136(%rdi), %xmm111328; AVX2-NEXT:    vpblendd {{.*#+}} xmm3 = xmm11[0],xmm3[1],xmm11[2,3]1329; AVX2-NEXT:    vinserti128 $1, %xmm3, %ymm0, %ymm31330; AVX2-NEXT:    vpblendd {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5],ymm8[6,7]1331; AVX2-NEXT:    vpbroadcastd 80(%rdi), %ymm81332; AVX2-NEXT:    vpblendd {{.*#+}} xmm5 = xmm8[0,1,2],xmm5[3]1333; AVX2-NEXT:    vpshufd {{.*#+}} ymm0 = ymm0[2,3,2,3,6,7,6,7]1334; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0],ymm1[1],ymm0[2,3,4],ymm1[5],ymm0[6,7]1335; AVX2-NEXT:    vextracti128 $1, %ymm0, %xmm01336; AVX2-NEXT:    vpblendd {{.*#+}} xmm0 = xmm0[0,1],xmm5[2,3]1337; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm3[4,5,6,7]1338; AVX2-NEXT:    vmovdqa %ymm2, (%rsi)1339; AVX2-NEXT:    vmovdqa %ymm6, (%rdx)1340; AVX2-NEXT:    vmovdqa %ymm7, (%rcx)1341; AVX2-NEXT:    vmovdqa %ymm9, (%r8)1342; AVX2-NEXT:    vmovdqa %ymm10, (%r9)1343; AVX2-NEXT:    vmovdqa %ymm4, (%r10)1344; AVX2-NEXT:    vmovdqa %ymm0, (%rax)1345; AVX2-NEXT:    vzeroupper1346; AVX2-NEXT:    retq1347;1348; AVX2-FP-LABEL: load_i32_stride7_vf8:1349; AVX2-FP:       # %bb.0:1350; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %rax1351; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %r101352; AVX2-FP-NEXT:    vmovdqa 64(%rdi), %ymm91353; AVX2-FP-NEXT:    vmovdqa 160(%rdi), %ymm41354; AVX2-FP-NEXT:    vmovdqa 128(%rdi), %ymm51355; AVX2-FP-NEXT:    vmovdqa (%rdi), %ymm01356; AVX2-FP-NEXT:    vmovdqa 32(%rdi), %ymm11357; AVX2-FP-NEXT:    vmovdqa 96(%rdi), %ymm101358; AVX2-FP-NEXT:    vpbroadcastq 80(%rdi), %ymm21359; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm10[4,5,6,7]1360; AVX2-FP-NEXT:    vpmovsxbd {{.*#+}} xmm3 = [0,7,6,0]1361; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm6 = ymm0[0,1,2,3,4,5],ymm1[6],ymm0[7]1362; AVX2-FP-NEXT:    vpermd %ymm6, %ymm3, %ymm31363; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm3[0,1,2],ymm2[3,4,5,6,7]1364; AVX2-FP-NEXT:    vmovdqa 128(%rdi), %xmm61365; AVX2-FP-NEXT:    vmovdqa 160(%rdi), %xmm31366; AVX2-FP-NEXT:    vpunpckhqdq {{.*#+}} xmm6 = xmm6[1],xmm3[1]1367; AVX2-FP-NEXT:    vinserti128 $1, %xmm6, %ymm0, %ymm61368; AVX2-FP-NEXT:    vpbroadcastd 196(%rdi), %ymm71369; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm6 = ymm6[0,1,2,3,4,5,6],ymm7[7]1370; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm6[5,6,7]1371; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm6 = mem[2,2,2,2]1372; AVX2-FP-NEXT:    vinserti128 $1, %xmm6, %ymm0, %ymm61373; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm7 = ymm4[12,13,14,15],ymm5[0,1,2,3,4,5,6,7,8,9,10,11],ymm4[28,29,30,31],ymm5[16,17,18,19,20,21,22,23,24,25,26,27]1374; AVX2-FP-NEXT:    vpermq {{.*#+}} ymm7 = ymm7[0,1,2,0]1375; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm6 = ymm7[0,1,2,3,4,5,6],ymm6[7]1376; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm7 = ymm10[0,1],ymm9[2,3],ymm10[4,5],ymm9[6,7]1377; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm8 = ymm1[0],ymm0[1],ymm1[2,3,4],ymm0[5],ymm1[6,7]1378; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm7 = ymm8[0,1,2,3,4],ymm7[5,6],ymm8[7]1379; AVX2-FP-NEXT:    vpmovsxbd {{.*#+}} ymm11 = [1,0,7,6,5,0,0,0]1380; AVX2-FP-NEXT:    vpermd %ymm7, %ymm11, %ymm71381; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6,7]1382; AVX2-FP-NEXT:    vmovdqa 80(%rdi), %xmm71383; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm11 = ymm10[8,9,10,11,12,13,14,15],ymm9[0,1,2,3,4,5,6,7],ymm10[24,25,26,27,28,29,30,31],ymm9[16,17,18,19,20,21,22,23]1384; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm7 = ymm11[0,1,2],ymm7[3],ymm11[4,5,6,7]1385; AVX2-FP-NEXT:    vpbroadcastd 8(%rdi), %xmm111386; AVX2-FP-NEXT:    vmovdqa 32(%rdi), %xmm121387; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm11 = xmm11[0],xmm12[1],xmm11[2,3]1388; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm7 = ymm11[0,1],ymm7[2,3,4,5,6,7]1389; AVX2-FP-NEXT:    vpunpcklqdq {{.*#+}} ymm11 = ymm5[0],ymm4[0],ymm5[2],ymm4[2]1390; AVX2-FP-NEXT:    vpbroadcastd 204(%rdi), %ymm131391; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm11 = ymm11[0,1,2,3,4,5,6],ymm13[7]1392; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm7 = ymm7[0,1,2,3,4],ymm11[5,6,7]1393; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm11 = xmm12[0,1,2],mem[3]1394; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm11 = xmm11[3,2,2,3]1395; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm9 = ymm10[0],ymm9[1],ymm10[2,3,4,5,6,7]1396; AVX2-FP-NEXT:    vpshufd {{.*#+}} ymm9 = ymm9[3,1,1,0,7,5,5,4]1397; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm9 = ymm11[0,1],ymm9[2,3,4,5,6,7]1398; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm10 = ymm5[0,2],ymm4[1,3],ymm5[4,6],ymm4[5,7]1399; AVX2-FP-NEXT:    vbroadcastss 208(%rdi), %ymm111400; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm10 = ymm10[0,1,2,3,4,5,6],ymm11[7]1401; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm9 = ymm9[0,1,2,3,4],ymm10[5,6,7]1402; AVX2-FP-NEXT:    vpbroadcastd 100(%rdi), %xmm101403; AVX2-FP-NEXT:    vmovdqa 64(%rdi), %xmm111404; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm10 = xmm11[0,1,2],xmm10[3]1405; AVX2-FP-NEXT:    vpmovsxbd {{.*#+}} xmm12 = [4,3,0,0]1406; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm13 = ymm1[0,1,2,3],ymm0[4,5,6,7]1407; AVX2-FP-NEXT:    vpermd %ymm13, %ymm12, %ymm121408; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm10 = xmm12[0,1],xmm10[2,3]1409; AVX2-FP-NEXT:    vpbroadcastq {{.*#+}} ymm12 = [0,7,0,7,0,7,0,7]1410; AVX2-FP-NEXT:    vpermd %ymm5, %ymm12, %ymm131411; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm13 = ymm13[0,1,2,3,4,5],ymm4[6,7]1412; AVX2-FP-NEXT:    vpbroadcastd 212(%rdi), %ymm141413; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm13 = ymm13[0,1,2,3,4,5,6],ymm14[7]1414; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm10 = ymm10[0,1,2,3],ymm13[4,5,6,7]1415; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm4[0],ymm5[1],ymm4[2,3,4],ymm5[5],ymm4[6,7]1416; AVX2-FP-NEXT:    vpshufd {{.*#+}} ymm4 = ymm4[1,0,3,3,5,4,7,7]1417; AVX2-FP-NEXT:    vpermq {{.*#+}} ymm4 = ymm4[0,1,0,3]1418; AVX2-FP-NEXT:    vpbroadcastd 216(%rdi), %ymm51419; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm5[7]1420; AVX2-FP-NEXT:    vmovdqa 96(%rdi), %xmm51421; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm11 = xmm5[0,1,2],xmm11[3]1422; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm11 = xmm11[0,1,3,2]1423; AVX2-FP-NEXT:    vpshufd {{.*#+}} ymm8 = ymm8[1,0,2,3,5,4,6,7]1424; AVX2-FP-NEXT:    vextracti128 $1, %ymm8, %xmm81425; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm8 = xmm8[0,1],xmm11[2,3]1426; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm8[0,1,2,3],ymm4[4,5,6,7]1427; AVX2-FP-NEXT:    vpermd 192(%rdi), %ymm12, %ymm81428; AVX2-FP-NEXT:    vpbroadcastd 136(%rdi), %xmm111429; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm3 = xmm11[0],xmm3[1],xmm11[2,3]1430; AVX2-FP-NEXT:    vinserti128 $1, %xmm3, %ymm0, %ymm31431; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5],ymm8[6,7]1432; AVX2-FP-NEXT:    vpbroadcastd 80(%rdi), %ymm81433; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm5 = xmm8[0,1,2],xmm5[3]1434; AVX2-FP-NEXT:    vpshufd {{.*#+}} ymm0 = ymm0[2,3,2,3,6,7,6,7]1435; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0],ymm1[1],ymm0[2,3,4],ymm1[5],ymm0[6,7]1436; AVX2-FP-NEXT:    vextracti128 $1, %ymm0, %xmm01437; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm0 = xmm0[0,1],xmm5[2,3]1438; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm3[4,5,6,7]1439; AVX2-FP-NEXT:    vmovdqa %ymm2, (%rsi)1440; AVX2-FP-NEXT:    vmovdqa %ymm6, (%rdx)1441; AVX2-FP-NEXT:    vmovdqa %ymm7, (%rcx)1442; AVX2-FP-NEXT:    vmovdqa %ymm9, (%r8)1443; AVX2-FP-NEXT:    vmovdqa %ymm10, (%r9)1444; AVX2-FP-NEXT:    vmovdqa %ymm4, (%r10)1445; AVX2-FP-NEXT:    vmovdqa %ymm0, (%rax)1446; AVX2-FP-NEXT:    vzeroupper1447; AVX2-FP-NEXT:    retq1448;1449; AVX2-FCP-LABEL: load_i32_stride7_vf8:1450; AVX2-FCP:       # %bb.0:1451; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax1452; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r101453; AVX2-FCP-NEXT:    vmovdqa 64(%rdi), %ymm91454; AVX2-FCP-NEXT:    vmovdqa 160(%rdi), %ymm41455; AVX2-FCP-NEXT:    vmovdqa 128(%rdi), %ymm51456; AVX2-FCP-NEXT:    vmovdqa (%rdi), %ymm01457; AVX2-FCP-NEXT:    vmovdqa 32(%rdi), %ymm11458; AVX2-FCP-NEXT:    vmovdqa 96(%rdi), %ymm101459; AVX2-FCP-NEXT:    vpbroadcastq 80(%rdi), %ymm21460; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm10[4,5,6,7]1461; AVX2-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm3 = [0,7,6,0]1462; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm6 = ymm0[0,1,2,3,4,5],ymm1[6],ymm0[7]1463; AVX2-FCP-NEXT:    vpermd %ymm6, %ymm3, %ymm31464; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm3[0,1,2],ymm2[3,4,5,6,7]1465; AVX2-FCP-NEXT:    vmovdqa 128(%rdi), %xmm61466; AVX2-FCP-NEXT:    vmovdqa 160(%rdi), %xmm31467; AVX2-FCP-NEXT:    vpunpckhqdq {{.*#+}} xmm6 = xmm6[1],xmm3[1]1468; AVX2-FCP-NEXT:    vinserti128 $1, %xmm6, %ymm0, %ymm61469; AVX2-FCP-NEXT:    vpbroadcastd 196(%rdi), %ymm71470; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm6 = ymm6[0,1,2,3,4,5,6],ymm7[7]1471; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm6[5,6,7]1472; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm6 = mem[2,2,2,2]1473; AVX2-FCP-NEXT:    vinserti128 $1, %xmm6, %ymm0, %ymm61474; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm7 = ymm4[12,13,14,15],ymm5[0,1,2,3,4,5,6,7,8,9,10,11],ymm4[28,29,30,31],ymm5[16,17,18,19,20,21,22,23,24,25,26,27]1475; AVX2-FCP-NEXT:    vpermq {{.*#+}} ymm7 = ymm7[0,1,2,0]1476; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm6 = ymm7[0,1,2,3,4,5,6],ymm6[7]1477; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm7 = ymm10[0,1],ymm9[2,3],ymm10[4,5],ymm9[6,7]1478; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm8 = ymm1[0],ymm0[1],ymm1[2,3,4],ymm0[5],ymm1[6,7]1479; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm7 = ymm8[0,1,2,3,4],ymm7[5,6],ymm8[7]1480; AVX2-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm11 = [1,0,7,6,5,0,0,0]1481; AVX2-FCP-NEXT:    vpermd %ymm7, %ymm11, %ymm71482; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6,7]1483; AVX2-FCP-NEXT:    vmovdqa 80(%rdi), %xmm71484; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm11 = ymm10[8,9,10,11,12,13,14,15],ymm9[0,1,2,3,4,5,6,7],ymm10[24,25,26,27,28,29,30,31],ymm9[16,17,18,19,20,21,22,23]1485; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm7 = ymm11[0,1,2],ymm7[3],ymm11[4,5,6,7]1486; AVX2-FCP-NEXT:    vpbroadcastd 8(%rdi), %xmm111487; AVX2-FCP-NEXT:    vmovdqa 32(%rdi), %xmm121488; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm11 = xmm11[0],xmm12[1],xmm11[2,3]1489; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm7 = ymm11[0,1],ymm7[2,3,4,5,6,7]1490; AVX2-FCP-NEXT:    vpunpcklqdq {{.*#+}} ymm11 = ymm5[0],ymm4[0],ymm5[2],ymm4[2]1491; AVX2-FCP-NEXT:    vpbroadcastd 204(%rdi), %ymm131492; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm11 = ymm11[0,1,2,3,4,5,6],ymm13[7]1493; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm7 = ymm7[0,1,2,3,4],ymm11[5,6,7]1494; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm11 = xmm12[0,1,2],mem[3]1495; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm11 = xmm11[3,2,2,3]1496; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm9 = ymm10[0],ymm9[1],ymm10[2,3,4,5,6,7]1497; AVX2-FCP-NEXT:    vpshufd {{.*#+}} ymm9 = ymm9[3,1,1,0,7,5,5,4]1498; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm9 = ymm11[0,1],ymm9[2,3,4,5,6,7]1499; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm10 = ymm5[0,2],ymm4[1,3],ymm5[4,6],ymm4[5,7]1500; AVX2-FCP-NEXT:    vbroadcastss 208(%rdi), %ymm111501; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm10 = ymm10[0,1,2,3,4,5,6],ymm11[7]1502; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm9 = ymm9[0,1,2,3,4],ymm10[5,6,7]1503; AVX2-FCP-NEXT:    vpbroadcastd 100(%rdi), %xmm101504; AVX2-FCP-NEXT:    vmovdqa 64(%rdi), %xmm111505; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm10 = xmm11[0,1,2],xmm10[3]1506; AVX2-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm12 = [4,3,0,0]1507; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm13 = ymm1[0,1,2,3],ymm0[4,5,6,7]1508; AVX2-FCP-NEXT:    vpermd %ymm13, %ymm12, %ymm121509; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm10 = xmm12[0,1],xmm10[2,3]1510; AVX2-FCP-NEXT:    vpbroadcastq {{.*#+}} ymm12 = [0,7,0,7,0,7,0,7]1511; AVX2-FCP-NEXT:    vpermd %ymm5, %ymm12, %ymm131512; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm13 = ymm13[0,1,2,3,4,5],ymm4[6,7]1513; AVX2-FCP-NEXT:    vpbroadcastd 212(%rdi), %ymm141514; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm13 = ymm13[0,1,2,3,4,5,6],ymm14[7]1515; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm10 = ymm10[0,1,2,3],ymm13[4,5,6,7]1516; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm4[0],ymm5[1],ymm4[2,3,4],ymm5[5],ymm4[6,7]1517; AVX2-FCP-NEXT:    vpmovsxbq {{.*#+}} ymm5 = [0,0,1,7]1518; AVX2-FCP-NEXT:    vpermd %ymm4, %ymm5, %ymm41519; AVX2-FCP-NEXT:    vpbroadcastd 216(%rdi), %ymm51520; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm5[7]1521; AVX2-FCP-NEXT:    vmovdqa 96(%rdi), %xmm51522; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm11 = xmm5[0,1,2],xmm11[3]1523; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm11 = xmm11[0,1,3,2]1524; AVX2-FCP-NEXT:    vpshufd {{.*#+}} ymm8 = ymm8[1,0,2,3,5,4,6,7]1525; AVX2-FCP-NEXT:    vextracti128 $1, %ymm8, %xmm81526; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm8 = xmm8[0,1],xmm11[2,3]1527; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm8[0,1,2,3],ymm4[4,5,6,7]1528; AVX2-FCP-NEXT:    vpermd 192(%rdi), %ymm12, %ymm81529; AVX2-FCP-NEXT:    vpbroadcastd 136(%rdi), %xmm111530; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm3 = xmm11[0],xmm3[1],xmm11[2,3]1531; AVX2-FCP-NEXT:    vinserti128 $1, %xmm3, %ymm0, %ymm31532; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5],ymm8[6,7]1533; AVX2-FCP-NEXT:    vpbroadcastd 80(%rdi), %ymm81534; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm5 = xmm8[0,1,2],xmm5[3]1535; AVX2-FCP-NEXT:    vpshufd {{.*#+}} ymm0 = ymm0[2,3,2,3,6,7,6,7]1536; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0],ymm1[1],ymm0[2,3,4],ymm1[5],ymm0[6,7]1537; AVX2-FCP-NEXT:    vextracti128 $1, %ymm0, %xmm01538; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm0 = xmm0[0,1],xmm5[2,3]1539; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm3[4,5,6,7]1540; AVX2-FCP-NEXT:    vmovdqa %ymm2, (%rsi)1541; AVX2-FCP-NEXT:    vmovdqa %ymm6, (%rdx)1542; AVX2-FCP-NEXT:    vmovdqa %ymm7, (%rcx)1543; AVX2-FCP-NEXT:    vmovdqa %ymm9, (%r8)1544; AVX2-FCP-NEXT:    vmovdqa %ymm10, (%r9)1545; AVX2-FCP-NEXT:    vmovdqa %ymm4, (%r10)1546; AVX2-FCP-NEXT:    vmovdqa %ymm0, (%rax)1547; AVX2-FCP-NEXT:    vzeroupper1548; AVX2-FCP-NEXT:    retq1549;1550; AVX512-LABEL: load_i32_stride7_vf8:1551; AVX512:       # %bb.0:1552; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %rax1553; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %r101554; AVX512-NEXT:    vmovdqa64 (%rdi), %zmm01555; AVX512-NEXT:    vmovdqa64 64(%rdi), %zmm11556; AVX512-NEXT:    vmovdqa64 128(%rdi), %zmm21557; AVX512-NEXT:    vmovdqa64 192(%rdi), %zmm31558; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm4 = [0,0,0,0,0,3,10,17]1559; AVX512-NEXT:    vpermi2d %zmm3, %zmm2, %zmm41560; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm5 = [0,7,14,21,28,0,0,0]1561; AVX512-NEXT:    vpermi2d %zmm1, %zmm0, %zmm51562; AVX512-NEXT:    vpblendd {{.*#+}} ymm4 = ymm5[0,1,2,3,4],ymm4[5,6,7]1563; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm5 = [0,0,0,0,0,4,11,18]1564; AVX512-NEXT:    vpermi2d %zmm3, %zmm2, %zmm51565; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm6 = [1,8,15,22,29,0,0,0]1566; AVX512-NEXT:    vpermi2d %zmm1, %zmm0, %zmm61567; AVX512-NEXT:    vpblendd {{.*#+}} ymm5 = ymm6[0,1,2,3,4],ymm5[5,6,7]1568; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm6 = [0,0,0,0,0,5,12,19]1569; AVX512-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61570; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [18,25,0,7,14,0,0,0]1571; AVX512-NEXT:    vpermi2d %zmm0, %zmm1, %zmm71572; AVX512-NEXT:    vpblendd {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6,7]1573; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [0,0,0,0,0,6,13,20]1574; AVX512-NEXT:    vpermi2d %zmm3, %zmm2, %zmm71575; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm8 = [19,26,1,8,15,0,0,0]1576; AVX512-NEXT:    vpermi2d %zmm0, %zmm1, %zmm81577; AVX512-NEXT:    vpblendd {{.*#+}} ymm7 = ymm8[0,1,2,3,4],ymm7[5,6,7]1578; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm8 = [0,0,0,0,0,7,14,21]1579; AVX512-NEXT:    vpermi2d %zmm3, %zmm2, %zmm81580; AVX512-NEXT:    vpmovsxbd {{.*#+}} xmm9 = [4,11,18,25]1581; AVX512-NEXT:    vpermi2d %zmm1, %zmm0, %zmm91582; AVX512-NEXT:    vpblendd {{.*#+}} ymm8 = ymm9[0,1,2,3],ymm8[4,5,6,7]1583; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm9 = [0,0,0,0,1,8,15,22]1584; AVX512-NEXT:    vpermi2d %zmm3, %zmm2, %zmm91585; AVX512-NEXT:    vpmovsxbd {{.*#+}} xmm10 = [5,12,19,26]1586; AVX512-NEXT:    vpermi2d %zmm1, %zmm0, %zmm101587; AVX512-NEXT:    vpblendd {{.*#+}} ymm9 = ymm10[0,1,2,3],ymm9[4,5,6,7]1588; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm10 = [0,0,0,0,2,9,16,23]1589; AVX512-NEXT:    vpermi2d %zmm3, %zmm2, %zmm101590; AVX512-NEXT:    vpmovsxbd {{.*#+}} xmm2 = [6,13,20,27]1591; AVX512-NEXT:    vpermi2d %zmm1, %zmm0, %zmm21592; AVX512-NEXT:    vpblendd {{.*#+}} ymm0 = ymm2[0,1,2,3],ymm10[4,5,6,7]1593; AVX512-NEXT:    vmovdqa %ymm4, (%rsi)1594; AVX512-NEXT:    vmovdqa %ymm5, (%rdx)1595; AVX512-NEXT:    vmovdqa %ymm6, (%rcx)1596; AVX512-NEXT:    vmovdqa %ymm7, (%r8)1597; AVX512-NEXT:    vmovdqa %ymm8, (%r9)1598; AVX512-NEXT:    vmovdqa %ymm9, (%r10)1599; AVX512-NEXT:    vmovdqa %ymm0, (%rax)1600; AVX512-NEXT:    vzeroupper1601; AVX512-NEXT:    retq1602;1603; AVX512-FCP-LABEL: load_i32_stride7_vf8:1604; AVX512-FCP:       # %bb.0:1605; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax1606; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r101607; AVX512-FCP-NEXT:    vmovdqa64 (%rdi), %zmm01608; AVX512-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm11609; AVX512-FCP-NEXT:    vmovdqa64 128(%rdi), %zmm21610; AVX512-FCP-NEXT:    vmovdqa64 192(%rdi), %zmm31611; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm4 = [0,0,0,0,0,3,10,17]1612; AVX512-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm41613; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm5 = [0,7,14,21,28,0,0,0]1614; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm51615; AVX512-FCP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm5[0,1,2,3,4],ymm4[5,6,7]1616; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm5 = [0,0,0,0,0,4,11,18]1617; AVX512-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm51618; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm6 = [1,8,15,22,29,0,0,0]1619; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm61620; AVX512-FCP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm6[0,1,2,3,4],ymm5[5,6,7]1621; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm6 = [0,0,0,0,0,5,12,19]1622; AVX512-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61623; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [18,25,0,7,14,0,0,0]1624; AVX512-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm71625; AVX512-FCP-NEXT:    vpblendd {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6,7]1626; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [0,0,0,0,0,6,13,20]1627; AVX512-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm71628; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm8 = [19,26,1,8,15,0,0,0]1629; AVX512-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm81630; AVX512-FCP-NEXT:    vpblendd {{.*#+}} ymm7 = ymm8[0,1,2,3,4],ymm7[5,6,7]1631; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm8 = [0,0,0,0,0,7,14,21]1632; AVX512-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm81633; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm9 = [4,11,18,25]1634; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm91635; AVX512-FCP-NEXT:    vpblendd {{.*#+}} ymm8 = ymm9[0,1,2,3],ymm8[4,5,6,7]1636; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm9 = [0,0,0,0,1,8,15,22]1637; AVX512-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm91638; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm10 = [5,12,19,26]1639; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm101640; AVX512-FCP-NEXT:    vpblendd {{.*#+}} ymm9 = ymm10[0,1,2,3],ymm9[4,5,6,7]1641; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm10 = [0,0,0,0,2,9,16,23]1642; AVX512-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm101643; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm2 = [6,13,20,27]1644; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm21645; AVX512-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm2[0,1,2,3],ymm10[4,5,6,7]1646; AVX512-FCP-NEXT:    vmovdqa %ymm4, (%rsi)1647; AVX512-FCP-NEXT:    vmovdqa %ymm5, (%rdx)1648; AVX512-FCP-NEXT:    vmovdqa %ymm6, (%rcx)1649; AVX512-FCP-NEXT:    vmovdqa %ymm7, (%r8)1650; AVX512-FCP-NEXT:    vmovdqa %ymm8, (%r9)1651; AVX512-FCP-NEXT:    vmovdqa %ymm9, (%r10)1652; AVX512-FCP-NEXT:    vmovdqa %ymm0, (%rax)1653; AVX512-FCP-NEXT:    vzeroupper1654; AVX512-FCP-NEXT:    retq1655;1656; AVX512DQ-LABEL: load_i32_stride7_vf8:1657; AVX512DQ:       # %bb.0:1658; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %rax1659; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %r101660; AVX512DQ-NEXT:    vmovdqa64 (%rdi), %zmm01661; AVX512DQ-NEXT:    vmovdqa64 64(%rdi), %zmm11662; AVX512DQ-NEXT:    vmovdqa64 128(%rdi), %zmm21663; AVX512DQ-NEXT:    vmovdqa64 192(%rdi), %zmm31664; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm4 = [0,0,0,0,0,3,10,17]1665; AVX512DQ-NEXT:    vpermi2d %zmm3, %zmm2, %zmm41666; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm5 = [0,7,14,21,28,0,0,0]1667; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm0, %zmm51668; AVX512DQ-NEXT:    vpblendd {{.*#+}} ymm4 = ymm5[0,1,2,3,4],ymm4[5,6,7]1669; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm5 = [0,0,0,0,0,4,11,18]1670; AVX512DQ-NEXT:    vpermi2d %zmm3, %zmm2, %zmm51671; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm6 = [1,8,15,22,29,0,0,0]1672; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm0, %zmm61673; AVX512DQ-NEXT:    vpblendd {{.*#+}} ymm5 = ymm6[0,1,2,3,4],ymm5[5,6,7]1674; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm6 = [0,0,0,0,0,5,12,19]1675; AVX512DQ-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61676; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [18,25,0,7,14,0,0,0]1677; AVX512DQ-NEXT:    vpermi2d %zmm0, %zmm1, %zmm71678; AVX512DQ-NEXT:    vpblendd {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6,7]1679; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [0,0,0,0,0,6,13,20]1680; AVX512DQ-NEXT:    vpermi2d %zmm3, %zmm2, %zmm71681; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm8 = [19,26,1,8,15,0,0,0]1682; AVX512DQ-NEXT:    vpermi2d %zmm0, %zmm1, %zmm81683; AVX512DQ-NEXT:    vpblendd {{.*#+}} ymm7 = ymm8[0,1,2,3,4],ymm7[5,6,7]1684; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm8 = [0,0,0,0,0,7,14,21]1685; AVX512DQ-NEXT:    vpermi2d %zmm3, %zmm2, %zmm81686; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} xmm9 = [4,11,18,25]1687; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm0, %zmm91688; AVX512DQ-NEXT:    vpblendd {{.*#+}} ymm8 = ymm9[0,1,2,3],ymm8[4,5,6,7]1689; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm9 = [0,0,0,0,1,8,15,22]1690; AVX512DQ-NEXT:    vpermi2d %zmm3, %zmm2, %zmm91691; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} xmm10 = [5,12,19,26]1692; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm0, %zmm101693; AVX512DQ-NEXT:    vpblendd {{.*#+}} ymm9 = ymm10[0,1,2,3],ymm9[4,5,6,7]1694; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm10 = [0,0,0,0,2,9,16,23]1695; AVX512DQ-NEXT:    vpermi2d %zmm3, %zmm2, %zmm101696; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} xmm2 = [6,13,20,27]1697; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm0, %zmm21698; AVX512DQ-NEXT:    vpblendd {{.*#+}} ymm0 = ymm2[0,1,2,3],ymm10[4,5,6,7]1699; AVX512DQ-NEXT:    vmovdqa %ymm4, (%rsi)1700; AVX512DQ-NEXT:    vmovdqa %ymm5, (%rdx)1701; AVX512DQ-NEXT:    vmovdqa %ymm6, (%rcx)1702; AVX512DQ-NEXT:    vmovdqa %ymm7, (%r8)1703; AVX512DQ-NEXT:    vmovdqa %ymm8, (%r9)1704; AVX512DQ-NEXT:    vmovdqa %ymm9, (%r10)1705; AVX512DQ-NEXT:    vmovdqa %ymm0, (%rax)1706; AVX512DQ-NEXT:    vzeroupper1707; AVX512DQ-NEXT:    retq1708;1709; AVX512DQ-FCP-LABEL: load_i32_stride7_vf8:1710; AVX512DQ-FCP:       # %bb.0:1711; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax1712; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r101713; AVX512DQ-FCP-NEXT:    vmovdqa64 (%rdi), %zmm01714; AVX512DQ-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm11715; AVX512DQ-FCP-NEXT:    vmovdqa64 128(%rdi), %zmm21716; AVX512DQ-FCP-NEXT:    vmovdqa64 192(%rdi), %zmm31717; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm4 = [0,0,0,0,0,3,10,17]1718; AVX512DQ-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm41719; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm5 = [0,7,14,21,28,0,0,0]1720; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm51721; AVX512DQ-FCP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm5[0,1,2,3,4],ymm4[5,6,7]1722; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm5 = [0,0,0,0,0,4,11,18]1723; AVX512DQ-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm51724; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm6 = [1,8,15,22,29,0,0,0]1725; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm61726; AVX512DQ-FCP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm6[0,1,2,3,4],ymm5[5,6,7]1727; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm6 = [0,0,0,0,0,5,12,19]1728; AVX512DQ-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61729; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [18,25,0,7,14,0,0,0]1730; AVX512DQ-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm71731; AVX512DQ-FCP-NEXT:    vpblendd {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6,7]1732; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [0,0,0,0,0,6,13,20]1733; AVX512DQ-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm71734; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm8 = [19,26,1,8,15,0,0,0]1735; AVX512DQ-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm81736; AVX512DQ-FCP-NEXT:    vpblendd {{.*#+}} ymm7 = ymm8[0,1,2,3,4],ymm7[5,6,7]1737; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm8 = [0,0,0,0,0,7,14,21]1738; AVX512DQ-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm81739; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm9 = [4,11,18,25]1740; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm91741; AVX512DQ-FCP-NEXT:    vpblendd {{.*#+}} ymm8 = ymm9[0,1,2,3],ymm8[4,5,6,7]1742; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm9 = [0,0,0,0,1,8,15,22]1743; AVX512DQ-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm91744; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm10 = [5,12,19,26]1745; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm101746; AVX512DQ-FCP-NEXT:    vpblendd {{.*#+}} ymm9 = ymm10[0,1,2,3],ymm9[4,5,6,7]1747; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm10 = [0,0,0,0,2,9,16,23]1748; AVX512DQ-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm101749; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm2 = [6,13,20,27]1750; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm21751; AVX512DQ-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm2[0,1,2,3],ymm10[4,5,6,7]1752; AVX512DQ-FCP-NEXT:    vmovdqa %ymm4, (%rsi)1753; AVX512DQ-FCP-NEXT:    vmovdqa %ymm5, (%rdx)1754; AVX512DQ-FCP-NEXT:    vmovdqa %ymm6, (%rcx)1755; AVX512DQ-FCP-NEXT:    vmovdqa %ymm7, (%r8)1756; AVX512DQ-FCP-NEXT:    vmovdqa %ymm8, (%r9)1757; AVX512DQ-FCP-NEXT:    vmovdqa %ymm9, (%r10)1758; AVX512DQ-FCP-NEXT:    vmovdqa %ymm0, (%rax)1759; AVX512DQ-FCP-NEXT:    vzeroupper1760; AVX512DQ-FCP-NEXT:    retq1761;1762; AVX512BW-LABEL: load_i32_stride7_vf8:1763; AVX512BW:       # %bb.0:1764; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax1765; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %r101766; AVX512BW-NEXT:    vmovdqa64 (%rdi), %zmm01767; AVX512BW-NEXT:    vmovdqa64 64(%rdi), %zmm11768; AVX512BW-NEXT:    vmovdqa64 128(%rdi), %zmm21769; AVX512BW-NEXT:    vmovdqa64 192(%rdi), %zmm31770; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm4 = [0,0,0,0,0,3,10,17]1771; AVX512BW-NEXT:    vpermi2d %zmm3, %zmm2, %zmm41772; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm5 = [0,7,14,21,28,0,0,0]1773; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm51774; AVX512BW-NEXT:    vpblendd {{.*#+}} ymm4 = ymm5[0,1,2,3,4],ymm4[5,6,7]1775; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm5 = [0,0,0,0,0,4,11,18]1776; AVX512BW-NEXT:    vpermi2d %zmm3, %zmm2, %zmm51777; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm6 = [1,8,15,22,29,0,0,0]1778; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm61779; AVX512BW-NEXT:    vpblendd {{.*#+}} ymm5 = ymm6[0,1,2,3,4],ymm5[5,6,7]1780; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm6 = [0,0,0,0,0,5,12,19]1781; AVX512BW-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61782; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [18,25,0,7,14,0,0,0]1783; AVX512BW-NEXT:    vpermi2d %zmm0, %zmm1, %zmm71784; AVX512BW-NEXT:    vpblendd {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6,7]1785; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [0,0,0,0,0,6,13,20]1786; AVX512BW-NEXT:    vpermi2d %zmm3, %zmm2, %zmm71787; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm8 = [19,26,1,8,15,0,0,0]1788; AVX512BW-NEXT:    vpermi2d %zmm0, %zmm1, %zmm81789; AVX512BW-NEXT:    vpblendd {{.*#+}} ymm7 = ymm8[0,1,2,3,4],ymm7[5,6,7]1790; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm8 = [0,0,0,0,0,7,14,21]1791; AVX512BW-NEXT:    vpermi2d %zmm3, %zmm2, %zmm81792; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} xmm9 = [4,11,18,25]1793; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm91794; AVX512BW-NEXT:    vpblendd {{.*#+}} ymm8 = ymm9[0,1,2,3],ymm8[4,5,6,7]1795; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm9 = [0,0,0,0,1,8,15,22]1796; AVX512BW-NEXT:    vpermi2d %zmm3, %zmm2, %zmm91797; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} xmm10 = [5,12,19,26]1798; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm101799; AVX512BW-NEXT:    vpblendd {{.*#+}} ymm9 = ymm10[0,1,2,3],ymm9[4,5,6,7]1800; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm10 = [0,0,0,0,2,9,16,23]1801; AVX512BW-NEXT:    vpermi2d %zmm3, %zmm2, %zmm101802; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} xmm2 = [6,13,20,27]1803; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm21804; AVX512BW-NEXT:    vpblendd {{.*#+}} ymm0 = ymm2[0,1,2,3],ymm10[4,5,6,7]1805; AVX512BW-NEXT:    vmovdqa %ymm4, (%rsi)1806; AVX512BW-NEXT:    vmovdqa %ymm5, (%rdx)1807; AVX512BW-NEXT:    vmovdqa %ymm6, (%rcx)1808; AVX512BW-NEXT:    vmovdqa %ymm7, (%r8)1809; AVX512BW-NEXT:    vmovdqa %ymm8, (%r9)1810; AVX512BW-NEXT:    vmovdqa %ymm9, (%r10)1811; AVX512BW-NEXT:    vmovdqa %ymm0, (%rax)1812; AVX512BW-NEXT:    vzeroupper1813; AVX512BW-NEXT:    retq1814;1815; AVX512BW-FCP-LABEL: load_i32_stride7_vf8:1816; AVX512BW-FCP:       # %bb.0:1817; AVX512BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax1818; AVX512BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r101819; AVX512BW-FCP-NEXT:    vmovdqa64 (%rdi), %zmm01820; AVX512BW-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm11821; AVX512BW-FCP-NEXT:    vmovdqa64 128(%rdi), %zmm21822; AVX512BW-FCP-NEXT:    vmovdqa64 192(%rdi), %zmm31823; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm4 = [0,0,0,0,0,3,10,17]1824; AVX512BW-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm41825; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm5 = [0,7,14,21,28,0,0,0]1826; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm51827; AVX512BW-FCP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm5[0,1,2,3,4],ymm4[5,6,7]1828; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm5 = [0,0,0,0,0,4,11,18]1829; AVX512BW-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm51830; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm6 = [1,8,15,22,29,0,0,0]1831; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm61832; AVX512BW-FCP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm6[0,1,2,3,4],ymm5[5,6,7]1833; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm6 = [0,0,0,0,0,5,12,19]1834; AVX512BW-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61835; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [18,25,0,7,14,0,0,0]1836; AVX512BW-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm71837; AVX512BW-FCP-NEXT:    vpblendd {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6,7]1838; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [0,0,0,0,0,6,13,20]1839; AVX512BW-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm71840; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm8 = [19,26,1,8,15,0,0,0]1841; AVX512BW-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm81842; AVX512BW-FCP-NEXT:    vpblendd {{.*#+}} ymm7 = ymm8[0,1,2,3,4],ymm7[5,6,7]1843; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm8 = [0,0,0,0,0,7,14,21]1844; AVX512BW-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm81845; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm9 = [4,11,18,25]1846; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm91847; AVX512BW-FCP-NEXT:    vpblendd {{.*#+}} ymm8 = ymm9[0,1,2,3],ymm8[4,5,6,7]1848; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm9 = [0,0,0,0,1,8,15,22]1849; AVX512BW-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm91850; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm10 = [5,12,19,26]1851; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm101852; AVX512BW-FCP-NEXT:    vpblendd {{.*#+}} ymm9 = ymm10[0,1,2,3],ymm9[4,5,6,7]1853; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm10 = [0,0,0,0,2,9,16,23]1854; AVX512BW-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm101855; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm2 = [6,13,20,27]1856; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm21857; AVX512BW-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm2[0,1,2,3],ymm10[4,5,6,7]1858; AVX512BW-FCP-NEXT:    vmovdqa %ymm4, (%rsi)1859; AVX512BW-FCP-NEXT:    vmovdqa %ymm5, (%rdx)1860; AVX512BW-FCP-NEXT:    vmovdqa %ymm6, (%rcx)1861; AVX512BW-FCP-NEXT:    vmovdqa %ymm7, (%r8)1862; AVX512BW-FCP-NEXT:    vmovdqa %ymm8, (%r9)1863; AVX512BW-FCP-NEXT:    vmovdqa %ymm9, (%r10)1864; AVX512BW-FCP-NEXT:    vmovdqa %ymm0, (%rax)1865; AVX512BW-FCP-NEXT:    vzeroupper1866; AVX512BW-FCP-NEXT:    retq1867;1868; AVX512DQ-BW-LABEL: load_i32_stride7_vf8:1869; AVX512DQ-BW:       # %bb.0:1870; AVX512DQ-BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax1871; AVX512DQ-BW-NEXT:    movq {{[0-9]+}}(%rsp), %r101872; AVX512DQ-BW-NEXT:    vmovdqa64 (%rdi), %zmm01873; AVX512DQ-BW-NEXT:    vmovdqa64 64(%rdi), %zmm11874; AVX512DQ-BW-NEXT:    vmovdqa64 128(%rdi), %zmm21875; AVX512DQ-BW-NEXT:    vmovdqa64 192(%rdi), %zmm31876; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} ymm4 = [0,0,0,0,0,3,10,17]1877; AVX512DQ-BW-NEXT:    vpermi2d %zmm3, %zmm2, %zmm41878; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} ymm5 = [0,7,14,21,28,0,0,0]1879; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm51880; AVX512DQ-BW-NEXT:    vpblendd {{.*#+}} ymm4 = ymm5[0,1,2,3,4],ymm4[5,6,7]1881; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} ymm5 = [0,0,0,0,0,4,11,18]1882; AVX512DQ-BW-NEXT:    vpermi2d %zmm3, %zmm2, %zmm51883; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} ymm6 = [1,8,15,22,29,0,0,0]1884; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm61885; AVX512DQ-BW-NEXT:    vpblendd {{.*#+}} ymm5 = ymm6[0,1,2,3,4],ymm5[5,6,7]1886; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} ymm6 = [0,0,0,0,0,5,12,19]1887; AVX512DQ-BW-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61888; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [18,25,0,7,14,0,0,0]1889; AVX512DQ-BW-NEXT:    vpermi2d %zmm0, %zmm1, %zmm71890; AVX512DQ-BW-NEXT:    vpblendd {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6,7]1891; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [0,0,0,0,0,6,13,20]1892; AVX512DQ-BW-NEXT:    vpermi2d %zmm3, %zmm2, %zmm71893; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} ymm8 = [19,26,1,8,15,0,0,0]1894; AVX512DQ-BW-NEXT:    vpermi2d %zmm0, %zmm1, %zmm81895; AVX512DQ-BW-NEXT:    vpblendd {{.*#+}} ymm7 = ymm8[0,1,2,3,4],ymm7[5,6,7]1896; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} ymm8 = [0,0,0,0,0,7,14,21]1897; AVX512DQ-BW-NEXT:    vpermi2d %zmm3, %zmm2, %zmm81898; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} xmm9 = [4,11,18,25]1899; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm91900; AVX512DQ-BW-NEXT:    vpblendd {{.*#+}} ymm8 = ymm9[0,1,2,3],ymm8[4,5,6,7]1901; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} ymm9 = [0,0,0,0,1,8,15,22]1902; AVX512DQ-BW-NEXT:    vpermi2d %zmm3, %zmm2, %zmm91903; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} xmm10 = [5,12,19,26]1904; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm101905; AVX512DQ-BW-NEXT:    vpblendd {{.*#+}} ymm9 = ymm10[0,1,2,3],ymm9[4,5,6,7]1906; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} ymm10 = [0,0,0,0,2,9,16,23]1907; AVX512DQ-BW-NEXT:    vpermi2d %zmm3, %zmm2, %zmm101908; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} xmm2 = [6,13,20,27]1909; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm21910; AVX512DQ-BW-NEXT:    vpblendd {{.*#+}} ymm0 = ymm2[0,1,2,3],ymm10[4,5,6,7]1911; AVX512DQ-BW-NEXT:    vmovdqa %ymm4, (%rsi)1912; AVX512DQ-BW-NEXT:    vmovdqa %ymm5, (%rdx)1913; AVX512DQ-BW-NEXT:    vmovdqa %ymm6, (%rcx)1914; AVX512DQ-BW-NEXT:    vmovdqa %ymm7, (%r8)1915; AVX512DQ-BW-NEXT:    vmovdqa %ymm8, (%r9)1916; AVX512DQ-BW-NEXT:    vmovdqa %ymm9, (%r10)1917; AVX512DQ-BW-NEXT:    vmovdqa %ymm0, (%rax)1918; AVX512DQ-BW-NEXT:    vzeroupper1919; AVX512DQ-BW-NEXT:    retq1920;1921; AVX512DQ-BW-FCP-LABEL: load_i32_stride7_vf8:1922; AVX512DQ-BW-FCP:       # %bb.0:1923; AVX512DQ-BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax1924; AVX512DQ-BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r101925; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 (%rdi), %zmm01926; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm11927; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 128(%rdi), %zmm21928; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 192(%rdi), %zmm31929; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm4 = [0,0,0,0,0,3,10,17]1930; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm41931; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm5 = [0,7,14,21,28,0,0,0]1932; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm51933; AVX512DQ-BW-FCP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm5[0,1,2,3,4],ymm4[5,6,7]1934; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm5 = [0,0,0,0,0,4,11,18]1935; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm51936; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm6 = [1,8,15,22,29,0,0,0]1937; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm61938; AVX512DQ-BW-FCP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm6[0,1,2,3,4],ymm5[5,6,7]1939; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm6 = [0,0,0,0,0,5,12,19]1940; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61941; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [18,25,0,7,14,0,0,0]1942; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm71943; AVX512DQ-BW-FCP-NEXT:    vpblendd {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6,7]1944; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [0,0,0,0,0,6,13,20]1945; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm71946; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm8 = [19,26,1,8,15,0,0,0]1947; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm81948; AVX512DQ-BW-FCP-NEXT:    vpblendd {{.*#+}} ymm7 = ymm8[0,1,2,3,4],ymm7[5,6,7]1949; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm8 = [0,0,0,0,0,7,14,21]1950; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm81951; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm9 = [4,11,18,25]1952; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm91953; AVX512DQ-BW-FCP-NEXT:    vpblendd {{.*#+}} ymm8 = ymm9[0,1,2,3],ymm8[4,5,6,7]1954; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm9 = [0,0,0,0,1,8,15,22]1955; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm91956; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm10 = [5,12,19,26]1957; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm101958; AVX512DQ-BW-FCP-NEXT:    vpblendd {{.*#+}} ymm9 = ymm10[0,1,2,3],ymm9[4,5,6,7]1959; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm10 = [0,0,0,0,2,9,16,23]1960; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm101961; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm2 = [6,13,20,27]1962; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm21963; AVX512DQ-BW-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm2[0,1,2,3],ymm10[4,5,6,7]1964; AVX512DQ-BW-FCP-NEXT:    vmovdqa %ymm4, (%rsi)1965; AVX512DQ-BW-FCP-NEXT:    vmovdqa %ymm5, (%rdx)1966; AVX512DQ-BW-FCP-NEXT:    vmovdqa %ymm6, (%rcx)1967; AVX512DQ-BW-FCP-NEXT:    vmovdqa %ymm7, (%r8)1968; AVX512DQ-BW-FCP-NEXT:    vmovdqa %ymm8, (%r9)1969; AVX512DQ-BW-FCP-NEXT:    vmovdqa %ymm9, (%r10)1970; AVX512DQ-BW-FCP-NEXT:    vmovdqa %ymm0, (%rax)1971; AVX512DQ-BW-FCP-NEXT:    vzeroupper1972; AVX512DQ-BW-FCP-NEXT:    retq1973  %wide.vec = load <56 x i32>, ptr %in.vec, align 641974  %strided.vec0 = shufflevector <56 x i32> %wide.vec, <56 x i32> poison, <8 x i32> <i32 0, i32 7, i32 14, i32 21, i32 28, i32 35, i32 42, i32 49>1975  %strided.vec1 = shufflevector <56 x i32> %wide.vec, <56 x i32> poison, <8 x i32> <i32 1, i32 8, i32 15, i32 22, i32 29, i32 36, i32 43, i32 50>1976  %strided.vec2 = shufflevector <56 x i32> %wide.vec, <56 x i32> poison, <8 x i32> <i32 2, i32 9, i32 16, i32 23, i32 30, i32 37, i32 44, i32 51>1977  %strided.vec3 = shufflevector <56 x i32> %wide.vec, <56 x i32> poison, <8 x i32> <i32 3, i32 10, i32 17, i32 24, i32 31, i32 38, i32 45, i32 52>1978  %strided.vec4 = shufflevector <56 x i32> %wide.vec, <56 x i32> poison, <8 x i32> <i32 4, i32 11, i32 18, i32 25, i32 32, i32 39, i32 46, i32 53>1979  %strided.vec5 = shufflevector <56 x i32> %wide.vec, <56 x i32> poison, <8 x i32> <i32 5, i32 12, i32 19, i32 26, i32 33, i32 40, i32 47, i32 54>1980  %strided.vec6 = shufflevector <56 x i32> %wide.vec, <56 x i32> poison, <8 x i32> <i32 6, i32 13, i32 20, i32 27, i32 34, i32 41, i32 48, i32 55>1981  store <8 x i32> %strided.vec0, ptr %out.vec0, align 641982  store <8 x i32> %strided.vec1, ptr %out.vec1, align 641983  store <8 x i32> %strided.vec2, ptr %out.vec2, align 641984  store <8 x i32> %strided.vec3, ptr %out.vec3, align 641985  store <8 x i32> %strided.vec4, ptr %out.vec4, align 641986  store <8 x i32> %strided.vec5, ptr %out.vec5, align 641987  store <8 x i32> %strided.vec6, ptr %out.vec6, align 641988  ret void1989}1990 1991define void @load_i32_stride7_vf16(ptr %in.vec, ptr %out.vec0, ptr %out.vec1, ptr %out.vec2, ptr %out.vec3, ptr %out.vec4, ptr %out.vec5, ptr %out.vec6) nounwind {1992; SSE-LABEL: load_i32_stride7_vf16:1993; SSE:       # %bb.0:1994; SSE-NEXT:    subq $440, %rsp # imm = 0x1B81995; SSE-NEXT:    movdqa 304(%rdi), %xmm31996; SSE-NEXT:    movdqa 272(%rdi), %xmm51997; SSE-NEXT:    movdqa 224(%rdi), %xmm151998; SSE-NEXT:    movdqa 240(%rdi), %xmm61999; SSE-NEXT:    movdqa %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2000; SSE-NEXT:    movdqa 80(%rdi), %xmm72001; SSE-NEXT:    movdqa (%rdi), %xmm22002; SSE-NEXT:    movdqa 16(%rdi), %xmm82003; SSE-NEXT:    movdqa %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2004; SSE-NEXT:    movdqa 48(%rdi), %xmm92005; SSE-NEXT:    movdqa 192(%rdi), %xmm142006; SSE-NEXT:    movdqa 160(%rdi), %xmm122007; SSE-NEXT:    movdqa 112(%rdi), %xmm42008; SSE-NEXT:    movdqa 128(%rdi), %xmm02009; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2010; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[3,3,3,3]2011; SSE-NEXT:    movdqa %xmm4, %xmm12012; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]2013; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm12[2,2,3,3]2014; SSE-NEXT:    movdqa %xmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2015; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm14[0],xmm0[1],xmm14[1]2016; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]2017; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2018; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm8[3,3,3,3]2019; SSE-NEXT:    movdqa %xmm2, %xmm12020; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]2021; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm9[2,2,3,3]2022; SSE-NEXT:    movdqa %xmm9, %xmm112023; SSE-NEXT:    movdqa %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2024; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm7[0],xmm0[1],xmm7[1]2025; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]2026; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2027; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm6[3,3,3,3]2028; SSE-NEXT:    movdqa %xmm15, %xmm12029; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]2030; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm5[2,2,3,3]2031; SSE-NEXT:    movdqa %xmm5, %xmm92032; SSE-NEXT:    movdqa %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2033; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm3[0],xmm0[1],xmm3[1]2034; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]2035; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2036; SSE-NEXT:    movdqa 336(%rdi), %xmm12037; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2038; SSE-NEXT:    movdqa 352(%rdi), %xmm02039; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2040; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[3,3,3,3]2041; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]2042; SSE-NEXT:    movdqa 416(%rdi), %xmm82043; SSE-NEXT:    movdqa 384(%rdi), %xmm132044; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm13[2,2,3,3]2045; SSE-NEXT:    movdqa %xmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2046; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm8[0],xmm0[1],xmm8[1]2047; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]2048; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2049; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm14[2,2,2,2]2050; SSE-NEXT:    movdqa %xmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2051; SSE-NEXT:    movdqa %xmm12, %xmm12052; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]2053; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm4[1,1,1,1]2054; SSE-NEXT:    movdqa %xmm4, %xmm52055; SSE-NEXT:    movdqa 144(%rdi), %xmm42056; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm4[0],xmm0[1],xmm4[1]2057; SSE-NEXT:    movdqa %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2058; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]2059; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2060; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm7[2,2,2,2]2061; SSE-NEXT:    movdqa %xmm7, %xmm122062; SSE-NEXT:    movdqa %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2063; SSE-NEXT:    movdqa %xmm11, %xmm12064; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]2065; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm2[1,1,1,1]2066; SSE-NEXT:    movdqa %xmm2, %xmm102067; SSE-NEXT:    movdqa 32(%rdi), %xmm72068; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm7[0],xmm0[1],xmm7[1]2069; SSE-NEXT:    movdqa %xmm7, (%rsp) # 16-byte Spill2070; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]2071; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2072; SSE-NEXT:    movdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2073; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm3[2,2,2,2]2074; SSE-NEXT:    movdqa %xmm9, %xmm12075; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]2076; SSE-NEXT:    movdqa %xmm15, %xmm112077; SSE-NEXT:    movdqa %xmm15, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2078; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm15[1,1,1,1]2079; SSE-NEXT:    movdqa 256(%rdi), %xmm152080; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm15[0],xmm0[1],xmm15[1]2081; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]2082; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2083; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm8[2,2,2,2]2084; SSE-NEXT:    movdqa %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2085; SSE-NEXT:    movdqa %xmm13, %xmm12086; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]2087; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Reload2088; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm13[1,1,1,1]2089; SSE-NEXT:    movdqa 368(%rdi), %xmm22090; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1]2091; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]2092; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2093; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm5[2,3,2,3]2094; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm4[1,1,1,1]2095; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]2096; SSE-NEXT:    movdqa 176(%rdi), %xmm42097; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm14[2,3,2,3]2098; SSE-NEXT:    pshufd {{.*#+}} xmm9 = xmm4[0,0,1,1]2099; SSE-NEXT:    punpckldq {{.*#+}} xmm9 = xmm9[0],xmm1[0],xmm9[1],xmm1[1]2100; SSE-NEXT:    movsd {{.*#+}} xmm9 = xmm0[0],xmm9[1]2101; SSE-NEXT:    movapd %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2102; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm10[2,3,2,3]2103; SSE-NEXT:    movdqa %xmm10, %xmm142104; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm7[1,1,1,1]2105; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]2106; SSE-NEXT:    movdqa 64(%rdi), %xmm92107; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm12[2,3,2,3]2108; SSE-NEXT:    pshufd {{.*#+}} xmm6 = xmm9[0,0,1,1]2109; SSE-NEXT:    punpckldq {{.*#+}} xmm6 = xmm6[0],xmm1[0],xmm6[1],xmm1[1]2110; SSE-NEXT:    movsd {{.*#+}} xmm6 = xmm0[0],xmm6[1]2111; SSE-NEXT:    movapd %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2112; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm11[2,3,2,3]2113; SSE-NEXT:    movdqa %xmm15, %xmm122114; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm15[1,1,1,1]2115; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]2116; SSE-NEXT:    movdqa 288(%rdi), %xmm152117; SSE-NEXT:    pshufd {{.*#+}} xmm6 = xmm3[2,3,2,3]2118; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm15[0,0,1,1]2119; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm6[0],xmm1[1],xmm6[1]2120; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]2121; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2122; SSE-NEXT:    pshufd {{.*#+}} xmm6 = xmm13[2,3,2,3]2123; SSE-NEXT:    movdqa %xmm13, %xmm12124; SSE-NEXT:    movdqa %xmm2, %xmm112125; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm2[1,1,1,1]2126; SSE-NEXT:    punpckldq {{.*#+}} xmm6 = xmm6[0],xmm0[0],xmm6[1],xmm0[1]2127; SSE-NEXT:    movdqa 400(%rdi), %xmm132128; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm8[2,3,2,3]2129; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm13[0,0,1,1]2130; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm7[0],xmm0[1],xmm7[1]2131; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm6[0],xmm0[1]2132; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2133; SSE-NEXT:    movdqa 208(%rdi), %xmm102134; SSE-NEXT:    pshufd {{.*#+}} xmm6 = xmm10[0,0,1,1]2135; SSE-NEXT:    movdqa %xmm4, %xmm22136; SSE-NEXT:    movdqa %xmm4, %xmm02137; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm6[0],xmm0[1],xmm6[1]2138; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm5[2,2,3,3]2139; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload2140; SSE-NEXT:    punpckhdq {{.*#+}} xmm4 = xmm4[2],xmm5[2],xmm4[3],xmm5[3]2141; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm4[0],xmm0[1]2142; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2143; SSE-NEXT:    movdqa 96(%rdi), %xmm02144; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2145; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm0[0,0,1,1]2146; SSE-NEXT:    movdqa %xmm9, %xmm32147; SSE-NEXT:    movdqa %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2148; SSE-NEXT:    movdqa %xmm9, %xmm02149; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm4[0],xmm0[1],xmm4[1]2150; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm14[2,2,3,3]2151; SSE-NEXT:    movdqa (%rsp), %xmm6 # 16-byte Reload2152; SSE-NEXT:    punpckhdq {{.*#+}} xmm4 = xmm4[2],xmm6[2],xmm4[3],xmm6[3]2153; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm4[0],xmm0[1]2154; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2155; SSE-NEXT:    movdqa 320(%rdi), %xmm72156; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm7[0,0,1,1]2157; SSE-NEXT:    movdqa %xmm15, %xmm02158; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm4[0],xmm0[1],xmm4[1]2159; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload2160; SSE-NEXT:    # xmm4 = mem[2,2,3,3]2161; SSE-NEXT:    punpckhdq {{.*#+}} xmm4 = xmm4[2],xmm12[2],xmm4[3],xmm12[3]2162; SSE-NEXT:    movdqa %xmm12, %xmm142163; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm4[0],xmm0[1]2164; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2165; SSE-NEXT:    movdqa 432(%rdi), %xmm02166; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2167; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]2168; SSE-NEXT:    movdqa %xmm13, %xmm42169; SSE-NEXT:    punpckldq {{.*#+}} xmm4 = xmm4[0],xmm0[0],xmm4[1],xmm0[1]2170; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm1[2,2,3,3]2171; SSE-NEXT:    movdqa %xmm11, %xmm92172; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm11[2],xmm0[3],xmm11[3]2173; SSE-NEXT:    movsd {{.*#+}} xmm4 = xmm0[0],xmm4[1]2174; SSE-NEXT:    movapd %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2175; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm5[3,3,3,3]2176; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload2177; SSE-NEXT:    movdqa %xmm8, %xmm52178; SSE-NEXT:    punpckldq {{.*#+}} xmm5 = xmm5[0],xmm0[0],xmm5[1],xmm0[1]2179; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm2[2,2,3,3]2180; SSE-NEXT:    movdqa %xmm2, %xmm12181; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm10[0],xmm0[1],xmm10[1]2182; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm5[0],xmm0[1]2183; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2184; SSE-NEXT:    pshufd {{.*#+}} xmm5 = xmm6[3,3,3,3]2185; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload2186; SSE-NEXT:    movdqa %xmm4, %xmm02187; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm5[0],xmm0[1],xmm5[1]2188; SSE-NEXT:    pshufd {{.*#+}} xmm12 = xmm3[2,2,3,3]2189; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload2190; SSE-NEXT:    punpckldq {{.*#+}} xmm12 = xmm12[0],xmm2[0],xmm12[1],xmm2[1]2191; SSE-NEXT:    movsd {{.*#+}} xmm12 = xmm0[0],xmm12[1]2192; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm14[3,3,3,3]2193; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload2194; SSE-NEXT:    movdqa %xmm6, %xmm52195; SSE-NEXT:    punpckldq {{.*#+}} xmm5 = xmm5[0],xmm0[0],xmm5[1],xmm0[1]2196; SSE-NEXT:    pshufd {{.*#+}} xmm14 = xmm15[2,2,3,3]2197; SSE-NEXT:    punpckldq {{.*#+}} xmm14 = xmm14[0],xmm7[0],xmm14[1],xmm7[1]2198; SSE-NEXT:    movdqa %xmm7, %xmm112199; SSE-NEXT:    movdqa %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2200; SSE-NEXT:    movsd {{.*#+}} xmm14 = xmm5[0],xmm14[1]2201; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm9[3,3,3,3]2202; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload2203; SSE-NEXT:    movdqa %xmm7, %xmm52204; SSE-NEXT:    punpckldq {{.*#+}} xmm5 = xmm5[0],xmm0[0],xmm5[1],xmm0[1]2205; SSE-NEXT:    pshufd {{.*#+}} xmm9 = xmm13[2,2,3,3]2206; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload2207; SSE-NEXT:    punpckldq {{.*#+}} xmm9 = xmm9[0],xmm3[0],xmm9[1],xmm3[1]2208; SSE-NEXT:    movsd {{.*#+}} xmm9 = xmm5[0],xmm9[1]2209; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm10[2,2,2,2]2210; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]2211; SSE-NEXT:    movdqa %xmm8, %xmm52212; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm8[1,1,1,1]2213; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload2214; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm8[0],xmm0[1],xmm8[1]2215; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]2216; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2217; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm2[2,2,2,2]2218; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload2219; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]2220; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm4[1,1,1,1]2221; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload2222; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm4[0],xmm0[1],xmm4[1]2223; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]2224; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2225; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm11[2,2,2,2]2226; SSE-NEXT:    punpckhdq {{.*#+}} xmm15 = xmm15[2],xmm0[2],xmm15[3],xmm0[3]2227; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm6[1,1,1,1]2228; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload2229; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]2230; SSE-NEXT:    movsd {{.*#+}} xmm15 = xmm0[0],xmm15[1]2231; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm3[2,2,2,2]2232; SSE-NEXT:    movdqa %xmm3, %xmm112233; SSE-NEXT:    punpckhdq {{.*#+}} xmm13 = xmm13[2],xmm0[2],xmm13[3],xmm0[3]2234; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm7[1,1,1,1]2235; SSE-NEXT:    movdqa %xmm7, %xmm22236; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload2237; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm3[0],xmm0[1],xmm3[1]2238; SSE-NEXT:    movsd {{.*#+}} xmm13 = xmm0[0],xmm13[1]2239; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm8[1,1,1,1]2240; SSE-NEXT:    pshufd {{.*#+}} xmm5 = xmm5[2,3,2,3]2241; SSE-NEXT:    punpckldq {{.*#+}} xmm5 = xmm5[0],xmm0[0],xmm5[1],xmm0[1]2242; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm10[2,3,2,3]2243; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Folded Reload2244; SSE-NEXT:    # xmm10 = mem[0,0,1,1]2245; SSE-NEXT:    punpckldq {{.*#+}} xmm10 = xmm10[0],xmm0[0],xmm10[1],xmm0[1]2246; SSE-NEXT:    movsd {{.*#+}} xmm10 = xmm5[0],xmm10[1]2247; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm4[1,1,1,1]2248; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Folded Reload2249; SSE-NEXT:    # xmm5 = mem[2,3,2,3]2250; SSE-NEXT:    punpckldq {{.*#+}} xmm5 = xmm5[0],xmm0[0],xmm5[1],xmm0[1]2251; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload2252; SSE-NEXT:    # xmm0 = mem[2,3,2,3]2253; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload2254; SSE-NEXT:    # xmm7 = mem[0,0,1,1]2255; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm0[0],xmm7[1],xmm0[1]2256; SSE-NEXT:    movsd {{.*#+}} xmm7 = xmm5[0],xmm7[1]2257; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm1[1,1,1,1]2258; SSE-NEXT:    pshufd {{.*#+}} xmm5 = xmm6[2,3,2,3]2259; SSE-NEXT:    punpckldq {{.*#+}} xmm5 = xmm5[0],xmm0[0],xmm5[1],xmm0[1]2260; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload2261; SSE-NEXT:    # xmm0 = mem[2,3,2,3]2262; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Folded Reload2263; SSE-NEXT:    # xmm6 = mem[0,0,1,1]2264; SSE-NEXT:    punpckldq {{.*#+}} xmm6 = xmm6[0],xmm0[0],xmm6[1],xmm0[1]2265; SSE-NEXT:    movsd {{.*#+}} xmm6 = xmm5[0],xmm6[1]2266; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm3[1,1,1,1]2267; SSE-NEXT:    pshufd {{.*#+}} xmm5 = xmm2[2,3,2,3]2268; SSE-NEXT:    punpckldq {{.*#+}} xmm5 = xmm5[0],xmm0[0],xmm5[1],xmm0[1]2269; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm11[2,3,2,3]2270; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload2271; SSE-NEXT:    # xmm4 = mem[0,0,1,1]2272; SSE-NEXT:    punpckldq {{.*#+}} xmm4 = xmm4[0],xmm0[0],xmm4[1],xmm0[1]2273; SSE-NEXT:    movsd {{.*#+}} xmm4 = xmm5[0],xmm4[1]2274; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2275; SSE-NEXT:    movaps %xmm0, 48(%rsi)2276; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2277; SSE-NEXT:    movaps %xmm0, 32(%rsi)2278; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2279; SSE-NEXT:    movaps %xmm0, (%rsi)2280; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2281; SSE-NEXT:    movaps %xmm0, 16(%rsi)2282; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2283; SSE-NEXT:    movaps %xmm0, 48(%rdx)2284; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2285; SSE-NEXT:    movaps %xmm0, 32(%rdx)2286; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2287; SSE-NEXT:    movaps %xmm0, (%rdx)2288; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2289; SSE-NEXT:    movaps %xmm0, 16(%rdx)2290; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2291; SSE-NEXT:    movaps %xmm0, 48(%rcx)2292; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2293; SSE-NEXT:    movaps %xmm0, 32(%rcx)2294; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2295; SSE-NEXT:    movaps %xmm0, (%rcx)2296; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2297; SSE-NEXT:    movaps %xmm0, 16(%rcx)2298; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2299; SSE-NEXT:    movaps %xmm0, 48(%r8)2300; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2301; SSE-NEXT:    movaps %xmm0, 32(%r8)2302; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2303; SSE-NEXT:    movaps %xmm0, (%r8)2304; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2305; SSE-NEXT:    movaps %xmm0, 16(%r8)2306; SSE-NEXT:    movapd %xmm9, 48(%r9)2307; SSE-NEXT:    movapd %xmm14, 32(%r9)2308; SSE-NEXT:    movapd %xmm12, (%r9)2309; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2310; SSE-NEXT:    movaps %xmm0, 16(%r9)2311; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %rax2312; SSE-NEXT:    movapd %xmm13, 48(%rax)2313; SSE-NEXT:    movapd %xmm15, 32(%rax)2314; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2315; SSE-NEXT:    movaps %xmm0, (%rax)2316; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2317; SSE-NEXT:    movaps %xmm0, 16(%rax)2318; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %rax2319; SSE-NEXT:    movapd %xmm4, 48(%rax)2320; SSE-NEXT:    movapd %xmm6, 32(%rax)2321; SSE-NEXT:    movapd %xmm7, (%rax)2322; SSE-NEXT:    movapd %xmm10, 16(%rax)2323; SSE-NEXT:    addq $440, %rsp # imm = 0x1B82324; SSE-NEXT:    retq2325;2326; AVX-LABEL: load_i32_stride7_vf16:2327; AVX:       # %bb.0:2328; AVX-NEXT:    subq $456, %rsp # imm = 0x1C82329; AVX-NEXT:    vmovaps 32(%rdi), %ymm42330; AVX-NEXT:    vmovups %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2331; AVX-NEXT:    vmovaps (%rdi), %ymm62332; AVX-NEXT:    vmovups %ymm6, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2333; AVX-NEXT:    vmovaps 96(%rdi), %ymm152334; AVX-NEXT:    vmovaps 256(%rdi), %ymm22335; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2336; AVX-NEXT:    vmovaps 224(%rdi), %ymm12337; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2338; AVX-NEXT:    vmovaps 320(%rdi), %ymm52339; AVX-NEXT:    vmovaps 304(%rdi), %xmm02340; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2341; AVX-NEXT:    vunpcklpd {{.*#+}} ymm0 = ymm5[0],ymm0[0],ymm5[2],ymm0[2]2342; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5],ymm2[6],ymm1[7]2343; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm12344; AVX-NEXT:    vmovaps 224(%rdi), %xmm132345; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm13[0,1],xmm1[2,3]2346; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,3,2,3]2347; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]2348; AVX-NEXT:    vmovaps 384(%rdi), %xmm22349; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2350; AVX-NEXT:    vmovaps 352(%rdi), %xmm12351; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2352; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm1[1],xmm2[1]2353; AVX-NEXT:    vmovaps 416(%rdi), %xmm122354; AVX-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm1[1,2],xmm12[1]2355; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm12356; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]2357; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2358; AVX-NEXT:    vmovaps 80(%rdi), %xmm02359; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2360; AVX-NEXT:    vunpcklpd {{.*#+}} ymm0 = ymm15[0],ymm0[0],ymm15[2],ymm0[2]2361; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm6[0,1,2,3,4,5],ymm4[6],ymm6[7]2362; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm12363; AVX-NEXT:    vmovaps (%rdi), %xmm92364; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm9[0,1],xmm1[2,3]2365; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,3,2,3]2366; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]2367; AVX-NEXT:    vmovaps 160(%rdi), %xmm22368; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2369; AVX-NEXT:    vmovaps 128(%rdi), %xmm12370; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2371; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm1[1],xmm2[1]2372; AVX-NEXT:    vmovaps 192(%rdi), %xmm82373; AVX-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm1[1,2],xmm8[1]2374; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm12375; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]2376; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2377; AVX-NEXT:    vmovaps 288(%rdi), %ymm62378; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm5[1,1],ymm6[2,2],ymm5[5,5],ymm6[6,6]2379; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]2380; AVX-NEXT:    vmovaps 256(%rdi), %xmm112381; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm11[0],xmm13[1],xmm11[2,3]2382; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,0],mem[3,3]2383; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]2384; AVX-NEXT:    vmovaps 384(%rdi), %ymm72385; AVX-NEXT:    vmovaps 352(%rdi), %ymm12386; AVX-NEXT:    vperm2f128 {{.*#+}} ymm3 = ymm1[2,3],ymm7[0,1]2387; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm1[0,0],ymm3[3,3],ymm1[4,4],ymm3[7,7]2388; AVX-NEXT:    vextractf128 $1, %ymm3, %xmm32389; AVX-NEXT:    vinsertps {{.*#+}} xmm3 = zero,xmm3[1,2],xmm12[2]2390; AVX-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm32391; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm3[5,6,7]2392; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2393; AVX-NEXT:    vmovaps 64(%rdi), %ymm32394; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm15[1,1],ymm3[2,2],ymm15[5,5],ymm3[6,6]2395; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]2396; AVX-NEXT:    vmovaps 32(%rdi), %xmm102397; AVX-NEXT:    vblendps {{.*#+}} xmm4 = xmm10[0],xmm9[1],xmm10[2,3]2398; AVX-NEXT:    vshufps {{.*#+}} xmm4 = xmm4[1,0],mem[3,3]2399; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm4[0,1,2],ymm0[3,4,5,6,7]2400; AVX-NEXT:    vmovaps 160(%rdi), %ymm42401; AVX-NEXT:    vmovaps 128(%rdi), %ymm02402; AVX-NEXT:    vperm2f128 {{.*#+}} ymm14 = ymm0[2,3],ymm4[0,1]2403; AVX-NEXT:    vshufps {{.*#+}} ymm14 = ymm0[0,0],ymm14[3,3],ymm0[4,4],ymm14[7,7]2404; AVX-NEXT:    vextractf128 $1, %ymm14, %xmm142405; AVX-NEXT:    vinsertps {{.*#+}} xmm14 = zero,xmm14[1,2],xmm8[2]2406; AVX-NEXT:    vinsertf128 $1, %xmm14, %ymm0, %ymm142407; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm14[5,6,7]2408; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2409; AVX-NEXT:    vshufps {{.*#+}} xmm2 = xmm13[2,3,2,3]2410; AVX-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0],xmm11[1],xmm2[2,3]2411; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload2412; AVX-NEXT:    vshufps {{.*#+}} ymm14 = ymm14[3,1],ymm6[0,3],ymm14[7,5],ymm6[4,7]2413; AVX-NEXT:    vshufps {{.*#+}} ymm14 = ymm5[2,1],ymm14[2,0],ymm5[6,5],ymm14[6,4]2414; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1],ymm14[2,3,4,5,6,7]2415; AVX-NEXT:    vunpcklpd {{.*#+}} ymm14 = ymm1[0],ymm7[0],ymm1[2],ymm7[2]2416; AVX-NEXT:    vextractf128 $1, %ymm14, %xmm142417; AVX-NEXT:    vblendps {{.*#+}} xmm12 = xmm14[0,1,2],xmm12[3]2418; AVX-NEXT:    vinsertf128 $1, %xmm12, %ymm0, %ymm122419; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm12[5,6,7]2420; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2421; AVX-NEXT:    vshufps {{.*#+}} xmm2 = xmm9[2,3,2,3]2422; AVX-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0],xmm10[1],xmm2[2,3]2423; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload2424; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm12[3,1],ymm3[0,3],ymm12[7,5],ymm3[4,7]2425; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm15[2,1],ymm12[2,0],ymm15[6,5],ymm12[6,4]2426; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1],ymm12[2,3,4,5,6,7]2427; AVX-NEXT:    vunpcklpd {{.*#+}} ymm12 = ymm0[0],ymm4[0],ymm0[2],ymm4[2]2428; AVX-NEXT:    vextractf128 $1, %ymm12, %xmm122429; AVX-NEXT:    vblendps {{.*#+}} xmm8 = xmm12[0,1,2],xmm8[3]2430; AVX-NEXT:    vinsertf128 $1, %xmm8, %ymm0, %ymm82431; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm8[5,6,7]2432; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2433; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm6[1,0],ymm5[0,0],ymm6[5,4],ymm5[4,4]2434; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm5[3,1],ymm2[0,2],ymm5[7,5],ymm2[4,6]2435; AVX-NEXT:    vblendps {{.*#+}} xmm5 = xmm11[0,1,2],xmm13[3]2436; AVX-NEXT:    vshufps {{.*#+}} xmm5 = xmm5[3,2,2,3]2437; AVX-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1],ymm2[2,3,4,5,6,7]2438; AVX-NEXT:    vmovaps 416(%rdi), %ymm22439; AVX-NEXT:    vshufps {{.*#+}} ymm6 = ymm2[0,1],ymm7[1,3],ymm2[4,5],ymm7[5,7]2440; AVX-NEXT:    vshufps {{.*#+}} ymm6 = ymm1[0,2],ymm6[2,0],ymm1[4,6],ymm6[6,4]2441; AVX-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3,4],ymm6[5,6,7]2442; AVX-NEXT:    vmovups %ymm5, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2443; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm3[1,0],ymm15[0,0],ymm3[5,4],ymm15[4,4]2444; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm15[3,1],ymm3[0,2],ymm15[7,5],ymm3[4,6]2445; AVX-NEXT:    vblendps {{.*#+}} xmm5 = xmm10[0,1,2],xmm9[3]2446; AVX-NEXT:    vshufps {{.*#+}} xmm5 = xmm5[3,2,2,3]2447; AVX-NEXT:    vblendps {{.*#+}} ymm3 = ymm5[0,1],ymm3[2,3,4,5,6,7]2448; AVX-NEXT:    vmovaps 192(%rdi), %ymm62449; AVX-NEXT:    vshufps {{.*#+}} ymm5 = ymm6[0,1],ymm4[1,3],ymm6[4,5],ymm4[5,7]2450; AVX-NEXT:    vshufps {{.*#+}} ymm5 = ymm0[0,2],ymm5[2,0],ymm0[4,6],ymm5[6,4]2451; AVX-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4],ymm5[5,6,7]2452; AVX-NEXT:    vmovups %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2453; AVX-NEXT:    vperm2f128 {{.*#+}} ymm3 = ymm1[2,3,0,1]2454; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[3,0],ymm3[0,0],ymm1[7,4],ymm3[4,4]2455; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm2[1,0],ymm7[2,0],ymm2[5,4],ymm7[6,4]2456; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[2,0],ymm3[2,0],ymm1[6,4],ymm3[6,4]2457; AVX-NEXT:    vmovaps 320(%rdi), %xmm52458; AVX-NEXT:    vshufps {{.*#+}} xmm3 = xmm5[0,1,0,1]2459; AVX-NEXT:    vmovaps 288(%rdi), %xmm82460; AVX-NEXT:    vblendps {{.*#+}} xmm3 = xmm8[0,1,2],xmm3[3]2461; AVX-NEXT:    vshufps {{.*#+}} xmm9 = xmm11[2,3,2,3]2462; AVX-NEXT:    vblendps {{.*#+}} xmm9 = mem[0],xmm9[1],mem[2,3]2463; AVX-NEXT:    vblendps {{.*#+}} xmm3 = xmm9[0,1],xmm3[2,3]2464; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm3[0,1,2,3],ymm1[4,5,6,7]2465; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2466; AVX-NEXT:    vperm2f128 {{.*#+}} ymm3 = ymm0[2,3,0,1]2467; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[3,0],ymm3[0,0],ymm0[7,4],ymm3[4,4]2468; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm6[1,0],ymm4[2,0],ymm6[5,4],ymm4[6,4]2469; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[2,0],ymm3[2,0],ymm0[6,4],ymm3[6,4]2470; AVX-NEXT:    vmovaps 64(%rdi), %xmm112471; AVX-NEXT:    vmovaps 96(%rdi), %xmm92472; AVX-NEXT:    vshufps {{.*#+}} xmm3 = xmm9[0,1,0,1]2473; AVX-NEXT:    vblendps {{.*#+}} xmm3 = xmm11[0,1,2],xmm3[3]2474; AVX-NEXT:    vshufps {{.*#+}} xmm10 = xmm10[2,3,2,3]2475; AVX-NEXT:    vblendps {{.*#+}} xmm10 = mem[0],xmm10[1],mem[2,3]2476; AVX-NEXT:    vblendps {{.*#+}} xmm3 = xmm10[0,1],xmm3[2,3]2477; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm3[0,1,2,3],ymm0[4,5,6,7]2478; AVX-NEXT:    vmovups %ymm0, (%rsp) # 32-byte Spill2479; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm2[2,1],ymm7[3,3],ymm2[6,5],ymm7[7,7]2480; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload2481; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2482; AVX-NEXT:    vblendps {{.*#+}} xmm7 = xmm14[0],xmm0[1],xmm14[2,3]2483; AVX-NEXT:    vinsertf128 $1, %xmm7, %ymm0, %ymm72484; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm7[1,0],ymm3[2,0],ymm7[5,4],ymm3[6,4]2485; AVX-NEXT:    vblendps {{.*#+}} xmm7 = xmm5[0,1,2],xmm8[3]2486; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload2487; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 32-byte Reload2488; AVX-NEXT:    vshufps {{.*#+}} ymm8 = ymm13[0,0],ymm12[1,0],ymm13[4,4],ymm12[5,4]2489; AVX-NEXT:    vextractf128 $1, %ymm8, %xmm82490; AVX-NEXT:    vshufps {{.*#+}} xmm7 = xmm8[2,0],xmm7[3,2]2491; AVX-NEXT:    vblendps {{.*#+}} ymm15 = ymm7[0,1,2,3],ymm3[4,5,6,7]2492; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm6[2,1],ymm4[3,3],ymm6[6,5],ymm4[7,7]2493; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload2494; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload2495; AVX-NEXT:    vblendps {{.*#+}} xmm7 = xmm3[0],xmm1[1],xmm3[2,3]2496; AVX-NEXT:    vinsertf128 $1, %xmm7, %ymm0, %ymm72497; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm7[1,0],ymm4[2,0],ymm7[5,4],ymm4[6,4]2498; AVX-NEXT:    vblendps {{.*#+}} xmm7 = xmm9[0,1,2],xmm11[3]2499; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload2500; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload2501; AVX-NEXT:    vshufps {{.*#+}} ymm8 = ymm10[0,0],ymm11[1,0],ymm10[4,4],ymm11[5,4]2502; AVX-NEXT:    vextractf128 $1, %ymm8, %xmm82503; AVX-NEXT:    vshufps {{.*#+}} xmm7 = xmm8[2,0],xmm7[3,2]2504; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm7[0,1,2,3],ymm4[4,5,6,7]2505; AVX-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload2506; AVX-NEXT:    # xmm7 = mem[0,1,0,1]2507; AVX-NEXT:    vblendps {{.*#+}} xmm5 = xmm7[0,1,2],xmm5[3]2508; AVX-NEXT:    vshufps {{.*#+}} ymm7 = ymm13[1,0],ymm12[2,0],ymm13[5,4],ymm12[6,4]2509; AVX-NEXT:    vextractf128 $1, %ymm7, %xmm72510; AVX-NEXT:    vshufps {{.*#+}} xmm5 = xmm7[2,0],xmm5[2,3]2511; AVX-NEXT:    vperm2f128 {{.*#+}} ymm7 = ymm2[2,3,0,1]2512; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm2[3,0],ymm7[0,0],ymm2[7,4],ymm7[4,4]2513; AVX-NEXT:    vshufps {{.*#+}} xmm7 = xmm0[2,3,2,3]2514; AVX-NEXT:    vblendps {{.*#+}} xmm7 = xmm7[0],xmm14[1],xmm7[2,3]2515; AVX-NEXT:    vinsertf128 $1, %xmm7, %ymm0, %ymm72516; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm7[0,1],ymm2[2,0],ymm7[4,5],ymm2[6,4]2517; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm5[0,1,2,3],ymm2[4,5,6,7]2518; AVX-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Folded Reload2519; AVX-NEXT:    # xmm5 = mem[0,1,0,1]2520; AVX-NEXT:    vblendps {{.*#+}} xmm5 = xmm5[0,1,2],xmm9[3]2521; AVX-NEXT:    vshufps {{.*#+}} ymm7 = ymm10[1,0],ymm11[2,0],ymm10[5,4],ymm11[6,4]2522; AVX-NEXT:    vextractf128 $1, %ymm7, %xmm72523; AVX-NEXT:    vshufps {{.*#+}} xmm5 = xmm7[2,0],xmm5[2,3]2524; AVX-NEXT:    vperm2f128 {{.*#+}} ymm7 = ymm6[2,3,0,1]2525; AVX-NEXT:    vshufps {{.*#+}} ymm6 = ymm6[3,0],ymm7[0,0],ymm6[7,4],ymm7[4,4]2526; AVX-NEXT:    vshufps {{.*#+}} xmm7 = xmm1[2,3,2,3]2527; AVX-NEXT:    vblendps {{.*#+}} xmm7 = xmm7[0],xmm3[1],xmm7[2,3]2528; AVX-NEXT:    vinsertf128 $1, %xmm7, %ymm0, %ymm72529; AVX-NEXT:    vshufps {{.*#+}} ymm6 = ymm7[0,1],ymm6[2,0],ymm7[4,5],ymm6[6,4]2530; AVX-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3],ymm6[4,5,6,7]2531; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2532; AVX-NEXT:    vmovaps %ymm0, (%rsi)2533; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload2534; AVX-NEXT:    vmovaps %ymm6, 32(%rsi)2535; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2536; AVX-NEXT:    vmovaps %ymm0, (%rdx)2537; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2538; AVX-NEXT:    vmovaps %ymm0, 32(%rdx)2539; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2540; AVX-NEXT:    vmovaps %ymm0, (%rcx)2541; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2542; AVX-NEXT:    vmovaps %ymm0, 32(%rcx)2543; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2544; AVX-NEXT:    vmovaps %ymm0, (%r8)2545; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2546; AVX-NEXT:    vmovaps %ymm0, 32(%r8)2547; AVX-NEXT:    vmovups (%rsp), %ymm0 # 32-byte Reload2548; AVX-NEXT:    vmovaps %ymm0, (%r9)2549; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2550; AVX-NEXT:    vmovaps %ymm0, 32(%r9)2551; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %rax2552; AVX-NEXT:    vmovaps %ymm4, (%rax)2553; AVX-NEXT:    vmovaps %ymm15, 32(%rax)2554; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %rax2555; AVX-NEXT:    vmovaps %ymm5, (%rax)2556; AVX-NEXT:    vmovaps %ymm2, 32(%rax)2557; AVX-NEXT:    addq $456, %rsp # imm = 0x1C82558; AVX-NEXT:    vzeroupper2559; AVX-NEXT:    retq2560;2561; AVX2-LABEL: load_i32_stride7_vf16:2562; AVX2:       # %bb.0:2563; AVX2-NEXT:    subq $264, %rsp # imm = 0x1082564; AVX2-NEXT:    vmovdqa 288(%rdi), %ymm52565; AVX2-NEXT:    vmovdqa 384(%rdi), %ymm92566; AVX2-NEXT:    vmovdqa 352(%rdi), %ymm72567; AVX2-NEXT:    vmovdqa 320(%rdi), %ymm42568; AVX2-NEXT:    vmovdqa 256(%rdi), %ymm02569; AVX2-NEXT:    vmovdqa 224(%rdi), %ymm32570; AVX2-NEXT:    vmovdqa (%rdi), %ymm102571; AVX2-NEXT:    vmovdqa 32(%rdi), %ymm62572; AVX2-NEXT:    vmovdqa 96(%rdi), %ymm152573; AVX2-NEXT:    vpbroadcastq 80(%rdi), %ymm12574; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm15[4,5,6,7]2575; AVX2-NEXT:    vpmovsxbd {{.*#+}} xmm2 = [0,7,6,0]2576; AVX2-NEXT:    vpblendd {{.*#+}} ymm8 = ymm10[0,1,2,3,4,5],ymm6[6],ymm10[7]2577; AVX2-NEXT:    vpermd %ymm8, %ymm2, %ymm82578; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm8[0,1,2],ymm1[3,4,5,6,7]2579; AVX2-NEXT:    vmovdqa 128(%rdi), %xmm82580; AVX2-NEXT:    vmovdqa 160(%rdi), %xmm112581; AVX2-NEXT:    vmovdqa %xmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2582; AVX2-NEXT:    vpunpckhqdq {{.*#+}} xmm8 = xmm8[1],xmm11[1]2583; AVX2-NEXT:    vinserti128 $1, %xmm8, %ymm0, %ymm82584; AVX2-NEXT:    vpbroadcastd 196(%rdi), %ymm112585; AVX2-NEXT:    vpblendd {{.*#+}} ymm8 = ymm8[0,1,2,3,4,5,6],ymm11[7]2586; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm8[5,6,7]2587; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2588; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2589; AVX2-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2590; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm3[0,1,2,3,4,5],ymm0[6],ymm3[7]2591; AVX2-NEXT:    vpermd %ymm1, %ymm2, %ymm12592; AVX2-NEXT:    vpbroadcastq 304(%rdi), %ymm22593; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm4[4,5,6,7]2594; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]2595; AVX2-NEXT:    vmovdqa 352(%rdi), %xmm22596; AVX2-NEXT:    vmovdqa 384(%rdi), %xmm82597; AVX2-NEXT:    vmovdqa %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2598; AVX2-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm8[1]2599; AVX2-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm22600; AVX2-NEXT:    vpbroadcastd 420(%rdi), %ymm82601; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm8[7]2602; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]2603; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2604; AVX2-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]2605; AVX2-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm12606; AVX2-NEXT:    vpalignr {{.*#+}} ymm2 = ymm9[12,13,14,15],ymm7[0,1,2,3,4,5,6,7,8,9,10,11],ymm9[28,29,30,31],ymm7[16,17,18,19,20,21,22,23,24,25,26,27]2607; AVX2-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]2608; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]2609; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm4[0,1],ymm5[2,3],ymm4[4,5],ymm5[6,7]2610; AVX2-NEXT:    vpblendd {{.*#+}} ymm8 = ymm0[0],ymm3[1],ymm0[2,3,4],ymm3[5],ymm0[6,7]2611; AVX2-NEXT:    vmovdqu %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2612; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm8[0,1,2,3,4],ymm2[5,6],ymm8[7]2613; AVX2-NEXT:    vpmovsxbd {{.*#+}} ymm12 = [1,0,7,6,5,6,5,6]2614; AVX2-NEXT:    vpermd %ymm2, %ymm12, %ymm22615; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm2[0,1,2,3,4],ymm1[5,6,7]2616; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2617; AVX2-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]2618; AVX2-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm82619; AVX2-NEXT:    vmovdqa 160(%rdi), %ymm32620; AVX2-NEXT:    vmovdqa 128(%rdi), %ymm22621; AVX2-NEXT:    vpalignr {{.*#+}} ymm11 = ymm3[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm3[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]2622; AVX2-NEXT:    vpermq {{.*#+}} ymm11 = ymm11[0,1,2,0]2623; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm11[0,1,2,3,4,5,6],ymm8[7]2624; AVX2-NEXT:    vmovdqa 64(%rdi), %ymm112625; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm15[0,1],ymm11[2,3],ymm15[4,5],ymm11[6,7]2626; AVX2-NEXT:    vpblendd {{.*#+}} ymm8 = ymm6[0],ymm10[1],ymm6[2,3,4],ymm10[5],ymm6[6,7]2627; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm8[0,1,2,3,4],ymm0[5,6],ymm8[7]2628; AVX2-NEXT:    vpermd %ymm0, %ymm12, %ymm02629; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]2630; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2631; AVX2-NEXT:    vmovdqa 80(%rdi), %xmm02632; AVX2-NEXT:    vpalignr {{.*#+}} ymm1 = ymm15[8,9,10,11,12,13,14,15],ymm11[0,1,2,3,4,5,6,7],ymm15[24,25,26,27,28,29,30,31],ymm11[16,17,18,19,20,21,22,23]2633; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]2634; AVX2-NEXT:    vpbroadcastd 8(%rdi), %xmm12635; AVX2-NEXT:    vmovdqa 32(%rdi), %xmm122636; AVX2-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm12[1],xmm1[2,3]2637; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]2638; AVX2-NEXT:    vpunpcklqdq {{.*#+}} ymm1 = ymm2[0],ymm3[0],ymm2[2],ymm3[2]2639; AVX2-NEXT:    vpbroadcastd 204(%rdi), %ymm142640; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm14[7]2641; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]2642; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2643; AVX2-NEXT:    vmovdqa 304(%rdi), %xmm02644; AVX2-NEXT:    vpalignr {{.*#+}} ymm1 = ymm4[8,9,10,11,12,13,14,15],ymm5[0,1,2,3,4,5,6,7],ymm4[24,25,26,27,28,29,30,31],ymm5[16,17,18,19,20,21,22,23]2645; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]2646; AVX2-NEXT:    vpbroadcastd 232(%rdi), %xmm12647; AVX2-NEXT:    vmovdqa 256(%rdi), %xmm142648; AVX2-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm14[1],xmm1[2,3]2649; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]2650; AVX2-NEXT:    vpunpcklqdq {{.*#+}} ymm1 = ymm7[0],ymm9[0],ymm7[2],ymm9[2]2651; AVX2-NEXT:    vpbroadcastd 428(%rdi), %ymm132652; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm13[7]2653; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]2654; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2655; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm15[0],ymm11[1],ymm15[2,3,4,5,6,7]2656; AVX2-NEXT:    vpblendd {{.*#+}} xmm1 = xmm12[0,1,2],mem[3]2657; AVX2-NEXT:    vpshufd {{.*#+}} xmm1 = xmm1[3,2,2,3]2658; AVX2-NEXT:    vpshufd {{.*#+}} ymm0 = ymm0[3,1,1,0,7,5,5,4]2659; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]2660; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[0,2],ymm3[1,3],ymm2[4,6],ymm3[5,7]2661; AVX2-NEXT:    vbroadcastss 208(%rdi), %ymm112662; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm11[7]2663; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]2664; AVX2-NEXT:    vmovdqu %ymm0, (%rsp) # 32-byte Spill2665; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm4[0],ymm5[1],ymm4[2,3,4,5,6,7]2666; AVX2-NEXT:    vpblendd {{.*#+}} xmm1 = xmm14[0,1,2],mem[3]2667; AVX2-NEXT:    vpshufd {{.*#+}} xmm1 = xmm1[3,2,2,3]2668; AVX2-NEXT:    vpshufd {{.*#+}} ymm0 = ymm0[3,1,1,0,7,5,5,4]2669; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]2670; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm7[0,2],ymm9[1,3],ymm7[4,6],ymm9[5,7]2671; AVX2-NEXT:    vbroadcastss 432(%rdi), %ymm42672; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm4[7]2673; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]2674; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2675; AVX2-NEXT:    vpbroadcastd 100(%rdi), %xmm02676; AVX2-NEXT:    vmovdqa 64(%rdi), %xmm12677; AVX2-NEXT:    vpblendd {{.*#+}} xmm0 = xmm1[0,1,2],xmm0[3]2678; AVX2-NEXT:    vpmovsxbd {{.*#+}} xmm4 = [4,3,0,0]2679; AVX2-NEXT:    vpblendd {{.*#+}} ymm5 = ymm6[0,1,2,3],ymm10[4,5,6,7]2680; AVX2-NEXT:    vmovdqa %ymm6, %ymm152681; AVX2-NEXT:    vpermd %ymm5, %ymm4, %ymm52682; AVX2-NEXT:    vpblendd {{.*#+}} xmm5 = xmm5[0,1],xmm0[2,3]2683; AVX2-NEXT:    vpbroadcastq {{.*#+}} ymm0 = [0,7,0,7,0,7,0,7]2684; AVX2-NEXT:    vpermd %ymm2, %ymm0, %ymm112685; AVX2-NEXT:    vpblendd {{.*#+}} ymm11 = ymm11[0,1,2,3,4,5],ymm3[6,7]2686; AVX2-NEXT:    vpbroadcastd 212(%rdi), %ymm122687; AVX2-NEXT:    vpblendd {{.*#+}} ymm11 = ymm11[0,1,2,3,4,5,6],ymm12[7]2688; AVX2-NEXT:    vpblendd {{.*#+}} ymm12 = ymm5[0,1,2,3],ymm11[4,5,6,7]2689; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload2690; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload2691; AVX2-NEXT:    vpblendd {{.*#+}} ymm5 = ymm14[0,1,2,3],ymm6[4,5,6,7]2692; AVX2-NEXT:    vpermd %ymm5, %ymm4, %ymm42693; AVX2-NEXT:    vpbroadcastd 324(%rdi), %xmm52694; AVX2-NEXT:    vmovdqa 288(%rdi), %xmm132695; AVX2-NEXT:    vpblendd {{.*#+}} xmm5 = xmm13[0,1,2],xmm5[3]2696; AVX2-NEXT:    vpblendd {{.*#+}} xmm4 = xmm4[0,1],xmm5[2,3]2697; AVX2-NEXT:    vpermd %ymm7, %ymm0, %ymm52698; AVX2-NEXT:    vpblendd {{.*#+}} ymm5 = ymm5[0,1,2,3,4,5],ymm9[6,7]2699; AVX2-NEXT:    vpbroadcastd 436(%rdi), %ymm112700; AVX2-NEXT:    vpblendd {{.*#+}} ymm5 = ymm5[0,1,2,3,4,5,6],ymm11[7]2701; AVX2-NEXT:    vpblendd {{.*#+}} ymm11 = ymm4[0,1,2,3],ymm5[4,5,6,7]2702; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm3[0],ymm2[1],ymm3[2,3,4],ymm2[5],ymm3[6,7]2703; AVX2-NEXT:    vpshufd {{.*#+}} ymm2 = ymm2[1,0,3,3,5,4,7,7]2704; AVX2-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,0,3]2705; AVX2-NEXT:    vpbroadcastd 216(%rdi), %ymm32706; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]2707; AVX2-NEXT:    vmovdqa 96(%rdi), %xmm32708; AVX2-NEXT:    vpblendd {{.*#+}} xmm1 = xmm3[0,1,2],xmm1[3]2709; AVX2-NEXT:    vpshufd {{.*#+}} xmm1 = xmm1[0,1,3,2]2710; AVX2-NEXT:    vpshufd {{.*#+}} ymm4 = ymm8[1,0,2,3,5,4,6,7]2711; AVX2-NEXT:    vextracti128 $1, %ymm4, %xmm42712; AVX2-NEXT:    vpblendd {{.*#+}} xmm1 = xmm4[0,1],xmm1[2,3]2713; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]2714; AVX2-NEXT:    vmovdqa 320(%rdi), %xmm82715; AVX2-NEXT:    vpblendd {{.*#+}} xmm2 = xmm8[0,1,2],xmm13[3]2716; AVX2-NEXT:    vpshufd {{.*#+}} xmm2 = xmm2[0,1,3,2]2717; AVX2-NEXT:    vpshufd $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Folded Reload2718; AVX2-NEXT:    # ymm4 = mem[1,0,2,3,5,4,6,7]2719; AVX2-NEXT:    vextracti128 $1, %ymm4, %xmm42720; AVX2-NEXT:    vpblendd {{.*#+}} xmm2 = xmm4[0,1],xmm2[2,3]2721; AVX2-NEXT:    vpblendd {{.*#+}} ymm4 = ymm9[0],ymm7[1],ymm9[2,3,4],ymm7[5],ymm9[6,7]2722; AVX2-NEXT:    vpshufd {{.*#+}} ymm4 = ymm4[1,0,3,3,5,4,7,7]2723; AVX2-NEXT:    vpermq {{.*#+}} ymm4 = ymm4[0,1,0,3]2724; AVX2-NEXT:    vpbroadcastd 440(%rdi), %ymm52725; AVX2-NEXT:    vpblendd {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm5[7]2726; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm4[4,5,6,7]2727; AVX2-NEXT:    vpbroadcastd 136(%rdi), %xmm42728; AVX2-NEXT:    vpblendd $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4, %xmm4 # 16-byte Folded Reload2729; AVX2-NEXT:    # xmm4 = xmm4[0],mem[1],xmm4[2,3]2730; AVX2-NEXT:    vinserti128 $1, %xmm4, %ymm0, %ymm42731; AVX2-NEXT:    vpermd 192(%rdi), %ymm0, %ymm52732; AVX2-NEXT:    vpblendd {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5],ymm5[6,7]2733; AVX2-NEXT:    vpbroadcastd 80(%rdi), %ymm52734; AVX2-NEXT:    vpblendd {{.*#+}} xmm3 = xmm5[0,1,2],xmm3[3]2735; AVX2-NEXT:    vpshufd {{.*#+}} ymm5 = ymm10[2,3,2,3,6,7,6,7]2736; AVX2-NEXT:    vpblendd {{.*#+}} ymm5 = ymm5[0],ymm15[1],ymm5[2,3,4],ymm15[5],ymm5[6,7]2737; AVX2-NEXT:    vextracti128 $1, %ymm5, %xmm52738; AVX2-NEXT:    vpblendd {{.*#+}} xmm3 = xmm5[0,1],xmm3[2,3]2739; AVX2-NEXT:    vpblendd {{.*#+}} ymm3 = ymm3[0,1,2,3],ymm4[4,5,6,7]2740; AVX2-NEXT:    vpbroadcastd 360(%rdi), %xmm42741; AVX2-NEXT:    vpblendd $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4, %xmm4 # 16-byte Folded Reload2742; AVX2-NEXT:    # xmm4 = xmm4[0],mem[1],xmm4[2,3]2743; AVX2-NEXT:    vpermd 416(%rdi), %ymm0, %ymm02744; AVX2-NEXT:    vinserti128 $1, %xmm4, %ymm0, %ymm42745; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm4[0,1,2,3,4,5],ymm0[6,7]2746; AVX2-NEXT:    vpbroadcastd 304(%rdi), %ymm42747; AVX2-NEXT:    vpblendd {{.*#+}} xmm4 = xmm4[0,1,2],xmm8[3]2748; AVX2-NEXT:    vpshufd {{.*#+}} ymm5 = ymm6[2,3,2,3,6,7,6,7]2749; AVX2-NEXT:    vpblendd {{.*#+}} ymm5 = ymm5[0],ymm14[1],ymm5[2,3,4],ymm14[5],ymm5[6,7]2750; AVX2-NEXT:    vextracti128 $1, %ymm5, %xmm52751; AVX2-NEXT:    vpblendd {{.*#+}} xmm4 = xmm5[0,1],xmm4[2,3]2752; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm4[0,1,2,3],ymm0[4,5,6,7]2753; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload2754; AVX2-NEXT:    vmovaps %ymm4, 32(%rsi)2755; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload2756; AVX2-NEXT:    vmovaps %ymm4, (%rsi)2757; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload2758; AVX2-NEXT:    vmovaps %ymm4, 32(%rdx)2759; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload2760; AVX2-NEXT:    vmovaps %ymm4, (%rdx)2761; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload2762; AVX2-NEXT:    vmovaps %ymm4, 32(%rcx)2763; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload2764; AVX2-NEXT:    vmovaps %ymm4, (%rcx)2765; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload2766; AVX2-NEXT:    vmovaps %ymm4, 32(%r8)2767; AVX2-NEXT:    vmovups (%rsp), %ymm4 # 32-byte Reload2768; AVX2-NEXT:    vmovaps %ymm4, (%r8)2769; AVX2-NEXT:    vmovdqa %ymm11, 32(%r9)2770; AVX2-NEXT:    vmovdqa %ymm12, (%r9)2771; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %rax2772; AVX2-NEXT:    vmovdqa %ymm2, 32(%rax)2773; AVX2-NEXT:    vmovdqa %ymm1, (%rax)2774; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %rax2775; AVX2-NEXT:    vmovdqa %ymm0, 32(%rax)2776; AVX2-NEXT:    vmovdqa %ymm3, (%rax)2777; AVX2-NEXT:    addq $264, %rsp # imm = 0x1082778; AVX2-NEXT:    vzeroupper2779; AVX2-NEXT:    retq2780;2781; AVX2-FP-LABEL: load_i32_stride7_vf16:2782; AVX2-FP:       # %bb.0:2783; AVX2-FP-NEXT:    subq $264, %rsp # imm = 0x1082784; AVX2-FP-NEXT:    vmovdqa 288(%rdi), %ymm52785; AVX2-FP-NEXT:    vmovdqa 384(%rdi), %ymm92786; AVX2-FP-NEXT:    vmovdqa 352(%rdi), %ymm72787; AVX2-FP-NEXT:    vmovdqa 320(%rdi), %ymm42788; AVX2-FP-NEXT:    vmovdqa 256(%rdi), %ymm02789; AVX2-FP-NEXT:    vmovdqa 224(%rdi), %ymm32790; AVX2-FP-NEXT:    vmovdqa (%rdi), %ymm102791; AVX2-FP-NEXT:    vmovdqa 32(%rdi), %ymm62792; AVX2-FP-NEXT:    vmovdqa 96(%rdi), %ymm152793; AVX2-FP-NEXT:    vpbroadcastq 80(%rdi), %ymm12794; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm15[4,5,6,7]2795; AVX2-FP-NEXT:    vpmovsxbd {{.*#+}} xmm2 = [0,7,6,0]2796; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm8 = ymm10[0,1,2,3,4,5],ymm6[6],ymm10[7]2797; AVX2-FP-NEXT:    vpermd %ymm8, %ymm2, %ymm82798; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm8[0,1,2],ymm1[3,4,5,6,7]2799; AVX2-FP-NEXT:    vmovdqa 128(%rdi), %xmm82800; AVX2-FP-NEXT:    vmovdqa 160(%rdi), %xmm112801; AVX2-FP-NEXT:    vmovdqa %xmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2802; AVX2-FP-NEXT:    vpunpckhqdq {{.*#+}} xmm8 = xmm8[1],xmm11[1]2803; AVX2-FP-NEXT:    vinserti128 $1, %xmm8, %ymm0, %ymm82804; AVX2-FP-NEXT:    vpbroadcastd 196(%rdi), %ymm112805; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm8 = ymm8[0,1,2,3,4,5,6],ymm11[7]2806; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm8[5,6,7]2807; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2808; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2809; AVX2-FP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2810; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm3[0,1,2,3,4,5],ymm0[6],ymm3[7]2811; AVX2-FP-NEXT:    vpermd %ymm1, %ymm2, %ymm12812; AVX2-FP-NEXT:    vpbroadcastq 304(%rdi), %ymm22813; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm4[4,5,6,7]2814; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]2815; AVX2-FP-NEXT:    vmovdqa 352(%rdi), %xmm22816; AVX2-FP-NEXT:    vmovdqa 384(%rdi), %xmm82817; AVX2-FP-NEXT:    vmovdqa %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2818; AVX2-FP-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm8[1]2819; AVX2-FP-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm22820; AVX2-FP-NEXT:    vpbroadcastd 420(%rdi), %ymm82821; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm8[7]2822; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]2823; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2824; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]2825; AVX2-FP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm12826; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm9[12,13,14,15],ymm7[0,1,2,3,4,5,6,7,8,9,10,11],ymm9[28,29,30,31],ymm7[16,17,18,19,20,21,22,23,24,25,26,27]2827; AVX2-FP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]2828; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]2829; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm4[0,1],ymm5[2,3],ymm4[4,5],ymm5[6,7]2830; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm8 = ymm0[0],ymm3[1],ymm0[2,3,4],ymm3[5],ymm0[6,7]2831; AVX2-FP-NEXT:    vmovdqu %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2832; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm8[0,1,2,3,4],ymm2[5,6],ymm8[7]2833; AVX2-FP-NEXT:    vpmovsxbd {{.*#+}} ymm12 = [1,0,7,6,5,6,5,6]2834; AVX2-FP-NEXT:    vpermd %ymm2, %ymm12, %ymm22835; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm2[0,1,2,3,4],ymm1[5,6,7]2836; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2837; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]2838; AVX2-FP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm82839; AVX2-FP-NEXT:    vmovdqa 160(%rdi), %ymm32840; AVX2-FP-NEXT:    vmovdqa 128(%rdi), %ymm22841; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm11 = ymm3[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm3[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]2842; AVX2-FP-NEXT:    vpermq {{.*#+}} ymm11 = ymm11[0,1,2,0]2843; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm11[0,1,2,3,4,5,6],ymm8[7]2844; AVX2-FP-NEXT:    vmovdqa 64(%rdi), %ymm112845; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm15[0,1],ymm11[2,3],ymm15[4,5],ymm11[6,7]2846; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm8 = ymm6[0],ymm10[1],ymm6[2,3,4],ymm10[5],ymm6[6,7]2847; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm8[0,1,2,3,4],ymm0[5,6],ymm8[7]2848; AVX2-FP-NEXT:    vpermd %ymm0, %ymm12, %ymm02849; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]2850; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2851; AVX2-FP-NEXT:    vmovdqa 80(%rdi), %xmm02852; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm1 = ymm15[8,9,10,11,12,13,14,15],ymm11[0,1,2,3,4,5,6,7],ymm15[24,25,26,27,28,29,30,31],ymm11[16,17,18,19,20,21,22,23]2853; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]2854; AVX2-FP-NEXT:    vpbroadcastd 8(%rdi), %xmm12855; AVX2-FP-NEXT:    vmovdqa 32(%rdi), %xmm122856; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm12[1],xmm1[2,3]2857; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]2858; AVX2-FP-NEXT:    vpunpcklqdq {{.*#+}} ymm1 = ymm2[0],ymm3[0],ymm2[2],ymm3[2]2859; AVX2-FP-NEXT:    vpbroadcastd 204(%rdi), %ymm142860; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm14[7]2861; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]2862; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2863; AVX2-FP-NEXT:    vmovdqa 304(%rdi), %xmm02864; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm1 = ymm4[8,9,10,11,12,13,14,15],ymm5[0,1,2,3,4,5,6,7],ymm4[24,25,26,27,28,29,30,31],ymm5[16,17,18,19,20,21,22,23]2865; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]2866; AVX2-FP-NEXT:    vpbroadcastd 232(%rdi), %xmm12867; AVX2-FP-NEXT:    vmovdqa 256(%rdi), %xmm142868; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm14[1],xmm1[2,3]2869; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]2870; AVX2-FP-NEXT:    vpunpcklqdq {{.*#+}} ymm1 = ymm7[0],ymm9[0],ymm7[2],ymm9[2]2871; AVX2-FP-NEXT:    vpbroadcastd 428(%rdi), %ymm132872; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm13[7]2873; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]2874; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2875; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm15[0],ymm11[1],ymm15[2,3,4,5,6,7]2876; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm12[0,1,2],mem[3]2877; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm1 = xmm1[3,2,2,3]2878; AVX2-FP-NEXT:    vpshufd {{.*#+}} ymm0 = ymm0[3,1,1,0,7,5,5,4]2879; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]2880; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[0,2],ymm3[1,3],ymm2[4,6],ymm3[5,7]2881; AVX2-FP-NEXT:    vbroadcastss 208(%rdi), %ymm112882; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm11[7]2883; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]2884; AVX2-FP-NEXT:    vmovdqu %ymm0, (%rsp) # 32-byte Spill2885; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm4[0],ymm5[1],ymm4[2,3,4,5,6,7]2886; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm14[0,1,2],mem[3]2887; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm1 = xmm1[3,2,2,3]2888; AVX2-FP-NEXT:    vpshufd {{.*#+}} ymm0 = ymm0[3,1,1,0,7,5,5,4]2889; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]2890; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm7[0,2],ymm9[1,3],ymm7[4,6],ymm9[5,7]2891; AVX2-FP-NEXT:    vbroadcastss 432(%rdi), %ymm42892; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm4[7]2893; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]2894; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2895; AVX2-FP-NEXT:    vpbroadcastd 100(%rdi), %xmm02896; AVX2-FP-NEXT:    vmovdqa 64(%rdi), %xmm12897; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm0 = xmm1[0,1,2],xmm0[3]2898; AVX2-FP-NEXT:    vpmovsxbd {{.*#+}} xmm4 = [4,3,0,0]2899; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm6[0,1,2,3],ymm10[4,5,6,7]2900; AVX2-FP-NEXT:    vmovdqa %ymm6, %ymm152901; AVX2-FP-NEXT:    vpermd %ymm5, %ymm4, %ymm52902; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm5 = xmm5[0,1],xmm0[2,3]2903; AVX2-FP-NEXT:    vpbroadcastq {{.*#+}} ymm0 = [0,7,0,7,0,7,0,7]2904; AVX2-FP-NEXT:    vpermd %ymm2, %ymm0, %ymm112905; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm11 = ymm11[0,1,2,3,4,5],ymm3[6,7]2906; AVX2-FP-NEXT:    vpbroadcastd 212(%rdi), %ymm122907; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm11 = ymm11[0,1,2,3,4,5,6],ymm12[7]2908; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm12 = ymm5[0,1,2,3],ymm11[4,5,6,7]2909; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload2910; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload2911; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm14[0,1,2,3],ymm6[4,5,6,7]2912; AVX2-FP-NEXT:    vpermd %ymm5, %ymm4, %ymm42913; AVX2-FP-NEXT:    vpbroadcastd 324(%rdi), %xmm52914; AVX2-FP-NEXT:    vmovdqa 288(%rdi), %xmm132915; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm5 = xmm13[0,1,2],xmm5[3]2916; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm4 = xmm4[0,1],xmm5[2,3]2917; AVX2-FP-NEXT:    vpermd %ymm7, %ymm0, %ymm52918; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm5[0,1,2,3,4,5],ymm9[6,7]2919; AVX2-FP-NEXT:    vpbroadcastd 436(%rdi), %ymm112920; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm5[0,1,2,3,4,5,6],ymm11[7]2921; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm11 = ymm4[0,1,2,3],ymm5[4,5,6,7]2922; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm3[0],ymm2[1],ymm3[2,3,4],ymm2[5],ymm3[6,7]2923; AVX2-FP-NEXT:    vpshufd {{.*#+}} ymm2 = ymm2[1,0,3,3,5,4,7,7]2924; AVX2-FP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,0,3]2925; AVX2-FP-NEXT:    vpbroadcastd 216(%rdi), %ymm32926; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]2927; AVX2-FP-NEXT:    vmovdqa 96(%rdi), %xmm32928; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm3[0,1,2],xmm1[3]2929; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm1 = xmm1[0,1,3,2]2930; AVX2-FP-NEXT:    vpshufd {{.*#+}} ymm4 = ymm8[1,0,2,3,5,4,6,7]2931; AVX2-FP-NEXT:    vextracti128 $1, %ymm4, %xmm42932; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm4[0,1],xmm1[2,3]2933; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]2934; AVX2-FP-NEXT:    vmovdqa 320(%rdi), %xmm82935; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm2 = xmm8[0,1,2],xmm13[3]2936; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm2 = xmm2[0,1,3,2]2937; AVX2-FP-NEXT:    vpshufd $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Folded Reload2938; AVX2-FP-NEXT:    # ymm4 = mem[1,0,2,3,5,4,6,7]2939; AVX2-FP-NEXT:    vextracti128 $1, %ymm4, %xmm42940; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm2 = xmm4[0,1],xmm2[2,3]2941; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm9[0],ymm7[1],ymm9[2,3,4],ymm7[5],ymm9[6,7]2942; AVX2-FP-NEXT:    vpshufd {{.*#+}} ymm4 = ymm4[1,0,3,3,5,4,7,7]2943; AVX2-FP-NEXT:    vpermq {{.*#+}} ymm4 = ymm4[0,1,0,3]2944; AVX2-FP-NEXT:    vpbroadcastd 440(%rdi), %ymm52945; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm5[7]2946; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm4[4,5,6,7]2947; AVX2-FP-NEXT:    vpbroadcastd 136(%rdi), %xmm42948; AVX2-FP-NEXT:    vpblendd $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4, %xmm4 # 16-byte Folded Reload2949; AVX2-FP-NEXT:    # xmm4 = xmm4[0],mem[1],xmm4[2,3]2950; AVX2-FP-NEXT:    vinserti128 $1, %xmm4, %ymm0, %ymm42951; AVX2-FP-NEXT:    vpermd 192(%rdi), %ymm0, %ymm52952; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5],ymm5[6,7]2953; AVX2-FP-NEXT:    vpbroadcastd 80(%rdi), %ymm52954; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm3 = xmm5[0,1,2],xmm3[3]2955; AVX2-FP-NEXT:    vpshufd {{.*#+}} ymm5 = ymm10[2,3,2,3,6,7,6,7]2956; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm5[0],ymm15[1],ymm5[2,3,4],ymm15[5],ymm5[6,7]2957; AVX2-FP-NEXT:    vextracti128 $1, %ymm5, %xmm52958; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm3 = xmm5[0,1],xmm3[2,3]2959; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm3 = ymm3[0,1,2,3],ymm4[4,5,6,7]2960; AVX2-FP-NEXT:    vpbroadcastd 360(%rdi), %xmm42961; AVX2-FP-NEXT:    vpblendd $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4, %xmm4 # 16-byte Folded Reload2962; AVX2-FP-NEXT:    # xmm4 = xmm4[0],mem[1],xmm4[2,3]2963; AVX2-FP-NEXT:    vpermd 416(%rdi), %ymm0, %ymm02964; AVX2-FP-NEXT:    vinserti128 $1, %xmm4, %ymm0, %ymm42965; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm4[0,1,2,3,4,5],ymm0[6,7]2966; AVX2-FP-NEXT:    vpbroadcastd 304(%rdi), %ymm42967; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm4 = xmm4[0,1,2],xmm8[3]2968; AVX2-FP-NEXT:    vpshufd {{.*#+}} ymm5 = ymm6[2,3,2,3,6,7,6,7]2969; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm5[0],ymm14[1],ymm5[2,3,4],ymm14[5],ymm5[6,7]2970; AVX2-FP-NEXT:    vextracti128 $1, %ymm5, %xmm52971; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm4 = xmm5[0,1],xmm4[2,3]2972; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm4[0,1,2,3],ymm0[4,5,6,7]2973; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload2974; AVX2-FP-NEXT:    vmovaps %ymm4, 32(%rsi)2975; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload2976; AVX2-FP-NEXT:    vmovaps %ymm4, (%rsi)2977; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload2978; AVX2-FP-NEXT:    vmovaps %ymm4, 32(%rdx)2979; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload2980; AVX2-FP-NEXT:    vmovaps %ymm4, (%rdx)2981; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload2982; AVX2-FP-NEXT:    vmovaps %ymm4, 32(%rcx)2983; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload2984; AVX2-FP-NEXT:    vmovaps %ymm4, (%rcx)2985; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload2986; AVX2-FP-NEXT:    vmovaps %ymm4, 32(%r8)2987; AVX2-FP-NEXT:    vmovups (%rsp), %ymm4 # 32-byte Reload2988; AVX2-FP-NEXT:    vmovaps %ymm4, (%r8)2989; AVX2-FP-NEXT:    vmovdqa %ymm11, 32(%r9)2990; AVX2-FP-NEXT:    vmovdqa %ymm12, (%r9)2991; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %rax2992; AVX2-FP-NEXT:    vmovdqa %ymm2, 32(%rax)2993; AVX2-FP-NEXT:    vmovdqa %ymm1, (%rax)2994; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %rax2995; AVX2-FP-NEXT:    vmovdqa %ymm0, 32(%rax)2996; AVX2-FP-NEXT:    vmovdqa %ymm3, (%rax)2997; AVX2-FP-NEXT:    addq $264, %rsp # imm = 0x1082998; AVX2-FP-NEXT:    vzeroupper2999; AVX2-FP-NEXT:    retq3000;3001; AVX2-FCP-LABEL: load_i32_stride7_vf16:3002; AVX2-FCP:       # %bb.0:3003; AVX2-FCP-NEXT:    subq $264, %rsp # imm = 0x1083004; AVX2-FCP-NEXT:    vmovdqa 288(%rdi), %ymm53005; AVX2-FCP-NEXT:    vmovdqa 384(%rdi), %ymm93006; AVX2-FCP-NEXT:    vmovdqa 352(%rdi), %ymm73007; AVX2-FCP-NEXT:    vmovdqa 320(%rdi), %ymm43008; AVX2-FCP-NEXT:    vmovdqa 256(%rdi), %ymm03009; AVX2-FCP-NEXT:    vmovdqa 224(%rdi), %ymm33010; AVX2-FCP-NEXT:    vmovdqa (%rdi), %ymm103011; AVX2-FCP-NEXT:    vmovdqa 32(%rdi), %ymm63012; AVX2-FCP-NEXT:    vmovdqa 96(%rdi), %ymm153013; AVX2-FCP-NEXT:    vpbroadcastq 80(%rdi), %ymm13014; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm15[4,5,6,7]3015; AVX2-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm2 = [0,7,6,0]3016; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm8 = ymm10[0,1,2,3,4,5],ymm6[6],ymm10[7]3017; AVX2-FCP-NEXT:    vpermd %ymm8, %ymm2, %ymm83018; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm8[0,1,2],ymm1[3,4,5,6,7]3019; AVX2-FCP-NEXT:    vmovdqa 128(%rdi), %xmm83020; AVX2-FCP-NEXT:    vmovdqa 160(%rdi), %xmm113021; AVX2-FCP-NEXT:    vmovdqa %xmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill3022; AVX2-FCP-NEXT:    vpunpckhqdq {{.*#+}} xmm8 = xmm8[1],xmm11[1]3023; AVX2-FCP-NEXT:    vinserti128 $1, %xmm8, %ymm0, %ymm83024; AVX2-FCP-NEXT:    vpbroadcastd 196(%rdi), %ymm113025; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm8 = ymm8[0,1,2,3,4,5,6],ymm11[7]3026; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm8[5,6,7]3027; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill3028; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill3029; AVX2-FCP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill3030; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm3[0,1,2,3,4,5],ymm0[6],ymm3[7]3031; AVX2-FCP-NEXT:    vpermd %ymm1, %ymm2, %ymm13032; AVX2-FCP-NEXT:    vpbroadcastq 304(%rdi), %ymm23033; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm4[4,5,6,7]3034; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]3035; AVX2-FCP-NEXT:    vmovdqa 352(%rdi), %xmm23036; AVX2-FCP-NEXT:    vmovdqa 384(%rdi), %xmm83037; AVX2-FCP-NEXT:    vmovdqa %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill3038; AVX2-FCP-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm8[1]3039; AVX2-FCP-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm23040; AVX2-FCP-NEXT:    vpbroadcastd 420(%rdi), %ymm83041; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm8[7]3042; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]3043; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill3044; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]3045; AVX2-FCP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm13046; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm9[12,13,14,15],ymm7[0,1,2,3,4,5,6,7,8,9,10,11],ymm9[28,29,30,31],ymm7[16,17,18,19,20,21,22,23,24,25,26,27]3047; AVX2-FCP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]3048; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]3049; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm4[0,1],ymm5[2,3],ymm4[4,5],ymm5[6,7]3050; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm8 = ymm0[0],ymm3[1],ymm0[2,3,4],ymm3[5],ymm0[6,7]3051; AVX2-FCP-NEXT:    vmovdqu %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill3052; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm8[0,1,2,3,4],ymm2[5,6],ymm8[7]3053; AVX2-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm12 = [1,0,7,6,5,6,5,6]3054; AVX2-FCP-NEXT:    vpermd %ymm2, %ymm12, %ymm23055; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm2[0,1,2,3,4],ymm1[5,6,7]3056; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill3057; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]3058; AVX2-FCP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm83059; AVX2-FCP-NEXT:    vmovdqa 160(%rdi), %ymm33060; AVX2-FCP-NEXT:    vmovdqa 128(%rdi), %ymm23061; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm11 = ymm3[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm3[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]3062; AVX2-FCP-NEXT:    vpermq {{.*#+}} ymm11 = ymm11[0,1,2,0]3063; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm11[0,1,2,3,4,5,6],ymm8[7]3064; AVX2-FCP-NEXT:    vmovdqa 64(%rdi), %ymm113065; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm15[0,1],ymm11[2,3],ymm15[4,5],ymm11[6,7]3066; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm8 = ymm6[0],ymm10[1],ymm6[2,3,4],ymm10[5],ymm6[6,7]3067; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm8[0,1,2,3,4],ymm0[5,6],ymm8[7]3068; AVX2-FCP-NEXT:    vpermd %ymm0, %ymm12, %ymm03069; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]3070; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill3071; AVX2-FCP-NEXT:    vmovdqa 80(%rdi), %xmm03072; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm1 = ymm15[8,9,10,11,12,13,14,15],ymm11[0,1,2,3,4,5,6,7],ymm15[24,25,26,27,28,29,30,31],ymm11[16,17,18,19,20,21,22,23]3073; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]3074; AVX2-FCP-NEXT:    vpbroadcastd 8(%rdi), %xmm13075; AVX2-FCP-NEXT:    vmovdqa 32(%rdi), %xmm123076; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm12[1],xmm1[2,3]3077; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]3078; AVX2-FCP-NEXT:    vpunpcklqdq {{.*#+}} ymm1 = ymm2[0],ymm3[0],ymm2[2],ymm3[2]3079; AVX2-FCP-NEXT:    vpbroadcastd 204(%rdi), %ymm143080; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm14[7]3081; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]3082; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill3083; AVX2-FCP-NEXT:    vmovdqa 304(%rdi), %xmm03084; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm1 = ymm4[8,9,10,11,12,13,14,15],ymm5[0,1,2,3,4,5,6,7],ymm4[24,25,26,27,28,29,30,31],ymm5[16,17,18,19,20,21,22,23]3085; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]3086; AVX2-FCP-NEXT:    vpbroadcastd 232(%rdi), %xmm13087; AVX2-FCP-NEXT:    vmovdqa 256(%rdi), %xmm143088; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm14[1],xmm1[2,3]3089; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]3090; AVX2-FCP-NEXT:    vpunpcklqdq {{.*#+}} ymm1 = ymm7[0],ymm9[0],ymm7[2],ymm9[2]3091; AVX2-FCP-NEXT:    vpbroadcastd 428(%rdi), %ymm133092; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm13[7]3093; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]3094; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill3095; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm15[0],ymm11[1],ymm15[2,3,4,5,6,7]3096; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm12[0,1,2],mem[3]3097; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm1 = xmm1[3,2,2,3]3098; AVX2-FCP-NEXT:    vpshufd {{.*#+}} ymm0 = ymm0[3,1,1,0,7,5,5,4]3099; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]3100; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[0,2],ymm3[1,3],ymm2[4,6],ymm3[5,7]3101; AVX2-FCP-NEXT:    vbroadcastss 208(%rdi), %ymm113102; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm11[7]3103; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]3104; AVX2-FCP-NEXT:    vmovdqu %ymm0, (%rsp) # 32-byte Spill3105; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm4[0],ymm5[1],ymm4[2,3,4,5,6,7]3106; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm14[0,1,2],mem[3]3107; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm1 = xmm1[3,2,2,3]3108; AVX2-FCP-NEXT:    vpshufd {{.*#+}} ymm0 = ymm0[3,1,1,0,7,5,5,4]3109; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]3110; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm7[0,2],ymm9[1,3],ymm7[4,6],ymm9[5,7]3111; AVX2-FCP-NEXT:    vbroadcastss 432(%rdi), %ymm43112; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm4[7]3113; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]3114; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill3115; AVX2-FCP-NEXT:    vpbroadcastd 100(%rdi), %xmm03116; AVX2-FCP-NEXT:    vmovdqa 64(%rdi), %xmm13117; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm0 = xmm1[0,1,2],xmm0[3]3118; AVX2-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm4 = [4,3,0,0]3119; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm6[0,1,2,3],ymm10[4,5,6,7]3120; AVX2-FCP-NEXT:    vmovdqa %ymm6, %ymm153121; AVX2-FCP-NEXT:    vpermd %ymm5, %ymm4, %ymm53122; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm5 = xmm5[0,1],xmm0[2,3]3123; AVX2-FCP-NEXT:    vpbroadcastq {{.*#+}} ymm0 = [0,7,0,7,0,7,0,7]3124; AVX2-FCP-NEXT:    vpermd %ymm2, %ymm0, %ymm113125; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm11 = ymm11[0,1,2,3,4,5],ymm3[6,7]3126; AVX2-FCP-NEXT:    vpbroadcastd 212(%rdi), %ymm123127; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm11 = ymm11[0,1,2,3,4,5,6],ymm12[7]3128; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm12 = ymm5[0,1,2,3],ymm11[4,5,6,7]3129; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload3130; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload3131; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm14[0,1,2,3],ymm6[4,5,6,7]3132; AVX2-FCP-NEXT:    vpermd %ymm5, %ymm4, %ymm43133; AVX2-FCP-NEXT:    vpbroadcastd 324(%rdi), %xmm53134; AVX2-FCP-NEXT:    vmovdqa 288(%rdi), %xmm133135; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm5 = xmm13[0,1,2],xmm5[3]3136; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm4 = xmm4[0,1],xmm5[2,3]3137; AVX2-FCP-NEXT:    vpermd %ymm7, %ymm0, %ymm53138; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm5[0,1,2,3,4,5],ymm9[6,7]3139; AVX2-FCP-NEXT:    vpbroadcastd 436(%rdi), %ymm113140; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm5[0,1,2,3,4,5,6],ymm11[7]3141; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm11 = ymm4[0,1,2,3],ymm5[4,5,6,7]3142; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm3[0],ymm2[1],ymm3[2,3,4],ymm2[5],ymm3[6,7]3143; AVX2-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm3 = [1,0,3,3,1,0,7,7]3144; AVX2-FCP-NEXT:    vpermd %ymm2, %ymm3, %ymm23145; AVX2-FCP-NEXT:    vpbroadcastd 216(%rdi), %ymm43146; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm4[7]3147; AVX2-FCP-NEXT:    vmovdqa 96(%rdi), %xmm43148; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm4[0,1,2],xmm1[3]3149; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm1 = xmm1[0,1,3,2]3150; AVX2-FCP-NEXT:    vpshufd {{.*#+}} ymm5 = ymm8[1,0,2,3,5,4,6,7]3151; AVX2-FCP-NEXT:    vextracti128 $1, %ymm5, %xmm53152; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm5[0,1],xmm1[2,3]3153; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]3154; AVX2-FCP-NEXT:    vmovdqa 320(%rdi), %xmm83155; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm2 = xmm8[0,1,2],xmm13[3]3156; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm2 = xmm2[0,1,3,2]3157; AVX2-FCP-NEXT:    vpshufd $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Folded Reload3158; AVX2-FCP-NEXT:    # ymm5 = mem[1,0,2,3,5,4,6,7]3159; AVX2-FCP-NEXT:    vextracti128 $1, %ymm5, %xmm53160; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm2 = xmm5[0,1],xmm2[2,3]3161; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm9[0],ymm7[1],ymm9[2,3,4],ymm7[5],ymm9[6,7]3162; AVX2-FCP-NEXT:    vpermd %ymm5, %ymm3, %ymm33163; AVX2-FCP-NEXT:    vpbroadcastd 440(%rdi), %ymm53164; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5,6],ymm5[7]3165; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6,7]3166; AVX2-FCP-NEXT:    vpbroadcastd 136(%rdi), %xmm33167; AVX2-FCP-NEXT:    vpblendd $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload3168; AVX2-FCP-NEXT:    # xmm3 = xmm3[0],mem[1],xmm3[2,3]3169; AVX2-FCP-NEXT:    vinserti128 $1, %xmm3, %ymm0, %ymm33170; AVX2-FCP-NEXT:    vpermd 192(%rdi), %ymm0, %ymm53171; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5],ymm5[6,7]3172; AVX2-FCP-NEXT:    vpbroadcastd 80(%rdi), %ymm53173; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm4 = xmm5[0,1,2],xmm4[3]3174; AVX2-FCP-NEXT:    vpshufd {{.*#+}} ymm5 = ymm10[2,3,2,3,6,7,6,7]3175; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm5[0],ymm15[1],ymm5[2,3,4],ymm15[5],ymm5[6,7]3176; AVX2-FCP-NEXT:    vextracti128 $1, %ymm5, %xmm53177; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm4 = xmm5[0,1],xmm4[2,3]3178; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm3 = ymm4[0,1,2,3],ymm3[4,5,6,7]3179; AVX2-FCP-NEXT:    vpbroadcastd 360(%rdi), %xmm43180; AVX2-FCP-NEXT:    vpblendd $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4, %xmm4 # 16-byte Folded Reload3181; AVX2-FCP-NEXT:    # xmm4 = xmm4[0],mem[1],xmm4[2,3]3182; AVX2-FCP-NEXT:    vpermd 416(%rdi), %ymm0, %ymm03183; AVX2-FCP-NEXT:    vinserti128 $1, %xmm4, %ymm0, %ymm43184; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm4[0,1,2,3,4,5],ymm0[6,7]3185; AVX2-FCP-NEXT:    vpbroadcastd 304(%rdi), %ymm43186; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm4 = xmm4[0,1,2],xmm8[3]3187; AVX2-FCP-NEXT:    vpshufd {{.*#+}} ymm5 = ymm6[2,3,2,3,6,7,6,7]3188; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm5[0],ymm14[1],ymm5[2,3,4],ymm14[5],ymm5[6,7]3189; AVX2-FCP-NEXT:    vextracti128 $1, %ymm5, %xmm53190; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm4 = xmm5[0,1],xmm4[2,3]3191; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm4[0,1,2,3],ymm0[4,5,6,7]3192; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload3193; AVX2-FCP-NEXT:    vmovaps %ymm4, 32(%rsi)3194; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload3195; AVX2-FCP-NEXT:    vmovaps %ymm4, (%rsi)3196; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload3197; AVX2-FCP-NEXT:    vmovaps %ymm4, 32(%rdx)3198; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload3199; AVX2-FCP-NEXT:    vmovaps %ymm4, (%rdx)3200; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload3201; AVX2-FCP-NEXT:    vmovaps %ymm4, 32(%rcx)3202; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload3203; AVX2-FCP-NEXT:    vmovaps %ymm4, (%rcx)3204; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload3205; AVX2-FCP-NEXT:    vmovaps %ymm4, 32(%r8)3206; AVX2-FCP-NEXT:    vmovups (%rsp), %ymm4 # 32-byte Reload3207; AVX2-FCP-NEXT:    vmovaps %ymm4, (%r8)3208; AVX2-FCP-NEXT:    vmovdqa %ymm11, 32(%r9)3209; AVX2-FCP-NEXT:    vmovdqa %ymm12, (%r9)3210; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax3211; AVX2-FCP-NEXT:    vmovdqa %ymm2, 32(%rax)3212; AVX2-FCP-NEXT:    vmovdqa %ymm1, (%rax)3213; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax3214; AVX2-FCP-NEXT:    vmovdqa %ymm0, 32(%rax)3215; AVX2-FCP-NEXT:    vmovdqa %ymm3, (%rax)3216; AVX2-FCP-NEXT:    addq $264, %rsp # imm = 0x1083217; AVX2-FCP-NEXT:    vzeroupper3218; AVX2-FCP-NEXT:    retq3219;3220; AVX512-LABEL: load_i32_stride7_vf16:3221; AVX512:       # %bb.0:3222; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %rax3223; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %r103224; AVX512-NEXT:    vmovdqa64 384(%rdi), %zmm13225; AVX512-NEXT:    vmovdqa64 320(%rdi), %zmm53226; AVX512-NEXT:    vmovdqa64 256(%rdi), %zmm43227; AVX512-NEXT:    vmovdqa64 (%rdi), %zmm03228; AVX512-NEXT:    vmovdqa64 64(%rdi), %zmm23229; AVX512-NEXT:    vmovdqa64 128(%rdi), %zmm83230; AVX512-NEXT:    vmovdqa64 192(%rdi), %zmm73231; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm6 = [8,15,0,0,0,19,26,1,8,15,0,0,0,19,26,1]3232; AVX512-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3]3233; AVX512-NEXT:    vpermi2d %zmm8, %zmm7, %zmm63234; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm3 = [0,7,14,21,28,0,0,0]3235; AVX512-NEXT:    vpermi2d %zmm2, %zmm0, %zmm33236; AVX512-NEXT:    movw $992, %di # imm = 0x3E03237; AVX512-NEXT:    kmovw %edi, %k13238; AVX512-NEXT:    vmovdqa32 %zmm6, %zmm3 {%k1}3239; AVX512-NEXT:    vbroadcasti32x4 {{.*#+}} zmm6 = [20,27,6,13,20,27,6,13,20,27,6,13,20,27,6,13]3240; AVX512-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3241; AVX512-NEXT:    vpermi2d %zmm5, %zmm4, %zmm63242; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm9 = [0,0,10,11,12,13,18,25,0,0,10,11,12,13,18,25]3243; AVX512-NEXT:    # zmm9 = mem[0,1,2,3,0,1,2,3]3244; AVX512-NEXT:    vpermi2d %zmm1, %zmm6, %zmm93245; AVX512-NEXT:    movb $-32, %dil3246; AVX512-NEXT:    kmovw %edi, %k13247; AVX512-NEXT:    vmovdqa64 %zmm9, %zmm3 {%k1}3248; AVX512-NEXT:    vbroadcasti32x4 {{.*#+}} zmm6 = [25,4,11,18,25,4,11,18,25,4,11,18,25,4,11,18]3249; AVX512-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3250; AVX512-NEXT:    vmovdqa64 %zmm8, %zmm93251; AVX512-NEXT:    vbroadcasti32x4 {{.*#+}} zmm10 = [27,6,13,20,27,6,13,20,27,6,13,20,27,6,13,20]3252; AVX512-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3253; AVX512-NEXT:    vpermi2d %zmm7, %zmm8, %zmm103254; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm11 = [28,0,0,0,0,7,14,21,28,0,0,0,0,7,14,21]3255; AVX512-NEXT:    # zmm11 = mem[0,1,2,3,0,1,2,3]3256; AVX512-NEXT:    vpermi2d %zmm7, %zmm8, %zmm113257; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm12 = [29,0,0,0,1,8,15,22,29,0,0,0,1,8,15,22]3258; AVX512-NEXT:    # zmm12 = mem[0,1,2,3,0,1,2,3]3259; AVX512-NEXT:    vpermi2d %zmm7, %zmm8, %zmm123260; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm13 = [14,0,0,0,18,25,0,7,14,0,0,0,18,25,0,7]3261; AVX512-NEXT:    # zmm13 = mem[0,1,2,3,0,1,2,3]3262; AVX512-NEXT:    vpermi2d %zmm8, %zmm7, %zmm133263; AVX512-NEXT:    vpermt2d %zmm7, %zmm6, %zmm83264; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm14 = [1,8,15,22,29,0,0,0]3265; AVX512-NEXT:    vpermi2d %zmm2, %zmm0, %zmm143266; AVX512-NEXT:    movw $480, %di # imm = 0x1E03267; AVX512-NEXT:    kmovw %edi, %k23268; AVX512-NEXT:    vmovdqa32 %zmm8, %zmm14 {%k2}3269; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm8 = [0,0,7,14,21,28,0,0,0,0,7,14,21,28,0,0]3270; AVX512-NEXT:    # zmm8 = mem[0,1,2,3,0,1,2,3]3271; AVX512-NEXT:    vpermi2d %zmm5, %zmm4, %zmm83272; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,19,26,0,9,10,11,12,13,19,26]3273; AVX512-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3274; AVX512-NEXT:    vpermi2d %zmm1, %zmm8, %zmm153275; AVX512-NEXT:    movw $-512, %di # imm = 0xFE003276; AVX512-NEXT:    kmovw %edi, %k13277; AVX512-NEXT:    vmovdqa32 %zmm15, %zmm14 {%k1}3278; AVX512-NEXT:    vbroadcasti32x4 {{.*#+}} zmm8 = [26,5,12,19,26,5,12,19,26,5,12,19,26,5,12,19]3279; AVX512-NEXT:    # zmm8 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3280; AVX512-NEXT:    vpermt2d %zmm7, %zmm8, %zmm93281; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [18,25,0,7,14,0,0,0]3282; AVX512-NEXT:    vpermi2d %zmm0, %zmm2, %zmm73283; AVX512-NEXT:    vmovdqa32 %zmm9, %zmm7 {%k2}3284; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm9 = [0,1,8,15,22,29,0,0,0,1,8,15,22,29,0,0]3285; AVX512-NEXT:    # zmm9 = mem[0,1,2,3,0,1,2,3]3286; AVX512-NEXT:    vpermi2d %zmm5, %zmm4, %zmm93287; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,20,27,0,9,10,11,12,13,20,27]3288; AVX512-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3289; AVX512-NEXT:    vpermi2d %zmm1, %zmm9, %zmm153290; AVX512-NEXT:    vmovdqa32 %zmm15, %zmm7 {%k1}3291; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm9 = [19,26,1,8,15,0,0,0]3292; AVX512-NEXT:    vpermi2d %zmm0, %zmm2, %zmm93293; AVX512-NEXT:    vmovdqa32 %zmm10, %zmm9 {%k2}3294; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm10 = [0,18,25,0,7,14,0,0,0,18,25,0,7,14,0,0]3295; AVX512-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3]3296; AVX512-NEXT:    vpermi2d %zmm4, %zmm5, %zmm103297; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,21,28,0,9,10,11,12,13,21,28]3298; AVX512-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3299; AVX512-NEXT:    vpermi2d %zmm1, %zmm10, %zmm153300; AVX512-NEXT:    vmovdqa32 %zmm15, %zmm9 {%k1}3301; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm10 = [0,19,26,1,8,15,0,0,0,19,26,1,8,15,0,0]3302; AVX512-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3]3303; AVX512-NEXT:    vpermi2d %zmm4, %zmm5, %zmm103304; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,22,29,0,9,10,11,12,13,22,29]3305; AVX512-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3306; AVX512-NEXT:    vpermi2d %zmm1, %zmm10, %zmm153307; AVX512-NEXT:    vpmovsxbd {{.*#+}} xmm10 = [4,11,18,25]3308; AVX512-NEXT:    vpermi2d %zmm2, %zmm0, %zmm103309; AVX512-NEXT:    vinserti32x4 $0, %xmm10, %zmm11, %zmm103310; AVX512-NEXT:    vmovdqa32 %zmm15, %zmm10 {%k1}3311; AVX512-NEXT:    vpermi2d %zmm5, %zmm4, %zmm63312; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm11 = [0,9,10,11,12,16,23,30,0,9,10,11,12,16,23,30]3313; AVX512-NEXT:    # zmm11 = mem[0,1,2,3,0,1,2,3]3314; AVX512-NEXT:    vpermi2d %zmm1, %zmm6, %zmm113315; AVX512-NEXT:    vpmovsxbd {{.*#+}} xmm6 = [5,12,19,26]3316; AVX512-NEXT:    vpermi2d %zmm2, %zmm0, %zmm63317; AVX512-NEXT:    vinserti32x4 $0, %xmm6, %zmm12, %zmm63318; AVX512-NEXT:    vmovdqa32 %zmm11, %zmm6 {%k1}3319; AVX512-NEXT:    vpermt2d %zmm5, %zmm8, %zmm43320; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm5 = [0,9,10,11,12,17,24,31,0,9,10,11,12,17,24,31]3321; AVX512-NEXT:    # zmm5 = mem[0,1,2,3,0,1,2,3]3322; AVX512-NEXT:    vpermi2d %zmm1, %zmm4, %zmm53323; AVX512-NEXT:    vpmovsxbd {{.*#+}} xmm1 = [6,13,20,27]3324; AVX512-NEXT:    vpermi2d %zmm2, %zmm0, %zmm13325; AVX512-NEXT:    vinserti32x4 $0, %xmm1, %zmm13, %zmm03326; AVX512-NEXT:    vmovdqa32 %zmm5, %zmm0 {%k1}3327; AVX512-NEXT:    vmovdqa64 %zmm3, (%rsi)3328; AVX512-NEXT:    vmovdqa64 %zmm14, (%rdx)3329; AVX512-NEXT:    vmovdqa64 %zmm7, (%rcx)3330; AVX512-NEXT:    vmovdqa64 %zmm9, (%r8)3331; AVX512-NEXT:    vmovdqa64 %zmm10, (%r9)3332; AVX512-NEXT:    vmovdqa64 %zmm6, (%r10)3333; AVX512-NEXT:    vmovdqa64 %zmm0, (%rax)3334; AVX512-NEXT:    vzeroupper3335; AVX512-NEXT:    retq3336;3337; AVX512-FCP-LABEL: load_i32_stride7_vf16:3338; AVX512-FCP:       # %bb.0:3339; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax3340; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r103341; AVX512-FCP-NEXT:    vmovdqa64 384(%rdi), %zmm13342; AVX512-FCP-NEXT:    vmovdqa64 320(%rdi), %zmm53343; AVX512-FCP-NEXT:    vmovdqa64 256(%rdi), %zmm43344; AVX512-FCP-NEXT:    vmovdqa64 (%rdi), %zmm03345; AVX512-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm23346; AVX512-FCP-NEXT:    vmovdqa64 128(%rdi), %zmm83347; AVX512-FCP-NEXT:    vmovdqa64 192(%rdi), %zmm73348; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm6 = [8,15,0,0,0,19,26,1,8,15,0,0,0,19,26,1]3349; AVX512-FCP-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3]3350; AVX512-FCP-NEXT:    vpermi2d %zmm8, %zmm7, %zmm63351; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm3 = [0,7,14,21,28,0,0,0]3352; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm0, %zmm33353; AVX512-FCP-NEXT:    movw $992, %di # imm = 0x3E03354; AVX512-FCP-NEXT:    kmovw %edi, %k13355; AVX512-FCP-NEXT:    vmovdqa32 %zmm6, %zmm3 {%k1}3356; AVX512-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm6 = [20,27,6,13,20,27,6,13,20,27,6,13,20,27,6,13]3357; AVX512-FCP-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3358; AVX512-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm63359; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm9 = [0,0,10,11,12,13,18,25,0,0,10,11,12,13,18,25]3360; AVX512-FCP-NEXT:    # zmm9 = mem[0,1,2,3,0,1,2,3]3361; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm6, %zmm93362; AVX512-FCP-NEXT:    movb $-32, %dil3363; AVX512-FCP-NEXT:    kmovw %edi, %k13364; AVX512-FCP-NEXT:    vmovdqa64 %zmm9, %zmm3 {%k1}3365; AVX512-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm6 = [25,4,11,18,25,4,11,18,25,4,11,18,25,4,11,18]3366; AVX512-FCP-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3367; AVX512-FCP-NEXT:    vmovdqa64 %zmm8, %zmm93368; AVX512-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm10 = [27,6,13,20,27,6,13,20,27,6,13,20,27,6,13,20]3369; AVX512-FCP-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3370; AVX512-FCP-NEXT:    vpermi2d %zmm7, %zmm8, %zmm103371; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm11 = [28,0,0,0,0,7,14,21,28,0,0,0,0,7,14,21]3372; AVX512-FCP-NEXT:    # zmm11 = mem[0,1,2,3,0,1,2,3]3373; AVX512-FCP-NEXT:    vpermi2d %zmm7, %zmm8, %zmm113374; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm12 = [29,0,0,0,1,8,15,22,29,0,0,0,1,8,15,22]3375; AVX512-FCP-NEXT:    # zmm12 = mem[0,1,2,3,0,1,2,3]3376; AVX512-FCP-NEXT:    vpermi2d %zmm7, %zmm8, %zmm123377; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm13 = [14,0,0,0,18,25,0,7,14,0,0,0,18,25,0,7]3378; AVX512-FCP-NEXT:    # zmm13 = mem[0,1,2,3,0,1,2,3]3379; AVX512-FCP-NEXT:    vpermi2d %zmm8, %zmm7, %zmm133380; AVX512-FCP-NEXT:    vpermt2d %zmm7, %zmm6, %zmm83381; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm14 = [1,8,15,22,29,0,0,0]3382; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm0, %zmm143383; AVX512-FCP-NEXT:    movw $480, %di # imm = 0x1E03384; AVX512-FCP-NEXT:    kmovw %edi, %k23385; AVX512-FCP-NEXT:    vmovdqa32 %zmm8, %zmm14 {%k2}3386; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm8 = [0,0,7,14,21,28,0,0,0,0,7,14,21,28,0,0]3387; AVX512-FCP-NEXT:    # zmm8 = mem[0,1,2,3,0,1,2,3]3388; AVX512-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm83389; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,19,26,0,9,10,11,12,13,19,26]3390; AVX512-FCP-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3391; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm8, %zmm153392; AVX512-FCP-NEXT:    movw $-512, %di # imm = 0xFE003393; AVX512-FCP-NEXT:    kmovw %edi, %k13394; AVX512-FCP-NEXT:    vmovdqa32 %zmm15, %zmm14 {%k1}3395; AVX512-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm8 = [26,5,12,19,26,5,12,19,26,5,12,19,26,5,12,19]3396; AVX512-FCP-NEXT:    # zmm8 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3397; AVX512-FCP-NEXT:    vpermt2d %zmm7, %zmm8, %zmm93398; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [18,25,0,7,14,0,0,0]3399; AVX512-FCP-NEXT:    vpermi2d %zmm0, %zmm2, %zmm73400; AVX512-FCP-NEXT:    vmovdqa32 %zmm9, %zmm7 {%k2}3401; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm9 = [0,1,8,15,22,29,0,0,0,1,8,15,22,29,0,0]3402; AVX512-FCP-NEXT:    # zmm9 = mem[0,1,2,3,0,1,2,3]3403; AVX512-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm93404; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,20,27,0,9,10,11,12,13,20,27]3405; AVX512-FCP-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3406; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm9, %zmm153407; AVX512-FCP-NEXT:    vmovdqa32 %zmm15, %zmm7 {%k1}3408; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm9 = [19,26,1,8,15,0,0,0]3409; AVX512-FCP-NEXT:    vpermi2d %zmm0, %zmm2, %zmm93410; AVX512-FCP-NEXT:    vmovdqa32 %zmm10, %zmm9 {%k2}3411; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm10 = [0,18,25,0,7,14,0,0,0,18,25,0,7,14,0,0]3412; AVX512-FCP-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3]3413; AVX512-FCP-NEXT:    vpermi2d %zmm4, %zmm5, %zmm103414; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,21,28,0,9,10,11,12,13,21,28]3415; AVX512-FCP-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3416; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm10, %zmm153417; AVX512-FCP-NEXT:    vmovdqa32 %zmm15, %zmm9 {%k1}3418; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm10 = [0,19,26,1,8,15,0,0,0,19,26,1,8,15,0,0]3419; AVX512-FCP-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3]3420; AVX512-FCP-NEXT:    vpermi2d %zmm4, %zmm5, %zmm103421; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,22,29,0,9,10,11,12,13,22,29]3422; AVX512-FCP-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3423; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm10, %zmm153424; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm10 = [4,11,18,25]3425; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm0, %zmm103426; AVX512-FCP-NEXT:    vinserti32x4 $0, %xmm10, %zmm11, %zmm103427; AVX512-FCP-NEXT:    vmovdqa32 %zmm15, %zmm10 {%k1}3428; AVX512-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm63429; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm11 = [0,9,10,11,12,16,23,30,0,9,10,11,12,16,23,30]3430; AVX512-FCP-NEXT:    # zmm11 = mem[0,1,2,3,0,1,2,3]3431; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm6, %zmm113432; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm6 = [5,12,19,26]3433; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm0, %zmm63434; AVX512-FCP-NEXT:    vinserti32x4 $0, %xmm6, %zmm12, %zmm63435; AVX512-FCP-NEXT:    vmovdqa32 %zmm11, %zmm6 {%k1}3436; AVX512-FCP-NEXT:    vpermt2d %zmm5, %zmm8, %zmm43437; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm5 = [0,9,10,11,12,17,24,31,0,9,10,11,12,17,24,31]3438; AVX512-FCP-NEXT:    # zmm5 = mem[0,1,2,3,0,1,2,3]3439; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm4, %zmm53440; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm1 = [6,13,20,27]3441; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm0, %zmm13442; AVX512-FCP-NEXT:    vinserti32x4 $0, %xmm1, %zmm13, %zmm03443; AVX512-FCP-NEXT:    vmovdqa32 %zmm5, %zmm0 {%k1}3444; AVX512-FCP-NEXT:    vmovdqa64 %zmm3, (%rsi)3445; AVX512-FCP-NEXT:    vmovdqa64 %zmm14, (%rdx)3446; AVX512-FCP-NEXT:    vmovdqa64 %zmm7, (%rcx)3447; AVX512-FCP-NEXT:    vmovdqa64 %zmm9, (%r8)3448; AVX512-FCP-NEXT:    vmovdqa64 %zmm10, (%r9)3449; AVX512-FCP-NEXT:    vmovdqa64 %zmm6, (%r10)3450; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, (%rax)3451; AVX512-FCP-NEXT:    vzeroupper3452; AVX512-FCP-NEXT:    retq3453;3454; AVX512DQ-LABEL: load_i32_stride7_vf16:3455; AVX512DQ:       # %bb.0:3456; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %rax3457; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %r103458; AVX512DQ-NEXT:    vmovdqa64 384(%rdi), %zmm13459; AVX512DQ-NEXT:    vmovdqa64 320(%rdi), %zmm53460; AVX512DQ-NEXT:    vmovdqa64 256(%rdi), %zmm43461; AVX512DQ-NEXT:    vmovdqa64 (%rdi), %zmm03462; AVX512DQ-NEXT:    vmovdqa64 64(%rdi), %zmm23463; AVX512DQ-NEXT:    vmovdqa64 128(%rdi), %zmm83464; AVX512DQ-NEXT:    vmovdqa64 192(%rdi), %zmm73465; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm6 = [8,15,0,0,0,19,26,1,8,15,0,0,0,19,26,1]3466; AVX512DQ-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3]3467; AVX512DQ-NEXT:    vpermi2d %zmm8, %zmm7, %zmm63468; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm3 = [0,7,14,21,28,0,0,0]3469; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm0, %zmm33470; AVX512DQ-NEXT:    movw $992, %di # imm = 0x3E03471; AVX512DQ-NEXT:    kmovw %edi, %k13472; AVX512DQ-NEXT:    vmovdqa32 %zmm6, %zmm3 {%k1}3473; AVX512DQ-NEXT:    vbroadcasti32x4 {{.*#+}} zmm6 = [20,27,6,13,20,27,6,13,20,27,6,13,20,27,6,13]3474; AVX512DQ-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3475; AVX512DQ-NEXT:    vpermi2d %zmm5, %zmm4, %zmm63476; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm9 = [0,0,10,11,12,13,18,25,0,0,10,11,12,13,18,25]3477; AVX512DQ-NEXT:    # zmm9 = mem[0,1,2,3,0,1,2,3]3478; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm6, %zmm93479; AVX512DQ-NEXT:    movb $-32, %dil3480; AVX512DQ-NEXT:    kmovw %edi, %k13481; AVX512DQ-NEXT:    vmovdqa64 %zmm9, %zmm3 {%k1}3482; AVX512DQ-NEXT:    vbroadcasti32x4 {{.*#+}} zmm6 = [25,4,11,18,25,4,11,18,25,4,11,18,25,4,11,18]3483; AVX512DQ-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3484; AVX512DQ-NEXT:    vmovdqa64 %zmm8, %zmm93485; AVX512DQ-NEXT:    vbroadcasti32x4 {{.*#+}} zmm10 = [27,6,13,20,27,6,13,20,27,6,13,20,27,6,13,20]3486; AVX512DQ-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3487; AVX512DQ-NEXT:    vpermi2d %zmm7, %zmm8, %zmm103488; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm11 = [28,0,0,0,0,7,14,21,28,0,0,0,0,7,14,21]3489; AVX512DQ-NEXT:    # zmm11 = mem[0,1,2,3,0,1,2,3]3490; AVX512DQ-NEXT:    vpermi2d %zmm7, %zmm8, %zmm113491; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm12 = [29,0,0,0,1,8,15,22,29,0,0,0,1,8,15,22]3492; AVX512DQ-NEXT:    # zmm12 = mem[0,1,2,3,0,1,2,3]3493; AVX512DQ-NEXT:    vpermi2d %zmm7, %zmm8, %zmm123494; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm13 = [14,0,0,0,18,25,0,7,14,0,0,0,18,25,0,7]3495; AVX512DQ-NEXT:    # zmm13 = mem[0,1,2,3,0,1,2,3]3496; AVX512DQ-NEXT:    vpermi2d %zmm8, %zmm7, %zmm133497; AVX512DQ-NEXT:    vpermt2d %zmm7, %zmm6, %zmm83498; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm14 = [1,8,15,22,29,0,0,0]3499; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm0, %zmm143500; AVX512DQ-NEXT:    movw $480, %di # imm = 0x1E03501; AVX512DQ-NEXT:    kmovw %edi, %k23502; AVX512DQ-NEXT:    vmovdqa32 %zmm8, %zmm14 {%k2}3503; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm8 = [0,0,7,14,21,28,0,0,0,0,7,14,21,28,0,0]3504; AVX512DQ-NEXT:    # zmm8 = mem[0,1,2,3,0,1,2,3]3505; AVX512DQ-NEXT:    vpermi2d %zmm5, %zmm4, %zmm83506; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,19,26,0,9,10,11,12,13,19,26]3507; AVX512DQ-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3508; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm8, %zmm153509; AVX512DQ-NEXT:    movw $-512, %di # imm = 0xFE003510; AVX512DQ-NEXT:    kmovw %edi, %k13511; AVX512DQ-NEXT:    vmovdqa32 %zmm15, %zmm14 {%k1}3512; AVX512DQ-NEXT:    vbroadcasti32x4 {{.*#+}} zmm8 = [26,5,12,19,26,5,12,19,26,5,12,19,26,5,12,19]3513; AVX512DQ-NEXT:    # zmm8 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3514; AVX512DQ-NEXT:    vpermt2d %zmm7, %zmm8, %zmm93515; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [18,25,0,7,14,0,0,0]3516; AVX512DQ-NEXT:    vpermi2d %zmm0, %zmm2, %zmm73517; AVX512DQ-NEXT:    vmovdqa32 %zmm9, %zmm7 {%k2}3518; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm9 = [0,1,8,15,22,29,0,0,0,1,8,15,22,29,0,0]3519; AVX512DQ-NEXT:    # zmm9 = mem[0,1,2,3,0,1,2,3]3520; AVX512DQ-NEXT:    vpermi2d %zmm5, %zmm4, %zmm93521; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,20,27,0,9,10,11,12,13,20,27]3522; AVX512DQ-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3523; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm9, %zmm153524; AVX512DQ-NEXT:    vmovdqa32 %zmm15, %zmm7 {%k1}3525; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm9 = [19,26,1,8,15,0,0,0]3526; AVX512DQ-NEXT:    vpermi2d %zmm0, %zmm2, %zmm93527; AVX512DQ-NEXT:    vmovdqa32 %zmm10, %zmm9 {%k2}3528; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm10 = [0,18,25,0,7,14,0,0,0,18,25,0,7,14,0,0]3529; AVX512DQ-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3]3530; AVX512DQ-NEXT:    vpermi2d %zmm4, %zmm5, %zmm103531; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,21,28,0,9,10,11,12,13,21,28]3532; AVX512DQ-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3533; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm10, %zmm153534; AVX512DQ-NEXT:    vmovdqa32 %zmm15, %zmm9 {%k1}3535; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm10 = [0,19,26,1,8,15,0,0,0,19,26,1,8,15,0,0]3536; AVX512DQ-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3]3537; AVX512DQ-NEXT:    vpermi2d %zmm4, %zmm5, %zmm103538; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,22,29,0,9,10,11,12,13,22,29]3539; AVX512DQ-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3540; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm10, %zmm153541; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} xmm10 = [4,11,18,25]3542; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm0, %zmm103543; AVX512DQ-NEXT:    vinserti32x4 $0, %xmm10, %zmm11, %zmm103544; AVX512DQ-NEXT:    vmovdqa32 %zmm15, %zmm10 {%k1}3545; AVX512DQ-NEXT:    vpermi2d %zmm5, %zmm4, %zmm63546; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm11 = [0,9,10,11,12,16,23,30,0,9,10,11,12,16,23,30]3547; AVX512DQ-NEXT:    # zmm11 = mem[0,1,2,3,0,1,2,3]3548; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm6, %zmm113549; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} xmm6 = [5,12,19,26]3550; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm0, %zmm63551; AVX512DQ-NEXT:    vinserti32x4 $0, %xmm6, %zmm12, %zmm63552; AVX512DQ-NEXT:    vmovdqa32 %zmm11, %zmm6 {%k1}3553; AVX512DQ-NEXT:    vpermt2d %zmm5, %zmm8, %zmm43554; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm5 = [0,9,10,11,12,17,24,31,0,9,10,11,12,17,24,31]3555; AVX512DQ-NEXT:    # zmm5 = mem[0,1,2,3,0,1,2,3]3556; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm4, %zmm53557; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} xmm1 = [6,13,20,27]3558; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm0, %zmm13559; AVX512DQ-NEXT:    vinserti32x4 $0, %xmm1, %zmm13, %zmm03560; AVX512DQ-NEXT:    vmovdqa32 %zmm5, %zmm0 {%k1}3561; AVX512DQ-NEXT:    vmovdqa64 %zmm3, (%rsi)3562; AVX512DQ-NEXT:    vmovdqa64 %zmm14, (%rdx)3563; AVX512DQ-NEXT:    vmovdqa64 %zmm7, (%rcx)3564; AVX512DQ-NEXT:    vmovdqa64 %zmm9, (%r8)3565; AVX512DQ-NEXT:    vmovdqa64 %zmm10, (%r9)3566; AVX512DQ-NEXT:    vmovdqa64 %zmm6, (%r10)3567; AVX512DQ-NEXT:    vmovdqa64 %zmm0, (%rax)3568; AVX512DQ-NEXT:    vzeroupper3569; AVX512DQ-NEXT:    retq3570;3571; AVX512DQ-FCP-LABEL: load_i32_stride7_vf16:3572; AVX512DQ-FCP:       # %bb.0:3573; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax3574; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r103575; AVX512DQ-FCP-NEXT:    vmovdqa64 384(%rdi), %zmm13576; AVX512DQ-FCP-NEXT:    vmovdqa64 320(%rdi), %zmm53577; AVX512DQ-FCP-NEXT:    vmovdqa64 256(%rdi), %zmm43578; AVX512DQ-FCP-NEXT:    vmovdqa64 (%rdi), %zmm03579; AVX512DQ-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm23580; AVX512DQ-FCP-NEXT:    vmovdqa64 128(%rdi), %zmm83581; AVX512DQ-FCP-NEXT:    vmovdqa64 192(%rdi), %zmm73582; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm6 = [8,15,0,0,0,19,26,1,8,15,0,0,0,19,26,1]3583; AVX512DQ-FCP-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3]3584; AVX512DQ-FCP-NEXT:    vpermi2d %zmm8, %zmm7, %zmm63585; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm3 = [0,7,14,21,28,0,0,0]3586; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm0, %zmm33587; AVX512DQ-FCP-NEXT:    movw $992, %di # imm = 0x3E03588; AVX512DQ-FCP-NEXT:    kmovw %edi, %k13589; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm6, %zmm3 {%k1}3590; AVX512DQ-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm6 = [20,27,6,13,20,27,6,13,20,27,6,13,20,27,6,13]3591; AVX512DQ-FCP-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3592; AVX512DQ-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm63593; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm9 = [0,0,10,11,12,13,18,25,0,0,10,11,12,13,18,25]3594; AVX512DQ-FCP-NEXT:    # zmm9 = mem[0,1,2,3,0,1,2,3]3595; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm6, %zmm93596; AVX512DQ-FCP-NEXT:    movb $-32, %dil3597; AVX512DQ-FCP-NEXT:    kmovw %edi, %k13598; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm9, %zmm3 {%k1}3599; AVX512DQ-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm6 = [25,4,11,18,25,4,11,18,25,4,11,18,25,4,11,18]3600; AVX512DQ-FCP-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3601; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm8, %zmm93602; AVX512DQ-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm10 = [27,6,13,20,27,6,13,20,27,6,13,20,27,6,13,20]3603; AVX512DQ-FCP-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3604; AVX512DQ-FCP-NEXT:    vpermi2d %zmm7, %zmm8, %zmm103605; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm11 = [28,0,0,0,0,7,14,21,28,0,0,0,0,7,14,21]3606; AVX512DQ-FCP-NEXT:    # zmm11 = mem[0,1,2,3,0,1,2,3]3607; AVX512DQ-FCP-NEXT:    vpermi2d %zmm7, %zmm8, %zmm113608; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm12 = [29,0,0,0,1,8,15,22,29,0,0,0,1,8,15,22]3609; AVX512DQ-FCP-NEXT:    # zmm12 = mem[0,1,2,3,0,1,2,3]3610; AVX512DQ-FCP-NEXT:    vpermi2d %zmm7, %zmm8, %zmm123611; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm13 = [14,0,0,0,18,25,0,7,14,0,0,0,18,25,0,7]3612; AVX512DQ-FCP-NEXT:    # zmm13 = mem[0,1,2,3,0,1,2,3]3613; AVX512DQ-FCP-NEXT:    vpermi2d %zmm8, %zmm7, %zmm133614; AVX512DQ-FCP-NEXT:    vpermt2d %zmm7, %zmm6, %zmm83615; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm14 = [1,8,15,22,29,0,0,0]3616; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm0, %zmm143617; AVX512DQ-FCP-NEXT:    movw $480, %di # imm = 0x1E03618; AVX512DQ-FCP-NEXT:    kmovw %edi, %k23619; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm8, %zmm14 {%k2}3620; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm8 = [0,0,7,14,21,28,0,0,0,0,7,14,21,28,0,0]3621; AVX512DQ-FCP-NEXT:    # zmm8 = mem[0,1,2,3,0,1,2,3]3622; AVX512DQ-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm83623; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,19,26,0,9,10,11,12,13,19,26]3624; AVX512DQ-FCP-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3625; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm8, %zmm153626; AVX512DQ-FCP-NEXT:    movw $-512, %di # imm = 0xFE003627; AVX512DQ-FCP-NEXT:    kmovw %edi, %k13628; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm15, %zmm14 {%k1}3629; AVX512DQ-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm8 = [26,5,12,19,26,5,12,19,26,5,12,19,26,5,12,19]3630; AVX512DQ-FCP-NEXT:    # zmm8 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3631; AVX512DQ-FCP-NEXT:    vpermt2d %zmm7, %zmm8, %zmm93632; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [18,25,0,7,14,0,0,0]3633; AVX512DQ-FCP-NEXT:    vpermi2d %zmm0, %zmm2, %zmm73634; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm9, %zmm7 {%k2}3635; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm9 = [0,1,8,15,22,29,0,0,0,1,8,15,22,29,0,0]3636; AVX512DQ-FCP-NEXT:    # zmm9 = mem[0,1,2,3,0,1,2,3]3637; AVX512DQ-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm93638; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,20,27,0,9,10,11,12,13,20,27]3639; AVX512DQ-FCP-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3640; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm9, %zmm153641; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm15, %zmm7 {%k1}3642; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm9 = [19,26,1,8,15,0,0,0]3643; AVX512DQ-FCP-NEXT:    vpermi2d %zmm0, %zmm2, %zmm93644; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm10, %zmm9 {%k2}3645; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm10 = [0,18,25,0,7,14,0,0,0,18,25,0,7,14,0,0]3646; AVX512DQ-FCP-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3]3647; AVX512DQ-FCP-NEXT:    vpermi2d %zmm4, %zmm5, %zmm103648; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,21,28,0,9,10,11,12,13,21,28]3649; AVX512DQ-FCP-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3650; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm10, %zmm153651; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm15, %zmm9 {%k1}3652; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm10 = [0,19,26,1,8,15,0,0,0,19,26,1,8,15,0,0]3653; AVX512DQ-FCP-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3]3654; AVX512DQ-FCP-NEXT:    vpermi2d %zmm4, %zmm5, %zmm103655; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,22,29,0,9,10,11,12,13,22,29]3656; AVX512DQ-FCP-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3657; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm10, %zmm153658; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm10 = [4,11,18,25]3659; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm0, %zmm103660; AVX512DQ-FCP-NEXT:    vinserti32x4 $0, %xmm10, %zmm11, %zmm103661; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm15, %zmm10 {%k1}3662; AVX512DQ-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm63663; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm11 = [0,9,10,11,12,16,23,30,0,9,10,11,12,16,23,30]3664; AVX512DQ-FCP-NEXT:    # zmm11 = mem[0,1,2,3,0,1,2,3]3665; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm6, %zmm113666; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm6 = [5,12,19,26]3667; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm0, %zmm63668; AVX512DQ-FCP-NEXT:    vinserti32x4 $0, %xmm6, %zmm12, %zmm63669; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm11, %zmm6 {%k1}3670; AVX512DQ-FCP-NEXT:    vpermt2d %zmm5, %zmm8, %zmm43671; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm5 = [0,9,10,11,12,17,24,31,0,9,10,11,12,17,24,31]3672; AVX512DQ-FCP-NEXT:    # zmm5 = mem[0,1,2,3,0,1,2,3]3673; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm4, %zmm53674; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm1 = [6,13,20,27]3675; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm0, %zmm13676; AVX512DQ-FCP-NEXT:    vinserti32x4 $0, %xmm1, %zmm13, %zmm03677; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm5, %zmm0 {%k1}3678; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm3, (%rsi)3679; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm14, (%rdx)3680; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm7, (%rcx)3681; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm9, (%r8)3682; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm10, (%r9)3683; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm6, (%r10)3684; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, (%rax)3685; AVX512DQ-FCP-NEXT:    vzeroupper3686; AVX512DQ-FCP-NEXT:    retq3687;3688; AVX512BW-LABEL: load_i32_stride7_vf16:3689; AVX512BW:       # %bb.0:3690; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax3691; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %r103692; AVX512BW-NEXT:    vmovdqa64 384(%rdi), %zmm13693; AVX512BW-NEXT:    vmovdqa64 320(%rdi), %zmm53694; AVX512BW-NEXT:    vmovdqa64 256(%rdi), %zmm43695; AVX512BW-NEXT:    vmovdqa64 (%rdi), %zmm03696; AVX512BW-NEXT:    vmovdqa64 64(%rdi), %zmm23697; AVX512BW-NEXT:    vmovdqa64 128(%rdi), %zmm83698; AVX512BW-NEXT:    vmovdqa64 192(%rdi), %zmm73699; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm6 = [8,15,0,0,0,19,26,1,8,15,0,0,0,19,26,1]3700; AVX512BW-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3]3701; AVX512BW-NEXT:    vpermi2d %zmm8, %zmm7, %zmm63702; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm3 = [0,7,14,21,28,0,0,0]3703; AVX512BW-NEXT:    vpermi2d %zmm2, %zmm0, %zmm33704; AVX512BW-NEXT:    movw $992, %di # imm = 0x3E03705; AVX512BW-NEXT:    kmovd %edi, %k13706; AVX512BW-NEXT:    vmovdqa32 %zmm6, %zmm3 {%k1}3707; AVX512BW-NEXT:    vbroadcasti32x4 {{.*#+}} zmm6 = [20,27,6,13,20,27,6,13,20,27,6,13,20,27,6,13]3708; AVX512BW-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3709; AVX512BW-NEXT:    vpermi2d %zmm5, %zmm4, %zmm63710; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm9 = [0,0,10,11,12,13,18,25,0,0,10,11,12,13,18,25]3711; AVX512BW-NEXT:    # zmm9 = mem[0,1,2,3,0,1,2,3]3712; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm6, %zmm93713; AVX512BW-NEXT:    movb $-32, %dil3714; AVX512BW-NEXT:    kmovd %edi, %k13715; AVX512BW-NEXT:    vmovdqa64 %zmm9, %zmm3 {%k1}3716; AVX512BW-NEXT:    vbroadcasti32x4 {{.*#+}} zmm6 = [25,4,11,18,25,4,11,18,25,4,11,18,25,4,11,18]3717; AVX512BW-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3718; AVX512BW-NEXT:    vmovdqa64 %zmm8, %zmm93719; AVX512BW-NEXT:    vbroadcasti32x4 {{.*#+}} zmm10 = [27,6,13,20,27,6,13,20,27,6,13,20,27,6,13,20]3720; AVX512BW-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3721; AVX512BW-NEXT:    vpermi2d %zmm7, %zmm8, %zmm103722; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm11 = [28,0,0,0,0,7,14,21,28,0,0,0,0,7,14,21]3723; AVX512BW-NEXT:    # zmm11 = mem[0,1,2,3,0,1,2,3]3724; AVX512BW-NEXT:    vpermi2d %zmm7, %zmm8, %zmm113725; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm12 = [29,0,0,0,1,8,15,22,29,0,0,0,1,8,15,22]3726; AVX512BW-NEXT:    # zmm12 = mem[0,1,2,3,0,1,2,3]3727; AVX512BW-NEXT:    vpermi2d %zmm7, %zmm8, %zmm123728; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm13 = [14,0,0,0,18,25,0,7,14,0,0,0,18,25,0,7]3729; AVX512BW-NEXT:    # zmm13 = mem[0,1,2,3,0,1,2,3]3730; AVX512BW-NEXT:    vpermi2d %zmm8, %zmm7, %zmm133731; AVX512BW-NEXT:    vpermt2d %zmm7, %zmm6, %zmm83732; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm14 = [1,8,15,22,29,0,0,0]3733; AVX512BW-NEXT:    vpermi2d %zmm2, %zmm0, %zmm143734; AVX512BW-NEXT:    movw $480, %di # imm = 0x1E03735; AVX512BW-NEXT:    kmovd %edi, %k23736; AVX512BW-NEXT:    vmovdqa32 %zmm8, %zmm14 {%k2}3737; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm8 = [0,0,7,14,21,28,0,0,0,0,7,14,21,28,0,0]3738; AVX512BW-NEXT:    # zmm8 = mem[0,1,2,3,0,1,2,3]3739; AVX512BW-NEXT:    vpermi2d %zmm5, %zmm4, %zmm83740; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,19,26,0,9,10,11,12,13,19,26]3741; AVX512BW-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3742; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm8, %zmm153743; AVX512BW-NEXT:    movw $-512, %di # imm = 0xFE003744; AVX512BW-NEXT:    kmovd %edi, %k13745; AVX512BW-NEXT:    vmovdqa32 %zmm15, %zmm14 {%k1}3746; AVX512BW-NEXT:    vbroadcasti32x4 {{.*#+}} zmm8 = [26,5,12,19,26,5,12,19,26,5,12,19,26,5,12,19]3747; AVX512BW-NEXT:    # zmm8 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3748; AVX512BW-NEXT:    vpermt2d %zmm7, %zmm8, %zmm93749; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [18,25,0,7,14,0,0,0]3750; AVX512BW-NEXT:    vpermi2d %zmm0, %zmm2, %zmm73751; AVX512BW-NEXT:    vmovdqa32 %zmm9, %zmm7 {%k2}3752; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm9 = [0,1,8,15,22,29,0,0,0,1,8,15,22,29,0,0]3753; AVX512BW-NEXT:    # zmm9 = mem[0,1,2,3,0,1,2,3]3754; AVX512BW-NEXT:    vpermi2d %zmm5, %zmm4, %zmm93755; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,20,27,0,9,10,11,12,13,20,27]3756; AVX512BW-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3757; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm9, %zmm153758; AVX512BW-NEXT:    vmovdqa32 %zmm15, %zmm7 {%k1}3759; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm9 = [19,26,1,8,15,0,0,0]3760; AVX512BW-NEXT:    vpermi2d %zmm0, %zmm2, %zmm93761; AVX512BW-NEXT:    vmovdqa32 %zmm10, %zmm9 {%k2}3762; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm10 = [0,18,25,0,7,14,0,0,0,18,25,0,7,14,0,0]3763; AVX512BW-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3]3764; AVX512BW-NEXT:    vpermi2d %zmm4, %zmm5, %zmm103765; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,21,28,0,9,10,11,12,13,21,28]3766; AVX512BW-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3767; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm10, %zmm153768; AVX512BW-NEXT:    vmovdqa32 %zmm15, %zmm9 {%k1}3769; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm10 = [0,19,26,1,8,15,0,0,0,19,26,1,8,15,0,0]3770; AVX512BW-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3]3771; AVX512BW-NEXT:    vpermi2d %zmm4, %zmm5, %zmm103772; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,22,29,0,9,10,11,12,13,22,29]3773; AVX512BW-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3774; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm10, %zmm153775; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} xmm10 = [4,11,18,25]3776; AVX512BW-NEXT:    vpermi2d %zmm2, %zmm0, %zmm103777; AVX512BW-NEXT:    vinserti32x4 $0, %xmm10, %zmm11, %zmm103778; AVX512BW-NEXT:    vmovdqa32 %zmm15, %zmm10 {%k1}3779; AVX512BW-NEXT:    vpermi2d %zmm5, %zmm4, %zmm63780; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm11 = [0,9,10,11,12,16,23,30,0,9,10,11,12,16,23,30]3781; AVX512BW-NEXT:    # zmm11 = mem[0,1,2,3,0,1,2,3]3782; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm6, %zmm113783; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} xmm6 = [5,12,19,26]3784; AVX512BW-NEXT:    vpermi2d %zmm2, %zmm0, %zmm63785; AVX512BW-NEXT:    vinserti32x4 $0, %xmm6, %zmm12, %zmm63786; AVX512BW-NEXT:    vmovdqa32 %zmm11, %zmm6 {%k1}3787; AVX512BW-NEXT:    vpermt2d %zmm5, %zmm8, %zmm43788; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm5 = [0,9,10,11,12,17,24,31,0,9,10,11,12,17,24,31]3789; AVX512BW-NEXT:    # zmm5 = mem[0,1,2,3,0,1,2,3]3790; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm4, %zmm53791; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} xmm1 = [6,13,20,27]3792; AVX512BW-NEXT:    vpermi2d %zmm2, %zmm0, %zmm13793; AVX512BW-NEXT:    vinserti32x4 $0, %xmm1, %zmm13, %zmm03794; AVX512BW-NEXT:    vmovdqa32 %zmm5, %zmm0 {%k1}3795; AVX512BW-NEXT:    vmovdqa64 %zmm3, (%rsi)3796; AVX512BW-NEXT:    vmovdqa64 %zmm14, (%rdx)3797; AVX512BW-NEXT:    vmovdqa64 %zmm7, (%rcx)3798; AVX512BW-NEXT:    vmovdqa64 %zmm9, (%r8)3799; AVX512BW-NEXT:    vmovdqa64 %zmm10, (%r9)3800; AVX512BW-NEXT:    vmovdqa64 %zmm6, (%r10)3801; AVX512BW-NEXT:    vmovdqa64 %zmm0, (%rax)3802; AVX512BW-NEXT:    vzeroupper3803; AVX512BW-NEXT:    retq3804;3805; AVX512BW-FCP-LABEL: load_i32_stride7_vf16:3806; AVX512BW-FCP:       # %bb.0:3807; AVX512BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax3808; AVX512BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r103809; AVX512BW-FCP-NEXT:    vmovdqa64 384(%rdi), %zmm13810; AVX512BW-FCP-NEXT:    vmovdqa64 320(%rdi), %zmm53811; AVX512BW-FCP-NEXT:    vmovdqa64 256(%rdi), %zmm43812; AVX512BW-FCP-NEXT:    vmovdqa64 (%rdi), %zmm03813; AVX512BW-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm23814; AVX512BW-FCP-NEXT:    vmovdqa64 128(%rdi), %zmm83815; AVX512BW-FCP-NEXT:    vmovdqa64 192(%rdi), %zmm73816; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm6 = [8,15,0,0,0,19,26,1,8,15,0,0,0,19,26,1]3817; AVX512BW-FCP-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3]3818; AVX512BW-FCP-NEXT:    vpermi2d %zmm8, %zmm7, %zmm63819; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm3 = [0,7,14,21,28,0,0,0]3820; AVX512BW-FCP-NEXT:    vpermi2d %zmm2, %zmm0, %zmm33821; AVX512BW-FCP-NEXT:    movw $992, %di # imm = 0x3E03822; AVX512BW-FCP-NEXT:    kmovd %edi, %k13823; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm6, %zmm3 {%k1}3824; AVX512BW-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm6 = [20,27,6,13,20,27,6,13,20,27,6,13,20,27,6,13]3825; AVX512BW-FCP-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3826; AVX512BW-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm63827; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm9 = [0,0,10,11,12,13,18,25,0,0,10,11,12,13,18,25]3828; AVX512BW-FCP-NEXT:    # zmm9 = mem[0,1,2,3,0,1,2,3]3829; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm6, %zmm93830; AVX512BW-FCP-NEXT:    movb $-32, %dil3831; AVX512BW-FCP-NEXT:    kmovd %edi, %k13832; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm9, %zmm3 {%k1}3833; AVX512BW-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm6 = [25,4,11,18,25,4,11,18,25,4,11,18,25,4,11,18]3834; AVX512BW-FCP-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3835; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm8, %zmm93836; AVX512BW-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm10 = [27,6,13,20,27,6,13,20,27,6,13,20,27,6,13,20]3837; AVX512BW-FCP-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3838; AVX512BW-FCP-NEXT:    vpermi2d %zmm7, %zmm8, %zmm103839; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm11 = [28,0,0,0,0,7,14,21,28,0,0,0,0,7,14,21]3840; AVX512BW-FCP-NEXT:    # zmm11 = mem[0,1,2,3,0,1,2,3]3841; AVX512BW-FCP-NEXT:    vpermi2d %zmm7, %zmm8, %zmm113842; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm12 = [29,0,0,0,1,8,15,22,29,0,0,0,1,8,15,22]3843; AVX512BW-FCP-NEXT:    # zmm12 = mem[0,1,2,3,0,1,2,3]3844; AVX512BW-FCP-NEXT:    vpermi2d %zmm7, %zmm8, %zmm123845; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm13 = [14,0,0,0,18,25,0,7,14,0,0,0,18,25,0,7]3846; AVX512BW-FCP-NEXT:    # zmm13 = mem[0,1,2,3,0,1,2,3]3847; AVX512BW-FCP-NEXT:    vpermi2d %zmm8, %zmm7, %zmm133848; AVX512BW-FCP-NEXT:    vpermt2d %zmm7, %zmm6, %zmm83849; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm14 = [1,8,15,22,29,0,0,0]3850; AVX512BW-FCP-NEXT:    vpermi2d %zmm2, %zmm0, %zmm143851; AVX512BW-FCP-NEXT:    movw $480, %di # imm = 0x1E03852; AVX512BW-FCP-NEXT:    kmovd %edi, %k23853; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm8, %zmm14 {%k2}3854; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm8 = [0,0,7,14,21,28,0,0,0,0,7,14,21,28,0,0]3855; AVX512BW-FCP-NEXT:    # zmm8 = mem[0,1,2,3,0,1,2,3]3856; AVX512BW-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm83857; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,19,26,0,9,10,11,12,13,19,26]3858; AVX512BW-FCP-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3859; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm8, %zmm153860; AVX512BW-FCP-NEXT:    movw $-512, %di # imm = 0xFE003861; AVX512BW-FCP-NEXT:    kmovd %edi, %k13862; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm15, %zmm14 {%k1}3863; AVX512BW-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm8 = [26,5,12,19,26,5,12,19,26,5,12,19,26,5,12,19]3864; AVX512BW-FCP-NEXT:    # zmm8 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3865; AVX512BW-FCP-NEXT:    vpermt2d %zmm7, %zmm8, %zmm93866; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [18,25,0,7,14,0,0,0]3867; AVX512BW-FCP-NEXT:    vpermi2d %zmm0, %zmm2, %zmm73868; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm9, %zmm7 {%k2}3869; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm9 = [0,1,8,15,22,29,0,0,0,1,8,15,22,29,0,0]3870; AVX512BW-FCP-NEXT:    # zmm9 = mem[0,1,2,3,0,1,2,3]3871; AVX512BW-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm93872; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,20,27,0,9,10,11,12,13,20,27]3873; AVX512BW-FCP-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3874; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm9, %zmm153875; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm15, %zmm7 {%k1}3876; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm9 = [19,26,1,8,15,0,0,0]3877; AVX512BW-FCP-NEXT:    vpermi2d %zmm0, %zmm2, %zmm93878; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm10, %zmm9 {%k2}3879; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm10 = [0,18,25,0,7,14,0,0,0,18,25,0,7,14,0,0]3880; AVX512BW-FCP-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3]3881; AVX512BW-FCP-NEXT:    vpermi2d %zmm4, %zmm5, %zmm103882; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,21,28,0,9,10,11,12,13,21,28]3883; AVX512BW-FCP-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3884; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm10, %zmm153885; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm15, %zmm9 {%k1}3886; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm10 = [0,19,26,1,8,15,0,0,0,19,26,1,8,15,0,0]3887; AVX512BW-FCP-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3]3888; AVX512BW-FCP-NEXT:    vpermi2d %zmm4, %zmm5, %zmm103889; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,22,29,0,9,10,11,12,13,22,29]3890; AVX512BW-FCP-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3891; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm10, %zmm153892; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm10 = [4,11,18,25]3893; AVX512BW-FCP-NEXT:    vpermi2d %zmm2, %zmm0, %zmm103894; AVX512BW-FCP-NEXT:    vinserti32x4 $0, %xmm10, %zmm11, %zmm103895; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm15, %zmm10 {%k1}3896; AVX512BW-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm63897; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm11 = [0,9,10,11,12,16,23,30,0,9,10,11,12,16,23,30]3898; AVX512BW-FCP-NEXT:    # zmm11 = mem[0,1,2,3,0,1,2,3]3899; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm6, %zmm113900; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm6 = [5,12,19,26]3901; AVX512BW-FCP-NEXT:    vpermi2d %zmm2, %zmm0, %zmm63902; AVX512BW-FCP-NEXT:    vinserti32x4 $0, %xmm6, %zmm12, %zmm63903; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm11, %zmm6 {%k1}3904; AVX512BW-FCP-NEXT:    vpermt2d %zmm5, %zmm8, %zmm43905; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm5 = [0,9,10,11,12,17,24,31,0,9,10,11,12,17,24,31]3906; AVX512BW-FCP-NEXT:    # zmm5 = mem[0,1,2,3,0,1,2,3]3907; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm4, %zmm53908; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm1 = [6,13,20,27]3909; AVX512BW-FCP-NEXT:    vpermi2d %zmm2, %zmm0, %zmm13910; AVX512BW-FCP-NEXT:    vinserti32x4 $0, %xmm1, %zmm13, %zmm03911; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm5, %zmm0 {%k1}3912; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm3, (%rsi)3913; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm14, (%rdx)3914; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm7, (%rcx)3915; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm9, (%r8)3916; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm10, (%r9)3917; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm6, (%r10)3918; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm0, (%rax)3919; AVX512BW-FCP-NEXT:    vzeroupper3920; AVX512BW-FCP-NEXT:    retq3921;3922; AVX512DQ-BW-LABEL: load_i32_stride7_vf16:3923; AVX512DQ-BW:       # %bb.0:3924; AVX512DQ-BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax3925; AVX512DQ-BW-NEXT:    movq {{[0-9]+}}(%rsp), %r103926; AVX512DQ-BW-NEXT:    vmovdqa64 384(%rdi), %zmm13927; AVX512DQ-BW-NEXT:    vmovdqa64 320(%rdi), %zmm53928; AVX512DQ-BW-NEXT:    vmovdqa64 256(%rdi), %zmm43929; AVX512DQ-BW-NEXT:    vmovdqa64 (%rdi), %zmm03930; AVX512DQ-BW-NEXT:    vmovdqa64 64(%rdi), %zmm23931; AVX512DQ-BW-NEXT:    vmovdqa64 128(%rdi), %zmm83932; AVX512DQ-BW-NEXT:    vmovdqa64 192(%rdi), %zmm73933; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm6 = [8,15,0,0,0,19,26,1,8,15,0,0,0,19,26,1]3934; AVX512DQ-BW-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3]3935; AVX512DQ-BW-NEXT:    vpermi2d %zmm8, %zmm7, %zmm63936; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} ymm3 = [0,7,14,21,28,0,0,0]3937; AVX512DQ-BW-NEXT:    vpermi2d %zmm2, %zmm0, %zmm33938; AVX512DQ-BW-NEXT:    movw $992, %di # imm = 0x3E03939; AVX512DQ-BW-NEXT:    kmovd %edi, %k13940; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm6, %zmm3 {%k1}3941; AVX512DQ-BW-NEXT:    vbroadcasti32x4 {{.*#+}} zmm6 = [20,27,6,13,20,27,6,13,20,27,6,13,20,27,6,13]3942; AVX512DQ-BW-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3943; AVX512DQ-BW-NEXT:    vpermi2d %zmm5, %zmm4, %zmm63944; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm9 = [0,0,10,11,12,13,18,25,0,0,10,11,12,13,18,25]3945; AVX512DQ-BW-NEXT:    # zmm9 = mem[0,1,2,3,0,1,2,3]3946; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm6, %zmm93947; AVX512DQ-BW-NEXT:    movb $-32, %dil3948; AVX512DQ-BW-NEXT:    kmovd %edi, %k13949; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm9, %zmm3 {%k1}3950; AVX512DQ-BW-NEXT:    vbroadcasti32x4 {{.*#+}} zmm6 = [25,4,11,18,25,4,11,18,25,4,11,18,25,4,11,18]3951; AVX512DQ-BW-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3952; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm8, %zmm93953; AVX512DQ-BW-NEXT:    vbroadcasti32x4 {{.*#+}} zmm10 = [27,6,13,20,27,6,13,20,27,6,13,20,27,6,13,20]3954; AVX512DQ-BW-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3955; AVX512DQ-BW-NEXT:    vpermi2d %zmm7, %zmm8, %zmm103956; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm11 = [28,0,0,0,0,7,14,21,28,0,0,0,0,7,14,21]3957; AVX512DQ-BW-NEXT:    # zmm11 = mem[0,1,2,3,0,1,2,3]3958; AVX512DQ-BW-NEXT:    vpermi2d %zmm7, %zmm8, %zmm113959; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm12 = [29,0,0,0,1,8,15,22,29,0,0,0,1,8,15,22]3960; AVX512DQ-BW-NEXT:    # zmm12 = mem[0,1,2,3,0,1,2,3]3961; AVX512DQ-BW-NEXT:    vpermi2d %zmm7, %zmm8, %zmm123962; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm13 = [14,0,0,0,18,25,0,7,14,0,0,0,18,25,0,7]3963; AVX512DQ-BW-NEXT:    # zmm13 = mem[0,1,2,3,0,1,2,3]3964; AVX512DQ-BW-NEXT:    vpermi2d %zmm8, %zmm7, %zmm133965; AVX512DQ-BW-NEXT:    vpermt2d %zmm7, %zmm6, %zmm83966; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} ymm14 = [1,8,15,22,29,0,0,0]3967; AVX512DQ-BW-NEXT:    vpermi2d %zmm2, %zmm0, %zmm143968; AVX512DQ-BW-NEXT:    movw $480, %di # imm = 0x1E03969; AVX512DQ-BW-NEXT:    kmovd %edi, %k23970; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm8, %zmm14 {%k2}3971; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm8 = [0,0,7,14,21,28,0,0,0,0,7,14,21,28,0,0]3972; AVX512DQ-BW-NEXT:    # zmm8 = mem[0,1,2,3,0,1,2,3]3973; AVX512DQ-BW-NEXT:    vpermi2d %zmm5, %zmm4, %zmm83974; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,19,26,0,9,10,11,12,13,19,26]3975; AVX512DQ-BW-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3976; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm8, %zmm153977; AVX512DQ-BW-NEXT:    movw $-512, %di # imm = 0xFE003978; AVX512DQ-BW-NEXT:    kmovd %edi, %k13979; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm15, %zmm14 {%k1}3980; AVX512DQ-BW-NEXT:    vbroadcasti32x4 {{.*#+}} zmm8 = [26,5,12,19,26,5,12,19,26,5,12,19,26,5,12,19]3981; AVX512DQ-BW-NEXT:    # zmm8 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]3982; AVX512DQ-BW-NEXT:    vpermt2d %zmm7, %zmm8, %zmm93983; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [18,25,0,7,14,0,0,0]3984; AVX512DQ-BW-NEXT:    vpermi2d %zmm0, %zmm2, %zmm73985; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm9, %zmm7 {%k2}3986; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm9 = [0,1,8,15,22,29,0,0,0,1,8,15,22,29,0,0]3987; AVX512DQ-BW-NEXT:    # zmm9 = mem[0,1,2,3,0,1,2,3]3988; AVX512DQ-BW-NEXT:    vpermi2d %zmm5, %zmm4, %zmm93989; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,20,27,0,9,10,11,12,13,20,27]3990; AVX512DQ-BW-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]3991; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm9, %zmm153992; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm15, %zmm7 {%k1}3993; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} ymm9 = [19,26,1,8,15,0,0,0]3994; AVX512DQ-BW-NEXT:    vpermi2d %zmm0, %zmm2, %zmm93995; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm10, %zmm9 {%k2}3996; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm10 = [0,18,25,0,7,14,0,0,0,18,25,0,7,14,0,0]3997; AVX512DQ-BW-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3]3998; AVX512DQ-BW-NEXT:    vpermi2d %zmm4, %zmm5, %zmm103999; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,21,28,0,9,10,11,12,13,21,28]4000; AVX512DQ-BW-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]4001; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm10, %zmm154002; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm15, %zmm9 {%k1}4003; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm10 = [0,19,26,1,8,15,0,0,0,19,26,1,8,15,0,0]4004; AVX512DQ-BW-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3]4005; AVX512DQ-BW-NEXT:    vpermi2d %zmm4, %zmm5, %zmm104006; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,22,29,0,9,10,11,12,13,22,29]4007; AVX512DQ-BW-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]4008; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm10, %zmm154009; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} xmm10 = [4,11,18,25]4010; AVX512DQ-BW-NEXT:    vpermi2d %zmm2, %zmm0, %zmm104011; AVX512DQ-BW-NEXT:    vinserti32x4 $0, %xmm10, %zmm11, %zmm104012; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm15, %zmm10 {%k1}4013; AVX512DQ-BW-NEXT:    vpermi2d %zmm5, %zmm4, %zmm64014; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm11 = [0,9,10,11,12,16,23,30,0,9,10,11,12,16,23,30]4015; AVX512DQ-BW-NEXT:    # zmm11 = mem[0,1,2,3,0,1,2,3]4016; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm6, %zmm114017; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} xmm6 = [5,12,19,26]4018; AVX512DQ-BW-NEXT:    vpermi2d %zmm2, %zmm0, %zmm64019; AVX512DQ-BW-NEXT:    vinserti32x4 $0, %xmm6, %zmm12, %zmm64020; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm11, %zmm6 {%k1}4021; AVX512DQ-BW-NEXT:    vpermt2d %zmm5, %zmm8, %zmm44022; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm5 = [0,9,10,11,12,17,24,31,0,9,10,11,12,17,24,31]4023; AVX512DQ-BW-NEXT:    # zmm5 = mem[0,1,2,3,0,1,2,3]4024; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm4, %zmm54025; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} xmm1 = [6,13,20,27]4026; AVX512DQ-BW-NEXT:    vpermi2d %zmm2, %zmm0, %zmm14027; AVX512DQ-BW-NEXT:    vinserti32x4 $0, %xmm1, %zmm13, %zmm04028; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm5, %zmm0 {%k1}4029; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm3, (%rsi)4030; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm14, (%rdx)4031; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm7, (%rcx)4032; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm9, (%r8)4033; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm10, (%r9)4034; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm6, (%r10)4035; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm0, (%rax)4036; AVX512DQ-BW-NEXT:    vzeroupper4037; AVX512DQ-BW-NEXT:    retq4038;4039; AVX512DQ-BW-FCP-LABEL: load_i32_stride7_vf16:4040; AVX512DQ-BW-FCP:       # %bb.0:4041; AVX512DQ-BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax4042; AVX512DQ-BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r104043; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 384(%rdi), %zmm14044; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 320(%rdi), %zmm54045; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 256(%rdi), %zmm44046; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 (%rdi), %zmm04047; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm24048; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 128(%rdi), %zmm84049; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 192(%rdi), %zmm74050; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm6 = [8,15,0,0,0,19,26,1,8,15,0,0,0,19,26,1]4051; AVX512DQ-BW-FCP-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3]4052; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm8, %zmm7, %zmm64053; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm3 = [0,7,14,21,28,0,0,0]4054; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm2, %zmm0, %zmm34055; AVX512DQ-BW-FCP-NEXT:    movw $992, %di # imm = 0x3E04056; AVX512DQ-BW-FCP-NEXT:    kmovd %edi, %k14057; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm6, %zmm3 {%k1}4058; AVX512DQ-BW-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm6 = [20,27,6,13,20,27,6,13,20,27,6,13,20,27,6,13]4059; AVX512DQ-BW-FCP-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]4060; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm64061; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm9 = [0,0,10,11,12,13,18,25,0,0,10,11,12,13,18,25]4062; AVX512DQ-BW-FCP-NEXT:    # zmm9 = mem[0,1,2,3,0,1,2,3]4063; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm6, %zmm94064; AVX512DQ-BW-FCP-NEXT:    movb $-32, %dil4065; AVX512DQ-BW-FCP-NEXT:    kmovd %edi, %k14066; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm9, %zmm3 {%k1}4067; AVX512DQ-BW-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm6 = [25,4,11,18,25,4,11,18,25,4,11,18,25,4,11,18]4068; AVX512DQ-BW-FCP-NEXT:    # zmm6 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]4069; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm8, %zmm94070; AVX512DQ-BW-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm10 = [27,6,13,20,27,6,13,20,27,6,13,20,27,6,13,20]4071; AVX512DQ-BW-FCP-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]4072; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm7, %zmm8, %zmm104073; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm11 = [28,0,0,0,0,7,14,21,28,0,0,0,0,7,14,21]4074; AVX512DQ-BW-FCP-NEXT:    # zmm11 = mem[0,1,2,3,0,1,2,3]4075; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm7, %zmm8, %zmm114076; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm12 = [29,0,0,0,1,8,15,22,29,0,0,0,1,8,15,22]4077; AVX512DQ-BW-FCP-NEXT:    # zmm12 = mem[0,1,2,3,0,1,2,3]4078; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm7, %zmm8, %zmm124079; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm13 = [14,0,0,0,18,25,0,7,14,0,0,0,18,25,0,7]4080; AVX512DQ-BW-FCP-NEXT:    # zmm13 = mem[0,1,2,3,0,1,2,3]4081; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm8, %zmm7, %zmm134082; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm7, %zmm6, %zmm84083; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm14 = [1,8,15,22,29,0,0,0]4084; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm2, %zmm0, %zmm144085; AVX512DQ-BW-FCP-NEXT:    movw $480, %di # imm = 0x1E04086; AVX512DQ-BW-FCP-NEXT:    kmovd %edi, %k24087; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm8, %zmm14 {%k2}4088; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm8 = [0,0,7,14,21,28,0,0,0,0,7,14,21,28,0,0]4089; AVX512DQ-BW-FCP-NEXT:    # zmm8 = mem[0,1,2,3,0,1,2,3]4090; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm84091; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,19,26,0,9,10,11,12,13,19,26]4092; AVX512DQ-BW-FCP-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]4093; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm8, %zmm154094; AVX512DQ-BW-FCP-NEXT:    movw $-512, %di # imm = 0xFE004095; AVX512DQ-BW-FCP-NEXT:    kmovd %edi, %k14096; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm15, %zmm14 {%k1}4097; AVX512DQ-BW-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm8 = [26,5,12,19,26,5,12,19,26,5,12,19,26,5,12,19]4098; AVX512DQ-BW-FCP-NEXT:    # zmm8 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]4099; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm7, %zmm8, %zmm94100; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [18,25,0,7,14,0,0,0]4101; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm0, %zmm2, %zmm74102; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm9, %zmm7 {%k2}4103; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm9 = [0,1,8,15,22,29,0,0,0,1,8,15,22,29,0,0]4104; AVX512DQ-BW-FCP-NEXT:    # zmm9 = mem[0,1,2,3,0,1,2,3]4105; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm94106; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,20,27,0,9,10,11,12,13,20,27]4107; AVX512DQ-BW-FCP-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]4108; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm9, %zmm154109; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm15, %zmm7 {%k1}4110; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm9 = [19,26,1,8,15,0,0,0]4111; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm0, %zmm2, %zmm94112; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm10, %zmm9 {%k2}4113; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm10 = [0,18,25,0,7,14,0,0,0,18,25,0,7,14,0,0]4114; AVX512DQ-BW-FCP-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3]4115; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm4, %zmm5, %zmm104116; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,21,28,0,9,10,11,12,13,21,28]4117; AVX512DQ-BW-FCP-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]4118; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm10, %zmm154119; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm15, %zmm9 {%k1}4120; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm10 = [0,19,26,1,8,15,0,0,0,19,26,1,8,15,0,0]4121; AVX512DQ-BW-FCP-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3]4122; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm4, %zmm5, %zmm104123; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,13,22,29,0,9,10,11,12,13,22,29]4124; AVX512DQ-BW-FCP-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]4125; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm10, %zmm154126; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm10 = [4,11,18,25]4127; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm2, %zmm0, %zmm104128; AVX512DQ-BW-FCP-NEXT:    vinserti32x4 $0, %xmm10, %zmm11, %zmm104129; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm15, %zmm10 {%k1}4130; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm64131; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm11 = [0,9,10,11,12,16,23,30,0,9,10,11,12,16,23,30]4132; AVX512DQ-BW-FCP-NEXT:    # zmm11 = mem[0,1,2,3,0,1,2,3]4133; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm6, %zmm114134; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm6 = [5,12,19,26]4135; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm2, %zmm0, %zmm64136; AVX512DQ-BW-FCP-NEXT:    vinserti32x4 $0, %xmm6, %zmm12, %zmm64137; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm11, %zmm6 {%k1}4138; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm5, %zmm8, %zmm44139; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm5 = [0,9,10,11,12,17,24,31,0,9,10,11,12,17,24,31]4140; AVX512DQ-BW-FCP-NEXT:    # zmm5 = mem[0,1,2,3,0,1,2,3]4141; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm4, %zmm54142; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm1 = [6,13,20,27]4143; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm2, %zmm0, %zmm14144; AVX512DQ-BW-FCP-NEXT:    vinserti32x4 $0, %xmm1, %zmm13, %zmm04145; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm5, %zmm0 {%k1}4146; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm3, (%rsi)4147; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm14, (%rdx)4148; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm7, (%rcx)4149; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm9, (%r8)4150; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm10, (%r9)4151; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm6, (%r10)4152; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm0, (%rax)4153; AVX512DQ-BW-FCP-NEXT:    vzeroupper4154; AVX512DQ-BW-FCP-NEXT:    retq4155  %wide.vec = load <112 x i32>, ptr %in.vec, align 644156  %strided.vec0 = shufflevector <112 x i32> %wide.vec, <112 x i32> poison, <16 x i32> <i32 0, i32 7, i32 14, i32 21, i32 28, i32 35, i32 42, i32 49, i32 56, i32 63, i32 70, i32 77, i32 84, i32 91, i32 98, i32 105>4157  %strided.vec1 = shufflevector <112 x i32> %wide.vec, <112 x i32> poison, <16 x i32> <i32 1, i32 8, i32 15, i32 22, i32 29, i32 36, i32 43, i32 50, i32 57, i32 64, i32 71, i32 78, i32 85, i32 92, i32 99, i32 106>4158  %strided.vec2 = shufflevector <112 x i32> %wide.vec, <112 x i32> poison, <16 x i32> <i32 2, i32 9, i32 16, i32 23, i32 30, i32 37, i32 44, i32 51, i32 58, i32 65, i32 72, i32 79, i32 86, i32 93, i32 100, i32 107>4159  %strided.vec3 = shufflevector <112 x i32> %wide.vec, <112 x i32> poison, <16 x i32> <i32 3, i32 10, i32 17, i32 24, i32 31, i32 38, i32 45, i32 52, i32 59, i32 66, i32 73, i32 80, i32 87, i32 94, i32 101, i32 108>4160  %strided.vec4 = shufflevector <112 x i32> %wide.vec, <112 x i32> poison, <16 x i32> <i32 4, i32 11, i32 18, i32 25, i32 32, i32 39, i32 46, i32 53, i32 60, i32 67, i32 74, i32 81, i32 88, i32 95, i32 102, i32 109>4161  %strided.vec5 = shufflevector <112 x i32> %wide.vec, <112 x i32> poison, <16 x i32> <i32 5, i32 12, i32 19, i32 26, i32 33, i32 40, i32 47, i32 54, i32 61, i32 68, i32 75, i32 82, i32 89, i32 96, i32 103, i32 110>4162  %strided.vec6 = shufflevector <112 x i32> %wide.vec, <112 x i32> poison, <16 x i32> <i32 6, i32 13, i32 20, i32 27, i32 34, i32 41, i32 48, i32 55, i32 62, i32 69, i32 76, i32 83, i32 90, i32 97, i32 104, i32 111>4163  store <16 x i32> %strided.vec0, ptr %out.vec0, align 644164  store <16 x i32> %strided.vec1, ptr %out.vec1, align 644165  store <16 x i32> %strided.vec2, ptr %out.vec2, align 644166  store <16 x i32> %strided.vec3, ptr %out.vec3, align 644167  store <16 x i32> %strided.vec4, ptr %out.vec4, align 644168  store <16 x i32> %strided.vec5, ptr %out.vec5, align 644169  store <16 x i32> %strided.vec6, ptr %out.vec6, align 644170  ret void4171}4172 4173define void @load_i32_stride7_vf32(ptr %in.vec, ptr %out.vec0, ptr %out.vec1, ptr %out.vec2, ptr %out.vec3, ptr %out.vec4, ptr %out.vec5, ptr %out.vec6) nounwind {4174; SSE-LABEL: load_i32_stride7_vf32:4175; SSE:       # %bb.0:4176; SSE-NEXT:    subq $1160, %rsp # imm = 0x4884177; SSE-NEXT:    movdqa 80(%rdi), %xmm84178; SSE-NEXT:    movdqa %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4179; SSE-NEXT:    movdqa (%rdi), %xmm134180; SSE-NEXT:    movdqa %xmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4181; SSE-NEXT:    movdqa 16(%rdi), %xmm64182; SSE-NEXT:    movdqa %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4183; SSE-NEXT:    movdqa 48(%rdi), %xmm54184; SSE-NEXT:    movdqa %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4185; SSE-NEXT:    movdqa 640(%rdi), %xmm34186; SSE-NEXT:    movdqa 608(%rdi), %xmm44187; SSE-NEXT:    movdqa 560(%rdi), %xmm104188; SSE-NEXT:    movdqa 576(%rdi), %xmm14189; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4190; SSE-NEXT:    movdqa 192(%rdi), %xmm144191; SSE-NEXT:    movdqa 160(%rdi), %xmm124192; SSE-NEXT:    movdqa 112(%rdi), %xmm24193; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4194; SSE-NEXT:    movdqa 128(%rdi), %xmm04195; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4196; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[3,3,3,3]4197; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm0[0],xmm2[1],xmm0[1]4198; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm12[2,2,3,3]4199; SSE-NEXT:    movdqa %xmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4200; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm14[0],xmm0[1],xmm14[1]4201; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm2[0],xmm0[1]4202; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4203; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm1[3,3,3,3]4204; SSE-NEXT:    movdqa %xmm10, %xmm24205; SSE-NEXT:    movdqa %xmm10, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4206; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm0[0],xmm2[1],xmm0[1]4207; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm4[2,2,3,3]4208; SSE-NEXT:    movdqa %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4209; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm3[0],xmm0[1],xmm3[1]4210; SSE-NEXT:    movdqa %xmm3, %xmm74211; SSE-NEXT:    movdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4212; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm2[0],xmm0[1]4213; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4214; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm6[3,3,3,3]4215; SSE-NEXT:    movdqa %xmm13, %xmm24216; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm0[0],xmm2[1],xmm0[1]4217; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm5[2,2,3,3]4218; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm8[0],xmm0[1],xmm8[1]4219; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm2[0],xmm0[1]4220; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4221; SSE-NEXT:    movdqa 448(%rdi), %xmm24222; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4223; SSE-NEXT:    movdqa 464(%rdi), %xmm04224; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4225; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[3,3,3,3]4226; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm0[0],xmm2[1],xmm0[1]4227; SSE-NEXT:    movdqa 528(%rdi), %xmm94228; SSE-NEXT:    movdqa 496(%rdi), %xmm134229; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm13[2,2,3,3]4230; SSE-NEXT:    movdqa %xmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4231; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm9[0],xmm0[1],xmm9[1]4232; SSE-NEXT:    movdqa %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4233; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm2[0],xmm0[1]4234; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4235; SSE-NEXT:    movdqa 336(%rdi), %xmm24236; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4237; SSE-NEXT:    movdqa 352(%rdi), %xmm04238; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4239; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[3,3,3,3]4240; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm0[0],xmm2[1],xmm0[1]4241; SSE-NEXT:    movdqa 416(%rdi), %xmm34242; SSE-NEXT:    movdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4243; SSE-NEXT:    movdqa 384(%rdi), %xmm114244; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm11[2,2,3,3]4245; SSE-NEXT:    movdqa %xmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4246; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm3[0],xmm0[1],xmm3[1]4247; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm2[0],xmm0[1]4248; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4249; SSE-NEXT:    movdqa 784(%rdi), %xmm24250; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4251; SSE-NEXT:    movdqa 800(%rdi), %xmm04252; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4253; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[3,3,3,3]4254; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm0[0],xmm2[1],xmm0[1]4255; SSE-NEXT:    movdqa 864(%rdi), %xmm84256; SSE-NEXT:    movdqa 832(%rdi), %xmm154257; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm15[2,2,3,3]4258; SSE-NEXT:    movdqa %xmm15, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4259; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm8[0],xmm0[1],xmm8[1]4260; SSE-NEXT:    movdqa %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4261; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm2[0],xmm0[1]4262; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4263; SSE-NEXT:    movdqa 224(%rdi), %xmm34264; SSE-NEXT:    movdqa %xmm3, (%rsp) # 16-byte Spill4265; SSE-NEXT:    movdqa 240(%rdi), %xmm04266; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4267; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[3,3,3,3]4268; SSE-NEXT:    punpckldq {{.*#+}} xmm3 = xmm3[0],xmm0[0],xmm3[1],xmm0[1]4269; SSE-NEXT:    movdqa 304(%rdi), %xmm14270; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4271; SSE-NEXT:    movdqa 272(%rdi), %xmm64272; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm6[2,2,3,3]4273; SSE-NEXT:    movdqa %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4274; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]4275; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm3[0],xmm0[1]4276; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4277; SSE-NEXT:    movdqa 672(%rdi), %xmm34278; SSE-NEXT:    movdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4279; SSE-NEXT:    movdqa 688(%rdi), %xmm04280; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4281; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[3,3,3,3]4282; SSE-NEXT:    punpckldq {{.*#+}} xmm3 = xmm3[0],xmm0[0],xmm3[1],xmm0[1]4283; SSE-NEXT:    movdqa 752(%rdi), %xmm14284; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4285; SSE-NEXT:    movdqa 720(%rdi), %xmm04286; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4287; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[2,2,3,3]4288; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]4289; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm3[0],xmm0[1]4290; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4291; SSE-NEXT:    movdqa %xmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4292; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm14[2,2,2,2]4293; SSE-NEXT:    movdqa %xmm12, %xmm34294; SSE-NEXT:    punpckhdq {{.*#+}} xmm3 = xmm3[2],xmm0[2],xmm3[3],xmm0[3]4295; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload4296; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm2[1,1,1,1]4297; SSE-NEXT:    movdqa 144(%rdi), %xmm14298; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4299; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]4300; SSE-NEXT:    movsd {{.*#+}} xmm3 = xmm0[0],xmm3[1]4301; SSE-NEXT:    movapd %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4302; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm7[2,2,2,2]4303; SSE-NEXT:    punpckhdq {{.*#+}} xmm4 = xmm4[2],xmm0[2],xmm4[3],xmm0[3]4304; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm10[1,1,1,1]4305; SSE-NEXT:    movdqa 592(%rdi), %xmm14306; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4307; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]4308; SSE-NEXT:    movsd {{.*#+}} xmm4 = xmm0[0],xmm4[1]4309; SSE-NEXT:    movapd %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4310; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload4311; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm10[2,2,2,2]4312; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4313; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]4314; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload4315; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm3[1,1,1,1]4316; SSE-NEXT:    movdqa 32(%rdi), %xmm44317; SSE-NEXT:    movdqa %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4318; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm4[0],xmm0[1],xmm4[1]4319; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]4320; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4321; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm9[2,2,2,2]4322; SSE-NEXT:    punpckhdq {{.*#+}} xmm13 = xmm13[2],xmm0[2],xmm13[3],xmm0[3]4323; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4324; SSE-NEXT:    # xmm0 = mem[1,1,1,1]4325; SSE-NEXT:    movdqa 480(%rdi), %xmm44326; SSE-NEXT:    movdqa %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4327; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm4[0],xmm0[1],xmm4[1]4328; SSE-NEXT:    movsd {{.*#+}} xmm13 = xmm0[0],xmm13[1]4329; SSE-NEXT:    movapd %xmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4330; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload4331; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm5[2,2,2,2]4332; SSE-NEXT:    movdqa %xmm11, %xmm44333; SSE-NEXT:    punpckhdq {{.*#+}} xmm4 = xmm4[2],xmm0[2],xmm4[3],xmm0[3]4334; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4335; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm1[1,1,1,1]4336; SSE-NEXT:    movdqa 368(%rdi), %xmm114337; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm11[0],xmm0[1],xmm11[1]4338; SSE-NEXT:    movdqa %xmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4339; SSE-NEXT:    movsd {{.*#+}} xmm4 = xmm0[0],xmm4[1]4340; SSE-NEXT:    movapd %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4341; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm8[2,2,2,2]4342; SSE-NEXT:    movdqa %xmm15, %xmm44343; SSE-NEXT:    punpckhdq {{.*#+}} xmm4 = xmm4[2],xmm0[2],xmm4[3],xmm0[3]4344; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Reload4345; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm15[1,1,1,1]4346; SSE-NEXT:    movdqa 816(%rdi), %xmm74347; SSE-NEXT:    movdqa %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4348; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm7[0],xmm0[1],xmm7[1]4349; SSE-NEXT:    movsd {{.*#+}} xmm4 = xmm0[0],xmm4[1]4350; SSE-NEXT:    movapd %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4351; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload4352; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm4[2,2,2,2]4353; SSE-NEXT:    punpckhdq {{.*#+}} xmm6 = xmm6[2],xmm0[2],xmm6[3],xmm0[3]4354; SSE-NEXT:    movdqa (%rsp), %xmm9 # 16-byte Reload4355; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm9[1,1,1,1]4356; SSE-NEXT:    movdqa 256(%rdi), %xmm134357; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm13[0],xmm7[1],xmm13[1]4358; SSE-NEXT:    movsd {{.*#+}} xmm6 = xmm7[0],xmm6[1]4359; SSE-NEXT:    movapd %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4360; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Reload4361; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm12[2,2,2,2]4362; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload4363; SSE-NEXT:    punpckhdq {{.*#+}} xmm6 = xmm6[2],xmm7[2],xmm6[3],xmm7[3]4364; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload4365; SSE-NEXT:    # xmm7 = mem[1,1,1,1]4366; SSE-NEXT:    movdqa 704(%rdi), %xmm04367; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4368; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm0[0],xmm7[1],xmm0[1]4369; SSE-NEXT:    movsd {{.*#+}} xmm6 = xmm7[0],xmm6[1]4370; SSE-NEXT:    movapd %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4371; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm2[2,3,2,3]4372; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Folded Reload4373; SSE-NEXT:    # xmm8 = mem[1,1,1,1]4374; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm8[0],xmm7[1],xmm8[1]4375; SSE-NEXT:    movdqa 176(%rdi), %xmm04376; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4377; SSE-NEXT:    pshufd {{.*#+}} xmm8 = xmm14[2,3,2,3]4378; SSE-NEXT:    pshufd {{.*#+}} xmm6 = xmm0[0,0,1,1]4379; SSE-NEXT:    punpckldq {{.*#+}} xmm6 = xmm6[0],xmm8[0],xmm6[1],xmm8[1]4380; SSE-NEXT:    movsd {{.*#+}} xmm6 = xmm7[0],xmm6[1]4381; SSE-NEXT:    movapd %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4382; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm3[2,3,2,3]4383; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4384; SSE-NEXT:    pshufd {{.*#+}} xmm8 = xmm0[1,1,1,1]4385; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm8[0],xmm7[1],xmm8[1]4386; SSE-NEXT:    movdqa 64(%rdi), %xmm34387; SSE-NEXT:    pshufd {{.*#+}} xmm8 = xmm10[2,3,2,3]4388; SSE-NEXT:    pshufd {{.*#+}} xmm2 = xmm3[0,0,1,1]4389; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm8[0],xmm2[1],xmm8[1]4390; SSE-NEXT:    movsd {{.*#+}} xmm2 = xmm7[0],xmm2[1]4391; SSE-NEXT:    movapd %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4392; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm1[2,3,2,3]4393; SSE-NEXT:    pshufd {{.*#+}} xmm8 = xmm11[1,1,1,1]4394; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm8[0],xmm7[1],xmm8[1]4395; SSE-NEXT:    movdqa 400(%rdi), %xmm14396; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4397; SSE-NEXT:    pshufd {{.*#+}} xmm8 = xmm5[2,3,2,3]4398; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[0,0,1,1]4399; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm8[0],xmm1[1],xmm8[1]4400; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm7[0],xmm1[1]4401; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4402; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm9[2,3,2,3]4403; SSE-NEXT:    pshufd {{.*#+}} xmm8 = xmm13[1,1,1,1]4404; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm8[0],xmm7[1],xmm8[1]4405; SSE-NEXT:    movdqa 288(%rdi), %xmm104406; SSE-NEXT:    pshufd {{.*#+}} xmm8 = xmm4[2,3,2,3]4407; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm10[0,0,1,1]4408; SSE-NEXT:    movdqa %xmm10, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4409; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm8[0],xmm1[1],xmm8[1]4410; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm7[0],xmm1[1]4411; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4412; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload4413; SSE-NEXT:    # xmm7 = mem[2,3,2,3]4414; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Folded Reload4415; SSE-NEXT:    # xmm8 = mem[1,1,1,1]4416; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm8[0],xmm7[1],xmm8[1]4417; SSE-NEXT:    movdqa 624(%rdi), %xmm14418; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4419; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Folded Reload4420; SSE-NEXT:    # xmm8 = mem[2,3,2,3]4421; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[0,0,1,1]4422; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm8[0],xmm1[1],xmm8[1]4423; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm7[0],xmm1[1]4424; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4425; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload4426; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm9[2,3,2,3]4427; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload4428; SSE-NEXT:    pshufd {{.*#+}} xmm8 = xmm14[1,1,1,1]4429; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm8[0],xmm7[1],xmm8[1]4430; SSE-NEXT:    movdqa 512(%rdi), %xmm14431; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4432; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Folded Reload4433; SSE-NEXT:    # xmm8 = mem[2,3,2,3]4434; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[0,0,1,1]4435; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm8[0],xmm1[1],xmm8[1]4436; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm7[0],xmm1[1]4437; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4438; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm15[2,3,2,3]4439; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Folded Reload4440; SSE-NEXT:    # xmm8 = mem[1,1,1,1]4441; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm8[0],xmm7[1],xmm8[1]4442; SSE-NEXT:    movdqa 848(%rdi), %xmm14443; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4444; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Folded Reload4445; SSE-NEXT:    # xmm8 = mem[2,3,2,3]4446; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[0,0,1,1]4447; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm8[0],xmm1[1],xmm8[1]4448; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm7[0],xmm1[1]4449; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4450; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload4451; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm6[2,3,2,3]4452; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm11 # 16-byte Reload4453; SSE-NEXT:    pshufd {{.*#+}} xmm8 = xmm11[1,1,1,1]4454; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm8[0],xmm7[1],xmm8[1]4455; SSE-NEXT:    movdqa 736(%rdi), %xmm24456; SSE-NEXT:    pshufd {{.*#+}} xmm8 = xmm12[2,3,2,3]4457; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm2[0,0,1,1]4458; SSE-NEXT:    movdqa %xmm2, %xmm124459; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4460; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm8[0],xmm1[1],xmm8[1]4461; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm7[0],xmm1[1]4462; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4463; SSE-NEXT:    movdqa 96(%rdi), %xmm14464; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4465; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm1[0,0,1,1]4466; SSE-NEXT:    movdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4467; SSE-NEXT:    movdqa %xmm3, %xmm14468; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm7[0],xmm1[1],xmm7[1]4469; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Folded Reload4470; SSE-NEXT:    # xmm5 = mem[2,2,3,3]4471; SSE-NEXT:    punpckhdq {{.*#+}} xmm5 = xmm5[2],xmm0[2],xmm5[3],xmm0[3]4472; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm5[0],xmm1[1]4473; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4474; SSE-NEXT:    movdqa 208(%rdi), %xmm04475; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4476; SSE-NEXT:    pshufd {{.*#+}} xmm5 = xmm0[0,0,1,1]4477; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload4478; SSE-NEXT:    movdqa %xmm4, %xmm24479; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm5[0],xmm2[1],xmm5[1]4480; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload4481; SSE-NEXT:    # xmm1 = mem[2,2,3,3]4482; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload4483; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm8[2],xmm1[3],xmm8[3]4484; SSE-NEXT:    movsd {{.*#+}} xmm2 = xmm1[0],xmm2[1]4485; SSE-NEXT:    movapd %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4486; SSE-NEXT:    movdqa 320(%rdi), %xmm04487; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4488; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm0[0,0,1,1]4489; SSE-NEXT:    movdqa %xmm10, %xmm24490; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]4491; SSE-NEXT:    pshufd $250, (%rsp), %xmm1 # 16-byte Folded Reload4492; SSE-NEXT:    # xmm1 = mem[2,2,3,3]4493; SSE-NEXT:    movdqa %xmm13, %xmm104494; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm13[2],xmm1[3],xmm13[3]4495; SSE-NEXT:    movsd {{.*#+}} xmm2 = xmm1[0],xmm2[1]4496; SSE-NEXT:    movapd %xmm2, (%rsp) # 16-byte Spill4497; SSE-NEXT:    movdqa 432(%rdi), %xmm04498; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4499; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm0[0,0,1,1]4500; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Reload4501; SSE-NEXT:    movdqa %xmm13, %xmm24502; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]4503; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload4504; SSE-NEXT:    # xmm1 = mem[2,2,3,3]4505; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Reload4506; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm15[2],xmm1[3],xmm15[3]4507; SSE-NEXT:    movsd {{.*#+}} xmm2 = xmm1[0],xmm2[1]4508; SSE-NEXT:    movapd %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4509; SSE-NEXT:    movdqa 544(%rdi), %xmm04510; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4511; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm0[0,0,1,1]4512; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload4513; SSE-NEXT:    movdqa %xmm5, %xmm24514; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]4515; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm9[2,2,3,3]4516; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm14[2],xmm1[3],xmm14[3]4517; SSE-NEXT:    movsd {{.*#+}} xmm2 = xmm1[0],xmm2[1]4518; SSE-NEXT:    movapd %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4519; SSE-NEXT:    movdqa 656(%rdi), %xmm04520; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4521; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm0[0,0,1,1]4522; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload4523; SSE-NEXT:    movdqa %xmm7, %xmm24524; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]4525; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload4526; SSE-NEXT:    # xmm1 = mem[2,2,3,3]4527; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload4528; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm14[2],xmm1[3],xmm14[3]4529; SSE-NEXT:    movsd {{.*#+}} xmm2 = xmm1[0],xmm2[1]4530; SSE-NEXT:    movapd %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4531; SSE-NEXT:    movdqa 768(%rdi), %xmm04532; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4533; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm0[0,0,1,1]4534; SSE-NEXT:    movdqa %xmm12, %xmm24535; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]4536; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm6[2,2,3,3]4537; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm11[2],xmm1[3],xmm11[3]4538; SSE-NEXT:    movsd {{.*#+}} xmm2 = xmm1[0],xmm2[1]4539; SSE-NEXT:    movapd %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4540; SSE-NEXT:    movdqa 880(%rdi), %xmm04541; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4542; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm0[0,0,1,1]4543; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm11 # 16-byte Reload4544; SSE-NEXT:    movdqa %xmm11, %xmm04545; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]4546; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload4547; SSE-NEXT:    # xmm1 = mem[2,2,3,3]4548; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Reload4549; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm12[2],xmm1[3],xmm12[3]4550; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]4551; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4552; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload4553; SSE-NEXT:    # xmm1 = mem[3,3,3,3]4554; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload4555; SSE-NEXT:    movdqa %xmm6, %xmm24556; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]4557; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm3[2,2,3,3]4558; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload4559; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm3[0],xmm0[1],xmm3[1]4560; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm2[0],xmm0[1]4561; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4562; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm8[3,3,3,3]4563; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload4564; SSE-NEXT:    movdqa %xmm8, %xmm24565; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]4566; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm4[2,2,3,3]4567; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload4568; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm4[0],xmm0[1],xmm4[1]4569; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm2[0],xmm0[1]4570; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4571; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm10[3,3,3,3]4572; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload4573; SSE-NEXT:    movdqa %xmm9, %xmm14574; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4575; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4576; SSE-NEXT:    # xmm0 = mem[2,2,3,3]4577; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload4578; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1]4579; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]4580; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4581; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm15[3,3,3,3]4582; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload4583; SSE-NEXT:    movdqa %xmm10, %xmm14584; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4585; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm13[2,2,3,3]4586; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4587; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]4588; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]4589; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4590; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4591; SSE-NEXT:    # xmm0 = mem[3,3,3,3]4592; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Reload4593; SSE-NEXT:    movdqa %xmm13, %xmm14594; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4595; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm5[2,2,3,3]4596; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload4597; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm5[0],xmm0[1],xmm5[1]4598; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]4599; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4600; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm14[3,3,3,3]4601; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload4602; SSE-NEXT:    movdqa %xmm14, %xmm14603; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4604; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm7[2,2,3,3]4605; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4606; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]4607; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]4608; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4609; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4610; SSE-NEXT:    # xmm0 = mem[3,3,3,3]4611; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Reload4612; SSE-NEXT:    movdqa %xmm15, %xmm14613; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4614; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4615; SSE-NEXT:    # xmm0 = mem[2,2,3,3]4616; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4617; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]4618; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]4619; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4620; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm12[3,3,3,3]4621; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4622; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4623; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm11[2,2,3,3]4624; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload4625; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm7[0],xmm0[1],xmm7[1]4626; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]4627; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4628; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm3[2,2,2,2]4629; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4630; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]4631; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm6[1,1,1,1]4632; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4633; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]4634; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]4635; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4636; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm4[2,2,2,2]4637; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4638; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]4639; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm8[1,1,1,1]4640; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload4641; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm6[0],xmm0[1],xmm6[1]4642; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]4643; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4644; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm2[2,2,2,2]4645; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4646; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]4647; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm9[1,1,1,1]4648; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload4649; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1]4650; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]4651; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4652; SSE-NEXT:    pshufd $170, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4653; SSE-NEXT:    # xmm0 = mem[2,2,2,2]4654; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4655; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]4656; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm10[1,1,1,1]4657; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload4658; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm10[0],xmm0[1],xmm10[1]4659; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]4660; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4661; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm5[2,2,2,2]4662; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4663; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]4664; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm13[1,1,1,1]4665; SSE-NEXT:    movdqa %xmm13, %xmm54666; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload4667; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm4[0],xmm0[1],xmm4[1]4668; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]4669; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4670; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Reload4671; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm13[2,2,2,2]4672; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4673; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]4674; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm14[1,1,1,1]4675; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload4676; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm3[0],xmm0[1],xmm3[1]4677; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]4678; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4679; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload4680; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm14[2,2,2,2]4681; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4682; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]4683; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm15[1,1,1,1]4684; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Reload4685; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm12[0],xmm0[1],xmm12[1]4686; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]4687; SSE-NEXT:    movapd %xmm1, %xmm154688; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm7[2,2,2,2]4689; SSE-NEXT:    movdqa %xmm11, %xmm14690; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]4691; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4692; SSE-NEXT:    # xmm0 = mem[1,1,1,1]4693; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm11 # 16-byte Reload4694; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm11[0],xmm0[1],xmm11[1]4695; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]4696; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4697; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4698; SSE-NEXT:    # xmm0 = mem[1,1,1,1]4699; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload4700; SSE-NEXT:    # xmm1 = mem[2,3,2,3]4701; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4702; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4703; SSE-NEXT:    # xmm0 = mem[2,3,2,3]4704; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload4705; SSE-NEXT:    # xmm9 = mem[0,0,1,1]4706; SSE-NEXT:    punpckldq {{.*#+}} xmm9 = xmm9[0],xmm0[0],xmm9[1],xmm0[1]4707; SSE-NEXT:    movsd {{.*#+}} xmm9 = xmm1[0],xmm9[1]4708; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm6[1,1,1,1]4709; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm8[2,3,2,3]4710; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4711; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4712; SSE-NEXT:    # xmm0 = mem[2,3,2,3]4713; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Folded Reload4714; SSE-NEXT:    # xmm8 = mem[0,0,1,1]4715; SSE-NEXT:    punpckldq {{.*#+}} xmm8 = xmm8[0],xmm0[0],xmm8[1],xmm0[1]4716; SSE-NEXT:    movsd {{.*#+}} xmm8 = xmm1[0],xmm8[1]4717; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm2[1,1,1,1]4718; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload4719; SSE-NEXT:    # xmm1 = mem[2,3,2,3]4720; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4721; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4722; SSE-NEXT:    # xmm0 = mem[2,3,2,3]4723; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload4724; SSE-NEXT:    # xmm7 = mem[0,0,1,1]4725; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm0[0],xmm7[1],xmm0[1]4726; SSE-NEXT:    movsd {{.*#+}} xmm7 = xmm1[0],xmm7[1]4727; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm10[1,1,1,1]4728; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload4729; SSE-NEXT:    # xmm1 = mem[2,3,2,3]4730; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4731; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4732; SSE-NEXT:    # xmm0 = mem[2,3,2,3]4733; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Folded Reload4734; SSE-NEXT:    # xmm6 = mem[0,0,1,1]4735; SSE-NEXT:    punpckldq {{.*#+}} xmm6 = xmm6[0],xmm0[0],xmm6[1],xmm0[1]4736; SSE-NEXT:    movsd {{.*#+}} xmm6 = xmm1[0],xmm6[1]4737; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm4[1,1,1,1]4738; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm5[2,3,2,3]4739; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4740; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4741; SSE-NEXT:    # xmm0 = mem[2,3,2,3]4742; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Folded Reload4743; SSE-NEXT:    # xmm5 = mem[0,0,1,1]4744; SSE-NEXT:    punpckldq {{.*#+}} xmm5 = xmm5[0],xmm0[0],xmm5[1],xmm0[1]4745; SSE-NEXT:    movsd {{.*#+}} xmm5 = xmm1[0],xmm5[1]4746; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm3[1,1,1,1]4747; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload4748; SSE-NEXT:    # xmm1 = mem[2,3,2,3]4749; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4750; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm13[2,3,2,3]4751; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload4752; SSE-NEXT:    # xmm4 = mem[0,0,1,1]4753; SSE-NEXT:    punpckldq {{.*#+}} xmm4 = xmm4[0],xmm0[0],xmm4[1],xmm0[1]4754; SSE-NEXT:    movsd {{.*#+}} xmm4 = xmm1[0],xmm4[1]4755; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm12[1,1,1,1]4756; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4757; SSE-NEXT:    # xmm0 = mem[2,3,2,3]4758; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]4759; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm14[2,3,2,3]4760; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Folded Reload4761; SSE-NEXT:    # xmm3 = mem[0,0,1,1]4762; SSE-NEXT:    punpckldq {{.*#+}} xmm3 = xmm3[0],xmm1[0],xmm3[1],xmm1[1]4763; SSE-NEXT:    movsd {{.*#+}} xmm3 = xmm0[0],xmm3[1]4764; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm11[1,1,1,1]4765; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload4766; SSE-NEXT:    # xmm1 = mem[2,3,2,3]4767; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4768; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Folded Reload4769; SSE-NEXT:    # xmm2 = mem[2,3,2,3]4770; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4771; SSE-NEXT:    # xmm0 = mem[0,0,1,1]4772; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1]4773; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]4774; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4775; SSE-NEXT:    movaps %xmm1, 96(%rsi)4776; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4777; SSE-NEXT:    movaps %xmm1, 32(%rsi)4778; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4779; SSE-NEXT:    movaps %xmm1, 112(%rsi)4780; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4781; SSE-NEXT:    movaps %xmm1, 48(%rsi)4782; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4783; SSE-NEXT:    movaps %xmm1, 64(%rsi)4784; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4785; SSE-NEXT:    movaps %xmm1, (%rsi)4786; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4787; SSE-NEXT:    movaps %xmm1, 80(%rsi)4788; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4789; SSE-NEXT:    movaps %xmm1, 16(%rsi)4790; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4791; SSE-NEXT:    movaps %xmm1, 96(%rdx)4792; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4793; SSE-NEXT:    movaps %xmm1, 32(%rdx)4794; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4795; SSE-NEXT:    movaps %xmm1, 112(%rdx)4796; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4797; SSE-NEXT:    movaps %xmm1, 48(%rdx)4798; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4799; SSE-NEXT:    movaps %xmm1, 64(%rdx)4800; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4801; SSE-NEXT:    movaps %xmm1, (%rdx)4802; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4803; SSE-NEXT:    movaps %xmm1, 80(%rdx)4804; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4805; SSE-NEXT:    movaps %xmm1, 16(%rdx)4806; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4807; SSE-NEXT:    movaps %xmm1, 96(%rcx)4808; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4809; SSE-NEXT:    movaps %xmm1, 112(%rcx)4810; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4811; SSE-NEXT:    movaps %xmm1, 64(%rcx)4812; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4813; SSE-NEXT:    movaps %xmm1, 80(%rcx)4814; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4815; SSE-NEXT:    movaps %xmm1, 32(%rcx)4816; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4817; SSE-NEXT:    movaps %xmm1, 48(%rcx)4818; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4819; SSE-NEXT:    movaps %xmm1, (%rcx)4820; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4821; SSE-NEXT:    movaps %xmm1, 16(%rcx)4822; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4823; SSE-NEXT:    movaps %xmm1, 112(%r8)4824; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4825; SSE-NEXT:    movaps %xmm1, 96(%r8)4826; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4827; SSE-NEXT:    movaps %xmm1, 80(%r8)4828; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4829; SSE-NEXT:    movaps %xmm1, 64(%r8)4830; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4831; SSE-NEXT:    movaps %xmm1, 48(%r8)4832; SSE-NEXT:    movaps (%rsp), %xmm1 # 16-byte Reload4833; SSE-NEXT:    movaps %xmm1, 32(%r8)4834; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4835; SSE-NEXT:    movaps %xmm1, 16(%r8)4836; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4837; SSE-NEXT:    movaps %xmm1, (%r8)4838; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4839; SSE-NEXT:    movaps %xmm1, 112(%r9)4840; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4841; SSE-NEXT:    movaps %xmm1, 96(%r9)4842; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4843; SSE-NEXT:    movaps %xmm1, 80(%r9)4844; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4845; SSE-NEXT:    movaps %xmm1, 64(%r9)4846; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4847; SSE-NEXT:    movaps %xmm1, 48(%r9)4848; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4849; SSE-NEXT:    movaps %xmm1, 32(%r9)4850; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4851; SSE-NEXT:    movaps %xmm1, 16(%r9)4852; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4853; SSE-NEXT:    movaps %xmm1, (%r9)4854; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %rax4855; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4856; SSE-NEXT:    movaps %xmm1, 112(%rax)4857; SSE-NEXT:    movapd %xmm15, 96(%rax)4858; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4859; SSE-NEXT:    movaps %xmm1, 80(%rax)4860; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4861; SSE-NEXT:    movaps %xmm1, 64(%rax)4862; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4863; SSE-NEXT:    movaps %xmm1, 48(%rax)4864; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4865; SSE-NEXT:    movaps %xmm1, 32(%rax)4866; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4867; SSE-NEXT:    movaps %xmm1, 16(%rax)4868; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4869; SSE-NEXT:    movaps %xmm1, (%rax)4870; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %rax4871; SSE-NEXT:    movapd %xmm0, 112(%rax)4872; SSE-NEXT:    movapd %xmm3, 96(%rax)4873; SSE-NEXT:    movapd %xmm4, 80(%rax)4874; SSE-NEXT:    movapd %xmm5, 64(%rax)4875; SSE-NEXT:    movapd %xmm6, 48(%rax)4876; SSE-NEXT:    movapd %xmm7, 32(%rax)4877; SSE-NEXT:    movapd %xmm8, 16(%rax)4878; SSE-NEXT:    movapd %xmm9, (%rax)4879; SSE-NEXT:    addq $1160, %rsp # imm = 0x4884880; SSE-NEXT:    retq4881;4882; AVX-LABEL: load_i32_stride7_vf32:4883; AVX:       # %bb.0:4884; AVX-NEXT:    subq $1432, %rsp # imm = 0x5984885; AVX-NEXT:    vmovaps 480(%rdi), %ymm44886; AVX-NEXT:    vmovups %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4887; AVX-NEXT:    vmovaps 448(%rdi), %ymm34888; AVX-NEXT:    vmovups %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4889; AVX-NEXT:    vmovaps 544(%rdi), %ymm54890; AVX-NEXT:    vmovaps 32(%rdi), %ymm24891; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4892; AVX-NEXT:    vmovaps (%rdi), %ymm14893; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4894; AVX-NEXT:    vmovaps 96(%rdi), %ymm124895; AVX-NEXT:    vmovaps 80(%rdi), %xmm04896; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4897; AVX-NEXT:    vunpcklpd {{.*#+}} ymm0 = ymm12[0],ymm0[0],ymm12[2],ymm0[2]4898; AVX-NEXT:    vmovups %ymm12, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4899; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5],ymm2[6],ymm1[7]4900; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm14901; AVX-NEXT:    vmovaps (%rdi), %xmm84902; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm8[0,1],xmm1[2,3]4903; AVX-NEXT:    vmovaps %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4904; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,3,2,3]4905; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]4906; AVX-NEXT:    vmovaps 160(%rdi), %xmm24907; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4908; AVX-NEXT:    vmovaps 128(%rdi), %xmm14909; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4910; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm1[1],xmm2[1]4911; AVX-NEXT:    vmovaps 192(%rdi), %xmm74912; AVX-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm1[1,2],xmm7[1]4913; AVX-NEXT:    vmovaps %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4914; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm14915; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]4916; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4917; AVX-NEXT:    vmovaps 528(%rdi), %xmm04918; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4919; AVX-NEXT:    vunpcklpd {{.*#+}} ymm0 = ymm5[0],ymm0[0],ymm5[2],ymm0[2]4920; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm3[0,1,2,3,4,5],ymm4[6],ymm3[7]4921; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm14922; AVX-NEXT:    vmovaps 448(%rdi), %xmm104923; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm10[0,1],xmm1[2,3]4924; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,3,2,3]4925; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]4926; AVX-NEXT:    vmovaps 608(%rdi), %xmm24927; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4928; AVX-NEXT:    vmovaps 576(%rdi), %xmm14929; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4930; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm1[1],xmm2[1]4931; AVX-NEXT:    vmovaps 640(%rdi), %xmm94932; AVX-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm1[1,2],xmm9[1]4933; AVX-NEXT:    vmovaps %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4934; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm14935; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]4936; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4937; AVX-NEXT:    vmovaps 256(%rdi), %ymm14938; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4939; AVX-NEXT:    vmovaps 224(%rdi), %ymm04940; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4941; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm1[6],ymm0[7]4942; AVX-NEXT:    vextractf128 $1, %ymm0, %xmm04943; AVX-NEXT:    vmovaps 224(%rdi), %xmm114944; AVX-NEXT:    vblendps {{.*#+}} xmm0 = xmm11[0,1],xmm0[2,3]4945; AVX-NEXT:    vmovaps %xmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4946; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[0,3,2,3]4947; AVX-NEXT:    vmovaps 320(%rdi), %ymm44948; AVX-NEXT:    vmovaps 304(%rdi), %xmm14949; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4950; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm4[0],ymm1[0],ymm4[2],ymm1[2]4951; AVX-NEXT:    vmovups %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4952; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm1[3,4,5,6,7]4953; AVX-NEXT:    vmovaps 384(%rdi), %xmm14954; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4955; AVX-NEXT:    vmovaps 352(%rdi), %xmm24956; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4957; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm2[1],xmm1[1]4958; AVX-NEXT:    vmovaps 416(%rdi), %xmm34959; AVX-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm1[1,2],xmm3[1]4960; AVX-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4961; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm14962; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]4963; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4964; AVX-NEXT:    vmovaps 704(%rdi), %ymm14965; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4966; AVX-NEXT:    vmovaps 672(%rdi), %ymm04967; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4968; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm1[6],ymm0[7]4969; AVX-NEXT:    vextractf128 $1, %ymm0, %xmm04970; AVX-NEXT:    vmovaps 672(%rdi), %xmm14971; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4972; AVX-NEXT:    vblendps {{.*#+}} xmm0 = xmm1[0,1],xmm0[2,3]4973; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[0,3,2,3]4974; AVX-NEXT:    vmovaps 768(%rdi), %ymm144975; AVX-NEXT:    vmovaps 752(%rdi), %xmm14976; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4977; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm14[0],ymm1[0],ymm14[2],ymm1[2]4978; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm1[3,4,5,6,7]4979; AVX-NEXT:    vmovaps 832(%rdi), %xmm24980; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4981; AVX-NEXT:    vmovaps 800(%rdi), %xmm14982; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4983; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm1[1],xmm2[1]4984; AVX-NEXT:    vmovaps 864(%rdi), %xmm64985; AVX-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm1[1,2],xmm6[1]4986; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm14987; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]4988; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4989; AVX-NEXT:    vmovaps 64(%rdi), %ymm04990; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4991; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm12[1,1],ymm0[2,2],ymm12[5,5],ymm0[6,6]4992; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]4993; AVX-NEXT:    vmovaps 32(%rdi), %xmm14994; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4995; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0],xmm8[1],xmm1[2,3]4996; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,0],mem[3,3]4997; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]4998; AVX-NEXT:    vmovaps 160(%rdi), %ymm14999; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5000; AVX-NEXT:    vmovaps 128(%rdi), %ymm155001; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm15[2,3],ymm1[0,1]5002; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm15[0,0],ymm1[3,3],ymm15[4,4],ymm1[7,7]5003; AVX-NEXT:    vmovups %ymm15, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5004; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm15005; AVX-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm1[1,2],xmm7[2]5006; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm15007; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]5008; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5009; AVX-NEXT:    vmovaps 512(%rdi), %ymm05010; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5011; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm5[1,1],ymm0[2,2],ymm5[5,5],ymm0[6,6]5012; AVX-NEXT:    vmovaps %ymm5, %ymm75013; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]5014; AVX-NEXT:    vmovaps 480(%rdi), %xmm15015; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5016; AVX-NEXT:    vblendps {{.*#+}} xmm2 = xmm1[0],xmm10[1],xmm1[2,3]5017; AVX-NEXT:    vmovaps %xmm10, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5018; AVX-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[1,0],mem[3,3]5019; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2],ymm0[3,4,5,6,7]5020; AVX-NEXT:    vmovaps 608(%rdi), %ymm05021; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5022; AVX-NEXT:    vmovaps 576(%rdi), %ymm125023; AVX-NEXT:    vperm2f128 {{.*#+}} ymm5 = ymm12[2,3],ymm0[0,1]5024; AVX-NEXT:    vshufps {{.*#+}} ymm5 = ymm12[0,0],ymm5[3,3],ymm12[4,4],ymm5[7,7]5025; AVX-NEXT:    vextractf128 $1, %ymm5, %xmm55026; AVX-NEXT:    vinsertps {{.*#+}} xmm5 = zero,xmm5[1,2],xmm9[2]5027; AVX-NEXT:    vinsertf128 $1, %xmm5, %ymm0, %ymm55028; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm5[5,6,7]5029; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5030; AVX-NEXT:    vmovaps 288(%rdi), %ymm05031; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5032; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm4[1,1],ymm0[2,2],ymm4[5,5],ymm0[6,6]5033; AVX-NEXT:    vperm2f128 {{.*#+}} ymm2 = ymm2[2,3,2,3]5034; AVX-NEXT:    vmovaps 256(%rdi), %xmm05035; AVX-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5036; AVX-NEXT:    vblendps {{.*#+}} xmm5 = xmm0[0],xmm11[1],xmm0[2,3]5037; AVX-NEXT:    vshufps {{.*#+}} xmm5 = xmm5[1,0],mem[3,3]5038; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm5[0,1,2],ymm2[3,4,5,6,7]5039; AVX-NEXT:    vmovaps 384(%rdi), %ymm15040; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5041; AVX-NEXT:    vmovaps 352(%rdi), %ymm05042; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5043; AVX-NEXT:    vperm2f128 {{.*#+}} ymm5 = ymm0[2,3],ymm1[0,1]5044; AVX-NEXT:    vshufps {{.*#+}} ymm5 = ymm0[0,0],ymm5[3,3],ymm0[4,4],ymm5[7,7]5045; AVX-NEXT:    vextractf128 $1, %ymm5, %xmm55046; AVX-NEXT:    vinsertps {{.*#+}} xmm5 = zero,xmm5[1,2],xmm3[2]5047; AVX-NEXT:    vinsertf128 $1, %xmm5, %ymm0, %ymm55048; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm5[5,6,7]5049; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5050; AVX-NEXT:    vmovaps 736(%rdi), %ymm55051; AVX-NEXT:    vmovaps %ymm14, %ymm35052; AVX-NEXT:    vmovups %ymm14, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5053; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm14[1,1],ymm5[2,2],ymm14[5,5],ymm5[6,6]5054; AVX-NEXT:    vmovups %ymm5, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5055; AVX-NEXT:    vperm2f128 {{.*#+}} ymm2 = ymm2[2,3,2,3]5056; AVX-NEXT:    vmovaps 704(%rdi), %xmm45057; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload5058; AVX-NEXT:    vblendps {{.*#+}} xmm11 = xmm4[0],xmm1[1],xmm4[2,3]5059; AVX-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5060; AVX-NEXT:    vshufps {{.*#+}} xmm11 = xmm11[1,0],mem[3,3]5061; AVX-NEXT:    vblendps {{.*#+}} ymm11 = ymm11[0,1,2],ymm2[3,4,5,6,7]5062; AVX-NEXT:    vmovaps 832(%rdi), %ymm135063; AVX-NEXT:    vmovaps 800(%rdi), %ymm25064; AVX-NEXT:    vperm2f128 {{.*#+}} ymm14 = ymm2[2,3],ymm13[0,1]5065; AVX-NEXT:    vmovups %ymm13, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5066; AVX-NEXT:    vshufps {{.*#+}} ymm14 = ymm2[0,0],ymm14[3,3],ymm2[4,4],ymm14[7,7]5067; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5068; AVX-NEXT:    vextractf128 $1, %ymm14, %xmm145069; AVX-NEXT:    vinsertps {{.*#+}} xmm14 = zero,xmm14[1,2],xmm6[2]5070; AVX-NEXT:    vinsertf128 $1, %xmm14, %ymm0, %ymm145071; AVX-NEXT:    vblendps {{.*#+}} ymm11 = ymm11[0,1,2,3,4],ymm14[5,6,7]5072; AVX-NEXT:    vmovups %ymm11, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5073; AVX-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm11 # 16-byte Folded Reload5074; AVX-NEXT:    # xmm11 = mem[2,3,2,3]5075; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload5076; AVX-NEXT:    vblendps {{.*#+}} xmm11 = xmm11[0],xmm0[1],xmm11[2,3]5077; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload5078; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload5079; AVX-NEXT:    vshufps {{.*#+}} ymm14 = ymm14[3,1],ymm9[0,3],ymm14[7,5],ymm9[4,7]5080; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Reload5081; AVX-NEXT:    vshufps {{.*#+}} ymm14 = ymm8[2,1],ymm14[2,0],ymm8[6,5],ymm14[6,4]5082; AVX-NEXT:    vblendps {{.*#+}} ymm11 = ymm11[0,1],ymm14[2,3,4,5,6,7]5083; AVX-NEXT:    vunpcklpd {{[-0-9]+}}(%r{{[sb]}}p), %ymm15, %ymm14 # 32-byte Folded Reload5084; AVX-NEXT:    # ymm14 = ymm15[0],mem[0],ymm15[2],mem[2]5085; AVX-NEXT:    vextractf128 $1, %ymm14, %xmm145086; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm14, %xmm14 # 16-byte Folded Reload5087; AVX-NEXT:    # xmm14 = xmm14[0,1,2],mem[3]5088; AVX-NEXT:    vinsertf128 $1, %xmm14, %ymm0, %ymm145089; AVX-NEXT:    vblendps {{.*#+}} ymm11 = ymm11[0,1,2,3,4],ymm14[5,6,7]5090; AVX-NEXT:    vmovups %ymm11, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5091; AVX-NEXT:    vshufps {{.*#+}} xmm11 = xmm10[2,3,2,3]5092; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Reload5093; AVX-NEXT:    vblendps {{.*#+}} xmm11 = xmm11[0],xmm15[1],xmm11[2,3]5094; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload5095; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload5096; AVX-NEXT:    vshufps {{.*#+}} ymm14 = ymm14[3,1],ymm10[0,3],ymm14[7,5],ymm10[4,7]5097; AVX-NEXT:    vshufps {{.*#+}} ymm14 = ymm7[2,1],ymm14[2,0],ymm7[6,5],ymm14[6,4]5098; AVX-NEXT:    vblendps {{.*#+}} ymm11 = ymm11[0,1],ymm14[2,3,4,5,6,7]5099; AVX-NEXT:    vunpcklpd {{[-0-9]+}}(%r{{[sb]}}p), %ymm12, %ymm14 # 32-byte Folded Reload5100; AVX-NEXT:    # ymm14 = ymm12[0],mem[0],ymm12[2],mem[2]5101; AVX-NEXT:    vextractf128 $1, %ymm14, %xmm145102; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm14, %xmm14 # 16-byte Folded Reload5103; AVX-NEXT:    # xmm14 = xmm14[0,1,2],mem[3]5104; AVX-NEXT:    vinsertf128 $1, %xmm14, %ymm0, %ymm145105; AVX-NEXT:    vblendps {{.*#+}} ymm11 = ymm11[0,1,2,3,4],ymm14[5,6,7]5106; AVX-NEXT:    vmovups %ymm11, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5107; AVX-NEXT:    vshufps {{.*#+}} xmm11 = xmm1[2,3,2,3]5108; AVX-NEXT:    vblendps {{.*#+}} xmm11 = xmm11[0],xmm4[1],xmm11[2,3]5109; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload5110; AVX-NEXT:    vshufps {{.*#+}} ymm14 = ymm14[3,1],ymm5[0,3],ymm14[7,5],ymm5[4,7]5111; AVX-NEXT:    vshufps {{.*#+}} ymm14 = ymm3[2,1],ymm14[2,0],ymm3[6,5],ymm14[6,4]5112; AVX-NEXT:    vblendps {{.*#+}} ymm11 = ymm11[0,1],ymm14[2,3,4,5,6,7]5113; AVX-NEXT:    vunpcklpd {{.*#+}} ymm14 = ymm2[0],ymm13[0],ymm2[2],ymm13[2]5114; AVX-NEXT:    vextractf128 $1, %ymm14, %xmm145115; AVX-NEXT:    vblendps {{.*#+}} xmm4 = xmm14[0,1,2],xmm6[3]5116; AVX-NEXT:    vinsertf128 $1, %xmm4, %ymm0, %ymm45117; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm11[0,1,2,3,4],ymm4[5,6,7]5118; AVX-NEXT:    vmovups %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5119; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload5120; AVX-NEXT:    vshufps {{.*#+}} xmm4 = xmm6[2,3,2,3]5121; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload5122; AVX-NEXT:    vblendps {{.*#+}} xmm4 = xmm4[0],xmm1[1],xmm4[2,3]5123; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload5124; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload5125; AVX-NEXT:    vshufps {{.*#+}} ymm11 = ymm11[3,1],ymm3[0,3],ymm11[7,5],ymm3[4,7]5126; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload5127; AVX-NEXT:    vshufps {{.*#+}} ymm11 = ymm2[2,1],ymm11[2,0],ymm2[6,5],ymm11[6,4]5128; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1],ymm11[2,3,4,5,6,7]5129; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 32-byte Reload5130; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload5131; AVX-NEXT:    vunpcklpd {{.*#+}} ymm11 = ymm13[0],ymm5[0],ymm13[2],ymm5[2]5132; AVX-NEXT:    vextractf128 $1, %ymm11, %xmm115133; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm11, %xmm11 # 16-byte Folded Reload5134; AVX-NEXT:    # xmm11 = xmm11[0,1,2],mem[3]5135; AVX-NEXT:    vinsertf128 $1, %xmm11, %ymm0, %ymm115136; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4],ymm11[5,6,7]5137; AVX-NEXT:    vmovups %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5138; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm9[1,0],ymm8[0,0],ymm9[5,4],ymm8[4,4]5139; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm8[3,1],ymm4[0,2],ymm8[7,5],ymm4[4,6]5140; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm9 # 16-byte Folded Reload5141; AVX-NEXT:    # xmm9 = xmm0[0,1,2],mem[3]5142; AVX-NEXT:    vshufps {{.*#+}} xmm9 = xmm9[3,2,2,3]5143; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm9[0,1],ymm4[2,3,4,5,6,7]5144; AVX-NEXT:    vmovaps 192(%rdi), %ymm05145; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5146; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload5147; AVX-NEXT:    vshufps {{.*#+}} ymm11 = ymm0[0,1],ymm14[1,3],ymm0[4,5],ymm14[5,7]5148; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5149; AVX-NEXT:    vshufps {{.*#+}} ymm11 = ymm0[0,2],ymm11[2,0],ymm0[4,6],ymm11[6,4]5150; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4],ymm11[5,6,7]5151; AVX-NEXT:    vmovups %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5152; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm10[1,0],ymm7[0,0],ymm10[5,4],ymm7[4,4]5153; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm7[3,1],ymm4[0,2],ymm7[7,5],ymm4[4,6]5154; AVX-NEXT:    vmovaps %xmm15, %xmm105155; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm15, %xmm8 # 16-byte Folded Reload5156; AVX-NEXT:    # xmm8 = xmm15[0,1,2],mem[3]5157; AVX-NEXT:    vshufps {{.*#+}} xmm8 = xmm8[3,2,2,3]5158; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1],ymm4[2,3,4,5,6,7]5159; AVX-NEXT:    vmovaps 640(%rdi), %ymm05160; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5161; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload5162; AVX-NEXT:    vshufps {{.*#+}} ymm11 = ymm0[0,1],ymm4[1,3],ymm0[4,5],ymm4[5,7]5163; AVX-NEXT:    vshufps {{.*#+}} ymm11 = ymm12[0,2],ymm11[2,0],ymm12[4,6],ymm11[6,4]5164; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1,2,3,4],ymm11[5,6,7]5165; AVX-NEXT:    vmovups %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5166; AVX-NEXT:    vshufps {{.*#+}} ymm7 = ymm3[1,0],ymm2[0,0],ymm3[5,4],ymm2[4,4]5167; AVX-NEXT:    vshufps {{.*#+}} ymm7 = ymm2[3,1],ymm7[0,2],ymm2[7,5],ymm7[4,6]5168; AVX-NEXT:    vblendps {{.*#+}} xmm8 = xmm1[0,1,2],xmm6[3]5169; AVX-NEXT:    vshufps {{.*#+}} xmm8 = xmm8[3,2,2,3]5170; AVX-NEXT:    vblendps {{.*#+}} ymm7 = ymm8[0,1],ymm7[2,3,4,5,6,7]5171; AVX-NEXT:    vmovaps 416(%rdi), %ymm155172; AVX-NEXT:    vmovaps %ymm5, %ymm85173; AVX-NEXT:    vshufps {{.*#+}} ymm11 = ymm15[0,1],ymm5[1,3],ymm15[4,5],ymm5[5,7]5174; AVX-NEXT:    vshufps {{.*#+}} ymm11 = ymm13[0,2],ymm11[2,0],ymm13[4,6],ymm11[6,4]5175; AVX-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3,4],ymm11[5,6,7]5176; AVX-NEXT:    vmovups %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5177; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5178; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5179; AVX-NEXT:    vshufps {{.*#+}} ymm5 = ymm1[1,0],ymm0[0,0],ymm1[5,4],ymm0[4,4]5180; AVX-NEXT:    vshufps {{.*#+}} ymm5 = ymm0[3,1],ymm5[0,2],ymm0[7,5],ymm5[4,6]5181; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload5182; AVX-NEXT:    vblendps $7, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm6 # 16-byte Folded Reload5183; AVX-NEXT:    # xmm6 = mem[0,1,2],xmm0[3]5184; AVX-NEXT:    vshufps {{.*#+}} xmm6 = xmm6[3,2,2,3]5185; AVX-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1],ymm5[2,3,4,5,6,7]5186; AVX-NEXT:    vmovaps 864(%rdi), %ymm05187; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5188; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload5189; AVX-NEXT:    vshufps {{.*#+}} ymm7 = ymm0[0,1],ymm9[1,3],ymm0[4,5],ymm9[5,7]5190; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5191; AVX-NEXT:    vshufps {{.*#+}} ymm7 = ymm0[0,2],ymm7[2,0],ymm0[4,6],ymm7[6,4]5192; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1,2,3,4],ymm7[5,6,7]5193; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5194; AVX-NEXT:    vperm2f128 {{.*#+}} ymm6 = ymm12[2,3,0,1]5195; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm12[3,0],ymm6[0,0],ymm12[7,4],ymm6[4,4]5196; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload5197; AVX-NEXT:    vshufps {{.*#+}} ymm6 = ymm5[1,0],ymm4[2,0],ymm5[5,4],ymm4[6,4]5198; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[2,0],ymm6[2,0],ymm0[6,4],ymm6[6,4]5199; AVX-NEXT:    vmovaps 544(%rdi), %xmm15200; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5201; AVX-NEXT:    vshufps {{.*#+}} xmm11 = xmm1[0,1,0,1]5202; AVX-NEXT:    vmovaps 512(%rdi), %xmm75203; AVX-NEXT:    vblendps {{.*#+}} xmm11 = xmm7[0,1,2],xmm11[3]5204; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm10[2,3,2,3]5205; AVX-NEXT:    vblendps {{.*#+}} xmm1 = mem[0],xmm1[1],mem[2,3]5206; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm11[2,3]5207; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3],ymm0[4,5,6,7]5208; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5209; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5210; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm1[2,3,0,1]5211; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm1[3,0],ymm0[0,0],ymm1[7,4],ymm0[4,4]5212; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload5213; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm10[1,0],ymm14[2,0],ymm10[5,4],ymm14[6,4]5214; AVX-NEXT:    vmovaps %ymm14, %ymm65215; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[2,0],ymm1[2,0],ymm0[6,4],ymm1[6,4]5216; AVX-NEXT:    vmovaps 64(%rdi), %xmm15217; AVX-NEXT:    vmovaps 96(%rdi), %xmm45218; AVX-NEXT:    vshufps {{.*#+}} xmm3 = xmm4[0,1,0,1]5219; AVX-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5220; AVX-NEXT:    vblendps {{.*#+}} xmm3 = xmm1[0,1,2],xmm3[3]5221; AVX-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Folded Reload5222; AVX-NEXT:    # xmm14 = mem[2,3,2,3]5223; AVX-NEXT:    vblendps {{.*#+}} xmm14 = mem[0],xmm14[1],mem[2,3]5224; AVX-NEXT:    vblendps {{.*#+}} xmm3 = xmm14[0,1],xmm3[2,3]5225; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm3[0,1,2,3],ymm0[4,5,6,7]5226; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5227; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm13[2,3,0,1]5228; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm13[3,0],ymm0[0,0],ymm13[7,4],ymm0[4,4]5229; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm15[1,0],ymm8[2,0],ymm15[5,4],ymm8[6,4]5230; AVX-NEXT:    vmovaps %ymm15, %ymm115231; AVX-NEXT:    vmovups %ymm15, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5232; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[2,0],ymm3[2,0],ymm0[6,4],ymm3[6,4]5233; AVX-NEXT:    vmovaps 320(%rdi), %xmm25234; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5235; AVX-NEXT:    vshufps {{.*#+}} xmm14 = xmm2[0,1,0,1]5236; AVX-NEXT:    vmovaps 288(%rdi), %xmm35237; AVX-NEXT:    vblendps {{.*#+}} xmm14 = xmm3[0,1,2],xmm14[3]5238; AVX-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Folded Reload5239; AVX-NEXT:    # xmm15 = mem[2,3,2,3]5240; AVX-NEXT:    vblendps {{.*#+}} xmm15 = mem[0],xmm15[1],mem[2,3]5241; AVX-NEXT:    vblendps {{.*#+}} xmm14 = xmm15[0,1],xmm14[2,3]5242; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm14[0,1,2,3],ymm0[4,5,6,7]5243; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5244; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload5245; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm2[2,3,0,1]5246; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm2[3,0],ymm0[0,0],ymm2[7,4],ymm0[4,4]5247; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Reload5248; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm8[1,0],ymm9[2,0],ymm8[5,4],ymm9[6,4]5249; AVX-NEXT:    vshufps {{.*#+}} ymm14 = ymm0[2,0],ymm2[2,0],ymm0[6,4],ymm2[6,4]5250; AVX-NEXT:    vmovaps 768(%rdi), %xmm05251; AVX-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5252; AVX-NEXT:    vshufps {{.*#+}} xmm15 = xmm0[0,1,0,1]5253; AVX-NEXT:    vmovaps 736(%rdi), %xmm25254; AVX-NEXT:    vblendps {{.*#+}} xmm15 = xmm2[0,1,2],xmm15[3]5255; AVX-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Folded Reload5256; AVX-NEXT:    # xmm13 = mem[2,3,2,3]5257; AVX-NEXT:    vblendps {{.*#+}} xmm13 = mem[0],xmm13[1],mem[2,3]5258; AVX-NEXT:    vblendps {{.*#+}} xmm13 = xmm13[0,1],xmm15[2,3]5259; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm13[0,1,2,3],ymm14[4,5,6,7]5260; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5261; AVX-NEXT:    vshufps {{.*#+}} ymm13 = ymm10[2,1],ymm6[3,3],ymm10[6,5],ymm6[7,7]5262; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload5263; AVX-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm14 # 16-byte Folded Reload5264; AVX-NEXT:    # xmm14 = xmm0[0],mem[1],xmm0[2,3]5265; AVX-NEXT:    vinsertf128 $1, %xmm14, %ymm0, %ymm145266; AVX-NEXT:    vshufps {{.*#+}} ymm13 = ymm14[1,0],ymm13[2,0],ymm14[5,4],ymm13[6,4]5267; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm4[0,1,2],xmm1[3]5268; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5269; AVX-NEXT:    vshufps $16, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm14 # 32-byte Folded Reload5270; AVX-NEXT:    # ymm14 = ymm0[0,0],mem[1,0],ymm0[4,4],mem[5,4]5271; AVX-NEXT:    vextractf128 $1, %ymm14, %xmm145272; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm14[2,0],xmm1[3,2]5273; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3],ymm13[4,5,6,7]5274; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5275; AVX-NEXT:    vshufps $246, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5, %ymm13 # 32-byte Folded Reload5276; AVX-NEXT:    # ymm13 = ymm5[2,1],mem[3,3],ymm5[6,5],mem[7,7]5277; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Reload5278; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload5279; AVX-NEXT:    vblendps {{.*#+}} xmm14 = xmm15[0],xmm10[1],xmm15[2,3]5280; AVX-NEXT:    vinsertf128 $1, %xmm14, %ymm0, %ymm145281; AVX-NEXT:    vshufps {{.*#+}} ymm13 = ymm14[1,0],ymm13[2,0],ymm14[5,4],ymm13[6,4]5282; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload5283; AVX-NEXT:    vblendps {{.*#+}} xmm7 = xmm6[0,1,2],xmm7[3]5284; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload5285; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5286; AVX-NEXT:    vshufps {{.*#+}} ymm14 = ymm0[0,0],ymm4[1,0],ymm0[4,4],ymm4[5,4]5287; AVX-NEXT:    vextractf128 $1, %ymm14, %xmm145288; AVX-NEXT:    vshufps {{.*#+}} xmm7 = xmm14[2,0],xmm7[3,2]5289; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm7[0,1,2,3],ymm13[4,5,6,7]5290; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5291; AVX-NEXT:    vshufps $246, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11, %ymm13 # 32-byte Folded Reload5292; AVX-NEXT:    # ymm13 = ymm11[2,1],mem[3,3],ymm11[6,5],mem[7,7]5293; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload5294; AVX-NEXT:    vblendps $13, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7, %xmm14 # 16-byte Folded Reload5295; AVX-NEXT:    # xmm14 = mem[0],xmm7[1],mem[2,3]5296; AVX-NEXT:    vinsertf128 $1, %xmm14, %ymm0, %ymm145297; AVX-NEXT:    vshufps {{.*#+}} ymm13 = ymm14[1,0],ymm13[2,0],ymm14[5,4],ymm13[6,4]5298; AVX-NEXT:    vblendps $7, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload5299; AVX-NEXT:    # xmm3 = mem[0,1,2],xmm3[3]5300; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload5301; AVX-NEXT:    vshufps $16, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11, %ymm14 # 32-byte Folded Reload5302; AVX-NEXT:    # ymm14 = ymm11[0,0],mem[1,0],ymm11[4,4],mem[5,4]5303; AVX-NEXT:    vextractf128 $1, %ymm14, %xmm145304; AVX-NEXT:    vshufps {{.*#+}} xmm3 = xmm14[2,0],xmm3[3,2]5305; AVX-NEXT:    vblendps {{.*#+}} ymm13 = ymm3[0,1,2,3],ymm13[4,5,6,7]5306; AVX-NEXT:    vmovaps %ymm8, %ymm75307; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm8[2,1],ymm9[3,3],ymm8[6,5],ymm9[7,7]5308; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload5309; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload5310; AVX-NEXT:    vblendps {{.*#+}} xmm12 = xmm9[0],xmm8[1],xmm9[2,3]5311; AVX-NEXT:    vinsertf128 $1, %xmm12, %ymm0, %ymm125312; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm12[1,0],ymm3[2,0],ymm12[5,4],ymm3[6,4]5313; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload5314; AVX-NEXT:    vblendps {{.*#+}} xmm2 = xmm5[0,1,2],xmm2[3]5315; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload5316; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5317; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm1[0,0],ymm14[1,0],ymm1[4,4],ymm14[5,4]5318; AVX-NEXT:    vextractf128 $1, %ymm12, %xmm125319; AVX-NEXT:    vshufps {{.*#+}} xmm2 = xmm12[2,0],xmm2[3,2]5320; AVX-NEXT:    vblendps {{.*#+}} ymm12 = ymm2[0,1,2,3],ymm3[4,5,6,7]5321; AVX-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Folded Reload5322; AVX-NEXT:    # xmm2 = mem[0,1,0,1]5323; AVX-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0,1,2],xmm6[3]5324; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm0[1,0],ymm4[2,0],ymm0[5,4],ymm4[6,4]5325; AVX-NEXT:    vextractf128 $1, %ymm3, %xmm35326; AVX-NEXT:    vshufps {{.*#+}} xmm2 = xmm3[2,0],xmm2[2,3]5327; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5328; AVX-NEXT:    vperm2f128 {{.*#+}} ymm3 = ymm0[2,3,0,1]5329; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm0[3,0],ymm3[0,0],ymm0[7,4],ymm3[4,4]5330; AVX-NEXT:    vshufps {{.*#+}} xmm4 = xmm10[2,3,2,3]5331; AVX-NEXT:    vblendps {{.*#+}} xmm4 = xmm4[0],xmm15[1],xmm4[2,3]5332; AVX-NEXT:    vinsertf128 $1, %xmm4, %ymm0, %ymm45333; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm4[0,1],ymm3[2,0],ymm4[4,5],ymm3[6,4]5334; AVX-NEXT:    vblendps {{.*#+}} ymm3 = ymm2[0,1,2,3],ymm3[4,5,6,7]5335; AVX-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Folded Reload5336; AVX-NEXT:    # xmm2 = mem[0,1,0,1]5337; AVX-NEXT:    vblendps {{.*#+}} xmm0 = xmm2[0,1,2],xmm5[3]5338; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm1[1,0],ymm14[2,0],ymm1[5,4],ymm14[6,4]5339; AVX-NEXT:    vextractf128 $1, %ymm2, %xmm25340; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm2[2,0],xmm0[2,3]5341; AVX-NEXT:    vperm2f128 {{.*#+}} ymm2 = ymm7[2,3,0,1]5342; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm7[3,0],ymm2[0,0],ymm7[7,4],ymm2[4,4]5343; AVX-NEXT:    vshufps {{.*#+}} xmm4 = xmm8[2,3,2,3]5344; AVX-NEXT:    vblendps {{.*#+}} xmm4 = xmm4[0],xmm9[1],xmm4[2,3]5345; AVX-NEXT:    vinsertf128 $1, %xmm4, %ymm0, %ymm45346; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm4[0,1],ymm2[2,0],ymm4[4,5],ymm2[6,4]5347; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm2[4,5,6,7]5348; AVX-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Folded Reload5349; AVX-NEXT:    # xmm2 = mem[0,1,0,1]5350; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm2, %xmm2 # 16-byte Folded Reload5351; AVX-NEXT:    # xmm2 = xmm2[0,1,2],mem[3]5352; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5353; AVX-NEXT:    vshufps $33, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm4 # 32-byte Folded Reload5354; AVX-NEXT:    # ymm4 = ymm1[1,0],mem[2,0],ymm1[5,4],mem[6,4]5355; AVX-NEXT:    vextractf128 $1, %ymm4, %xmm45356; AVX-NEXT:    vshufps {{.*#+}} xmm2 = xmm4[2,0],xmm2[2,3]5357; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5358; AVX-NEXT:    vperm2f128 {{.*#+}} ymm4 = ymm1[2,3,0,1]5359; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm1[3,0],ymm4[0,0],ymm1[7,4],ymm4[4,4]5360; AVX-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Folded Reload5361; AVX-NEXT:    # xmm5 = mem[2,3,2,3]5362; AVX-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm5, %xmm5 # 16-byte Folded Reload5363; AVX-NEXT:    # xmm5 = xmm5[0],mem[1],xmm5[2,3]5364; AVX-NEXT:    vinsertf128 $1, %xmm5, %ymm0, %ymm55365; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm5[0,1],ymm4[2,0],ymm5[4,5],ymm4[6,4]5366; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm4[4,5,6,7]5367; AVX-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload5368; AVX-NEXT:    # xmm4 = mem[0,1,0,1]5369; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4, %xmm4 # 16-byte Folded Reload5370; AVX-NEXT:    # xmm4 = xmm4[0,1,2],mem[3]5371; AVX-NEXT:    vshufps $33, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11, %ymm5 # 32-byte Folded Reload5372; AVX-NEXT:    # ymm5 = ymm11[1,0],mem[2,0],ymm11[5,4],mem[6,4]5373; AVX-NEXT:    vextractf128 $1, %ymm5, %xmm55374; AVX-NEXT:    vshufps {{.*#+}} xmm4 = xmm5[2,0],xmm4[2,3]5375; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5376; AVX-NEXT:    vperm2f128 {{.*#+}} ymm5 = ymm1[2,3,0,1]5377; AVX-NEXT:    vshufps {{.*#+}} ymm5 = ymm1[3,0],ymm5[0,0],ymm1[7,4],ymm5[4,4]5378; AVX-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Folded Reload5379; AVX-NEXT:    # xmm6 = mem[2,3,2,3]5380; AVX-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm6, %xmm6 # 16-byte Folded Reload5381; AVX-NEXT:    # xmm6 = xmm6[0],mem[1],xmm6[2,3]5382; AVX-NEXT:    vinsertf128 $1, %xmm6, %ymm0, %ymm65383; AVX-NEXT:    vshufps {{.*#+}} ymm5 = ymm6[0,1],ymm5[2,0],ymm6[4,5],ymm5[6,4]5384; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3],ymm5[4,5,6,7]5385; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5386; AVX-NEXT:    vmovaps %ymm1, 96(%rsi)5387; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5388; AVX-NEXT:    vmovaps %ymm1, 32(%rsi)5389; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload5390; AVX-NEXT:    vmovaps %ymm5, 64(%rsi)5391; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload5392; AVX-NEXT:    vmovaps %ymm5, (%rsi)5393; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5394; AVX-NEXT:    vmovaps %ymm1, 96(%rdx)5395; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5396; AVX-NEXT:    vmovaps %ymm1, 32(%rdx)5397; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5398; AVX-NEXT:    vmovaps %ymm1, 64(%rdx)5399; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5400; AVX-NEXT:    vmovaps %ymm1, (%rdx)5401; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5402; AVX-NEXT:    vmovaps %ymm1, 32(%rcx)5403; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5404; AVX-NEXT:    vmovaps %ymm1, 96(%rcx)5405; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5406; AVX-NEXT:    vmovaps %ymm1, 64(%rcx)5407; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5408; AVX-NEXT:    vmovaps %ymm1, (%rcx)5409; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5410; AVX-NEXT:    vmovaps %ymm1, 96(%r8)5411; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5412; AVX-NEXT:    vmovaps %ymm1, 32(%r8)5413; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5414; AVX-NEXT:    vmovaps %ymm1, 64(%r8)5415; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5416; AVX-NEXT:    vmovaps %ymm1, (%r8)5417; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5418; AVX-NEXT:    vmovaps %ymm1, 96(%r9)5419; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5420; AVX-NEXT:    vmovaps %ymm1, 32(%r9)5421; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5422; AVX-NEXT:    vmovaps %ymm1, (%r9)5423; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5424; AVX-NEXT:    vmovaps %ymm1, 64(%r9)5425; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %rax5426; AVX-NEXT:    vmovaps %ymm12, 96(%rax)5427; AVX-NEXT:    vmovaps %ymm13, 32(%rax)5428; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5429; AVX-NEXT:    vmovaps %ymm1, 64(%rax)5430; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5431; AVX-NEXT:    vmovaps %ymm1, (%rax)5432; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %rax5433; AVX-NEXT:    vmovaps %ymm4, 32(%rax)5434; AVX-NEXT:    vmovaps %ymm2, (%rax)5435; AVX-NEXT:    vmovaps %ymm0, 96(%rax)5436; AVX-NEXT:    vmovaps %ymm3, 64(%rax)5437; AVX-NEXT:    addq $1432, %rsp # imm = 0x5985438; AVX-NEXT:    vzeroupper5439; AVX-NEXT:    retq5440;5441; AVX2-LABEL: load_i32_stride7_vf32:5442; AVX2:       # %bb.0:5443; AVX2-NEXT:    subq $1192, %rsp # imm = 0x4A85444; AVX2-NEXT:    vmovdqa 320(%rdi), %ymm95445; AVX2-NEXT:    vmovdqa 256(%rdi), %ymm45446; AVX2-NEXT:    vmovdqa 224(%rdi), %ymm55447; AVX2-NEXT:    vmovdqa 544(%rdi), %ymm125448; AVX2-NEXT:    vmovdqa 480(%rdi), %ymm75449; AVX2-NEXT:    vmovdqa 448(%rdi), %ymm85450; AVX2-NEXT:    vmovdqa (%rdi), %ymm145451; AVX2-NEXT:    vmovdqa 32(%rdi), %ymm135452; AVX2-NEXT:    vmovdqa 96(%rdi), %ymm115453; AVX2-NEXT:    vpbroadcastq 80(%rdi), %ymm05454; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm0[0,1,2,3],ymm11[4,5,6,7]5455; AVX2-NEXT:    vpmovsxbd {{.*#+}} xmm0 = [0,7,6,0]5456; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm14[0,1,2,3,4,5],ymm13[6],ymm14[7]5457; AVX2-NEXT:    vmovdqu %ymm13, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5458; AVX2-NEXT:    vmovdqu %ymm14, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5459; AVX2-NEXT:    vpermd %ymm2, %ymm0, %ymm25460; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2],ymm1[3,4,5,6,7]5461; AVX2-NEXT:    vmovdqa 128(%rdi), %xmm25462; AVX2-NEXT:    vmovdqa 160(%rdi), %xmm35463; AVX2-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5464; AVX2-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]5465; AVX2-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm25466; AVX2-NEXT:    vpbroadcastd 196(%rdi), %ymm35467; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]5468; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]5469; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5470; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm8[0,1,2,3,4,5],ymm7[6],ymm8[7]5471; AVX2-NEXT:    vmovdqu %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5472; AVX2-NEXT:    vmovdqu %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5473; AVX2-NEXT:    vpermd %ymm1, %ymm0, %ymm15474; AVX2-NEXT:    vpbroadcastq 528(%rdi), %ymm25475; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm12[4,5,6,7]5476; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]5477; AVX2-NEXT:    vmovdqa 576(%rdi), %xmm25478; AVX2-NEXT:    vmovdqa 608(%rdi), %xmm35479; AVX2-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5480; AVX2-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]5481; AVX2-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm25482; AVX2-NEXT:    vpbroadcastd 644(%rdi), %ymm35483; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]5484; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]5485; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5486; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm5[0,1,2,3,4,5],ymm4[6],ymm5[7]5487; AVX2-NEXT:    vmovdqu %ymm5, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5488; AVX2-NEXT:    vmovdqu %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5489; AVX2-NEXT:    vpermd %ymm1, %ymm0, %ymm15490; AVX2-NEXT:    vpbroadcastq 304(%rdi), %ymm25491; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm9[4,5,6,7]5492; AVX2-NEXT:    vmovdqa %ymm9, %ymm105493; AVX2-NEXT:    vmovdqu %ymm9, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5494; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]5495; AVX2-NEXT:    vmovdqa 352(%rdi), %xmm25496; AVX2-NEXT:    vmovdqa 384(%rdi), %xmm35497; AVX2-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5498; AVX2-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]5499; AVX2-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm25500; AVX2-NEXT:    vpbroadcastd 420(%rdi), %ymm35501; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]5502; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]5503; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5504; AVX2-NEXT:    vmovdqa 704(%rdi), %ymm25505; AVX2-NEXT:    vmovdqa 672(%rdi), %ymm65506; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm6[0,1,2,3,4,5],ymm2[6],ymm6[7]5507; AVX2-NEXT:    vmovdqu %ymm6, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5508; AVX2-NEXT:    vmovdqa %ymm2, %ymm35509; AVX2-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5510; AVX2-NEXT:    vpermd %ymm1, %ymm0, %ymm05511; AVX2-NEXT:    vmovdqa 768(%rdi), %ymm155512; AVX2-NEXT:    vpbroadcastq 752(%rdi), %ymm15513; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm15[4,5,6,7]5514; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2],ymm1[3,4,5,6,7]5515; AVX2-NEXT:    vmovdqa 800(%rdi), %xmm15516; AVX2-NEXT:    vmovdqa 832(%rdi), %xmm25517; AVX2-NEXT:    vmovdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5518; AVX2-NEXT:    vpunpckhqdq {{.*#+}} xmm1 = xmm1[1],xmm2[1]5519; AVX2-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm15520; AVX2-NEXT:    vpbroadcastd 868(%rdi), %ymm25521; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]5522; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]5523; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5524; AVX2-NEXT:    vpshufd {{.*#+}} xmm0 = mem[2,2,2,2]5525; AVX2-NEXT:    vinserti128 $1, %xmm0, %ymm0, %ymm05526; AVX2-NEXT:    vmovdqa 608(%rdi), %ymm25527; AVX2-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5528; AVX2-NEXT:    vmovdqa 576(%rdi), %ymm15529; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5530; AVX2-NEXT:    vpalignr {{.*#+}} ymm1 = ymm2[12,13,14,15],ymm1[0,1,2,3,4,5,6,7,8,9,10,11],ymm2[28,29,30,31],ymm1[16,17,18,19,20,21,22,23,24,25,26,27]5531; AVX2-NEXT:    vpermq {{.*#+}} ymm1 = ymm1[0,1,2,0]5532; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm0[7]5533; AVX2-NEXT:    vmovdqa 512(%rdi), %ymm95534; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm12[0,1],ymm9[2,3],ymm12[4,5],ymm9[6,7]5535; AVX2-NEXT:    vmovdqu %ymm9, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5536; AVX2-NEXT:    vmovdqu %ymm12, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5537; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm7[0],ymm8[1],ymm7[2,3,4],ymm8[5],ymm7[6,7]5538; AVX2-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5539; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm0[5,6],ymm2[7]5540; AVX2-NEXT:    vpmovsxbd {{.*#+}} ymm0 = [1,0,7,6,5,6,5,6]5541; AVX2-NEXT:    vpermd %ymm2, %ymm0, %ymm25542; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]5543; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5544; AVX2-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]5545; AVX2-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm15546; AVX2-NEXT:    vmovdqa 384(%rdi), %ymm75547; AVX2-NEXT:    vmovdqu %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5548; AVX2-NEXT:    vmovdqa 352(%rdi), %ymm25549; AVX2-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5550; AVX2-NEXT:    vpalignr {{.*#+}} ymm2 = ymm7[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm7[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]5551; AVX2-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]5552; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]5553; AVX2-NEXT:    vmovdqa 288(%rdi), %ymm25554; AVX2-NEXT:    vmovdqu %ymm2, (%rsp) # 32-byte Spill5555; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm10[0,1],ymm2[2,3],ymm10[4,5],ymm2[6,7]5556; AVX2-NEXT:    vpblendd {{.*#+}} ymm4 = ymm4[0],ymm5[1],ymm4[2,3,4],ymm5[5],ymm4[6,7]5557; AVX2-NEXT:    vmovdqu %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5558; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm4[0,1,2,3,4],ymm2[5,6],ymm4[7]5559; AVX2-NEXT:    vpermd %ymm2, %ymm0, %ymm25560; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]5561; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5562; AVX2-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]5563; AVX2-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm15564; AVX2-NEXT:    vmovdqa 832(%rdi), %ymm85565; AVX2-NEXT:    vmovdqa 800(%rdi), %ymm105566; AVX2-NEXT:    vpalignr {{.*#+}} ymm2 = ymm8[12,13,14,15],ymm10[0,1,2,3,4,5,6,7,8,9,10,11],ymm8[28,29,30,31],ymm10[16,17,18,19,20,21,22,23,24,25,26,27]5567; AVX2-NEXT:    vmovdqu %ymm10, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5568; AVX2-NEXT:    vmovdqu %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5569; AVX2-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]5570; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]5571; AVX2-NEXT:    vmovdqa 736(%rdi), %ymm75572; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm15[0,1],ymm7[2,3],ymm15[4,5],ymm7[6,7]5573; AVX2-NEXT:    vmovdqu %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5574; AVX2-NEXT:    vmovdqa %ymm15, %ymm55575; AVX2-NEXT:    vmovdqu %ymm15, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5576; AVX2-NEXT:    vpblendd {{.*#+}} ymm4 = ymm3[0],ymm6[1],ymm3[2,3,4],ymm6[5],ymm3[6,7]5577; AVX2-NEXT:    vmovdqu %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5578; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm4[0,1,2,3,4],ymm2[5,6],ymm4[7]5579; AVX2-NEXT:    vpermd %ymm2, %ymm0, %ymm25580; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]5581; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5582; AVX2-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]5583; AVX2-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm15584; AVX2-NEXT:    vmovdqa 160(%rdi), %ymm65585; AVX2-NEXT:    vmovdqa 128(%rdi), %ymm155586; AVX2-NEXT:    vpalignr {{.*#+}} ymm2 = ymm6[12,13,14,15],ymm15[0,1,2,3,4,5,6,7,8,9,10,11],ymm6[28,29,30,31],ymm15[16,17,18,19,20,21,22,23,24,25,26,27]5587; AVX2-NEXT:    vmovdqu %ymm15, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5588; AVX2-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]5589; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm1[7]5590; AVX2-NEXT:    vmovdqa 64(%rdi), %ymm15591; AVX2-NEXT:    vmovdqu %ymm11, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5592; AVX2-NEXT:    vpblendd {{.*#+}} ymm3 = ymm11[0,1],ymm1[2,3],ymm11[4,5],ymm1[6,7]5593; AVX2-NEXT:    vpblendd {{.*#+}} ymm4 = ymm13[0],ymm14[1],ymm13[2,3,4],ymm14[5],ymm13[6,7]5594; AVX2-NEXT:    vmovdqu %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5595; AVX2-NEXT:    vpblendd {{.*#+}} ymm3 = ymm4[0,1,2,3,4],ymm3[5,6],ymm4[7]5596; AVX2-NEXT:    vpermd %ymm3, %ymm0, %ymm05597; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm2[5,6,7]5598; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5599; AVX2-NEXT:    vmovdqa 80(%rdi), %xmm05600; AVX2-NEXT:    vpalignr {{.*#+}} ymm2 = ymm11[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],ymm11[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23]5601; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm2[0,1,2],ymm0[3],ymm2[4,5,6,7]5602; AVX2-NEXT:    vpbroadcastd 8(%rdi), %xmm25603; AVX2-NEXT:    vmovdqa 32(%rdi), %xmm35604; AVX2-NEXT:    vpblendd {{.*#+}} xmm2 = xmm2[0],xmm3[1],xmm2[2,3]5605; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm2[0,1],ymm0[2,3,4,5,6,7]5606; AVX2-NEXT:    vpunpcklqdq {{.*#+}} ymm2 = ymm15[0],ymm6[0],ymm15[2],ymm6[2]5607; AVX2-NEXT:    vmovdqa %ymm6, %ymm115608; AVX2-NEXT:    vpbroadcastd 204(%rdi), %ymm45609; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm4[7]5610; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm2[5,6,7]5611; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5612; AVX2-NEXT:    vmovdqa 528(%rdi), %xmm05613; AVX2-NEXT:    vpalignr {{.*#+}} ymm2 = ymm12[8,9,10,11,12,13,14,15],ymm9[0,1,2,3,4,5,6,7],ymm12[24,25,26,27,28,29,30,31],ymm9[16,17,18,19,20,21,22,23]5614; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm2[0,1,2],ymm0[3],ymm2[4,5,6,7]5615; AVX2-NEXT:    vpbroadcastd 456(%rdi), %xmm45616; AVX2-NEXT:    vmovdqa 480(%rdi), %xmm25617; AVX2-NEXT:    vpblendd {{.*#+}} xmm4 = xmm4[0],xmm2[1],xmm4[2,3]5618; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm4[0,1],ymm0[2,3,4,5,6,7]5619; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload5620; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload5621; AVX2-NEXT:    vpunpcklqdq {{.*#+}} ymm4 = ymm12[0],ymm9[0],ymm12[2],ymm9[2]5622; AVX2-NEXT:    vpbroadcastd 652(%rdi), %ymm155623; AVX2-NEXT:    vpblendd {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm15[7]5624; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm4[5,6,7]5625; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5626; AVX2-NEXT:    vmovdqa 752(%rdi), %xmm05627; AVX2-NEXT:    vpalignr {{.*#+}} ymm4 = ymm5[8,9,10,11,12,13,14,15],ymm7[0,1,2,3,4,5,6,7],ymm5[24,25,26,27,28,29,30,31],ymm7[16,17,18,19,20,21,22,23]5628; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm4[0,1,2],ymm0[3],ymm4[4,5,6,7]5629; AVX2-NEXT:    vpbroadcastd 680(%rdi), %xmm155630; AVX2-NEXT:    vmovdqa 704(%rdi), %xmm75631; AVX2-NEXT:    vpblendd {{.*#+}} xmm15 = xmm15[0],xmm7[1],xmm15[2,3]5632; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm15[0,1],ymm0[2,3,4,5,6,7]5633; AVX2-NEXT:    vpunpcklqdq {{.*#+}} ymm15 = ymm10[0],ymm8[0],ymm10[2],ymm8[2]5634; AVX2-NEXT:    vpbroadcastd 876(%rdi), %ymm135635; AVX2-NEXT:    vpblendd {{.*#+}} ymm13 = ymm15[0,1,2,3,4,5,6],ymm13[7]5636; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm13[5,6,7]5637; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5638; AVX2-NEXT:    vmovdqa 304(%rdi), %xmm05639; AVX2-NEXT:    vmovdqu (%rsp), %ymm5 # 32-byte Reload5640; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload5641; AVX2-NEXT:    vpalignr {{.*#+}} ymm13 = ymm4[8,9,10,11,12,13,14,15],ymm5[0,1,2,3,4,5,6,7],ymm4[24,25,26,27,28,29,30,31],ymm5[16,17,18,19,20,21,22,23]5642; AVX2-NEXT:    vpblendd {{.*#+}} ymm13 = ymm13[0,1,2],ymm0[3],ymm13[4,5,6,7]5643; AVX2-NEXT:    vpbroadcastd 232(%rdi), %xmm155644; AVX2-NEXT:    vmovdqa 256(%rdi), %xmm05645; AVX2-NEXT:    vpblendd {{.*#+}} xmm15 = xmm15[0],xmm0[1],xmm15[2,3]5646; AVX2-NEXT:    vpblendd {{.*#+}} ymm13 = ymm15[0,1],ymm13[2,3,4,5,6,7]5647; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5648; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Reload5649; AVX2-NEXT:    vpunpcklqdq {{.*#+}} ymm15 = ymm6[0],ymm8[0],ymm6[2],ymm8[2]5650; AVX2-NEXT:    vpbroadcastd 428(%rdi), %ymm145651; AVX2-NEXT:    vpblendd {{.*#+}} ymm14 = ymm15[0,1,2,3,4,5,6],ymm14[7]5652; AVX2-NEXT:    vpblendd {{.*#+}} ymm13 = ymm13[0,1,2,3,4],ymm14[5,6,7]5653; AVX2-NEXT:    vmovdqu %ymm13, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5654; AVX2-NEXT:    vpblendd $253, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload5655; AVX2-NEXT:    # ymm1 = mem[0],ymm1[1],mem[2,3,4,5,6,7]5656; AVX2-NEXT:    vpblendd {{.*#+}} xmm3 = xmm3[0,1,2],mem[3]5657; AVX2-NEXT:    vpshufd {{.*#+}} xmm3 = xmm3[3,2,2,3]5658; AVX2-NEXT:    vpshufd {{.*#+}} ymm1 = ymm1[3,1,1,0,7,5,5,4]5659; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm3[0,1],ymm1[2,3,4,5,6,7]5660; AVX2-NEXT:    vmovdqa %ymm11, %ymm135661; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload5662; AVX2-NEXT:    vshufps {{.*#+}} ymm3 = ymm10[0,2],ymm11[1,3],ymm10[4,6],ymm11[5,7]5663; AVX2-NEXT:    vbroadcastss 208(%rdi), %ymm115664; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5,6],ymm11[7]5665; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm3[5,6,7]5666; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5667; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5668; AVX2-NEXT:    vpblendd $253, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload5669; AVX2-NEXT:    # ymm1 = mem[0],ymm1[1],mem[2,3,4,5,6,7]5670; AVX2-NEXT:    vpblendd {{.*#+}} xmm2 = xmm2[0,1,2],mem[3]5671; AVX2-NEXT:    vpshufd {{.*#+}} xmm2 = xmm2[3,2,2,3]5672; AVX2-NEXT:    vpshufd {{.*#+}} ymm1 = ymm1[3,1,1,0,7,5,5,4]5673; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1],ymm1[2,3,4,5,6,7]5674; AVX2-NEXT:    vshufps {{.*#+}} ymm2 = ymm12[0,2],ymm9[1,3],ymm12[4,6],ymm9[5,7]5675; AVX2-NEXT:    vbroadcastss 656(%rdi), %ymm35676; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]5677; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]5678; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5679; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm4[0],ymm5[1],ymm4[2,3,4,5,6,7]5680; AVX2-NEXT:    vpblendd {{.*#+}} xmm0 = xmm0[0,1,2],mem[3]5681; AVX2-NEXT:    vpshufd {{.*#+}} xmm0 = xmm0[3,2,2,3]5682; AVX2-NEXT:    vpshufd {{.*#+}} ymm1 = ymm1[3,1,1,0,7,5,5,4]5683; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3,4,5,6,7]5684; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm6[0,2],ymm8[1,3],ymm6[4,6],ymm8[5,7]5685; AVX2-NEXT:    vmovaps %ymm6, %ymm155686; AVX2-NEXT:    vbroadcastss 432(%rdi), %ymm25687; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]5688; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]5689; AVX2-NEXT:    vmovdqu %ymm0, (%rsp) # 32-byte Spill5690; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5691; AVX2-NEXT:    vpblendd $253, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload5692; AVX2-NEXT:    # ymm0 = mem[0],ymm0[1],mem[2,3,4,5,6,7]5693; AVX2-NEXT:    vpblendd {{.*#+}} xmm1 = xmm7[0,1,2],mem[3]5694; AVX2-NEXT:    vpshufd {{.*#+}} xmm1 = xmm1[3,2,2,3]5695; AVX2-NEXT:    vpshufd {{.*#+}} ymm0 = ymm0[3,1,1,0,7,5,5,4]5696; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]5697; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload5698; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5699; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm14[0,2],ymm6[1,3],ymm14[4,6],ymm6[5,7]5700; AVX2-NEXT:    vbroadcastss 880(%rdi), %ymm25701; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]5702; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]5703; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5704; AVX2-NEXT:    vmovsd {{.*#+}} xmm1 = [4,3,0,0]5705; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5706; AVX2-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload5707; AVX2-NEXT:    # ymm0 = mem[0,1,2,3],ymm0[4,5,6,7]5708; AVX2-NEXT:    vpermps %ymm0, %ymm1, %ymm05709; AVX2-NEXT:    vbroadcastss 548(%rdi), %xmm25710; AVX2-NEXT:    vmovaps 512(%rdi), %xmm75711; AVX2-NEXT:    vblendps {{.*#+}} xmm2 = xmm7[0,1,2],xmm2[3]5712; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0,1],xmm2[2,3]5713; AVX2-NEXT:    vbroadcastsd {{.*#+}} ymm11 = [0,7,0,7,0,7,0,7]5714; AVX2-NEXT:    vpermps %ymm12, %ymm11, %ymm25715; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5],ymm9[6,7]5716; AVX2-NEXT:    vmovaps %ymm9, %ymm125717; AVX2-NEXT:    vbroadcastss 660(%rdi), %ymm35718; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]5719; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm2[4,5,6,7]5720; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5721; AVX2-NEXT:    vbroadcastss 100(%rdi), %xmm25722; AVX2-NEXT:    vmovaps 64(%rdi), %xmm05723; AVX2-NEXT:    vblendps {{.*#+}} xmm2 = xmm0[0,1,2],xmm2[3]5724; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload5725; AVX2-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload5726; AVX2-NEXT:    # ymm3 = mem[0,1,2,3],ymm3[4,5,6,7]5727; AVX2-NEXT:    vpermps %ymm3, %ymm1, %ymm35728; AVX2-NEXT:    vblendps {{.*#+}} xmm2 = xmm3[0,1],xmm2[2,3]5729; AVX2-NEXT:    vpermps %ymm10, %ymm11, %ymm35730; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5],ymm13[6,7]5731; AVX2-NEXT:    vbroadcastss 212(%rdi), %ymm45732; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5,6],ymm4[7]5733; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6,7]5734; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5735; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload5736; AVX2-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2, %ymm2 # 32-byte Folded Reload5737; AVX2-NEXT:    # ymm2 = mem[0,1,2,3],ymm2[4,5,6,7]5738; AVX2-NEXT:    vpermps %ymm2, %ymm1, %ymm35739; AVX2-NEXT:    vbroadcastss 324(%rdi), %xmm45740; AVX2-NEXT:    vmovaps 288(%rdi), %xmm25741; AVX2-NEXT:    vblendps {{.*#+}} xmm4 = xmm2[0,1,2],xmm4[3]5742; AVX2-NEXT:    vblendps {{.*#+}} xmm3 = xmm3[0,1],xmm4[2,3]5743; AVX2-NEXT:    vpermps %ymm15, %ymm11, %ymm45744; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5],ymm8[6,7]5745; AVX2-NEXT:    vmovaps %ymm8, %ymm95746; AVX2-NEXT:    vbroadcastss 436(%rdi), %ymm85747; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm8[7]5748; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3],ymm4[4,5,6,7]5749; AVX2-NEXT:    vmovups %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5750; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload5751; AVX2-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload5752; AVX2-NEXT:    # ymm3 = mem[0,1,2,3],ymm3[4,5,6,7]5753; AVX2-NEXT:    vpermps %ymm3, %ymm1, %ymm15754; AVX2-NEXT:    vbroadcastss 772(%rdi), %xmm45755; AVX2-NEXT:    vmovaps 736(%rdi), %xmm35756; AVX2-NEXT:    vblendps {{.*#+}} xmm4 = xmm3[0,1,2],xmm4[3]5757; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm4[2,3]5758; AVX2-NEXT:    vpermps %ymm14, %ymm11, %ymm45759; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5],ymm6[6,7]5760; AVX2-NEXT:    vbroadcastss 884(%rdi), %ymm85761; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm8[7]5762; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm4[4,5,6,7]5763; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5764; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm13[0],ymm10[1],ymm13[2,3,4],ymm10[5],ymm13[6,7]5765; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,0,3,3,5,4,7,7]5766; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,0,3]5767; AVX2-NEXT:    vbroadcastss 216(%rdi), %ymm45768; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm4[7]5769; AVX2-NEXT:    vmovaps 96(%rdi), %xmm105770; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm10[0,1,2],xmm0[3]5771; AVX2-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[0,1,3,2]5772; AVX2-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Folded Reload5773; AVX2-NEXT:    # ymm4 = mem[1,0,2,3,5,4,6,7]5774; AVX2-NEXT:    vextractf128 $1, %ymm4, %xmm45775; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm4[0,1],xmm0[2,3]5776; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]5777; AVX2-NEXT:    vmovaps 544(%rdi), %xmm45778; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm4[0,1,2],xmm7[3]5779; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,3,2]5780; AVX2-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Folded Reload5781; AVX2-NEXT:    # ymm5 = mem[1,0,2,3,5,4,6,7]5782; AVX2-NEXT:    vextractf128 $1, %ymm5, %xmm55783; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm5[0,1],xmm1[2,3]5784; AVX2-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm12, %ymm5 # 32-byte Folded Reload5785; AVX2-NEXT:    # ymm5 = ymm12[0],mem[1],ymm12[2,3,4],mem[5],ymm12[6,7]5786; AVX2-NEXT:    vshufps {{.*#+}} ymm5 = ymm5[1,0,3,3,5,4,7,7]5787; AVX2-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[0,1,0,3]5788; AVX2-NEXT:    vbroadcastss 664(%rdi), %ymm75789; AVX2-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3,4,5,6],ymm7[7]5790; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm5[4,5,6,7]5791; AVX2-NEXT:    vmovaps 320(%rdi), %xmm125792; AVX2-NEXT:    vblendps {{.*#+}} xmm2 = xmm12[0,1,2],xmm2[3]5793; AVX2-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[0,1,3,2]5794; AVX2-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Folded Reload5795; AVX2-NEXT:    # ymm5 = mem[1,0,2,3,5,4,6,7]5796; AVX2-NEXT:    vextractf128 $1, %ymm5, %xmm55797; AVX2-NEXT:    vblendps {{.*#+}} xmm2 = xmm5[0,1],xmm2[2,3]5798; AVX2-NEXT:    vblendps {{.*#+}} ymm5 = ymm9[0],ymm15[1],ymm9[2,3,4],ymm15[5],ymm9[6,7]5799; AVX2-NEXT:    vshufps {{.*#+}} ymm5 = ymm5[1,0,3,3,5,4,7,7]5800; AVX2-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[0,1,0,3]5801; AVX2-NEXT:    vbroadcastss 440(%rdi), %ymm75802; AVX2-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3,4,5,6],ymm7[7]5803; AVX2-NEXT:    vblendps {{.*#+}} ymm5 = ymm2[0,1,2,3],ymm5[4,5,6,7]5804; AVX2-NEXT:    vmovaps 768(%rdi), %xmm25805; AVX2-NEXT:    vblendps {{.*#+}} xmm3 = xmm2[0,1,2],xmm3[3]5806; AVX2-NEXT:    vshufps {{.*#+}} xmm3 = xmm3[0,1,3,2]5807; AVX2-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Folded Reload5808; AVX2-NEXT:    # ymm7 = mem[1,0,2,3,5,4,6,7]5809; AVX2-NEXT:    vextractf128 $1, %ymm7, %xmm75810; AVX2-NEXT:    vblendps {{.*#+}} xmm3 = xmm7[0,1],xmm3[2,3]5811; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm6[0],ymm14[1],ymm6[2,3,4],ymm14[5],ymm6[6,7]5812; AVX2-NEXT:    vshufps {{.*#+}} ymm7 = ymm7[1,0,3,3,5,4,7,7]5813; AVX2-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,0,3]5814; AVX2-NEXT:    vbroadcastss 888(%rdi), %ymm85815; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3,4,5,6],ymm8[7]5816; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm3[0,1,2,3],ymm7[4,5,6,7]5817; AVX2-NEXT:    vbroadcastss 584(%rdi), %xmm35818; AVX2-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload5819; AVX2-NEXT:    # xmm3 = xmm3[0],mem[1],xmm3[2,3]5820; AVX2-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm35821; AVX2-NEXT:    vpermps 640(%rdi), %ymm11, %ymm85822; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5],ymm8[6,7]5823; AVX2-NEXT:    vbroadcastss 528(%rdi), %ymm85824; AVX2-NEXT:    vblendps {{.*#+}} xmm4 = xmm8[0,1,2],xmm4[3]5825; AVX2-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Folded Reload5826; AVX2-NEXT:    # ymm8 = mem[2,3,2,3,6,7,6,7]5827; AVX2-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm8, %ymm8 # 32-byte Folded Reload5828; AVX2-NEXT:    # ymm8 = ymm8[0],mem[1],ymm8[2,3,4],mem[5],ymm8[6,7]5829; AVX2-NEXT:    vextractf128 $1, %ymm8, %xmm85830; AVX2-NEXT:    vblendps {{.*#+}} xmm4 = xmm8[0,1],xmm4[2,3]5831; AVX2-NEXT:    vblendps {{.*#+}} ymm8 = ymm4[0,1,2,3],ymm3[4,5,6,7]5832; AVX2-NEXT:    vbroadcastss 808(%rdi), %xmm35833; AVX2-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload5834; AVX2-NEXT:    # xmm3 = xmm3[0],mem[1],xmm3[2,3]5835; AVX2-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm35836; AVX2-NEXT:    vpermps 864(%rdi), %ymm11, %ymm45837; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5],ymm4[6,7]5838; AVX2-NEXT:    vbroadcastss 752(%rdi), %ymm45839; AVX2-NEXT:    vblendps {{.*#+}} xmm2 = xmm4[0,1,2],xmm2[3]5840; AVX2-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Folded Reload5841; AVX2-NEXT:    # ymm4 = mem[2,3,2,3,6,7,6,7]5842; AVX2-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm4 # 32-byte Folded Reload5843; AVX2-NEXT:    # ymm4 = ymm4[0],mem[1],ymm4[2,3,4],mem[5],ymm4[6,7]5844; AVX2-NEXT:    vextractf128 $1, %ymm4, %xmm45845; AVX2-NEXT:    vblendps {{.*#+}} xmm2 = xmm4[0,1],xmm2[2,3]5846; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6,7]5847; AVX2-NEXT:    vbroadcastss 136(%rdi), %xmm35848; AVX2-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload5849; AVX2-NEXT:    # xmm3 = xmm3[0],mem[1],xmm3[2,3]5850; AVX2-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm35851; AVX2-NEXT:    vpermps 192(%rdi), %ymm11, %ymm45852; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5],ymm4[6,7]5853; AVX2-NEXT:    vbroadcastss 80(%rdi), %ymm45854; AVX2-NEXT:    vblendps {{.*#+}} xmm4 = xmm4[0,1,2],xmm10[3]5855; AVX2-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Folded Reload5856; AVX2-NEXT:    # ymm6 = mem[2,3,2,3,6,7,6,7]5857; AVX2-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm6, %ymm6 # 32-byte Folded Reload5858; AVX2-NEXT:    # ymm6 = ymm6[0],mem[1],ymm6[2,3,4],mem[5],ymm6[6,7]5859; AVX2-NEXT:    vextractf128 $1, %ymm6, %xmm65860; AVX2-NEXT:    vblendps {{.*#+}} xmm4 = xmm6[0,1],xmm4[2,3]5861; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm4[0,1,2,3],ymm3[4,5,6,7]5862; AVX2-NEXT:    vbroadcastss 360(%rdi), %xmm45863; AVX2-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4, %xmm4 # 16-byte Folded Reload5864; AVX2-NEXT:    # xmm4 = xmm4[0],mem[1],xmm4[2,3]5865; AVX2-NEXT:    vpermps 416(%rdi), %ymm11, %ymm65866; AVX2-NEXT:    vinsertf128 $1, %xmm4, %ymm0, %ymm45867; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5],ymm6[6,7]5868; AVX2-NEXT:    vbroadcastss 304(%rdi), %ymm65869; AVX2-NEXT:    vblendps {{.*#+}} xmm6 = xmm6[0,1,2],xmm12[3]5870; AVX2-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Folded Reload5871; AVX2-NEXT:    # ymm10 = mem[2,3,2,3,6,7,6,7]5872; AVX2-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm10, %ymm10 # 32-byte Folded Reload5873; AVX2-NEXT:    # ymm10 = ymm10[0],mem[1],ymm10[2,3,4],mem[5],ymm10[6,7]5874; AVX2-NEXT:    vextractf128 $1, %ymm10, %xmm105875; AVX2-NEXT:    vblendps {{.*#+}} xmm6 = xmm10[0,1],xmm6[2,3]5876; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm6[0,1,2,3],ymm4[4,5,6,7]5877; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5878; AVX2-NEXT:    vmovaps %ymm6, 96(%rsi)5879; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5880; AVX2-NEXT:    vmovaps %ymm6, 32(%rsi)5881; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5882; AVX2-NEXT:    vmovaps %ymm6, 64(%rsi)5883; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5884; AVX2-NEXT:    vmovaps %ymm6, (%rsi)5885; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5886; AVX2-NEXT:    vmovaps %ymm6, 96(%rdx)5887; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5888; AVX2-NEXT:    vmovaps %ymm6, 32(%rdx)5889; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5890; AVX2-NEXT:    vmovaps %ymm6, 64(%rdx)5891; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5892; AVX2-NEXT:    vmovaps %ymm6, (%rdx)5893; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5894; AVX2-NEXT:    vmovaps %ymm6, 32(%rcx)5895; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5896; AVX2-NEXT:    vmovaps %ymm6, 96(%rcx)5897; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5898; AVX2-NEXT:    vmovaps %ymm6, 64(%rcx)5899; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5900; AVX2-NEXT:    vmovaps %ymm6, (%rcx)5901; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5902; AVX2-NEXT:    vmovaps %ymm6, 96(%r8)5903; AVX2-NEXT:    vmovups (%rsp), %ymm6 # 32-byte Reload5904; AVX2-NEXT:    vmovaps %ymm6, 32(%r8)5905; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5906; AVX2-NEXT:    vmovaps %ymm6, 64(%r8)5907; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5908; AVX2-NEXT:    vmovaps %ymm6, (%r8)5909; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5910; AVX2-NEXT:    vmovaps %ymm6, 96(%r9)5911; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5912; AVX2-NEXT:    vmovaps %ymm6, 32(%r9)5913; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5914; AVX2-NEXT:    vmovaps %ymm6, (%r9)5915; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5916; AVX2-NEXT:    vmovaps %ymm6, 64(%r9)5917; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %rax5918; AVX2-NEXT:    vmovaps %ymm7, 96(%rax)5919; AVX2-NEXT:    vmovaps %ymm5, 32(%rax)5920; AVX2-NEXT:    vmovaps %ymm1, 64(%rax)5921; AVX2-NEXT:    vmovaps %ymm0, (%rax)5922; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %rax5923; AVX2-NEXT:    vmovaps %ymm4, 32(%rax)5924; AVX2-NEXT:    vmovaps %ymm3, (%rax)5925; AVX2-NEXT:    vmovaps %ymm2, 96(%rax)5926; AVX2-NEXT:    vmovaps %ymm8, 64(%rax)5927; AVX2-NEXT:    addq $1192, %rsp # imm = 0x4A85928; AVX2-NEXT:    vzeroupper5929; AVX2-NEXT:    retq5930;5931; AVX2-FP-LABEL: load_i32_stride7_vf32:5932; AVX2-FP:       # %bb.0:5933; AVX2-FP-NEXT:    subq $1192, %rsp # imm = 0x4A85934; AVX2-FP-NEXT:    vmovdqa 320(%rdi), %ymm95935; AVX2-FP-NEXT:    vmovdqa 256(%rdi), %ymm45936; AVX2-FP-NEXT:    vmovdqa 224(%rdi), %ymm55937; AVX2-FP-NEXT:    vmovdqa 544(%rdi), %ymm125938; AVX2-FP-NEXT:    vmovdqa 480(%rdi), %ymm75939; AVX2-FP-NEXT:    vmovdqa 448(%rdi), %ymm85940; AVX2-FP-NEXT:    vmovdqa (%rdi), %ymm145941; AVX2-FP-NEXT:    vmovdqa 32(%rdi), %ymm135942; AVX2-FP-NEXT:    vmovdqa 96(%rdi), %ymm115943; AVX2-FP-NEXT:    vpbroadcastq 80(%rdi), %ymm05944; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm0[0,1,2,3],ymm11[4,5,6,7]5945; AVX2-FP-NEXT:    vpmovsxbd {{.*#+}} xmm0 = [0,7,6,0]5946; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm14[0,1,2,3,4,5],ymm13[6],ymm14[7]5947; AVX2-FP-NEXT:    vmovdqu %ymm13, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5948; AVX2-FP-NEXT:    vmovdqu %ymm14, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5949; AVX2-FP-NEXT:    vpermd %ymm2, %ymm0, %ymm25950; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2],ymm1[3,4,5,6,7]5951; AVX2-FP-NEXT:    vmovdqa 128(%rdi), %xmm25952; AVX2-FP-NEXT:    vmovdqa 160(%rdi), %xmm35953; AVX2-FP-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5954; AVX2-FP-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]5955; AVX2-FP-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm25956; AVX2-FP-NEXT:    vpbroadcastd 196(%rdi), %ymm35957; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]5958; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]5959; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5960; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm8[0,1,2,3,4,5],ymm7[6],ymm8[7]5961; AVX2-FP-NEXT:    vmovdqu %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5962; AVX2-FP-NEXT:    vmovdqu %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5963; AVX2-FP-NEXT:    vpermd %ymm1, %ymm0, %ymm15964; AVX2-FP-NEXT:    vpbroadcastq 528(%rdi), %ymm25965; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm12[4,5,6,7]5966; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]5967; AVX2-FP-NEXT:    vmovdqa 576(%rdi), %xmm25968; AVX2-FP-NEXT:    vmovdqa 608(%rdi), %xmm35969; AVX2-FP-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5970; AVX2-FP-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]5971; AVX2-FP-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm25972; AVX2-FP-NEXT:    vpbroadcastd 644(%rdi), %ymm35973; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]5974; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]5975; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5976; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm5[0,1,2,3,4,5],ymm4[6],ymm5[7]5977; AVX2-FP-NEXT:    vmovdqu %ymm5, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5978; AVX2-FP-NEXT:    vmovdqu %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5979; AVX2-FP-NEXT:    vpermd %ymm1, %ymm0, %ymm15980; AVX2-FP-NEXT:    vpbroadcastq 304(%rdi), %ymm25981; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm9[4,5,6,7]5982; AVX2-FP-NEXT:    vmovdqa %ymm9, %ymm105983; AVX2-FP-NEXT:    vmovdqu %ymm9, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5984; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]5985; AVX2-FP-NEXT:    vmovdqa 352(%rdi), %xmm25986; AVX2-FP-NEXT:    vmovdqa 384(%rdi), %xmm35987; AVX2-FP-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5988; AVX2-FP-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]5989; AVX2-FP-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm25990; AVX2-FP-NEXT:    vpbroadcastd 420(%rdi), %ymm35991; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]5992; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]5993; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5994; AVX2-FP-NEXT:    vmovdqa 704(%rdi), %ymm25995; AVX2-FP-NEXT:    vmovdqa 672(%rdi), %ymm65996; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm6[0,1,2,3,4,5],ymm2[6],ymm6[7]5997; AVX2-FP-NEXT:    vmovdqu %ymm6, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5998; AVX2-FP-NEXT:    vmovdqa %ymm2, %ymm35999; AVX2-FP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6000; AVX2-FP-NEXT:    vpermd %ymm1, %ymm0, %ymm06001; AVX2-FP-NEXT:    vmovdqa 768(%rdi), %ymm156002; AVX2-FP-NEXT:    vpbroadcastq 752(%rdi), %ymm16003; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm15[4,5,6,7]6004; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2],ymm1[3,4,5,6,7]6005; AVX2-FP-NEXT:    vmovdqa 800(%rdi), %xmm16006; AVX2-FP-NEXT:    vmovdqa 832(%rdi), %xmm26007; AVX2-FP-NEXT:    vmovdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6008; AVX2-FP-NEXT:    vpunpckhqdq {{.*#+}} xmm1 = xmm1[1],xmm2[1]6009; AVX2-FP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm16010; AVX2-FP-NEXT:    vpbroadcastd 868(%rdi), %ymm26011; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]6012; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]6013; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6014; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm0 = mem[2,2,2,2]6015; AVX2-FP-NEXT:    vinserti128 $1, %xmm0, %ymm0, %ymm06016; AVX2-FP-NEXT:    vmovdqa 608(%rdi), %ymm26017; AVX2-FP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6018; AVX2-FP-NEXT:    vmovdqa 576(%rdi), %ymm16019; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6020; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm1 = ymm2[12,13,14,15],ymm1[0,1,2,3,4,5,6,7,8,9,10,11],ymm2[28,29,30,31],ymm1[16,17,18,19,20,21,22,23,24,25,26,27]6021; AVX2-FP-NEXT:    vpermq {{.*#+}} ymm1 = ymm1[0,1,2,0]6022; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm0[7]6023; AVX2-FP-NEXT:    vmovdqa 512(%rdi), %ymm96024; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm12[0,1],ymm9[2,3],ymm12[4,5],ymm9[6,7]6025; AVX2-FP-NEXT:    vmovdqu %ymm9, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6026; AVX2-FP-NEXT:    vmovdqu %ymm12, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6027; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm7[0],ymm8[1],ymm7[2,3,4],ymm8[5],ymm7[6,7]6028; AVX2-FP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6029; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm0[5,6],ymm2[7]6030; AVX2-FP-NEXT:    vpmovsxbd {{.*#+}} ymm0 = [1,0,7,6,5,6,5,6]6031; AVX2-FP-NEXT:    vpermd %ymm2, %ymm0, %ymm26032; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]6033; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6034; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]6035; AVX2-FP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm16036; AVX2-FP-NEXT:    vmovdqa 384(%rdi), %ymm76037; AVX2-FP-NEXT:    vmovdqu %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6038; AVX2-FP-NEXT:    vmovdqa 352(%rdi), %ymm26039; AVX2-FP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6040; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm7[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm7[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]6041; AVX2-FP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]6042; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]6043; AVX2-FP-NEXT:    vmovdqa 288(%rdi), %ymm26044; AVX2-FP-NEXT:    vmovdqu %ymm2, (%rsp) # 32-byte Spill6045; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm10[0,1],ymm2[2,3],ymm10[4,5],ymm2[6,7]6046; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm4[0],ymm5[1],ymm4[2,3,4],ymm5[5],ymm4[6,7]6047; AVX2-FP-NEXT:    vmovdqu %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6048; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm4[0,1,2,3,4],ymm2[5,6],ymm4[7]6049; AVX2-FP-NEXT:    vpermd %ymm2, %ymm0, %ymm26050; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]6051; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6052; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]6053; AVX2-FP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm16054; AVX2-FP-NEXT:    vmovdqa 832(%rdi), %ymm86055; AVX2-FP-NEXT:    vmovdqa 800(%rdi), %ymm106056; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm8[12,13,14,15],ymm10[0,1,2,3,4,5,6,7,8,9,10,11],ymm8[28,29,30,31],ymm10[16,17,18,19,20,21,22,23,24,25,26,27]6057; AVX2-FP-NEXT:    vmovdqu %ymm10, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6058; AVX2-FP-NEXT:    vmovdqu %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6059; AVX2-FP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]6060; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]6061; AVX2-FP-NEXT:    vmovdqa 736(%rdi), %ymm76062; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm15[0,1],ymm7[2,3],ymm15[4,5],ymm7[6,7]6063; AVX2-FP-NEXT:    vmovdqu %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6064; AVX2-FP-NEXT:    vmovdqa %ymm15, %ymm56065; AVX2-FP-NEXT:    vmovdqu %ymm15, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6066; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm3[0],ymm6[1],ymm3[2,3,4],ymm6[5],ymm3[6,7]6067; AVX2-FP-NEXT:    vmovdqu %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6068; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm4[0,1,2,3,4],ymm2[5,6],ymm4[7]6069; AVX2-FP-NEXT:    vpermd %ymm2, %ymm0, %ymm26070; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]6071; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6072; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]6073; AVX2-FP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm16074; AVX2-FP-NEXT:    vmovdqa 160(%rdi), %ymm66075; AVX2-FP-NEXT:    vmovdqa 128(%rdi), %ymm156076; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm6[12,13,14,15],ymm15[0,1,2,3,4,5,6,7,8,9,10,11],ymm6[28,29,30,31],ymm15[16,17,18,19,20,21,22,23,24,25,26,27]6077; AVX2-FP-NEXT:    vmovdqu %ymm15, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6078; AVX2-FP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]6079; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm1[7]6080; AVX2-FP-NEXT:    vmovdqa 64(%rdi), %ymm16081; AVX2-FP-NEXT:    vmovdqu %ymm11, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6082; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm3 = ymm11[0,1],ymm1[2,3],ymm11[4,5],ymm1[6,7]6083; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm13[0],ymm14[1],ymm13[2,3,4],ymm14[5],ymm13[6,7]6084; AVX2-FP-NEXT:    vmovdqu %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6085; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm3 = ymm4[0,1,2,3,4],ymm3[5,6],ymm4[7]6086; AVX2-FP-NEXT:    vpermd %ymm3, %ymm0, %ymm06087; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm2[5,6,7]6088; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6089; AVX2-FP-NEXT:    vmovdqa 80(%rdi), %xmm06090; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm11[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],ymm11[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23]6091; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm2[0,1,2],ymm0[3],ymm2[4,5,6,7]6092; AVX2-FP-NEXT:    vpbroadcastd 8(%rdi), %xmm26093; AVX2-FP-NEXT:    vmovdqa 32(%rdi), %xmm36094; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm2 = xmm2[0],xmm3[1],xmm2[2,3]6095; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm2[0,1],ymm0[2,3,4,5,6,7]6096; AVX2-FP-NEXT:    vpunpcklqdq {{.*#+}} ymm2 = ymm15[0],ymm6[0],ymm15[2],ymm6[2]6097; AVX2-FP-NEXT:    vmovdqa %ymm6, %ymm116098; AVX2-FP-NEXT:    vpbroadcastd 204(%rdi), %ymm46099; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm4[7]6100; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm2[5,6,7]6101; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6102; AVX2-FP-NEXT:    vmovdqa 528(%rdi), %xmm06103; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm12[8,9,10,11,12,13,14,15],ymm9[0,1,2,3,4,5,6,7],ymm12[24,25,26,27,28,29,30,31],ymm9[16,17,18,19,20,21,22,23]6104; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm2[0,1,2],ymm0[3],ymm2[4,5,6,7]6105; AVX2-FP-NEXT:    vpbroadcastd 456(%rdi), %xmm46106; AVX2-FP-NEXT:    vmovdqa 480(%rdi), %xmm26107; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm4 = xmm4[0],xmm2[1],xmm4[2,3]6108; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm4[0,1],ymm0[2,3,4,5,6,7]6109; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload6110; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload6111; AVX2-FP-NEXT:    vpunpcklqdq {{.*#+}} ymm4 = ymm12[0],ymm9[0],ymm12[2],ymm9[2]6112; AVX2-FP-NEXT:    vpbroadcastd 652(%rdi), %ymm156113; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm15[7]6114; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm4[5,6,7]6115; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6116; AVX2-FP-NEXT:    vmovdqa 752(%rdi), %xmm06117; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm4 = ymm5[8,9,10,11,12,13,14,15],ymm7[0,1,2,3,4,5,6,7],ymm5[24,25,26,27,28,29,30,31],ymm7[16,17,18,19,20,21,22,23]6118; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm4[0,1,2],ymm0[3],ymm4[4,5,6,7]6119; AVX2-FP-NEXT:    vpbroadcastd 680(%rdi), %xmm156120; AVX2-FP-NEXT:    vmovdqa 704(%rdi), %xmm76121; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm15 = xmm15[0],xmm7[1],xmm15[2,3]6122; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm15[0,1],ymm0[2,3,4,5,6,7]6123; AVX2-FP-NEXT:    vpunpcklqdq {{.*#+}} ymm15 = ymm10[0],ymm8[0],ymm10[2],ymm8[2]6124; AVX2-FP-NEXT:    vpbroadcastd 876(%rdi), %ymm136125; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm13 = ymm15[0,1,2,3,4,5,6],ymm13[7]6126; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm13[5,6,7]6127; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6128; AVX2-FP-NEXT:    vmovdqa 304(%rdi), %xmm06129; AVX2-FP-NEXT:    vmovdqu (%rsp), %ymm5 # 32-byte Reload6130; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload6131; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm13 = ymm4[8,9,10,11,12,13,14,15],ymm5[0,1,2,3,4,5,6,7],ymm4[24,25,26,27,28,29,30,31],ymm5[16,17,18,19,20,21,22,23]6132; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm13 = ymm13[0,1,2],ymm0[3],ymm13[4,5,6,7]6133; AVX2-FP-NEXT:    vpbroadcastd 232(%rdi), %xmm156134; AVX2-FP-NEXT:    vmovdqa 256(%rdi), %xmm06135; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm15 = xmm15[0],xmm0[1],xmm15[2,3]6136; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm13 = ymm15[0,1],ymm13[2,3,4,5,6,7]6137; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6138; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Reload6139; AVX2-FP-NEXT:    vpunpcklqdq {{.*#+}} ymm15 = ymm6[0],ymm8[0],ymm6[2],ymm8[2]6140; AVX2-FP-NEXT:    vpbroadcastd 428(%rdi), %ymm146141; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm14 = ymm15[0,1,2,3,4,5,6],ymm14[7]6142; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm13 = ymm13[0,1,2,3,4],ymm14[5,6,7]6143; AVX2-FP-NEXT:    vmovdqu %ymm13, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6144; AVX2-FP-NEXT:    vpblendd $253, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload6145; AVX2-FP-NEXT:    # ymm1 = mem[0],ymm1[1],mem[2,3,4,5,6,7]6146; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm3 = xmm3[0,1,2],mem[3]6147; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm3 = xmm3[3,2,2,3]6148; AVX2-FP-NEXT:    vpshufd {{.*#+}} ymm1 = ymm1[3,1,1,0,7,5,5,4]6149; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm3[0,1],ymm1[2,3,4,5,6,7]6150; AVX2-FP-NEXT:    vmovdqa %ymm11, %ymm136151; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload6152; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm3 = ymm10[0,2],ymm11[1,3],ymm10[4,6],ymm11[5,7]6153; AVX2-FP-NEXT:    vbroadcastss 208(%rdi), %ymm116154; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5,6],ymm11[7]6155; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm3[5,6,7]6156; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6157; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload6158; AVX2-FP-NEXT:    vpblendd $253, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload6159; AVX2-FP-NEXT:    # ymm1 = mem[0],ymm1[1],mem[2,3,4,5,6,7]6160; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm2 = xmm2[0,1,2],mem[3]6161; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm2 = xmm2[3,2,2,3]6162; AVX2-FP-NEXT:    vpshufd {{.*#+}} ymm1 = ymm1[3,1,1,0,7,5,5,4]6163; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1],ymm1[2,3,4,5,6,7]6164; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm2 = ymm12[0,2],ymm9[1,3],ymm12[4,6],ymm9[5,7]6165; AVX2-FP-NEXT:    vbroadcastss 656(%rdi), %ymm36166; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]6167; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]6168; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6169; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm4[0],ymm5[1],ymm4[2,3,4,5,6,7]6170; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm0 = xmm0[0,1,2],mem[3]6171; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm0 = xmm0[3,2,2,3]6172; AVX2-FP-NEXT:    vpshufd {{.*#+}} ymm1 = ymm1[3,1,1,0,7,5,5,4]6173; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3,4,5,6,7]6174; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm6[0,2],ymm8[1,3],ymm6[4,6],ymm8[5,7]6175; AVX2-FP-NEXT:    vmovaps %ymm6, %ymm156176; AVX2-FP-NEXT:    vbroadcastss 432(%rdi), %ymm26177; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]6178; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]6179; AVX2-FP-NEXT:    vmovdqu %ymm0, (%rsp) # 32-byte Spill6180; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6181; AVX2-FP-NEXT:    vpblendd $253, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload6182; AVX2-FP-NEXT:    # ymm0 = mem[0],ymm0[1],mem[2,3,4,5,6,7]6183; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm7[0,1,2],mem[3]6184; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm1 = xmm1[3,2,2,3]6185; AVX2-FP-NEXT:    vpshufd {{.*#+}} ymm0 = ymm0[3,1,1,0,7,5,5,4]6186; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]6187; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload6188; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6189; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm14[0,2],ymm6[1,3],ymm14[4,6],ymm6[5,7]6190; AVX2-FP-NEXT:    vbroadcastss 880(%rdi), %ymm26191; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]6192; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]6193; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6194; AVX2-FP-NEXT:    vmovsd {{.*#+}} xmm1 = [4,3,0,0]6195; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6196; AVX2-FP-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload6197; AVX2-FP-NEXT:    # ymm0 = mem[0,1,2,3],ymm0[4,5,6,7]6198; AVX2-FP-NEXT:    vpermps %ymm0, %ymm1, %ymm06199; AVX2-FP-NEXT:    vbroadcastss 548(%rdi), %xmm26200; AVX2-FP-NEXT:    vmovaps 512(%rdi), %xmm76201; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm2 = xmm7[0,1,2],xmm2[3]6202; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0,1],xmm2[2,3]6203; AVX2-FP-NEXT:    vbroadcastsd {{.*#+}} ymm11 = [0,7,0,7,0,7,0,7]6204; AVX2-FP-NEXT:    vpermps %ymm12, %ymm11, %ymm26205; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5],ymm9[6,7]6206; AVX2-FP-NEXT:    vmovaps %ymm9, %ymm126207; AVX2-FP-NEXT:    vbroadcastss 660(%rdi), %ymm36208; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]6209; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm2[4,5,6,7]6210; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6211; AVX2-FP-NEXT:    vbroadcastss 100(%rdi), %xmm26212; AVX2-FP-NEXT:    vmovaps 64(%rdi), %xmm06213; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm2 = xmm0[0,1,2],xmm2[3]6214; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload6215; AVX2-FP-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload6216; AVX2-FP-NEXT:    # ymm3 = mem[0,1,2,3],ymm3[4,5,6,7]6217; AVX2-FP-NEXT:    vpermps %ymm3, %ymm1, %ymm36218; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm2 = xmm3[0,1],xmm2[2,3]6219; AVX2-FP-NEXT:    vpermps %ymm10, %ymm11, %ymm36220; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5],ymm13[6,7]6221; AVX2-FP-NEXT:    vbroadcastss 212(%rdi), %ymm46222; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5,6],ymm4[7]6223; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6,7]6224; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6225; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload6226; AVX2-FP-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2, %ymm2 # 32-byte Folded Reload6227; AVX2-FP-NEXT:    # ymm2 = mem[0,1,2,3],ymm2[4,5,6,7]6228; AVX2-FP-NEXT:    vpermps %ymm2, %ymm1, %ymm36229; AVX2-FP-NEXT:    vbroadcastss 324(%rdi), %xmm46230; AVX2-FP-NEXT:    vmovaps 288(%rdi), %xmm26231; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm4 = xmm2[0,1,2],xmm4[3]6232; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm3 = xmm3[0,1],xmm4[2,3]6233; AVX2-FP-NEXT:    vpermps %ymm15, %ymm11, %ymm46234; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5],ymm8[6,7]6235; AVX2-FP-NEXT:    vmovaps %ymm8, %ymm96236; AVX2-FP-NEXT:    vbroadcastss 436(%rdi), %ymm86237; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm8[7]6238; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3],ymm4[4,5,6,7]6239; AVX2-FP-NEXT:    vmovups %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6240; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload6241; AVX2-FP-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload6242; AVX2-FP-NEXT:    # ymm3 = mem[0,1,2,3],ymm3[4,5,6,7]6243; AVX2-FP-NEXT:    vpermps %ymm3, %ymm1, %ymm16244; AVX2-FP-NEXT:    vbroadcastss 772(%rdi), %xmm46245; AVX2-FP-NEXT:    vmovaps 736(%rdi), %xmm36246; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm4 = xmm3[0,1,2],xmm4[3]6247; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm4[2,3]6248; AVX2-FP-NEXT:    vpermps %ymm14, %ymm11, %ymm46249; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5],ymm6[6,7]6250; AVX2-FP-NEXT:    vbroadcastss 884(%rdi), %ymm86251; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm8[7]6252; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm4[4,5,6,7]6253; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6254; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm13[0],ymm10[1],ymm13[2,3,4],ymm10[5],ymm13[6,7]6255; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,0,3,3,5,4,7,7]6256; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,0,3]6257; AVX2-FP-NEXT:    vbroadcastss 216(%rdi), %ymm46258; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm4[7]6259; AVX2-FP-NEXT:    vmovaps 96(%rdi), %xmm106260; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm10[0,1,2],xmm0[3]6261; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[0,1,3,2]6262; AVX2-FP-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Folded Reload6263; AVX2-FP-NEXT:    # ymm4 = mem[1,0,2,3,5,4,6,7]6264; AVX2-FP-NEXT:    vextractf128 $1, %ymm4, %xmm46265; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm4[0,1],xmm0[2,3]6266; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]6267; AVX2-FP-NEXT:    vmovaps 544(%rdi), %xmm46268; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm4[0,1,2],xmm7[3]6269; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,3,2]6270; AVX2-FP-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Folded Reload6271; AVX2-FP-NEXT:    # ymm5 = mem[1,0,2,3,5,4,6,7]6272; AVX2-FP-NEXT:    vextractf128 $1, %ymm5, %xmm56273; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm5[0,1],xmm1[2,3]6274; AVX2-FP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm12, %ymm5 # 32-byte Folded Reload6275; AVX2-FP-NEXT:    # ymm5 = ymm12[0],mem[1],ymm12[2,3,4],mem[5],ymm12[6,7]6276; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm5 = ymm5[1,0,3,3,5,4,7,7]6277; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[0,1,0,3]6278; AVX2-FP-NEXT:    vbroadcastss 664(%rdi), %ymm76279; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3,4,5,6],ymm7[7]6280; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm5[4,5,6,7]6281; AVX2-FP-NEXT:    vmovaps 320(%rdi), %xmm126282; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm2 = xmm12[0,1,2],xmm2[3]6283; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[0,1,3,2]6284; AVX2-FP-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Folded Reload6285; AVX2-FP-NEXT:    # ymm5 = mem[1,0,2,3,5,4,6,7]6286; AVX2-FP-NEXT:    vextractf128 $1, %ymm5, %xmm56287; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm2 = xmm5[0,1],xmm2[2,3]6288; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm5 = ymm9[0],ymm15[1],ymm9[2,3,4],ymm15[5],ymm9[6,7]6289; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm5 = ymm5[1,0,3,3,5,4,7,7]6290; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[0,1,0,3]6291; AVX2-FP-NEXT:    vbroadcastss 440(%rdi), %ymm76292; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3,4,5,6],ymm7[7]6293; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm5 = ymm2[0,1,2,3],ymm5[4,5,6,7]6294; AVX2-FP-NEXT:    vmovaps 768(%rdi), %xmm26295; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm3 = xmm2[0,1,2],xmm3[3]6296; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm3 = xmm3[0,1,3,2]6297; AVX2-FP-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Folded Reload6298; AVX2-FP-NEXT:    # ymm7 = mem[1,0,2,3,5,4,6,7]6299; AVX2-FP-NEXT:    vextractf128 $1, %ymm7, %xmm76300; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm3 = xmm7[0,1],xmm3[2,3]6301; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm6[0],ymm14[1],ymm6[2,3,4],ymm14[5],ymm6[6,7]6302; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm7 = ymm7[1,0,3,3,5,4,7,7]6303; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,0,3]6304; AVX2-FP-NEXT:    vbroadcastss 888(%rdi), %ymm86305; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3,4,5,6],ymm8[7]6306; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm3[0,1,2,3],ymm7[4,5,6,7]6307; AVX2-FP-NEXT:    vbroadcastss 584(%rdi), %xmm36308; AVX2-FP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload6309; AVX2-FP-NEXT:    # xmm3 = xmm3[0],mem[1],xmm3[2,3]6310; AVX2-FP-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm36311; AVX2-FP-NEXT:    vpermps 640(%rdi), %ymm11, %ymm86312; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5],ymm8[6,7]6313; AVX2-FP-NEXT:    vbroadcastss 528(%rdi), %ymm86314; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm4 = xmm8[0,1,2],xmm4[3]6315; AVX2-FP-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Folded Reload6316; AVX2-FP-NEXT:    # ymm8 = mem[2,3,2,3,6,7,6,7]6317; AVX2-FP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm8, %ymm8 # 32-byte Folded Reload6318; AVX2-FP-NEXT:    # ymm8 = ymm8[0],mem[1],ymm8[2,3,4],mem[5],ymm8[6,7]6319; AVX2-FP-NEXT:    vextractf128 $1, %ymm8, %xmm86320; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm4 = xmm8[0,1],xmm4[2,3]6321; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm8 = ymm4[0,1,2,3],ymm3[4,5,6,7]6322; AVX2-FP-NEXT:    vbroadcastss 808(%rdi), %xmm36323; AVX2-FP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload6324; AVX2-FP-NEXT:    # xmm3 = xmm3[0],mem[1],xmm3[2,3]6325; AVX2-FP-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm36326; AVX2-FP-NEXT:    vpermps 864(%rdi), %ymm11, %ymm46327; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5],ymm4[6,7]6328; AVX2-FP-NEXT:    vbroadcastss 752(%rdi), %ymm46329; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm2 = xmm4[0,1,2],xmm2[3]6330; AVX2-FP-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Folded Reload6331; AVX2-FP-NEXT:    # ymm4 = mem[2,3,2,3,6,7,6,7]6332; AVX2-FP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm4 # 32-byte Folded Reload6333; AVX2-FP-NEXT:    # ymm4 = ymm4[0],mem[1],ymm4[2,3,4],mem[5],ymm4[6,7]6334; AVX2-FP-NEXT:    vextractf128 $1, %ymm4, %xmm46335; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm2 = xmm4[0,1],xmm2[2,3]6336; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6,7]6337; AVX2-FP-NEXT:    vbroadcastss 136(%rdi), %xmm36338; AVX2-FP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload6339; AVX2-FP-NEXT:    # xmm3 = xmm3[0],mem[1],xmm3[2,3]6340; AVX2-FP-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm36341; AVX2-FP-NEXT:    vpermps 192(%rdi), %ymm11, %ymm46342; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5],ymm4[6,7]6343; AVX2-FP-NEXT:    vbroadcastss 80(%rdi), %ymm46344; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm4 = xmm4[0,1,2],xmm10[3]6345; AVX2-FP-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Folded Reload6346; AVX2-FP-NEXT:    # ymm6 = mem[2,3,2,3,6,7,6,7]6347; AVX2-FP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm6, %ymm6 # 32-byte Folded Reload6348; AVX2-FP-NEXT:    # ymm6 = ymm6[0],mem[1],ymm6[2,3,4],mem[5],ymm6[6,7]6349; AVX2-FP-NEXT:    vextractf128 $1, %ymm6, %xmm66350; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm4 = xmm6[0,1],xmm4[2,3]6351; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm4[0,1,2,3],ymm3[4,5,6,7]6352; AVX2-FP-NEXT:    vbroadcastss 360(%rdi), %xmm46353; AVX2-FP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4, %xmm4 # 16-byte Folded Reload6354; AVX2-FP-NEXT:    # xmm4 = xmm4[0],mem[1],xmm4[2,3]6355; AVX2-FP-NEXT:    vpermps 416(%rdi), %ymm11, %ymm66356; AVX2-FP-NEXT:    vinsertf128 $1, %xmm4, %ymm0, %ymm46357; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5],ymm6[6,7]6358; AVX2-FP-NEXT:    vbroadcastss 304(%rdi), %ymm66359; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm6 = xmm6[0,1,2],xmm12[3]6360; AVX2-FP-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Folded Reload6361; AVX2-FP-NEXT:    # ymm10 = mem[2,3,2,3,6,7,6,7]6362; AVX2-FP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm10, %ymm10 # 32-byte Folded Reload6363; AVX2-FP-NEXT:    # ymm10 = ymm10[0],mem[1],ymm10[2,3,4],mem[5],ymm10[6,7]6364; AVX2-FP-NEXT:    vextractf128 $1, %ymm10, %xmm106365; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm6 = xmm10[0,1],xmm6[2,3]6366; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm6[0,1,2,3],ymm4[4,5,6,7]6367; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6368; AVX2-FP-NEXT:    vmovaps %ymm6, 96(%rsi)6369; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6370; AVX2-FP-NEXT:    vmovaps %ymm6, 32(%rsi)6371; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6372; AVX2-FP-NEXT:    vmovaps %ymm6, 64(%rsi)6373; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6374; AVX2-FP-NEXT:    vmovaps %ymm6, (%rsi)6375; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6376; AVX2-FP-NEXT:    vmovaps %ymm6, 96(%rdx)6377; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6378; AVX2-FP-NEXT:    vmovaps %ymm6, 32(%rdx)6379; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6380; AVX2-FP-NEXT:    vmovaps %ymm6, 64(%rdx)6381; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6382; AVX2-FP-NEXT:    vmovaps %ymm6, (%rdx)6383; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6384; AVX2-FP-NEXT:    vmovaps %ymm6, 32(%rcx)6385; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6386; AVX2-FP-NEXT:    vmovaps %ymm6, 96(%rcx)6387; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6388; AVX2-FP-NEXT:    vmovaps %ymm6, 64(%rcx)6389; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6390; AVX2-FP-NEXT:    vmovaps %ymm6, (%rcx)6391; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6392; AVX2-FP-NEXT:    vmovaps %ymm6, 96(%r8)6393; AVX2-FP-NEXT:    vmovups (%rsp), %ymm6 # 32-byte Reload6394; AVX2-FP-NEXT:    vmovaps %ymm6, 32(%r8)6395; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6396; AVX2-FP-NEXT:    vmovaps %ymm6, 64(%r8)6397; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6398; AVX2-FP-NEXT:    vmovaps %ymm6, (%r8)6399; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6400; AVX2-FP-NEXT:    vmovaps %ymm6, 96(%r9)6401; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6402; AVX2-FP-NEXT:    vmovaps %ymm6, 32(%r9)6403; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6404; AVX2-FP-NEXT:    vmovaps %ymm6, (%r9)6405; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6406; AVX2-FP-NEXT:    vmovaps %ymm6, 64(%r9)6407; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %rax6408; AVX2-FP-NEXT:    vmovaps %ymm7, 96(%rax)6409; AVX2-FP-NEXT:    vmovaps %ymm5, 32(%rax)6410; AVX2-FP-NEXT:    vmovaps %ymm1, 64(%rax)6411; AVX2-FP-NEXT:    vmovaps %ymm0, (%rax)6412; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %rax6413; AVX2-FP-NEXT:    vmovaps %ymm4, 32(%rax)6414; AVX2-FP-NEXT:    vmovaps %ymm3, (%rax)6415; AVX2-FP-NEXT:    vmovaps %ymm2, 96(%rax)6416; AVX2-FP-NEXT:    vmovaps %ymm8, 64(%rax)6417; AVX2-FP-NEXT:    addq $1192, %rsp # imm = 0x4A86418; AVX2-FP-NEXT:    vzeroupper6419; AVX2-FP-NEXT:    retq6420;6421; AVX2-FCP-LABEL: load_i32_stride7_vf32:6422; AVX2-FCP:       # %bb.0:6423; AVX2-FCP-NEXT:    subq $1224, %rsp # imm = 0x4C86424; AVX2-FCP-NEXT:    vmovdqa 320(%rdi), %ymm106425; AVX2-FCP-NEXT:    vmovdqa 256(%rdi), %ymm46426; AVX2-FCP-NEXT:    vmovdqa 224(%rdi), %ymm56427; AVX2-FCP-NEXT:    vmovdqa 544(%rdi), %ymm126428; AVX2-FCP-NEXT:    vmovdqa 480(%rdi), %ymm76429; AVX2-FCP-NEXT:    vmovdqa 448(%rdi), %ymm86430; AVX2-FCP-NEXT:    vmovdqa (%rdi), %ymm146431; AVX2-FCP-NEXT:    vmovdqa 32(%rdi), %ymm26432; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6433; AVX2-FCP-NEXT:    vmovdqa 96(%rdi), %ymm16434; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6435; AVX2-FCP-NEXT:    vpbroadcastq 80(%rdi), %ymm06436; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm0[0,1,2,3],ymm1[4,5,6,7]6437; AVX2-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm0 = [0,7,6,0]6438; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm14[0,1,2,3,4,5],ymm2[6],ymm14[7]6439; AVX2-FCP-NEXT:    vmovdqu %ymm14, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6440; AVX2-FCP-NEXT:    vpermd %ymm2, %ymm0, %ymm26441; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2],ymm1[3,4,5,6,7]6442; AVX2-FCP-NEXT:    vmovdqa 128(%rdi), %xmm26443; AVX2-FCP-NEXT:    vmovdqa 160(%rdi), %xmm36444; AVX2-FCP-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6445; AVX2-FCP-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]6446; AVX2-FCP-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm26447; AVX2-FCP-NEXT:    vpbroadcastd 196(%rdi), %ymm36448; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]6449; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]6450; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6451; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm8[0,1,2,3,4,5],ymm7[6],ymm8[7]6452; AVX2-FCP-NEXT:    vmovdqu %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6453; AVX2-FCP-NEXT:    vmovdqu %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6454; AVX2-FCP-NEXT:    vpermd %ymm1, %ymm0, %ymm16455; AVX2-FCP-NEXT:    vpbroadcastq 528(%rdi), %ymm26456; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm12[4,5,6,7]6457; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]6458; AVX2-FCP-NEXT:    vmovdqa 576(%rdi), %xmm26459; AVX2-FCP-NEXT:    vmovdqa 608(%rdi), %xmm36460; AVX2-FCP-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6461; AVX2-FCP-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]6462; AVX2-FCP-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm26463; AVX2-FCP-NEXT:    vpbroadcastd 644(%rdi), %ymm36464; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]6465; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]6466; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6467; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm5[0,1,2,3,4,5],ymm4[6],ymm5[7]6468; AVX2-FCP-NEXT:    vmovdqu %ymm5, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6469; AVX2-FCP-NEXT:    vmovdqu %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6470; AVX2-FCP-NEXT:    vpermd %ymm1, %ymm0, %ymm16471; AVX2-FCP-NEXT:    vpbroadcastq 304(%rdi), %ymm26472; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm10[4,5,6,7]6473; AVX2-FCP-NEXT:    vmovdqu %ymm10, (%rsp) # 32-byte Spill6474; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]6475; AVX2-FCP-NEXT:    vmovdqa 352(%rdi), %xmm26476; AVX2-FCP-NEXT:    vmovdqa 384(%rdi), %xmm36477; AVX2-FCP-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6478; AVX2-FCP-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]6479; AVX2-FCP-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm26480; AVX2-FCP-NEXT:    vpbroadcastd 420(%rdi), %ymm36481; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]6482; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]6483; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6484; AVX2-FCP-NEXT:    vmovdqa 704(%rdi), %ymm26485; AVX2-FCP-NEXT:    vmovdqa 672(%rdi), %ymm66486; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm6[0,1,2,3,4,5],ymm2[6],ymm6[7]6487; AVX2-FCP-NEXT:    vmovdqu %ymm6, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6488; AVX2-FCP-NEXT:    vmovdqa %ymm2, %ymm36489; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6490; AVX2-FCP-NEXT:    vpermd %ymm1, %ymm0, %ymm06491; AVX2-FCP-NEXT:    vmovdqa 768(%rdi), %ymm116492; AVX2-FCP-NEXT:    vpbroadcastq 752(%rdi), %ymm16493; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm11[4,5,6,7]6494; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2],ymm1[3,4,5,6,7]6495; AVX2-FCP-NEXT:    vmovdqa 800(%rdi), %xmm16496; AVX2-FCP-NEXT:    vmovdqa 832(%rdi), %xmm26497; AVX2-FCP-NEXT:    vmovdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6498; AVX2-FCP-NEXT:    vpunpckhqdq {{.*#+}} xmm1 = xmm1[1],xmm2[1]6499; AVX2-FCP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm16500; AVX2-FCP-NEXT:    vpbroadcastd 868(%rdi), %ymm26501; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]6502; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]6503; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6504; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm0 = mem[2,2,2,2]6505; AVX2-FCP-NEXT:    vinserti128 $1, %xmm0, %ymm0, %ymm06506; AVX2-FCP-NEXT:    vmovdqa 608(%rdi), %ymm26507; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6508; AVX2-FCP-NEXT:    vmovdqa 576(%rdi), %ymm16509; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6510; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm1 = ymm2[12,13,14,15],ymm1[0,1,2,3,4,5,6,7,8,9,10,11],ymm2[28,29,30,31],ymm1[16,17,18,19,20,21,22,23,24,25,26,27]6511; AVX2-FCP-NEXT:    vpermq {{.*#+}} ymm1 = ymm1[0,1,2,0]6512; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm0[7]6513; AVX2-FCP-NEXT:    vmovdqa 512(%rdi), %ymm136514; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm12[0,1],ymm13[2,3],ymm12[4,5],ymm13[6,7]6515; AVX2-FCP-NEXT:    vmovdqu %ymm13, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6516; AVX2-FCP-NEXT:    vmovdqu %ymm12, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6517; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm7[0],ymm8[1],ymm7[2,3,4],ymm8[5],ymm7[6,7]6518; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6519; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm0[5,6],ymm2[7]6520; AVX2-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm0 = [1,0,7,6,5,6,5,6]6521; AVX2-FCP-NEXT:    vpermd %ymm2, %ymm0, %ymm26522; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]6523; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6524; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]6525; AVX2-FCP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm16526; AVX2-FCP-NEXT:    vmovdqa 384(%rdi), %ymm76527; AVX2-FCP-NEXT:    vmovdqu %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6528; AVX2-FCP-NEXT:    vmovdqa 352(%rdi), %ymm26529; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6530; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm7[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm7[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]6531; AVX2-FCP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]6532; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]6533; AVX2-FCP-NEXT:    vmovdqa 288(%rdi), %ymm26534; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6535; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm10[0,1],ymm2[2,3],ymm10[4,5],ymm2[6,7]6536; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm4[0],ymm5[1],ymm4[2,3,4],ymm5[5],ymm4[6,7]6537; AVX2-FCP-NEXT:    vmovdqu %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6538; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm4[0,1,2,3,4],ymm2[5,6],ymm4[7]6539; AVX2-FCP-NEXT:    vpermd %ymm2, %ymm0, %ymm26540; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]6541; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6542; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]6543; AVX2-FCP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm16544; AVX2-FCP-NEXT:    vmovdqa 832(%rdi), %ymm96545; AVX2-FCP-NEXT:    vmovdqa 800(%rdi), %ymm156546; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm9[12,13,14,15],ymm15[0,1,2,3,4,5,6,7,8,9,10,11],ymm9[28,29,30,31],ymm15[16,17,18,19,20,21,22,23,24,25,26,27]6547; AVX2-FCP-NEXT:    vmovdqu %ymm15, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6548; AVX2-FCP-NEXT:    vmovdqu %ymm9, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6549; AVX2-FCP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]6550; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]6551; AVX2-FCP-NEXT:    vmovdqa 736(%rdi), %ymm56552; AVX2-FCP-NEXT:    vmovdqu %ymm11, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6553; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm11[0,1],ymm5[2,3],ymm11[4,5],ymm5[6,7]6554; AVX2-FCP-NEXT:    vmovdqu %ymm5, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6555; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm3[0],ymm6[1],ymm3[2,3,4],ymm6[5],ymm3[6,7]6556; AVX2-FCP-NEXT:    vmovdqu %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6557; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm4[0,1,2,3,4],ymm2[5,6],ymm4[7]6558; AVX2-FCP-NEXT:    vpermd %ymm2, %ymm0, %ymm26559; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]6560; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6561; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]6562; AVX2-FCP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm16563; AVX2-FCP-NEXT:    vmovdqa 160(%rdi), %ymm76564; AVX2-FCP-NEXT:    vmovdqa 128(%rdi), %ymm86565; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm7[12,13,14,15],ymm8[0,1,2,3,4,5,6,7,8,9,10,11],ymm7[28,29,30,31],ymm8[16,17,18,19,20,21,22,23,24,25,26,27]6566; AVX2-FCP-NEXT:    vmovdqu %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6567; AVX2-FCP-NEXT:    vmovdqu %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6568; AVX2-FCP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]6569; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm1[7]6570; AVX2-FCP-NEXT:    vmovdqa 64(%rdi), %ymm16571; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6572; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm3 = ymm6[0,1],ymm1[2,3],ymm6[4,5],ymm1[6,7]6573; AVX2-FCP-NEXT:    vpblendd $221, {{[-0-9]+}}(%r{{[sb]}}p), %ymm14, %ymm4 # 32-byte Folded Reload6574; AVX2-FCP-NEXT:    # ymm4 = mem[0],ymm14[1],mem[2,3,4],ymm14[5],mem[6,7]6575; AVX2-FCP-NEXT:    vmovdqu %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6576; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm3 = ymm4[0,1,2,3,4],ymm3[5,6],ymm4[7]6577; AVX2-FCP-NEXT:    vpermd %ymm3, %ymm0, %ymm06578; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm2[5,6,7]6579; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6580; AVX2-FCP-NEXT:    vmovdqa 80(%rdi), %xmm06581; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm6[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],ymm6[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23]6582; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm2[0,1,2],ymm0[3],ymm2[4,5,6,7]6583; AVX2-FCP-NEXT:    vpbroadcastd 8(%rdi), %xmm26584; AVX2-FCP-NEXT:    vmovdqa 32(%rdi), %xmm36585; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm2 = xmm2[0],xmm3[1],xmm2[2,3]6586; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm2[0,1],ymm0[2,3,4,5,6,7]6587; AVX2-FCP-NEXT:    vpunpcklqdq {{.*#+}} ymm2 = ymm8[0],ymm7[0],ymm8[2],ymm7[2]6588; AVX2-FCP-NEXT:    vpbroadcastd 204(%rdi), %ymm46589; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm4[7]6590; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm2[5,6,7]6591; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6592; AVX2-FCP-NEXT:    vmovdqa 528(%rdi), %xmm06593; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm12[8,9,10,11,12,13,14,15],ymm13[0,1,2,3,4,5,6,7],ymm12[24,25,26,27,28,29,30,31],ymm13[16,17,18,19,20,21,22,23]6594; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm2[0,1,2],ymm0[3],ymm2[4,5,6,7]6595; AVX2-FCP-NEXT:    vpbroadcastd 456(%rdi), %xmm46596; AVX2-FCP-NEXT:    vmovdqa 480(%rdi), %xmm26597; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm4 = xmm4[0],xmm2[1],xmm4[2,3]6598; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm4[0,1],ymm0[2,3,4,5,6,7]6599; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Reload6600; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload6601; AVX2-FCP-NEXT:    vpunpcklqdq {{.*#+}} ymm4 = ymm8[0],ymm12[0],ymm8[2],ymm12[2]6602; AVX2-FCP-NEXT:    vpbroadcastd 652(%rdi), %ymm136603; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm13[7]6604; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm4[5,6,7]6605; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6606; AVX2-FCP-NEXT:    vmovdqa 752(%rdi), %xmm06607; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm4 = ymm11[8,9,10,11,12,13,14,15],ymm5[0,1,2,3,4,5,6,7],ymm11[24,25,26,27,28,29,30,31],ymm5[16,17,18,19,20,21,22,23]6608; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm4[0,1,2],ymm0[3],ymm4[4,5,6,7]6609; AVX2-FCP-NEXT:    vpbroadcastd 680(%rdi), %xmm136610; AVX2-FCP-NEXT:    vmovdqa 704(%rdi), %xmm106611; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm13 = xmm13[0],xmm10[1],xmm13[2,3]6612; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm13[0,1],ymm0[2,3,4,5,6,7]6613; AVX2-FCP-NEXT:    vpunpcklqdq {{.*#+}} ymm13 = ymm15[0],ymm9[0],ymm15[2],ymm9[2]6614; AVX2-FCP-NEXT:    vpbroadcastd 876(%rdi), %ymm156615; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm13 = ymm13[0,1,2,3,4,5,6],ymm15[7]6616; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm13[5,6,7]6617; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6618; AVX2-FCP-NEXT:    vmovdqa 304(%rdi), %xmm06619; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload6620; AVX2-FCP-NEXT:    vmovdqu (%rsp), %ymm6 # 32-byte Reload6621; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm13 = ymm6[8,9,10,11,12,13,14,15],ymm7[0,1,2,3,4,5,6,7],ymm6[24,25,26,27,28,29,30,31],ymm7[16,17,18,19,20,21,22,23]6622; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm13 = ymm13[0,1,2],ymm0[3],ymm13[4,5,6,7]6623; AVX2-FCP-NEXT:    vpbroadcastd 232(%rdi), %xmm156624; AVX2-FCP-NEXT:    vmovdqa 256(%rdi), %xmm06625; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm15 = xmm15[0],xmm0[1],xmm15[2,3]6626; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm13 = ymm15[0,1],ymm13[2,3,4,5,6,7]6627; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload6628; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload6629; AVX2-FCP-NEXT:    vpunpcklqdq {{.*#+}} ymm15 = ymm5[0],ymm4[0],ymm5[2],ymm4[2]6630; AVX2-FCP-NEXT:    vpbroadcastd 428(%rdi), %ymm146631; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm14 = ymm15[0,1,2,3,4,5,6],ymm14[7]6632; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm13 = ymm13[0,1,2,3,4],ymm14[5,6,7]6633; AVX2-FCP-NEXT:    vmovdqu %ymm13, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6634; AVX2-FCP-NEXT:    vpblendd $253, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload6635; AVX2-FCP-NEXT:    # ymm1 = mem[0],ymm1[1],mem[2,3,4,5,6,7]6636; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm3 = xmm3[0,1,2],mem[3]6637; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm3 = xmm3[3,2,2,3]6638; AVX2-FCP-NEXT:    vpshufd {{.*#+}} ymm1 = ymm1[3,1,1,0,7,5,5,4]6639; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm3[0,1],ymm1[2,3,4,5,6,7]6640; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload6641; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm15 # 32-byte Reload6642; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm3 = ymm15[0,2],ymm9[1,3],ymm15[4,6],ymm9[5,7]6643; AVX2-FCP-NEXT:    vbroadcastss 208(%rdi), %ymm116644; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5,6],ymm11[7]6645; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm3[5,6,7]6646; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6647; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload6648; AVX2-FCP-NEXT:    vpblendd $253, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload6649; AVX2-FCP-NEXT:    # ymm1 = mem[0],ymm1[1],mem[2,3,4,5,6,7]6650; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm2 = xmm2[0,1,2],mem[3]6651; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm2 = xmm2[3,2,2,3]6652; AVX2-FCP-NEXT:    vpshufd {{.*#+}} ymm1 = ymm1[3,1,1,0,7,5,5,4]6653; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1],ymm1[2,3,4,5,6,7]6654; AVX2-FCP-NEXT:    vmovdqa %ymm8, %ymm136655; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm2 = ymm8[0,2],ymm12[1,3],ymm8[4,6],ymm12[5,7]6656; AVX2-FCP-NEXT:    vbroadcastss 656(%rdi), %ymm36657; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]6658; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]6659; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6660; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm6[0],ymm7[1],ymm6[2,3,4,5,6,7]6661; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm0 = xmm0[0,1,2],mem[3]6662; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm0 = xmm0[3,2,2,3]6663; AVX2-FCP-NEXT:    vpshufd {{.*#+}} ymm1 = ymm1[3,1,1,0,7,5,5,4]6664; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3,4,5,6,7]6665; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm5[0,2],ymm4[1,3],ymm5[4,6],ymm4[5,7]6666; AVX2-FCP-NEXT:    vmovdqa %ymm4, %ymm86667; AVX2-FCP-NEXT:    vbroadcastss 432(%rdi), %ymm26668; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]6669; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]6670; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6671; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6672; AVX2-FCP-NEXT:    vpblendd $2, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload6673; AVX2-FCP-NEXT:    # ymm0 = ymm0[0],mem[1],ymm0[2,3,4,5,6,7]6674; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm10[0,1,2],mem[3]6675; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm1 = xmm1[3,2,2,3]6676; AVX2-FCP-NEXT:    vpshufd {{.*#+}} ymm0 = ymm0[3,1,1,0,7,5,5,4]6677; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]6678; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6679; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload6680; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm6[0,2],ymm5[1,3],ymm6[4,6],ymm5[5,7]6681; AVX2-FCP-NEXT:    vbroadcastss 880(%rdi), %ymm26682; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]6683; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]6684; AVX2-FCP-NEXT:    vmovdqu %ymm0, (%rsp) # 32-byte Spill6685; AVX2-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm1 = [4,3,0,0]6686; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6687; AVX2-FCP-NEXT:    vpblendd $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload6688; AVX2-FCP-NEXT:    # ymm0 = mem[0,1,2,3],ymm0[4,5,6,7]6689; AVX2-FCP-NEXT:    vpermd %ymm0, %ymm1, %ymm06690; AVX2-FCP-NEXT:    vpbroadcastd 548(%rdi), %xmm26691; AVX2-FCP-NEXT:    vmovdqa 512(%rdi), %xmm146692; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm2 = xmm14[0,1,2],xmm2[3]6693; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm0 = xmm0[0,1],xmm2[2,3]6694; AVX2-FCP-NEXT:    vpbroadcastq {{.*#+}} ymm11 = [0,7,0,7,0,7,0,7]6695; AVX2-FCP-NEXT:    vpermd %ymm13, %ymm11, %ymm26696; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5],ymm12[6,7]6697; AVX2-FCP-NEXT:    vmovaps %ymm12, %ymm136698; AVX2-FCP-NEXT:    vpbroadcastd 660(%rdi), %ymm36699; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]6700; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm2[4,5,6,7]6701; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6702; AVX2-FCP-NEXT:    vpbroadcastd 100(%rdi), %xmm26703; AVX2-FCP-NEXT:    vmovdqa 64(%rdi), %xmm06704; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm2 = xmm0[0,1,2],xmm2[3]6705; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload6706; AVX2-FCP-NEXT:    vpblendd $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload6707; AVX2-FCP-NEXT:    # ymm3 = mem[0,1,2,3],ymm3[4,5,6,7]6708; AVX2-FCP-NEXT:    vpermd %ymm3, %ymm1, %ymm36709; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm2 = xmm3[0,1],xmm2[2,3]6710; AVX2-FCP-NEXT:    vmovaps %ymm15, %ymm106711; AVX2-FCP-NEXT:    vpermd %ymm15, %ymm11, %ymm36712; AVX2-FCP-NEXT:    vmovaps %ymm9, %ymm76713; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5],ymm9[6,7]6714; AVX2-FCP-NEXT:    vpbroadcastd 212(%rdi), %ymm46715; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5,6],ymm4[7]6716; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6,7]6717; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6718; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload6719; AVX2-FCP-NEXT:    vpblendd $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2, %ymm2 # 32-byte Folded Reload6720; AVX2-FCP-NEXT:    # ymm2 = mem[0,1,2,3],ymm2[4,5,6,7]6721; AVX2-FCP-NEXT:    vpermd %ymm2, %ymm1, %ymm36722; AVX2-FCP-NEXT:    vpbroadcastd 324(%rdi), %xmm46723; AVX2-FCP-NEXT:    vmovdqa 288(%rdi), %xmm26724; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm4 = xmm2[0,1,2],xmm4[3]6725; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm3 = xmm3[0,1],xmm4[2,3]6726; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload6727; AVX2-FCP-NEXT:    vpermd %ymm9, %ymm11, %ymm46728; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5],ymm8[6,7]6729; AVX2-FCP-NEXT:    vmovdqa %ymm8, %ymm156730; AVX2-FCP-NEXT:    vpbroadcastd 436(%rdi), %ymm86731; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm8[7]6732; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm3 = ymm3[0,1,2,3],ymm4[4,5,6,7]6733; AVX2-FCP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6734; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload6735; AVX2-FCP-NEXT:    vpblendd $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload6736; AVX2-FCP-NEXT:    # ymm3 = mem[0,1,2,3],ymm3[4,5,6,7]6737; AVX2-FCP-NEXT:    vpermd %ymm3, %ymm1, %ymm16738; AVX2-FCP-NEXT:    vpbroadcastd 772(%rdi), %xmm46739; AVX2-FCP-NEXT:    vmovdqa 736(%rdi), %xmm36740; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm4 = xmm3[0,1,2],xmm4[3]6741; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0,1],xmm4[2,3]6742; AVX2-FCP-NEXT:    vpermd %ymm6, %ymm11, %ymm46743; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5],ymm5[6,7]6744; AVX2-FCP-NEXT:    vmovaps %ymm5, %ymm126745; AVX2-FCP-NEXT:    vpbroadcastd 884(%rdi), %ymm86746; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm8[7]6747; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm4[4,5,6,7]6748; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6749; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm7[0],ymm10[1],ymm7[2,3,4],ymm10[5],ymm7[6,7]6750; AVX2-FCP-NEXT:    vmovaps {{.*#+}} ymm4 = [1,0,3,3,1,0,7,7]6751; AVX2-FCP-NEXT:    vpermps %ymm1, %ymm4, %ymm16752; AVX2-FCP-NEXT:    vbroadcastss 216(%rdi), %ymm66753; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm6[7]6754; AVX2-FCP-NEXT:    vmovdqa 96(%rdi), %xmm66755; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm0 = xmm6[0,1,2],xmm0[3]6756; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm0 = xmm0[0,1,3,2]6757; AVX2-FCP-NEXT:    vpshufd $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Folded Reload6758; AVX2-FCP-NEXT:    # ymm7 = mem[1,0,2,3,5,4,6,7]6759; AVX2-FCP-NEXT:    vextracti128 $1, %ymm7, %xmm76760; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm0 = xmm7[0,1],xmm0[2,3]6761; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]6762; AVX2-FCP-NEXT:    vmovdqa 544(%rdi), %xmm86763; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm8[0,1,2],xmm14[3]6764; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm1 = xmm1[0,1,3,2]6765; AVX2-FCP-NEXT:    vpshufd $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Folded Reload6766; AVX2-FCP-NEXT:    # ymm5 = mem[1,0,2,3,5,4,6,7]6767; AVX2-FCP-NEXT:    vextracti128 $1, %ymm5, %xmm56768; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm5[0,1],xmm1[2,3]6769; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm13, %ymm5 # 32-byte Folded Reload6770; AVX2-FCP-NEXT:    # ymm5 = ymm13[0],mem[1],ymm13[2,3,4],mem[5],ymm13[6,7]6771; AVX2-FCP-NEXT:    vpermps %ymm5, %ymm4, %ymm56772; AVX2-FCP-NEXT:    vbroadcastss 664(%rdi), %ymm76773; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3,4,5,6],ymm7[7]6774; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm5[4,5,6,7]6775; AVX2-FCP-NEXT:    vmovdqa 320(%rdi), %xmm136776; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm2 = xmm13[0,1,2],xmm2[3]6777; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm2 = xmm2[0,1,3,2]6778; AVX2-FCP-NEXT:    vpshufd $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Folded Reload6779; AVX2-FCP-NEXT:    # ymm5 = mem[1,0,2,3,5,4,6,7]6780; AVX2-FCP-NEXT:    vextracti128 $1, %ymm5, %xmm56781; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm2 = xmm5[0,1],xmm2[2,3]6782; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm15[0],ymm9[1],ymm15[2,3,4],ymm9[5],ymm15[6,7]6783; AVX2-FCP-NEXT:    vpermps %ymm5, %ymm4, %ymm56784; AVX2-FCP-NEXT:    vbroadcastss 440(%rdi), %ymm76785; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3,4,5,6],ymm7[7]6786; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm5 = ymm2[0,1,2,3],ymm5[4,5,6,7]6787; AVX2-FCP-NEXT:    vmovdqa 768(%rdi), %xmm26788; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm3 = xmm2[0,1,2],xmm3[3]6789; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm3 = xmm3[0,1,3,2]6790; AVX2-FCP-NEXT:    vpshufd $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Folded Reload6791; AVX2-FCP-NEXT:    # ymm7 = mem[1,0,2,3,5,4,6,7]6792; AVX2-FCP-NEXT:    vextracti128 $1, %ymm7, %xmm76793; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm3 = xmm7[0,1],xmm3[2,3]6794; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm12, %ymm7 # 32-byte Folded Reload6795; AVX2-FCP-NEXT:    # ymm7 = ymm12[0],mem[1],ymm12[2,3,4],mem[5],ymm12[6,7]6796; AVX2-FCP-NEXT:    vpermps %ymm7, %ymm4, %ymm46797; AVX2-FCP-NEXT:    vbroadcastss 888(%rdi), %ymm76798; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm7[7]6799; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm7 = ymm3[0,1,2,3],ymm4[4,5,6,7]6800; AVX2-FCP-NEXT:    vbroadcastss 584(%rdi), %xmm36801; AVX2-FCP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload6802; AVX2-FCP-NEXT:    # xmm3 = xmm3[0],mem[1],xmm3[2,3]6803; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm36804; AVX2-FCP-NEXT:    vpermd 640(%rdi), %ymm11, %ymm46805; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5],ymm4[6,7]6806; AVX2-FCP-NEXT:    vpbroadcastd 528(%rdi), %ymm46807; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm4 = xmm4[0,1,2],xmm8[3]6808; AVX2-FCP-NEXT:    vpshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Folded Reload6809; AVX2-FCP-NEXT:    # ymm8 = mem[2,3,2,3,6,7,6,7]6810; AVX2-FCP-NEXT:    vpblendd $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm8, %ymm8 # 32-byte Folded Reload6811; AVX2-FCP-NEXT:    # ymm8 = ymm8[0],mem[1],ymm8[2,3,4],mem[5],ymm8[6,7]6812; AVX2-FCP-NEXT:    vextracti128 $1, %ymm8, %xmm86813; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm4 = xmm8[0,1],xmm4[2,3]6814; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm8 = ymm4[0,1,2,3],ymm3[4,5,6,7]6815; AVX2-FCP-NEXT:    vbroadcastss 808(%rdi), %xmm36816; AVX2-FCP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload6817; AVX2-FCP-NEXT:    # xmm3 = xmm3[0],mem[1],xmm3[2,3]6818; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm36819; AVX2-FCP-NEXT:    vpermd 864(%rdi), %ymm11, %ymm46820; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5],ymm4[6,7]6821; AVX2-FCP-NEXT:    vpbroadcastd 752(%rdi), %ymm46822; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm2 = xmm4[0,1,2],xmm2[3]6823; AVX2-FCP-NEXT:    vpshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Folded Reload6824; AVX2-FCP-NEXT:    # ymm4 = mem[2,3,2,3,6,7,6,7]6825; AVX2-FCP-NEXT:    vpblendd $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm4 # 32-byte Folded Reload6826; AVX2-FCP-NEXT:    # ymm4 = ymm4[0],mem[1],ymm4[2,3,4],mem[5],ymm4[6,7]6827; AVX2-FCP-NEXT:    vextracti128 $1, %ymm4, %xmm46828; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm2 = xmm4[0,1],xmm2[2,3]6829; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6,7]6830; AVX2-FCP-NEXT:    vbroadcastss 136(%rdi), %xmm36831; AVX2-FCP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload6832; AVX2-FCP-NEXT:    # xmm3 = xmm3[0],mem[1],xmm3[2,3]6833; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm36834; AVX2-FCP-NEXT:    vpermd 192(%rdi), %ymm11, %ymm46835; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5],ymm4[6,7]6836; AVX2-FCP-NEXT:    vpbroadcastd 80(%rdi), %ymm46837; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm4 = xmm4[0,1,2],xmm6[3]6838; AVX2-FCP-NEXT:    vpshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Folded Reload6839; AVX2-FCP-NEXT:    # ymm6 = mem[2,3,2,3,6,7,6,7]6840; AVX2-FCP-NEXT:    vpblendd $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm6, %ymm6 # 32-byte Folded Reload6841; AVX2-FCP-NEXT:    # ymm6 = ymm6[0],mem[1],ymm6[2,3,4],mem[5],ymm6[6,7]6842; AVX2-FCP-NEXT:    vextracti128 $1, %ymm6, %xmm66843; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm4 = xmm6[0,1],xmm4[2,3]6844; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm4[0,1,2,3],ymm3[4,5,6,7]6845; AVX2-FCP-NEXT:    vbroadcastss 360(%rdi), %xmm46846; AVX2-FCP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4, %xmm4 # 16-byte Folded Reload6847; AVX2-FCP-NEXT:    # xmm4 = xmm4[0],mem[1],xmm4[2,3]6848; AVX2-FCP-NEXT:    vpermd 416(%rdi), %ymm11, %ymm66849; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm4, %ymm0, %ymm46850; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5],ymm6[6,7]6851; AVX2-FCP-NEXT:    vpbroadcastd 304(%rdi), %ymm66852; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm6 = xmm6[0,1,2],xmm13[3]6853; AVX2-FCP-NEXT:    vpshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Folded Reload6854; AVX2-FCP-NEXT:    # ymm10 = mem[2,3,2,3,6,7,6,7]6855; AVX2-FCP-NEXT:    vpblendd $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm10, %ymm10 # 32-byte Folded Reload6856; AVX2-FCP-NEXT:    # ymm10 = ymm10[0],mem[1],ymm10[2,3,4],mem[5],ymm10[6,7]6857; AVX2-FCP-NEXT:    vextracti128 $1, %ymm10, %xmm106858; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm6 = xmm10[0,1],xmm6[2,3]6859; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm6[0,1,2,3],ymm4[4,5,6,7]6860; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6861; AVX2-FCP-NEXT:    vmovaps %ymm6, 96(%rsi)6862; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6863; AVX2-FCP-NEXT:    vmovaps %ymm6, 32(%rsi)6864; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6865; AVX2-FCP-NEXT:    vmovaps %ymm6, 64(%rsi)6866; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6867; AVX2-FCP-NEXT:    vmovaps %ymm6, (%rsi)6868; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6869; AVX2-FCP-NEXT:    vmovaps %ymm6, 96(%rdx)6870; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6871; AVX2-FCP-NEXT:    vmovaps %ymm6, 32(%rdx)6872; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6873; AVX2-FCP-NEXT:    vmovaps %ymm6, 64(%rdx)6874; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6875; AVX2-FCP-NEXT:    vmovaps %ymm6, (%rdx)6876; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6877; AVX2-FCP-NEXT:    vmovaps %ymm6, 32(%rcx)6878; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6879; AVX2-FCP-NEXT:    vmovaps %ymm6, 96(%rcx)6880; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6881; AVX2-FCP-NEXT:    vmovaps %ymm6, 64(%rcx)6882; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6883; AVX2-FCP-NEXT:    vmovaps %ymm6, (%rcx)6884; AVX2-FCP-NEXT:    vmovups (%rsp), %ymm6 # 32-byte Reload6885; AVX2-FCP-NEXT:    vmovaps %ymm6, 96(%r8)6886; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6887; AVX2-FCP-NEXT:    vmovaps %ymm6, 32(%r8)6888; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6889; AVX2-FCP-NEXT:    vmovaps %ymm6, 64(%r8)6890; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6891; AVX2-FCP-NEXT:    vmovaps %ymm6, (%r8)6892; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6893; AVX2-FCP-NEXT:    vmovaps %ymm6, 96(%r9)6894; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6895; AVX2-FCP-NEXT:    vmovaps %ymm6, 32(%r9)6896; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6897; AVX2-FCP-NEXT:    vmovaps %ymm6, (%r9)6898; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload6899; AVX2-FCP-NEXT:    vmovaps %ymm6, 64(%r9)6900; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax6901; AVX2-FCP-NEXT:    vmovaps %ymm7, 96(%rax)6902; AVX2-FCP-NEXT:    vmovaps %ymm5, 32(%rax)6903; AVX2-FCP-NEXT:    vmovaps %ymm1, 64(%rax)6904; AVX2-FCP-NEXT:    vmovaps %ymm0, (%rax)6905; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax6906; AVX2-FCP-NEXT:    vmovaps %ymm4, 32(%rax)6907; AVX2-FCP-NEXT:    vmovaps %ymm3, (%rax)6908; AVX2-FCP-NEXT:    vmovaps %ymm2, 96(%rax)6909; AVX2-FCP-NEXT:    vmovaps %ymm8, 64(%rax)6910; AVX2-FCP-NEXT:    addq $1224, %rsp # imm = 0x4C86911; AVX2-FCP-NEXT:    vzeroupper6912; AVX2-FCP-NEXT:    retq6913;6914; AVX512-LABEL: load_i32_stride7_vf32:6915; AVX512:       # %bb.0:6916; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %rax6917; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %r106918; AVX512-NEXT:    vmovdqa64 512(%rdi), %zmm16919; AVX512-NEXT:    vmovdqa64 448(%rdi), %zmm06920; AVX512-NEXT:    vmovdqa64 576(%rdi), %zmm46921; AVX512-NEXT:    vmovdqa64 640(%rdi), %zmm26922; AVX512-NEXT:    vmovdqa64 832(%rdi), %zmm56923; AVX512-NEXT:    vmovdqa64 768(%rdi), %zmm66924; AVX512-NEXT:    vmovdqa64 704(%rdi), %zmm36925; AVX512-NEXT:    vmovdqa64 384(%rdi), %zmm136926; AVX512-NEXT:    vmovdqa64 320(%rdi), %zmm156927; AVX512-NEXT:    vmovdqa64 256(%rdi), %zmm96928; AVX512-NEXT:    vmovdqa64 (%rdi), %zmm106929; AVX512-NEXT:    vmovdqa64 64(%rdi), %zmm116930; AVX512-NEXT:    vmovdqa64 128(%rdi), %zmm146931; AVX512-NEXT:    vmovdqa64 192(%rdi), %zmm126932; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm16 = [8,15,0,0,0,19,26,1,8,15,0,0,0,19,26,1]6933; AVX512-NEXT:    # zmm16 = mem[0,1,2,3,0,1,2,3]6934; AVX512-NEXT:    vmovdqa64 %zmm12, %zmm176935; AVX512-NEXT:    vpermt2d %zmm14, %zmm16, %zmm176936; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [0,7,14,21,28,0,0,0]6937; AVX512-NEXT:    vmovdqa64 %zmm10, %zmm86938; AVX512-NEXT:    vpermt2d %zmm11, %zmm7, %zmm86939; AVX512-NEXT:    movw $992, %di # imm = 0x3E06940; AVX512-NEXT:    kmovw %edi, %k16941; AVX512-NEXT:    vmovdqa32 %zmm17, %zmm8 {%k1}6942; AVX512-NEXT:    vbroadcasti32x4 {{.*#+}} zmm17 = [20,27,6,13,20,27,6,13,20,27,6,13,20,27,6,13]6943; AVX512-NEXT:    # zmm17 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]6944; AVX512-NEXT:    vmovdqa64 %zmm9, %zmm186945; AVX512-NEXT:    vpermt2d %zmm15, %zmm17, %zmm186946; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm19 = [0,0,10,11,12,13,18,25,0,0,10,11,12,13,18,25]6947; AVX512-NEXT:    # zmm19 = mem[0,1,2,3,0,1,2,3]6948; AVX512-NEXT:    vpermt2d %zmm13, %zmm19, %zmm186949; AVX512-NEXT:    movb $-32, %dil6950; AVX512-NEXT:    kmovw %edi, %k26951; AVX512-NEXT:    vmovdqa64 %zmm18, %zmm8 {%k2}6952; AVX512-NEXT:    vpermi2d %zmm6, %zmm3, %zmm176953; AVX512-NEXT:    vpermt2d %zmm5, %zmm19, %zmm176954; AVX512-NEXT:    vpermi2d %zmm4, %zmm2, %zmm166955; AVX512-NEXT:    vpermi2d %zmm1, %zmm0, %zmm76956; AVX512-NEXT:    vmovdqa32 %zmm16, %zmm7 {%k1}6957; AVX512-NEXT:    vmovdqa64 %zmm17, %zmm7 {%k2}6958; AVX512-NEXT:    vbroadcasti32x4 {{.*#+}} zmm18 = [25,4,11,18,25,4,11,18,25,4,11,18,25,4,11,18]6959; AVX512-NEXT:    # zmm18 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]6960; AVX512-NEXT:    vmovdqa64 %zmm14, %zmm196961; AVX512-NEXT:    vpermt2d %zmm12, %zmm18, %zmm196962; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm16 = [1,8,15,22,29,0,0,0]6963; AVX512-NEXT:    vmovdqa64 %zmm10, %zmm176964; AVX512-NEXT:    vpermt2d %zmm11, %zmm16, %zmm176965; AVX512-NEXT:    movw $480, %di # imm = 0x1E06966; AVX512-NEXT:    kmovw %edi, %k26967; AVX512-NEXT:    vmovdqa32 %zmm19, %zmm17 {%k2}6968; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm19 = [0,0,7,14,21,28,0,0,0,0,7,14,21,28,0,0]6969; AVX512-NEXT:    # zmm19 = mem[0,1,2,3,0,1,2,3]6970; AVX512-NEXT:    vmovdqa64 %zmm9, %zmm206971; AVX512-NEXT:    vpermt2d %zmm15, %zmm19, %zmm206972; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm21 = [0,9,10,11,12,13,19,26,0,9,10,11,12,13,19,26]6973; AVX512-NEXT:    # zmm21 = mem[0,1,2,3,0,1,2,3]6974; AVX512-NEXT:    vpermt2d %zmm13, %zmm21, %zmm206975; AVX512-NEXT:    movw $-512, %di # imm = 0xFE006976; AVX512-NEXT:    kmovw %edi, %k16977; AVX512-NEXT:    vmovdqa32 %zmm20, %zmm17 {%k1}6978; AVX512-NEXT:    vpermi2d %zmm6, %zmm3, %zmm196979; AVX512-NEXT:    vpermt2d %zmm5, %zmm21, %zmm196980; AVX512-NEXT:    vmovdqa64 %zmm4, %zmm206981; AVX512-NEXT:    vpermt2d %zmm2, %zmm18, %zmm206982; AVX512-NEXT:    vpermi2d %zmm1, %zmm0, %zmm166983; AVX512-NEXT:    vmovdqa32 %zmm20, %zmm16 {%k2}6984; AVX512-NEXT:    vmovdqa32 %zmm19, %zmm16 {%k1}6985; AVX512-NEXT:    vbroadcasti32x4 {{.*#+}} zmm21 = [26,5,12,19,26,5,12,19,26,5,12,19,26,5,12,19]6986; AVX512-NEXT:    # zmm21 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]6987; AVX512-NEXT:    vmovdqa64 %zmm14, %zmm226988; AVX512-NEXT:    vpermt2d %zmm12, %zmm21, %zmm226989; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm19 = [18,25,0,7,14,0,0,0]6990; AVX512-NEXT:    vmovdqa64 %zmm11, %zmm206991; AVX512-NEXT:    vpermt2d %zmm10, %zmm19, %zmm206992; AVX512-NEXT:    vmovdqa32 %zmm22, %zmm20 {%k2}6993; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm22 = [0,1,8,15,22,29,0,0,0,1,8,15,22,29,0,0]6994; AVX512-NEXT:    # zmm22 = mem[0,1,2,3,0,1,2,3]6995; AVX512-NEXT:    vmovdqa64 %zmm9, %zmm236996; AVX512-NEXT:    vpermt2d %zmm15, %zmm22, %zmm236997; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm24 = [0,9,10,11,12,13,20,27,0,9,10,11,12,13,20,27]6998; AVX512-NEXT:    # zmm24 = mem[0,1,2,3,0,1,2,3]6999; AVX512-NEXT:    vpermt2d %zmm13, %zmm24, %zmm237000; AVX512-NEXT:    vmovdqa32 %zmm23, %zmm20 {%k1}7001; AVX512-NEXT:    vpermi2d %zmm6, %zmm3, %zmm227002; AVX512-NEXT:    vpermt2d %zmm5, %zmm24, %zmm227003; AVX512-NEXT:    vmovdqa64 %zmm4, %zmm237004; AVX512-NEXT:    vpermt2d %zmm2, %zmm21, %zmm237005; AVX512-NEXT:    vpermi2d %zmm0, %zmm1, %zmm197006; AVX512-NEXT:    vmovdqa32 %zmm23, %zmm19 {%k2}7007; AVX512-NEXT:    vmovdqa32 %zmm22, %zmm19 {%k1}7008; AVX512-NEXT:    vbroadcasti32x4 {{.*#+}} zmm24 = [27,6,13,20,27,6,13,20,27,6,13,20,27,6,13,20]7009; AVX512-NEXT:    # zmm24 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]7010; AVX512-NEXT:    vmovdqa64 %zmm14, %zmm257011; AVX512-NEXT:    vpermt2d %zmm12, %zmm24, %zmm257012; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm22 = [19,26,1,8,15,0,0,0]7013; AVX512-NEXT:    vmovdqa64 %zmm11, %zmm237014; AVX512-NEXT:    vpermt2d %zmm10, %zmm22, %zmm237015; AVX512-NEXT:    vmovdqa32 %zmm25, %zmm23 {%k2}7016; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm25 = [0,18,25,0,7,14,0,0,0,18,25,0,7,14,0,0]7017; AVX512-NEXT:    # zmm25 = mem[0,1,2,3,0,1,2,3]7018; AVX512-NEXT:    vmovdqa64 %zmm15, %zmm267019; AVX512-NEXT:    vpermt2d %zmm9, %zmm25, %zmm267020; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,13,21,28,0,9,10,11,12,13,21,28]7021; AVX512-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]7022; AVX512-NEXT:    vpermt2d %zmm13, %zmm27, %zmm267023; AVX512-NEXT:    vmovdqa32 %zmm26, %zmm23 {%k1}7024; AVX512-NEXT:    vpermi2d %zmm3, %zmm6, %zmm257025; AVX512-NEXT:    vpermt2d %zmm5, %zmm27, %zmm257026; AVX512-NEXT:    vpermi2d %zmm2, %zmm4, %zmm247027; AVX512-NEXT:    vpermi2d %zmm0, %zmm1, %zmm227028; AVX512-NEXT:    vmovdqa32 %zmm24, %zmm22 {%k2}7029; AVX512-NEXT:    vmovdqa32 %zmm25, %zmm22 {%k1}7030; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm26 = [0,19,26,1,8,15,0,0,0,19,26,1,8,15,0,0]7031; AVX512-NEXT:    # zmm26 = mem[0,1,2,3,0,1,2,3]7032; AVX512-NEXT:    vmovdqa64 %zmm15, %zmm257033; AVX512-NEXT:    vpermt2d %zmm9, %zmm26, %zmm257034; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,13,22,29,0,9,10,11,12,13,22,29]7035; AVX512-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]7036; AVX512-NEXT:    vpermt2d %zmm13, %zmm27, %zmm257037; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm28 = [28,0,0,0,0,7,14,21,28,0,0,0,0,7,14,21]7038; AVX512-NEXT:    # zmm28 = mem[0,1,2,3,0,1,2,3]7039; AVX512-NEXT:    vmovdqa64 %zmm14, %zmm247040; AVX512-NEXT:    vpermt2d %zmm12, %zmm28, %zmm247041; AVX512-NEXT:    vpmovsxbd {{.*#+}} xmm29 = [4,11,18,25]7042; AVX512-NEXT:    vmovdqa64 %zmm10, %zmm307043; AVX512-NEXT:    vpermt2d %zmm11, %zmm29, %zmm307044; AVX512-NEXT:    vinserti32x4 $0, %xmm30, %zmm24, %zmm247045; AVX512-NEXT:    vmovdqa32 %zmm25, %zmm24 {%k1}7046; AVX512-NEXT:    vpermi2d %zmm3, %zmm6, %zmm267047; AVX512-NEXT:    vpermt2d %zmm5, %zmm27, %zmm267048; AVX512-NEXT:    vpermi2d %zmm2, %zmm4, %zmm287049; AVX512-NEXT:    vpermi2d %zmm1, %zmm0, %zmm297050; AVX512-NEXT:    vinserti32x4 $0, %xmm29, %zmm28, %zmm257051; AVX512-NEXT:    vmovdqa32 %zmm26, %zmm25 {%k1}7052; AVX512-NEXT:    vmovdqa64 %zmm9, %zmm267053; AVX512-NEXT:    vpermt2d %zmm15, %zmm18, %zmm267054; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,16,23,30,0,9,10,11,12,16,23,30]7055; AVX512-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]7056; AVX512-NEXT:    vpermt2d %zmm13, %zmm27, %zmm267057; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm28 = [29,0,0,0,1,8,15,22,29,0,0,0,1,8,15,22]7058; AVX512-NEXT:    # zmm28 = mem[0,1,2,3,0,1,2,3]7059; AVX512-NEXT:    vmovdqa64 %zmm14, %zmm297060; AVX512-NEXT:    vpermt2d %zmm12, %zmm28, %zmm297061; AVX512-NEXT:    vpmovsxbd {{.*#+}} xmm30 = [5,12,19,26]7062; AVX512-NEXT:    vmovdqa64 %zmm10, %zmm317063; AVX512-NEXT:    vpermt2d %zmm11, %zmm30, %zmm317064; AVX512-NEXT:    vinserti32x4 $0, %xmm31, %zmm29, %zmm297065; AVX512-NEXT:    vmovdqa32 %zmm26, %zmm29 {%k1}7066; AVX512-NEXT:    vpermi2d %zmm6, %zmm3, %zmm187067; AVX512-NEXT:    vpermt2d %zmm5, %zmm27, %zmm187068; AVX512-NEXT:    vpermi2d %zmm2, %zmm4, %zmm287069; AVX512-NEXT:    vpermi2d %zmm1, %zmm0, %zmm307070; AVX512-NEXT:    vinserti32x4 $0, %xmm30, %zmm28, %zmm267071; AVX512-NEXT:    vmovdqa32 %zmm18, %zmm26 {%k1}7072; AVX512-NEXT:    vpermt2d %zmm15, %zmm21, %zmm97073; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,17,24,31,0,9,10,11,12,17,24,31]7074; AVX512-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]7075; AVX512-NEXT:    vpermt2d %zmm13, %zmm15, %zmm97076; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm13 = [14,0,0,0,18,25,0,7,14,0,0,0,18,25,0,7]7077; AVX512-NEXT:    # zmm13 = mem[0,1,2,3,0,1,2,3]7078; AVX512-NEXT:    vpermt2d %zmm14, %zmm13, %zmm127079; AVX512-NEXT:    vpmovsxbd {{.*#+}} xmm14 = [6,13,20,27]7080; AVX512-NEXT:    vpermt2d %zmm11, %zmm14, %zmm107081; AVX512-NEXT:    vinserti32x4 $0, %xmm10, %zmm12, %zmm107082; AVX512-NEXT:    vmovdqa32 %zmm9, %zmm10 {%k1}7083; AVX512-NEXT:    vpermt2d %zmm6, %zmm21, %zmm37084; AVX512-NEXT:    vpermt2d %zmm5, %zmm15, %zmm37085; AVX512-NEXT:    vpermt2d %zmm4, %zmm13, %zmm27086; AVX512-NEXT:    vpermt2d %zmm1, %zmm14, %zmm07087; AVX512-NEXT:    vinserti32x4 $0, %xmm0, %zmm2, %zmm07088; AVX512-NEXT:    vmovdqa32 %zmm3, %zmm0 {%k1}7089; AVX512-NEXT:    vmovdqa64 %zmm7, 64(%rsi)7090; AVX512-NEXT:    vmovdqa64 %zmm8, (%rsi)7091; AVX512-NEXT:    vmovdqa64 %zmm16, 64(%rdx)7092; AVX512-NEXT:    vmovdqa64 %zmm17, (%rdx)7093; AVX512-NEXT:    vmovdqa64 %zmm19, 64(%rcx)7094; AVX512-NEXT:    vmovdqa64 %zmm20, (%rcx)7095; AVX512-NEXT:    vmovdqa64 %zmm22, 64(%r8)7096; AVX512-NEXT:    vmovdqa64 %zmm23, (%r8)7097; AVX512-NEXT:    vmovdqa64 %zmm25, 64(%r9)7098; AVX512-NEXT:    vmovdqa64 %zmm24, (%r9)7099; AVX512-NEXT:    vmovdqa64 %zmm26, 64(%r10)7100; AVX512-NEXT:    vmovdqa64 %zmm29, (%r10)7101; AVX512-NEXT:    vmovdqa64 %zmm0, 64(%rax)7102; AVX512-NEXT:    vmovdqa64 %zmm10, (%rax)7103; AVX512-NEXT:    vzeroupper7104; AVX512-NEXT:    retq7105;7106; AVX512-FCP-LABEL: load_i32_stride7_vf32:7107; AVX512-FCP:       # %bb.0:7108; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax7109; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r107110; AVX512-FCP-NEXT:    vmovdqa64 512(%rdi), %zmm17111; AVX512-FCP-NEXT:    vmovdqa64 448(%rdi), %zmm07112; AVX512-FCP-NEXT:    vmovdqa64 576(%rdi), %zmm47113; AVX512-FCP-NEXT:    vmovdqa64 640(%rdi), %zmm27114; AVX512-FCP-NEXT:    vmovdqa64 832(%rdi), %zmm57115; AVX512-FCP-NEXT:    vmovdqa64 768(%rdi), %zmm67116; AVX512-FCP-NEXT:    vmovdqa64 704(%rdi), %zmm37117; AVX512-FCP-NEXT:    vmovdqa64 384(%rdi), %zmm137118; AVX512-FCP-NEXT:    vmovdqa64 320(%rdi), %zmm157119; AVX512-FCP-NEXT:    vmovdqa64 256(%rdi), %zmm97120; AVX512-FCP-NEXT:    vmovdqa64 (%rdi), %zmm107121; AVX512-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm117122; AVX512-FCP-NEXT:    vmovdqa64 128(%rdi), %zmm147123; AVX512-FCP-NEXT:    vmovdqa64 192(%rdi), %zmm127124; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm16 = [8,15,0,0,0,19,26,1,8,15,0,0,0,19,26,1]7125; AVX512-FCP-NEXT:    # zmm16 = mem[0,1,2,3,0,1,2,3]7126; AVX512-FCP-NEXT:    vmovdqa64 %zmm12, %zmm177127; AVX512-FCP-NEXT:    vpermt2d %zmm14, %zmm16, %zmm177128; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [0,7,14,21,28,0,0,0]7129; AVX512-FCP-NEXT:    vmovdqa64 %zmm10, %zmm87130; AVX512-FCP-NEXT:    vpermt2d %zmm11, %zmm7, %zmm87131; AVX512-FCP-NEXT:    movw $992, %di # imm = 0x3E07132; AVX512-FCP-NEXT:    kmovw %edi, %k17133; AVX512-FCP-NEXT:    vmovdqa32 %zmm17, %zmm8 {%k1}7134; AVX512-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm17 = [20,27,6,13,20,27,6,13,20,27,6,13,20,27,6,13]7135; AVX512-FCP-NEXT:    # zmm17 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]7136; AVX512-FCP-NEXT:    vmovdqa64 %zmm9, %zmm187137; AVX512-FCP-NEXT:    vpermt2d %zmm15, %zmm17, %zmm187138; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm19 = [0,0,10,11,12,13,18,25,0,0,10,11,12,13,18,25]7139; AVX512-FCP-NEXT:    # zmm19 = mem[0,1,2,3,0,1,2,3]7140; AVX512-FCP-NEXT:    vpermt2d %zmm13, %zmm19, %zmm187141; AVX512-FCP-NEXT:    movb $-32, %dil7142; AVX512-FCP-NEXT:    kmovw %edi, %k27143; AVX512-FCP-NEXT:    vmovdqa64 %zmm18, %zmm8 {%k2}7144; AVX512-FCP-NEXT:    vpermi2d %zmm6, %zmm3, %zmm177145; AVX512-FCP-NEXT:    vpermt2d %zmm5, %zmm19, %zmm177146; AVX512-FCP-NEXT:    vpermi2d %zmm4, %zmm2, %zmm167147; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm77148; AVX512-FCP-NEXT:    vmovdqa32 %zmm16, %zmm7 {%k1}7149; AVX512-FCP-NEXT:    vmovdqa64 %zmm17, %zmm7 {%k2}7150; AVX512-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm18 = [25,4,11,18,25,4,11,18,25,4,11,18,25,4,11,18]7151; AVX512-FCP-NEXT:    # zmm18 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]7152; AVX512-FCP-NEXT:    vmovdqa64 %zmm14, %zmm197153; AVX512-FCP-NEXT:    vpermt2d %zmm12, %zmm18, %zmm197154; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm16 = [1,8,15,22,29,0,0,0]7155; AVX512-FCP-NEXT:    vmovdqa64 %zmm10, %zmm177156; AVX512-FCP-NEXT:    vpermt2d %zmm11, %zmm16, %zmm177157; AVX512-FCP-NEXT:    movw $480, %di # imm = 0x1E07158; AVX512-FCP-NEXT:    kmovw %edi, %k27159; AVX512-FCP-NEXT:    vmovdqa32 %zmm19, %zmm17 {%k2}7160; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm19 = [0,0,7,14,21,28,0,0,0,0,7,14,21,28,0,0]7161; AVX512-FCP-NEXT:    # zmm19 = mem[0,1,2,3,0,1,2,3]7162; AVX512-FCP-NEXT:    vmovdqa64 %zmm9, %zmm207163; AVX512-FCP-NEXT:    vpermt2d %zmm15, %zmm19, %zmm207164; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm21 = [0,9,10,11,12,13,19,26,0,9,10,11,12,13,19,26]7165; AVX512-FCP-NEXT:    # zmm21 = mem[0,1,2,3,0,1,2,3]7166; AVX512-FCP-NEXT:    vpermt2d %zmm13, %zmm21, %zmm207167; AVX512-FCP-NEXT:    movw $-512, %di # imm = 0xFE007168; AVX512-FCP-NEXT:    kmovw %edi, %k17169; AVX512-FCP-NEXT:    vmovdqa32 %zmm20, %zmm17 {%k1}7170; AVX512-FCP-NEXT:    vpermi2d %zmm6, %zmm3, %zmm197171; AVX512-FCP-NEXT:    vpermt2d %zmm5, %zmm21, %zmm197172; AVX512-FCP-NEXT:    vmovdqa64 %zmm4, %zmm207173; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm18, %zmm207174; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm167175; AVX512-FCP-NEXT:    vmovdqa32 %zmm20, %zmm16 {%k2}7176; AVX512-FCP-NEXT:    vmovdqa32 %zmm19, %zmm16 {%k1}7177; AVX512-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm21 = [26,5,12,19,26,5,12,19,26,5,12,19,26,5,12,19]7178; AVX512-FCP-NEXT:    # zmm21 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]7179; AVX512-FCP-NEXT:    vmovdqa64 %zmm14, %zmm227180; AVX512-FCP-NEXT:    vpermt2d %zmm12, %zmm21, %zmm227181; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm19 = [18,25,0,7,14,0,0,0]7182; AVX512-FCP-NEXT:    vmovdqa64 %zmm11, %zmm207183; AVX512-FCP-NEXT:    vpermt2d %zmm10, %zmm19, %zmm207184; AVX512-FCP-NEXT:    vmovdqa32 %zmm22, %zmm20 {%k2}7185; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm22 = [0,1,8,15,22,29,0,0,0,1,8,15,22,29,0,0]7186; AVX512-FCP-NEXT:    # zmm22 = mem[0,1,2,3,0,1,2,3]7187; AVX512-FCP-NEXT:    vmovdqa64 %zmm9, %zmm237188; AVX512-FCP-NEXT:    vpermt2d %zmm15, %zmm22, %zmm237189; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm24 = [0,9,10,11,12,13,20,27,0,9,10,11,12,13,20,27]7190; AVX512-FCP-NEXT:    # zmm24 = mem[0,1,2,3,0,1,2,3]7191; AVX512-FCP-NEXT:    vpermt2d %zmm13, %zmm24, %zmm237192; AVX512-FCP-NEXT:    vmovdqa32 %zmm23, %zmm20 {%k1}7193; AVX512-FCP-NEXT:    vpermi2d %zmm6, %zmm3, %zmm227194; AVX512-FCP-NEXT:    vpermt2d %zmm5, %zmm24, %zmm227195; AVX512-FCP-NEXT:    vmovdqa64 %zmm4, %zmm237196; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm21, %zmm237197; AVX512-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm197198; AVX512-FCP-NEXT:    vmovdqa32 %zmm23, %zmm19 {%k2}7199; AVX512-FCP-NEXT:    vmovdqa32 %zmm22, %zmm19 {%k1}7200; AVX512-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm24 = [27,6,13,20,27,6,13,20,27,6,13,20,27,6,13,20]7201; AVX512-FCP-NEXT:    # zmm24 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]7202; AVX512-FCP-NEXT:    vmovdqa64 %zmm14, %zmm257203; AVX512-FCP-NEXT:    vpermt2d %zmm12, %zmm24, %zmm257204; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm22 = [19,26,1,8,15,0,0,0]7205; AVX512-FCP-NEXT:    vmovdqa64 %zmm11, %zmm237206; AVX512-FCP-NEXT:    vpermt2d %zmm10, %zmm22, %zmm237207; AVX512-FCP-NEXT:    vmovdqa32 %zmm25, %zmm23 {%k2}7208; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm25 = [0,18,25,0,7,14,0,0,0,18,25,0,7,14,0,0]7209; AVX512-FCP-NEXT:    # zmm25 = mem[0,1,2,3,0,1,2,3]7210; AVX512-FCP-NEXT:    vmovdqa64 %zmm15, %zmm267211; AVX512-FCP-NEXT:    vpermt2d %zmm9, %zmm25, %zmm267212; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,13,21,28,0,9,10,11,12,13,21,28]7213; AVX512-FCP-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]7214; AVX512-FCP-NEXT:    vpermt2d %zmm13, %zmm27, %zmm267215; AVX512-FCP-NEXT:    vmovdqa32 %zmm26, %zmm23 {%k1}7216; AVX512-FCP-NEXT:    vpermi2d %zmm3, %zmm6, %zmm257217; AVX512-FCP-NEXT:    vpermt2d %zmm5, %zmm27, %zmm257218; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm4, %zmm247219; AVX512-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm227220; AVX512-FCP-NEXT:    vmovdqa32 %zmm24, %zmm22 {%k2}7221; AVX512-FCP-NEXT:    vmovdqa32 %zmm25, %zmm22 {%k1}7222; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm26 = [0,19,26,1,8,15,0,0,0,19,26,1,8,15,0,0]7223; AVX512-FCP-NEXT:    # zmm26 = mem[0,1,2,3,0,1,2,3]7224; AVX512-FCP-NEXT:    vmovdqa64 %zmm15, %zmm257225; AVX512-FCP-NEXT:    vpermt2d %zmm9, %zmm26, %zmm257226; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,13,22,29,0,9,10,11,12,13,22,29]7227; AVX512-FCP-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]7228; AVX512-FCP-NEXT:    vpermt2d %zmm13, %zmm27, %zmm257229; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm28 = [28,0,0,0,0,7,14,21,28,0,0,0,0,7,14,21]7230; AVX512-FCP-NEXT:    # zmm28 = mem[0,1,2,3,0,1,2,3]7231; AVX512-FCP-NEXT:    vmovdqa64 %zmm14, %zmm247232; AVX512-FCP-NEXT:    vpermt2d %zmm12, %zmm28, %zmm247233; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm29 = [4,11,18,25]7234; AVX512-FCP-NEXT:    vmovdqa64 %zmm10, %zmm307235; AVX512-FCP-NEXT:    vpermt2d %zmm11, %zmm29, %zmm307236; AVX512-FCP-NEXT:    vinserti32x4 $0, %xmm30, %zmm24, %zmm247237; AVX512-FCP-NEXT:    vmovdqa32 %zmm25, %zmm24 {%k1}7238; AVX512-FCP-NEXT:    vpermi2d %zmm3, %zmm6, %zmm267239; AVX512-FCP-NEXT:    vpermt2d %zmm5, %zmm27, %zmm267240; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm4, %zmm287241; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm297242; AVX512-FCP-NEXT:    vinserti32x4 $0, %xmm29, %zmm28, %zmm257243; AVX512-FCP-NEXT:    vmovdqa32 %zmm26, %zmm25 {%k1}7244; AVX512-FCP-NEXT:    vmovdqa64 %zmm9, %zmm267245; AVX512-FCP-NEXT:    vpermt2d %zmm15, %zmm18, %zmm267246; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,16,23,30,0,9,10,11,12,16,23,30]7247; AVX512-FCP-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]7248; AVX512-FCP-NEXT:    vpermt2d %zmm13, %zmm27, %zmm267249; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm28 = [29,0,0,0,1,8,15,22,29,0,0,0,1,8,15,22]7250; AVX512-FCP-NEXT:    # zmm28 = mem[0,1,2,3,0,1,2,3]7251; AVX512-FCP-NEXT:    vmovdqa64 %zmm14, %zmm297252; AVX512-FCP-NEXT:    vpermt2d %zmm12, %zmm28, %zmm297253; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm30 = [5,12,19,26]7254; AVX512-FCP-NEXT:    vmovdqa64 %zmm10, %zmm317255; AVX512-FCP-NEXT:    vpermt2d %zmm11, %zmm30, %zmm317256; AVX512-FCP-NEXT:    vinserti32x4 $0, %xmm31, %zmm29, %zmm297257; AVX512-FCP-NEXT:    vmovdqa32 %zmm26, %zmm29 {%k1}7258; AVX512-FCP-NEXT:    vpermi2d %zmm6, %zmm3, %zmm187259; AVX512-FCP-NEXT:    vpermt2d %zmm5, %zmm27, %zmm187260; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm4, %zmm287261; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm307262; AVX512-FCP-NEXT:    vinserti32x4 $0, %xmm30, %zmm28, %zmm267263; AVX512-FCP-NEXT:    vmovdqa32 %zmm18, %zmm26 {%k1}7264; AVX512-FCP-NEXT:    vpermt2d %zmm15, %zmm21, %zmm97265; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,17,24,31,0,9,10,11,12,17,24,31]7266; AVX512-FCP-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]7267; AVX512-FCP-NEXT:    vpermt2d %zmm13, %zmm15, %zmm97268; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm13 = [14,0,0,0,18,25,0,7,14,0,0,0,18,25,0,7]7269; AVX512-FCP-NEXT:    # zmm13 = mem[0,1,2,3,0,1,2,3]7270; AVX512-FCP-NEXT:    vpermt2d %zmm14, %zmm13, %zmm127271; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm14 = [6,13,20,27]7272; AVX512-FCP-NEXT:    vpermt2d %zmm11, %zmm14, %zmm107273; AVX512-FCP-NEXT:    vinserti32x4 $0, %xmm10, %zmm12, %zmm107274; AVX512-FCP-NEXT:    vmovdqa32 %zmm9, %zmm10 {%k1}7275; AVX512-FCP-NEXT:    vpermt2d %zmm6, %zmm21, %zmm37276; AVX512-FCP-NEXT:    vpermt2d %zmm5, %zmm15, %zmm37277; AVX512-FCP-NEXT:    vpermt2d %zmm4, %zmm13, %zmm27278; AVX512-FCP-NEXT:    vpermt2d %zmm1, %zmm14, %zmm07279; AVX512-FCP-NEXT:    vinserti32x4 $0, %xmm0, %zmm2, %zmm07280; AVX512-FCP-NEXT:    vmovdqa32 %zmm3, %zmm0 {%k1}7281; AVX512-FCP-NEXT:    vmovdqa64 %zmm7, 64(%rsi)7282; AVX512-FCP-NEXT:    vmovdqa64 %zmm8, (%rsi)7283; AVX512-FCP-NEXT:    vmovdqa64 %zmm16, 64(%rdx)7284; AVX512-FCP-NEXT:    vmovdqa64 %zmm17, (%rdx)7285; AVX512-FCP-NEXT:    vmovdqa64 %zmm19, 64(%rcx)7286; AVX512-FCP-NEXT:    vmovdqa64 %zmm20, (%rcx)7287; AVX512-FCP-NEXT:    vmovdqa64 %zmm22, 64(%r8)7288; AVX512-FCP-NEXT:    vmovdqa64 %zmm23, (%r8)7289; AVX512-FCP-NEXT:    vmovdqa64 %zmm25, 64(%r9)7290; AVX512-FCP-NEXT:    vmovdqa64 %zmm24, (%r9)7291; AVX512-FCP-NEXT:    vmovdqa64 %zmm26, 64(%r10)7292; AVX512-FCP-NEXT:    vmovdqa64 %zmm29, (%r10)7293; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, 64(%rax)7294; AVX512-FCP-NEXT:    vmovdqa64 %zmm10, (%rax)7295; AVX512-FCP-NEXT:    vzeroupper7296; AVX512-FCP-NEXT:    retq7297;7298; AVX512DQ-LABEL: load_i32_stride7_vf32:7299; AVX512DQ:       # %bb.0:7300; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %rax7301; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %r107302; AVX512DQ-NEXT:    vmovdqa64 512(%rdi), %zmm17303; AVX512DQ-NEXT:    vmovdqa64 448(%rdi), %zmm07304; AVX512DQ-NEXT:    vmovdqa64 576(%rdi), %zmm47305; AVX512DQ-NEXT:    vmovdqa64 640(%rdi), %zmm27306; AVX512DQ-NEXT:    vmovdqa64 832(%rdi), %zmm57307; AVX512DQ-NEXT:    vmovdqa64 768(%rdi), %zmm67308; AVX512DQ-NEXT:    vmovdqa64 704(%rdi), %zmm37309; AVX512DQ-NEXT:    vmovdqa64 384(%rdi), %zmm137310; AVX512DQ-NEXT:    vmovdqa64 320(%rdi), %zmm157311; AVX512DQ-NEXT:    vmovdqa64 256(%rdi), %zmm97312; AVX512DQ-NEXT:    vmovdqa64 (%rdi), %zmm107313; AVX512DQ-NEXT:    vmovdqa64 64(%rdi), %zmm117314; AVX512DQ-NEXT:    vmovdqa64 128(%rdi), %zmm147315; AVX512DQ-NEXT:    vmovdqa64 192(%rdi), %zmm127316; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm16 = [8,15,0,0,0,19,26,1,8,15,0,0,0,19,26,1]7317; AVX512DQ-NEXT:    # zmm16 = mem[0,1,2,3,0,1,2,3]7318; AVX512DQ-NEXT:    vmovdqa64 %zmm12, %zmm177319; AVX512DQ-NEXT:    vpermt2d %zmm14, %zmm16, %zmm177320; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [0,7,14,21,28,0,0,0]7321; AVX512DQ-NEXT:    vmovdqa64 %zmm10, %zmm87322; AVX512DQ-NEXT:    vpermt2d %zmm11, %zmm7, %zmm87323; AVX512DQ-NEXT:    movw $992, %di # imm = 0x3E07324; AVX512DQ-NEXT:    kmovw %edi, %k17325; AVX512DQ-NEXT:    vmovdqa32 %zmm17, %zmm8 {%k1}7326; AVX512DQ-NEXT:    vbroadcasti32x4 {{.*#+}} zmm17 = [20,27,6,13,20,27,6,13,20,27,6,13,20,27,6,13]7327; AVX512DQ-NEXT:    # zmm17 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]7328; AVX512DQ-NEXT:    vmovdqa64 %zmm9, %zmm187329; AVX512DQ-NEXT:    vpermt2d %zmm15, %zmm17, %zmm187330; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm19 = [0,0,10,11,12,13,18,25,0,0,10,11,12,13,18,25]7331; AVX512DQ-NEXT:    # zmm19 = mem[0,1,2,3,0,1,2,3]7332; AVX512DQ-NEXT:    vpermt2d %zmm13, %zmm19, %zmm187333; AVX512DQ-NEXT:    movb $-32, %dil7334; AVX512DQ-NEXT:    kmovw %edi, %k27335; AVX512DQ-NEXT:    vmovdqa64 %zmm18, %zmm8 {%k2}7336; AVX512DQ-NEXT:    vpermi2d %zmm6, %zmm3, %zmm177337; AVX512DQ-NEXT:    vpermt2d %zmm5, %zmm19, %zmm177338; AVX512DQ-NEXT:    vpermi2d %zmm4, %zmm2, %zmm167339; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm0, %zmm77340; AVX512DQ-NEXT:    vmovdqa32 %zmm16, %zmm7 {%k1}7341; AVX512DQ-NEXT:    vmovdqa64 %zmm17, %zmm7 {%k2}7342; AVX512DQ-NEXT:    vbroadcasti32x4 {{.*#+}} zmm18 = [25,4,11,18,25,4,11,18,25,4,11,18,25,4,11,18]7343; AVX512DQ-NEXT:    # zmm18 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]7344; AVX512DQ-NEXT:    vmovdqa64 %zmm14, %zmm197345; AVX512DQ-NEXT:    vpermt2d %zmm12, %zmm18, %zmm197346; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm16 = [1,8,15,22,29,0,0,0]7347; AVX512DQ-NEXT:    vmovdqa64 %zmm10, %zmm177348; AVX512DQ-NEXT:    vpermt2d %zmm11, %zmm16, %zmm177349; AVX512DQ-NEXT:    movw $480, %di # imm = 0x1E07350; AVX512DQ-NEXT:    kmovw %edi, %k27351; AVX512DQ-NEXT:    vmovdqa32 %zmm19, %zmm17 {%k2}7352; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm19 = [0,0,7,14,21,28,0,0,0,0,7,14,21,28,0,0]7353; AVX512DQ-NEXT:    # zmm19 = mem[0,1,2,3,0,1,2,3]7354; AVX512DQ-NEXT:    vmovdqa64 %zmm9, %zmm207355; AVX512DQ-NEXT:    vpermt2d %zmm15, %zmm19, %zmm207356; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm21 = [0,9,10,11,12,13,19,26,0,9,10,11,12,13,19,26]7357; AVX512DQ-NEXT:    # zmm21 = mem[0,1,2,3,0,1,2,3]7358; AVX512DQ-NEXT:    vpermt2d %zmm13, %zmm21, %zmm207359; AVX512DQ-NEXT:    movw $-512, %di # imm = 0xFE007360; AVX512DQ-NEXT:    kmovw %edi, %k17361; AVX512DQ-NEXT:    vmovdqa32 %zmm20, %zmm17 {%k1}7362; AVX512DQ-NEXT:    vpermi2d %zmm6, %zmm3, %zmm197363; AVX512DQ-NEXT:    vpermt2d %zmm5, %zmm21, %zmm197364; AVX512DQ-NEXT:    vmovdqa64 %zmm4, %zmm207365; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm18, %zmm207366; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm0, %zmm167367; AVX512DQ-NEXT:    vmovdqa32 %zmm20, %zmm16 {%k2}7368; AVX512DQ-NEXT:    vmovdqa32 %zmm19, %zmm16 {%k1}7369; AVX512DQ-NEXT:    vbroadcasti32x4 {{.*#+}} zmm21 = [26,5,12,19,26,5,12,19,26,5,12,19,26,5,12,19]7370; AVX512DQ-NEXT:    # zmm21 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]7371; AVX512DQ-NEXT:    vmovdqa64 %zmm14, %zmm227372; AVX512DQ-NEXT:    vpermt2d %zmm12, %zmm21, %zmm227373; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm19 = [18,25,0,7,14,0,0,0]7374; AVX512DQ-NEXT:    vmovdqa64 %zmm11, %zmm207375; AVX512DQ-NEXT:    vpermt2d %zmm10, %zmm19, %zmm207376; AVX512DQ-NEXT:    vmovdqa32 %zmm22, %zmm20 {%k2}7377; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm22 = [0,1,8,15,22,29,0,0,0,1,8,15,22,29,0,0]7378; AVX512DQ-NEXT:    # zmm22 = mem[0,1,2,3,0,1,2,3]7379; AVX512DQ-NEXT:    vmovdqa64 %zmm9, %zmm237380; AVX512DQ-NEXT:    vpermt2d %zmm15, %zmm22, %zmm237381; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm24 = [0,9,10,11,12,13,20,27,0,9,10,11,12,13,20,27]7382; AVX512DQ-NEXT:    # zmm24 = mem[0,1,2,3,0,1,2,3]7383; AVX512DQ-NEXT:    vpermt2d %zmm13, %zmm24, %zmm237384; AVX512DQ-NEXT:    vmovdqa32 %zmm23, %zmm20 {%k1}7385; AVX512DQ-NEXT:    vpermi2d %zmm6, %zmm3, %zmm227386; AVX512DQ-NEXT:    vpermt2d %zmm5, %zmm24, %zmm227387; AVX512DQ-NEXT:    vmovdqa64 %zmm4, %zmm237388; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm21, %zmm237389; AVX512DQ-NEXT:    vpermi2d %zmm0, %zmm1, %zmm197390; AVX512DQ-NEXT:    vmovdqa32 %zmm23, %zmm19 {%k2}7391; AVX512DQ-NEXT:    vmovdqa32 %zmm22, %zmm19 {%k1}7392; AVX512DQ-NEXT:    vbroadcasti32x4 {{.*#+}} zmm24 = [27,6,13,20,27,6,13,20,27,6,13,20,27,6,13,20]7393; AVX512DQ-NEXT:    # zmm24 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]7394; AVX512DQ-NEXT:    vmovdqa64 %zmm14, %zmm257395; AVX512DQ-NEXT:    vpermt2d %zmm12, %zmm24, %zmm257396; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm22 = [19,26,1,8,15,0,0,0]7397; AVX512DQ-NEXT:    vmovdqa64 %zmm11, %zmm237398; AVX512DQ-NEXT:    vpermt2d %zmm10, %zmm22, %zmm237399; AVX512DQ-NEXT:    vmovdqa32 %zmm25, %zmm23 {%k2}7400; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm25 = [0,18,25,0,7,14,0,0,0,18,25,0,7,14,0,0]7401; AVX512DQ-NEXT:    # zmm25 = mem[0,1,2,3,0,1,2,3]7402; AVX512DQ-NEXT:    vmovdqa64 %zmm15, %zmm267403; AVX512DQ-NEXT:    vpermt2d %zmm9, %zmm25, %zmm267404; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,13,21,28,0,9,10,11,12,13,21,28]7405; AVX512DQ-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]7406; AVX512DQ-NEXT:    vpermt2d %zmm13, %zmm27, %zmm267407; AVX512DQ-NEXT:    vmovdqa32 %zmm26, %zmm23 {%k1}7408; AVX512DQ-NEXT:    vpermi2d %zmm3, %zmm6, %zmm257409; AVX512DQ-NEXT:    vpermt2d %zmm5, %zmm27, %zmm257410; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm4, %zmm247411; AVX512DQ-NEXT:    vpermi2d %zmm0, %zmm1, %zmm227412; AVX512DQ-NEXT:    vmovdqa32 %zmm24, %zmm22 {%k2}7413; AVX512DQ-NEXT:    vmovdqa32 %zmm25, %zmm22 {%k1}7414; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm26 = [0,19,26,1,8,15,0,0,0,19,26,1,8,15,0,0]7415; AVX512DQ-NEXT:    # zmm26 = mem[0,1,2,3,0,1,2,3]7416; AVX512DQ-NEXT:    vmovdqa64 %zmm15, %zmm257417; AVX512DQ-NEXT:    vpermt2d %zmm9, %zmm26, %zmm257418; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,13,22,29,0,9,10,11,12,13,22,29]7419; AVX512DQ-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]7420; AVX512DQ-NEXT:    vpermt2d %zmm13, %zmm27, %zmm257421; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm28 = [28,0,0,0,0,7,14,21,28,0,0,0,0,7,14,21]7422; AVX512DQ-NEXT:    # zmm28 = mem[0,1,2,3,0,1,2,3]7423; AVX512DQ-NEXT:    vmovdqa64 %zmm14, %zmm247424; AVX512DQ-NEXT:    vpermt2d %zmm12, %zmm28, %zmm247425; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} xmm29 = [4,11,18,25]7426; AVX512DQ-NEXT:    vmovdqa64 %zmm10, %zmm307427; AVX512DQ-NEXT:    vpermt2d %zmm11, %zmm29, %zmm307428; AVX512DQ-NEXT:    vinserti32x4 $0, %xmm30, %zmm24, %zmm247429; AVX512DQ-NEXT:    vmovdqa32 %zmm25, %zmm24 {%k1}7430; AVX512DQ-NEXT:    vpermi2d %zmm3, %zmm6, %zmm267431; AVX512DQ-NEXT:    vpermt2d %zmm5, %zmm27, %zmm267432; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm4, %zmm287433; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm0, %zmm297434; AVX512DQ-NEXT:    vinserti32x4 $0, %xmm29, %zmm28, %zmm257435; AVX512DQ-NEXT:    vmovdqa32 %zmm26, %zmm25 {%k1}7436; AVX512DQ-NEXT:    vmovdqa64 %zmm9, %zmm267437; AVX512DQ-NEXT:    vpermt2d %zmm15, %zmm18, %zmm267438; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,16,23,30,0,9,10,11,12,16,23,30]7439; AVX512DQ-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]7440; AVX512DQ-NEXT:    vpermt2d %zmm13, %zmm27, %zmm267441; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm28 = [29,0,0,0,1,8,15,22,29,0,0,0,1,8,15,22]7442; AVX512DQ-NEXT:    # zmm28 = mem[0,1,2,3,0,1,2,3]7443; AVX512DQ-NEXT:    vmovdqa64 %zmm14, %zmm297444; AVX512DQ-NEXT:    vpermt2d %zmm12, %zmm28, %zmm297445; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} xmm30 = [5,12,19,26]7446; AVX512DQ-NEXT:    vmovdqa64 %zmm10, %zmm317447; AVX512DQ-NEXT:    vpermt2d %zmm11, %zmm30, %zmm317448; AVX512DQ-NEXT:    vinserti32x4 $0, %xmm31, %zmm29, %zmm297449; AVX512DQ-NEXT:    vmovdqa32 %zmm26, %zmm29 {%k1}7450; AVX512DQ-NEXT:    vpermi2d %zmm6, %zmm3, %zmm187451; AVX512DQ-NEXT:    vpermt2d %zmm5, %zmm27, %zmm187452; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm4, %zmm287453; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm0, %zmm307454; AVX512DQ-NEXT:    vinserti32x4 $0, %xmm30, %zmm28, %zmm267455; AVX512DQ-NEXT:    vmovdqa32 %zmm18, %zmm26 {%k1}7456; AVX512DQ-NEXT:    vpermt2d %zmm15, %zmm21, %zmm97457; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,17,24,31,0,9,10,11,12,17,24,31]7458; AVX512DQ-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]7459; AVX512DQ-NEXT:    vpermt2d %zmm13, %zmm15, %zmm97460; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm13 = [14,0,0,0,18,25,0,7,14,0,0,0,18,25,0,7]7461; AVX512DQ-NEXT:    # zmm13 = mem[0,1,2,3,0,1,2,3]7462; AVX512DQ-NEXT:    vpermt2d %zmm14, %zmm13, %zmm127463; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} xmm14 = [6,13,20,27]7464; AVX512DQ-NEXT:    vpermt2d %zmm11, %zmm14, %zmm107465; AVX512DQ-NEXT:    vinserti32x4 $0, %xmm10, %zmm12, %zmm107466; AVX512DQ-NEXT:    vmovdqa32 %zmm9, %zmm10 {%k1}7467; AVX512DQ-NEXT:    vpermt2d %zmm6, %zmm21, %zmm37468; AVX512DQ-NEXT:    vpermt2d %zmm5, %zmm15, %zmm37469; AVX512DQ-NEXT:    vpermt2d %zmm4, %zmm13, %zmm27470; AVX512DQ-NEXT:    vpermt2d %zmm1, %zmm14, %zmm07471; AVX512DQ-NEXT:    vinserti32x4 $0, %xmm0, %zmm2, %zmm07472; AVX512DQ-NEXT:    vmovdqa32 %zmm3, %zmm0 {%k1}7473; AVX512DQ-NEXT:    vmovdqa64 %zmm7, 64(%rsi)7474; AVX512DQ-NEXT:    vmovdqa64 %zmm8, (%rsi)7475; AVX512DQ-NEXT:    vmovdqa64 %zmm16, 64(%rdx)7476; AVX512DQ-NEXT:    vmovdqa64 %zmm17, (%rdx)7477; AVX512DQ-NEXT:    vmovdqa64 %zmm19, 64(%rcx)7478; AVX512DQ-NEXT:    vmovdqa64 %zmm20, (%rcx)7479; AVX512DQ-NEXT:    vmovdqa64 %zmm22, 64(%r8)7480; AVX512DQ-NEXT:    vmovdqa64 %zmm23, (%r8)7481; AVX512DQ-NEXT:    vmovdqa64 %zmm25, 64(%r9)7482; AVX512DQ-NEXT:    vmovdqa64 %zmm24, (%r9)7483; AVX512DQ-NEXT:    vmovdqa64 %zmm26, 64(%r10)7484; AVX512DQ-NEXT:    vmovdqa64 %zmm29, (%r10)7485; AVX512DQ-NEXT:    vmovdqa64 %zmm0, 64(%rax)7486; AVX512DQ-NEXT:    vmovdqa64 %zmm10, (%rax)7487; AVX512DQ-NEXT:    vzeroupper7488; AVX512DQ-NEXT:    retq7489;7490; AVX512DQ-FCP-LABEL: load_i32_stride7_vf32:7491; AVX512DQ-FCP:       # %bb.0:7492; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax7493; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r107494; AVX512DQ-FCP-NEXT:    vmovdqa64 512(%rdi), %zmm17495; AVX512DQ-FCP-NEXT:    vmovdqa64 448(%rdi), %zmm07496; AVX512DQ-FCP-NEXT:    vmovdqa64 576(%rdi), %zmm47497; AVX512DQ-FCP-NEXT:    vmovdqa64 640(%rdi), %zmm27498; AVX512DQ-FCP-NEXT:    vmovdqa64 832(%rdi), %zmm57499; AVX512DQ-FCP-NEXT:    vmovdqa64 768(%rdi), %zmm67500; AVX512DQ-FCP-NEXT:    vmovdqa64 704(%rdi), %zmm37501; AVX512DQ-FCP-NEXT:    vmovdqa64 384(%rdi), %zmm137502; AVX512DQ-FCP-NEXT:    vmovdqa64 320(%rdi), %zmm157503; AVX512DQ-FCP-NEXT:    vmovdqa64 256(%rdi), %zmm97504; AVX512DQ-FCP-NEXT:    vmovdqa64 (%rdi), %zmm107505; AVX512DQ-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm117506; AVX512DQ-FCP-NEXT:    vmovdqa64 128(%rdi), %zmm147507; AVX512DQ-FCP-NEXT:    vmovdqa64 192(%rdi), %zmm127508; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm16 = [8,15,0,0,0,19,26,1,8,15,0,0,0,19,26,1]7509; AVX512DQ-FCP-NEXT:    # zmm16 = mem[0,1,2,3,0,1,2,3]7510; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm12, %zmm177511; AVX512DQ-FCP-NEXT:    vpermt2d %zmm14, %zmm16, %zmm177512; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [0,7,14,21,28,0,0,0]7513; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm10, %zmm87514; AVX512DQ-FCP-NEXT:    vpermt2d %zmm11, %zmm7, %zmm87515; AVX512DQ-FCP-NEXT:    movw $992, %di # imm = 0x3E07516; AVX512DQ-FCP-NEXT:    kmovw %edi, %k17517; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm17, %zmm8 {%k1}7518; AVX512DQ-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm17 = [20,27,6,13,20,27,6,13,20,27,6,13,20,27,6,13]7519; AVX512DQ-FCP-NEXT:    # zmm17 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]7520; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm9, %zmm187521; AVX512DQ-FCP-NEXT:    vpermt2d %zmm15, %zmm17, %zmm187522; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm19 = [0,0,10,11,12,13,18,25,0,0,10,11,12,13,18,25]7523; AVX512DQ-FCP-NEXT:    # zmm19 = mem[0,1,2,3,0,1,2,3]7524; AVX512DQ-FCP-NEXT:    vpermt2d %zmm13, %zmm19, %zmm187525; AVX512DQ-FCP-NEXT:    movb $-32, %dil7526; AVX512DQ-FCP-NEXT:    kmovw %edi, %k27527; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm18, %zmm8 {%k2}7528; AVX512DQ-FCP-NEXT:    vpermi2d %zmm6, %zmm3, %zmm177529; AVX512DQ-FCP-NEXT:    vpermt2d %zmm5, %zmm19, %zmm177530; AVX512DQ-FCP-NEXT:    vpermi2d %zmm4, %zmm2, %zmm167531; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm77532; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm16, %zmm7 {%k1}7533; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm17, %zmm7 {%k2}7534; AVX512DQ-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm18 = [25,4,11,18,25,4,11,18,25,4,11,18,25,4,11,18]7535; AVX512DQ-FCP-NEXT:    # zmm18 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]7536; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm14, %zmm197537; AVX512DQ-FCP-NEXT:    vpermt2d %zmm12, %zmm18, %zmm197538; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm16 = [1,8,15,22,29,0,0,0]7539; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm10, %zmm177540; AVX512DQ-FCP-NEXT:    vpermt2d %zmm11, %zmm16, %zmm177541; AVX512DQ-FCP-NEXT:    movw $480, %di # imm = 0x1E07542; AVX512DQ-FCP-NEXT:    kmovw %edi, %k27543; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm19, %zmm17 {%k2}7544; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm19 = [0,0,7,14,21,28,0,0,0,0,7,14,21,28,0,0]7545; AVX512DQ-FCP-NEXT:    # zmm19 = mem[0,1,2,3,0,1,2,3]7546; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm9, %zmm207547; AVX512DQ-FCP-NEXT:    vpermt2d %zmm15, %zmm19, %zmm207548; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm21 = [0,9,10,11,12,13,19,26,0,9,10,11,12,13,19,26]7549; AVX512DQ-FCP-NEXT:    # zmm21 = mem[0,1,2,3,0,1,2,3]7550; AVX512DQ-FCP-NEXT:    vpermt2d %zmm13, %zmm21, %zmm207551; AVX512DQ-FCP-NEXT:    movw $-512, %di # imm = 0xFE007552; AVX512DQ-FCP-NEXT:    kmovw %edi, %k17553; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm20, %zmm17 {%k1}7554; AVX512DQ-FCP-NEXT:    vpermi2d %zmm6, %zmm3, %zmm197555; AVX512DQ-FCP-NEXT:    vpermt2d %zmm5, %zmm21, %zmm197556; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm4, %zmm207557; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm18, %zmm207558; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm167559; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm20, %zmm16 {%k2}7560; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm19, %zmm16 {%k1}7561; AVX512DQ-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm21 = [26,5,12,19,26,5,12,19,26,5,12,19,26,5,12,19]7562; AVX512DQ-FCP-NEXT:    # zmm21 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]7563; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm14, %zmm227564; AVX512DQ-FCP-NEXT:    vpermt2d %zmm12, %zmm21, %zmm227565; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm19 = [18,25,0,7,14,0,0,0]7566; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm11, %zmm207567; AVX512DQ-FCP-NEXT:    vpermt2d %zmm10, %zmm19, %zmm207568; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm22, %zmm20 {%k2}7569; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm22 = [0,1,8,15,22,29,0,0,0,1,8,15,22,29,0,0]7570; AVX512DQ-FCP-NEXT:    # zmm22 = mem[0,1,2,3,0,1,2,3]7571; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm9, %zmm237572; AVX512DQ-FCP-NEXT:    vpermt2d %zmm15, %zmm22, %zmm237573; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm24 = [0,9,10,11,12,13,20,27,0,9,10,11,12,13,20,27]7574; AVX512DQ-FCP-NEXT:    # zmm24 = mem[0,1,2,3,0,1,2,3]7575; AVX512DQ-FCP-NEXT:    vpermt2d %zmm13, %zmm24, %zmm237576; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm23, %zmm20 {%k1}7577; AVX512DQ-FCP-NEXT:    vpermi2d %zmm6, %zmm3, %zmm227578; AVX512DQ-FCP-NEXT:    vpermt2d %zmm5, %zmm24, %zmm227579; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm4, %zmm237580; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm21, %zmm237581; AVX512DQ-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm197582; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm23, %zmm19 {%k2}7583; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm22, %zmm19 {%k1}7584; AVX512DQ-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm24 = [27,6,13,20,27,6,13,20,27,6,13,20,27,6,13,20]7585; AVX512DQ-FCP-NEXT:    # zmm24 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]7586; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm14, %zmm257587; AVX512DQ-FCP-NEXT:    vpermt2d %zmm12, %zmm24, %zmm257588; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm22 = [19,26,1,8,15,0,0,0]7589; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm11, %zmm237590; AVX512DQ-FCP-NEXT:    vpermt2d %zmm10, %zmm22, %zmm237591; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm25, %zmm23 {%k2}7592; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm25 = [0,18,25,0,7,14,0,0,0,18,25,0,7,14,0,0]7593; AVX512DQ-FCP-NEXT:    # zmm25 = mem[0,1,2,3,0,1,2,3]7594; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm15, %zmm267595; AVX512DQ-FCP-NEXT:    vpermt2d %zmm9, %zmm25, %zmm267596; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,13,21,28,0,9,10,11,12,13,21,28]7597; AVX512DQ-FCP-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]7598; AVX512DQ-FCP-NEXT:    vpermt2d %zmm13, %zmm27, %zmm267599; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm26, %zmm23 {%k1}7600; AVX512DQ-FCP-NEXT:    vpermi2d %zmm3, %zmm6, %zmm257601; AVX512DQ-FCP-NEXT:    vpermt2d %zmm5, %zmm27, %zmm257602; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm4, %zmm247603; AVX512DQ-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm227604; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm24, %zmm22 {%k2}7605; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm25, %zmm22 {%k1}7606; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm26 = [0,19,26,1,8,15,0,0,0,19,26,1,8,15,0,0]7607; AVX512DQ-FCP-NEXT:    # zmm26 = mem[0,1,2,3,0,1,2,3]7608; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm15, %zmm257609; AVX512DQ-FCP-NEXT:    vpermt2d %zmm9, %zmm26, %zmm257610; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,13,22,29,0,9,10,11,12,13,22,29]7611; AVX512DQ-FCP-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]7612; AVX512DQ-FCP-NEXT:    vpermt2d %zmm13, %zmm27, %zmm257613; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm28 = [28,0,0,0,0,7,14,21,28,0,0,0,0,7,14,21]7614; AVX512DQ-FCP-NEXT:    # zmm28 = mem[0,1,2,3,0,1,2,3]7615; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm14, %zmm247616; AVX512DQ-FCP-NEXT:    vpermt2d %zmm12, %zmm28, %zmm247617; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm29 = [4,11,18,25]7618; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm10, %zmm307619; AVX512DQ-FCP-NEXT:    vpermt2d %zmm11, %zmm29, %zmm307620; AVX512DQ-FCP-NEXT:    vinserti32x4 $0, %xmm30, %zmm24, %zmm247621; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm25, %zmm24 {%k1}7622; AVX512DQ-FCP-NEXT:    vpermi2d %zmm3, %zmm6, %zmm267623; AVX512DQ-FCP-NEXT:    vpermt2d %zmm5, %zmm27, %zmm267624; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm4, %zmm287625; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm297626; AVX512DQ-FCP-NEXT:    vinserti32x4 $0, %xmm29, %zmm28, %zmm257627; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm26, %zmm25 {%k1}7628; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm9, %zmm267629; AVX512DQ-FCP-NEXT:    vpermt2d %zmm15, %zmm18, %zmm267630; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,16,23,30,0,9,10,11,12,16,23,30]7631; AVX512DQ-FCP-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]7632; AVX512DQ-FCP-NEXT:    vpermt2d %zmm13, %zmm27, %zmm267633; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm28 = [29,0,0,0,1,8,15,22,29,0,0,0,1,8,15,22]7634; AVX512DQ-FCP-NEXT:    # zmm28 = mem[0,1,2,3,0,1,2,3]7635; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm14, %zmm297636; AVX512DQ-FCP-NEXT:    vpermt2d %zmm12, %zmm28, %zmm297637; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm30 = [5,12,19,26]7638; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm10, %zmm317639; AVX512DQ-FCP-NEXT:    vpermt2d %zmm11, %zmm30, %zmm317640; AVX512DQ-FCP-NEXT:    vinserti32x4 $0, %xmm31, %zmm29, %zmm297641; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm26, %zmm29 {%k1}7642; AVX512DQ-FCP-NEXT:    vpermi2d %zmm6, %zmm3, %zmm187643; AVX512DQ-FCP-NEXT:    vpermt2d %zmm5, %zmm27, %zmm187644; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm4, %zmm287645; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm307646; AVX512DQ-FCP-NEXT:    vinserti32x4 $0, %xmm30, %zmm28, %zmm267647; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm18, %zmm26 {%k1}7648; AVX512DQ-FCP-NEXT:    vpermt2d %zmm15, %zmm21, %zmm97649; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,17,24,31,0,9,10,11,12,17,24,31]7650; AVX512DQ-FCP-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]7651; AVX512DQ-FCP-NEXT:    vpermt2d %zmm13, %zmm15, %zmm97652; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm13 = [14,0,0,0,18,25,0,7,14,0,0,0,18,25,0,7]7653; AVX512DQ-FCP-NEXT:    # zmm13 = mem[0,1,2,3,0,1,2,3]7654; AVX512DQ-FCP-NEXT:    vpermt2d %zmm14, %zmm13, %zmm127655; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm14 = [6,13,20,27]7656; AVX512DQ-FCP-NEXT:    vpermt2d %zmm11, %zmm14, %zmm107657; AVX512DQ-FCP-NEXT:    vinserti32x4 $0, %xmm10, %zmm12, %zmm107658; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm9, %zmm10 {%k1}7659; AVX512DQ-FCP-NEXT:    vpermt2d %zmm6, %zmm21, %zmm37660; AVX512DQ-FCP-NEXT:    vpermt2d %zmm5, %zmm15, %zmm37661; AVX512DQ-FCP-NEXT:    vpermt2d %zmm4, %zmm13, %zmm27662; AVX512DQ-FCP-NEXT:    vpermt2d %zmm1, %zmm14, %zmm07663; AVX512DQ-FCP-NEXT:    vinserti32x4 $0, %xmm0, %zmm2, %zmm07664; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm3, %zmm0 {%k1}7665; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm7, 64(%rsi)7666; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm8, (%rsi)7667; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm16, 64(%rdx)7668; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm17, (%rdx)7669; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm19, 64(%rcx)7670; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm20, (%rcx)7671; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm22, 64(%r8)7672; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm23, (%r8)7673; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm25, 64(%r9)7674; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm24, (%r9)7675; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm26, 64(%r10)7676; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm29, (%r10)7677; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, 64(%rax)7678; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm10, (%rax)7679; AVX512DQ-FCP-NEXT:    vzeroupper7680; AVX512DQ-FCP-NEXT:    retq7681;7682; AVX512BW-LABEL: load_i32_stride7_vf32:7683; AVX512BW:       # %bb.0:7684; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax7685; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %r107686; AVX512BW-NEXT:    vmovdqa64 512(%rdi), %zmm17687; AVX512BW-NEXT:    vmovdqa64 448(%rdi), %zmm07688; AVX512BW-NEXT:    vmovdqa64 576(%rdi), %zmm47689; AVX512BW-NEXT:    vmovdqa64 640(%rdi), %zmm27690; AVX512BW-NEXT:    vmovdqa64 832(%rdi), %zmm57691; AVX512BW-NEXT:    vmovdqa64 768(%rdi), %zmm67692; AVX512BW-NEXT:    vmovdqa64 704(%rdi), %zmm37693; AVX512BW-NEXT:    vmovdqa64 384(%rdi), %zmm137694; AVX512BW-NEXT:    vmovdqa64 320(%rdi), %zmm157695; AVX512BW-NEXT:    vmovdqa64 256(%rdi), %zmm97696; AVX512BW-NEXT:    vmovdqa64 (%rdi), %zmm107697; AVX512BW-NEXT:    vmovdqa64 64(%rdi), %zmm117698; AVX512BW-NEXT:    vmovdqa64 128(%rdi), %zmm147699; AVX512BW-NEXT:    vmovdqa64 192(%rdi), %zmm127700; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm16 = [8,15,0,0,0,19,26,1,8,15,0,0,0,19,26,1]7701; AVX512BW-NEXT:    # zmm16 = mem[0,1,2,3,0,1,2,3]7702; AVX512BW-NEXT:    vmovdqa64 %zmm12, %zmm177703; AVX512BW-NEXT:    vpermt2d %zmm14, %zmm16, %zmm177704; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [0,7,14,21,28,0,0,0]7705; AVX512BW-NEXT:    vmovdqa64 %zmm10, %zmm87706; AVX512BW-NEXT:    vpermt2d %zmm11, %zmm7, %zmm87707; AVX512BW-NEXT:    movw $992, %di # imm = 0x3E07708; AVX512BW-NEXT:    kmovd %edi, %k17709; AVX512BW-NEXT:    vmovdqa32 %zmm17, %zmm8 {%k1}7710; AVX512BW-NEXT:    vbroadcasti32x4 {{.*#+}} zmm17 = [20,27,6,13,20,27,6,13,20,27,6,13,20,27,6,13]7711; AVX512BW-NEXT:    # zmm17 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]7712; AVX512BW-NEXT:    vmovdqa64 %zmm9, %zmm187713; AVX512BW-NEXT:    vpermt2d %zmm15, %zmm17, %zmm187714; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm19 = [0,0,10,11,12,13,18,25,0,0,10,11,12,13,18,25]7715; AVX512BW-NEXT:    # zmm19 = mem[0,1,2,3,0,1,2,3]7716; AVX512BW-NEXT:    vpermt2d %zmm13, %zmm19, %zmm187717; AVX512BW-NEXT:    movb $-32, %dil7718; AVX512BW-NEXT:    kmovd %edi, %k27719; AVX512BW-NEXT:    vmovdqa64 %zmm18, %zmm8 {%k2}7720; AVX512BW-NEXT:    vpermi2d %zmm6, %zmm3, %zmm177721; AVX512BW-NEXT:    vpermt2d %zmm5, %zmm19, %zmm177722; AVX512BW-NEXT:    vpermi2d %zmm4, %zmm2, %zmm167723; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm77724; AVX512BW-NEXT:    vmovdqa32 %zmm16, %zmm7 {%k1}7725; AVX512BW-NEXT:    vmovdqa64 %zmm17, %zmm7 {%k2}7726; AVX512BW-NEXT:    vbroadcasti32x4 {{.*#+}} zmm18 = [25,4,11,18,25,4,11,18,25,4,11,18,25,4,11,18]7727; AVX512BW-NEXT:    # zmm18 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]7728; AVX512BW-NEXT:    vmovdqa64 %zmm14, %zmm197729; AVX512BW-NEXT:    vpermt2d %zmm12, %zmm18, %zmm197730; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm16 = [1,8,15,22,29,0,0,0]7731; AVX512BW-NEXT:    vmovdqa64 %zmm10, %zmm177732; AVX512BW-NEXT:    vpermt2d %zmm11, %zmm16, %zmm177733; AVX512BW-NEXT:    movw $480, %di # imm = 0x1E07734; AVX512BW-NEXT:    kmovd %edi, %k27735; AVX512BW-NEXT:    vmovdqa32 %zmm19, %zmm17 {%k2}7736; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm19 = [0,0,7,14,21,28,0,0,0,0,7,14,21,28,0,0]7737; AVX512BW-NEXT:    # zmm19 = mem[0,1,2,3,0,1,2,3]7738; AVX512BW-NEXT:    vmovdqa64 %zmm9, %zmm207739; AVX512BW-NEXT:    vpermt2d %zmm15, %zmm19, %zmm207740; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm21 = [0,9,10,11,12,13,19,26,0,9,10,11,12,13,19,26]7741; AVX512BW-NEXT:    # zmm21 = mem[0,1,2,3,0,1,2,3]7742; AVX512BW-NEXT:    vpermt2d %zmm13, %zmm21, %zmm207743; AVX512BW-NEXT:    movw $-512, %di # imm = 0xFE007744; AVX512BW-NEXT:    kmovd %edi, %k17745; AVX512BW-NEXT:    vmovdqa32 %zmm20, %zmm17 {%k1}7746; AVX512BW-NEXT:    vpermi2d %zmm6, %zmm3, %zmm197747; AVX512BW-NEXT:    vpermt2d %zmm5, %zmm21, %zmm197748; AVX512BW-NEXT:    vmovdqa64 %zmm4, %zmm207749; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm18, %zmm207750; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm167751; AVX512BW-NEXT:    vmovdqa32 %zmm20, %zmm16 {%k2}7752; AVX512BW-NEXT:    vmovdqa32 %zmm19, %zmm16 {%k1}7753; AVX512BW-NEXT:    vbroadcasti32x4 {{.*#+}} zmm21 = [26,5,12,19,26,5,12,19,26,5,12,19,26,5,12,19]7754; AVX512BW-NEXT:    # zmm21 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]7755; AVX512BW-NEXT:    vmovdqa64 %zmm14, %zmm227756; AVX512BW-NEXT:    vpermt2d %zmm12, %zmm21, %zmm227757; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm19 = [18,25,0,7,14,0,0,0]7758; AVX512BW-NEXT:    vmovdqa64 %zmm11, %zmm207759; AVX512BW-NEXT:    vpermt2d %zmm10, %zmm19, %zmm207760; AVX512BW-NEXT:    vmovdqa32 %zmm22, %zmm20 {%k2}7761; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm22 = [0,1,8,15,22,29,0,0,0,1,8,15,22,29,0,0]7762; AVX512BW-NEXT:    # zmm22 = mem[0,1,2,3,0,1,2,3]7763; AVX512BW-NEXT:    vmovdqa64 %zmm9, %zmm237764; AVX512BW-NEXT:    vpermt2d %zmm15, %zmm22, %zmm237765; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm24 = [0,9,10,11,12,13,20,27,0,9,10,11,12,13,20,27]7766; AVX512BW-NEXT:    # zmm24 = mem[0,1,2,3,0,1,2,3]7767; AVX512BW-NEXT:    vpermt2d %zmm13, %zmm24, %zmm237768; AVX512BW-NEXT:    vmovdqa32 %zmm23, %zmm20 {%k1}7769; AVX512BW-NEXT:    vpermi2d %zmm6, %zmm3, %zmm227770; AVX512BW-NEXT:    vpermt2d %zmm5, %zmm24, %zmm227771; AVX512BW-NEXT:    vmovdqa64 %zmm4, %zmm237772; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm21, %zmm237773; AVX512BW-NEXT:    vpermi2d %zmm0, %zmm1, %zmm197774; AVX512BW-NEXT:    vmovdqa32 %zmm23, %zmm19 {%k2}7775; AVX512BW-NEXT:    vmovdqa32 %zmm22, %zmm19 {%k1}7776; AVX512BW-NEXT:    vbroadcasti32x4 {{.*#+}} zmm24 = [27,6,13,20,27,6,13,20,27,6,13,20,27,6,13,20]7777; AVX512BW-NEXT:    # zmm24 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]7778; AVX512BW-NEXT:    vmovdqa64 %zmm14, %zmm257779; AVX512BW-NEXT:    vpermt2d %zmm12, %zmm24, %zmm257780; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm22 = [19,26,1,8,15,0,0,0]7781; AVX512BW-NEXT:    vmovdqa64 %zmm11, %zmm237782; AVX512BW-NEXT:    vpermt2d %zmm10, %zmm22, %zmm237783; AVX512BW-NEXT:    vmovdqa32 %zmm25, %zmm23 {%k2}7784; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm25 = [0,18,25,0,7,14,0,0,0,18,25,0,7,14,0,0]7785; AVX512BW-NEXT:    # zmm25 = mem[0,1,2,3,0,1,2,3]7786; AVX512BW-NEXT:    vmovdqa64 %zmm15, %zmm267787; AVX512BW-NEXT:    vpermt2d %zmm9, %zmm25, %zmm267788; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,13,21,28,0,9,10,11,12,13,21,28]7789; AVX512BW-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]7790; AVX512BW-NEXT:    vpermt2d %zmm13, %zmm27, %zmm267791; AVX512BW-NEXT:    vmovdqa32 %zmm26, %zmm23 {%k1}7792; AVX512BW-NEXT:    vpermi2d %zmm3, %zmm6, %zmm257793; AVX512BW-NEXT:    vpermt2d %zmm5, %zmm27, %zmm257794; AVX512BW-NEXT:    vpermi2d %zmm2, %zmm4, %zmm247795; AVX512BW-NEXT:    vpermi2d %zmm0, %zmm1, %zmm227796; AVX512BW-NEXT:    vmovdqa32 %zmm24, %zmm22 {%k2}7797; AVX512BW-NEXT:    vmovdqa32 %zmm25, %zmm22 {%k1}7798; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm26 = [0,19,26,1,8,15,0,0,0,19,26,1,8,15,0,0]7799; AVX512BW-NEXT:    # zmm26 = mem[0,1,2,3,0,1,2,3]7800; AVX512BW-NEXT:    vmovdqa64 %zmm15, %zmm257801; AVX512BW-NEXT:    vpermt2d %zmm9, %zmm26, %zmm257802; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,13,22,29,0,9,10,11,12,13,22,29]7803; AVX512BW-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]7804; AVX512BW-NEXT:    vpermt2d %zmm13, %zmm27, %zmm257805; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm28 = [28,0,0,0,0,7,14,21,28,0,0,0,0,7,14,21]7806; AVX512BW-NEXT:    # zmm28 = mem[0,1,2,3,0,1,2,3]7807; AVX512BW-NEXT:    vmovdqa64 %zmm14, %zmm247808; AVX512BW-NEXT:    vpermt2d %zmm12, %zmm28, %zmm247809; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} xmm29 = [4,11,18,25]7810; AVX512BW-NEXT:    vmovdqa64 %zmm10, %zmm307811; AVX512BW-NEXT:    vpermt2d %zmm11, %zmm29, %zmm307812; AVX512BW-NEXT:    vinserti32x4 $0, %xmm30, %zmm24, %zmm247813; AVX512BW-NEXT:    vmovdqa32 %zmm25, %zmm24 {%k1}7814; AVX512BW-NEXT:    vpermi2d %zmm3, %zmm6, %zmm267815; AVX512BW-NEXT:    vpermt2d %zmm5, %zmm27, %zmm267816; AVX512BW-NEXT:    vpermi2d %zmm2, %zmm4, %zmm287817; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm297818; AVX512BW-NEXT:    vinserti32x4 $0, %xmm29, %zmm28, %zmm257819; AVX512BW-NEXT:    vmovdqa32 %zmm26, %zmm25 {%k1}7820; AVX512BW-NEXT:    vmovdqa64 %zmm9, %zmm267821; AVX512BW-NEXT:    vpermt2d %zmm15, %zmm18, %zmm267822; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,16,23,30,0,9,10,11,12,16,23,30]7823; AVX512BW-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]7824; AVX512BW-NEXT:    vpermt2d %zmm13, %zmm27, %zmm267825; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm28 = [29,0,0,0,1,8,15,22,29,0,0,0,1,8,15,22]7826; AVX512BW-NEXT:    # zmm28 = mem[0,1,2,3,0,1,2,3]7827; AVX512BW-NEXT:    vmovdqa64 %zmm14, %zmm297828; AVX512BW-NEXT:    vpermt2d %zmm12, %zmm28, %zmm297829; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} xmm30 = [5,12,19,26]7830; AVX512BW-NEXT:    vmovdqa64 %zmm10, %zmm317831; AVX512BW-NEXT:    vpermt2d %zmm11, %zmm30, %zmm317832; AVX512BW-NEXT:    vinserti32x4 $0, %xmm31, %zmm29, %zmm297833; AVX512BW-NEXT:    vmovdqa32 %zmm26, %zmm29 {%k1}7834; AVX512BW-NEXT:    vpermi2d %zmm6, %zmm3, %zmm187835; AVX512BW-NEXT:    vpermt2d %zmm5, %zmm27, %zmm187836; AVX512BW-NEXT:    vpermi2d %zmm2, %zmm4, %zmm287837; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm307838; AVX512BW-NEXT:    vinserti32x4 $0, %xmm30, %zmm28, %zmm267839; AVX512BW-NEXT:    vmovdqa32 %zmm18, %zmm26 {%k1}7840; AVX512BW-NEXT:    vpermt2d %zmm15, %zmm21, %zmm97841; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,17,24,31,0,9,10,11,12,17,24,31]7842; AVX512BW-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]7843; AVX512BW-NEXT:    vpermt2d %zmm13, %zmm15, %zmm97844; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm13 = [14,0,0,0,18,25,0,7,14,0,0,0,18,25,0,7]7845; AVX512BW-NEXT:    # zmm13 = mem[0,1,2,3,0,1,2,3]7846; AVX512BW-NEXT:    vpermt2d %zmm14, %zmm13, %zmm127847; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} xmm14 = [6,13,20,27]7848; AVX512BW-NEXT:    vpermt2d %zmm11, %zmm14, %zmm107849; AVX512BW-NEXT:    vinserti32x4 $0, %xmm10, %zmm12, %zmm107850; AVX512BW-NEXT:    vmovdqa32 %zmm9, %zmm10 {%k1}7851; AVX512BW-NEXT:    vpermt2d %zmm6, %zmm21, %zmm37852; AVX512BW-NEXT:    vpermt2d %zmm5, %zmm15, %zmm37853; AVX512BW-NEXT:    vpermt2d %zmm4, %zmm13, %zmm27854; AVX512BW-NEXT:    vpermt2d %zmm1, %zmm14, %zmm07855; AVX512BW-NEXT:    vinserti32x4 $0, %xmm0, %zmm2, %zmm07856; AVX512BW-NEXT:    vmovdqa32 %zmm3, %zmm0 {%k1}7857; AVX512BW-NEXT:    vmovdqa64 %zmm7, 64(%rsi)7858; AVX512BW-NEXT:    vmovdqa64 %zmm8, (%rsi)7859; AVX512BW-NEXT:    vmovdqa64 %zmm16, 64(%rdx)7860; AVX512BW-NEXT:    vmovdqa64 %zmm17, (%rdx)7861; AVX512BW-NEXT:    vmovdqa64 %zmm19, 64(%rcx)7862; AVX512BW-NEXT:    vmovdqa64 %zmm20, (%rcx)7863; AVX512BW-NEXT:    vmovdqa64 %zmm22, 64(%r8)7864; AVX512BW-NEXT:    vmovdqa64 %zmm23, (%r8)7865; AVX512BW-NEXT:    vmovdqa64 %zmm25, 64(%r9)7866; AVX512BW-NEXT:    vmovdqa64 %zmm24, (%r9)7867; AVX512BW-NEXT:    vmovdqa64 %zmm26, 64(%r10)7868; AVX512BW-NEXT:    vmovdqa64 %zmm29, (%r10)7869; AVX512BW-NEXT:    vmovdqa64 %zmm0, 64(%rax)7870; AVX512BW-NEXT:    vmovdqa64 %zmm10, (%rax)7871; AVX512BW-NEXT:    vzeroupper7872; AVX512BW-NEXT:    retq7873;7874; AVX512BW-FCP-LABEL: load_i32_stride7_vf32:7875; AVX512BW-FCP:       # %bb.0:7876; AVX512BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax7877; AVX512BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r107878; AVX512BW-FCP-NEXT:    vmovdqa64 512(%rdi), %zmm17879; AVX512BW-FCP-NEXT:    vmovdqa64 448(%rdi), %zmm07880; AVX512BW-FCP-NEXT:    vmovdqa64 576(%rdi), %zmm47881; AVX512BW-FCP-NEXT:    vmovdqa64 640(%rdi), %zmm27882; AVX512BW-FCP-NEXT:    vmovdqa64 832(%rdi), %zmm57883; AVX512BW-FCP-NEXT:    vmovdqa64 768(%rdi), %zmm67884; AVX512BW-FCP-NEXT:    vmovdqa64 704(%rdi), %zmm37885; AVX512BW-FCP-NEXT:    vmovdqa64 384(%rdi), %zmm137886; AVX512BW-FCP-NEXT:    vmovdqa64 320(%rdi), %zmm157887; AVX512BW-FCP-NEXT:    vmovdqa64 256(%rdi), %zmm97888; AVX512BW-FCP-NEXT:    vmovdqa64 (%rdi), %zmm107889; AVX512BW-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm117890; AVX512BW-FCP-NEXT:    vmovdqa64 128(%rdi), %zmm147891; AVX512BW-FCP-NEXT:    vmovdqa64 192(%rdi), %zmm127892; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm16 = [8,15,0,0,0,19,26,1,8,15,0,0,0,19,26,1]7893; AVX512BW-FCP-NEXT:    # zmm16 = mem[0,1,2,3,0,1,2,3]7894; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm12, %zmm177895; AVX512BW-FCP-NEXT:    vpermt2d %zmm14, %zmm16, %zmm177896; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [0,7,14,21,28,0,0,0]7897; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm10, %zmm87898; AVX512BW-FCP-NEXT:    vpermt2d %zmm11, %zmm7, %zmm87899; AVX512BW-FCP-NEXT:    movw $992, %di # imm = 0x3E07900; AVX512BW-FCP-NEXT:    kmovd %edi, %k17901; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm17, %zmm8 {%k1}7902; AVX512BW-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm17 = [20,27,6,13,20,27,6,13,20,27,6,13,20,27,6,13]7903; AVX512BW-FCP-NEXT:    # zmm17 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]7904; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm9, %zmm187905; AVX512BW-FCP-NEXT:    vpermt2d %zmm15, %zmm17, %zmm187906; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm19 = [0,0,10,11,12,13,18,25,0,0,10,11,12,13,18,25]7907; AVX512BW-FCP-NEXT:    # zmm19 = mem[0,1,2,3,0,1,2,3]7908; AVX512BW-FCP-NEXT:    vpermt2d %zmm13, %zmm19, %zmm187909; AVX512BW-FCP-NEXT:    movb $-32, %dil7910; AVX512BW-FCP-NEXT:    kmovd %edi, %k27911; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm18, %zmm8 {%k2}7912; AVX512BW-FCP-NEXT:    vpermi2d %zmm6, %zmm3, %zmm177913; AVX512BW-FCP-NEXT:    vpermt2d %zmm5, %zmm19, %zmm177914; AVX512BW-FCP-NEXT:    vpermi2d %zmm4, %zmm2, %zmm167915; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm77916; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm16, %zmm7 {%k1}7917; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm17, %zmm7 {%k2}7918; AVX512BW-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm18 = [25,4,11,18,25,4,11,18,25,4,11,18,25,4,11,18]7919; AVX512BW-FCP-NEXT:    # zmm18 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]7920; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm14, %zmm197921; AVX512BW-FCP-NEXT:    vpermt2d %zmm12, %zmm18, %zmm197922; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm16 = [1,8,15,22,29,0,0,0]7923; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm10, %zmm177924; AVX512BW-FCP-NEXT:    vpermt2d %zmm11, %zmm16, %zmm177925; AVX512BW-FCP-NEXT:    movw $480, %di # imm = 0x1E07926; AVX512BW-FCP-NEXT:    kmovd %edi, %k27927; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm19, %zmm17 {%k2}7928; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm19 = [0,0,7,14,21,28,0,0,0,0,7,14,21,28,0,0]7929; AVX512BW-FCP-NEXT:    # zmm19 = mem[0,1,2,3,0,1,2,3]7930; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm9, %zmm207931; AVX512BW-FCP-NEXT:    vpermt2d %zmm15, %zmm19, %zmm207932; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm21 = [0,9,10,11,12,13,19,26,0,9,10,11,12,13,19,26]7933; AVX512BW-FCP-NEXT:    # zmm21 = mem[0,1,2,3,0,1,2,3]7934; AVX512BW-FCP-NEXT:    vpermt2d %zmm13, %zmm21, %zmm207935; AVX512BW-FCP-NEXT:    movw $-512, %di # imm = 0xFE007936; AVX512BW-FCP-NEXT:    kmovd %edi, %k17937; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm20, %zmm17 {%k1}7938; AVX512BW-FCP-NEXT:    vpermi2d %zmm6, %zmm3, %zmm197939; AVX512BW-FCP-NEXT:    vpermt2d %zmm5, %zmm21, %zmm197940; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm4, %zmm207941; AVX512BW-FCP-NEXT:    vpermt2d %zmm2, %zmm18, %zmm207942; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm167943; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm20, %zmm16 {%k2}7944; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm19, %zmm16 {%k1}7945; AVX512BW-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm21 = [26,5,12,19,26,5,12,19,26,5,12,19,26,5,12,19]7946; AVX512BW-FCP-NEXT:    # zmm21 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]7947; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm14, %zmm227948; AVX512BW-FCP-NEXT:    vpermt2d %zmm12, %zmm21, %zmm227949; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm19 = [18,25,0,7,14,0,0,0]7950; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm11, %zmm207951; AVX512BW-FCP-NEXT:    vpermt2d %zmm10, %zmm19, %zmm207952; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm22, %zmm20 {%k2}7953; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm22 = [0,1,8,15,22,29,0,0,0,1,8,15,22,29,0,0]7954; AVX512BW-FCP-NEXT:    # zmm22 = mem[0,1,2,3,0,1,2,3]7955; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm9, %zmm237956; AVX512BW-FCP-NEXT:    vpermt2d %zmm15, %zmm22, %zmm237957; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm24 = [0,9,10,11,12,13,20,27,0,9,10,11,12,13,20,27]7958; AVX512BW-FCP-NEXT:    # zmm24 = mem[0,1,2,3,0,1,2,3]7959; AVX512BW-FCP-NEXT:    vpermt2d %zmm13, %zmm24, %zmm237960; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm23, %zmm20 {%k1}7961; AVX512BW-FCP-NEXT:    vpermi2d %zmm6, %zmm3, %zmm227962; AVX512BW-FCP-NEXT:    vpermt2d %zmm5, %zmm24, %zmm227963; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm4, %zmm237964; AVX512BW-FCP-NEXT:    vpermt2d %zmm2, %zmm21, %zmm237965; AVX512BW-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm197966; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm23, %zmm19 {%k2}7967; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm22, %zmm19 {%k1}7968; AVX512BW-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm24 = [27,6,13,20,27,6,13,20,27,6,13,20,27,6,13,20]7969; AVX512BW-FCP-NEXT:    # zmm24 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]7970; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm14, %zmm257971; AVX512BW-FCP-NEXT:    vpermt2d %zmm12, %zmm24, %zmm257972; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm22 = [19,26,1,8,15,0,0,0]7973; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm11, %zmm237974; AVX512BW-FCP-NEXT:    vpermt2d %zmm10, %zmm22, %zmm237975; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm25, %zmm23 {%k2}7976; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm25 = [0,18,25,0,7,14,0,0,0,18,25,0,7,14,0,0]7977; AVX512BW-FCP-NEXT:    # zmm25 = mem[0,1,2,3,0,1,2,3]7978; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm15, %zmm267979; AVX512BW-FCP-NEXT:    vpermt2d %zmm9, %zmm25, %zmm267980; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,13,21,28,0,9,10,11,12,13,21,28]7981; AVX512BW-FCP-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]7982; AVX512BW-FCP-NEXT:    vpermt2d %zmm13, %zmm27, %zmm267983; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm26, %zmm23 {%k1}7984; AVX512BW-FCP-NEXT:    vpermi2d %zmm3, %zmm6, %zmm257985; AVX512BW-FCP-NEXT:    vpermt2d %zmm5, %zmm27, %zmm257986; AVX512BW-FCP-NEXT:    vpermi2d %zmm2, %zmm4, %zmm247987; AVX512BW-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm227988; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm24, %zmm22 {%k2}7989; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm25, %zmm22 {%k1}7990; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm26 = [0,19,26,1,8,15,0,0,0,19,26,1,8,15,0,0]7991; AVX512BW-FCP-NEXT:    # zmm26 = mem[0,1,2,3,0,1,2,3]7992; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm15, %zmm257993; AVX512BW-FCP-NEXT:    vpermt2d %zmm9, %zmm26, %zmm257994; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,13,22,29,0,9,10,11,12,13,22,29]7995; AVX512BW-FCP-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]7996; AVX512BW-FCP-NEXT:    vpermt2d %zmm13, %zmm27, %zmm257997; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm28 = [28,0,0,0,0,7,14,21,28,0,0,0,0,7,14,21]7998; AVX512BW-FCP-NEXT:    # zmm28 = mem[0,1,2,3,0,1,2,3]7999; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm14, %zmm248000; AVX512BW-FCP-NEXT:    vpermt2d %zmm12, %zmm28, %zmm248001; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm29 = [4,11,18,25]8002; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm10, %zmm308003; AVX512BW-FCP-NEXT:    vpermt2d %zmm11, %zmm29, %zmm308004; AVX512BW-FCP-NEXT:    vinserti32x4 $0, %xmm30, %zmm24, %zmm248005; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm25, %zmm24 {%k1}8006; AVX512BW-FCP-NEXT:    vpermi2d %zmm3, %zmm6, %zmm268007; AVX512BW-FCP-NEXT:    vpermt2d %zmm5, %zmm27, %zmm268008; AVX512BW-FCP-NEXT:    vpermi2d %zmm2, %zmm4, %zmm288009; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm298010; AVX512BW-FCP-NEXT:    vinserti32x4 $0, %xmm29, %zmm28, %zmm258011; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm26, %zmm25 {%k1}8012; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm9, %zmm268013; AVX512BW-FCP-NEXT:    vpermt2d %zmm15, %zmm18, %zmm268014; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,16,23,30,0,9,10,11,12,16,23,30]8015; AVX512BW-FCP-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]8016; AVX512BW-FCP-NEXT:    vpermt2d %zmm13, %zmm27, %zmm268017; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm28 = [29,0,0,0,1,8,15,22,29,0,0,0,1,8,15,22]8018; AVX512BW-FCP-NEXT:    # zmm28 = mem[0,1,2,3,0,1,2,3]8019; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm14, %zmm298020; AVX512BW-FCP-NEXT:    vpermt2d %zmm12, %zmm28, %zmm298021; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm30 = [5,12,19,26]8022; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm10, %zmm318023; AVX512BW-FCP-NEXT:    vpermt2d %zmm11, %zmm30, %zmm318024; AVX512BW-FCP-NEXT:    vinserti32x4 $0, %xmm31, %zmm29, %zmm298025; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm26, %zmm29 {%k1}8026; AVX512BW-FCP-NEXT:    vpermi2d %zmm6, %zmm3, %zmm188027; AVX512BW-FCP-NEXT:    vpermt2d %zmm5, %zmm27, %zmm188028; AVX512BW-FCP-NEXT:    vpermi2d %zmm2, %zmm4, %zmm288029; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm308030; AVX512BW-FCP-NEXT:    vinserti32x4 $0, %xmm30, %zmm28, %zmm268031; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm18, %zmm26 {%k1}8032; AVX512BW-FCP-NEXT:    vpermt2d %zmm15, %zmm21, %zmm98033; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,17,24,31,0,9,10,11,12,17,24,31]8034; AVX512BW-FCP-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]8035; AVX512BW-FCP-NEXT:    vpermt2d %zmm13, %zmm15, %zmm98036; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm13 = [14,0,0,0,18,25,0,7,14,0,0,0,18,25,0,7]8037; AVX512BW-FCP-NEXT:    # zmm13 = mem[0,1,2,3,0,1,2,3]8038; AVX512BW-FCP-NEXT:    vpermt2d %zmm14, %zmm13, %zmm128039; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm14 = [6,13,20,27]8040; AVX512BW-FCP-NEXT:    vpermt2d %zmm11, %zmm14, %zmm108041; AVX512BW-FCP-NEXT:    vinserti32x4 $0, %xmm10, %zmm12, %zmm108042; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm9, %zmm10 {%k1}8043; AVX512BW-FCP-NEXT:    vpermt2d %zmm6, %zmm21, %zmm38044; AVX512BW-FCP-NEXT:    vpermt2d %zmm5, %zmm15, %zmm38045; AVX512BW-FCP-NEXT:    vpermt2d %zmm4, %zmm13, %zmm28046; AVX512BW-FCP-NEXT:    vpermt2d %zmm1, %zmm14, %zmm08047; AVX512BW-FCP-NEXT:    vinserti32x4 $0, %xmm0, %zmm2, %zmm08048; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm3, %zmm0 {%k1}8049; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm7, 64(%rsi)8050; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm8, (%rsi)8051; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm16, 64(%rdx)8052; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm17, (%rdx)8053; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm19, 64(%rcx)8054; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm20, (%rcx)8055; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm22, 64(%r8)8056; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm23, (%r8)8057; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm25, 64(%r9)8058; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm24, (%r9)8059; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm26, 64(%r10)8060; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm29, (%r10)8061; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm0, 64(%rax)8062; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm10, (%rax)8063; AVX512BW-FCP-NEXT:    vzeroupper8064; AVX512BW-FCP-NEXT:    retq8065;8066; AVX512DQ-BW-LABEL: load_i32_stride7_vf32:8067; AVX512DQ-BW:       # %bb.0:8068; AVX512DQ-BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax8069; AVX512DQ-BW-NEXT:    movq {{[0-9]+}}(%rsp), %r108070; AVX512DQ-BW-NEXT:    vmovdqa64 512(%rdi), %zmm18071; AVX512DQ-BW-NEXT:    vmovdqa64 448(%rdi), %zmm08072; AVX512DQ-BW-NEXT:    vmovdqa64 576(%rdi), %zmm48073; AVX512DQ-BW-NEXT:    vmovdqa64 640(%rdi), %zmm28074; AVX512DQ-BW-NEXT:    vmovdqa64 832(%rdi), %zmm58075; AVX512DQ-BW-NEXT:    vmovdqa64 768(%rdi), %zmm68076; AVX512DQ-BW-NEXT:    vmovdqa64 704(%rdi), %zmm38077; AVX512DQ-BW-NEXT:    vmovdqa64 384(%rdi), %zmm138078; AVX512DQ-BW-NEXT:    vmovdqa64 320(%rdi), %zmm158079; AVX512DQ-BW-NEXT:    vmovdqa64 256(%rdi), %zmm98080; AVX512DQ-BW-NEXT:    vmovdqa64 (%rdi), %zmm108081; AVX512DQ-BW-NEXT:    vmovdqa64 64(%rdi), %zmm118082; AVX512DQ-BW-NEXT:    vmovdqa64 128(%rdi), %zmm148083; AVX512DQ-BW-NEXT:    vmovdqa64 192(%rdi), %zmm128084; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm16 = [8,15,0,0,0,19,26,1,8,15,0,0,0,19,26,1]8085; AVX512DQ-BW-NEXT:    # zmm16 = mem[0,1,2,3,0,1,2,3]8086; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm12, %zmm178087; AVX512DQ-BW-NEXT:    vpermt2d %zmm14, %zmm16, %zmm178088; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [0,7,14,21,28,0,0,0]8089; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm10, %zmm88090; AVX512DQ-BW-NEXT:    vpermt2d %zmm11, %zmm7, %zmm88091; AVX512DQ-BW-NEXT:    movw $992, %di # imm = 0x3E08092; AVX512DQ-BW-NEXT:    kmovd %edi, %k18093; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm17, %zmm8 {%k1}8094; AVX512DQ-BW-NEXT:    vbroadcasti32x4 {{.*#+}} zmm17 = [20,27,6,13,20,27,6,13,20,27,6,13,20,27,6,13]8095; AVX512DQ-BW-NEXT:    # zmm17 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]8096; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm9, %zmm188097; AVX512DQ-BW-NEXT:    vpermt2d %zmm15, %zmm17, %zmm188098; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm19 = [0,0,10,11,12,13,18,25,0,0,10,11,12,13,18,25]8099; AVX512DQ-BW-NEXT:    # zmm19 = mem[0,1,2,3,0,1,2,3]8100; AVX512DQ-BW-NEXT:    vpermt2d %zmm13, %zmm19, %zmm188101; AVX512DQ-BW-NEXT:    movb $-32, %dil8102; AVX512DQ-BW-NEXT:    kmovd %edi, %k28103; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm18, %zmm8 {%k2}8104; AVX512DQ-BW-NEXT:    vpermi2d %zmm6, %zmm3, %zmm178105; AVX512DQ-BW-NEXT:    vpermt2d %zmm5, %zmm19, %zmm178106; AVX512DQ-BW-NEXT:    vpermi2d %zmm4, %zmm2, %zmm168107; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm78108; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm16, %zmm7 {%k1}8109; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm17, %zmm7 {%k2}8110; AVX512DQ-BW-NEXT:    vbroadcasti32x4 {{.*#+}} zmm18 = [25,4,11,18,25,4,11,18,25,4,11,18,25,4,11,18]8111; AVX512DQ-BW-NEXT:    # zmm18 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]8112; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm14, %zmm198113; AVX512DQ-BW-NEXT:    vpermt2d %zmm12, %zmm18, %zmm198114; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} ymm16 = [1,8,15,22,29,0,0,0]8115; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm10, %zmm178116; AVX512DQ-BW-NEXT:    vpermt2d %zmm11, %zmm16, %zmm178117; AVX512DQ-BW-NEXT:    movw $480, %di # imm = 0x1E08118; AVX512DQ-BW-NEXT:    kmovd %edi, %k28119; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm19, %zmm17 {%k2}8120; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm19 = [0,0,7,14,21,28,0,0,0,0,7,14,21,28,0,0]8121; AVX512DQ-BW-NEXT:    # zmm19 = mem[0,1,2,3,0,1,2,3]8122; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm9, %zmm208123; AVX512DQ-BW-NEXT:    vpermt2d %zmm15, %zmm19, %zmm208124; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm21 = [0,9,10,11,12,13,19,26,0,9,10,11,12,13,19,26]8125; AVX512DQ-BW-NEXT:    # zmm21 = mem[0,1,2,3,0,1,2,3]8126; AVX512DQ-BW-NEXT:    vpermt2d %zmm13, %zmm21, %zmm208127; AVX512DQ-BW-NEXT:    movw $-512, %di # imm = 0xFE008128; AVX512DQ-BW-NEXT:    kmovd %edi, %k18129; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm20, %zmm17 {%k1}8130; AVX512DQ-BW-NEXT:    vpermi2d %zmm6, %zmm3, %zmm198131; AVX512DQ-BW-NEXT:    vpermt2d %zmm5, %zmm21, %zmm198132; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm4, %zmm208133; AVX512DQ-BW-NEXT:    vpermt2d %zmm2, %zmm18, %zmm208134; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm168135; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm20, %zmm16 {%k2}8136; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm19, %zmm16 {%k1}8137; AVX512DQ-BW-NEXT:    vbroadcasti32x4 {{.*#+}} zmm21 = [26,5,12,19,26,5,12,19,26,5,12,19,26,5,12,19]8138; AVX512DQ-BW-NEXT:    # zmm21 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]8139; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm14, %zmm228140; AVX512DQ-BW-NEXT:    vpermt2d %zmm12, %zmm21, %zmm228141; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} ymm19 = [18,25,0,7,14,0,0,0]8142; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm11, %zmm208143; AVX512DQ-BW-NEXT:    vpermt2d %zmm10, %zmm19, %zmm208144; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm22, %zmm20 {%k2}8145; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm22 = [0,1,8,15,22,29,0,0,0,1,8,15,22,29,0,0]8146; AVX512DQ-BW-NEXT:    # zmm22 = mem[0,1,2,3,0,1,2,3]8147; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm9, %zmm238148; AVX512DQ-BW-NEXT:    vpermt2d %zmm15, %zmm22, %zmm238149; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm24 = [0,9,10,11,12,13,20,27,0,9,10,11,12,13,20,27]8150; AVX512DQ-BW-NEXT:    # zmm24 = mem[0,1,2,3,0,1,2,3]8151; AVX512DQ-BW-NEXT:    vpermt2d %zmm13, %zmm24, %zmm238152; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm23, %zmm20 {%k1}8153; AVX512DQ-BW-NEXT:    vpermi2d %zmm6, %zmm3, %zmm228154; AVX512DQ-BW-NEXT:    vpermt2d %zmm5, %zmm24, %zmm228155; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm4, %zmm238156; AVX512DQ-BW-NEXT:    vpermt2d %zmm2, %zmm21, %zmm238157; AVX512DQ-BW-NEXT:    vpermi2d %zmm0, %zmm1, %zmm198158; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm23, %zmm19 {%k2}8159; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm22, %zmm19 {%k1}8160; AVX512DQ-BW-NEXT:    vbroadcasti32x4 {{.*#+}} zmm24 = [27,6,13,20,27,6,13,20,27,6,13,20,27,6,13,20]8161; AVX512DQ-BW-NEXT:    # zmm24 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]8162; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm14, %zmm258163; AVX512DQ-BW-NEXT:    vpermt2d %zmm12, %zmm24, %zmm258164; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} ymm22 = [19,26,1,8,15,0,0,0]8165; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm11, %zmm238166; AVX512DQ-BW-NEXT:    vpermt2d %zmm10, %zmm22, %zmm238167; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm25, %zmm23 {%k2}8168; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm25 = [0,18,25,0,7,14,0,0,0,18,25,0,7,14,0,0]8169; AVX512DQ-BW-NEXT:    # zmm25 = mem[0,1,2,3,0,1,2,3]8170; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm15, %zmm268171; AVX512DQ-BW-NEXT:    vpermt2d %zmm9, %zmm25, %zmm268172; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,13,21,28,0,9,10,11,12,13,21,28]8173; AVX512DQ-BW-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]8174; AVX512DQ-BW-NEXT:    vpermt2d %zmm13, %zmm27, %zmm268175; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm26, %zmm23 {%k1}8176; AVX512DQ-BW-NEXT:    vpermi2d %zmm3, %zmm6, %zmm258177; AVX512DQ-BW-NEXT:    vpermt2d %zmm5, %zmm27, %zmm258178; AVX512DQ-BW-NEXT:    vpermi2d %zmm2, %zmm4, %zmm248179; AVX512DQ-BW-NEXT:    vpermi2d %zmm0, %zmm1, %zmm228180; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm24, %zmm22 {%k2}8181; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm25, %zmm22 {%k1}8182; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm26 = [0,19,26,1,8,15,0,0,0,19,26,1,8,15,0,0]8183; AVX512DQ-BW-NEXT:    # zmm26 = mem[0,1,2,3,0,1,2,3]8184; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm15, %zmm258185; AVX512DQ-BW-NEXT:    vpermt2d %zmm9, %zmm26, %zmm258186; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,13,22,29,0,9,10,11,12,13,22,29]8187; AVX512DQ-BW-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]8188; AVX512DQ-BW-NEXT:    vpermt2d %zmm13, %zmm27, %zmm258189; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm28 = [28,0,0,0,0,7,14,21,28,0,0,0,0,7,14,21]8190; AVX512DQ-BW-NEXT:    # zmm28 = mem[0,1,2,3,0,1,2,3]8191; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm14, %zmm248192; AVX512DQ-BW-NEXT:    vpermt2d %zmm12, %zmm28, %zmm248193; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} xmm29 = [4,11,18,25]8194; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm10, %zmm308195; AVX512DQ-BW-NEXT:    vpermt2d %zmm11, %zmm29, %zmm308196; AVX512DQ-BW-NEXT:    vinserti32x4 $0, %xmm30, %zmm24, %zmm248197; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm25, %zmm24 {%k1}8198; AVX512DQ-BW-NEXT:    vpermi2d %zmm3, %zmm6, %zmm268199; AVX512DQ-BW-NEXT:    vpermt2d %zmm5, %zmm27, %zmm268200; AVX512DQ-BW-NEXT:    vpermi2d %zmm2, %zmm4, %zmm288201; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm298202; AVX512DQ-BW-NEXT:    vinserti32x4 $0, %xmm29, %zmm28, %zmm258203; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm26, %zmm25 {%k1}8204; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm9, %zmm268205; AVX512DQ-BW-NEXT:    vpermt2d %zmm15, %zmm18, %zmm268206; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,16,23,30,0,9,10,11,12,16,23,30]8207; AVX512DQ-BW-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]8208; AVX512DQ-BW-NEXT:    vpermt2d %zmm13, %zmm27, %zmm268209; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm28 = [29,0,0,0,1,8,15,22,29,0,0,0,1,8,15,22]8210; AVX512DQ-BW-NEXT:    # zmm28 = mem[0,1,2,3,0,1,2,3]8211; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm14, %zmm298212; AVX512DQ-BW-NEXT:    vpermt2d %zmm12, %zmm28, %zmm298213; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} xmm30 = [5,12,19,26]8214; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm10, %zmm318215; AVX512DQ-BW-NEXT:    vpermt2d %zmm11, %zmm30, %zmm318216; AVX512DQ-BW-NEXT:    vinserti32x4 $0, %xmm31, %zmm29, %zmm298217; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm26, %zmm29 {%k1}8218; AVX512DQ-BW-NEXT:    vpermi2d %zmm6, %zmm3, %zmm188219; AVX512DQ-BW-NEXT:    vpermt2d %zmm5, %zmm27, %zmm188220; AVX512DQ-BW-NEXT:    vpermi2d %zmm2, %zmm4, %zmm288221; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm308222; AVX512DQ-BW-NEXT:    vinserti32x4 $0, %xmm30, %zmm28, %zmm268223; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm18, %zmm26 {%k1}8224; AVX512DQ-BW-NEXT:    vpermt2d %zmm15, %zmm21, %zmm98225; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,17,24,31,0,9,10,11,12,17,24,31]8226; AVX512DQ-BW-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]8227; AVX512DQ-BW-NEXT:    vpermt2d %zmm13, %zmm15, %zmm98228; AVX512DQ-BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm13 = [14,0,0,0,18,25,0,7,14,0,0,0,18,25,0,7]8229; AVX512DQ-BW-NEXT:    # zmm13 = mem[0,1,2,3,0,1,2,3]8230; AVX512DQ-BW-NEXT:    vpermt2d %zmm14, %zmm13, %zmm128231; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} xmm14 = [6,13,20,27]8232; AVX512DQ-BW-NEXT:    vpermt2d %zmm11, %zmm14, %zmm108233; AVX512DQ-BW-NEXT:    vinserti32x4 $0, %xmm10, %zmm12, %zmm108234; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm9, %zmm10 {%k1}8235; AVX512DQ-BW-NEXT:    vpermt2d %zmm6, %zmm21, %zmm38236; AVX512DQ-BW-NEXT:    vpermt2d %zmm5, %zmm15, %zmm38237; AVX512DQ-BW-NEXT:    vpermt2d %zmm4, %zmm13, %zmm28238; AVX512DQ-BW-NEXT:    vpermt2d %zmm1, %zmm14, %zmm08239; AVX512DQ-BW-NEXT:    vinserti32x4 $0, %xmm0, %zmm2, %zmm08240; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm3, %zmm0 {%k1}8241; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm7, 64(%rsi)8242; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm8, (%rsi)8243; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm16, 64(%rdx)8244; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm17, (%rdx)8245; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm19, 64(%rcx)8246; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm20, (%rcx)8247; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm22, 64(%r8)8248; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm23, (%r8)8249; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm25, 64(%r9)8250; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm24, (%r9)8251; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm26, 64(%r10)8252; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm29, (%r10)8253; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm0, 64(%rax)8254; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm10, (%rax)8255; AVX512DQ-BW-NEXT:    vzeroupper8256; AVX512DQ-BW-NEXT:    retq8257;8258; AVX512DQ-BW-FCP-LABEL: load_i32_stride7_vf32:8259; AVX512DQ-BW-FCP:       # %bb.0:8260; AVX512DQ-BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax8261; AVX512DQ-BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r108262; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 512(%rdi), %zmm18263; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 448(%rdi), %zmm08264; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 576(%rdi), %zmm48265; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 640(%rdi), %zmm28266; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 832(%rdi), %zmm58267; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 768(%rdi), %zmm68268; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 704(%rdi), %zmm38269; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 384(%rdi), %zmm138270; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 320(%rdi), %zmm158271; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 256(%rdi), %zmm98272; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 (%rdi), %zmm108273; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm118274; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 128(%rdi), %zmm148275; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 192(%rdi), %zmm128276; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm16 = [8,15,0,0,0,19,26,1,8,15,0,0,0,19,26,1]8277; AVX512DQ-BW-FCP-NEXT:    # zmm16 = mem[0,1,2,3,0,1,2,3]8278; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm12, %zmm178279; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm14, %zmm16, %zmm178280; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [0,7,14,21,28,0,0,0]8281; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm10, %zmm88282; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm11, %zmm7, %zmm88283; AVX512DQ-BW-FCP-NEXT:    movw $992, %di # imm = 0x3E08284; AVX512DQ-BW-FCP-NEXT:    kmovd %edi, %k18285; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm17, %zmm8 {%k1}8286; AVX512DQ-BW-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm17 = [20,27,6,13,20,27,6,13,20,27,6,13,20,27,6,13]8287; AVX512DQ-BW-FCP-NEXT:    # zmm17 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]8288; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm9, %zmm188289; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm15, %zmm17, %zmm188290; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm19 = [0,0,10,11,12,13,18,25,0,0,10,11,12,13,18,25]8291; AVX512DQ-BW-FCP-NEXT:    # zmm19 = mem[0,1,2,3,0,1,2,3]8292; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm13, %zmm19, %zmm188293; AVX512DQ-BW-FCP-NEXT:    movb $-32, %dil8294; AVX512DQ-BW-FCP-NEXT:    kmovd %edi, %k28295; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm18, %zmm8 {%k2}8296; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm6, %zmm3, %zmm178297; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm5, %zmm19, %zmm178298; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm4, %zmm2, %zmm168299; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm78300; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm16, %zmm7 {%k1}8301; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm17, %zmm7 {%k2}8302; AVX512DQ-BW-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm18 = [25,4,11,18,25,4,11,18,25,4,11,18,25,4,11,18]8303; AVX512DQ-BW-FCP-NEXT:    # zmm18 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]8304; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm14, %zmm198305; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm12, %zmm18, %zmm198306; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm16 = [1,8,15,22,29,0,0,0]8307; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm10, %zmm178308; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm11, %zmm16, %zmm178309; AVX512DQ-BW-FCP-NEXT:    movw $480, %di # imm = 0x1E08310; AVX512DQ-BW-FCP-NEXT:    kmovd %edi, %k28311; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm19, %zmm17 {%k2}8312; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm19 = [0,0,7,14,21,28,0,0,0,0,7,14,21,28,0,0]8313; AVX512DQ-BW-FCP-NEXT:    # zmm19 = mem[0,1,2,3,0,1,2,3]8314; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm9, %zmm208315; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm15, %zmm19, %zmm208316; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm21 = [0,9,10,11,12,13,19,26,0,9,10,11,12,13,19,26]8317; AVX512DQ-BW-FCP-NEXT:    # zmm21 = mem[0,1,2,3,0,1,2,3]8318; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm13, %zmm21, %zmm208319; AVX512DQ-BW-FCP-NEXT:    movw $-512, %di # imm = 0xFE008320; AVX512DQ-BW-FCP-NEXT:    kmovd %edi, %k18321; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm20, %zmm17 {%k1}8322; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm6, %zmm3, %zmm198323; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm5, %zmm21, %zmm198324; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm4, %zmm208325; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm2, %zmm18, %zmm208326; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm168327; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm20, %zmm16 {%k2}8328; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm19, %zmm16 {%k1}8329; AVX512DQ-BW-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm21 = [26,5,12,19,26,5,12,19,26,5,12,19,26,5,12,19]8330; AVX512DQ-BW-FCP-NEXT:    # zmm21 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]8331; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm14, %zmm228332; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm12, %zmm21, %zmm228333; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm19 = [18,25,0,7,14,0,0,0]8334; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm11, %zmm208335; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm10, %zmm19, %zmm208336; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm22, %zmm20 {%k2}8337; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm22 = [0,1,8,15,22,29,0,0,0,1,8,15,22,29,0,0]8338; AVX512DQ-BW-FCP-NEXT:    # zmm22 = mem[0,1,2,3,0,1,2,3]8339; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm9, %zmm238340; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm15, %zmm22, %zmm238341; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm24 = [0,9,10,11,12,13,20,27,0,9,10,11,12,13,20,27]8342; AVX512DQ-BW-FCP-NEXT:    # zmm24 = mem[0,1,2,3,0,1,2,3]8343; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm13, %zmm24, %zmm238344; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm23, %zmm20 {%k1}8345; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm6, %zmm3, %zmm228346; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm5, %zmm24, %zmm228347; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm4, %zmm238348; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm2, %zmm21, %zmm238349; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm198350; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm23, %zmm19 {%k2}8351; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm22, %zmm19 {%k1}8352; AVX512DQ-BW-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm24 = [27,6,13,20,27,6,13,20,27,6,13,20,27,6,13,20]8353; AVX512DQ-BW-FCP-NEXT:    # zmm24 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]8354; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm14, %zmm258355; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm12, %zmm24, %zmm258356; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm22 = [19,26,1,8,15,0,0,0]8357; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm11, %zmm238358; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm10, %zmm22, %zmm238359; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm25, %zmm23 {%k2}8360; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm25 = [0,18,25,0,7,14,0,0,0,18,25,0,7,14,0,0]8361; AVX512DQ-BW-FCP-NEXT:    # zmm25 = mem[0,1,2,3,0,1,2,3]8362; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm15, %zmm268363; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm9, %zmm25, %zmm268364; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,13,21,28,0,9,10,11,12,13,21,28]8365; AVX512DQ-BW-FCP-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]8366; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm13, %zmm27, %zmm268367; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm26, %zmm23 {%k1}8368; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm3, %zmm6, %zmm258369; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm5, %zmm27, %zmm258370; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm2, %zmm4, %zmm248371; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm228372; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm24, %zmm22 {%k2}8373; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm25, %zmm22 {%k1}8374; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm26 = [0,19,26,1,8,15,0,0,0,19,26,1,8,15,0,0]8375; AVX512DQ-BW-FCP-NEXT:    # zmm26 = mem[0,1,2,3,0,1,2,3]8376; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm15, %zmm258377; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm9, %zmm26, %zmm258378; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,13,22,29,0,9,10,11,12,13,22,29]8379; AVX512DQ-BW-FCP-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]8380; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm13, %zmm27, %zmm258381; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm28 = [28,0,0,0,0,7,14,21,28,0,0,0,0,7,14,21]8382; AVX512DQ-BW-FCP-NEXT:    # zmm28 = mem[0,1,2,3,0,1,2,3]8383; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm14, %zmm248384; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm12, %zmm28, %zmm248385; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm29 = [4,11,18,25]8386; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm10, %zmm308387; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm11, %zmm29, %zmm308388; AVX512DQ-BW-FCP-NEXT:    vinserti32x4 $0, %xmm30, %zmm24, %zmm248389; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm25, %zmm24 {%k1}8390; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm3, %zmm6, %zmm268391; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm5, %zmm27, %zmm268392; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm2, %zmm4, %zmm288393; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm298394; AVX512DQ-BW-FCP-NEXT:    vinserti32x4 $0, %xmm29, %zmm28, %zmm258395; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm26, %zmm25 {%k1}8396; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm9, %zmm268397; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm15, %zmm18, %zmm268398; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm27 = [0,9,10,11,12,16,23,30,0,9,10,11,12,16,23,30]8399; AVX512DQ-BW-FCP-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3]8400; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm13, %zmm27, %zmm268401; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm28 = [29,0,0,0,1,8,15,22,29,0,0,0,1,8,15,22]8402; AVX512DQ-BW-FCP-NEXT:    # zmm28 = mem[0,1,2,3,0,1,2,3]8403; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm14, %zmm298404; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm12, %zmm28, %zmm298405; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm30 = [5,12,19,26]8406; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm10, %zmm318407; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm11, %zmm30, %zmm318408; AVX512DQ-BW-FCP-NEXT:    vinserti32x4 $0, %xmm31, %zmm29, %zmm298409; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm26, %zmm29 {%k1}8410; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm6, %zmm3, %zmm188411; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm5, %zmm27, %zmm188412; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm2, %zmm4, %zmm288413; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm308414; AVX512DQ-BW-FCP-NEXT:    vinserti32x4 $0, %xmm30, %zmm28, %zmm268415; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm18, %zmm26 {%k1}8416; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm15, %zmm21, %zmm98417; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm15 = [0,9,10,11,12,17,24,31,0,9,10,11,12,17,24,31]8418; AVX512DQ-BW-FCP-NEXT:    # zmm15 = mem[0,1,2,3,0,1,2,3]8419; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm13, %zmm15, %zmm98420; AVX512DQ-BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm13 = [14,0,0,0,18,25,0,7,14,0,0,0,18,25,0,7]8421; AVX512DQ-BW-FCP-NEXT:    # zmm13 = mem[0,1,2,3,0,1,2,3]8422; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm14, %zmm13, %zmm128423; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm14 = [6,13,20,27]8424; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm11, %zmm14, %zmm108425; AVX512DQ-BW-FCP-NEXT:    vinserti32x4 $0, %xmm10, %zmm12, %zmm108426; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm9, %zmm10 {%k1}8427; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm6, %zmm21, %zmm38428; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm5, %zmm15, %zmm38429; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm4, %zmm13, %zmm28430; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm1, %zmm14, %zmm08431; AVX512DQ-BW-FCP-NEXT:    vinserti32x4 $0, %xmm0, %zmm2, %zmm08432; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm3, %zmm0 {%k1}8433; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm7, 64(%rsi)8434; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm8, (%rsi)8435; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm16, 64(%rdx)8436; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm17, (%rdx)8437; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm19, 64(%rcx)8438; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm20, (%rcx)8439; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm22, 64(%r8)8440; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm23, (%r8)8441; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm25, 64(%r9)8442; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm24, (%r9)8443; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm26, 64(%r10)8444; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm29, (%r10)8445; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm0, 64(%rax)8446; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm10, (%rax)8447; AVX512DQ-BW-FCP-NEXT:    vzeroupper8448; AVX512DQ-BW-FCP-NEXT:    retq8449  %wide.vec = load <224 x i32>, ptr %in.vec, align 648450  %strided.vec0 = shufflevector <224 x i32> %wide.vec, <224 x i32> poison, <32 x i32> <i32 0, i32 7, i32 14, i32 21, i32 28, i32 35, i32 42, i32 49, i32 56, i32 63, i32 70, i32 77, i32 84, i32 91, i32 98, i32 105, i32 112, i32 119, i32 126, i32 133, i32 140, i32 147, i32 154, i32 161, i32 168, i32 175, i32 182, i32 189, i32 196, i32 203, i32 210, i32 217>8451  %strided.vec1 = shufflevector <224 x i32> %wide.vec, <224 x i32> poison, <32 x i32> <i32 1, i32 8, i32 15, i32 22, i32 29, i32 36, i32 43, i32 50, i32 57, i32 64, i32 71, i32 78, i32 85, i32 92, i32 99, i32 106, i32 113, i32 120, i32 127, i32 134, i32 141, i32 148, i32 155, i32 162, i32 169, i32 176, i32 183, i32 190, i32 197, i32 204, i32 211, i32 218>8452  %strided.vec2 = shufflevector <224 x i32> %wide.vec, <224 x i32> poison, <32 x i32> <i32 2, i32 9, i32 16, i32 23, i32 30, i32 37, i32 44, i32 51, i32 58, i32 65, i32 72, i32 79, i32 86, i32 93, i32 100, i32 107, i32 114, i32 121, i32 128, i32 135, i32 142, i32 149, i32 156, i32 163, i32 170, i32 177, i32 184, i32 191, i32 198, i32 205, i32 212, i32 219>8453  %strided.vec3 = shufflevector <224 x i32> %wide.vec, <224 x i32> poison, <32 x i32> <i32 3, i32 10, i32 17, i32 24, i32 31, i32 38, i32 45, i32 52, i32 59, i32 66, i32 73, i32 80, i32 87, i32 94, i32 101, i32 108, i32 115, i32 122, i32 129, i32 136, i32 143, i32 150, i32 157, i32 164, i32 171, i32 178, i32 185, i32 192, i32 199, i32 206, i32 213, i32 220>8454  %strided.vec4 = shufflevector <224 x i32> %wide.vec, <224 x i32> poison, <32 x i32> <i32 4, i32 11, i32 18, i32 25, i32 32, i32 39, i32 46, i32 53, i32 60, i32 67, i32 74, i32 81, i32 88, i32 95, i32 102, i32 109, i32 116, i32 123, i32 130, i32 137, i32 144, i32 151, i32 158, i32 165, i32 172, i32 179, i32 186, i32 193, i32 200, i32 207, i32 214, i32 221>8455  %strided.vec5 = shufflevector <224 x i32> %wide.vec, <224 x i32> poison, <32 x i32> <i32 5, i32 12, i32 19, i32 26, i32 33, i32 40, i32 47, i32 54, i32 61, i32 68, i32 75, i32 82, i32 89, i32 96, i32 103, i32 110, i32 117, i32 124, i32 131, i32 138, i32 145, i32 152, i32 159, i32 166, i32 173, i32 180, i32 187, i32 194, i32 201, i32 208, i32 215, i32 222>8456  %strided.vec6 = shufflevector <224 x i32> %wide.vec, <224 x i32> poison, <32 x i32> <i32 6, i32 13, i32 20, i32 27, i32 34, i32 41, i32 48, i32 55, i32 62, i32 69, i32 76, i32 83, i32 90, i32 97, i32 104, i32 111, i32 118, i32 125, i32 132, i32 139, i32 146, i32 153, i32 160, i32 167, i32 174, i32 181, i32 188, i32 195, i32 202, i32 209, i32 216, i32 223>8457  store <32 x i32> %strided.vec0, ptr %out.vec0, align 648458  store <32 x i32> %strided.vec1, ptr %out.vec1, align 648459  store <32 x i32> %strided.vec2, ptr %out.vec2, align 648460  store <32 x i32> %strided.vec3, ptr %out.vec3, align 648461  store <32 x i32> %strided.vec4, ptr %out.vec4, align 648462  store <32 x i32> %strided.vec5, ptr %out.vec5, align 648463  store <32 x i32> %strided.vec6, ptr %out.vec6, align 648464  ret void8465}8466 8467define void @load_i32_stride7_vf64(ptr %in.vec, ptr %out.vec0, ptr %out.vec1, ptr %out.vec2, ptr %out.vec3, ptr %out.vec4, ptr %out.vec5, ptr %out.vec6) nounwind {8468; SSE-LABEL: load_i32_stride7_vf64:8469; SSE:       # %bb.0:8470; SSE-NEXT:    subq $2456, %rsp # imm = 0x9988471; SSE-NEXT:    movdqa 1088(%rdi), %xmm38472; SSE-NEXT:    movdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8473; SSE-NEXT:    movdqa 1056(%rdi), %xmm48474; SSE-NEXT:    movdqa %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8475; SSE-NEXT:    movdqa 1008(%rdi), %xmm98476; SSE-NEXT:    movdqa %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8477; SSE-NEXT:    movdqa 1024(%rdi), %xmm58478; SSE-NEXT:    movdqa %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8479; SSE-NEXT:    movdqa 640(%rdi), %xmm138480; SSE-NEXT:    movdqa 608(%rdi), %xmm68481; SSE-NEXT:    movdqa %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8482; SSE-NEXT:    movdqa 560(%rdi), %xmm108483; SSE-NEXT:    movdqa %xmm10, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8484; SSE-NEXT:    movdqa 576(%rdi), %xmm78485; SSE-NEXT:    movdqa %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8486; SSE-NEXT:    movdqa 192(%rdi), %xmm28487; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8488; SSE-NEXT:    movdqa 160(%rdi), %xmm158489; SSE-NEXT:    movdqa 112(%rdi), %xmm18490; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8491; SSE-NEXT:    movdqa 128(%rdi), %xmm08492; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8493; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[3,3,3,3]8494; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8495; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm15[2,2,3,3]8496; SSE-NEXT:    movdqa %xmm15, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8497; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1]8498; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]8499; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8500; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm7[3,3,3,3]8501; SSE-NEXT:    movdqa %xmm10, %xmm18502; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8503; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm6[2,2,3,3]8504; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm13[0],xmm0[1],xmm13[1]8505; SSE-NEXT:    movdqa %xmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8506; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]8507; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8508; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm5[3,3,3,3]8509; SSE-NEXT:    movdqa %xmm9, %xmm18510; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8511; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm4[2,2,3,3]8512; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm3[0],xmm0[1],xmm3[1]8513; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]8514; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8515; SSE-NEXT:    movdqa 1456(%rdi), %xmm18516; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8517; SSE-NEXT:    movdqa 1472(%rdi), %xmm08518; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8519; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[3,3,3,3]8520; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8521; SSE-NEXT:    movdqa 1536(%rdi), %xmm28522; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8523; SSE-NEXT:    movdqa 1504(%rdi), %xmm08524; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8525; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[2,2,3,3]8526; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1]8527; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]8528; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8529; SSE-NEXT:    movdqa (%rdi), %xmm18530; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8531; SSE-NEXT:    movdqa 16(%rdi), %xmm08532; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8533; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[3,3,3,3]8534; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8535; SSE-NEXT:    movdqa 80(%rdi), %xmm28536; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8537; SSE-NEXT:    movdqa 48(%rdi), %xmm08538; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8539; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[2,2,3,3]8540; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1]8541; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]8542; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8543; SSE-NEXT:    movdqa 448(%rdi), %xmm18544; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8545; SSE-NEXT:    movdqa 464(%rdi), %xmm08546; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8547; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[3,3,3,3]8548; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8549; SSE-NEXT:    movdqa 528(%rdi), %xmm28550; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8551; SSE-NEXT:    movdqa 496(%rdi), %xmm08552; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8553; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[2,2,3,3]8554; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1]8555; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]8556; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8557; SSE-NEXT:    movdqa 896(%rdi), %xmm18558; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8559; SSE-NEXT:    movdqa 912(%rdi), %xmm08560; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8561; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[3,3,3,3]8562; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8563; SSE-NEXT:    movdqa 976(%rdi), %xmm28564; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8565; SSE-NEXT:    movdqa 944(%rdi), %xmm08566; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8567; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[2,2,3,3]8568; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1]8569; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]8570; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8571; SSE-NEXT:    movdqa 1344(%rdi), %xmm18572; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8573; SSE-NEXT:    movdqa 1360(%rdi), %xmm08574; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8575; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[3,3,3,3]8576; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8577; SSE-NEXT:    movdqa 1424(%rdi), %xmm28578; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8579; SSE-NEXT:    movdqa 1392(%rdi), %xmm08580; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8581; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[2,2,3,3]8582; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1]8583; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]8584; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8585; SSE-NEXT:    movdqa 336(%rdi), %xmm128586; SSE-NEXT:    movdqa 352(%rdi), %xmm08587; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8588; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[3,3,3,3]8589; SSE-NEXT:    movdqa %xmm12, %xmm58590; SSE-NEXT:    movdqa %xmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8591; SSE-NEXT:    punpckldq {{.*#+}} xmm5 = xmm5[0],xmm0[0],xmm5[1],xmm0[1]8592; SSE-NEXT:    movdqa 416(%rdi), %xmm48593; SSE-NEXT:    movdqa 384(%rdi), %xmm108594; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm10[2,2,3,3]8595; SSE-NEXT:    movdqa %xmm10, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8596; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm4[0],xmm0[1],xmm4[1]8597; SSE-NEXT:    movdqa %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8598; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm5[0],xmm0[1]8599; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8600; SSE-NEXT:    movdqa 784(%rdi), %xmm68601; SSE-NEXT:    movdqa %xmm6, (%rsp) # 16-byte Spill8602; SSE-NEXT:    movdqa 800(%rdi), %xmm08603; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8604; SSE-NEXT:    pshufd {{.*#+}} xmm5 = xmm0[3,3,3,3]8605; SSE-NEXT:    punpckldq {{.*#+}} xmm6 = xmm6[0],xmm5[0],xmm6[1],xmm5[1]8606; SSE-NEXT:    movdqa 864(%rdi), %xmm08607; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8608; SSE-NEXT:    movdqa 832(%rdi), %xmm18609; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8610; SSE-NEXT:    pshufd {{.*#+}} xmm5 = xmm1[2,2,3,3]8611; SSE-NEXT:    punpckldq {{.*#+}} xmm5 = xmm5[0],xmm0[0],xmm5[1],xmm0[1]8612; SSE-NEXT:    movsd {{.*#+}} xmm5 = xmm6[0],xmm5[1]8613; SSE-NEXT:    movapd %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8614; SSE-NEXT:    movdqa 1232(%rdi), %xmm68615; SSE-NEXT:    movdqa %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8616; SSE-NEXT:    movdqa 1248(%rdi), %xmm08617; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8618; SSE-NEXT:    pshufd {{.*#+}} xmm5 = xmm0[3,3,3,3]8619; SSE-NEXT:    punpckldq {{.*#+}} xmm6 = xmm6[0],xmm5[0],xmm6[1],xmm5[1]8620; SSE-NEXT:    movdqa 1312(%rdi), %xmm08621; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8622; SSE-NEXT:    movdqa 1280(%rdi), %xmm18623; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8624; SSE-NEXT:    pshufd {{.*#+}} xmm5 = xmm1[2,2,3,3]8625; SSE-NEXT:    punpckldq {{.*#+}} xmm5 = xmm5[0],xmm0[0],xmm5[1],xmm0[1]8626; SSE-NEXT:    movsd {{.*#+}} xmm5 = xmm6[0],xmm5[1]8627; SSE-NEXT:    movapd %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8628; SSE-NEXT:    movdqa 1680(%rdi), %xmm68629; SSE-NEXT:    movdqa %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8630; SSE-NEXT:    movdqa 1696(%rdi), %xmm08631; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8632; SSE-NEXT:    pshufd {{.*#+}} xmm5 = xmm0[3,3,3,3]8633; SSE-NEXT:    punpckldq {{.*#+}} xmm6 = xmm6[0],xmm5[0],xmm6[1],xmm5[1]8634; SSE-NEXT:    movdqa 1760(%rdi), %xmm18635; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8636; SSE-NEXT:    movdqa 1728(%rdi), %xmm08637; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8638; SSE-NEXT:    pshufd {{.*#+}} xmm5 = xmm0[2,2,3,3]8639; SSE-NEXT:    punpckldq {{.*#+}} xmm5 = xmm5[0],xmm1[0],xmm5[1],xmm1[1]8640; SSE-NEXT:    movsd {{.*#+}} xmm5 = xmm6[0],xmm5[1]8641; SSE-NEXT:    movapd %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8642; SSE-NEXT:    movdqa 224(%rdi), %xmm88643; SSE-NEXT:    movdqa 240(%rdi), %xmm08644; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8645; SSE-NEXT:    pshufd {{.*#+}} xmm5 = xmm0[3,3,3,3]8646; SSE-NEXT:    movdqa %xmm8, %xmm68647; SSE-NEXT:    movdqa %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8648; SSE-NEXT:    punpckldq {{.*#+}} xmm6 = xmm6[0],xmm5[0],xmm6[1],xmm5[1]8649; SSE-NEXT:    movdqa 304(%rdi), %xmm28650; SSE-NEXT:    movdqa 272(%rdi), %xmm38651; SSE-NEXT:    pshufd {{.*#+}} xmm5 = xmm3[2,2,3,3]8652; SSE-NEXT:    movdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8653; SSE-NEXT:    punpckldq {{.*#+}} xmm5 = xmm5[0],xmm2[0],xmm5[1],xmm2[1]8654; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8655; SSE-NEXT:    movsd {{.*#+}} xmm5 = xmm6[0],xmm5[1]8656; SSE-NEXT:    movapd %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8657; SSE-NEXT:    movdqa 672(%rdi), %xmm118658; SSE-NEXT:    movdqa 688(%rdi), %xmm08659; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8660; SSE-NEXT:    pshufd {{.*#+}} xmm5 = xmm0[3,3,3,3]8661; SSE-NEXT:    movdqa %xmm11, %xmm78662; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm5[0],xmm7[1],xmm5[1]8663; SSE-NEXT:    movdqa 752(%rdi), %xmm148664; SSE-NEXT:    movdqa 720(%rdi), %xmm18665; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm1[2,2,3,3]8666; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8667; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm14[0],xmm0[1],xmm14[1]8668; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm7[0],xmm0[1]8669; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8670; SSE-NEXT:    movdqa 1120(%rdi), %xmm98671; SSE-NEXT:    movdqa %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8672; SSE-NEXT:    movdqa 1136(%rdi), %xmm08673; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8674; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm0[3,3,3,3]8675; SSE-NEXT:    punpckldq {{.*#+}} xmm9 = xmm9[0],xmm7[0],xmm9[1],xmm7[1]8676; SSE-NEXT:    movdqa 1200(%rdi), %xmm58677; SSE-NEXT:    movdqa %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8678; SSE-NEXT:    movdqa 1168(%rdi), %xmm68679; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm6[2,2,3,3]8680; SSE-NEXT:    movdqa %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8681; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm5[0],xmm0[1],xmm5[1]8682; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm9[0],xmm0[1]8683; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8684; SSE-NEXT:    movdqa 1568(%rdi), %xmm98685; SSE-NEXT:    movdqa %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8686; SSE-NEXT:    movdqa 1584(%rdi), %xmm08687; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8688; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm0[3,3,3,3]8689; SSE-NEXT:    punpckldq {{.*#+}} xmm9 = xmm9[0],xmm7[0],xmm9[1],xmm7[1]8690; SSE-NEXT:    movdqa 1648(%rdi), %xmm58691; SSE-NEXT:    movdqa %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8692; SSE-NEXT:    movdqa 1616(%rdi), %xmm08693; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8694; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[2,2,3,3]8695; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm5[0],xmm0[1],xmm5[1]8696; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm9[0],xmm0[1]8697; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8698; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload8699; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm0[2,2,2,2]8700; SSE-NEXT:    punpckhdq {{.*#+}} xmm15 = xmm15[2],xmm7[2],xmm15[3],xmm7[3]8701; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload8702; SSE-NEXT:    # xmm7 = mem[1,1,1,1]8703; SSE-NEXT:    movdqa 144(%rdi), %xmm08704; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8705; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm0[0],xmm7[1],xmm0[1]8706; SSE-NEXT:    movsd {{.*#+}} xmm15 = xmm7[0],xmm15[1]8707; SSE-NEXT:    movapd %xmm15, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8708; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Reload8709; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm15[2,2,2,2]8710; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload8711; SSE-NEXT:    punpckhdq {{.*#+}} xmm9 = xmm9[2],xmm7[2],xmm9[3],xmm7[3]8712; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload8713; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm0[1,1,1,1]8714; SSE-NEXT:    movdqa 32(%rdi), %xmm58715; SSE-NEXT:    movdqa %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8716; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm5[0],xmm7[1],xmm5[1]8717; SSE-NEXT:    movsd {{.*#+}} xmm9 = xmm7[0],xmm9[1]8718; SSE-NEXT:    movapd %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8719; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm4[2,2,2,2]8720; SSE-NEXT:    punpckhdq {{.*#+}} xmm10 = xmm10[2],xmm7[2],xmm10[3],xmm7[3]8721; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm12[1,1,1,1]8722; SSE-NEXT:    movdqa 368(%rdi), %xmm48723; SSE-NEXT:    movdqa %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8724; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm4[0],xmm7[1],xmm4[1]8725; SSE-NEXT:    movsd {{.*#+}} xmm10 = xmm7[0],xmm10[1]8726; SSE-NEXT:    movapd %xmm10, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8727; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm2[2,2,2,2]8728; SSE-NEXT:    punpckhdq {{.*#+}} xmm3 = xmm3[2],xmm7[2],xmm3[3],xmm7[3]8729; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm8[1,1,1,1]8730; SSE-NEXT:    movdqa 256(%rdi), %xmm28731; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8732; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm2[0],xmm7[1],xmm2[1]8733; SSE-NEXT:    movsd {{.*#+}} xmm3 = xmm7[0],xmm3[1]8734; SSE-NEXT:    movapd %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8735; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm13[2,2,2,2]8736; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload8737; SSE-NEXT:    punpckhdq {{.*#+}} xmm4 = xmm4[2],xmm7[2],xmm4[3],xmm7[3]8738; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload8739; SSE-NEXT:    # xmm7 = mem[1,1,1,1]8740; SSE-NEXT:    movdqa 592(%rdi), %xmm28741; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8742; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm2[0],xmm7[1],xmm2[1]8743; SSE-NEXT:    movsd {{.*#+}} xmm4 = xmm7[0],xmm4[1]8744; SSE-NEXT:    movapd %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8745; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload8746; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm4[2,2,2,2]8747; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload8748; SSE-NEXT:    punpckhdq {{.*#+}} xmm2 = xmm2[2],xmm7[2],xmm2[3],xmm7[3]8749; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload8750; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm3[1,1,1,1]8751; SSE-NEXT:    movdqa 480(%rdi), %xmm58752; SSE-NEXT:    movdqa %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8753; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm5[0],xmm7[1],xmm5[1]8754; SSE-NEXT:    movsd {{.*#+}} xmm2 = xmm7[0],xmm2[1]8755; SSE-NEXT:    movapd %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8756; SSE-NEXT:    pshufd $170, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload8757; SSE-NEXT:    # xmm7 = mem[2,2,2,2]8758; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload8759; SSE-NEXT:    punpckhdq {{.*#+}} xmm2 = xmm2[2],xmm7[2],xmm2[3],xmm7[3]8760; SSE-NEXT:    movdqa (%rsp), %xmm13 # 16-byte Reload8761; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm13[1,1,1,1]8762; SSE-NEXT:    movdqa 816(%rdi), %xmm58763; SSE-NEXT:    movdqa %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8764; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm5[0],xmm7[1],xmm5[1]8765; SSE-NEXT:    movsd {{.*#+}} xmm2 = xmm7[0],xmm2[1]8766; SSE-NEXT:    movapd %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8767; SSE-NEXT:    movdqa %xmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8768; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm14[2,2,2,2]8769; SSE-NEXT:    movdqa %xmm1, %xmm28770; SSE-NEXT:    punpckhdq {{.*#+}} xmm2 = xmm2[2],xmm7[2],xmm2[3],xmm7[3]8771; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm11[1,1,1,1]8772; SSE-NEXT:    movdqa %xmm11, %xmm128773; SSE-NEXT:    movdqa 704(%rdi), %xmm18774; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8775; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm1[0],xmm7[1],xmm1[1]8776; SSE-NEXT:    movsd {{.*#+}} xmm2 = xmm7[0],xmm2[1]8777; SSE-NEXT:    movapd %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8778; SSE-NEXT:    pshufd $170, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload8779; SSE-NEXT:    # xmm7 = mem[2,2,2,2]8780; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload8781; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm7[2],xmm1[3],xmm7[3]8782; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload8783; SSE-NEXT:    # xmm7 = mem[1,1,1,1]8784; SSE-NEXT:    movdqa 1040(%rdi), %xmm28785; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8786; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm2[0],xmm7[1],xmm2[1]8787; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm7[0],xmm1[1]8788; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8789; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload8790; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm5[2,2,2,2]8791; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload8792; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm7[2],xmm1[3],xmm7[3]8793; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload8794; SSE-NEXT:    # xmm7 = mem[1,1,1,1]8795; SSE-NEXT:    movdqa 928(%rdi), %xmm28796; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8797; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm2[0],xmm7[1],xmm2[1]8798; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm7[0],xmm1[1]8799; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8800; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload8801; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm1[2,2,2,2]8802; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload8803; SSE-NEXT:    punpckhdq {{.*#+}} xmm2 = xmm2[2],xmm7[2],xmm2[3],xmm7[3]8804; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload8805; SSE-NEXT:    # xmm7 = mem[1,1,1,1]8806; SSE-NEXT:    movdqa 1264(%rdi), %xmm18807; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8808; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm1[0],xmm7[1],xmm1[1]8809; SSE-NEXT:    movsd {{.*#+}} xmm2 = xmm7[0],xmm2[1]8810; SSE-NEXT:    movapd %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8811; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload8812; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm8[2,2,2,2]8813; SSE-NEXT:    movdqa %xmm6, %xmm28814; SSE-NEXT:    punpckhdq {{.*#+}} xmm2 = xmm2[2],xmm7[2],xmm2[3],xmm7[3]8815; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload8816; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm1[1,1,1,1]8817; SSE-NEXT:    movdqa 1152(%rdi), %xmm68818; SSE-NEXT:    movdqa %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8819; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm6[0],xmm7[1],xmm6[1]8820; SSE-NEXT:    movsd {{.*#+}} xmm2 = xmm7[0],xmm2[1]8821; SSE-NEXT:    movapd %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8822; SSE-NEXT:    pshufd $170, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload8823; SSE-NEXT:    # xmm7 = mem[2,2,2,2]8824; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload8825; SSE-NEXT:    punpckhdq {{.*#+}} xmm2 = xmm2[2],xmm7[2],xmm2[3],xmm7[3]8826; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload8827; SSE-NEXT:    # xmm7 = mem[1,1,1,1]8828; SSE-NEXT:    movdqa 1488(%rdi), %xmm68829; SSE-NEXT:    movdqa %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8830; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm6[0],xmm7[1],xmm6[1]8831; SSE-NEXT:    movsd {{.*#+}} xmm2 = xmm7[0],xmm2[1]8832; SSE-NEXT:    movapd %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8833; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload8834; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm10[2,2,2,2]8835; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload8836; SSE-NEXT:    punpckhdq {{.*#+}} xmm2 = xmm2[2],xmm7[2],xmm2[3],xmm7[3]8837; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload8838; SSE-NEXT:    # xmm7 = mem[1,1,1,1]8839; SSE-NEXT:    movdqa 1376(%rdi), %xmm68840; SSE-NEXT:    movdqa %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8841; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm6[0],xmm7[1],xmm6[1]8842; SSE-NEXT:    movsd {{.*#+}} xmm2 = xmm7[0],xmm2[1]8843; SSE-NEXT:    movapd %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8844; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm11 # 16-byte Reload8845; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm11[2,2,2,2]8846; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload8847; SSE-NEXT:    punpckhdq {{.*#+}} xmm2 = xmm2[2],xmm7[2],xmm2[3],xmm7[3]8848; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload8849; SSE-NEXT:    # xmm7 = mem[1,1,1,1]8850; SSE-NEXT:    movdqa 1712(%rdi), %xmm68851; SSE-NEXT:    movdqa %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8852; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm6[0],xmm7[1],xmm6[1]8853; SSE-NEXT:    movsd {{.*#+}} xmm2 = xmm7[0],xmm2[1]8854; SSE-NEXT:    movapd %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8855; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload8856; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm6[2,2,2,2]8857; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload8858; SSE-NEXT:    punpckhdq {{.*#+}} xmm2 = xmm2[2],xmm7[2],xmm2[3],xmm7[3]8859; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload8860; SSE-NEXT:    # xmm7 = mem[1,1,1,1]8861; SSE-NEXT:    movdqa 1600(%rdi), %xmm98862; SSE-NEXT:    movdqa %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8863; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm9[0],xmm7[1],xmm9[1]8864; SSE-NEXT:    movsd {{.*#+}} xmm2 = xmm7[0],xmm2[1]8865; SSE-NEXT:    movapd %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8866; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm0[2,3,2,3]8867; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload8868; SSE-NEXT:    # xmm9 = mem[1,1,1,1]8869; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm9[0],xmm7[1],xmm9[1]8870; SSE-NEXT:    movdqa 64(%rdi), %xmm08871; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8872; SSE-NEXT:    pshufd {{.*#+}} xmm9 = xmm15[2,3,2,3]8873; SSE-NEXT:    pshufd {{.*#+}} xmm2 = xmm0[0,0,1,1]8874; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm9[0],xmm2[1],xmm9[1]8875; SSE-NEXT:    movsd {{.*#+}} xmm2 = xmm7[0],xmm2[1]8876; SSE-NEXT:    movapd %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8877; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload8878; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm2[2,3,2,3]8879; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload8880; SSE-NEXT:    # xmm9 = mem[1,1,1,1]8881; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm9[0],xmm7[1],xmm9[1]8882; SSE-NEXT:    movdqa 176(%rdi), %xmm08883; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8884; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload8885; SSE-NEXT:    # xmm9 = mem[2,3,2,3]8886; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]8887; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm9[0],xmm0[1],xmm9[1]8888; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm7[0],xmm0[1]8889; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8890; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload8891; SSE-NEXT:    # xmm7 = mem[2,3,2,3]8892; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload8893; SSE-NEXT:    # xmm9 = mem[1,1,1,1]8894; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm9[0],xmm7[1],xmm9[1]8895; SSE-NEXT:    movdqa 288(%rdi), %xmm08896; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8897; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload8898; SSE-NEXT:    # xmm9 = mem[2,3,2,3]8899; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]8900; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm9[0],xmm0[1],xmm9[1]8901; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm7[0],xmm0[1]8902; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8903; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload8904; SSE-NEXT:    # xmm7 = mem[2,3,2,3]8905; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload8906; SSE-NEXT:    # xmm9 = mem[1,1,1,1]8907; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm9[0],xmm7[1],xmm9[1]8908; SSE-NEXT:    movdqa 400(%rdi), %xmm08909; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8910; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload8911; SSE-NEXT:    # xmm9 = mem[2,3,2,3]8912; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]8913; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm9[0],xmm0[1],xmm9[1]8914; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm7[0],xmm0[1]8915; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8916; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm3[2,3,2,3]8917; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload8918; SSE-NEXT:    # xmm9 = mem[1,1,1,1]8919; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm9[0],xmm7[1],xmm9[1]8920; SSE-NEXT:    movdqa 512(%rdi), %xmm08921; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8922; SSE-NEXT:    pshufd {{.*#+}} xmm9 = xmm4[2,3,2,3]8923; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]8924; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm9[0],xmm0[1],xmm9[1]8925; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm7[0],xmm0[1]8926; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8927; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload8928; SSE-NEXT:    # xmm7 = mem[2,3,2,3]8929; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload8930; SSE-NEXT:    # xmm9 = mem[1,1,1,1]8931; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm9[0],xmm7[1],xmm9[1]8932; SSE-NEXT:    movdqa 624(%rdi), %xmm08933; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8934; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload8935; SSE-NEXT:    # xmm9 = mem[2,3,2,3]8936; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]8937; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm9[0],xmm0[1],xmm9[1]8938; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm7[0],xmm0[1]8939; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8940; SSE-NEXT:    movdqa %xmm12, %xmm158941; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm12[2,3,2,3]8942; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload8943; SSE-NEXT:    # xmm9 = mem[1,1,1,1]8944; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm9[0],xmm7[1],xmm9[1]8945; SSE-NEXT:    movdqa 736(%rdi), %xmm08946; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8947; SSE-NEXT:    pshufd {{.*#+}} xmm9 = xmm14[2,3,2,3]8948; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]8949; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm9[0],xmm0[1],xmm9[1]8950; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm7[0],xmm0[1]8951; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8952; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm13[2,3,2,3]8953; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Reload8954; SSE-NEXT:    pshufd {{.*#+}} xmm9 = xmm12[1,1,1,1]8955; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm9[0],xmm7[1],xmm9[1]8956; SSE-NEXT:    movdqa 848(%rdi), %xmm08957; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8958; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload8959; SSE-NEXT:    # xmm9 = mem[2,3,2,3]8960; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]8961; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm9[0],xmm0[1],xmm9[1]8962; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm7[0],xmm0[1]8963; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8964; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload8965; SSE-NEXT:    # xmm7 = mem[2,3,2,3]8966; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload8967; SSE-NEXT:    # xmm9 = mem[1,1,1,1]8968; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm9[0],xmm7[1],xmm9[1]8969; SSE-NEXT:    movdqa 960(%rdi), %xmm08970; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8971; SSE-NEXT:    pshufd {{.*#+}} xmm9 = xmm5[2,3,2,3]8972; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]8973; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm9[0],xmm0[1],xmm9[1]8974; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm7[0],xmm0[1]8975; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8976; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload8977; SSE-NEXT:    # xmm7 = mem[2,3,2,3]8978; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload8979; SSE-NEXT:    pshufd {{.*#+}} xmm9 = xmm14[1,1,1,1]8980; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm9[0],xmm7[1],xmm9[1]8981; SSE-NEXT:    movdqa 1072(%rdi), %xmm08982; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8983; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload8984; SSE-NEXT:    # xmm9 = mem[2,3,2,3]8985; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]8986; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm9[0],xmm0[1],xmm9[1]8987; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm7[0],xmm0[1]8988; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8989; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm1[2,3,2,3]8990; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload8991; SSE-NEXT:    pshufd {{.*#+}} xmm9 = xmm3[1,1,1,1]8992; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm9[0],xmm7[1],xmm9[1]8993; SSE-NEXT:    movdqa 1184(%rdi), %xmm08994; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8995; SSE-NEXT:    pshufd {{.*#+}} xmm9 = xmm8[2,3,2,3]8996; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]8997; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm9[0],xmm0[1],xmm9[1]8998; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm7[0],xmm0[1]8999; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9000; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload9001; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm8[2,3,2,3]9002; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload9003; SSE-NEXT:    # xmm9 = mem[1,1,1,1]9004; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm9[0],xmm7[1],xmm9[1]9005; SSE-NEXT:    movdqa 1296(%rdi), %xmm09006; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9007; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload9008; SSE-NEXT:    # xmm9 = mem[2,3,2,3]9009; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]9010; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm9[0],xmm0[1],xmm9[1]9011; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm7[0],xmm0[1]9012; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9013; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload9014; SSE-NEXT:    # xmm7 = mem[2,3,2,3]9015; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload9016; SSE-NEXT:    # xmm9 = mem[1,1,1,1]9017; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm9[0],xmm7[1],xmm9[1]9018; SSE-NEXT:    movdqa 1408(%rdi), %xmm09019; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9020; SSE-NEXT:    pshufd {{.*#+}} xmm9 = xmm10[2,3,2,3]9021; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]9022; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm9[0],xmm0[1],xmm9[1]9023; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm7[0],xmm0[1]9024; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9025; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload9026; SSE-NEXT:    # xmm7 = mem[2,3,2,3]9027; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload9028; SSE-NEXT:    # xmm9 = mem[1,1,1,1]9029; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm9[0],xmm7[1],xmm9[1]9030; SSE-NEXT:    movdqa 1520(%rdi), %xmm09031; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9032; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload9033; SSE-NEXT:    # xmm9 = mem[2,3,2,3]9034; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]9035; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm9[0],xmm0[1],xmm9[1]9036; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm7[0],xmm0[1]9037; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9038; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload9039; SSE-NEXT:    # xmm7 = mem[2,3,2,3]9040; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload9041; SSE-NEXT:    # xmm9 = mem[1,1,1,1]9042; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm9[0],xmm7[1],xmm9[1]9043; SSE-NEXT:    movdqa 1632(%rdi), %xmm09044; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9045; SSE-NEXT:    pshufd {{.*#+}} xmm9 = xmm6[2,3,2,3]9046; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]9047; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm9[0],xmm0[1],xmm9[1]9048; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm7[0],xmm0[1]9049; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9050; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload9051; SSE-NEXT:    # xmm7 = mem[2,3,2,3]9052; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload9053; SSE-NEXT:    # xmm9 = mem[1,1,1,1]9054; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm9[0],xmm7[1],xmm9[1]9055; SSE-NEXT:    movdqa 1744(%rdi), %xmm09056; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9057; SSE-NEXT:    pshufd {{.*#+}} xmm9 = xmm11[2,3,2,3]9058; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]9059; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm9[0],xmm0[1],xmm9[1]9060; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm7[0],xmm0[1]9061; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9062; SSE-NEXT:    movdqa 96(%rdi), %xmm09063; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9064; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm0[0,0,1,1]9065; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload9066; SSE-NEXT:    movdqa %xmm5, %xmm09067; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm7[0],xmm0[1],xmm7[1]9068; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9069; SSE-NEXT:    # xmm4 = mem[2,2,3,3]9070; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload9071; SSE-NEXT:    punpckhdq {{.*#+}} xmm4 = xmm4[2],xmm7[2],xmm4[3],xmm7[3]9072; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm4[0],xmm0[1]9073; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9074; SSE-NEXT:    movdqa 208(%rdi), %xmm09075; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9076; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm0[0,0,1,1]9077; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9078; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm4[0],xmm0[1],xmm4[1]9079; SSE-NEXT:    pshufd {{.*#+}} xmm2 = xmm2[2,2,3,3]9080; SSE-NEXT:    punpckhdq {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Folded Reload9081; SSE-NEXT:    # xmm2 = xmm2[2],mem[2],xmm2[3],mem[3]9082; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm2[0],xmm0[1]9083; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9084; SSE-NEXT:    movdqa 320(%rdi), %xmm09085; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9086; SSE-NEXT:    pshufd {{.*#+}} xmm2 = xmm0[0,0,1,1]9087; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Reload9088; SSE-NEXT:    movdqa %xmm13, %xmm09089; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1]9090; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Folded Reload9091; SSE-NEXT:    # xmm2 = mem[2,2,3,3]9092; SSE-NEXT:    punpckhdq {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Folded Reload9093; SSE-NEXT:    # xmm2 = xmm2[2],mem[2],xmm2[3],mem[3]9094; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm2[0],xmm0[1]9095; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9096; SSE-NEXT:    movdqa 432(%rdi), %xmm09097; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9098; SSE-NEXT:    pshufd {{.*#+}} xmm2 = xmm0[0,0,1,1]9099; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm11 # 16-byte Reload9100; SSE-NEXT:    movdqa %xmm11, %xmm09101; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1]9102; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9103; SSE-NEXT:    # xmm1 = mem[2,2,3,3]9104; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload9105; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm10[2],xmm1[3],xmm10[3]9106; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]9107; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9108; SSE-NEXT:    movdqa 544(%rdi), %xmm09109; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9110; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm0[0,0,1,1]9111; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9112; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]9113; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9114; SSE-NEXT:    # xmm1 = mem[2,2,3,3]9115; SSE-NEXT:    punpckhdq {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9116; SSE-NEXT:    # xmm1 = xmm1[2],mem[2],xmm1[3],mem[3]9117; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]9118; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9119; SSE-NEXT:    movdqa 656(%rdi), %xmm09120; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9121; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm0[0,0,1,1]9122; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9123; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]9124; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9125; SSE-NEXT:    # xmm1 = mem[2,2,3,3]9126; SSE-NEXT:    punpckhdq {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9127; SSE-NEXT:    # xmm1 = xmm1[2],mem[2],xmm1[3],mem[3]9128; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]9129; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9130; SSE-NEXT:    movdqa 768(%rdi), %xmm09131; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9132; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm0[0,0,1,1]9133; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9134; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]9135; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm15[2,2,3,3]9136; SSE-NEXT:    punpckhdq {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9137; SSE-NEXT:    # xmm1 = xmm1[2],mem[2],xmm1[3],mem[3]9138; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]9139; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9140; SSE-NEXT:    movdqa 880(%rdi), %xmm09141; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9142; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm0[0,0,1,1]9143; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Reload9144; SSE-NEXT:    movdqa %xmm15, %xmm29145; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]9146; SSE-NEXT:    pshufd $250, (%rsp), %xmm0 # 16-byte Folded Reload9147; SSE-NEXT:    # xmm0 = mem[2,2,3,3]9148; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm12[2],xmm0[3],xmm12[3]9149; SSE-NEXT:    movsd {{.*#+}} xmm2 = xmm0[0],xmm2[1]9150; SSE-NEXT:    movapd %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9151; SSE-NEXT:    movdqa 992(%rdi), %xmm09152; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9153; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]9154; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9155; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9156; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9157; SSE-NEXT:    # xmm0 = mem[2,2,3,3]9158; SSE-NEXT:    punpckhdq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9159; SSE-NEXT:    # xmm0 = xmm0[2],mem[2],xmm0[3],mem[3]9160; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]9161; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9162; SSE-NEXT:    movdqa 1104(%rdi), %xmm09163; SSE-NEXT:    movdqa %xmm0, (%rsp) # 16-byte Spill9164; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]9165; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Reload9166; SSE-NEXT:    movdqa %xmm12, %xmm19167; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9168; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9169; SSE-NEXT:    # xmm0 = mem[2,2,3,3]9170; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm14[2],xmm0[3],xmm14[3]9171; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]9172; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9173; SSE-NEXT:    movdqa 1216(%rdi), %xmm09174; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9175; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]9176; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9177; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9178; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9179; SSE-NEXT:    # xmm0 = mem[2,2,3,3]9180; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm3[2],xmm0[3],xmm3[3]9181; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]9182; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9183; SSE-NEXT:    movdqa 1328(%rdi), %xmm09184; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9185; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]9186; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload9187; SSE-NEXT:    movdqa %xmm14, %xmm19188; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9189; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm8[2,2,3,3]9190; SSE-NEXT:    punpckhdq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9191; SSE-NEXT:    # xmm0 = xmm0[2],mem[2],xmm0[3],mem[3]9192; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]9193; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9194; SSE-NEXT:    movdqa 1440(%rdi), %xmm09195; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9196; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]9197; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload9198; SSE-NEXT:    movdqa %xmm9, %xmm19199; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9200; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9201; SSE-NEXT:    # xmm0 = mem[2,2,3,3]9202; SSE-NEXT:    punpckhdq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9203; SSE-NEXT:    # xmm0 = xmm0[2],mem[2],xmm0[3],mem[3]9204; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]9205; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9206; SSE-NEXT:    movdqa 1552(%rdi), %xmm09207; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9208; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]9209; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload9210; SSE-NEXT:    movdqa %xmm6, %xmm19211; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9212; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9213; SSE-NEXT:    # xmm0 = mem[2,2,3,3]9214; SSE-NEXT:    punpckhdq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9215; SSE-NEXT:    # xmm0 = xmm0[2],mem[2],xmm0[3],mem[3]9216; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]9217; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9218; SSE-NEXT:    movdqa 1664(%rdi), %xmm09219; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9220; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]9221; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9222; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9223; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9224; SSE-NEXT:    # xmm0 = mem[2,2,3,3]9225; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload9226; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm2[2],xmm0[3],xmm2[3]9227; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]9228; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9229; SSE-NEXT:    movdqa 1776(%rdi), %xmm09230; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9231; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[0,0,1,1]9232; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload9233; SSE-NEXT:    movdqa %xmm4, %xmm19234; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9235; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9236; SSE-NEXT:    # xmm0 = mem[2,2,3,3]9237; SSE-NEXT:    punpckhdq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9238; SSE-NEXT:    # xmm0 = xmm0[2],mem[2],xmm0[3],mem[3]9239; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]9240; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9241; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm7[3,3,3,3]9242; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload9243; SSE-NEXT:    movdqa %xmm7, %xmm19244; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9245; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm5[2,2,3,3]9246; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9247; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]9248; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]9249; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9250; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9251; SSE-NEXT:    # xmm0 = mem[3,3,3,3]9252; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload9253; SSE-NEXT:    movdqa %xmm5, %xmm19254; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9255; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9256; SSE-NEXT:    # xmm0 = mem[2,2,3,3]9257; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9258; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]9259; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]9260; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9261; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9262; SSE-NEXT:    # xmm0 = mem[3,3,3,3]9263; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload9264; SSE-NEXT:    movdqa %xmm8, %xmm19265; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9266; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm13[2,2,3,3]9267; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9268; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]9269; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]9270; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9271; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm10[3,3,3,3]9272; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload9273; SSE-NEXT:    movdqa %xmm10, %xmm19274; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9275; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm11[2,2,3,3]9276; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload9277; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm3[0],xmm0[1],xmm3[1]9278; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]9279; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9280; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9281; SSE-NEXT:    # xmm0 = mem[3,3,3,3]9282; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm11 # 16-byte Reload9283; SSE-NEXT:    movdqa %xmm11, %xmm19284; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9285; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9286; SSE-NEXT:    # xmm0 = mem[2,2,3,3]9287; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9288; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]9289; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]9290; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9291; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9292; SSE-NEXT:    # xmm0 = mem[3,3,3,3]9293; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Reload9294; SSE-NEXT:    movdqa %xmm13, %xmm19295; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9296; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9297; SSE-NEXT:    # xmm0 = mem[2,2,3,3]9298; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9299; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]9300; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]9301; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9302; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9303; SSE-NEXT:    # xmm0 = mem[3,3,3,3]9304; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9305; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9306; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9307; SSE-NEXT:    # xmm0 = mem[2,2,3,3]9308; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9309; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]9310; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]9311; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9312; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9313; SSE-NEXT:    # xmm0 = mem[3,3,3,3]9314; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9315; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9316; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm15[2,2,3,3]9317; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9318; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]9319; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]9320; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9321; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9322; SSE-NEXT:    # xmm0 = mem[3,3,3,3]9323; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9324; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9325; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Folded Reload9326; SSE-NEXT:    # xmm15 = mem[2,2,3,3]9327; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Folded Reload9328; SSE-NEXT:    # xmm15 = xmm15[0],mem[0],xmm15[1],mem[1]9329; SSE-NEXT:    movsd {{.*#+}} xmm15 = xmm1[0],xmm15[1]9330; SSE-NEXT:    movapd %xmm15, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9331; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9332; SSE-NEXT:    # xmm0 = mem[3,3,3,3]9333; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9334; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9335; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm12[2,2,3,3]9336; SSE-NEXT:    movdqa (%rsp), %xmm15 # 16-byte Reload9337; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm15[0],xmm0[1],xmm15[1]9338; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]9339; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9340; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9341; SSE-NEXT:    # xmm0 = mem[3,3,3,3]9342; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9343; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9344; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9345; SSE-NEXT:    # xmm0 = mem[2,2,3,3]9346; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Reload9347; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm12[0],xmm0[1],xmm12[1]9348; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]9349; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9350; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9351; SSE-NEXT:    # xmm0 = mem[3,3,3,3]9352; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9353; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9354; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm14[2,2,3,3]9355; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9356; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]9357; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]9358; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9359; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9360; SSE-NEXT:    # xmm0 = mem[3,3,3,3]9361; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9362; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9363; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm9[2,2,3,3]9364; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload9365; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm9[0],xmm0[1],xmm9[1]9366; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]9367; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9368; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9369; SSE-NEXT:    # xmm0 = mem[3,3,3,3]9370; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9371; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9372; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm6[2,2,3,3]9373; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload9374; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm14[0],xmm0[1],xmm14[1]9375; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]9376; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9377; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm2[3,3,3,3]9378; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9379; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9380; SSE-NEXT:    pshufd $250, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9381; SSE-NEXT:    # xmm0 = mem[2,2,3,3]9382; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9383; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]9384; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]9385; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9386; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Folded Reload9387; SSE-NEXT:    # xmm2 = mem[3,3,3,3]9388; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9389; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]9390; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm4[2,2,3,3]9391; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9392; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]9393; SSE-NEXT:    movsd {{.*#+}} xmm0 = xmm1[0],xmm0[1]9394; SSE-NEXT:    movapd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9395; SSE-NEXT:    pshufd $170, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9396; SSE-NEXT:    # xmm0 = mem[2,2,2,2]9397; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9398; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]9399; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm7[1,1,1,1]9400; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9401; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]9402; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]9403; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9404; SSE-NEXT:    pshufd $170, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9405; SSE-NEXT:    # xmm0 = mem[2,2,2,2]9406; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9407; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]9408; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm5[1,1,1,1]9409; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9410; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]9411; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]9412; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9413; SSE-NEXT:    pshufd $170, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9414; SSE-NEXT:    # xmm0 = mem[2,2,2,2]9415; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9416; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]9417; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm8[1,1,1,1]9418; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9419; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]9420; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]9421; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9422; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm3[2,2,2,2]9423; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9424; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]9425; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm10[1,1,1,1]9426; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9427; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]9428; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]9429; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9430; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload9431; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm10[2,2,2,2]9432; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9433; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]9434; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm11[1,1,1,1]9435; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload9436; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm6[0],xmm0[1],xmm6[1]9437; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]9438; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9439; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm11 # 16-byte Reload9440; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm11[2,2,2,2]9441; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9442; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]9443; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm13[1,1,1,1]9444; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload9445; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm7[0],xmm0[1],xmm7[1]9446; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]9447; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9448; SSE-NEXT:    pshufd $170, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9449; SSE-NEXT:    # xmm0 = mem[2,2,2,2]9450; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9451; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]9452; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9453; SSE-NEXT:    # xmm0 = mem[1,1,1,1]9454; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9455; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]9456; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]9457; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9458; SSE-NEXT:    pshufd $170, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9459; SSE-NEXT:    # xmm0 = mem[2,2,2,2]9460; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9461; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]9462; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9463; SSE-NEXT:    # xmm0 = mem[1,1,1,1]9464; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload9465; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm8[0],xmm0[1],xmm8[1]9466; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]9467; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9468; SSE-NEXT:    pshufd $170, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9469; SSE-NEXT:    # xmm0 = mem[2,2,2,2]9470; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9471; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]9472; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9473; SSE-NEXT:    # xmm0 = mem[1,1,1,1]9474; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9475; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]9476; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]9477; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9478; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm15[2,2,2,2]9479; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9480; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]9481; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9482; SSE-NEXT:    # xmm0 = mem[1,1,1,1]9483; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload9484; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm5[0],xmm0[1],xmm5[1]9485; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]9486; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9487; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm12[2,2,2,2]9488; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9489; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]9490; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9491; SSE-NEXT:    # xmm0 = mem[1,1,1,1]9492; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9493; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]9494; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]9495; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9496; SSE-NEXT:    pshufd $170, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9497; SSE-NEXT:    # xmm0 = mem[2,2,2,2]9498; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9499; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]9500; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9501; SSE-NEXT:    # xmm0 = mem[1,1,1,1]9502; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9503; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]9504; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]9505; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9506; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm9[2,2,2,2]9507; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9508; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]9509; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9510; SSE-NEXT:    # xmm0 = mem[1,1,1,1]9511; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9512; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]9513; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]9514; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9515; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm14[2,2,2,2]9516; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9517; SSE-NEXT:    punpckhdq {{.*#+}} xmm1 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]9518; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9519; SSE-NEXT:    # xmm0 = mem[1,1,1,1]9520; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload9521; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm3[0],xmm0[1],xmm3[1]9522; SSE-NEXT:    movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]9523; SSE-NEXT:    movapd %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9524; SSE-NEXT:    pshufd $170, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9525; SSE-NEXT:    # xmm0 = mem[2,2,2,2]9526; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload9527; SSE-NEXT:    punpckhdq {{.*#+}} xmm2 = xmm2[2],xmm0[2],xmm2[3],xmm0[3]9528; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9529; SSE-NEXT:    # xmm0 = mem[1,1,1,1]9530; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9531; SSE-NEXT:    # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]9532; SSE-NEXT:    movsd {{.*#+}} xmm2 = xmm0[0],xmm2[1]9533; SSE-NEXT:    movapd %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9534; SSE-NEXT:    pshufd $170, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9535; SSE-NEXT:    # xmm0 = mem[2,2,2,2]9536; SSE-NEXT:    punpckhdq {{.*#+}} xmm4 = xmm4[2],xmm0[2],xmm4[3],xmm0[3]9537; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9538; SSE-NEXT:    # xmm0 = mem[1,1,1,1]9539; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload9540; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1]9541; SSE-NEXT:    movsd {{.*#+}} xmm4 = xmm0[0],xmm4[1]9542; SSE-NEXT:    movapd %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9543; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9544; SSE-NEXT:    # xmm0 = mem[1,1,1,1]9545; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9546; SSE-NEXT:    # xmm1 = mem[2,3,2,3]9547; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9548; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9549; SSE-NEXT:    # xmm0 = mem[2,3,2,3]9550; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9551; SSE-NEXT:    # xmm4 = mem[0,0,1,1]9552; SSE-NEXT:    punpckldq {{.*#+}} xmm4 = xmm4[0],xmm0[0],xmm4[1],xmm0[1]9553; SSE-NEXT:    movsd {{.*#+}} xmm4 = xmm1[0],xmm4[1]9554; SSE-NEXT:    movapd %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9555; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9556; SSE-NEXT:    # xmm0 = mem[1,1,1,1]9557; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9558; SSE-NEXT:    # xmm1 = mem[2,3,2,3]9559; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9560; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9561; SSE-NEXT:    # xmm0 = mem[2,3,2,3]9562; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9563; SSE-NEXT:    # xmm4 = mem[0,0,1,1]9564; SSE-NEXT:    punpckldq {{.*#+}} xmm4 = xmm4[0],xmm0[0],xmm4[1],xmm0[1]9565; SSE-NEXT:    movsd {{.*#+}} xmm4 = xmm1[0],xmm4[1]9566; SSE-NEXT:    movapd %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9567; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9568; SSE-NEXT:    # xmm0 = mem[1,1,1,1]9569; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9570; SSE-NEXT:    # xmm1 = mem[2,3,2,3]9571; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9572; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9573; SSE-NEXT:    # xmm0 = mem[2,3,2,3]9574; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Folded Reload9575; SSE-NEXT:    # xmm15 = mem[0,0,1,1]9576; SSE-NEXT:    punpckldq {{.*#+}} xmm15 = xmm15[0],xmm0[0],xmm15[1],xmm0[1]9577; SSE-NEXT:    movsd {{.*#+}} xmm15 = xmm1[0],xmm15[1]9578; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9579; SSE-NEXT:    # xmm0 = mem[1,1,1,1]9580; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9581; SSE-NEXT:    # xmm1 = mem[2,3,2,3]9582; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9583; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9584; SSE-NEXT:    # xmm0 = mem[2,3,2,3]9585; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Folded Reload9586; SSE-NEXT:    # xmm14 = mem[0,0,1,1]9587; SSE-NEXT:    punpckldq {{.*#+}} xmm14 = xmm14[0],xmm0[0],xmm14[1],xmm0[1]9588; SSE-NEXT:    movsd {{.*#+}} xmm14 = xmm1[0],xmm14[1]9589; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm6[1,1,1,1]9590; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9591; SSE-NEXT:    # xmm1 = mem[2,3,2,3]9592; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9593; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm10[2,3,2,3]9594; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Folded Reload9595; SSE-NEXT:    # xmm13 = mem[0,0,1,1]9596; SSE-NEXT:    punpckldq {{.*#+}} xmm13 = xmm13[0],xmm0[0],xmm13[1],xmm0[1]9597; SSE-NEXT:    movsd {{.*#+}} xmm13 = xmm1[0],xmm13[1]9598; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm7[1,1,1,1]9599; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9600; SSE-NEXT:    # xmm1 = mem[2,3,2,3]9601; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9602; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm11[2,3,2,3]9603; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Folded Reload9604; SSE-NEXT:    # xmm12 = mem[0,0,1,1]9605; SSE-NEXT:    punpckldq {{.*#+}} xmm12 = xmm12[0],xmm0[0],xmm12[1],xmm0[1]9606; SSE-NEXT:    movsd {{.*#+}} xmm12 = xmm1[0],xmm12[1]9607; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9608; SSE-NEXT:    # xmm0 = mem[1,1,1,1]9609; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9610; SSE-NEXT:    # xmm1 = mem[2,3,2,3]9611; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9612; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9613; SSE-NEXT:    # xmm0 = mem[2,3,2,3]9614; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm11 # 16-byte Folded Reload9615; SSE-NEXT:    # xmm11 = mem[0,0,1,1]9616; SSE-NEXT:    punpckldq {{.*#+}} xmm11 = xmm11[0],xmm0[0],xmm11[1],xmm0[1]9617; SSE-NEXT:    movsd {{.*#+}} xmm11 = xmm1[0],xmm11[1]9618; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm8[1,1,1,1]9619; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9620; SSE-NEXT:    # xmm1 = mem[2,3,2,3]9621; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9622; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9623; SSE-NEXT:    # xmm0 = mem[2,3,2,3]9624; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Folded Reload9625; SSE-NEXT:    # xmm10 = mem[0,0,1,1]9626; SSE-NEXT:    punpckldq {{.*#+}} xmm10 = xmm10[0],xmm0[0],xmm10[1],xmm0[1]9627; SSE-NEXT:    movsd {{.*#+}} xmm10 = xmm1[0],xmm10[1]9628; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9629; SSE-NEXT:    # xmm0 = mem[1,1,1,1]9630; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9631; SSE-NEXT:    # xmm1 = mem[2,3,2,3]9632; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9633; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9634; SSE-NEXT:    # xmm0 = mem[2,3,2,3]9635; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload9636; SSE-NEXT:    # xmm9 = mem[0,0,1,1]9637; SSE-NEXT:    punpckldq {{.*#+}} xmm9 = xmm9[0],xmm0[0],xmm9[1],xmm0[1]9638; SSE-NEXT:    movsd {{.*#+}} xmm9 = xmm1[0],xmm9[1]9639; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm5[1,1,1,1]9640; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9641; SSE-NEXT:    # xmm1 = mem[2,3,2,3]9642; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9643; SSE-NEXT:    pshufd $238, (%rsp), %xmm0 # 16-byte Folded Reload9644; SSE-NEXT:    # xmm0 = mem[2,3,2,3]9645; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Folded Reload9646; SSE-NEXT:    # xmm8 = mem[0,0,1,1]9647; SSE-NEXT:    punpckldq {{.*#+}} xmm8 = xmm8[0],xmm0[0],xmm8[1],xmm0[1]9648; SSE-NEXT:    movsd {{.*#+}} xmm8 = xmm1[0],xmm8[1]9649; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9650; SSE-NEXT:    # xmm0 = mem[1,1,1,1]9651; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9652; SSE-NEXT:    # xmm1 = mem[2,3,2,3]9653; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9654; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9655; SSE-NEXT:    # xmm0 = mem[2,3,2,3]9656; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload9657; SSE-NEXT:    # xmm7 = mem[0,0,1,1]9658; SSE-NEXT:    punpckldq {{.*#+}} xmm7 = xmm7[0],xmm0[0],xmm7[1],xmm0[1]9659; SSE-NEXT:    movsd {{.*#+}} xmm7 = xmm1[0],xmm7[1]9660; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9661; SSE-NEXT:    # xmm0 = mem[1,1,1,1]9662; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9663; SSE-NEXT:    # xmm1 = mem[2,3,2,3]9664; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9665; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9666; SSE-NEXT:    # xmm0 = mem[2,3,2,3]9667; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Folded Reload9668; SSE-NEXT:    # xmm6 = mem[0,0,1,1]9669; SSE-NEXT:    punpckldq {{.*#+}} xmm6 = xmm6[0],xmm0[0],xmm6[1],xmm0[1]9670; SSE-NEXT:    movsd {{.*#+}} xmm6 = xmm1[0],xmm6[1]9671; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9672; SSE-NEXT:    # xmm0 = mem[1,1,1,1]9673; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9674; SSE-NEXT:    # xmm1 = mem[2,3,2,3]9675; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9676; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9677; SSE-NEXT:    # xmm0 = mem[2,3,2,3]9678; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Folded Reload9679; SSE-NEXT:    # xmm5 = mem[0,0,1,1]9680; SSE-NEXT:    punpckldq {{.*#+}} xmm5 = xmm5[0],xmm0[0],xmm5[1],xmm0[1]9681; SSE-NEXT:    movsd {{.*#+}} xmm5 = xmm1[0],xmm5[1]9682; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm3[1,1,1,1]9683; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9684; SSE-NEXT:    # xmm1 = mem[2,3,2,3]9685; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9686; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9687; SSE-NEXT:    # xmm0 = mem[2,3,2,3]9688; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9689; SSE-NEXT:    # xmm4 = mem[0,0,1,1]9690; SSE-NEXT:    punpckldq {{.*#+}} xmm4 = xmm4[0],xmm0[0],xmm4[1],xmm0[1]9691; SSE-NEXT:    movsd {{.*#+}} xmm4 = xmm1[0],xmm4[1]9692; SSE-NEXT:    pshufd $85, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9693; SSE-NEXT:    # xmm1 = mem[1,1,1,1]9694; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9695; SSE-NEXT:    # xmm0 = mem[2,3,2,3]9696; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]9697; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9698; SSE-NEXT:    # xmm1 = mem[2,3,2,3]9699; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Folded Reload9700; SSE-NEXT:    # xmm3 = mem[0,0,1,1]9701; SSE-NEXT:    punpckldq {{.*#+}} xmm3 = xmm3[0],xmm1[0],xmm3[1],xmm1[1]9702; SSE-NEXT:    movsd {{.*#+}} xmm3 = xmm0[0],xmm3[1]9703; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm2[1,1,1,1]9704; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9705; SSE-NEXT:    # xmm1 = mem[2,3,2,3]9706; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]9707; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9708; SSE-NEXT:    # xmm0 = mem[2,3,2,3]9709; SSE-NEXT:    pshufd $80, {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Folded Reload9710; SSE-NEXT:    # xmm2 = mem[0,0,1,1]9711; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm0[0],xmm2[1],xmm0[1]9712; SSE-NEXT:    movsd {{.*#+}} xmm2 = xmm1[0],xmm2[1]9713; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9714; SSE-NEXT:    movaps %xmm0, 224(%rsi)9715; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9716; SSE-NEXT:    movaps %xmm0, 160(%rsi)9717; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9718; SSE-NEXT:    movaps %xmm0, 96(%rsi)9719; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9720; SSE-NEXT:    movaps %xmm0, 32(%rsi)9721; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9722; SSE-NEXT:    movaps %xmm0, 240(%rsi)9723; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9724; SSE-NEXT:    movaps %xmm0, 176(%rsi)9725; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9726; SSE-NEXT:    movaps %xmm0, 112(%rsi)9727; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9728; SSE-NEXT:    movaps %xmm0, 48(%rsi)9729; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9730; SSE-NEXT:    movaps %xmm0, 192(%rsi)9731; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9732; SSE-NEXT:    movaps %xmm0, 128(%rsi)9733; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9734; SSE-NEXT:    movaps %xmm0, 64(%rsi)9735; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9736; SSE-NEXT:    movaps %xmm0, (%rsi)9737; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9738; SSE-NEXT:    movaps %xmm0, 208(%rsi)9739; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9740; SSE-NEXT:    movaps %xmm0, 144(%rsi)9741; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9742; SSE-NEXT:    movaps %xmm0, 80(%rsi)9743; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9744; SSE-NEXT:    movaps %xmm0, 16(%rsi)9745; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9746; SSE-NEXT:    movaps %xmm0, 224(%rdx)9747; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9748; SSE-NEXT:    movaps %xmm0, 240(%rdx)9749; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9750; SSE-NEXT:    movaps %xmm0, 192(%rdx)9751; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9752; SSE-NEXT:    movaps %xmm0, 208(%rdx)9753; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9754; SSE-NEXT:    movaps %xmm0, 160(%rdx)9755; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9756; SSE-NEXT:    movaps %xmm0, 176(%rdx)9757; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9758; SSE-NEXT:    movaps %xmm0, 128(%rdx)9759; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9760; SSE-NEXT:    movaps %xmm0, 144(%rdx)9761; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9762; SSE-NEXT:    movaps %xmm0, 96(%rdx)9763; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9764; SSE-NEXT:    movaps %xmm0, 112(%rdx)9765; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9766; SSE-NEXT:    movaps %xmm0, 64(%rdx)9767; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9768; SSE-NEXT:    movaps %xmm0, 80(%rdx)9769; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9770; SSE-NEXT:    movaps %xmm0, 32(%rdx)9771; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9772; SSE-NEXT:    movaps %xmm0, 48(%rdx)9773; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9774; SSE-NEXT:    movaps %xmm0, (%rdx)9775; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9776; SSE-NEXT:    movaps %xmm0, 16(%rdx)9777; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9778; SSE-NEXT:    movaps %xmm0, 240(%rcx)9779; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9780; SSE-NEXT:    movaps %xmm0, 224(%rcx)9781; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9782; SSE-NEXT:    movaps %xmm0, 208(%rcx)9783; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9784; SSE-NEXT:    movaps %xmm0, 192(%rcx)9785; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9786; SSE-NEXT:    movaps %xmm0, 176(%rcx)9787; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9788; SSE-NEXT:    movaps %xmm0, 160(%rcx)9789; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9790; SSE-NEXT:    movaps %xmm0, 144(%rcx)9791; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9792; SSE-NEXT:    movaps %xmm0, 128(%rcx)9793; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9794; SSE-NEXT:    movaps %xmm0, 112(%rcx)9795; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9796; SSE-NEXT:    movaps %xmm0, 96(%rcx)9797; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9798; SSE-NEXT:    movaps %xmm0, 80(%rcx)9799; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9800; SSE-NEXT:    movaps %xmm0, 64(%rcx)9801; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9802; SSE-NEXT:    movaps %xmm0, 48(%rcx)9803; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9804; SSE-NEXT:    movaps %xmm0, 32(%rcx)9805; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9806; SSE-NEXT:    movaps %xmm0, 16(%rcx)9807; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9808; SSE-NEXT:    movaps %xmm0, (%rcx)9809; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9810; SSE-NEXT:    movaps %xmm0, 240(%r8)9811; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9812; SSE-NEXT:    movaps %xmm0, 224(%r8)9813; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9814; SSE-NEXT:    movaps %xmm0, 208(%r8)9815; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9816; SSE-NEXT:    movaps %xmm0, 192(%r8)9817; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9818; SSE-NEXT:    movaps %xmm0, 176(%r8)9819; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9820; SSE-NEXT:    movaps %xmm0, 160(%r8)9821; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9822; SSE-NEXT:    movaps %xmm0, 144(%r8)9823; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9824; SSE-NEXT:    movaps %xmm0, 128(%r8)9825; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9826; SSE-NEXT:    movaps %xmm0, 112(%r8)9827; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9828; SSE-NEXT:    movaps %xmm0, 96(%r8)9829; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9830; SSE-NEXT:    movaps %xmm0, 80(%r8)9831; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9832; SSE-NEXT:    movaps %xmm0, 64(%r8)9833; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9834; SSE-NEXT:    movaps %xmm0, 48(%r8)9835; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9836; SSE-NEXT:    movaps %xmm0, 32(%r8)9837; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9838; SSE-NEXT:    movaps %xmm0, 16(%r8)9839; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9840; SSE-NEXT:    movaps %xmm0, (%r8)9841; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9842; SSE-NEXT:    movaps %xmm0, 240(%r9)9843; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9844; SSE-NEXT:    movaps %xmm0, 224(%r9)9845; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9846; SSE-NEXT:    movaps %xmm0, 208(%r9)9847; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9848; SSE-NEXT:    movaps %xmm0, 192(%r9)9849; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9850; SSE-NEXT:    movaps %xmm0, 176(%r9)9851; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9852; SSE-NEXT:    movaps %xmm0, 160(%r9)9853; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9854; SSE-NEXT:    movaps %xmm0, 144(%r9)9855; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9856; SSE-NEXT:    movaps %xmm0, 128(%r9)9857; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9858; SSE-NEXT:    movaps %xmm0, 112(%r9)9859; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9860; SSE-NEXT:    movaps %xmm0, 96(%r9)9861; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9862; SSE-NEXT:    movaps %xmm0, 80(%r9)9863; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9864; SSE-NEXT:    movaps %xmm0, 64(%r9)9865; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9866; SSE-NEXT:    movaps %xmm0, 48(%r9)9867; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9868; SSE-NEXT:    movaps %xmm0, 32(%r9)9869; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9870; SSE-NEXT:    movaps %xmm0, 16(%r9)9871; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9872; SSE-NEXT:    movaps %xmm0, (%r9)9873; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %rax9874; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9875; SSE-NEXT:    movaps %xmm0, 240(%rax)9876; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9877; SSE-NEXT:    movaps %xmm0, 224(%rax)9878; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9879; SSE-NEXT:    movaps %xmm0, 208(%rax)9880; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9881; SSE-NEXT:    movaps %xmm0, 192(%rax)9882; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9883; SSE-NEXT:    movaps %xmm0, 176(%rax)9884; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9885; SSE-NEXT:    movaps %xmm0, 160(%rax)9886; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9887; SSE-NEXT:    movaps %xmm0, 144(%rax)9888; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9889; SSE-NEXT:    movaps %xmm0, 128(%rax)9890; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9891; SSE-NEXT:    movaps %xmm0, 112(%rax)9892; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9893; SSE-NEXT:    movaps %xmm0, 96(%rax)9894; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9895; SSE-NEXT:    movaps %xmm0, 80(%rax)9896; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9897; SSE-NEXT:    movaps %xmm0, 64(%rax)9898; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9899; SSE-NEXT:    movaps %xmm0, 48(%rax)9900; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9901; SSE-NEXT:    movaps %xmm0, 32(%rax)9902; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9903; SSE-NEXT:    movaps %xmm0, 16(%rax)9904; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9905; SSE-NEXT:    movaps %xmm0, (%rax)9906; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %rax9907; SSE-NEXT:    movapd %xmm2, 240(%rax)9908; SSE-NEXT:    movapd %xmm3, 224(%rax)9909; SSE-NEXT:    movapd %xmm4, 208(%rax)9910; SSE-NEXT:    movapd %xmm5, 192(%rax)9911; SSE-NEXT:    movapd %xmm6, 176(%rax)9912; SSE-NEXT:    movapd %xmm7, 160(%rax)9913; SSE-NEXT:    movapd %xmm8, 144(%rax)9914; SSE-NEXT:    movapd %xmm9, 128(%rax)9915; SSE-NEXT:    movapd %xmm10, 112(%rax)9916; SSE-NEXT:    movapd %xmm11, 96(%rax)9917; SSE-NEXT:    movapd %xmm12, 80(%rax)9918; SSE-NEXT:    movapd %xmm13, 64(%rax)9919; SSE-NEXT:    movapd %xmm14, 48(%rax)9920; SSE-NEXT:    movapd %xmm15, 32(%rax)9921; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9922; SSE-NEXT:    movaps %xmm0, 16(%rax)9923; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9924; SSE-NEXT:    movaps %xmm0, (%rax)9925; SSE-NEXT:    addq $2456, %rsp # imm = 0x9989926; SSE-NEXT:    retq9927;9928; AVX-LABEL: load_i32_stride7_vf64:9929; AVX:       # %bb.0:9930; AVX-NEXT:    subq $3176, %rsp # imm = 0xC689931; AVX-NEXT:    vmovaps 704(%rdi), %ymm29932; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9933; AVX-NEXT:    vmovaps 672(%rdi), %ymm39934; AVX-NEXT:    vmovups %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9935; AVX-NEXT:    vmovaps 768(%rdi), %ymm119936; AVX-NEXT:    vmovaps 256(%rdi), %ymm49937; AVX-NEXT:    vmovups %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9938; AVX-NEXT:    vmovaps 224(%rdi), %ymm19939; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9940; AVX-NEXT:    vmovaps 320(%rdi), %ymm69941; AVX-NEXT:    vmovaps 304(%rdi), %xmm09942; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9943; AVX-NEXT:    vunpcklpd {{.*#+}} ymm0 = ymm6[0],ymm0[0],ymm6[2],ymm0[2]9944; AVX-NEXT:    vmovups %ymm6, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9945; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5],ymm4[6],ymm1[7]9946; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm19947; AVX-NEXT:    vmovaps 224(%rdi), %xmm109948; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm10[0,1],xmm1[2,3]9949; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,3,2,3]9950; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]9951; AVX-NEXT:    vmovaps 384(%rdi), %xmm19952; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9953; AVX-NEXT:    vmovaps 352(%rdi), %xmm49954; AVX-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9955; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm4[1],xmm1[1]9956; AVX-NEXT:    vmovaps 416(%rdi), %xmm49957; AVX-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9958; AVX-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm1[1,2],xmm4[1]9959; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm19960; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]9961; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9962; AVX-NEXT:    vmovaps 752(%rdi), %xmm09963; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9964; AVX-NEXT:    vunpcklpd {{.*#+}} ymm0 = ymm11[0],ymm0[0],ymm11[2],ymm0[2]9965; AVX-NEXT:    vmovups %ymm11, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9966; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm3[0,1,2,3,4,5],ymm2[6],ymm3[7]9967; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm19968; AVX-NEXT:    vmovaps 672(%rdi), %xmm159969; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm15[0,1],xmm1[2,3]9970; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,3,2,3]9971; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]9972; AVX-NEXT:    vmovaps 832(%rdi), %xmm19973; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9974; AVX-NEXT:    vmovaps 800(%rdi), %xmm29975; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9976; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm2[1],xmm1[1]9977; AVX-NEXT:    vmovaps 864(%rdi), %xmm139978; AVX-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm1[1,2],xmm13[1]9979; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm19980; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]9981; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9982; AVX-NEXT:    vmovaps 1152(%rdi), %ymm19983; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9984; AVX-NEXT:    vmovaps 1120(%rdi), %ymm09985; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9986; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm1[6],ymm0[7]9987; AVX-NEXT:    vextractf128 $1, %ymm0, %xmm09988; AVX-NEXT:    vmovaps 1120(%rdi), %xmm19989; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9990; AVX-NEXT:    vblendps {{.*#+}} xmm0 = xmm1[0,1],xmm0[2,3]9991; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[0,3,2,3]9992; AVX-NEXT:    vmovaps 1216(%rdi), %ymm99993; AVX-NEXT:    vmovaps 1200(%rdi), %xmm19994; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9995; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm9[0],ymm1[0],ymm9[2],ymm1[2]9996; AVX-NEXT:    vmovups %ymm9, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9997; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm1[3,4,5,6,7]9998; AVX-NEXT:    vmovaps 1280(%rdi), %xmm19999; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10000; AVX-NEXT:    vmovaps 1248(%rdi), %xmm210001; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10002; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm2[1],xmm1[1]10003; AVX-NEXT:    vmovaps 1312(%rdi), %xmm210004; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10005; AVX-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm1[1,2],xmm2[1]10006; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm110007; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]10008; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10009; AVX-NEXT:    vmovaps 1600(%rdi), %ymm110010; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10011; AVX-NEXT:    vmovaps 1568(%rdi), %ymm010012; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10013; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm1[6],ymm0[7]10014; AVX-NEXT:    vextractf128 $1, %ymm0, %xmm010015; AVX-NEXT:    vmovaps 1568(%rdi), %xmm110016; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10017; AVX-NEXT:    vblendps {{.*#+}} xmm0 = xmm1[0,1],xmm0[2,3]10018; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[0,3,2,3]10019; AVX-NEXT:    vmovaps 1664(%rdi), %ymm210020; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10021; AVX-NEXT:    vmovaps 1648(%rdi), %xmm110022; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10023; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm2[0],ymm1[0],ymm2[2],ymm1[2]10024; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm1[3,4,5,6,7]10025; AVX-NEXT:    vmovaps 1728(%rdi), %xmm110026; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10027; AVX-NEXT:    vmovaps 1696(%rdi), %xmm210028; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10029; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm2[1],xmm1[1]10030; AVX-NEXT:    vmovaps 1760(%rdi), %xmm210031; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10032; AVX-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm1[1,2],xmm2[1]10033; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm110034; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]10035; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10036; AVX-NEXT:    vmovaps 32(%rdi), %ymm110037; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10038; AVX-NEXT:    vmovaps (%rdi), %ymm010039; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10040; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm1[6],ymm0[7]10041; AVX-NEXT:    vextractf128 $1, %ymm0, %xmm010042; AVX-NEXT:    vmovaps (%rdi), %xmm110043; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10044; AVX-NEXT:    vblendps {{.*#+}} xmm0 = xmm1[0,1],xmm0[2,3]10045; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[0,3,2,3]10046; AVX-NEXT:    vmovaps 96(%rdi), %ymm1410047; AVX-NEXT:    vmovaps 80(%rdi), %xmm110048; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10049; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm14[0],ymm1[0],ymm14[2],ymm1[2]10050; AVX-NEXT:    vmovups %ymm14, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10051; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm1[3,4,5,6,7]10052; AVX-NEXT:    vmovaps 160(%rdi), %xmm110053; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10054; AVX-NEXT:    vmovaps 128(%rdi), %xmm210055; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10056; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm2[1],xmm1[1]10057; AVX-NEXT:    vmovaps 192(%rdi), %xmm210058; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10059; AVX-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm1[1,2],xmm2[1]10060; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm110061; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]10062; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10063; AVX-NEXT:    vmovaps 480(%rdi), %ymm110064; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10065; AVX-NEXT:    vmovaps 448(%rdi), %ymm010066; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10067; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm1[6],ymm0[7]10068; AVX-NEXT:    vextractf128 $1, %ymm0, %xmm010069; AVX-NEXT:    vmovaps 448(%rdi), %xmm110070; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10071; AVX-NEXT:    vblendps {{.*#+}} xmm0 = xmm1[0,1],xmm0[2,3]10072; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[0,3,2,3]10073; AVX-NEXT:    vmovaps 544(%rdi), %ymm210074; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10075; AVX-NEXT:    vmovaps 528(%rdi), %xmm110076; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10077; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm2[0],ymm1[0],ymm2[2],ymm1[2]10078; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm1[3,4,5,6,7]10079; AVX-NEXT:    vmovaps 608(%rdi), %xmm110080; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10081; AVX-NEXT:    vmovaps 576(%rdi), %xmm210082; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10083; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm2[1],xmm1[1]10084; AVX-NEXT:    vmovaps 640(%rdi), %xmm210085; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10086; AVX-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm1[1,2],xmm2[1]10087; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm110088; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]10089; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10090; AVX-NEXT:    vmovaps 928(%rdi), %ymm110091; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10092; AVX-NEXT:    vmovaps 896(%rdi), %ymm010093; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10094; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm1[6],ymm0[7]10095; AVX-NEXT:    vextractf128 $1, %ymm0, %xmm010096; AVX-NEXT:    vmovaps 896(%rdi), %xmm1210097; AVX-NEXT:    vblendps {{.*#+}} xmm0 = xmm12[0,1],xmm0[2,3]10098; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[0,3,2,3]10099; AVX-NEXT:    vmovaps 992(%rdi), %ymm510100; AVX-NEXT:    vmovaps 976(%rdi), %xmm110101; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10102; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm5[0],ymm1[0],ymm5[2],ymm1[2]10103; AVX-NEXT:    vmovups %ymm5, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10104; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm1[3,4,5,6,7]10105; AVX-NEXT:    vmovaps 1056(%rdi), %xmm110106; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10107; AVX-NEXT:    vmovaps 1024(%rdi), %xmm210108; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10109; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm2[1],xmm1[1]10110; AVX-NEXT:    vmovaps 1088(%rdi), %xmm810111; AVX-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm1[1,2],xmm8[1]10112; AVX-NEXT:    vmovaps %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10113; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm110114; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]10115; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10116; AVX-NEXT:    vmovaps 1376(%rdi), %ymm110117; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10118; AVX-NEXT:    vmovaps 1344(%rdi), %ymm010119; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10120; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm1[6],ymm0[7]10121; AVX-NEXT:    vextractf128 $1, %ymm0, %xmm010122; AVX-NEXT:    vmovaps 1344(%rdi), %xmm110123; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10124; AVX-NEXT:    vblendps {{.*#+}} xmm0 = xmm1[0,1],xmm0[2,3]10125; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[0,3,2,3]10126; AVX-NEXT:    vmovaps 1440(%rdi), %ymm410127; AVX-NEXT:    vmovaps 1424(%rdi), %xmm110128; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10129; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm4[0],ymm1[0],ymm4[2],ymm1[2]10130; AVX-NEXT:    vmovups %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10131; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm1[3,4,5,6,7]10132; AVX-NEXT:    vmovaps 1504(%rdi), %xmm110133; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10134; AVX-NEXT:    vmovaps 1472(%rdi), %xmm210135; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10136; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm2[1],xmm1[1]10137; AVX-NEXT:    vmovaps 1536(%rdi), %xmm210138; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10139; AVX-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm1[1,2],xmm2[1]10140; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm110141; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]10142; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10143; AVX-NEXT:    vmovaps 288(%rdi), %ymm010144; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10145; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm6[1,1],ymm0[2,2],ymm6[5,5],ymm0[6,6]10146; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]10147; AVX-NEXT:    vmovaps 256(%rdi), %xmm110148; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10149; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0],xmm10[1],xmm1[2,3]10150; AVX-NEXT:    vmovaps %xmm10, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10151; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,0],mem[3,3]10152; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]10153; AVX-NEXT:    vmovaps 384(%rdi), %ymm110154; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10155; AVX-NEXT:    vmovaps 352(%rdi), %ymm210156; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10157; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm2[2,3],ymm1[0,1]10158; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[0,0],ymm1[3,3],ymm2[4,4],ymm1[7,7]10159; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm110160; AVX-NEXT:    vinsertps $49, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload10161; AVX-NEXT:    # xmm1 = zero,xmm1[1,2],mem[0]10162; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm110163; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]10164; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10165; AVX-NEXT:    vmovaps 736(%rdi), %ymm010166; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10167; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm11[1,1],ymm0[2,2],ymm11[5,5],ymm0[6,6]10168; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]10169; AVX-NEXT:    vmovaps 704(%rdi), %xmm110170; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10171; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0],xmm15[1],xmm1[2,3]10172; AVX-NEXT:    vmovaps %xmm15, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10173; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,0],mem[3,3]10174; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]10175; AVX-NEXT:    vmovaps 832(%rdi), %ymm110176; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10177; AVX-NEXT:    vmovaps 800(%rdi), %ymm210178; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10179; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm2[2,3],ymm1[0,1]10180; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[0,0],ymm1[3,3],ymm2[4,4],ymm1[7,7]10181; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm110182; AVX-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm1[1,2],xmm13[2]10183; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm110184; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]10185; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10186; AVX-NEXT:    vmovaps 1184(%rdi), %ymm010187; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10188; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm9[1,1],ymm0[2,2],ymm9[5,5],ymm0[6,6]10189; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]10190; AVX-NEXT:    vmovaps 1152(%rdi), %xmm110191; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10192; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm11 # 16-byte Reload10193; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0],xmm11[1],xmm1[2,3]10194; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,0],mem[3,3]10195; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]10196; AVX-NEXT:    vmovaps 1280(%rdi), %ymm110197; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10198; AVX-NEXT:    vmovaps 1248(%rdi), %ymm210199; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10200; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm2[2,3],ymm1[0,1]10201; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[0,0],ymm1[3,3],ymm2[4,4],ymm1[7,7]10202; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm110203; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload10204; AVX-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm1[1,2],xmm9[2]10205; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm110206; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]10207; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10208; AVX-NEXT:    vmovaps 1632(%rdi), %ymm010209; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10210; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10211; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm1[1,1],ymm0[2,2],ymm1[5,5],ymm0[6,6]10212; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]10213; AVX-NEXT:    vmovaps 1600(%rdi), %xmm110214; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10215; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload10216; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0],xmm7[1],xmm1[2,3]10217; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,0],mem[3,3]10218; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]10219; AVX-NEXT:    vmovaps 1728(%rdi), %ymm110220; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10221; AVX-NEXT:    vmovaps 1696(%rdi), %ymm210222; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10223; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm2[2,3],ymm1[0,1]10224; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[0,0],ymm1[3,3],ymm2[4,4],ymm1[7,7]10225; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm110226; AVX-NEXT:    vinsertps $49, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload10227; AVX-NEXT:    # xmm1 = zero,xmm1[1,2],mem[0]10228; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm110229; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]10230; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10231; AVX-NEXT:    vmovaps 64(%rdi), %ymm010232; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10233; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm14[1,1],ymm0[2,2],ymm14[5,5],ymm0[6,6]10234; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]10235; AVX-NEXT:    vmovaps 32(%rdi), %xmm110236; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10237; AVX-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload10238; AVX-NEXT:    # xmm1 = xmm1[0],mem[1],xmm1[2,3]10239; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,0],mem[3,3]10240; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2],ymm0[3,4,5,6,7]10241; AVX-NEXT:    vmovaps 160(%rdi), %ymm210242; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10243; AVX-NEXT:    vmovaps 128(%rdi), %ymm010244; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10245; AVX-NEXT:    vperm2f128 {{.*#+}} ymm2 = ymm0[2,3],ymm2[0,1]10246; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm0[0,0],ymm2[3,3],ymm0[4,4],ymm2[7,7]10247; AVX-NEXT:    vextractf128 $1, %ymm2, %xmm210248; AVX-NEXT:    vinsertps $49, {{[-0-9]+}}(%r{{[sb]}}p), %xmm2, %xmm2 # 16-byte Folded Reload10249; AVX-NEXT:    # xmm2 = zero,xmm2[1,2],mem[0]10250; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm0, %ymm210251; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]10252; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10253; AVX-NEXT:    vmovaps 512(%rdi), %ymm010254; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10255; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10256; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1],ymm0[2,2],ymm1[5,5],ymm0[6,6]10257; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm1[2,3,2,3]10258; AVX-NEXT:    vmovaps 480(%rdi), %xmm010259; AVX-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10260; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload10261; AVX-NEXT:    vblendps {{.*#+}} xmm2 = xmm0[0],xmm14[1],xmm0[2,3]10262; AVX-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[1,0],mem[3,3]10263; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2],ymm1[3,4,5,6,7]10264; AVX-NEXT:    vmovaps 608(%rdi), %ymm010265; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10266; AVX-NEXT:    vmovaps 576(%rdi), %ymm110267; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10268; AVX-NEXT:    vperm2f128 {{.*#+}} ymm3 = ymm1[2,3],ymm0[0,1]10269; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm1[0,0],ymm3[3,3],ymm1[4,4],ymm3[7,7]10270; AVX-NEXT:    vextractf128 $1, %ymm3, %xmm310271; AVX-NEXT:    vinsertps $49, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload10272; AVX-NEXT:    # xmm3 = zero,xmm3[1,2],mem[0]10273; AVX-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm310274; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm3[5,6,7]10275; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10276; AVX-NEXT:    vmovaps 960(%rdi), %ymm010277; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10278; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm5[1,1],ymm0[2,2],ymm5[5,5],ymm0[6,6]10279; AVX-NEXT:    vperm2f128 {{.*#+}} ymm2 = ymm2[2,3,2,3]10280; AVX-NEXT:    vmovaps 928(%rdi), %xmm010281; AVX-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10282; AVX-NEXT:    vblendps {{.*#+}} xmm3 = xmm0[0],xmm12[1],xmm0[2,3]10283; AVX-NEXT:    vmovaps %xmm12, %xmm610284; AVX-NEXT:    vmovaps %xmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10285; AVX-NEXT:    vshufps {{.*#+}} xmm3 = xmm3[1,0],mem[3,3]10286; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm3[0,1,2],ymm2[3,4,5,6,7]10287; AVX-NEXT:    vmovaps 1056(%rdi), %ymm010288; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10289; AVX-NEXT:    vmovaps 1024(%rdi), %ymm110290; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10291; AVX-NEXT:    vperm2f128 {{.*#+}} ymm5 = ymm1[2,3],ymm0[0,1]10292; AVX-NEXT:    vshufps {{.*#+}} ymm5 = ymm1[0,0],ymm5[3,3],ymm1[4,4],ymm5[7,7]10293; AVX-NEXT:    vextractf128 $1, %ymm5, %xmm510294; AVX-NEXT:    vinsertps {{.*#+}} xmm5 = zero,xmm5[1,2],xmm8[2]10295; AVX-NEXT:    vinsertf128 $1, %xmm5, %ymm0, %ymm510296; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm5[5,6,7]10297; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10298; AVX-NEXT:    vmovaps 1408(%rdi), %ymm010299; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10300; AVX-NEXT:    vshufps {{.*#+}} ymm5 = ymm4[1,1],ymm0[2,2],ymm4[5,5],ymm0[6,6]10301; AVX-NEXT:    vperm2f128 {{.*#+}} ymm5 = ymm5[2,3,2,3]10302; AVX-NEXT:    vmovaps 1376(%rdi), %xmm410303; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload10304; AVX-NEXT:    vblendps {{.*#+}} xmm12 = xmm4[0],xmm3[1],xmm4[2,3]10305; AVX-NEXT:    vshufps {{.*#+}} xmm12 = xmm12[1,0],mem[3,3]10306; AVX-NEXT:    vblendps {{.*#+}} ymm12 = ymm12[0,1,2],ymm5[3,4,5,6,7]10307; AVX-NEXT:    vmovaps 1504(%rdi), %ymm010308; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10309; AVX-NEXT:    vmovaps 1472(%rdi), %ymm110310; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10311; AVX-NEXT:    vperm2f128 {{.*#+}} ymm8 = ymm1[2,3],ymm0[0,1]10312; AVX-NEXT:    vshufps {{.*#+}} ymm8 = ymm1[0,0],ymm8[3,3],ymm1[4,4],ymm8[7,7]10313; AVX-NEXT:    vextractf128 $1, %ymm8, %xmm810314; AVX-NEXT:    vinsertps $49, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8, %xmm8 # 16-byte Folded Reload10315; AVX-NEXT:    # xmm8 = zero,xmm8[1,2],mem[0]10316; AVX-NEXT:    vinsertf128 $1, %xmm8, %ymm0, %ymm810317; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm12[0,1,2,3,4],ymm8[5,6,7]10318; AVX-NEXT:    vmovups %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10319; AVX-NEXT:    vshufps {{.*#+}} xmm8 = xmm10[2,3,2,3]10320; AVX-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8, %xmm8 # 16-byte Folded Reload10321; AVX-NEXT:    # xmm8 = xmm8[0],mem[1],xmm8[2,3]10322; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload10323; AVX-NEXT:    vshufps $199, {{[-0-9]+}}(%r{{[sb]}}p), %ymm12, %ymm12 # 32-byte Folded Reload10324; AVX-NEXT:    # ymm12 = ymm12[3,1],mem[0,3],ymm12[7,5],mem[4,7]10325; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10326; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm0[2,1],ymm12[2,0],ymm0[6,5],ymm12[6,4]10327; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1],ymm12[2,3,4,5,6,7]10328; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload10329; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10330; AVX-NEXT:    vunpcklpd {{.*#+}} ymm12 = ymm0[0],ymm10[0],ymm0[2],ymm10[2]10331; AVX-NEXT:    vextractf128 $1, %ymm12, %xmm1210332; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm12, %xmm12 # 16-byte Folded Reload10333; AVX-NEXT:    # xmm12 = xmm12[0,1,2],mem[3]10334; AVX-NEXT:    vinsertf128 $1, %xmm12, %ymm0, %ymm1210335; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1,2,3,4],ymm12[5,6,7]10336; AVX-NEXT:    vmovups %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10337; AVX-NEXT:    vshufps {{.*#+}} xmm8 = xmm15[2,3,2,3]10338; AVX-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8, %xmm8 # 16-byte Folded Reload10339; AVX-NEXT:    # xmm8 = xmm8[0],mem[1],xmm8[2,3]10340; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload10341; AVX-NEXT:    vshufps $199, {{[-0-9]+}}(%r{{[sb]}}p), %ymm12, %ymm12 # 32-byte Folded Reload10342; AVX-NEXT:    # ymm12 = ymm12[3,1],mem[0,3],ymm12[7,5],mem[4,7]10343; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10344; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm0[2,1],ymm12[2,0],ymm0[6,5],ymm12[6,4]10345; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1],ymm12[2,3,4,5,6,7]10346; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload10347; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10348; AVX-NEXT:    vunpcklpd {{.*#+}} ymm12 = ymm0[0],ymm2[0],ymm0[2],ymm2[2]10349; AVX-NEXT:    vextractf128 $1, %ymm12, %xmm1210350; AVX-NEXT:    vblendps {{.*#+}} xmm12 = xmm12[0,1,2],xmm13[3]10351; AVX-NEXT:    vinsertf128 $1, %xmm12, %ymm0, %ymm1210352; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1,2,3,4],ymm12[5,6,7]10353; AVX-NEXT:    vmovups %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10354; AVX-NEXT:    vshufps {{.*#+}} xmm8 = xmm11[2,3,2,3]10355; AVX-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8, %xmm8 # 16-byte Folded Reload10356; AVX-NEXT:    # xmm8 = xmm8[0],mem[1],xmm8[2,3]10357; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload10358; AVX-NEXT:    vshufps $199, {{[-0-9]+}}(%r{{[sb]}}p), %ymm12, %ymm12 # 32-byte Folded Reload10359; AVX-NEXT:    # ymm12 = ymm12[3,1],mem[0,3],ymm12[7,5],mem[4,7]10360; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10361; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm0[2,1],ymm12[2,0],ymm0[6,5],ymm12[6,4]10362; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1],ymm12[2,3,4,5,6,7]10363; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10364; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10365; AVX-NEXT:    vunpcklpd {{.*#+}} ymm12 = ymm0[0],ymm1[0],ymm0[2],ymm1[2]10366; AVX-NEXT:    vextractf128 $1, %ymm12, %xmm1210367; AVX-NEXT:    vblendps {{.*#+}} xmm12 = xmm12[0,1,2],xmm9[3]10368; AVX-NEXT:    vinsertf128 $1, %xmm12, %ymm0, %ymm1210369; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1,2,3,4],ymm12[5,6,7]10370; AVX-NEXT:    vmovups %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10371; AVX-NEXT:    vshufps {{.*#+}} xmm8 = xmm7[2,3,2,3]10372; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Reload10373; AVX-NEXT:    vblendps {{.*#+}} xmm8 = xmm8[0],xmm13[1],xmm8[2,3]10374; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload10375; AVX-NEXT:    vshufps $199, {{[-0-9]+}}(%r{{[sb]}}p), %ymm12, %ymm12 # 32-byte Folded Reload10376; AVX-NEXT:    # ymm12 = ymm12[3,1],mem[0,3],ymm12[7,5],mem[4,7]10377; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10378; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm0[2,1],ymm12[2,0],ymm0[6,5],ymm12[6,4]10379; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1],ymm12[2,3,4,5,6,7]10380; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload10381; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm15 # 32-byte Reload10382; AVX-NEXT:    vunpcklpd {{.*#+}} ymm12 = ymm15[0],ymm11[0],ymm15[2],ymm11[2]10383; AVX-NEXT:    vextractf128 $1, %ymm12, %xmm1210384; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm12, %xmm12 # 16-byte Folded Reload10385; AVX-NEXT:    # xmm12 = xmm12[0,1,2],mem[3]10386; AVX-NEXT:    vinsertf128 $1, %xmm12, %ymm0, %ymm1210387; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1,2,3,4],ymm12[5,6,7]10388; AVX-NEXT:    vmovups %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10389; AVX-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Folded Reload10390; AVX-NEXT:    # xmm8 = mem[2,3,2,3]10391; AVX-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8, %xmm8 # 16-byte Folded Reload10392; AVX-NEXT:    # xmm8 = xmm8[0],mem[1],xmm8[2,3]10393; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload10394; AVX-NEXT:    vshufps $199, {{[-0-9]+}}(%r{{[sb]}}p), %ymm12, %ymm12 # 32-byte Folded Reload10395; AVX-NEXT:    # ymm12 = ymm12[3,1],mem[0,3],ymm12[7,5],mem[4,7]10396; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10397; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm0[2,1],ymm12[2,0],ymm0[6,5],ymm12[6,4]10398; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1],ymm12[2,3,4,5,6,7]10399; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10400; AVX-NEXT:    vunpcklpd {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm12 # 32-byte Folded Reload10401; AVX-NEXT:    # ymm12 = ymm0[0],mem[0],ymm0[2],mem[2]10402; AVX-NEXT:    vextractf128 $1, %ymm12, %xmm1210403; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm12, %xmm12 # 16-byte Folded Reload10404; AVX-NEXT:    # xmm12 = xmm12[0,1,2],mem[3]10405; AVX-NEXT:    vinsertf128 $1, %xmm12, %ymm0, %ymm1210406; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1,2,3,4],ymm12[5,6,7]10407; AVX-NEXT:    vmovups %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10408; AVX-NEXT:    vshufps {{.*#+}} xmm8 = xmm14[2,3,2,3]10409; AVX-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8, %xmm8 # 16-byte Folded Reload10410; AVX-NEXT:    # xmm8 = xmm8[0],mem[1],xmm8[2,3]10411; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload10412; AVX-NEXT:    vshufps $199, {{[-0-9]+}}(%r{{[sb]}}p), %ymm12, %ymm12 # 32-byte Folded Reload10413; AVX-NEXT:    # ymm12 = ymm12[3,1],mem[0,3],ymm12[7,5],mem[4,7]10414; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10415; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm0[2,1],ymm12[2,0],ymm0[6,5],ymm12[6,4]10416; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1],ymm12[2,3,4,5,6,7]10417; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10418; AVX-NEXT:    vunpcklpd {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm12 # 32-byte Folded Reload10419; AVX-NEXT:    # ymm12 = ymm0[0],mem[0],ymm0[2],mem[2]10420; AVX-NEXT:    vextractf128 $1, %ymm12, %xmm1210421; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm12, %xmm12 # 16-byte Folded Reload10422; AVX-NEXT:    # xmm12 = xmm12[0,1,2],mem[3]10423; AVX-NEXT:    vinsertf128 $1, %xmm12, %ymm0, %ymm1210424; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1,2,3,4],ymm12[5,6,7]10425; AVX-NEXT:    vmovups %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10426; AVX-NEXT:    vshufps {{.*#+}} xmm8 = xmm6[2,3,2,3]10427; AVX-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8, %xmm8 # 16-byte Folded Reload10428; AVX-NEXT:    # xmm8 = xmm8[0],mem[1],xmm8[2,3]10429; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload10430; AVX-NEXT:    vshufps $199, {{[-0-9]+}}(%r{{[sb]}}p), %ymm12, %ymm12 # 32-byte Folded Reload10431; AVX-NEXT:    # ymm12 = ymm12[3,1],mem[0,3],ymm12[7,5],mem[4,7]10432; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload10433; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm14[2,1],ymm12[2,0],ymm14[6,5],ymm12[6,4]10434; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1],ymm12[2,3,4,5,6,7]10435; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10436; AVX-NEXT:    vunpcklpd {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm12 # 32-byte Folded Reload10437; AVX-NEXT:    # ymm12 = ymm0[0],mem[0],ymm0[2],mem[2]10438; AVX-NEXT:    vextractf128 $1, %ymm12, %xmm1210439; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm12, %xmm12 # 16-byte Folded Reload10440; AVX-NEXT:    # xmm12 = xmm12[0,1,2],mem[3]10441; AVX-NEXT:    vinsertf128 $1, %xmm12, %ymm0, %ymm1210442; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1,2,3,4],ymm12[5,6,7]10443; AVX-NEXT:    vmovups %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10444; AVX-NEXT:    vmovaps %xmm3, %xmm910445; AVX-NEXT:    vshufps {{.*#+}} xmm8 = xmm3[2,3,2,3]10446; AVX-NEXT:    vblendps {{.*#+}} xmm8 = xmm8[0],xmm4[1],xmm8[2,3]10447; AVX-NEXT:    vmovaps %xmm4, %xmm610448; AVX-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10449; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload10450; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload10451; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm12[3,1],ymm5[0,3],ymm12[7,5],ymm5[4,7]10452; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload10453; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm4[2,1],ymm12[2,0],ymm4[6,5],ymm12[6,4]10454; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1],ymm12[2,3,4,5,6,7]10455; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload10456; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload10457; AVX-NEXT:    vunpcklpd {{.*#+}} ymm12 = ymm7[0],ymm3[0],ymm7[2],ymm3[2]10458; AVX-NEXT:    vextractf128 $1, %ymm12, %xmm1210459; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm12, %xmm12 # 16-byte Folded Reload10460; AVX-NEXT:    # xmm12 = xmm12[0,1,2],mem[3]10461; AVX-NEXT:    vinsertf128 $1, %xmm12, %ymm0, %ymm1210462; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1,2,3,4],ymm12[5,6,7]10463; AVX-NEXT:    vmovups %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10464; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload10465; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10466; AVX-NEXT:    vshufps {{.*#+}} ymm8 = ymm0[1,0],ymm12[0,0],ymm0[5,4],ymm12[4,4]10467; AVX-NEXT:    vshufps {{.*#+}} ymm8 = ymm12[3,1],ymm8[0,2],ymm12[7,5],ymm8[4,6]10468; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload10469; AVX-NEXT:    vblendps $7, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm12 # 16-byte Folded Reload10470; AVX-NEXT:    # xmm12 = mem[0,1,2],xmm0[3]10471; AVX-NEXT:    vshufps {{.*#+}} xmm12 = xmm12[3,2,2,3]10472; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm12[0,1],ymm8[2,3,4,5,6,7]10473; AVX-NEXT:    vmovaps 416(%rdi), %ymm010474; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10475; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm0[0,1],ymm10[1,3],ymm0[4,5],ymm10[5,7]10476; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10477; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm0[0,2],ymm12[2,0],ymm0[4,6],ymm12[6,4]10478; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1,2,3,4],ymm12[5,6,7]10479; AVX-NEXT:    vmovups %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10480; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload10481; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10482; AVX-NEXT:    vshufps {{.*#+}} ymm8 = ymm0[1,0],ymm12[0,0],ymm0[5,4],ymm12[4,4]10483; AVX-NEXT:    vshufps {{.*#+}} ymm8 = ymm12[3,1],ymm8[0,2],ymm12[7,5],ymm8[4,6]10484; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload10485; AVX-NEXT:    vblendps $7, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm12 # 16-byte Folded Reload10486; AVX-NEXT:    # xmm12 = mem[0,1,2],xmm0[3]10487; AVX-NEXT:    vshufps {{.*#+}} xmm12 = xmm12[3,2,2,3]10488; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm12[0,1],ymm8[2,3,4,5,6,7]10489; AVX-NEXT:    vmovaps 864(%rdi), %ymm010490; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10491; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm0[0,1],ymm2[1,3],ymm0[4,5],ymm2[5,7]10492; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10493; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm0[0,2],ymm12[2,0],ymm0[4,6],ymm12[6,4]10494; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm8[0,1,2,3,4],ymm12[5,6,7]10495; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10496; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload10497; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10498; AVX-NEXT:    vshufps {{.*#+}} ymm8 = ymm0[1,0],ymm2[0,0],ymm0[5,4],ymm2[4,4]10499; AVX-NEXT:    vshufps {{.*#+}} ymm8 = ymm2[3,1],ymm8[0,2],ymm2[7,5],ymm8[4,6]10500; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload10501; AVX-NEXT:    vblendps $7, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm12 # 16-byte Folded Reload10502; AVX-NEXT:    # xmm12 = mem[0,1,2],xmm0[3]10503; AVX-NEXT:    vshufps {{.*#+}} xmm12 = xmm12[3,2,2,3]10504; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm12[0,1],ymm8[2,3,4,5,6,7]10505; AVX-NEXT:    vmovaps 1312(%rdi), %ymm010506; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10507; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm0[0,1],ymm1[1,3],ymm0[4,5],ymm1[5,7]10508; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10509; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm0[0,2],ymm12[2,0],ymm0[4,6],ymm12[6,4]10510; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm8[0,1,2,3,4],ymm12[5,6,7]10511; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10512; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10513; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10514; AVX-NEXT:    vshufps {{.*#+}} ymm8 = ymm0[1,0],ymm1[0,0],ymm0[5,4],ymm1[4,4]10515; AVX-NEXT:    vshufps {{.*#+}} ymm8 = ymm1[3,1],ymm8[0,2],ymm1[7,5],ymm8[4,6]10516; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm13, %xmm12 # 16-byte Folded Reload10517; AVX-NEXT:    # xmm12 = xmm13[0,1,2],mem[3]10518; AVX-NEXT:    vshufps {{.*#+}} xmm12 = xmm12[3,2,2,3]10519; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm12[0,1],ymm8[2,3,4,5,6,7]10520; AVX-NEXT:    vmovaps 1760(%rdi), %ymm010521; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10522; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm0[0,1],ymm11[1,3],ymm0[4,5],ymm11[5,7]10523; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm15[0,2],ymm12[2,0],ymm15[4,6],ymm12[6,4]10524; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm8[0,1,2,3,4],ymm12[5,6,7]10525; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10526; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm5[1,0],ymm4[0,0],ymm5[5,4],ymm4[4,4]10527; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm4[3,1],ymm2[0,2],ymm4[7,5],ymm2[4,6]10528; AVX-NEXT:    vblendps {{.*#+}} xmm4 = xmm6[0,1,2],xmm9[3]10529; AVX-NEXT:    vshufps {{.*#+}} xmm4 = xmm4[3,2,2,3]10530; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm4[0,1],ymm2[2,3,4,5,6,7]10531; AVX-NEXT:    vmovaps 1536(%rdi), %ymm010532; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10533; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm0[0,1],ymm3[1,3],ymm0[4,5],ymm3[5,7]10534; AVX-NEXT:    vmovaps %ymm3, %ymm1510535; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm7[0,2],ymm4[2,0],ymm7[4,6],ymm4[6,4]10536; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2,3,4],ymm4[5,6,7]10537; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10538; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10539; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm1[1,0],ymm14[0,0],ymm1[5,4],ymm14[4,4]10540; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm14[3,1],ymm2[0,2],ymm14[7,5],ymm2[4,6]10541; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Reload10542; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm12, %xmm4 # 16-byte Folded Reload10543; AVX-NEXT:    # xmm4 = xmm12[0,1,2],mem[3]10544; AVX-NEXT:    vshufps {{.*#+}} xmm4 = xmm4[3,2,2,3]10545; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm4[0,1],ymm2[2,3,4,5,6,7]10546; AVX-NEXT:    vmovaps 1088(%rdi), %ymm1110547; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload10548; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm11[0,1],ymm10[1,3],ymm11[4,5],ymm10[5,7]10549; AVX-NEXT:    vmovups %ymm11, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10550; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload10551; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm14[0,2],ymm4[2,0],ymm14[4,6],ymm4[6,4]10552; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2,3,4],ymm4[5,6,7]10553; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10554; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10555; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10556; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm1[1,0],ymm0[0,0],ymm1[5,4],ymm0[4,4]10557; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm0[3,1],ymm2[0,2],ymm0[7,5],ymm2[4,6]10558; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload10559; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9, %xmm4 # 16-byte Folded Reload10560; AVX-NEXT:    # xmm4 = xmm9[0,1,2],mem[3]10561; AVX-NEXT:    vshufps {{.*#+}} xmm4 = xmm4[3,2,2,3]10562; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm4[0,1],ymm2[2,3,4,5,6,7]10563; AVX-NEXT:    vmovaps 640(%rdi), %ymm810564; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload10565; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm8[0,1],ymm5[1,3],ymm8[4,5],ymm5[5,7]10566; AVX-NEXT:    vmovups %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10567; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload10568; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm3[0,2],ymm4[2,0],ymm3[4,6],ymm4[6,4]10569; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2,3,4],ymm4[5,6,7]10570; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10571; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10572; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10573; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm1[1,0],ymm0[0,0],ymm1[5,4],ymm0[4,4]10574; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm0[3,1],ymm2[0,2],ymm0[7,5],ymm2[4,6]10575; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload10576; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm6, %xmm4 # 16-byte Folded Reload10577; AVX-NEXT:    # xmm4 = xmm6[0,1,2],mem[3]10578; AVX-NEXT:    vshufps {{.*#+}} xmm4 = xmm4[3,2,2,3]10579; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1],ymm2[2,3,4,5,6,7]10580; AVX-NEXT:    vmovaps 192(%rdi), %ymm1310581; AVX-NEXT:    vmovups %ymm13, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10582; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10583; AVX-NEXT:    vshufps {{.*#+}} ymm7 = ymm13[0,1],ymm1[1,3],ymm13[4,5],ymm1[5,7]10584; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload10585; AVX-NEXT:    vshufps {{.*#+}} ymm7 = ymm2[0,2],ymm7[2,0],ymm2[4,6],ymm7[6,4]10586; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm4[0,1,2,3,4],ymm7[5,6,7]10587; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10588; AVX-NEXT:    vperm2f128 {{.*#+}} ymm4 = ymm2[2,3,0,1]10589; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm2[3,0],ymm4[0,0],ymm2[7,4],ymm4[4,4]10590; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm13[1,0],ymm1[2,0],ymm13[5,4],ymm1[6,4]10591; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[2,0],ymm4[2,0],ymm0[6,4],ymm4[6,4]10592; AVX-NEXT:    vmovaps 64(%rdi), %xmm210593; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10594; AVX-NEXT:    vmovaps 96(%rdi), %xmm110595; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10596; AVX-NEXT:    vshufps {{.*#+}} xmm4 = xmm1[0,1,0,1]10597; AVX-NEXT:    vblendps {{.*#+}} xmm4 = xmm2[0,1,2],xmm4[3]10598; AVX-NEXT:    vshufps {{.*#+}} xmm6 = xmm6[2,3,2,3]10599; AVX-NEXT:    vblendps {{.*#+}} xmm6 = mem[0],xmm6[1],mem[2,3]10600; AVX-NEXT:    vblendps {{.*#+}} xmm4 = xmm6[0,1],xmm4[2,3]10601; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm4[0,1,2,3],ymm0[4,5,6,7]10602; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10603; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10604; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm1[2,3,0,1]10605; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm1[3,0],ymm0[0,0],ymm1[7,4],ymm0[4,4]10606; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload10607; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 32-byte Reload10608; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm13[1,0],ymm7[2,0],ymm13[5,4],ymm7[6,4]10609; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[2,0],ymm4[2,0],ymm0[6,4],ymm4[6,4]10610; AVX-NEXT:    vmovaps 320(%rdi), %xmm110611; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10612; AVX-NEXT:    vshufps {{.*#+}} xmm4 = xmm1[0,1,0,1]10613; AVX-NEXT:    vmovaps 288(%rdi), %xmm110614; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10615; AVX-NEXT:    vblendps {{.*#+}} xmm4 = xmm1[0,1,2],xmm4[3]10616; AVX-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Folded Reload10617; AVX-NEXT:    # xmm6 = mem[2,3,2,3]10618; AVX-NEXT:    vblendps {{.*#+}} xmm6 = mem[0],xmm6[1],mem[2,3]10619; AVX-NEXT:    vblendps {{.*#+}} xmm4 = xmm6[0,1],xmm4[2,3]10620; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm4[0,1,2,3],ymm0[4,5,6,7]10621; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10622; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm3[2,3,0,1]10623; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm3[3,0],ymm0[0,0],ymm3[7,4],ymm0[4,4]10624; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm8[1,0],ymm5[2,0],ymm8[5,4],ymm5[6,4]10625; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[2,0],ymm1[2,0],ymm0[6,4],ymm1[6,4]10626; AVX-NEXT:    vmovaps 544(%rdi), %xmm110627; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10628; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,0,1]10629; AVX-NEXT:    vmovaps 512(%rdi), %xmm610630; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm6[0,1,2],xmm1[3]10631; AVX-NEXT:    vshufps {{.*#+}} xmm4 = xmm9[2,3,2,3]10632; AVX-NEXT:    vblendps {{.*#+}} xmm4 = mem[0],xmm4[1],mem[2,3]10633; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm4[0,1],xmm1[2,3]10634; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3],ymm0[4,5,6,7]10635; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10636; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10637; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm1[2,3,0,1]10638; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm1[3,0],ymm0[0,0],ymm1[7,4],ymm0[4,4]10639; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10640; AVX-NEXT:    vshufps $33, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload10641; AVX-NEXT:    # ymm1 = ymm1[1,0],mem[2,0],ymm1[5,4],mem[6,4]10642; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[2,0],ymm1[2,0],ymm0[6,4],ymm1[6,4]10643; AVX-NEXT:    vmovaps 768(%rdi), %xmm110644; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10645; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,0,1]10646; AVX-NEXT:    vmovaps 736(%rdi), %xmm410647; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm4[0,1,2],xmm1[3]10648; AVX-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload10649; AVX-NEXT:    # xmm9 = mem[2,3,2,3]10650; AVX-NEXT:    vblendps {{.*#+}} xmm9 = mem[0],xmm9[1],mem[2,3]10651; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm9[0,1],xmm1[2,3]10652; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3],ymm0[4,5,6,7]10653; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10654; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm14[2,3,0,1]10655; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm14[3,0],ymm0[0,0],ymm14[7,4],ymm0[4,4]10656; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm11[1,0],ymm10[2,0],ymm11[5,4],ymm10[6,4]10657; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[2,0],ymm1[2,0],ymm0[6,4],ymm1[6,4]10658; AVX-NEXT:    vmovaps 992(%rdi), %xmm110659; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10660; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,0,1]10661; AVX-NEXT:    vmovaps 960(%rdi), %xmm310662; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm3[0,1,2],xmm1[3]10663; AVX-NEXT:    vshufps {{.*#+}} xmm9 = xmm12[2,3,2,3]10664; AVX-NEXT:    vblendps {{.*#+}} xmm9 = mem[0],xmm9[1],mem[2,3]10665; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm9[0,1],xmm1[2,3]10666; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3],ymm0[4,5,6,7]10667; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10668; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10669; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm1[2,3,0,1]10670; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm1[3,0],ymm0[0,0],ymm1[7,4],ymm0[4,4]10671; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload10672; AVX-NEXT:    vshufps $33, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11, %ymm1 # 32-byte Folded Reload10673; AVX-NEXT:    # ymm1 = ymm11[1,0],mem[2,0],ymm11[5,4],mem[6,4]10674; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[2,0],ymm1[2,0],ymm0[6,4],ymm1[6,4]10675; AVX-NEXT:    vmovaps 1216(%rdi), %xmm110676; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10677; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,0,1]10678; AVX-NEXT:    vmovaps 1184(%rdi), %xmm210679; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10680; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm2[0,1,2],xmm1[3]10681; AVX-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Folded Reload10682; AVX-NEXT:    # xmm14 = mem[2,3,2,3]10683; AVX-NEXT:    vblendps {{.*#+}} xmm14 = mem[0],xmm14[1],mem[2,3]10684; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm14[0,1],xmm1[2,3]10685; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3],ymm0[4,5,6,7]10686; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10687; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10688; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm1[2,3,0,1]10689; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm1[3,0],ymm0[0,0],ymm1[7,4],ymm0[4,4]10690; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10691; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,0],ymm15[2,0],ymm1[5,4],ymm15[6,4]10692; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[2,0],ymm1[2,0],ymm0[6,4],ymm1[6,4]10693; AVX-NEXT:    vmovaps 1440(%rdi), %xmm110694; AVX-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10695; AVX-NEXT:    vshufps {{.*#+}} xmm14 = xmm1[0,1,0,1]10696; AVX-NEXT:    vmovaps 1408(%rdi), %xmm110697; AVX-NEXT:    vblendps {{.*#+}} xmm14 = xmm1[0,1,2],xmm14[3]10698; AVX-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Folded Reload10699; AVX-NEXT:    # xmm10 = mem[2,3,2,3]10700; AVX-NEXT:    vblendps {{.*#+}} xmm10 = mem[0],xmm10[1],mem[2,3]10701; AVX-NEXT:    vblendps {{.*#+}} xmm10 = xmm10[0,1],xmm14[2,3]10702; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm10[0,1,2,3],ymm0[4,5,6,7]10703; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10704; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload10705; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm2[2,3,0,1]10706; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm2[3,0],ymm0[0,0],ymm2[7,4],ymm0[4,4]10707; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload10708; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm15 # 32-byte Reload10709; AVX-NEXT:    vshufps {{.*#+}} ymm10 = ymm5[1,0],ymm15[2,0],ymm5[5,4],ymm15[6,4]10710; AVX-NEXT:    vshufps {{.*#+}} ymm10 = ymm0[2,0],ymm10[2,0],ymm0[6,4],ymm10[6,4]10711; AVX-NEXT:    vmovaps 1664(%rdi), %xmm010712; AVX-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10713; AVX-NEXT:    vshufps {{.*#+}} xmm14 = xmm0[0,1,0,1]10714; AVX-NEXT:    vmovaps 1632(%rdi), %xmm010715; AVX-NEXT:    vblendps {{.*#+}} xmm14 = xmm0[0,1,2],xmm14[3]10716; AVX-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload10717; AVX-NEXT:    # xmm9 = mem[2,3,2,3]10718; AVX-NEXT:    vblendps {{.*#+}} xmm9 = mem[0],xmm9[1],mem[2,3]10719; AVX-NEXT:    vblendps {{.*#+}} xmm9 = xmm9[0,1],xmm14[2,3]10720; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm9[0,1,2,3],ymm10[4,5,6,7]10721; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10722; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload10723; AVX-NEXT:    vshufps $246, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2, %ymm9 # 32-byte Folded Reload10724; AVX-NEXT:    # ymm9 = ymm2[2,1],mem[3,3],ymm2[6,5],mem[7,7]10725; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload10726; AVX-NEXT:    vblendps $13, {{[-0-9]+}}(%r{{[sb]}}p), %xmm2, %xmm10 # 16-byte Folded Reload10727; AVX-NEXT:    # xmm10 = mem[0],xmm2[1],mem[2,3]10728; AVX-NEXT:    vinsertf128 $1, %xmm10, %ymm0, %ymm1010729; AVX-NEXT:    vshufps {{.*#+}} ymm9 = ymm10[1,0],ymm9[2,0],ymm10[5,4],ymm9[6,4]10730; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload10731; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm14, %xmm8 # 16-byte Folded Reload10732; AVX-NEXT:    # xmm8 = xmm14[0,1,2],mem[3]10733; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload10734; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload10735; AVX-NEXT:    vshufps {{.*#+}} ymm10 = ymm2[0,0],ymm12[1,0],ymm2[4,4],ymm12[5,4]10736; AVX-NEXT:    vextractf128 $1, %ymm10, %xmm1010737; AVX-NEXT:    vshufps {{.*#+}} xmm8 = xmm10[2,0],xmm8[3,2]10738; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1,2,3],ymm9[4,5,6,7]10739; AVX-NEXT:    vmovups %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10740; AVX-NEXT:    vshufps {{.*#+}} ymm8 = ymm13[2,1],ymm7[3,3],ymm13[6,5],ymm7[7,7]10741; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload10742; AVX-NEXT:    vblendps $13, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9, %xmm9 # 16-byte Folded Reload10743; AVX-NEXT:    # xmm9 = mem[0],xmm9[1],mem[2,3]10744; AVX-NEXT:    vinsertf128 $1, %xmm9, %ymm0, %ymm910745; AVX-NEXT:    vshufps {{.*#+}} ymm8 = ymm9[1,0],ymm8[2,0],ymm9[5,4],ymm8[6,4]10746; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload10747; AVX-NEXT:    vblendps $7, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7, %xmm7 # 16-byte Folded Reload10748; AVX-NEXT:    # xmm7 = mem[0,1,2],xmm7[3]10749; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 32-byte Reload10750; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload10751; AVX-NEXT:    vshufps {{.*#+}} ymm9 = ymm10[0,0],ymm13[1,0],ymm10[4,4],ymm13[5,4]10752; AVX-NEXT:    vextractf128 $1, %ymm9, %xmm910753; AVX-NEXT:    vshufps {{.*#+}} xmm7 = xmm9[2,0],xmm7[3,2]10754; AVX-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3],ymm8[4,5,6,7]10755; AVX-NEXT:    vmovups %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10756; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload10757; AVX-NEXT:    vshufps $246, {{[-0-9]+}}(%r{{[sb]}}p), %ymm7, %ymm7 # 32-byte Folded Reload10758; AVX-NEXT:    # ymm7 = ymm7[2,1],mem[3,3],ymm7[6,5],mem[7,7]10759; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload10760; AVX-NEXT:    vblendps $13, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8, %xmm8 # 16-byte Folded Reload10761; AVX-NEXT:    # xmm8 = mem[0],xmm8[1],mem[2,3]10762; AVX-NEXT:    vinsertf128 $1, %xmm8, %ymm0, %ymm810763; AVX-NEXT:    vshufps {{.*#+}} ymm7 = ymm8[1,0],ymm7[2,0],ymm8[5,4],ymm7[6,4]10764; AVX-NEXT:    vblendps $7, {{[-0-9]+}}(%r{{[sb]}}p), %xmm6, %xmm6 # 16-byte Folded Reload10765; AVX-NEXT:    # xmm6 = mem[0,1,2],xmm6[3]10766; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload10767; AVX-NEXT:    vshufps $16, {{[-0-9]+}}(%r{{[sb]}}p), %ymm9, %ymm8 # 32-byte Folded Reload10768; AVX-NEXT:    # ymm8 = ymm9[0,0],mem[1,0],ymm9[4,4],mem[5,4]10769; AVX-NEXT:    vextractf128 $1, %ymm8, %xmm810770; AVX-NEXT:    vshufps {{.*#+}} xmm6 = xmm8[2,0],xmm6[3,2]10771; AVX-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3],ymm7[4,5,6,7]10772; AVX-NEXT:    vmovups %ymm6, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10773; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload10774; AVX-NEXT:    vshufps $246, {{[-0-9]+}}(%r{{[sb]}}p), %ymm6, %ymm6 # 32-byte Folded Reload10775; AVX-NEXT:    # ymm6 = ymm6[2,1],mem[3,3],ymm6[6,5],mem[7,7]10776; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload10777; AVX-NEXT:    vblendps $13, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7, %xmm7 # 16-byte Folded Reload10778; AVX-NEXT:    # xmm7 = mem[0],xmm7[1],mem[2,3]10779; AVX-NEXT:    vinsertf128 $1, %xmm7, %ymm0, %ymm710780; AVX-NEXT:    vshufps {{.*#+}} ymm6 = ymm7[1,0],ymm6[2,0],ymm7[5,4],ymm6[6,4]10781; AVX-NEXT:    vblendps $7, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4, %xmm4 # 16-byte Folded Reload10782; AVX-NEXT:    # xmm4 = mem[0,1,2],xmm4[3]10783; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Reload10784; AVX-NEXT:    vshufps $16, {{[-0-9]+}}(%r{{[sb]}}p), %ymm8, %ymm7 # 32-byte Folded Reload10785; AVX-NEXT:    # ymm7 = ymm8[0,0],mem[1,0],ymm8[4,4],mem[5,4]10786; AVX-NEXT:    vextractf128 $1, %ymm7, %xmm710787; AVX-NEXT:    vshufps {{.*#+}} xmm4 = xmm7[2,0],xmm4[3,2]10788; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3],ymm6[4,5,6,7]10789; AVX-NEXT:    vmovups %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10790; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload10791; AVX-NEXT:    vshufps $246, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm4 # 32-byte Folded Reload10792; AVX-NEXT:    # ymm4 = ymm4[2,1],mem[3,3],ymm4[6,5],mem[7,7]10793; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload10794; AVX-NEXT:    vblendps $13, {{[-0-9]+}}(%r{{[sb]}}p), %xmm6, %xmm6 # 16-byte Folded Reload10795; AVX-NEXT:    # xmm6 = mem[0],xmm6[1],mem[2,3]10796; AVX-NEXT:    vinsertf128 $1, %xmm6, %ymm0, %ymm610797; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm6[1,0],ymm4[2,0],ymm6[5,4],ymm4[6,4]10798; AVX-NEXT:    vblendps $7, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload10799; AVX-NEXT:    # xmm3 = mem[0,1,2],xmm3[3]10800; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload10801; AVX-NEXT:    vshufps $16, {{[-0-9]+}}(%r{{[sb]}}p), %ymm7, %ymm6 # 32-byte Folded Reload10802; AVX-NEXT:    # ymm6 = ymm7[0,0],mem[1,0],ymm7[4,4],mem[5,4]10803; AVX-NEXT:    vextractf128 $1, %ymm6, %xmm610804; AVX-NEXT:    vshufps {{.*#+}} xmm3 = xmm6[2,0],xmm3[3,2]10805; AVX-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3],ymm4[4,5,6,7]10806; AVX-NEXT:    vmovups %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10807; AVX-NEXT:    vshufps $246, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11, %ymm3 # 32-byte Folded Reload10808; AVX-NEXT:    # ymm3 = ymm11[2,1],mem[3,3],ymm11[6,5],mem[7,7]10809; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload10810; AVX-NEXT:    vblendps $13, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4, %xmm4 # 16-byte Folded Reload10811; AVX-NEXT:    # xmm4 = mem[0],xmm4[1],mem[2,3]10812; AVX-NEXT:    vinsertf128 $1, %xmm4, %ymm0, %ymm410813; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm4[1,0],ymm3[2,0],ymm4[5,4],ymm3[6,4]10814; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm11 # 16-byte Reload10815; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm11, %xmm4 # 16-byte Folded Reload10816; AVX-NEXT:    # xmm4 = xmm11[0,1,2],mem[3]10817; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload10818; AVX-NEXT:    vshufps $16, {{[-0-9]+}}(%r{{[sb]}}p), %ymm6, %ymm6 # 32-byte Folded Reload10819; AVX-NEXT:    # ymm6 = ymm6[0,0],mem[1,0],ymm6[4,4],mem[5,4]10820; AVX-NEXT:    vextractf128 $1, %ymm6, %xmm610821; AVX-NEXT:    vshufps {{.*#+}} xmm4 = xmm6[2,0],xmm4[3,2]10822; AVX-NEXT:    vblendps {{.*#+}} ymm3 = ymm4[0,1,2,3],ymm3[4,5,6,7]10823; AVX-NEXT:    vmovups %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10824; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload10825; AVX-NEXT:    vshufps $246, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload10826; AVX-NEXT:    # ymm3 = ymm3[2,1],mem[3,3],ymm3[6,5],mem[7,7]10827; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload10828; AVX-NEXT:    vblendps $13, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4, %xmm4 # 16-byte Folded Reload10829; AVX-NEXT:    # xmm4 = mem[0],xmm4[1],mem[2,3]10830; AVX-NEXT:    vinsertf128 $1, %xmm4, %ymm0, %ymm410831; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm4[1,0],ymm3[2,0],ymm4[5,4],ymm3[6,4]10832; AVX-NEXT:    vblendps $7, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload10833; AVX-NEXT:    # xmm1 = mem[0,1,2],xmm1[3]10834; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload10835; AVX-NEXT:    vshufps $16, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm4 # 32-byte Folded Reload10836; AVX-NEXT:    # ymm4 = ymm4[0,0],mem[1,0],ymm4[4,4],mem[5,4]10837; AVX-NEXT:    vextractf128 $1, %ymm4, %xmm410838; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm4[2,0],xmm1[3,2]10839; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm3[4,5,6,7]10840; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10841; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm5[2,1],ymm15[3,3],ymm5[6,5],ymm15[7,7]10842; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload10843; AVX-NEXT:    vblendps $13, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload10844; AVX-NEXT:    # xmm3 = mem[0],xmm3[1],mem[2,3]10845; AVX-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm310846; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm3[1,0],ymm1[2,0],ymm3[5,4],ymm1[6,4]10847; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Reload10848; AVX-NEXT:    vblendps {{.*#+}} xmm0 = xmm15[0,1,2],xmm0[3]10849; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload10850; AVX-NEXT:    vshufps $16, {{[-0-9]+}}(%r{{[sb]}}p), %ymm6, %ymm3 # 32-byte Folded Reload10851; AVX-NEXT:    # ymm3 = ymm6[0,0],mem[1,0],ymm6[4,4],mem[5,4]10852; AVX-NEXT:    vextractf128 $1, %ymm3, %xmm310853; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm3[2,0],xmm0[3,2]10854; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]10855; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10856; AVX-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload10857; AVX-NEXT:    # xmm0 = mem[0,1,0,1]10858; AVX-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0,1,2],xmm14[3]10859; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm2[1,0],ymm12[2,0],ymm2[5,4],ymm12[6,4]10860; AVX-NEXT:    vextractf128 $1, %ymm3, %xmm310861; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm3[2,0],xmm0[2,3]10862; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10863; AVX-NEXT:    vperm2f128 {{.*#+}} ymm3 = ymm1[2,3,0,1]10864; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm1[3,0],ymm3[0,0],ymm1[7,4],ymm3[4,4]10865; AVX-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Folded Reload10866; AVX-NEXT:    # xmm3 = mem[2,3,2,3]10867; AVX-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload10868; AVX-NEXT:    # xmm3 = xmm3[0],mem[1],xmm3[2,3]10869; AVX-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm310870; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm3[0,1],ymm2[2,0],ymm3[4,5],ymm2[6,4]10871; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm0[0,1,2,3],ymm2[4,5,6,7]10872; AVX-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload10873; AVX-NEXT:    # xmm0 = mem[0,1,0,1]10874; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload10875; AVX-NEXT:    # xmm0 = xmm0[0,1,2],mem[3]10876; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm10[1,0],ymm13[2,0],ymm10[5,4],ymm13[6,4]10877; AVX-NEXT:    vextractf128 $1, %ymm3, %xmm310878; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm3[2,0],xmm0[2,3]10879; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10880; AVX-NEXT:    vperm2f128 {{.*#+}} ymm3 = ymm1[2,3,0,1]10881; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm1[3,0],ymm3[0,0],ymm1[7,4],ymm3[4,4]10882; AVX-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload10883; AVX-NEXT:    # xmm4 = mem[2,3,2,3]10884; AVX-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4, %xmm4 # 16-byte Folded Reload10885; AVX-NEXT:    # xmm4 = xmm4[0],mem[1],xmm4[2,3]10886; AVX-NEXT:    vinsertf128 $1, %xmm4, %ymm0, %ymm410887; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm4[0,1],ymm3[2,0],ymm4[4,5],ymm3[6,4]10888; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm0[0,1,2,3],ymm3[4,5,6,7]10889; AVX-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload10890; AVX-NEXT:    # xmm0 = mem[0,1,0,1]10891; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload10892; AVX-NEXT:    # xmm0 = xmm0[0,1,2],mem[3]10893; AVX-NEXT:    vshufps $33, {{[-0-9]+}}(%r{{[sb]}}p), %ymm9, %ymm3 # 32-byte Folded Reload10894; AVX-NEXT:    # ymm3 = ymm9[1,0],mem[2,0],ymm9[5,4],mem[6,4]10895; AVX-NEXT:    vextractf128 $1, %ymm3, %xmm310896; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm3[2,0],xmm0[2,3]10897; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload10898; AVX-NEXT:    vperm2f128 {{.*#+}} ymm3 = ymm4[2,3,0,1]10899; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm4[3,0],ymm3[0,0],ymm4[7,4],ymm3[4,4]10900; AVX-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload10901; AVX-NEXT:    # xmm4 = mem[2,3,2,3]10902; AVX-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4, %xmm4 # 16-byte Folded Reload10903; AVX-NEXT:    # xmm4 = xmm4[0],mem[1],xmm4[2,3]10904; AVX-NEXT:    vinsertf128 $1, %xmm4, %ymm0, %ymm410905; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm4[0,1],ymm3[2,0],ymm4[4,5],ymm3[6,4]10906; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm3[4,5,6,7]10907; AVX-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Folded Reload10908; AVX-NEXT:    # xmm3 = mem[0,1,0,1]10909; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload10910; AVX-NEXT:    # xmm3 = xmm3[0,1,2],mem[3]10911; AVX-NEXT:    vshufps $33, {{[-0-9]+}}(%r{{[sb]}}p), %ymm8, %ymm4 # 32-byte Folded Reload10912; AVX-NEXT:    # ymm4 = ymm8[1,0],mem[2,0],ymm8[5,4],mem[6,4]10913; AVX-NEXT:    vextractf128 $1, %ymm4, %xmm410914; AVX-NEXT:    vshufps {{.*#+}} xmm3 = xmm4[2,0],xmm3[2,3]10915; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload10916; AVX-NEXT:    vperm2f128 {{.*#+}} ymm4 = ymm5[2,3,0,1]10917; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm5[3,0],ymm4[0,0],ymm5[7,4],ymm4[4,4]10918; AVX-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Folded Reload10919; AVX-NEXT:    # xmm8 = mem[2,3,2,3]10920; AVX-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8, %xmm8 # 16-byte Folded Reload10921; AVX-NEXT:    # xmm8 = xmm8[0],mem[1],xmm8[2,3]10922; AVX-NEXT:    vinsertf128 $1, %xmm8, %ymm0, %ymm810923; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm8[0,1],ymm4[2,0],ymm8[4,5],ymm4[6,4]10924; AVX-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3],ymm4[4,5,6,7]10925; AVX-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload10926; AVX-NEXT:    # xmm4 = mem[0,1,0,1]10927; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4, %xmm4 # 16-byte Folded Reload10928; AVX-NEXT:    # xmm4 = xmm4[0,1,2],mem[3]10929; AVX-NEXT:    vshufps $33, {{[-0-9]+}}(%r{{[sb]}}p), %ymm7, %ymm8 # 32-byte Folded Reload10930; AVX-NEXT:    # ymm8 = ymm7[1,0],mem[2,0],ymm7[5,4],mem[6,4]10931; AVX-NEXT:    vextractf128 $1, %ymm8, %xmm810932; AVX-NEXT:    vshufps {{.*#+}} xmm4 = xmm8[2,0],xmm4[2,3]10933; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload10934; AVX-NEXT:    vperm2f128 {{.*#+}} ymm8 = ymm5[2,3,0,1]10935; AVX-NEXT:    vshufps {{.*#+}} ymm8 = ymm5[3,0],ymm8[0,0],ymm5[7,4],ymm8[4,4]10936; AVX-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload10937; AVX-NEXT:    # xmm9 = mem[2,3,2,3]10938; AVX-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9, %xmm9 # 16-byte Folded Reload10939; AVX-NEXT:    # xmm9 = xmm9[0],mem[1],xmm9[2,3]10940; AVX-NEXT:    vinsertf128 $1, %xmm9, %ymm0, %ymm910941; AVX-NEXT:    vshufps {{.*#+}} ymm8 = ymm9[0,1],ymm8[2,0],ymm9[4,5],ymm8[6,4]10942; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm4[0,1,2,3],ymm8[4,5,6,7]10943; AVX-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload10944; AVX-NEXT:    # xmm4 = mem[0,1,0,1]10945; AVX-NEXT:    vblendps {{.*#+}} xmm4 = xmm4[0,1,2],xmm11[3]10946; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload10947; AVX-NEXT:    vshufps $33, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5, %ymm9 # 32-byte Folded Reload10948; AVX-NEXT:    # ymm9 = ymm5[1,0],mem[2,0],ymm5[5,4],mem[6,4]10949; AVX-NEXT:    vextractf128 $1, %ymm9, %xmm910950; AVX-NEXT:    vshufps {{.*#+}} xmm4 = xmm9[2,0],xmm4[2,3]10951; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload10952; AVX-NEXT:    vperm2f128 {{.*#+}} ymm9 = ymm5[2,3,0,1]10953; AVX-NEXT:    vshufps {{.*#+}} ymm9 = ymm5[3,0],ymm9[0,0],ymm5[7,4],ymm9[4,4]10954; AVX-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Folded Reload10955; AVX-NEXT:    # xmm10 = mem[2,3,2,3]10956; AVX-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm10, %xmm10 # 16-byte Folded Reload10957; AVX-NEXT:    # xmm10 = xmm10[0],mem[1],xmm10[2,3]10958; AVX-NEXT:    vinsertf128 $1, %xmm10, %ymm0, %ymm1010959; AVX-NEXT:    vshufps {{.*#+}} ymm9 = ymm10[0,1],ymm9[2,0],ymm10[4,5],ymm9[6,4]10960; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3],ymm9[4,5,6,7]10961; AVX-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload10962; AVX-NEXT:    # xmm9 = mem[0,1,0,1]10963; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9, %xmm5 # 16-byte Folded Reload10964; AVX-NEXT:    # xmm5 = xmm9[0,1,2],mem[3]10965; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload10966; AVX-NEXT:    vshufps $33, {{[-0-9]+}}(%r{{[sb]}}p), %ymm7, %ymm9 # 32-byte Folded Reload10967; AVX-NEXT:    # ymm9 = ymm7[1,0],mem[2,0],ymm7[5,4],mem[6,4]10968; AVX-NEXT:    vextractf128 $1, %ymm9, %xmm910969; AVX-NEXT:    vshufps {{.*#+}} xmm5 = xmm9[2,0],xmm5[2,3]10970; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload10971; AVX-NEXT:    vperm2f128 {{.*#+}} ymm9 = ymm7[2,3,0,1]10972; AVX-NEXT:    vshufps {{.*#+}} ymm9 = ymm7[3,0],ymm9[0,0],ymm7[7,4],ymm9[4,4]10973; AVX-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Folded Reload10974; AVX-NEXT:    # xmm10 = mem[2,3,2,3]10975; AVX-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm10, %xmm10 # 16-byte Folded Reload10976; AVX-NEXT:    # xmm10 = xmm10[0],mem[1],xmm10[2,3]10977; AVX-NEXT:    vinsertf128 $1, %xmm10, %ymm0, %ymm1010978; AVX-NEXT:    vshufps {{.*#+}} ymm9 = ymm10[0,1],ymm9[2,0],ymm10[4,5],ymm9[6,4]10979; AVX-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3],ymm9[4,5,6,7]10980; AVX-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload10981; AVX-NEXT:    # xmm9 = mem[0,1,0,1]10982; AVX-NEXT:    vblendps {{.*#+}} xmm9 = xmm9[0,1,2],xmm15[3]10983; AVX-NEXT:    vshufps $33, {{[-0-9]+}}(%r{{[sb]}}p), %ymm6, %ymm10 # 32-byte Folded Reload10984; AVX-NEXT:    # ymm10 = ymm6[1,0],mem[2,0],ymm6[5,4],mem[6,4]10985; AVX-NEXT:    vextractf128 $1, %ymm10, %xmm1010986; AVX-NEXT:    vshufps {{.*#+}} xmm9 = xmm10[2,0],xmm9[2,3]10987; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload10988; AVX-NEXT:    vperm2f128 {{.*#+}} ymm10 = ymm6[2,3,0,1]10989; AVX-NEXT:    vshufps {{.*#+}} ymm10 = ymm6[3,0],ymm10[0,0],ymm6[7,4],ymm10[4,4]10990; AVX-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Folded Reload10991; AVX-NEXT:    # xmm12 = mem[2,3,2,3]10992; AVX-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm12, %xmm12 # 16-byte Folded Reload10993; AVX-NEXT:    # xmm12 = xmm12[0],mem[1],xmm12[2,3]10994; AVX-NEXT:    vinsertf128 $1, %xmm12, %ymm0, %ymm1210995; AVX-NEXT:    vshufps {{.*#+}} ymm10 = ymm12[0,1],ymm10[2,0],ymm12[4,5],ymm10[6,4]10996; AVX-NEXT:    vblendps {{.*#+}} ymm9 = ymm9[0,1,2,3],ymm10[4,5,6,7]10997; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload10998; AVX-NEXT:    vmovaps %ymm6, 192(%rsi)10999; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11000; AVX-NEXT:    vmovaps %ymm6, 128(%rsi)11001; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11002; AVX-NEXT:    vmovaps %ymm6, 64(%rsi)11003; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11004; AVX-NEXT:    vmovaps %ymm6, (%rsi)11005; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11006; AVX-NEXT:    vmovaps %ymm6, 224(%rsi)11007; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload11008; AVX-NEXT:    vmovaps %ymm10, 160(%rsi)11009; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload11010; AVX-NEXT:    vmovaps %ymm10, 96(%rsi)11011; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload11012; AVX-NEXT:    vmovaps %ymm10, 32(%rsi)11013; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11014; AVX-NEXT:    vmovaps %ymm6, 192(%rdx)11015; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11016; AVX-NEXT:    vmovaps %ymm6, 128(%rdx)11017; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11018; AVX-NEXT:    vmovaps %ymm6, 64(%rdx)11019; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11020; AVX-NEXT:    vmovaps %ymm6, (%rdx)11021; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11022; AVX-NEXT:    vmovaps %ymm6, 224(%rdx)11023; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11024; AVX-NEXT:    vmovaps %ymm6, 160(%rdx)11025; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11026; AVX-NEXT:    vmovaps %ymm6, 96(%rdx)11027; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11028; AVX-NEXT:    vmovaps %ymm6, 32(%rdx)11029; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11030; AVX-NEXT:    vmovaps %ymm6, 192(%rcx)11031; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11032; AVX-NEXT:    vmovaps %ymm6, 128(%rcx)11033; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11034; AVX-NEXT:    vmovaps %ymm6, 64(%rcx)11035; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11036; AVX-NEXT:    vmovaps %ymm6, (%rcx)11037; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11038; AVX-NEXT:    vmovaps %ymm6, 224(%rcx)11039; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11040; AVX-NEXT:    vmovaps %ymm6, 160(%rcx)11041; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11042; AVX-NEXT:    vmovaps %ymm6, 96(%rcx)11043; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11044; AVX-NEXT:    vmovaps %ymm6, 32(%rcx)11045; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11046; AVX-NEXT:    vmovaps %ymm6, (%r8)11047; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11048; AVX-NEXT:    vmovaps %ymm6, 64(%r8)11049; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11050; AVX-NEXT:    vmovaps %ymm6, 128(%r8)11051; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11052; AVX-NEXT:    vmovaps %ymm6, 192(%r8)11053; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11054; AVX-NEXT:    vmovaps %ymm6, 224(%r8)11055; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11056; AVX-NEXT:    vmovaps %ymm6, 160(%r8)11057; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11058; AVX-NEXT:    vmovaps %ymm6, 96(%r8)11059; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11060; AVX-NEXT:    vmovaps %ymm6, 32(%r8)11061; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11062; AVX-NEXT:    vmovaps %ymm6, 224(%r9)11063; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11064; AVX-NEXT:    vmovaps %ymm6, 192(%r9)11065; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11066; AVX-NEXT:    vmovaps %ymm6, 160(%r9)11067; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11068; AVX-NEXT:    vmovaps %ymm6, 128(%r9)11069; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11070; AVX-NEXT:    vmovaps %ymm6, 96(%r9)11071; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11072; AVX-NEXT:    vmovaps %ymm6, 64(%r9)11073; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11074; AVX-NEXT:    vmovaps %ymm6, 32(%r9)11075; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11076; AVX-NEXT:    vmovaps %ymm6, (%r9)11077; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %rax11078; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11079; AVX-NEXT:    vmovaps %ymm6, 224(%rax)11080; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11081; AVX-NEXT:    vmovaps %ymm6, 192(%rax)11082; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11083; AVX-NEXT:    vmovaps %ymm6, 160(%rax)11084; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11085; AVX-NEXT:    vmovaps %ymm6, 128(%rax)11086; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11087; AVX-NEXT:    vmovaps %ymm6, 96(%rax)11088; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11089; AVX-NEXT:    vmovaps %ymm6, 64(%rax)11090; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11091; AVX-NEXT:    vmovaps %ymm6, 32(%rax)11092; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11093; AVX-NEXT:    vmovaps %ymm6, (%rax)11094; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %rax11095; AVX-NEXT:    vmovaps %ymm9, 224(%rax)11096; AVX-NEXT:    vmovaps %ymm5, 192(%rax)11097; AVX-NEXT:    vmovaps %ymm4, 160(%rax)11098; AVX-NEXT:    vmovaps %ymm8, 128(%rax)11099; AVX-NEXT:    vmovaps %ymm3, 96(%rax)11100; AVX-NEXT:    vmovaps %ymm0, 64(%rax)11101; AVX-NEXT:    vmovaps %ymm1, 32(%rax)11102; AVX-NEXT:    vmovaps %ymm2, (%rax)11103; AVX-NEXT:    addq $3176, %rsp # imm = 0xC6811104; AVX-NEXT:    vzeroupper11105; AVX-NEXT:    retq11106;11107; AVX2-LABEL: load_i32_stride7_vf64:11108; AVX2:       # %bb.0:11109; AVX2-NEXT:    subq $2648, %rsp # imm = 0xA5811110; AVX2-NEXT:    vmovdqa 1216(%rdi), %ymm911111; AVX2-NEXT:    vmovdqu %ymm9, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11112; AVX2-NEXT:    vmovdqa 1152(%rdi), %ymm411113; AVX2-NEXT:    vmovdqu %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11114; AVX2-NEXT:    vmovdqa 1120(%rdi), %ymm511115; AVX2-NEXT:    vmovdqa 768(%rdi), %ymm1211116; AVX2-NEXT:    vmovdqu %ymm12, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11117; AVX2-NEXT:    vmovdqa 704(%rdi), %ymm611118; AVX2-NEXT:    vmovdqa 672(%rdi), %ymm711119; AVX2-NEXT:    vmovdqa 320(%rdi), %ymm811120; AVX2-NEXT:    vmovdqu %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11121; AVX2-NEXT:    vmovdqa 256(%rdi), %ymm1011122; AVX2-NEXT:    vmovdqa 224(%rdi), %ymm1111123; AVX2-NEXT:    vpmovsxbd {{.*#+}} xmm0 = [0,7,6,0]11124; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm11[0,1,2,3,4,5],ymm10[6],ymm11[7]11125; AVX2-NEXT:    vmovdqu %ymm11, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11126; AVX2-NEXT:    vmovdqu %ymm10, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11127; AVX2-NEXT:    vpermd %ymm1, %ymm0, %ymm111128; AVX2-NEXT:    vpbroadcastq 304(%rdi), %ymm211129; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm8[4,5,6,7]11130; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]11131; AVX2-NEXT:    vmovdqa 352(%rdi), %xmm211132; AVX2-NEXT:    vmovdqa 384(%rdi), %xmm311133; AVX2-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11134; AVX2-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]11135; AVX2-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm211136; AVX2-NEXT:    vpbroadcastd 420(%rdi), %ymm311137; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]11138; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]11139; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11140; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm7[0,1,2,3,4,5],ymm6[6],ymm7[7]11141; AVX2-NEXT:    vmovdqu %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11142; AVX2-NEXT:    vmovdqa %ymm6, %ymm811143; AVX2-NEXT:    vmovdqu %ymm6, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11144; AVX2-NEXT:    vpermd %ymm1, %ymm0, %ymm111145; AVX2-NEXT:    vpbroadcastq 752(%rdi), %ymm211146; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm12[4,5,6,7]11147; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]11148; AVX2-NEXT:    vmovdqa 800(%rdi), %xmm211149; AVX2-NEXT:    vmovdqa 832(%rdi), %xmm311150; AVX2-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11151; AVX2-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]11152; AVX2-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm211153; AVX2-NEXT:    vpbroadcastd 868(%rdi), %ymm311154; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]11155; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]11156; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11157; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm5[0,1,2,3,4,5],ymm4[6],ymm5[7]11158; AVX2-NEXT:    vmovdqa %ymm5, %ymm611159; AVX2-NEXT:    vmovdqu %ymm5, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11160; AVX2-NEXT:    vpermd %ymm1, %ymm0, %ymm111161; AVX2-NEXT:    vpbroadcastq 1200(%rdi), %ymm211162; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm9[4,5,6,7]11163; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]11164; AVX2-NEXT:    vmovdqa 1248(%rdi), %xmm211165; AVX2-NEXT:    vmovdqa 1280(%rdi), %xmm311166; AVX2-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11167; AVX2-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]11168; AVX2-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm211169; AVX2-NEXT:    vpbroadcastd 1316(%rdi), %ymm311170; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]11171; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]11172; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11173; AVX2-NEXT:    vmovdqa 1600(%rdi), %ymm1311174; AVX2-NEXT:    vmovdqa 1568(%rdi), %ymm511175; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm5[0,1,2,3,4,5],ymm13[6],ymm5[7]11176; AVX2-NEXT:    vmovdqu %ymm5, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11177; AVX2-NEXT:    vmovdqu %ymm13, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11178; AVX2-NEXT:    vpermd %ymm1, %ymm0, %ymm111179; AVX2-NEXT:    vmovdqa 1664(%rdi), %ymm311180; AVX2-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11181; AVX2-NEXT:    vpbroadcastq 1648(%rdi), %ymm211182; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6,7]11183; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]11184; AVX2-NEXT:    vmovdqa 1696(%rdi), %xmm211185; AVX2-NEXT:    vmovdqa 1728(%rdi), %xmm311186; AVX2-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11187; AVX2-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]11188; AVX2-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm211189; AVX2-NEXT:    vpbroadcastd 1764(%rdi), %ymm311190; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]11191; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]11192; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11193; AVX2-NEXT:    vmovdqa 96(%rdi), %ymm211194; AVX2-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11195; AVX2-NEXT:    vpbroadcastq 80(%rdi), %ymm111196; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]11197; AVX2-NEXT:    vmovdqa (%rdi), %ymm211198; AVX2-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11199; AVX2-NEXT:    vmovdqa 32(%rdi), %ymm311200; AVX2-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11201; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5],ymm3[6],ymm2[7]11202; AVX2-NEXT:    vpermd %ymm2, %ymm0, %ymm211203; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2],ymm1[3,4,5,6,7]11204; AVX2-NEXT:    vmovdqa 128(%rdi), %xmm211205; AVX2-NEXT:    vmovdqa 160(%rdi), %xmm311206; AVX2-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11207; AVX2-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]11208; AVX2-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm211209; AVX2-NEXT:    vpbroadcastd 196(%rdi), %ymm311210; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]11211; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]11212; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11213; AVX2-NEXT:    vmovdqa 480(%rdi), %ymm211214; AVX2-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11215; AVX2-NEXT:    vmovdqa 448(%rdi), %ymm111216; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11217; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5],ymm2[6],ymm1[7]11218; AVX2-NEXT:    vpermd %ymm1, %ymm0, %ymm111219; AVX2-NEXT:    vmovdqa 544(%rdi), %ymm311220; AVX2-NEXT:    vmovdqu %ymm3, (%rsp) # 32-byte Spill11221; AVX2-NEXT:    vpbroadcastq 528(%rdi), %ymm211222; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6,7]11223; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]11224; AVX2-NEXT:    vmovdqa 576(%rdi), %xmm211225; AVX2-NEXT:    vmovdqa 608(%rdi), %xmm311226; AVX2-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11227; AVX2-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]11228; AVX2-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm211229; AVX2-NEXT:    vpbroadcastd 644(%rdi), %ymm311230; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]11231; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]11232; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11233; AVX2-NEXT:    vmovdqa 928(%rdi), %ymm211234; AVX2-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11235; AVX2-NEXT:    vmovdqa 896(%rdi), %ymm111236; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11237; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5],ymm2[6],ymm1[7]11238; AVX2-NEXT:    vpermd %ymm1, %ymm0, %ymm111239; AVX2-NEXT:    vmovdqa 992(%rdi), %ymm311240; AVX2-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11241; AVX2-NEXT:    vpbroadcastq 976(%rdi), %ymm211242; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6,7]11243; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]11244; AVX2-NEXT:    vmovdqa 1024(%rdi), %xmm211245; AVX2-NEXT:    vmovdqa 1056(%rdi), %xmm311246; AVX2-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11247; AVX2-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]11248; AVX2-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm211249; AVX2-NEXT:    vpbroadcastd 1092(%rdi), %ymm311250; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]11251; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]11252; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11253; AVX2-NEXT:    vmovdqa 1376(%rdi), %ymm1411254; AVX2-NEXT:    vmovdqa 1344(%rdi), %ymm1511255; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm15[0,1,2,3,4,5],ymm14[6],ymm15[7]11256; AVX2-NEXT:    vmovdqu %ymm15, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11257; AVX2-NEXT:    vmovdqu %ymm14, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11258; AVX2-NEXT:    vpermd %ymm1, %ymm0, %ymm011259; AVX2-NEXT:    vmovdqa 1440(%rdi), %ymm411260; AVX2-NEXT:    vpbroadcastq 1424(%rdi), %ymm111261; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm4[4,5,6,7]11262; AVX2-NEXT:    vmovdqu %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11263; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2],ymm1[3,4,5,6,7]11264; AVX2-NEXT:    vmovdqa 1472(%rdi), %xmm111265; AVX2-NEXT:    vmovdqa 1504(%rdi), %xmm211266; AVX2-NEXT:    vmovdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11267; AVX2-NEXT:    vpunpckhqdq {{.*#+}} xmm1 = xmm1[1],xmm2[1]11268; AVX2-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm111269; AVX2-NEXT:    vpbroadcastd 1540(%rdi), %ymm211270; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]11271; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]11272; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11273; AVX2-NEXT:    vpshufd {{.*#+}} xmm0 = mem[2,2,2,2]11274; AVX2-NEXT:    vinserti128 $1, %xmm0, %ymm0, %ymm311275; AVX2-NEXT:    vmovdqa 384(%rdi), %ymm111276; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11277; AVX2-NEXT:    vmovdqa 352(%rdi), %ymm011278; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11279; AVX2-NEXT:    vpalignr {{.*#+}} ymm1 = ymm1[12,13,14,15],ymm0[0,1,2,3,4,5,6,7,8,9,10,11],ymm1[28,29,30,31],ymm0[16,17,18,19,20,21,22,23,24,25,26,27]11280; AVX2-NEXT:    vpermq {{.*#+}} ymm1 = ymm1[0,1,2,0]11281; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm3[7]11282; AVX2-NEXT:    vmovdqa 288(%rdi), %ymm1211283; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload11284; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm9[0,1],ymm12[2,3],ymm9[4,5],ymm12[6,7]11285; AVX2-NEXT:    vmovdqu %ymm12, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11286; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm10[0],ymm11[1],ymm10[2,3,4],ymm11[5],ymm10[6,7]11287; AVX2-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11288; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm0[5,6],ymm2[7]11289; AVX2-NEXT:    vpmovsxbd {{.*#+}} ymm0 = [1,0,7,6,5,6,5,6]11290; AVX2-NEXT:    vpermd %ymm2, %ymm0, %ymm211291; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]11292; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11293; AVX2-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]11294; AVX2-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm111295; AVX2-NEXT:    vmovdqa 832(%rdi), %ymm311296; AVX2-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11297; AVX2-NEXT:    vmovdqa 800(%rdi), %ymm211298; AVX2-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11299; AVX2-NEXT:    vpalignr {{.*#+}} ymm2 = ymm3[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm3[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]11300; AVX2-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]11301; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]11302; AVX2-NEXT:    vmovdqa 736(%rdi), %ymm211303; AVX2-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11304; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload11305; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm11[0,1],ymm2[2,3],ymm11[4,5],ymm2[6,7]11306; AVX2-NEXT:    vpblendd {{.*#+}} ymm8 = ymm8[0],ymm7[1],ymm8[2,3,4],ymm7[5],ymm8[6,7]11307; AVX2-NEXT:    vmovdqu %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11308; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm8[0,1,2,3,4],ymm2[5,6],ymm8[7]11309; AVX2-NEXT:    vpermd %ymm2, %ymm0, %ymm211310; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]11311; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11312; AVX2-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]11313; AVX2-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm111314; AVX2-NEXT:    vmovdqa 1280(%rdi), %ymm311315; AVX2-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11316; AVX2-NEXT:    vmovdqa 1248(%rdi), %ymm211317; AVX2-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11318; AVX2-NEXT:    vpalignr {{.*#+}} ymm2 = ymm3[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm3[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]11319; AVX2-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]11320; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]11321; AVX2-NEXT:    vmovdqa 1184(%rdi), %ymm211322; AVX2-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11323; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload11324; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm10[0,1],ymm2[2,3],ymm10[4,5],ymm2[6,7]11325; AVX2-NEXT:    vpblendd $221, {{[-0-9]+}}(%r{{[sb]}}p), %ymm6, %ymm7 # 32-byte Folded Reload11326; AVX2-NEXT:    # ymm7 = mem[0],ymm6[1],mem[2,3,4],ymm6[5],mem[6,7]11327; AVX2-NEXT:    vmovdqu %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11328; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm7[0,1,2,3,4],ymm2[5,6],ymm7[7]11329; AVX2-NEXT:    vpermd %ymm2, %ymm0, %ymm211330; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]11331; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11332; AVX2-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]11333; AVX2-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm111334; AVX2-NEXT:    vmovdqa 1728(%rdi), %ymm311335; AVX2-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11336; AVX2-NEXT:    vmovdqa 1696(%rdi), %ymm211337; AVX2-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11338; AVX2-NEXT:    vpalignr {{.*#+}} ymm2 = ymm3[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm3[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]11339; AVX2-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]11340; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]11341; AVX2-NEXT:    vmovdqa 1632(%rdi), %ymm211342; AVX2-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11343; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11344; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm6[0,1],ymm2[2,3],ymm6[4,5],ymm2[6,7]11345; AVX2-NEXT:    vpblendd {{.*#+}} ymm5 = ymm13[0],ymm5[1],ymm13[2,3,4],ymm5[5],ymm13[6,7]11346; AVX2-NEXT:    vmovdqu %ymm5, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11347; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm5[0,1,2,3,4],ymm2[5,6],ymm5[7]11348; AVX2-NEXT:    vpermd %ymm2, %ymm0, %ymm211349; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]11350; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11351; AVX2-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]11352; AVX2-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm111353; AVX2-NEXT:    vmovdqa 608(%rdi), %ymm311354; AVX2-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11355; AVX2-NEXT:    vmovdqa 576(%rdi), %ymm211356; AVX2-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11357; AVX2-NEXT:    vpalignr {{.*#+}} ymm2 = ymm3[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm3[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]11358; AVX2-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]11359; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]11360; AVX2-NEXT:    vmovdqa 512(%rdi), %ymm211361; AVX2-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11362; AVX2-NEXT:    vmovdqu (%rsp), %ymm8 # 32-byte Reload11363; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm8[0,1],ymm2[2,3],ymm8[4,5],ymm2[6,7]11364; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload11365; AVX2-NEXT:    vpblendd $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload11366; AVX2-NEXT:    # ymm3 = ymm3[0],mem[1],ymm3[2,3,4],mem[5],ymm3[6,7]11367; AVX2-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11368; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm3[0,1,2,3,4],ymm2[5,6],ymm3[7]11369; AVX2-NEXT:    vpermd %ymm2, %ymm0, %ymm211370; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]11371; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11372; AVX2-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]11373; AVX2-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm111374; AVX2-NEXT:    vmovdqa 1056(%rdi), %ymm311375; AVX2-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11376; AVX2-NEXT:    vmovdqa 1024(%rdi), %ymm211377; AVX2-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11378; AVX2-NEXT:    vpalignr {{.*#+}} ymm2 = ymm3[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm3[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]11379; AVX2-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]11380; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]11381; AVX2-NEXT:    vmovdqa 960(%rdi), %ymm211382; AVX2-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11383; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 32-byte Reload11384; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm13[0,1],ymm2[2,3],ymm13[4,5],ymm2[6,7]11385; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload11386; AVX2-NEXT:    vpblendd $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload11387; AVX2-NEXT:    # ymm3 = ymm3[0],mem[1],ymm3[2,3,4],mem[5],ymm3[6,7]11388; AVX2-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11389; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm3[0,1,2,3,4],ymm2[5,6],ymm3[7]11390; AVX2-NEXT:    vpermd %ymm2, %ymm0, %ymm211391; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]11392; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11393; AVX2-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]11394; AVX2-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm111395; AVX2-NEXT:    vmovdqa 1504(%rdi), %ymm311396; AVX2-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11397; AVX2-NEXT:    vmovdqa 1472(%rdi), %ymm211398; AVX2-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11399; AVX2-NEXT:    vpalignr {{.*#+}} ymm2 = ymm3[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm3[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]11400; AVX2-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]11401; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]11402; AVX2-NEXT:    vmovdqa 1408(%rdi), %ymm211403; AVX2-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11404; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm4[0,1],ymm2[2,3],ymm4[4,5],ymm2[6,7]11405; AVX2-NEXT:    vpblendd {{.*#+}} ymm3 = ymm14[0],ymm15[1],ymm14[2,3,4],ymm15[5],ymm14[6,7]11406; AVX2-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11407; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm3[0,1,2,3,4],ymm2[5,6],ymm3[7]11408; AVX2-NEXT:    vpermd %ymm2, %ymm0, %ymm211409; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]11410; AVX2-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11411; AVX2-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]11412; AVX2-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm111413; AVX2-NEXT:    vmovdqa 160(%rdi), %ymm1511414; AVX2-NEXT:    vmovdqa 128(%rdi), %ymm1411415; AVX2-NEXT:    vpalignr {{.*#+}} ymm2 = ymm15[12,13,14,15],ymm14[0,1,2,3,4,5,6,7,8,9,10,11],ymm15[28,29,30,31],ymm14[16,17,18,19,20,21,22,23,24,25,26,27]11416; AVX2-NEXT:    vmovdqu %ymm14, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11417; AVX2-NEXT:    vmovdqu %ymm15, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11418; AVX2-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]11419; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]11420; AVX2-NEXT:    vmovdqa 64(%rdi), %ymm411421; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload11422; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm7[0,1],ymm4[2,3],ymm7[4,5],ymm4[6,7]11423; AVX2-NEXT:    vmovdqu %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11424; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload11425; AVX2-NEXT:    vpblendd $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload11426; AVX2-NEXT:    # ymm3 = ymm3[0],mem[1],ymm3[2,3,4],mem[5],ymm3[6,7]11427; AVX2-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11428; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm3[0,1,2,3,4],ymm2[5,6],ymm3[7]11429; AVX2-NEXT:    vpermd %ymm2, %ymm0, %ymm011430; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]11431; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11432; AVX2-NEXT:    vmovdqa 304(%rdi), %xmm011433; AVX2-NEXT:    vpalignr {{.*#+}} ymm1 = ymm9[8,9,10,11,12,13,14,15],ymm12[0,1,2,3,4,5,6,7],ymm9[24,25,26,27,28,29,30,31],ymm12[16,17,18,19,20,21,22,23]11434; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]11435; AVX2-NEXT:    vpbroadcastd 232(%rdi), %xmm111436; AVX2-NEXT:    vmovdqa 256(%rdi), %xmm511437; AVX2-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm5[1],xmm1[2,3]11438; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]11439; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload11440; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11441; AVX2-NEXT:    vpunpcklqdq {{.*#+}} ymm1 = ymm1[0],ymm12[0],ymm1[2],ymm12[2]11442; AVX2-NEXT:    vpbroadcastd 428(%rdi), %ymm211443; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]11444; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]11445; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11446; AVX2-NEXT:    vmovdqa 752(%rdi), %xmm011447; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11448; AVX2-NEXT:    vpalignr {{.*#+}} ymm1 = ymm11[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],ymm11[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23]11449; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]11450; AVX2-NEXT:    vpbroadcastd 680(%rdi), %xmm111451; AVX2-NEXT:    vmovdqa 704(%rdi), %xmm211452; AVX2-NEXT:    vmovdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11453; AVX2-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm2[1],xmm1[2,3]11454; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]11455; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload11456; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11457; AVX2-NEXT:    vpunpcklqdq {{.*#+}} ymm1 = ymm1[0],ymm3[0],ymm1[2],ymm3[2]11458; AVX2-NEXT:    vpbroadcastd 876(%rdi), %ymm211459; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]11460; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]11461; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11462; AVX2-NEXT:    vmovdqa 1200(%rdi), %xmm011463; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11464; AVX2-NEXT:    vpalignr {{.*#+}} ymm1 = ymm10[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],ymm10[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23]11465; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]11466; AVX2-NEXT:    vpbroadcastd 1128(%rdi), %xmm111467; AVX2-NEXT:    vmovdqa 1152(%rdi), %xmm211468; AVX2-NEXT:    vmovdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11469; AVX2-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm2[1],xmm1[2,3]11470; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]11471; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11472; AVX2-NEXT:    vpunpcklqdq {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload11473; AVX2-NEXT:    # ymm1 = ymm1[0],mem[0],ymm1[2],mem[2]11474; AVX2-NEXT:    vpbroadcastd 1324(%rdi), %ymm211475; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]11476; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]11477; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11478; AVX2-NEXT:    vmovdqa 1648(%rdi), %xmm011479; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11480; AVX2-NEXT:    vpalignr {{.*#+}} ymm1 = ymm6[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],ymm6[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23]11481; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]11482; AVX2-NEXT:    vpbroadcastd 1576(%rdi), %xmm111483; AVX2-NEXT:    vmovdqa 1600(%rdi), %xmm211484; AVX2-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm2[1],xmm1[2,3]11485; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]11486; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11487; AVX2-NEXT:    vpunpcklqdq {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload11488; AVX2-NEXT:    # ymm1 = ymm1[0],mem[0],ymm1[2],mem[2]11489; AVX2-NEXT:    vpbroadcastd 1772(%rdi), %ymm611490; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm6[7]11491; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]11492; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11493; AVX2-NEXT:    vmovdqa 80(%rdi), %xmm011494; AVX2-NEXT:    vpalignr {{.*#+}} ymm1 = ymm7[8,9,10,11,12,13,14,15],ymm4[0,1,2,3,4,5,6,7],ymm7[24,25,26,27,28,29,30,31],ymm4[16,17,18,19,20,21,22,23]11495; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]11496; AVX2-NEXT:    vpbroadcastd 8(%rdi), %xmm111497; AVX2-NEXT:    vmovdqa 32(%rdi), %xmm411498; AVX2-NEXT:    vmovdqa %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11499; AVX2-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm4[1],xmm1[2,3]11500; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]11501; AVX2-NEXT:    vpunpcklqdq {{.*#+}} ymm1 = ymm14[0],ymm15[0],ymm14[2],ymm15[2]11502; AVX2-NEXT:    vpbroadcastd 204(%rdi), %ymm611503; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm6[7]11504; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]11505; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11506; AVX2-NEXT:    vmovdqa 528(%rdi), %xmm011507; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11508; AVX2-NEXT:    vpalignr {{.*#+}} ymm1 = ymm8[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],ymm8[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23]11509; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]11510; AVX2-NEXT:    vpbroadcastd 456(%rdi), %xmm111511; AVX2-NEXT:    vmovdqa 480(%rdi), %xmm411512; AVX2-NEXT:    vmovdqa %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11513; AVX2-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm4[1],xmm1[2,3]11514; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]11515; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11516; AVX2-NEXT:    vpunpcklqdq {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload11517; AVX2-NEXT:    # ymm1 = ymm1[0],mem[0],ymm1[2],mem[2]11518; AVX2-NEXT:    vpbroadcastd 652(%rdi), %ymm1511519; AVX2-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm15[7]11520; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]11521; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11522; AVX2-NEXT:    vmovdqa 976(%rdi), %xmm011523; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11524; AVX2-NEXT:    vpalignr {{.*#+}} ymm1 = ymm13[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],ymm13[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23]11525; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]11526; AVX2-NEXT:    vpbroadcastd 904(%rdi), %xmm1511527; AVX2-NEXT:    vmovdqa 928(%rdi), %xmm1111528; AVX2-NEXT:    vpblendd {{.*#+}} xmm15 = xmm15[0],xmm11[1],xmm15[2,3]11529; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm15[0,1],ymm0[2,3,4,5,6,7]11530; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload11531; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload11532; AVX2-NEXT:    vpunpcklqdq {{.*#+}} ymm15 = ymm10[0],ymm7[0],ymm10[2],ymm7[2]11533; AVX2-NEXT:    vpbroadcastd 1100(%rdi), %ymm1411534; AVX2-NEXT:    vpblendd {{.*#+}} ymm14 = ymm15[0,1,2,3,4,5,6],ymm14[7]11535; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm14[5,6,7]11536; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11537; AVX2-NEXT:    vmovdqa 1424(%rdi), %xmm011538; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload11539; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Reload11540; AVX2-NEXT:    vpalignr {{.*#+}} ymm14 = ymm9[8,9,10,11,12,13,14,15],ymm8[0,1,2,3,4,5,6,7],ymm9[24,25,26,27,28,29,30,31],ymm8[16,17,18,19,20,21,22,23]11541; AVX2-NEXT:    vpblendd {{.*#+}} ymm14 = ymm14[0,1,2],ymm0[3],ymm14[4,5,6,7]11542; AVX2-NEXT:    vpbroadcastd 1352(%rdi), %xmm1511543; AVX2-NEXT:    vmovdqa 1376(%rdi), %xmm011544; AVX2-NEXT:    vpblendd {{.*#+}} xmm15 = xmm15[0],xmm0[1],xmm15[2,3]11545; AVX2-NEXT:    vpblendd {{.*#+}} ymm14 = ymm15[0,1],ymm14[2,3,4,5,6,7]11546; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11547; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11548; AVX2-NEXT:    vpunpcklqdq {{.*#+}} ymm15 = ymm6[0],ymm1[0],ymm6[2],ymm1[2]11549; AVX2-NEXT:    vpbroadcastd 1548(%rdi), %ymm1311550; AVX2-NEXT:    vpblendd {{.*#+}} ymm13 = ymm15[0,1,2,3,4,5,6],ymm13[7]11551; AVX2-NEXT:    vpblendd {{.*#+}} ymm13 = ymm14[0,1,2,3,4],ymm13[5,6,7]11552; AVX2-NEXT:    vmovdqu %ymm13, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11553; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload11554; AVX2-NEXT:    vpblendd $2, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm13 # 32-byte Folded Reload11555; AVX2-NEXT:    # ymm13 = ymm4[0],mem[1],ymm4[2,3,4,5,6,7]11556; AVX2-NEXT:    vpblendd {{.*#+}} xmm5 = xmm5[0,1,2],mem[3]11557; AVX2-NEXT:    vpshufd {{.*#+}} xmm5 = xmm5[3,2,2,3]11558; AVX2-NEXT:    vpshufd {{.*#+}} ymm13 = ymm13[3,1,1,0,7,5,5,4]11559; AVX2-NEXT:    vpblendd {{.*#+}} ymm5 = ymm5[0,1],ymm13[2,3,4,5,6,7]11560; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload11561; AVX2-NEXT:    vshufps {{.*#+}} ymm13 = ymm4[0,2],ymm12[1,3],ymm4[4,6],ymm12[5,7]11562; AVX2-NEXT:    vmovaps %ymm4, %ymm1211563; AVX2-NEXT:    vbroadcastss 432(%rdi), %ymm1411564; AVX2-NEXT:    vblendps {{.*#+}} ymm13 = ymm13[0,1,2,3,4,5,6],ymm14[7]11565; AVX2-NEXT:    vpblendd {{.*#+}} ymm5 = ymm5[0,1,2,3,4],ymm13[5,6,7]11566; AVX2-NEXT:    vmovdqu %ymm5, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11567; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload11568; AVX2-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm5 # 32-byte Folded Reload11569; AVX2-NEXT:    # ymm5 = ymm4[0],mem[1],ymm4[2,3,4,5,6,7]11570; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload11571; AVX2-NEXT:    vblendps {{.*#+}} xmm4 = xmm4[0,1,2],mem[3]11572; AVX2-NEXT:    vshufps {{.*#+}} xmm4 = xmm4[3,2,2,3]11573; AVX2-NEXT:    vshufps {{.*#+}} ymm5 = ymm5[3,1,1,0,7,5,5,4]11574; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1],ymm5[2,3,4,5,6,7]11575; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload11576; AVX2-NEXT:    vshufps {{.*#+}} ymm5 = ymm14[0,2],ymm3[1,3],ymm14[4,6],ymm3[5,7]11577; AVX2-NEXT:    vbroadcastss 880(%rdi), %ymm1311578; AVX2-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3,4,5,6],ymm13[7]11579; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm4[0,1,2,3,4],ymm5[5,6,7]11580; AVX2-NEXT:    vmovups %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11581; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload11582; AVX2-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm4 # 32-byte Folded Reload11583; AVX2-NEXT:    # ymm4 = ymm3[0],mem[1],ymm3[2,3,4,5,6,7]11584; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload11585; AVX2-NEXT:    vblendps {{.*#+}} xmm3 = xmm3[0,1,2],mem[3]11586; AVX2-NEXT:    vshufps {{.*#+}} xmm3 = xmm3[3,2,2,3]11587; AVX2-NEXT:    vshufps {{.*#+}} ymm4 = ymm4[3,1,1,0,7,5,5,4]11588; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1],ymm4[2,3,4,5,6,7]11589; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload11590; AVX2-NEXT:    vshufps $216, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm4 # 32-byte Folded Reload11591; AVX2-NEXT:    # ymm4 = ymm4[0,2],mem[1,3],ymm4[4,6],mem[5,7]11592; AVX2-NEXT:    vbroadcastss 1328(%rdi), %ymm511593; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm5[7]11594; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4],ymm4[5,6,7]11595; AVX2-NEXT:    vmovups %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11596; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload11597; AVX2-NEXT:    vpblendd $2, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload11598; AVX2-NEXT:    # ymm3 = ymm3[0],mem[1],ymm3[2,3,4,5,6,7]11599; AVX2-NEXT:    vpblendd {{.*#+}} xmm2 = xmm2[0,1,2],mem[3]11600; AVX2-NEXT:    vpshufd {{.*#+}} xmm2 = xmm2[3,2,2,3]11601; AVX2-NEXT:    vpshufd {{.*#+}} ymm3 = ymm3[3,1,1,0,7,5,5,4]11602; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1],ymm3[2,3,4,5,6,7]11603; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 32-byte Reload11604; AVX2-NEXT:    vshufps $216, {{[-0-9]+}}(%r{{[sb]}}p), %ymm13, %ymm3 # 32-byte Folded Reload11605; AVX2-NEXT:    # ymm3 = ymm13[0,2],mem[1,3],ymm13[4,6],mem[5,7]11606; AVX2-NEXT:    vbroadcastss 1776(%rdi), %ymm411607; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5,6],ymm4[7]11608; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm3[5,6,7]11609; AVX2-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11610; AVX2-NEXT:    vpblendd {{.*#+}} ymm2 = ymm9[0],ymm8[1],ymm9[2,3,4,5,6,7]11611; AVX2-NEXT:    vpblendd {{.*#+}} xmm0 = xmm0[0,1,2],mem[3]11612; AVX2-NEXT:    vpshufd {{.*#+}} xmm0 = xmm0[3,2,2,3]11613; AVX2-NEXT:    vpshufd {{.*#+}} ymm2 = ymm2[3,1,1,0,7,5,5,4]11614; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1],ymm2[2,3,4,5,6,7]11615; AVX2-NEXT:    vshufps {{.*#+}} ymm2 = ymm6[0,2],ymm1[1,3],ymm6[4,6],ymm1[5,7]11616; AVX2-NEXT:    vmovaps %ymm1, %ymm911617; AVX2-NEXT:    vbroadcastss 1552(%rdi), %ymm311618; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]11619; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm2[5,6,7]11620; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11621; AVX2-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11622; AVX2-NEXT:    vpblendd $2, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload11623; AVX2-NEXT:    # ymm0 = ymm0[0],mem[1],ymm0[2,3,4,5,6,7]11624; AVX2-NEXT:    vpblendd {{.*#+}} xmm1 = xmm11[0,1,2],mem[3]11625; AVX2-NEXT:    vpshufd {{.*#+}} xmm1 = xmm1[3,2,2,3]11626; AVX2-NEXT:    vpshufd {{.*#+}} ymm0 = ymm0[3,1,1,0,7,5,5,4]11627; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]11628; AVX2-NEXT:    vmovdqa %ymm10, %ymm811629; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm10[0,2],ymm7[1,3],ymm10[4,6],ymm7[5,7]11630; AVX2-NEXT:    vmovaps %ymm7, %ymm1111631; AVX2-NEXT:    vbroadcastss 1104(%rdi), %ymm211632; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]11633; AVX2-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]11634; AVX2-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11635; AVX2-NEXT:    vmovups (%rsp), %ymm0 # 32-byte Reload11636; AVX2-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload11637; AVX2-NEXT:    # ymm0 = ymm0[0],mem[1],ymm0[2,3,4,5,6,7]11638; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload11639; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1,2],mem[3]11640; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[3,2,2,3]11641; AVX2-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[3,1,1,0,7,5,5,4]11642; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]11643; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload11644; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload11645; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm4[0,2],ymm7[1,3],ymm4[4,6],ymm7[5,7]11646; AVX2-NEXT:    vbroadcastss 656(%rdi), %ymm211647; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]11648; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]11649; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11650; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11651; AVX2-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload11652; AVX2-NEXT:    # ymm0 = ymm0[0],mem[1],ymm0[2,3,4,5,6,7]11653; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload11654; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1,2],mem[3]11655; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[3,2,2,3]11656; AVX2-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[3,1,1,0,7,5,5,4]11657; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]11658; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload11659; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload11660; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm3[0,2],ymm10[1,3],ymm3[4,6],ymm10[5,7]11661; AVX2-NEXT:    vbroadcastss 208(%rdi), %ymm211662; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]11663; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]11664; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11665; AVX2-NEXT:    vbroadcastss 100(%rdi), %xmm011666; AVX2-NEXT:    vmovaps 64(%rdi), %xmm611667; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm6[0,1,2],xmm0[3]11668; AVX2-NEXT:    vmovsd {{.*#+}} xmm5 = [4,3,0,0]11669; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11670; AVX2-NEXT:    vblendps $240, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload11671; AVX2-NEXT:    # ymm1 = ymm1[0,1,2,3],mem[4,5,6,7]11672; AVX2-NEXT:    vpermps %ymm1, %ymm5, %ymm111673; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm1[0,1],xmm0[2,3]11674; AVX2-NEXT:    vbroadcastsd {{.*#+}} ymm15 = [0,7,0,7,0,7,0,7]11675; AVX2-NEXT:    vpermps %ymm3, %ymm15, %ymm111676; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5],ymm10[6,7]11677; AVX2-NEXT:    vbroadcastss 212(%rdi), %ymm211678; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]11679; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]11680; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11681; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11682; AVX2-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload11683; AVX2-NEXT:    # ymm0 = mem[0,1,2,3],ymm0[4,5,6,7]11684; AVX2-NEXT:    vpermps %ymm0, %ymm5, %ymm011685; AVX2-NEXT:    vbroadcastss 324(%rdi), %xmm211686; AVX2-NEXT:    vmovaps 288(%rdi), %xmm111687; AVX2-NEXT:    vblendps {{.*#+}} xmm2 = xmm1[0,1,2],xmm2[3]11688; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0,1],xmm2[2,3]11689; AVX2-NEXT:    vpermps %ymm12, %ymm15, %ymm211690; AVX2-NEXT:    vblendps $192, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2, %ymm2 # 32-byte Folded Reload11691; AVX2-NEXT:    # ymm2 = ymm2[0,1,2,3,4,5],mem[6,7]11692; AVX2-NEXT:    vbroadcastss 436(%rdi), %ymm311693; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]11694; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm2[4,5,6,7]11695; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11696; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11697; AVX2-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload11698; AVX2-NEXT:    # ymm0 = mem[0,1,2,3],ymm0[4,5,6,7]11699; AVX2-NEXT:    vpermps %ymm0, %ymm5, %ymm011700; AVX2-NEXT:    vbroadcastss 548(%rdi), %xmm311701; AVX2-NEXT:    vmovaps 512(%rdi), %xmm211702; AVX2-NEXT:    vblendps {{.*#+}} xmm3 = xmm2[0,1,2],xmm3[3]11703; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0,1],xmm3[2,3]11704; AVX2-NEXT:    vpermps %ymm4, %ymm15, %ymm311705; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5],ymm7[6,7]11706; AVX2-NEXT:    vbroadcastss 660(%rdi), %ymm411707; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5,6],ymm4[7]11708; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm3[4,5,6,7]11709; AVX2-NEXT:    vmovups %ymm0, (%rsp) # 32-byte Spill11710; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11711; AVX2-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload11712; AVX2-NEXT:    # ymm0 = mem[0,1,2,3],ymm0[4,5,6,7]11713; AVX2-NEXT:    vpermps %ymm0, %ymm5, %ymm011714; AVX2-NEXT:    vbroadcastss 772(%rdi), %xmm411715; AVX2-NEXT:    vmovaps 736(%rdi), %xmm311716; AVX2-NEXT:    vblendps {{.*#+}} xmm4 = xmm3[0,1,2],xmm4[3]11717; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0,1],xmm4[2,3]11718; AVX2-NEXT:    vpermps %ymm14, %ymm15, %ymm411719; AVX2-NEXT:    vblendps $192, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm4 # 32-byte Folded Reload11720; AVX2-NEXT:    # ymm4 = ymm4[0,1,2,3,4,5],mem[6,7]11721; AVX2-NEXT:    vbroadcastss 884(%rdi), %ymm711722; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm7[7]11723; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm4[4,5,6,7]11724; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11725; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11726; AVX2-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload11727; AVX2-NEXT:    # ymm0 = mem[0,1,2,3],ymm0[4,5,6,7]11728; AVX2-NEXT:    vpermps %ymm0, %ymm5, %ymm011729; AVX2-NEXT:    vbroadcastss 996(%rdi), %xmm711730; AVX2-NEXT:    vmovaps 960(%rdi), %xmm411731; AVX2-NEXT:    vblendps {{.*#+}} xmm7 = xmm4[0,1,2],xmm7[3]11732; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0,1],xmm7[2,3]11733; AVX2-NEXT:    vpermps %ymm8, %ymm15, %ymm711734; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3,4,5],ymm11[6,7]11735; AVX2-NEXT:    vbroadcastss 1108(%rdi), %ymm811736; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3,4,5,6],ymm8[7]11737; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm7[4,5,6,7]11738; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11739; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11740; AVX2-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload11741; AVX2-NEXT:    # ymm0 = mem[0,1,2,3],ymm0[4,5,6,7]11742; AVX2-NEXT:    vpermps %ymm0, %ymm5, %ymm011743; AVX2-NEXT:    vbroadcastss 1220(%rdi), %xmm711744; AVX2-NEXT:    vmovaps 1184(%rdi), %xmm1411745; AVX2-NEXT:    vblendps {{.*#+}} xmm7 = xmm14[0,1,2],xmm7[3]11746; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0,1],xmm7[2,3]11747; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload11748; AVX2-NEXT:    vpermps %ymm10, %ymm15, %ymm711749; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload11750; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3,4,5],ymm12[6,7]11751; AVX2-NEXT:    vbroadcastss 1332(%rdi), %ymm811752; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3,4,5,6],ymm8[7]11753; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm7[4,5,6,7]11754; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11755; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11756; AVX2-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload11757; AVX2-NEXT:    # ymm0 = mem[0,1,2,3],ymm0[4,5,6,7]11758; AVX2-NEXT:    vpermps %ymm0, %ymm5, %ymm711759; AVX2-NEXT:    vbroadcastss 1444(%rdi), %xmm811760; AVX2-NEXT:    vmovaps 1408(%rdi), %xmm011761; AVX2-NEXT:    vblendps {{.*#+}} xmm8 = xmm0[0,1,2],xmm8[3]11762; AVX2-NEXT:    vblendps {{.*#+}} xmm7 = xmm7[0,1],xmm8[2,3]11763; AVX2-NEXT:    vpermps {{[-0-9]+}}(%r{{[sb]}}p), %ymm15, %ymm8 # 32-byte Folded Reload11764; AVX2-NEXT:    vmovaps %ymm9, %ymm1111765; AVX2-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1,2,3,4,5],ymm9[6,7]11766; AVX2-NEXT:    vbroadcastss 1556(%rdi), %ymm911767; AVX2-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1,2,3,4,5,6],ymm9[7]11768; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3],ymm8[4,5,6,7]11769; AVX2-NEXT:    vmovups %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11770; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload11771; AVX2-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm7, %ymm7 # 32-byte Folded Reload11772; AVX2-NEXT:    # ymm7 = mem[0,1,2,3],ymm7[4,5,6,7]11773; AVX2-NEXT:    vpermps %ymm7, %ymm5, %ymm711774; AVX2-NEXT:    vbroadcastss 1668(%rdi), %xmm811775; AVX2-NEXT:    vmovaps 1632(%rdi), %xmm511776; AVX2-NEXT:    vblendps {{.*#+}} xmm8 = xmm5[0,1,2],xmm8[3]11777; AVX2-NEXT:    vblendps {{.*#+}} xmm7 = xmm7[0,1],xmm8[2,3]11778; AVX2-NEXT:    vpermps %ymm13, %ymm15, %ymm811779; AVX2-NEXT:    vblendps $192, {{[-0-9]+}}(%r{{[sb]}}p), %ymm8, %ymm8 # 32-byte Folded Reload11780; AVX2-NEXT:    # ymm8 = ymm8[0,1,2,3,4,5],mem[6,7]11781; AVX2-NEXT:    vbroadcastss 1780(%rdi), %ymm911782; AVX2-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1,2,3,4,5,6],ymm9[7]11783; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3],ymm8[4,5,6,7]11784; AVX2-NEXT:    vmovups %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11785; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload11786; AVX2-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm7, %ymm7 # 32-byte Folded Reload11787; AVX2-NEXT:    # ymm7 = ymm7[0],mem[1],ymm7[2,3,4],mem[5],ymm7[6,7]11788; AVX2-NEXT:    vshufps {{.*#+}} ymm7 = ymm7[1,0,3,3,5,4,7,7]11789; AVX2-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,0,3]11790; AVX2-NEXT:    vbroadcastss 216(%rdi), %ymm811791; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3,4,5,6],ymm8[7]11792; AVX2-NEXT:    vmovaps 96(%rdi), %xmm911793; AVX2-NEXT:    vblendps {{.*#+}} xmm6 = xmm9[0,1,2],xmm6[3]11794; AVX2-NEXT:    vshufps {{.*#+}} xmm6 = xmm6[0,1,3,2]11795; AVX2-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Folded Reload11796; AVX2-NEXT:    # ymm8 = mem[1,0,2,3,5,4,6,7]11797; AVX2-NEXT:    vextractf128 $1, %ymm8, %xmm811798; AVX2-NEXT:    vblendps {{.*#+}} xmm6 = xmm8[0,1],xmm6[2,3]11799; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3],ymm7[4,5,6,7]11800; AVX2-NEXT:    vmovups %ymm6, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11801; AVX2-NEXT:    vmovaps 320(%rdi), %xmm1311802; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm13[0,1,2],xmm1[3]11803; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,3,2]11804; AVX2-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Folded Reload11805; AVX2-NEXT:    # ymm6 = mem[1,0,2,3,5,4,6,7]11806; AVX2-NEXT:    vextractf128 $1, %ymm6, %xmm611807; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm6[0,1],xmm1[2,3]11808; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11809; AVX2-NEXT:    vblendps $221, {{[-0-9]+}}(%r{{[sb]}}p), %ymm6, %ymm6 # 32-byte Folded Reload11810; AVX2-NEXT:    # ymm6 = mem[0],ymm6[1],mem[2,3,4],ymm6[5],mem[6,7]11811; AVX2-NEXT:    vshufps {{.*#+}} ymm6 = ymm6[1,0,3,3,5,4,7,7]11812; AVX2-NEXT:    vpermpd {{.*#+}} ymm6 = ymm6[0,1,0,3]11813; AVX2-NEXT:    vbroadcastss 440(%rdi), %ymm711814; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3,4,5,6],ymm7[7]11815; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm6[4,5,6,7]11816; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11817; AVX2-NEXT:    vmovaps 544(%rdi), %xmm811818; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm8[0,1,2],xmm2[3]11819; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,3,2]11820; AVX2-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload11821; AVX2-NEXT:    # ymm2 = mem[1,0,2,3,5,4,6,7]11822; AVX2-NEXT:    vextractf128 $1, %ymm2, %xmm211823; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm2[0,1],xmm1[2,3]11824; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload11825; AVX2-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2, %ymm2 # 32-byte Folded Reload11826; AVX2-NEXT:    # ymm2 = ymm2[0],mem[1],ymm2[2,3,4],mem[5],ymm2[6,7]11827; AVX2-NEXT:    vshufps {{.*#+}} ymm2 = ymm2[1,0,3,3,5,4,7,7]11828; AVX2-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[0,1,0,3]11829; AVX2-NEXT:    vbroadcastss 664(%rdi), %ymm611830; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm6[7]11831; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]11832; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11833; AVX2-NEXT:    vmovaps 768(%rdi), %xmm111834; AVX2-NEXT:    vblendps {{.*#+}} xmm2 = xmm1[0,1,2],xmm3[3]11835; AVX2-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[0,1,3,2]11836; AVX2-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Folded Reload11837; AVX2-NEXT:    # ymm3 = mem[1,0,2,3,5,4,6,7]11838; AVX2-NEXT:    vextractf128 $1, %ymm3, %xmm311839; AVX2-NEXT:    vblendps {{.*#+}} xmm2 = xmm3[0,1],xmm2[2,3]11840; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload11841; AVX2-NEXT:    vblendps $221, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload11842; AVX2-NEXT:    # ymm3 = mem[0],ymm3[1],mem[2,3,4],ymm3[5],mem[6,7]11843; AVX2-NEXT:    vshufps {{.*#+}} ymm3 = ymm3[1,0,3,3,5,4,7,7]11844; AVX2-NEXT:    vpermpd {{.*#+}} ymm3 = ymm3[0,1,0,3]11845; AVX2-NEXT:    vbroadcastss 888(%rdi), %ymm611846; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5,6],ymm6[7]11847; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6,7]11848; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11849; AVX2-NEXT:    vmovaps 992(%rdi), %xmm211850; AVX2-NEXT:    vblendps {{.*#+}} xmm3 = xmm2[0,1,2],xmm4[3]11851; AVX2-NEXT:    vshufps {{.*#+}} xmm3 = xmm3[0,1,3,2]11852; AVX2-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Folded Reload11853; AVX2-NEXT:    # ymm4 = mem[1,0,2,3,5,4,6,7]11854; AVX2-NEXT:    vextractf128 $1, %ymm4, %xmm411855; AVX2-NEXT:    vblendps {{.*#+}} xmm3 = xmm4[0,1],xmm3[2,3]11856; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload11857; AVX2-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm4 # 32-byte Folded Reload11858; AVX2-NEXT:    # ymm4 = ymm4[0],mem[1],ymm4[2,3,4],mem[5],ymm4[6,7]11859; AVX2-NEXT:    vshufps {{.*#+}} ymm4 = ymm4[1,0,3,3,5,4,7,7]11860; AVX2-NEXT:    vpermpd {{.*#+}} ymm4 = ymm4[0,1,0,3]11861; AVX2-NEXT:    vbroadcastss 1112(%rdi), %ymm611862; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm6[7]11863; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm3[0,1,2,3],ymm4[4,5,6,7]11864; AVX2-NEXT:    vmovaps 1216(%rdi), %xmm311865; AVX2-NEXT:    vblendps {{.*#+}} xmm4 = xmm3[0,1,2],xmm14[3]11866; AVX2-NEXT:    vshufps {{.*#+}} xmm4 = xmm4[0,1,3,2]11867; AVX2-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Folded Reload11868; AVX2-NEXT:    # ymm6 = mem[1,0,2,3,5,4,6,7]11869; AVX2-NEXT:    vextractf128 $1, %ymm6, %xmm611870; AVX2-NEXT:    vblendps {{.*#+}} xmm4 = xmm6[0,1],xmm4[2,3]11871; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm12[0],ymm10[1],ymm12[2,3,4],ymm10[5],ymm12[6,7]11872; AVX2-NEXT:    vshufps {{.*#+}} ymm6 = ymm6[1,0,3,3,5,4,7,7]11873; AVX2-NEXT:    vpermpd {{.*#+}} ymm6 = ymm6[0,1,0,3]11874; AVX2-NEXT:    vbroadcastss 1336(%rdi), %ymm1011875; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3,4,5,6],ymm10[7]11876; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm4[0,1,2,3],ymm6[4,5,6,7]11877; AVX2-NEXT:    vmovaps 1440(%rdi), %xmm411878; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm4[0,1,2],xmm0[3]11879; AVX2-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[0,1,3,2]11880; AVX2-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Folded Reload11881; AVX2-NEXT:    # ymm10 = mem[1,0,2,3,5,4,6,7]11882; AVX2-NEXT:    vextractf128 $1, %ymm10, %xmm1011883; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm10[0,1],xmm0[2,3]11884; AVX2-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11, %ymm10 # 32-byte Folded Reload11885; AVX2-NEXT:    # ymm10 = ymm11[0],mem[1],ymm11[2,3,4],mem[5],ymm11[6,7]11886; AVX2-NEXT:    vshufps {{.*#+}} ymm10 = ymm10[1,0,3,3,5,4,7,7]11887; AVX2-NEXT:    vpermpd {{.*#+}} ymm10 = ymm10[0,1,0,3]11888; AVX2-NEXT:    vbroadcastss 1560(%rdi), %ymm1211889; AVX2-NEXT:    vblendps {{.*#+}} ymm10 = ymm10[0,1,2,3,4,5,6],ymm12[7]11890; AVX2-NEXT:    vblendps {{.*#+}} ymm10 = ymm0[0,1,2,3],ymm10[4,5,6,7]11891; AVX2-NEXT:    vmovaps 1664(%rdi), %xmm1411892; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm14[0,1,2],xmm5[3]11893; AVX2-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[0,1,3,2]11894; AVX2-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Folded Reload11895; AVX2-NEXT:    # ymm5 = mem[1,0,2,3,5,4,6,7]11896; AVX2-NEXT:    vextractf128 $1, %ymm5, %xmm511897; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm5[0,1],xmm0[2,3]11898; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload11899; AVX2-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5, %ymm5 # 32-byte Folded Reload11900; AVX2-NEXT:    # ymm5 = ymm5[0],mem[1],ymm5[2,3,4],mem[5],ymm5[6,7]11901; AVX2-NEXT:    vshufps {{.*#+}} ymm5 = ymm5[1,0,3,3,5,4,7,7]11902; AVX2-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[0,1,0,3]11903; AVX2-NEXT:    vbroadcastss 1784(%rdi), %ymm1211904; AVX2-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3,4,5,6],ymm12[7]11905; AVX2-NEXT:    vblendps {{.*#+}} ymm12 = ymm0[0,1,2,3],ymm5[4,5,6,7]11906; AVX2-NEXT:    vbroadcastss 136(%rdi), %xmm011907; AVX2-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload11908; AVX2-NEXT:    # xmm0 = xmm0[0],mem[1],xmm0[2,3]11909; AVX2-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm011910; AVX2-NEXT:    vpermps 192(%rdi), %ymm15, %ymm511911; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm5[6,7]11912; AVX2-NEXT:    vbroadcastss 80(%rdi), %ymm511913; AVX2-NEXT:    vblendps {{.*#+}} xmm5 = xmm5[0,1,2],xmm9[3]11914; AVX2-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Folded Reload11915; AVX2-NEXT:    # ymm11 = mem[2,3,2,3,6,7,6,7]11916; AVX2-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11, %ymm11 # 32-byte Folded Reload11917; AVX2-NEXT:    # ymm11 = ymm11[0],mem[1],ymm11[2,3,4],mem[5],ymm11[6,7]11918; AVX2-NEXT:    vextractf128 $1, %ymm11, %xmm1111919; AVX2-NEXT:    vblendps {{.*#+}} xmm5 = xmm11[0,1],xmm5[2,3]11920; AVX2-NEXT:    vblendps {{.*#+}} ymm11 = ymm5[0,1,2,3],ymm0[4,5,6,7]11921; AVX2-NEXT:    vbroadcastss 360(%rdi), %xmm011922; AVX2-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload11923; AVX2-NEXT:    # xmm0 = xmm0[0],mem[1],xmm0[2,3]11924; AVX2-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm011925; AVX2-NEXT:    vpermps 416(%rdi), %ymm15, %ymm511926; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm5[6,7]11927; AVX2-NEXT:    vbroadcastss 304(%rdi), %ymm511928; AVX2-NEXT:    vblendps {{.*#+}} xmm5 = xmm5[0,1,2],xmm13[3]11929; AVX2-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 32-byte Folded Reload11930; AVX2-NEXT:    # ymm13 = mem[2,3,2,3,6,7,6,7]11931; AVX2-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm13, %ymm13 # 32-byte Folded Reload11932; AVX2-NEXT:    # ymm13 = ymm13[0],mem[1],ymm13[2,3,4],mem[5],ymm13[6,7]11933; AVX2-NEXT:    vextractf128 $1, %ymm13, %xmm1311934; AVX2-NEXT:    vblendps {{.*#+}} xmm5 = xmm13[0,1],xmm5[2,3]11935; AVX2-NEXT:    vblendps {{.*#+}} ymm13 = ymm5[0,1,2,3],ymm0[4,5,6,7]11936; AVX2-NEXT:    vbroadcastss 584(%rdi), %xmm011937; AVX2-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload11938; AVX2-NEXT:    # xmm0 = xmm0[0],mem[1],xmm0[2,3]11939; AVX2-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm011940; AVX2-NEXT:    vpermps 640(%rdi), %ymm15, %ymm511941; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm5[6,7]11942; AVX2-NEXT:    vbroadcastss 528(%rdi), %ymm511943; AVX2-NEXT:    vblendps {{.*#+}} xmm5 = xmm5[0,1,2],xmm8[3]11944; AVX2-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Folded Reload11945; AVX2-NEXT:    # ymm8 = mem[2,3,2,3,6,7,6,7]11946; AVX2-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm8, %ymm8 # 32-byte Folded Reload11947; AVX2-NEXT:    # ymm8 = ymm8[0],mem[1],ymm8[2,3,4],mem[5],ymm8[6,7]11948; AVX2-NEXT:    vextractf128 $1, %ymm8, %xmm811949; AVX2-NEXT:    vblendps {{.*#+}} xmm5 = xmm8[0,1],xmm5[2,3]11950; AVX2-NEXT:    vblendps {{.*#+}} ymm8 = ymm5[0,1,2,3],ymm0[4,5,6,7]11951; AVX2-NEXT:    vbroadcastss 808(%rdi), %xmm011952; AVX2-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload11953; AVX2-NEXT:    # xmm0 = xmm0[0],mem[1],xmm0[2,3]11954; AVX2-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm011955; AVX2-NEXT:    vpermps 864(%rdi), %ymm15, %ymm511956; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm5[6,7]11957; AVX2-NEXT:    vbroadcastss 752(%rdi), %ymm511958; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm5[0,1,2],xmm1[3]11959; AVX2-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Folded Reload11960; AVX2-NEXT:    # ymm5 = mem[2,3,2,3,6,7,6,7]11961; AVX2-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5, %ymm5 # 32-byte Folded Reload11962; AVX2-NEXT:    # ymm5 = ymm5[0],mem[1],ymm5[2,3,4],mem[5],ymm5[6,7]11963; AVX2-NEXT:    vextractf128 $1, %ymm5, %xmm511964; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm5[0,1],xmm1[2,3]11965; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3],ymm0[4,5,6,7]11966; AVX2-NEXT:    vbroadcastss 1032(%rdi), %xmm111967; AVX2-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload11968; AVX2-NEXT:    # xmm1 = xmm1[0],mem[1],xmm1[2,3]11969; AVX2-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm111970; AVX2-NEXT:    vpermps 1088(%rdi), %ymm15, %ymm511971; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5],ymm5[6,7]11972; AVX2-NEXT:    vbroadcastss 976(%rdi), %ymm511973; AVX2-NEXT:    vblendps {{.*#+}} xmm2 = xmm5[0,1,2],xmm2[3]11974; AVX2-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Folded Reload11975; AVX2-NEXT:    # ymm5 = mem[2,3,2,3,6,7,6,7]11976; AVX2-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5, %ymm5 # 32-byte Folded Reload11977; AVX2-NEXT:    # ymm5 = ymm5[0],mem[1],ymm5[2,3,4],mem[5],ymm5[6,7]11978; AVX2-NEXT:    vextractf128 $1, %ymm5, %xmm511979; AVX2-NEXT:    vblendps {{.*#+}} xmm2 = xmm5[0,1],xmm2[2,3]11980; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0,1,2,3],ymm1[4,5,6,7]11981; AVX2-NEXT:    vbroadcastss 1256(%rdi), %xmm211982; AVX2-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm2, %xmm2 # 16-byte Folded Reload11983; AVX2-NEXT:    # xmm2 = xmm2[0],mem[1],xmm2[2,3]11984; AVX2-NEXT:    vinsertf128 $1, %xmm2, %ymm0, %ymm211985; AVX2-NEXT:    vpermps 1312(%rdi), %ymm15, %ymm511986; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5],ymm5[6,7]11987; AVX2-NEXT:    vbroadcastss 1200(%rdi), %ymm511988; AVX2-NEXT:    vblendps {{.*#+}} xmm3 = xmm5[0,1,2],xmm3[3]11989; AVX2-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Folded Reload11990; AVX2-NEXT:    # ymm5 = mem[2,3,2,3,6,7,6,7]11991; AVX2-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5, %ymm5 # 32-byte Folded Reload11992; AVX2-NEXT:    # ymm5 = ymm5[0],mem[1],ymm5[2,3,4],mem[5],ymm5[6,7]11993; AVX2-NEXT:    vextractf128 $1, %ymm5, %xmm511994; AVX2-NEXT:    vblendps {{.*#+}} xmm3 = xmm5[0,1],xmm3[2,3]11995; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm3[0,1,2,3],ymm2[4,5,6,7]11996; AVX2-NEXT:    vbroadcastss 1480(%rdi), %xmm311997; AVX2-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload11998; AVX2-NEXT:    # xmm3 = xmm3[0],mem[1],xmm3[2,3]11999; AVX2-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm312000; AVX2-NEXT:    vpermps 1536(%rdi), %ymm15, %ymm512001; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5],ymm5[6,7]12002; AVX2-NEXT:    vbroadcastss 1424(%rdi), %ymm512003; AVX2-NEXT:    vblendps {{.*#+}} xmm4 = xmm5[0,1,2],xmm4[3]12004; AVX2-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Folded Reload12005; AVX2-NEXT:    # ymm5 = mem[2,3,2,3,6,7,6,7]12006; AVX2-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5, %ymm5 # 32-byte Folded Reload12007; AVX2-NEXT:    # ymm5 = ymm5[0],mem[1],ymm5[2,3,4],mem[5],ymm5[6,7]12008; AVX2-NEXT:    vextractf128 $1, %ymm5, %xmm512009; AVX2-NEXT:    vblendps {{.*#+}} xmm4 = xmm5[0,1],xmm4[2,3]12010; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm4[0,1,2,3],ymm3[4,5,6,7]12011; AVX2-NEXT:    vbroadcastss 1704(%rdi), %xmm412012; AVX2-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4, %xmm4 # 16-byte Folded Reload12013; AVX2-NEXT:    # xmm4 = xmm4[0],mem[1],xmm4[2,3]12014; AVX2-NEXT:    vpermps 1760(%rdi), %ymm15, %ymm512015; AVX2-NEXT:    vinsertf128 $1, %xmm4, %ymm0, %ymm412016; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5],ymm5[6,7]12017; AVX2-NEXT:    vbroadcastss 1648(%rdi), %ymm512018; AVX2-NEXT:    vblendps {{.*#+}} xmm5 = xmm5[0,1,2],xmm14[3]12019; AVX2-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Folded Reload12020; AVX2-NEXT:    # ymm14 = mem[2,3,2,3,6,7,6,7]12021; AVX2-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm14, %ymm14 # 32-byte Folded Reload12022; AVX2-NEXT:    # ymm14 = ymm14[0],mem[1],ymm14[2,3,4],mem[5],ymm14[6,7]12023; AVX2-NEXT:    vextractf128 $1, %ymm14, %xmm1412024; AVX2-NEXT:    vblendps {{.*#+}} xmm5 = xmm14[0,1],xmm5[2,3]12025; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm5[0,1,2,3],ymm4[4,5,6,7]12026; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12027; AVX2-NEXT:    vmovaps %ymm5, 192(%rsi)12028; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12029; AVX2-NEXT:    vmovaps %ymm5, 128(%rsi)12030; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12031; AVX2-NEXT:    vmovaps %ymm5, 64(%rsi)12032; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12033; AVX2-NEXT:    vmovaps %ymm5, (%rsi)12034; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12035; AVX2-NEXT:    vmovaps %ymm5, 224(%rsi)12036; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12037; AVX2-NEXT:    vmovaps %ymm5, 160(%rsi)12038; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12039; AVX2-NEXT:    vmovaps %ymm5, 96(%rsi)12040; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12041; AVX2-NEXT:    vmovaps %ymm5, 32(%rsi)12042; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12043; AVX2-NEXT:    vmovaps %ymm5, 192(%rdx)12044; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12045; AVX2-NEXT:    vmovaps %ymm5, 128(%rdx)12046; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12047; AVX2-NEXT:    vmovaps %ymm5, 64(%rdx)12048; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12049; AVX2-NEXT:    vmovaps %ymm5, (%rdx)12050; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12051; AVX2-NEXT:    vmovaps %ymm5, 224(%rdx)12052; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12053; AVX2-NEXT:    vmovaps %ymm5, 160(%rdx)12054; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12055; AVX2-NEXT:    vmovaps %ymm5, 96(%rdx)12056; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12057; AVX2-NEXT:    vmovaps %ymm5, 32(%rdx)12058; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12059; AVX2-NEXT:    vmovaps %ymm5, 192(%rcx)12060; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12061; AVX2-NEXT:    vmovaps %ymm5, 128(%rcx)12062; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12063; AVX2-NEXT:    vmovaps %ymm5, 64(%rcx)12064; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12065; AVX2-NEXT:    vmovaps %ymm5, (%rcx)12066; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12067; AVX2-NEXT:    vmovaps %ymm5, 224(%rcx)12068; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12069; AVX2-NEXT:    vmovaps %ymm5, 160(%rcx)12070; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12071; AVX2-NEXT:    vmovaps %ymm5, 96(%rcx)12072; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12073; AVX2-NEXT:    vmovaps %ymm5, 32(%rcx)12074; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12075; AVX2-NEXT:    vmovaps %ymm5, (%r8)12076; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12077; AVX2-NEXT:    vmovaps %ymm5, 64(%r8)12078; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12079; AVX2-NEXT:    vmovaps %ymm5, 128(%r8)12080; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12081; AVX2-NEXT:    vmovaps %ymm5, 192(%r8)12082; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12083; AVX2-NEXT:    vmovaps %ymm5, 224(%r8)12084; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12085; AVX2-NEXT:    vmovaps %ymm5, 160(%r8)12086; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12087; AVX2-NEXT:    vmovaps %ymm5, 96(%r8)12088; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12089; AVX2-NEXT:    vmovaps %ymm5, 32(%r8)12090; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12091; AVX2-NEXT:    vmovaps %ymm5, 224(%r9)12092; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12093; AVX2-NEXT:    vmovaps %ymm5, 192(%r9)12094; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12095; AVX2-NEXT:    vmovaps %ymm5, 160(%r9)12096; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12097; AVX2-NEXT:    vmovaps %ymm5, 128(%r9)12098; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12099; AVX2-NEXT:    vmovaps %ymm5, 96(%r9)12100; AVX2-NEXT:    vmovups (%rsp), %ymm5 # 32-byte Reload12101; AVX2-NEXT:    vmovaps %ymm5, 64(%r9)12102; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12103; AVX2-NEXT:    vmovaps %ymm5, 32(%r9)12104; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12105; AVX2-NEXT:    vmovaps %ymm5, (%r9)12106; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %rax12107; AVX2-NEXT:    vmovaps %ymm12, 224(%rax)12108; AVX2-NEXT:    vmovaps %ymm10, 192(%rax)12109; AVX2-NEXT:    vmovaps %ymm6, 160(%rax)12110; AVX2-NEXT:    vmovaps %ymm7, 128(%rax)12111; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12112; AVX2-NEXT:    vmovaps %ymm5, 96(%rax)12113; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12114; AVX2-NEXT:    vmovaps %ymm5, 64(%rax)12115; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12116; AVX2-NEXT:    vmovaps %ymm5, 32(%rax)12117; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12118; AVX2-NEXT:    vmovaps %ymm5, (%rax)12119; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %rax12120; AVX2-NEXT:    vmovaps %ymm4, 224(%rax)12121; AVX2-NEXT:    vmovaps %ymm3, 192(%rax)12122; AVX2-NEXT:    vmovaps %ymm2, 160(%rax)12123; AVX2-NEXT:    vmovaps %ymm1, 128(%rax)12124; AVX2-NEXT:    vmovaps %ymm0, 96(%rax)12125; AVX2-NEXT:    vmovaps %ymm8, 64(%rax)12126; AVX2-NEXT:    vmovaps %ymm13, 32(%rax)12127; AVX2-NEXT:    vmovaps %ymm11, (%rax)12128; AVX2-NEXT:    addq $2648, %rsp # imm = 0xA5812129; AVX2-NEXT:    vzeroupper12130; AVX2-NEXT:    retq12131;12132; AVX2-FP-LABEL: load_i32_stride7_vf64:12133; AVX2-FP:       # %bb.0:12134; AVX2-FP-NEXT:    subq $2648, %rsp # imm = 0xA5812135; AVX2-FP-NEXT:    vmovdqa 1216(%rdi), %ymm912136; AVX2-FP-NEXT:    vmovdqu %ymm9, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12137; AVX2-FP-NEXT:    vmovdqa 1152(%rdi), %ymm412138; AVX2-FP-NEXT:    vmovdqu %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12139; AVX2-FP-NEXT:    vmovdqa 1120(%rdi), %ymm512140; AVX2-FP-NEXT:    vmovdqa 768(%rdi), %ymm1212141; AVX2-FP-NEXT:    vmovdqu %ymm12, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12142; AVX2-FP-NEXT:    vmovdqa 704(%rdi), %ymm612143; AVX2-FP-NEXT:    vmovdqa 672(%rdi), %ymm712144; AVX2-FP-NEXT:    vmovdqa 320(%rdi), %ymm812145; AVX2-FP-NEXT:    vmovdqu %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12146; AVX2-FP-NEXT:    vmovdqa 256(%rdi), %ymm1012147; AVX2-FP-NEXT:    vmovdqa 224(%rdi), %ymm1112148; AVX2-FP-NEXT:    vpmovsxbd {{.*#+}} xmm0 = [0,7,6,0]12149; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm11[0,1,2,3,4,5],ymm10[6],ymm11[7]12150; AVX2-FP-NEXT:    vmovdqu %ymm11, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12151; AVX2-FP-NEXT:    vmovdqu %ymm10, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12152; AVX2-FP-NEXT:    vpermd %ymm1, %ymm0, %ymm112153; AVX2-FP-NEXT:    vpbroadcastq 304(%rdi), %ymm212154; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm8[4,5,6,7]12155; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]12156; AVX2-FP-NEXT:    vmovdqa 352(%rdi), %xmm212157; AVX2-FP-NEXT:    vmovdqa 384(%rdi), %xmm312158; AVX2-FP-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12159; AVX2-FP-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]12160; AVX2-FP-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm212161; AVX2-FP-NEXT:    vpbroadcastd 420(%rdi), %ymm312162; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]12163; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]12164; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12165; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm7[0,1,2,3,4,5],ymm6[6],ymm7[7]12166; AVX2-FP-NEXT:    vmovdqu %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12167; AVX2-FP-NEXT:    vmovdqa %ymm6, %ymm812168; AVX2-FP-NEXT:    vmovdqu %ymm6, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12169; AVX2-FP-NEXT:    vpermd %ymm1, %ymm0, %ymm112170; AVX2-FP-NEXT:    vpbroadcastq 752(%rdi), %ymm212171; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm12[4,5,6,7]12172; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]12173; AVX2-FP-NEXT:    vmovdqa 800(%rdi), %xmm212174; AVX2-FP-NEXT:    vmovdqa 832(%rdi), %xmm312175; AVX2-FP-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12176; AVX2-FP-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]12177; AVX2-FP-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm212178; AVX2-FP-NEXT:    vpbroadcastd 868(%rdi), %ymm312179; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]12180; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]12181; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12182; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm5[0,1,2,3,4,5],ymm4[6],ymm5[7]12183; AVX2-FP-NEXT:    vmovdqa %ymm5, %ymm612184; AVX2-FP-NEXT:    vmovdqu %ymm5, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12185; AVX2-FP-NEXT:    vpermd %ymm1, %ymm0, %ymm112186; AVX2-FP-NEXT:    vpbroadcastq 1200(%rdi), %ymm212187; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm9[4,5,6,7]12188; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]12189; AVX2-FP-NEXT:    vmovdqa 1248(%rdi), %xmm212190; AVX2-FP-NEXT:    vmovdqa 1280(%rdi), %xmm312191; AVX2-FP-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12192; AVX2-FP-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]12193; AVX2-FP-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm212194; AVX2-FP-NEXT:    vpbroadcastd 1316(%rdi), %ymm312195; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]12196; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]12197; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12198; AVX2-FP-NEXT:    vmovdqa 1600(%rdi), %ymm1312199; AVX2-FP-NEXT:    vmovdqa 1568(%rdi), %ymm512200; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm5[0,1,2,3,4,5],ymm13[6],ymm5[7]12201; AVX2-FP-NEXT:    vmovdqu %ymm5, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12202; AVX2-FP-NEXT:    vmovdqu %ymm13, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12203; AVX2-FP-NEXT:    vpermd %ymm1, %ymm0, %ymm112204; AVX2-FP-NEXT:    vmovdqa 1664(%rdi), %ymm312205; AVX2-FP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12206; AVX2-FP-NEXT:    vpbroadcastq 1648(%rdi), %ymm212207; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6,7]12208; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]12209; AVX2-FP-NEXT:    vmovdqa 1696(%rdi), %xmm212210; AVX2-FP-NEXT:    vmovdqa 1728(%rdi), %xmm312211; AVX2-FP-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12212; AVX2-FP-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]12213; AVX2-FP-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm212214; AVX2-FP-NEXT:    vpbroadcastd 1764(%rdi), %ymm312215; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]12216; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]12217; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12218; AVX2-FP-NEXT:    vmovdqa 96(%rdi), %ymm212219; AVX2-FP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12220; AVX2-FP-NEXT:    vpbroadcastq 80(%rdi), %ymm112221; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]12222; AVX2-FP-NEXT:    vmovdqa (%rdi), %ymm212223; AVX2-FP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12224; AVX2-FP-NEXT:    vmovdqa 32(%rdi), %ymm312225; AVX2-FP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12226; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5],ymm3[6],ymm2[7]12227; AVX2-FP-NEXT:    vpermd %ymm2, %ymm0, %ymm212228; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2],ymm1[3,4,5,6,7]12229; AVX2-FP-NEXT:    vmovdqa 128(%rdi), %xmm212230; AVX2-FP-NEXT:    vmovdqa 160(%rdi), %xmm312231; AVX2-FP-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12232; AVX2-FP-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]12233; AVX2-FP-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm212234; AVX2-FP-NEXT:    vpbroadcastd 196(%rdi), %ymm312235; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]12236; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]12237; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12238; AVX2-FP-NEXT:    vmovdqa 480(%rdi), %ymm212239; AVX2-FP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12240; AVX2-FP-NEXT:    vmovdqa 448(%rdi), %ymm112241; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12242; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5],ymm2[6],ymm1[7]12243; AVX2-FP-NEXT:    vpermd %ymm1, %ymm0, %ymm112244; AVX2-FP-NEXT:    vmovdqa 544(%rdi), %ymm312245; AVX2-FP-NEXT:    vmovdqu %ymm3, (%rsp) # 32-byte Spill12246; AVX2-FP-NEXT:    vpbroadcastq 528(%rdi), %ymm212247; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6,7]12248; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]12249; AVX2-FP-NEXT:    vmovdqa 576(%rdi), %xmm212250; AVX2-FP-NEXT:    vmovdqa 608(%rdi), %xmm312251; AVX2-FP-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12252; AVX2-FP-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]12253; AVX2-FP-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm212254; AVX2-FP-NEXT:    vpbroadcastd 644(%rdi), %ymm312255; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]12256; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]12257; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12258; AVX2-FP-NEXT:    vmovdqa 928(%rdi), %ymm212259; AVX2-FP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12260; AVX2-FP-NEXT:    vmovdqa 896(%rdi), %ymm112261; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12262; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5],ymm2[6],ymm1[7]12263; AVX2-FP-NEXT:    vpermd %ymm1, %ymm0, %ymm112264; AVX2-FP-NEXT:    vmovdqa 992(%rdi), %ymm312265; AVX2-FP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12266; AVX2-FP-NEXT:    vpbroadcastq 976(%rdi), %ymm212267; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6,7]12268; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]12269; AVX2-FP-NEXT:    vmovdqa 1024(%rdi), %xmm212270; AVX2-FP-NEXT:    vmovdqa 1056(%rdi), %xmm312271; AVX2-FP-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12272; AVX2-FP-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]12273; AVX2-FP-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm212274; AVX2-FP-NEXT:    vpbroadcastd 1092(%rdi), %ymm312275; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]12276; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]12277; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12278; AVX2-FP-NEXT:    vmovdqa 1376(%rdi), %ymm1412279; AVX2-FP-NEXT:    vmovdqa 1344(%rdi), %ymm1512280; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm15[0,1,2,3,4,5],ymm14[6],ymm15[7]12281; AVX2-FP-NEXT:    vmovdqu %ymm15, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12282; AVX2-FP-NEXT:    vmovdqu %ymm14, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12283; AVX2-FP-NEXT:    vpermd %ymm1, %ymm0, %ymm012284; AVX2-FP-NEXT:    vmovdqa 1440(%rdi), %ymm412285; AVX2-FP-NEXT:    vpbroadcastq 1424(%rdi), %ymm112286; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm4[4,5,6,7]12287; AVX2-FP-NEXT:    vmovdqu %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12288; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2],ymm1[3,4,5,6,7]12289; AVX2-FP-NEXT:    vmovdqa 1472(%rdi), %xmm112290; AVX2-FP-NEXT:    vmovdqa 1504(%rdi), %xmm212291; AVX2-FP-NEXT:    vmovdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12292; AVX2-FP-NEXT:    vpunpckhqdq {{.*#+}} xmm1 = xmm1[1],xmm2[1]12293; AVX2-FP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm112294; AVX2-FP-NEXT:    vpbroadcastd 1540(%rdi), %ymm212295; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]12296; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]12297; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12298; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm0 = mem[2,2,2,2]12299; AVX2-FP-NEXT:    vinserti128 $1, %xmm0, %ymm0, %ymm312300; AVX2-FP-NEXT:    vmovdqa 384(%rdi), %ymm112301; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12302; AVX2-FP-NEXT:    vmovdqa 352(%rdi), %ymm012303; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12304; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm1 = ymm1[12,13,14,15],ymm0[0,1,2,3,4,5,6,7,8,9,10,11],ymm1[28,29,30,31],ymm0[16,17,18,19,20,21,22,23,24,25,26,27]12305; AVX2-FP-NEXT:    vpermq {{.*#+}} ymm1 = ymm1[0,1,2,0]12306; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm3[7]12307; AVX2-FP-NEXT:    vmovdqa 288(%rdi), %ymm1212308; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload12309; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm9[0,1],ymm12[2,3],ymm9[4,5],ymm12[6,7]12310; AVX2-FP-NEXT:    vmovdqu %ymm12, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12311; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm10[0],ymm11[1],ymm10[2,3,4],ymm11[5],ymm10[6,7]12312; AVX2-FP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12313; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm0[5,6],ymm2[7]12314; AVX2-FP-NEXT:    vpmovsxbd {{.*#+}} ymm0 = [1,0,7,6,5,6,5,6]12315; AVX2-FP-NEXT:    vpermd %ymm2, %ymm0, %ymm212316; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]12317; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12318; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]12319; AVX2-FP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm112320; AVX2-FP-NEXT:    vmovdqa 832(%rdi), %ymm312321; AVX2-FP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12322; AVX2-FP-NEXT:    vmovdqa 800(%rdi), %ymm212323; AVX2-FP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12324; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm3[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm3[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]12325; AVX2-FP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]12326; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]12327; AVX2-FP-NEXT:    vmovdqa 736(%rdi), %ymm212328; AVX2-FP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12329; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload12330; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm11[0,1],ymm2[2,3],ymm11[4,5],ymm2[6,7]12331; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm8 = ymm8[0],ymm7[1],ymm8[2,3,4],ymm7[5],ymm8[6,7]12332; AVX2-FP-NEXT:    vmovdqu %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12333; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm8[0,1,2,3,4],ymm2[5,6],ymm8[7]12334; AVX2-FP-NEXT:    vpermd %ymm2, %ymm0, %ymm212335; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]12336; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12337; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]12338; AVX2-FP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm112339; AVX2-FP-NEXT:    vmovdqa 1280(%rdi), %ymm312340; AVX2-FP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12341; AVX2-FP-NEXT:    vmovdqa 1248(%rdi), %ymm212342; AVX2-FP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12343; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm3[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm3[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]12344; AVX2-FP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]12345; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]12346; AVX2-FP-NEXT:    vmovdqa 1184(%rdi), %ymm212347; AVX2-FP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12348; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload12349; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm10[0,1],ymm2[2,3],ymm10[4,5],ymm2[6,7]12350; AVX2-FP-NEXT:    vpblendd $221, {{[-0-9]+}}(%r{{[sb]}}p), %ymm6, %ymm7 # 32-byte Folded Reload12351; AVX2-FP-NEXT:    # ymm7 = mem[0],ymm6[1],mem[2,3,4],ymm6[5],mem[6,7]12352; AVX2-FP-NEXT:    vmovdqu %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12353; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm7[0,1,2,3,4],ymm2[5,6],ymm7[7]12354; AVX2-FP-NEXT:    vpermd %ymm2, %ymm0, %ymm212355; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]12356; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12357; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]12358; AVX2-FP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm112359; AVX2-FP-NEXT:    vmovdqa 1728(%rdi), %ymm312360; AVX2-FP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12361; AVX2-FP-NEXT:    vmovdqa 1696(%rdi), %ymm212362; AVX2-FP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12363; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm3[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm3[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]12364; AVX2-FP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]12365; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]12366; AVX2-FP-NEXT:    vmovdqa 1632(%rdi), %ymm212367; AVX2-FP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12368; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload12369; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm6[0,1],ymm2[2,3],ymm6[4,5],ymm2[6,7]12370; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm13[0],ymm5[1],ymm13[2,3,4],ymm5[5],ymm13[6,7]12371; AVX2-FP-NEXT:    vmovdqu %ymm5, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12372; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm5[0,1,2,3,4],ymm2[5,6],ymm5[7]12373; AVX2-FP-NEXT:    vpermd %ymm2, %ymm0, %ymm212374; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]12375; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12376; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]12377; AVX2-FP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm112378; AVX2-FP-NEXT:    vmovdqa 608(%rdi), %ymm312379; AVX2-FP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12380; AVX2-FP-NEXT:    vmovdqa 576(%rdi), %ymm212381; AVX2-FP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12382; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm3[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm3[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]12383; AVX2-FP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]12384; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]12385; AVX2-FP-NEXT:    vmovdqa 512(%rdi), %ymm212386; AVX2-FP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12387; AVX2-FP-NEXT:    vmovdqu (%rsp), %ymm8 # 32-byte Reload12388; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm8[0,1],ymm2[2,3],ymm8[4,5],ymm2[6,7]12389; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload12390; AVX2-FP-NEXT:    vpblendd $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload12391; AVX2-FP-NEXT:    # ymm3 = ymm3[0],mem[1],ymm3[2,3,4],mem[5],ymm3[6,7]12392; AVX2-FP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12393; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm3[0,1,2,3,4],ymm2[5,6],ymm3[7]12394; AVX2-FP-NEXT:    vpermd %ymm2, %ymm0, %ymm212395; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]12396; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12397; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]12398; AVX2-FP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm112399; AVX2-FP-NEXT:    vmovdqa 1056(%rdi), %ymm312400; AVX2-FP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12401; AVX2-FP-NEXT:    vmovdqa 1024(%rdi), %ymm212402; AVX2-FP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12403; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm3[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm3[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]12404; AVX2-FP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]12405; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]12406; AVX2-FP-NEXT:    vmovdqa 960(%rdi), %ymm212407; AVX2-FP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12408; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 32-byte Reload12409; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm13[0,1],ymm2[2,3],ymm13[4,5],ymm2[6,7]12410; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload12411; AVX2-FP-NEXT:    vpblendd $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload12412; AVX2-FP-NEXT:    # ymm3 = ymm3[0],mem[1],ymm3[2,3,4],mem[5],ymm3[6,7]12413; AVX2-FP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12414; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm3[0,1,2,3,4],ymm2[5,6],ymm3[7]12415; AVX2-FP-NEXT:    vpermd %ymm2, %ymm0, %ymm212416; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]12417; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12418; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]12419; AVX2-FP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm112420; AVX2-FP-NEXT:    vmovdqa 1504(%rdi), %ymm312421; AVX2-FP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12422; AVX2-FP-NEXT:    vmovdqa 1472(%rdi), %ymm212423; AVX2-FP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12424; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm3[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm3[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]12425; AVX2-FP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]12426; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]12427; AVX2-FP-NEXT:    vmovdqa 1408(%rdi), %ymm212428; AVX2-FP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12429; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm4[0,1],ymm2[2,3],ymm4[4,5],ymm2[6,7]12430; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm3 = ymm14[0],ymm15[1],ymm14[2,3,4],ymm15[5],ymm14[6,7]12431; AVX2-FP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12432; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm3[0,1,2,3,4],ymm2[5,6],ymm3[7]12433; AVX2-FP-NEXT:    vpermd %ymm2, %ymm0, %ymm212434; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]12435; AVX2-FP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12436; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]12437; AVX2-FP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm112438; AVX2-FP-NEXT:    vmovdqa 160(%rdi), %ymm1512439; AVX2-FP-NEXT:    vmovdqa 128(%rdi), %ymm1412440; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm15[12,13,14,15],ymm14[0,1,2,3,4,5,6,7,8,9,10,11],ymm15[28,29,30,31],ymm14[16,17,18,19,20,21,22,23,24,25,26,27]12441; AVX2-FP-NEXT:    vmovdqu %ymm14, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12442; AVX2-FP-NEXT:    vmovdqu %ymm15, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12443; AVX2-FP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]12444; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]12445; AVX2-FP-NEXT:    vmovdqa 64(%rdi), %ymm412446; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload12447; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm7[0,1],ymm4[2,3],ymm7[4,5],ymm4[6,7]12448; AVX2-FP-NEXT:    vmovdqu %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12449; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload12450; AVX2-FP-NEXT:    vpblendd $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload12451; AVX2-FP-NEXT:    # ymm3 = ymm3[0],mem[1],ymm3[2,3,4],mem[5],ymm3[6,7]12452; AVX2-FP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12453; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm3[0,1,2,3,4],ymm2[5,6],ymm3[7]12454; AVX2-FP-NEXT:    vpermd %ymm2, %ymm0, %ymm012455; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]12456; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12457; AVX2-FP-NEXT:    vmovdqa 304(%rdi), %xmm012458; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm1 = ymm9[8,9,10,11,12,13,14,15],ymm12[0,1,2,3,4,5,6,7],ymm9[24,25,26,27,28,29,30,31],ymm12[16,17,18,19,20,21,22,23]12459; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]12460; AVX2-FP-NEXT:    vpbroadcastd 232(%rdi), %xmm112461; AVX2-FP-NEXT:    vmovdqa 256(%rdi), %xmm512462; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm5[1],xmm1[2,3]12463; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]12464; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload12465; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12466; AVX2-FP-NEXT:    vpunpcklqdq {{.*#+}} ymm1 = ymm1[0],ymm12[0],ymm1[2],ymm12[2]12467; AVX2-FP-NEXT:    vpbroadcastd 428(%rdi), %ymm212468; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]12469; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]12470; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12471; AVX2-FP-NEXT:    vmovdqa 752(%rdi), %xmm012472; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12473; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm1 = ymm11[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],ymm11[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23]12474; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]12475; AVX2-FP-NEXT:    vpbroadcastd 680(%rdi), %xmm112476; AVX2-FP-NEXT:    vmovdqa 704(%rdi), %xmm212477; AVX2-FP-NEXT:    vmovdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12478; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm2[1],xmm1[2,3]12479; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]12480; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload12481; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12482; AVX2-FP-NEXT:    vpunpcklqdq {{.*#+}} ymm1 = ymm1[0],ymm3[0],ymm1[2],ymm3[2]12483; AVX2-FP-NEXT:    vpbroadcastd 876(%rdi), %ymm212484; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]12485; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]12486; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12487; AVX2-FP-NEXT:    vmovdqa 1200(%rdi), %xmm012488; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12489; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm1 = ymm10[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],ymm10[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23]12490; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]12491; AVX2-FP-NEXT:    vpbroadcastd 1128(%rdi), %xmm112492; AVX2-FP-NEXT:    vmovdqa 1152(%rdi), %xmm212493; AVX2-FP-NEXT:    vmovdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12494; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm2[1],xmm1[2,3]12495; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]12496; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12497; AVX2-FP-NEXT:    vpunpcklqdq {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload12498; AVX2-FP-NEXT:    # ymm1 = ymm1[0],mem[0],ymm1[2],mem[2]12499; AVX2-FP-NEXT:    vpbroadcastd 1324(%rdi), %ymm212500; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]12501; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]12502; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12503; AVX2-FP-NEXT:    vmovdqa 1648(%rdi), %xmm012504; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12505; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm1 = ymm6[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],ymm6[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23]12506; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]12507; AVX2-FP-NEXT:    vpbroadcastd 1576(%rdi), %xmm112508; AVX2-FP-NEXT:    vmovdqa 1600(%rdi), %xmm212509; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm2[1],xmm1[2,3]12510; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]12511; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12512; AVX2-FP-NEXT:    vpunpcklqdq {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload12513; AVX2-FP-NEXT:    # ymm1 = ymm1[0],mem[0],ymm1[2],mem[2]12514; AVX2-FP-NEXT:    vpbroadcastd 1772(%rdi), %ymm612515; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm6[7]12516; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]12517; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12518; AVX2-FP-NEXT:    vmovdqa 80(%rdi), %xmm012519; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm1 = ymm7[8,9,10,11,12,13,14,15],ymm4[0,1,2,3,4,5,6,7],ymm7[24,25,26,27,28,29,30,31],ymm4[16,17,18,19,20,21,22,23]12520; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]12521; AVX2-FP-NEXT:    vpbroadcastd 8(%rdi), %xmm112522; AVX2-FP-NEXT:    vmovdqa 32(%rdi), %xmm412523; AVX2-FP-NEXT:    vmovdqa %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12524; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm4[1],xmm1[2,3]12525; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]12526; AVX2-FP-NEXT:    vpunpcklqdq {{.*#+}} ymm1 = ymm14[0],ymm15[0],ymm14[2],ymm15[2]12527; AVX2-FP-NEXT:    vpbroadcastd 204(%rdi), %ymm612528; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm6[7]12529; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]12530; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12531; AVX2-FP-NEXT:    vmovdqa 528(%rdi), %xmm012532; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12533; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm1 = ymm8[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],ymm8[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23]12534; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]12535; AVX2-FP-NEXT:    vpbroadcastd 456(%rdi), %xmm112536; AVX2-FP-NEXT:    vmovdqa 480(%rdi), %xmm412537; AVX2-FP-NEXT:    vmovdqa %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12538; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm4[1],xmm1[2,3]12539; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]12540; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12541; AVX2-FP-NEXT:    vpunpcklqdq {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload12542; AVX2-FP-NEXT:    # ymm1 = ymm1[0],mem[0],ymm1[2],mem[2]12543; AVX2-FP-NEXT:    vpbroadcastd 652(%rdi), %ymm1512544; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm15[7]12545; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]12546; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12547; AVX2-FP-NEXT:    vmovdqa 976(%rdi), %xmm012548; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12549; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm1 = ymm13[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],ymm13[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23]12550; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]12551; AVX2-FP-NEXT:    vpbroadcastd 904(%rdi), %xmm1512552; AVX2-FP-NEXT:    vmovdqa 928(%rdi), %xmm1112553; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm15 = xmm15[0],xmm11[1],xmm15[2,3]12554; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm15[0,1],ymm0[2,3,4,5,6,7]12555; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload12556; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload12557; AVX2-FP-NEXT:    vpunpcklqdq {{.*#+}} ymm15 = ymm10[0],ymm7[0],ymm10[2],ymm7[2]12558; AVX2-FP-NEXT:    vpbroadcastd 1100(%rdi), %ymm1412559; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm14 = ymm15[0,1,2,3,4,5,6],ymm14[7]12560; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm14[5,6,7]12561; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12562; AVX2-FP-NEXT:    vmovdqa 1424(%rdi), %xmm012563; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload12564; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Reload12565; AVX2-FP-NEXT:    vpalignr {{.*#+}} ymm14 = ymm9[8,9,10,11,12,13,14,15],ymm8[0,1,2,3,4,5,6,7],ymm9[24,25,26,27,28,29,30,31],ymm8[16,17,18,19,20,21,22,23]12566; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm14 = ymm14[0,1,2],ymm0[3],ymm14[4,5,6,7]12567; AVX2-FP-NEXT:    vpbroadcastd 1352(%rdi), %xmm1512568; AVX2-FP-NEXT:    vmovdqa 1376(%rdi), %xmm012569; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm15 = xmm15[0],xmm0[1],xmm15[2,3]12570; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm14 = ymm15[0,1],ymm14[2,3,4,5,6,7]12571; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload12572; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12573; AVX2-FP-NEXT:    vpunpcklqdq {{.*#+}} ymm15 = ymm6[0],ymm1[0],ymm6[2],ymm1[2]12574; AVX2-FP-NEXT:    vpbroadcastd 1548(%rdi), %ymm1312575; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm13 = ymm15[0,1,2,3,4,5,6],ymm13[7]12576; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm13 = ymm14[0,1,2,3,4],ymm13[5,6,7]12577; AVX2-FP-NEXT:    vmovdqu %ymm13, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12578; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload12579; AVX2-FP-NEXT:    vpblendd $2, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm13 # 32-byte Folded Reload12580; AVX2-FP-NEXT:    # ymm13 = ymm4[0],mem[1],ymm4[2,3,4,5,6,7]12581; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm5 = xmm5[0,1,2],mem[3]12582; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm5 = xmm5[3,2,2,3]12583; AVX2-FP-NEXT:    vpshufd {{.*#+}} ymm13 = ymm13[3,1,1,0,7,5,5,4]12584; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm5[0,1],ymm13[2,3,4,5,6,7]12585; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload12586; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm13 = ymm4[0,2],ymm12[1,3],ymm4[4,6],ymm12[5,7]12587; AVX2-FP-NEXT:    vmovaps %ymm4, %ymm1212588; AVX2-FP-NEXT:    vbroadcastss 432(%rdi), %ymm1412589; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm13 = ymm13[0,1,2,3,4,5,6],ymm14[7]12590; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm5[0,1,2,3,4],ymm13[5,6,7]12591; AVX2-FP-NEXT:    vmovdqu %ymm5, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12592; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload12593; AVX2-FP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm5 # 32-byte Folded Reload12594; AVX2-FP-NEXT:    # ymm5 = ymm4[0],mem[1],ymm4[2,3,4,5,6,7]12595; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload12596; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm4 = xmm4[0,1,2],mem[3]12597; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm4 = xmm4[3,2,2,3]12598; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm5 = ymm5[3,1,1,0,7,5,5,4]12599; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1],ymm5[2,3,4,5,6,7]12600; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload12601; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm5 = ymm14[0,2],ymm3[1,3],ymm14[4,6],ymm3[5,7]12602; AVX2-FP-NEXT:    vbroadcastss 880(%rdi), %ymm1312603; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3,4,5,6],ymm13[7]12604; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm4[0,1,2,3,4],ymm5[5,6,7]12605; AVX2-FP-NEXT:    vmovups %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12606; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload12607; AVX2-FP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm4 # 32-byte Folded Reload12608; AVX2-FP-NEXT:    # ymm4 = ymm3[0],mem[1],ymm3[2,3,4,5,6,7]12609; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload12610; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm3 = xmm3[0,1,2],mem[3]12611; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm3 = xmm3[3,2,2,3]12612; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm4 = ymm4[3,1,1,0,7,5,5,4]12613; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1],ymm4[2,3,4,5,6,7]12614; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload12615; AVX2-FP-NEXT:    vshufps $216, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm4 # 32-byte Folded Reload12616; AVX2-FP-NEXT:    # ymm4 = ymm4[0,2],mem[1,3],ymm4[4,6],mem[5,7]12617; AVX2-FP-NEXT:    vbroadcastss 1328(%rdi), %ymm512618; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm5[7]12619; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4],ymm4[5,6,7]12620; AVX2-FP-NEXT:    vmovups %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12621; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload12622; AVX2-FP-NEXT:    vpblendd $2, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload12623; AVX2-FP-NEXT:    # ymm3 = ymm3[0],mem[1],ymm3[2,3,4,5,6,7]12624; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm2 = xmm2[0,1,2],mem[3]12625; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm2 = xmm2[3,2,2,3]12626; AVX2-FP-NEXT:    vpshufd {{.*#+}} ymm3 = ymm3[3,1,1,0,7,5,5,4]12627; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1],ymm3[2,3,4,5,6,7]12628; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 32-byte Reload12629; AVX2-FP-NEXT:    vshufps $216, {{[-0-9]+}}(%r{{[sb]}}p), %ymm13, %ymm3 # 32-byte Folded Reload12630; AVX2-FP-NEXT:    # ymm3 = ymm13[0,2],mem[1,3],ymm13[4,6],mem[5,7]12631; AVX2-FP-NEXT:    vbroadcastss 1776(%rdi), %ymm412632; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5,6],ymm4[7]12633; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm3[5,6,7]12634; AVX2-FP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12635; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm9[0],ymm8[1],ymm9[2,3,4,5,6,7]12636; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm0 = xmm0[0,1,2],mem[3]12637; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm0 = xmm0[3,2,2,3]12638; AVX2-FP-NEXT:    vpshufd {{.*#+}} ymm2 = ymm2[3,1,1,0,7,5,5,4]12639; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1],ymm2[2,3,4,5,6,7]12640; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm2 = ymm6[0,2],ymm1[1,3],ymm6[4,6],ymm1[5,7]12641; AVX2-FP-NEXT:    vmovaps %ymm1, %ymm912642; AVX2-FP-NEXT:    vbroadcastss 1552(%rdi), %ymm312643; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]12644; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm2[5,6,7]12645; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12646; AVX2-FP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12647; AVX2-FP-NEXT:    vpblendd $2, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload12648; AVX2-FP-NEXT:    # ymm0 = ymm0[0],mem[1],ymm0[2,3,4,5,6,7]12649; AVX2-FP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm11[0,1,2],mem[3]12650; AVX2-FP-NEXT:    vpshufd {{.*#+}} xmm1 = xmm1[3,2,2,3]12651; AVX2-FP-NEXT:    vpshufd {{.*#+}} ymm0 = ymm0[3,1,1,0,7,5,5,4]12652; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]12653; AVX2-FP-NEXT:    vmovdqa %ymm10, %ymm812654; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm10[0,2],ymm7[1,3],ymm10[4,6],ymm7[5,7]12655; AVX2-FP-NEXT:    vmovaps %ymm7, %ymm1112656; AVX2-FP-NEXT:    vbroadcastss 1104(%rdi), %ymm212657; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]12658; AVX2-FP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]12659; AVX2-FP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12660; AVX2-FP-NEXT:    vmovups (%rsp), %ymm0 # 32-byte Reload12661; AVX2-FP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload12662; AVX2-FP-NEXT:    # ymm0 = ymm0[0],mem[1],ymm0[2,3,4,5,6,7]12663; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload12664; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1,2],mem[3]12665; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[3,2,2,3]12666; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[3,1,1,0,7,5,5,4]12667; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]12668; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload12669; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload12670; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm4[0,2],ymm7[1,3],ymm4[4,6],ymm7[5,7]12671; AVX2-FP-NEXT:    vbroadcastss 656(%rdi), %ymm212672; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]12673; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]12674; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12675; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12676; AVX2-FP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload12677; AVX2-FP-NEXT:    # ymm0 = ymm0[0],mem[1],ymm0[2,3,4,5,6,7]12678; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload12679; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1,2],mem[3]12680; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[3,2,2,3]12681; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[3,1,1,0,7,5,5,4]12682; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]12683; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload12684; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload12685; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm3[0,2],ymm10[1,3],ymm3[4,6],ymm10[5,7]12686; AVX2-FP-NEXT:    vbroadcastss 208(%rdi), %ymm212687; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]12688; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]12689; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12690; AVX2-FP-NEXT:    vbroadcastss 100(%rdi), %xmm012691; AVX2-FP-NEXT:    vmovaps 64(%rdi), %xmm612692; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm6[0,1,2],xmm0[3]12693; AVX2-FP-NEXT:    vmovsd {{.*#+}} xmm5 = [4,3,0,0]12694; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12695; AVX2-FP-NEXT:    vblendps $240, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload12696; AVX2-FP-NEXT:    # ymm1 = ymm1[0,1,2,3],mem[4,5,6,7]12697; AVX2-FP-NEXT:    vpermps %ymm1, %ymm5, %ymm112698; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm1[0,1],xmm0[2,3]12699; AVX2-FP-NEXT:    vbroadcastsd {{.*#+}} ymm15 = [0,7,0,7,0,7,0,7]12700; AVX2-FP-NEXT:    vpermps %ymm3, %ymm15, %ymm112701; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5],ymm10[6,7]12702; AVX2-FP-NEXT:    vbroadcastss 212(%rdi), %ymm212703; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]12704; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]12705; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12706; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12707; AVX2-FP-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload12708; AVX2-FP-NEXT:    # ymm0 = mem[0,1,2,3],ymm0[4,5,6,7]12709; AVX2-FP-NEXT:    vpermps %ymm0, %ymm5, %ymm012710; AVX2-FP-NEXT:    vbroadcastss 324(%rdi), %xmm212711; AVX2-FP-NEXT:    vmovaps 288(%rdi), %xmm112712; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm2 = xmm1[0,1,2],xmm2[3]12713; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0,1],xmm2[2,3]12714; AVX2-FP-NEXT:    vpermps %ymm12, %ymm15, %ymm212715; AVX2-FP-NEXT:    vblendps $192, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2, %ymm2 # 32-byte Folded Reload12716; AVX2-FP-NEXT:    # ymm2 = ymm2[0,1,2,3,4,5],mem[6,7]12717; AVX2-FP-NEXT:    vbroadcastss 436(%rdi), %ymm312718; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]12719; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm2[4,5,6,7]12720; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12721; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12722; AVX2-FP-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload12723; AVX2-FP-NEXT:    # ymm0 = mem[0,1,2,3],ymm0[4,5,6,7]12724; AVX2-FP-NEXT:    vpermps %ymm0, %ymm5, %ymm012725; AVX2-FP-NEXT:    vbroadcastss 548(%rdi), %xmm312726; AVX2-FP-NEXT:    vmovaps 512(%rdi), %xmm212727; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm3 = xmm2[0,1,2],xmm3[3]12728; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0,1],xmm3[2,3]12729; AVX2-FP-NEXT:    vpermps %ymm4, %ymm15, %ymm312730; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5],ymm7[6,7]12731; AVX2-FP-NEXT:    vbroadcastss 660(%rdi), %ymm412732; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5,6],ymm4[7]12733; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm3[4,5,6,7]12734; AVX2-FP-NEXT:    vmovups %ymm0, (%rsp) # 32-byte Spill12735; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12736; AVX2-FP-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload12737; AVX2-FP-NEXT:    # ymm0 = mem[0,1,2,3],ymm0[4,5,6,7]12738; AVX2-FP-NEXT:    vpermps %ymm0, %ymm5, %ymm012739; AVX2-FP-NEXT:    vbroadcastss 772(%rdi), %xmm412740; AVX2-FP-NEXT:    vmovaps 736(%rdi), %xmm312741; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm4 = xmm3[0,1,2],xmm4[3]12742; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0,1],xmm4[2,3]12743; AVX2-FP-NEXT:    vpermps %ymm14, %ymm15, %ymm412744; AVX2-FP-NEXT:    vblendps $192, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm4 # 32-byte Folded Reload12745; AVX2-FP-NEXT:    # ymm4 = ymm4[0,1,2,3,4,5],mem[6,7]12746; AVX2-FP-NEXT:    vbroadcastss 884(%rdi), %ymm712747; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm7[7]12748; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm4[4,5,6,7]12749; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12750; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12751; AVX2-FP-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload12752; AVX2-FP-NEXT:    # ymm0 = mem[0,1,2,3],ymm0[4,5,6,7]12753; AVX2-FP-NEXT:    vpermps %ymm0, %ymm5, %ymm012754; AVX2-FP-NEXT:    vbroadcastss 996(%rdi), %xmm712755; AVX2-FP-NEXT:    vmovaps 960(%rdi), %xmm412756; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm7 = xmm4[0,1,2],xmm7[3]12757; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0,1],xmm7[2,3]12758; AVX2-FP-NEXT:    vpermps %ymm8, %ymm15, %ymm712759; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3,4,5],ymm11[6,7]12760; AVX2-FP-NEXT:    vbroadcastss 1108(%rdi), %ymm812761; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3,4,5,6],ymm8[7]12762; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm7[4,5,6,7]12763; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12764; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12765; AVX2-FP-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload12766; AVX2-FP-NEXT:    # ymm0 = mem[0,1,2,3],ymm0[4,5,6,7]12767; AVX2-FP-NEXT:    vpermps %ymm0, %ymm5, %ymm012768; AVX2-FP-NEXT:    vbroadcastss 1220(%rdi), %xmm712769; AVX2-FP-NEXT:    vmovaps 1184(%rdi), %xmm1412770; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm7 = xmm14[0,1,2],xmm7[3]12771; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0,1],xmm7[2,3]12772; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload12773; AVX2-FP-NEXT:    vpermps %ymm10, %ymm15, %ymm712774; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload12775; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3,4,5],ymm12[6,7]12776; AVX2-FP-NEXT:    vbroadcastss 1332(%rdi), %ymm812777; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3,4,5,6],ymm8[7]12778; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm7[4,5,6,7]12779; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12780; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12781; AVX2-FP-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload12782; AVX2-FP-NEXT:    # ymm0 = mem[0,1,2,3],ymm0[4,5,6,7]12783; AVX2-FP-NEXT:    vpermps %ymm0, %ymm5, %ymm712784; AVX2-FP-NEXT:    vbroadcastss 1444(%rdi), %xmm812785; AVX2-FP-NEXT:    vmovaps 1408(%rdi), %xmm012786; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm8 = xmm0[0,1,2],xmm8[3]12787; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm7 = xmm7[0,1],xmm8[2,3]12788; AVX2-FP-NEXT:    vpermps {{[-0-9]+}}(%r{{[sb]}}p), %ymm15, %ymm8 # 32-byte Folded Reload12789; AVX2-FP-NEXT:    vmovaps %ymm9, %ymm1112790; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1,2,3,4,5],ymm9[6,7]12791; AVX2-FP-NEXT:    vbroadcastss 1556(%rdi), %ymm912792; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1,2,3,4,5,6],ymm9[7]12793; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3],ymm8[4,5,6,7]12794; AVX2-FP-NEXT:    vmovups %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12795; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload12796; AVX2-FP-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm7, %ymm7 # 32-byte Folded Reload12797; AVX2-FP-NEXT:    # ymm7 = mem[0,1,2,3],ymm7[4,5,6,7]12798; AVX2-FP-NEXT:    vpermps %ymm7, %ymm5, %ymm712799; AVX2-FP-NEXT:    vbroadcastss 1668(%rdi), %xmm812800; AVX2-FP-NEXT:    vmovaps 1632(%rdi), %xmm512801; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm8 = xmm5[0,1,2],xmm8[3]12802; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm7 = xmm7[0,1],xmm8[2,3]12803; AVX2-FP-NEXT:    vpermps %ymm13, %ymm15, %ymm812804; AVX2-FP-NEXT:    vblendps $192, {{[-0-9]+}}(%r{{[sb]}}p), %ymm8, %ymm8 # 32-byte Folded Reload12805; AVX2-FP-NEXT:    # ymm8 = ymm8[0,1,2,3,4,5],mem[6,7]12806; AVX2-FP-NEXT:    vbroadcastss 1780(%rdi), %ymm912807; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1,2,3,4,5,6],ymm9[7]12808; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3],ymm8[4,5,6,7]12809; AVX2-FP-NEXT:    vmovups %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12810; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload12811; AVX2-FP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm7, %ymm7 # 32-byte Folded Reload12812; AVX2-FP-NEXT:    # ymm7 = ymm7[0],mem[1],ymm7[2,3,4],mem[5],ymm7[6,7]12813; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm7 = ymm7[1,0,3,3,5,4,7,7]12814; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,0,3]12815; AVX2-FP-NEXT:    vbroadcastss 216(%rdi), %ymm812816; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3,4,5,6],ymm8[7]12817; AVX2-FP-NEXT:    vmovaps 96(%rdi), %xmm912818; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm6 = xmm9[0,1,2],xmm6[3]12819; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm6 = xmm6[0,1,3,2]12820; AVX2-FP-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Folded Reload12821; AVX2-FP-NEXT:    # ymm8 = mem[1,0,2,3,5,4,6,7]12822; AVX2-FP-NEXT:    vextractf128 $1, %ymm8, %xmm812823; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm6 = xmm8[0,1],xmm6[2,3]12824; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3],ymm7[4,5,6,7]12825; AVX2-FP-NEXT:    vmovups %ymm6, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12826; AVX2-FP-NEXT:    vmovaps 320(%rdi), %xmm1312827; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm13[0,1,2],xmm1[3]12828; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,3,2]12829; AVX2-FP-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Folded Reload12830; AVX2-FP-NEXT:    # ymm6 = mem[1,0,2,3,5,4,6,7]12831; AVX2-FP-NEXT:    vextractf128 $1, %ymm6, %xmm612832; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm6[0,1],xmm1[2,3]12833; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload12834; AVX2-FP-NEXT:    vblendps $221, {{[-0-9]+}}(%r{{[sb]}}p), %ymm6, %ymm6 # 32-byte Folded Reload12835; AVX2-FP-NEXT:    # ymm6 = mem[0],ymm6[1],mem[2,3,4],ymm6[5],mem[6,7]12836; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm6 = ymm6[1,0,3,3,5,4,7,7]12837; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm6 = ymm6[0,1,0,3]12838; AVX2-FP-NEXT:    vbroadcastss 440(%rdi), %ymm712839; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3,4,5,6],ymm7[7]12840; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm6[4,5,6,7]12841; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12842; AVX2-FP-NEXT:    vmovaps 544(%rdi), %xmm812843; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm8[0,1,2],xmm2[3]12844; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,3,2]12845; AVX2-FP-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload12846; AVX2-FP-NEXT:    # ymm2 = mem[1,0,2,3,5,4,6,7]12847; AVX2-FP-NEXT:    vextractf128 $1, %ymm2, %xmm212848; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm2[0,1],xmm1[2,3]12849; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload12850; AVX2-FP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2, %ymm2 # 32-byte Folded Reload12851; AVX2-FP-NEXT:    # ymm2 = ymm2[0],mem[1],ymm2[2,3,4],mem[5],ymm2[6,7]12852; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm2 = ymm2[1,0,3,3,5,4,7,7]12853; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[0,1,0,3]12854; AVX2-FP-NEXT:    vbroadcastss 664(%rdi), %ymm612855; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm6[7]12856; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]12857; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12858; AVX2-FP-NEXT:    vmovaps 768(%rdi), %xmm112859; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm2 = xmm1[0,1,2],xmm3[3]12860; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[0,1,3,2]12861; AVX2-FP-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Folded Reload12862; AVX2-FP-NEXT:    # ymm3 = mem[1,0,2,3,5,4,6,7]12863; AVX2-FP-NEXT:    vextractf128 $1, %ymm3, %xmm312864; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm2 = xmm3[0,1],xmm2[2,3]12865; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload12866; AVX2-FP-NEXT:    vblendps $221, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload12867; AVX2-FP-NEXT:    # ymm3 = mem[0],ymm3[1],mem[2,3,4],ymm3[5],mem[6,7]12868; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm3 = ymm3[1,0,3,3,5,4,7,7]12869; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm3 = ymm3[0,1,0,3]12870; AVX2-FP-NEXT:    vbroadcastss 888(%rdi), %ymm612871; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5,6],ymm6[7]12872; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6,7]12873; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12874; AVX2-FP-NEXT:    vmovaps 992(%rdi), %xmm212875; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm3 = xmm2[0,1,2],xmm4[3]12876; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm3 = xmm3[0,1,3,2]12877; AVX2-FP-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Folded Reload12878; AVX2-FP-NEXT:    # ymm4 = mem[1,0,2,3,5,4,6,7]12879; AVX2-FP-NEXT:    vextractf128 $1, %ymm4, %xmm412880; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm3 = xmm4[0,1],xmm3[2,3]12881; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload12882; AVX2-FP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm4 # 32-byte Folded Reload12883; AVX2-FP-NEXT:    # ymm4 = ymm4[0],mem[1],ymm4[2,3,4],mem[5],ymm4[6,7]12884; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm4 = ymm4[1,0,3,3,5,4,7,7]12885; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm4 = ymm4[0,1,0,3]12886; AVX2-FP-NEXT:    vbroadcastss 1112(%rdi), %ymm612887; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm6[7]12888; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm3[0,1,2,3],ymm4[4,5,6,7]12889; AVX2-FP-NEXT:    vmovaps 1216(%rdi), %xmm312890; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm4 = xmm3[0,1,2],xmm14[3]12891; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm4 = xmm4[0,1,3,2]12892; AVX2-FP-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Folded Reload12893; AVX2-FP-NEXT:    # ymm6 = mem[1,0,2,3,5,4,6,7]12894; AVX2-FP-NEXT:    vextractf128 $1, %ymm6, %xmm612895; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm4 = xmm6[0,1],xmm4[2,3]12896; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm12[0],ymm10[1],ymm12[2,3,4],ymm10[5],ymm12[6,7]12897; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm6 = ymm6[1,0,3,3,5,4,7,7]12898; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm6 = ymm6[0,1,0,3]12899; AVX2-FP-NEXT:    vbroadcastss 1336(%rdi), %ymm1012900; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3,4,5,6],ymm10[7]12901; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm4[0,1,2,3],ymm6[4,5,6,7]12902; AVX2-FP-NEXT:    vmovaps 1440(%rdi), %xmm412903; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm4[0,1,2],xmm0[3]12904; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[0,1,3,2]12905; AVX2-FP-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Folded Reload12906; AVX2-FP-NEXT:    # ymm10 = mem[1,0,2,3,5,4,6,7]12907; AVX2-FP-NEXT:    vextractf128 $1, %ymm10, %xmm1012908; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm10[0,1],xmm0[2,3]12909; AVX2-FP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11, %ymm10 # 32-byte Folded Reload12910; AVX2-FP-NEXT:    # ymm10 = ymm11[0],mem[1],ymm11[2,3,4],mem[5],ymm11[6,7]12911; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm10 = ymm10[1,0,3,3,5,4,7,7]12912; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm10 = ymm10[0,1,0,3]12913; AVX2-FP-NEXT:    vbroadcastss 1560(%rdi), %ymm1212914; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm10 = ymm10[0,1,2,3,4,5,6],ymm12[7]12915; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm10 = ymm0[0,1,2,3],ymm10[4,5,6,7]12916; AVX2-FP-NEXT:    vmovaps 1664(%rdi), %xmm1412917; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm14[0,1,2],xmm5[3]12918; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[0,1,3,2]12919; AVX2-FP-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Folded Reload12920; AVX2-FP-NEXT:    # ymm5 = mem[1,0,2,3,5,4,6,7]12921; AVX2-FP-NEXT:    vextractf128 $1, %ymm5, %xmm512922; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm5[0,1],xmm0[2,3]12923; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12924; AVX2-FP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5, %ymm5 # 32-byte Folded Reload12925; AVX2-FP-NEXT:    # ymm5 = ymm5[0],mem[1],ymm5[2,3,4],mem[5],ymm5[6,7]12926; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm5 = ymm5[1,0,3,3,5,4,7,7]12927; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[0,1,0,3]12928; AVX2-FP-NEXT:    vbroadcastss 1784(%rdi), %ymm1212929; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3,4,5,6],ymm12[7]12930; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm12 = ymm0[0,1,2,3],ymm5[4,5,6,7]12931; AVX2-FP-NEXT:    vbroadcastss 136(%rdi), %xmm012932; AVX2-FP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload12933; AVX2-FP-NEXT:    # xmm0 = xmm0[0],mem[1],xmm0[2,3]12934; AVX2-FP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm012935; AVX2-FP-NEXT:    vpermps 192(%rdi), %ymm15, %ymm512936; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm5[6,7]12937; AVX2-FP-NEXT:    vbroadcastss 80(%rdi), %ymm512938; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm5 = xmm5[0,1,2],xmm9[3]12939; AVX2-FP-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Folded Reload12940; AVX2-FP-NEXT:    # ymm11 = mem[2,3,2,3,6,7,6,7]12941; AVX2-FP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11, %ymm11 # 32-byte Folded Reload12942; AVX2-FP-NEXT:    # ymm11 = ymm11[0],mem[1],ymm11[2,3,4],mem[5],ymm11[6,7]12943; AVX2-FP-NEXT:    vextractf128 $1, %ymm11, %xmm1112944; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm5 = xmm11[0,1],xmm5[2,3]12945; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm11 = ymm5[0,1,2,3],ymm0[4,5,6,7]12946; AVX2-FP-NEXT:    vbroadcastss 360(%rdi), %xmm012947; AVX2-FP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload12948; AVX2-FP-NEXT:    # xmm0 = xmm0[0],mem[1],xmm0[2,3]12949; AVX2-FP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm012950; AVX2-FP-NEXT:    vpermps 416(%rdi), %ymm15, %ymm512951; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm5[6,7]12952; AVX2-FP-NEXT:    vbroadcastss 304(%rdi), %ymm512953; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm5 = xmm5[0,1,2],xmm13[3]12954; AVX2-FP-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 32-byte Folded Reload12955; AVX2-FP-NEXT:    # ymm13 = mem[2,3,2,3,6,7,6,7]12956; AVX2-FP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm13, %ymm13 # 32-byte Folded Reload12957; AVX2-FP-NEXT:    # ymm13 = ymm13[0],mem[1],ymm13[2,3,4],mem[5],ymm13[6,7]12958; AVX2-FP-NEXT:    vextractf128 $1, %ymm13, %xmm1312959; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm5 = xmm13[0,1],xmm5[2,3]12960; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm13 = ymm5[0,1,2,3],ymm0[4,5,6,7]12961; AVX2-FP-NEXT:    vbroadcastss 584(%rdi), %xmm012962; AVX2-FP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload12963; AVX2-FP-NEXT:    # xmm0 = xmm0[0],mem[1],xmm0[2,3]12964; AVX2-FP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm012965; AVX2-FP-NEXT:    vpermps 640(%rdi), %ymm15, %ymm512966; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm5[6,7]12967; AVX2-FP-NEXT:    vbroadcastss 528(%rdi), %ymm512968; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm5 = xmm5[0,1,2],xmm8[3]12969; AVX2-FP-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Folded Reload12970; AVX2-FP-NEXT:    # ymm8 = mem[2,3,2,3,6,7,6,7]12971; AVX2-FP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm8, %ymm8 # 32-byte Folded Reload12972; AVX2-FP-NEXT:    # ymm8 = ymm8[0],mem[1],ymm8[2,3,4],mem[5],ymm8[6,7]12973; AVX2-FP-NEXT:    vextractf128 $1, %ymm8, %xmm812974; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm5 = xmm8[0,1],xmm5[2,3]12975; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm8 = ymm5[0,1,2,3],ymm0[4,5,6,7]12976; AVX2-FP-NEXT:    vbroadcastss 808(%rdi), %xmm012977; AVX2-FP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload12978; AVX2-FP-NEXT:    # xmm0 = xmm0[0],mem[1],xmm0[2,3]12979; AVX2-FP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm012980; AVX2-FP-NEXT:    vpermps 864(%rdi), %ymm15, %ymm512981; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm5[6,7]12982; AVX2-FP-NEXT:    vbroadcastss 752(%rdi), %ymm512983; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm5[0,1,2],xmm1[3]12984; AVX2-FP-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Folded Reload12985; AVX2-FP-NEXT:    # ymm5 = mem[2,3,2,3,6,7,6,7]12986; AVX2-FP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5, %ymm5 # 32-byte Folded Reload12987; AVX2-FP-NEXT:    # ymm5 = ymm5[0],mem[1],ymm5[2,3,4],mem[5],ymm5[6,7]12988; AVX2-FP-NEXT:    vextractf128 $1, %ymm5, %xmm512989; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm5[0,1],xmm1[2,3]12990; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3],ymm0[4,5,6,7]12991; AVX2-FP-NEXT:    vbroadcastss 1032(%rdi), %xmm112992; AVX2-FP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload12993; AVX2-FP-NEXT:    # xmm1 = xmm1[0],mem[1],xmm1[2,3]12994; AVX2-FP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm112995; AVX2-FP-NEXT:    vpermps 1088(%rdi), %ymm15, %ymm512996; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5],ymm5[6,7]12997; AVX2-FP-NEXT:    vbroadcastss 976(%rdi), %ymm512998; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm2 = xmm5[0,1,2],xmm2[3]12999; AVX2-FP-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Folded Reload13000; AVX2-FP-NEXT:    # ymm5 = mem[2,3,2,3,6,7,6,7]13001; AVX2-FP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5, %ymm5 # 32-byte Folded Reload13002; AVX2-FP-NEXT:    # ymm5 = ymm5[0],mem[1],ymm5[2,3,4],mem[5],ymm5[6,7]13003; AVX2-FP-NEXT:    vextractf128 $1, %ymm5, %xmm513004; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm2 = xmm5[0,1],xmm2[2,3]13005; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0,1,2,3],ymm1[4,5,6,7]13006; AVX2-FP-NEXT:    vbroadcastss 1256(%rdi), %xmm213007; AVX2-FP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm2, %xmm2 # 16-byte Folded Reload13008; AVX2-FP-NEXT:    # xmm2 = xmm2[0],mem[1],xmm2[2,3]13009; AVX2-FP-NEXT:    vinsertf128 $1, %xmm2, %ymm0, %ymm213010; AVX2-FP-NEXT:    vpermps 1312(%rdi), %ymm15, %ymm513011; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5],ymm5[6,7]13012; AVX2-FP-NEXT:    vbroadcastss 1200(%rdi), %ymm513013; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm3 = xmm5[0,1,2],xmm3[3]13014; AVX2-FP-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Folded Reload13015; AVX2-FP-NEXT:    # ymm5 = mem[2,3,2,3,6,7,6,7]13016; AVX2-FP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5, %ymm5 # 32-byte Folded Reload13017; AVX2-FP-NEXT:    # ymm5 = ymm5[0],mem[1],ymm5[2,3,4],mem[5],ymm5[6,7]13018; AVX2-FP-NEXT:    vextractf128 $1, %ymm5, %xmm513019; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm3 = xmm5[0,1],xmm3[2,3]13020; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm3[0,1,2,3],ymm2[4,5,6,7]13021; AVX2-FP-NEXT:    vbroadcastss 1480(%rdi), %xmm313022; AVX2-FP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload13023; AVX2-FP-NEXT:    # xmm3 = xmm3[0],mem[1],xmm3[2,3]13024; AVX2-FP-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm313025; AVX2-FP-NEXT:    vpermps 1536(%rdi), %ymm15, %ymm513026; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5],ymm5[6,7]13027; AVX2-FP-NEXT:    vbroadcastss 1424(%rdi), %ymm513028; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm4 = xmm5[0,1,2],xmm4[3]13029; AVX2-FP-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Folded Reload13030; AVX2-FP-NEXT:    # ymm5 = mem[2,3,2,3,6,7,6,7]13031; AVX2-FP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5, %ymm5 # 32-byte Folded Reload13032; AVX2-FP-NEXT:    # ymm5 = ymm5[0],mem[1],ymm5[2,3,4],mem[5],ymm5[6,7]13033; AVX2-FP-NEXT:    vextractf128 $1, %ymm5, %xmm513034; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm4 = xmm5[0,1],xmm4[2,3]13035; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm4[0,1,2,3],ymm3[4,5,6,7]13036; AVX2-FP-NEXT:    vbroadcastss 1704(%rdi), %xmm413037; AVX2-FP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4, %xmm4 # 16-byte Folded Reload13038; AVX2-FP-NEXT:    # xmm4 = xmm4[0],mem[1],xmm4[2,3]13039; AVX2-FP-NEXT:    vpermps 1760(%rdi), %ymm15, %ymm513040; AVX2-FP-NEXT:    vinsertf128 $1, %xmm4, %ymm0, %ymm413041; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5],ymm5[6,7]13042; AVX2-FP-NEXT:    vbroadcastss 1648(%rdi), %ymm513043; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm5 = xmm5[0,1,2],xmm14[3]13044; AVX2-FP-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Folded Reload13045; AVX2-FP-NEXT:    # ymm14 = mem[2,3,2,3,6,7,6,7]13046; AVX2-FP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm14, %ymm14 # 32-byte Folded Reload13047; AVX2-FP-NEXT:    # ymm14 = ymm14[0],mem[1],ymm14[2,3,4],mem[5],ymm14[6,7]13048; AVX2-FP-NEXT:    vextractf128 $1, %ymm14, %xmm1413049; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm5 = xmm14[0,1],xmm5[2,3]13050; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm5[0,1,2,3],ymm4[4,5,6,7]13051; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13052; AVX2-FP-NEXT:    vmovaps %ymm5, 192(%rsi)13053; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13054; AVX2-FP-NEXT:    vmovaps %ymm5, 128(%rsi)13055; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13056; AVX2-FP-NEXT:    vmovaps %ymm5, 64(%rsi)13057; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13058; AVX2-FP-NEXT:    vmovaps %ymm5, (%rsi)13059; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13060; AVX2-FP-NEXT:    vmovaps %ymm5, 224(%rsi)13061; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13062; AVX2-FP-NEXT:    vmovaps %ymm5, 160(%rsi)13063; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13064; AVX2-FP-NEXT:    vmovaps %ymm5, 96(%rsi)13065; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13066; AVX2-FP-NEXT:    vmovaps %ymm5, 32(%rsi)13067; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13068; AVX2-FP-NEXT:    vmovaps %ymm5, 192(%rdx)13069; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13070; AVX2-FP-NEXT:    vmovaps %ymm5, 128(%rdx)13071; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13072; AVX2-FP-NEXT:    vmovaps %ymm5, 64(%rdx)13073; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13074; AVX2-FP-NEXT:    vmovaps %ymm5, (%rdx)13075; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13076; AVX2-FP-NEXT:    vmovaps %ymm5, 224(%rdx)13077; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13078; AVX2-FP-NEXT:    vmovaps %ymm5, 160(%rdx)13079; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13080; AVX2-FP-NEXT:    vmovaps %ymm5, 96(%rdx)13081; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13082; AVX2-FP-NEXT:    vmovaps %ymm5, 32(%rdx)13083; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13084; AVX2-FP-NEXT:    vmovaps %ymm5, 192(%rcx)13085; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13086; AVX2-FP-NEXT:    vmovaps %ymm5, 128(%rcx)13087; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13088; AVX2-FP-NEXT:    vmovaps %ymm5, 64(%rcx)13089; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13090; AVX2-FP-NEXT:    vmovaps %ymm5, (%rcx)13091; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13092; AVX2-FP-NEXT:    vmovaps %ymm5, 224(%rcx)13093; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13094; AVX2-FP-NEXT:    vmovaps %ymm5, 160(%rcx)13095; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13096; AVX2-FP-NEXT:    vmovaps %ymm5, 96(%rcx)13097; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13098; AVX2-FP-NEXT:    vmovaps %ymm5, 32(%rcx)13099; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13100; AVX2-FP-NEXT:    vmovaps %ymm5, (%r8)13101; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13102; AVX2-FP-NEXT:    vmovaps %ymm5, 64(%r8)13103; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13104; AVX2-FP-NEXT:    vmovaps %ymm5, 128(%r8)13105; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13106; AVX2-FP-NEXT:    vmovaps %ymm5, 192(%r8)13107; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13108; AVX2-FP-NEXT:    vmovaps %ymm5, 224(%r8)13109; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13110; AVX2-FP-NEXT:    vmovaps %ymm5, 160(%r8)13111; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13112; AVX2-FP-NEXT:    vmovaps %ymm5, 96(%r8)13113; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13114; AVX2-FP-NEXT:    vmovaps %ymm5, 32(%r8)13115; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13116; AVX2-FP-NEXT:    vmovaps %ymm5, 224(%r9)13117; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13118; AVX2-FP-NEXT:    vmovaps %ymm5, 192(%r9)13119; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13120; AVX2-FP-NEXT:    vmovaps %ymm5, 160(%r9)13121; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13122; AVX2-FP-NEXT:    vmovaps %ymm5, 128(%r9)13123; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13124; AVX2-FP-NEXT:    vmovaps %ymm5, 96(%r9)13125; AVX2-FP-NEXT:    vmovups (%rsp), %ymm5 # 32-byte Reload13126; AVX2-FP-NEXT:    vmovaps %ymm5, 64(%r9)13127; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13128; AVX2-FP-NEXT:    vmovaps %ymm5, 32(%r9)13129; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13130; AVX2-FP-NEXT:    vmovaps %ymm5, (%r9)13131; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %rax13132; AVX2-FP-NEXT:    vmovaps %ymm12, 224(%rax)13133; AVX2-FP-NEXT:    vmovaps %ymm10, 192(%rax)13134; AVX2-FP-NEXT:    vmovaps %ymm6, 160(%rax)13135; AVX2-FP-NEXT:    vmovaps %ymm7, 128(%rax)13136; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13137; AVX2-FP-NEXT:    vmovaps %ymm5, 96(%rax)13138; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13139; AVX2-FP-NEXT:    vmovaps %ymm5, 64(%rax)13140; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13141; AVX2-FP-NEXT:    vmovaps %ymm5, 32(%rax)13142; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13143; AVX2-FP-NEXT:    vmovaps %ymm5, (%rax)13144; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %rax13145; AVX2-FP-NEXT:    vmovaps %ymm4, 224(%rax)13146; AVX2-FP-NEXT:    vmovaps %ymm3, 192(%rax)13147; AVX2-FP-NEXT:    vmovaps %ymm2, 160(%rax)13148; AVX2-FP-NEXT:    vmovaps %ymm1, 128(%rax)13149; AVX2-FP-NEXT:    vmovaps %ymm0, 96(%rax)13150; AVX2-FP-NEXT:    vmovaps %ymm8, 64(%rax)13151; AVX2-FP-NEXT:    vmovaps %ymm13, 32(%rax)13152; AVX2-FP-NEXT:    vmovaps %ymm11, (%rax)13153; AVX2-FP-NEXT:    addq $2648, %rsp # imm = 0xA5813154; AVX2-FP-NEXT:    vzeroupper13155; AVX2-FP-NEXT:    retq13156;13157; AVX2-FCP-LABEL: load_i32_stride7_vf64:13158; AVX2-FCP:       # %bb.0:13159; AVX2-FCP-NEXT:    subq $2648, %rsp # imm = 0xA5813160; AVX2-FCP-NEXT:    vmovdqa 1216(%rdi), %ymm913161; AVX2-FCP-NEXT:    vmovdqu %ymm9, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13162; AVX2-FCP-NEXT:    vmovdqa 1152(%rdi), %ymm413163; AVX2-FCP-NEXT:    vmovdqa 1120(%rdi), %ymm513164; AVX2-FCP-NEXT:    vmovdqu %ymm5, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13165; AVX2-FCP-NEXT:    vmovdqa 768(%rdi), %ymm1313166; AVX2-FCP-NEXT:    vmovdqa 704(%rdi), %ymm613167; AVX2-FCP-NEXT:    vmovdqa 672(%rdi), %ymm713168; AVX2-FCP-NEXT:    vmovdqa 320(%rdi), %ymm813169; AVX2-FCP-NEXT:    vmovdqu %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13170; AVX2-FCP-NEXT:    vmovdqa 256(%rdi), %ymm1013171; AVX2-FCP-NEXT:    vmovdqa 224(%rdi), %ymm1113172; AVX2-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm0 = [0,7,6,0]13173; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm11[0,1,2,3,4,5],ymm10[6],ymm11[7]13174; AVX2-FCP-NEXT:    vmovdqu %ymm11, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13175; AVX2-FCP-NEXT:    vmovdqu %ymm10, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13176; AVX2-FCP-NEXT:    vpermd %ymm1, %ymm0, %ymm113177; AVX2-FCP-NEXT:    vpbroadcastq 304(%rdi), %ymm213178; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm8[4,5,6,7]13179; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]13180; AVX2-FCP-NEXT:    vmovdqa 352(%rdi), %xmm213181; AVX2-FCP-NEXT:    vmovdqa 384(%rdi), %xmm313182; AVX2-FCP-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill13183; AVX2-FCP-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]13184; AVX2-FCP-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm213185; AVX2-FCP-NEXT:    vpbroadcastd 420(%rdi), %ymm313186; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]13187; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]13188; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13189; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm7[0,1,2,3,4,5],ymm6[6],ymm7[7]13190; AVX2-FCP-NEXT:    vmovdqu %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13191; AVX2-FCP-NEXT:    vmovdqa %ymm6, %ymm813192; AVX2-FCP-NEXT:    vmovdqu %ymm6, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13193; AVX2-FCP-NEXT:    vpermd %ymm1, %ymm0, %ymm113194; AVX2-FCP-NEXT:    vpbroadcastq 752(%rdi), %ymm213195; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm13[4,5,6,7]13196; AVX2-FCP-NEXT:    vmovdqa %ymm13, %ymm613197; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]13198; AVX2-FCP-NEXT:    vmovdqa 800(%rdi), %xmm213199; AVX2-FCP-NEXT:    vmovdqa 832(%rdi), %xmm313200; AVX2-FCP-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill13201; AVX2-FCP-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]13202; AVX2-FCP-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm213203; AVX2-FCP-NEXT:    vpbroadcastd 868(%rdi), %ymm313204; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]13205; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]13206; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13207; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm5[0,1,2,3,4,5],ymm4[6],ymm5[7]13208; AVX2-FCP-NEXT:    vmovdqu %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13209; AVX2-FCP-NEXT:    vpermd %ymm1, %ymm0, %ymm113210; AVX2-FCP-NEXT:    vpbroadcastq 1200(%rdi), %ymm213211; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm9[4,5,6,7]13212; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]13213; AVX2-FCP-NEXT:    vmovdqa 1248(%rdi), %xmm213214; AVX2-FCP-NEXT:    vmovdqa 1280(%rdi), %xmm313215; AVX2-FCP-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill13216; AVX2-FCP-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]13217; AVX2-FCP-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm213218; AVX2-FCP-NEXT:    vpbroadcastd 1316(%rdi), %ymm313219; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]13220; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]13221; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13222; AVX2-FCP-NEXT:    vmovdqa 1600(%rdi), %ymm113223; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13224; AVX2-FCP-NEXT:    vmovdqa 1568(%rdi), %ymm513225; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm5[0,1,2,3,4,5],ymm1[6],ymm5[7]13226; AVX2-FCP-NEXT:    vmovdqu %ymm5, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13227; AVX2-FCP-NEXT:    vpermd %ymm1, %ymm0, %ymm113228; AVX2-FCP-NEXT:    vmovdqa 1664(%rdi), %ymm313229; AVX2-FCP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13230; AVX2-FCP-NEXT:    vpbroadcastq 1648(%rdi), %ymm213231; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6,7]13232; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]13233; AVX2-FCP-NEXT:    vmovdqa 1696(%rdi), %xmm213234; AVX2-FCP-NEXT:    vmovdqa 1728(%rdi), %xmm313235; AVX2-FCP-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill13236; AVX2-FCP-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]13237; AVX2-FCP-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm213238; AVX2-FCP-NEXT:    vpbroadcastd 1764(%rdi), %ymm313239; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]13240; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]13241; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13242; AVX2-FCP-NEXT:    vmovdqa 96(%rdi), %ymm213243; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13244; AVX2-FCP-NEXT:    vpbroadcastq 80(%rdi), %ymm113245; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]13246; AVX2-FCP-NEXT:    vmovdqa (%rdi), %ymm213247; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13248; AVX2-FCP-NEXT:    vmovdqa 32(%rdi), %ymm313249; AVX2-FCP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13250; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5],ymm3[6],ymm2[7]13251; AVX2-FCP-NEXT:    vpermd %ymm2, %ymm0, %ymm213252; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2],ymm1[3,4,5,6,7]13253; AVX2-FCP-NEXT:    vmovdqa 128(%rdi), %xmm213254; AVX2-FCP-NEXT:    vmovdqa 160(%rdi), %xmm313255; AVX2-FCP-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill13256; AVX2-FCP-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]13257; AVX2-FCP-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm213258; AVX2-FCP-NEXT:    vpbroadcastd 196(%rdi), %ymm313259; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]13260; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]13261; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13262; AVX2-FCP-NEXT:    vmovdqa 480(%rdi), %ymm213263; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13264; AVX2-FCP-NEXT:    vmovdqa 448(%rdi), %ymm113265; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13266; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5],ymm2[6],ymm1[7]13267; AVX2-FCP-NEXT:    vpermd %ymm1, %ymm0, %ymm113268; AVX2-FCP-NEXT:    vmovdqa 544(%rdi), %ymm313269; AVX2-FCP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13270; AVX2-FCP-NEXT:    vpbroadcastq 528(%rdi), %ymm213271; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6,7]13272; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]13273; AVX2-FCP-NEXT:    vmovdqa 576(%rdi), %xmm213274; AVX2-FCP-NEXT:    vmovdqa 608(%rdi), %xmm313275; AVX2-FCP-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill13276; AVX2-FCP-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]13277; AVX2-FCP-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm213278; AVX2-FCP-NEXT:    vpbroadcastd 644(%rdi), %ymm313279; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]13280; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]13281; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13282; AVX2-FCP-NEXT:    vmovdqa 928(%rdi), %ymm213283; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13284; AVX2-FCP-NEXT:    vmovdqa 896(%rdi), %ymm113285; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13286; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5],ymm2[6],ymm1[7]13287; AVX2-FCP-NEXT:    vpermd %ymm1, %ymm0, %ymm113288; AVX2-FCP-NEXT:    vmovdqa 992(%rdi), %ymm1213289; AVX2-FCP-NEXT:    vpbroadcastq 976(%rdi), %ymm213290; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm12[4,5,6,7]13291; AVX2-FCP-NEXT:    vmovdqu %ymm12, (%rsp) # 32-byte Spill13292; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2],ymm2[3,4,5,6,7]13293; AVX2-FCP-NEXT:    vmovdqa 1024(%rdi), %xmm213294; AVX2-FCP-NEXT:    vmovdqa 1056(%rdi), %xmm313295; AVX2-FCP-NEXT:    vmovdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill13296; AVX2-FCP-NEXT:    vpunpckhqdq {{.*#+}} xmm2 = xmm2[1],xmm3[1]13297; AVX2-FCP-NEXT:    vinserti128 $1, %xmm2, %ymm0, %ymm213298; AVX2-FCP-NEXT:    vpbroadcastd 1092(%rdi), %ymm313299; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]13300; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6,7]13301; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13302; AVX2-FCP-NEXT:    vmovdqa 1376(%rdi), %ymm1513303; AVX2-FCP-NEXT:    vmovdqa 1344(%rdi), %ymm1413304; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm14[0,1,2,3,4,5],ymm15[6],ymm14[7]13305; AVX2-FCP-NEXT:    vmovdqu %ymm14, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13306; AVX2-FCP-NEXT:    vmovdqu %ymm15, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13307; AVX2-FCP-NEXT:    vpermd %ymm1, %ymm0, %ymm013308; AVX2-FCP-NEXT:    vmovdqa 1440(%rdi), %ymm913309; AVX2-FCP-NEXT:    vpbroadcastq 1424(%rdi), %ymm113310; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm9[4,5,6,7]13311; AVX2-FCP-NEXT:    vmovdqu %ymm9, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13312; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2],ymm1[3,4,5,6,7]13313; AVX2-FCP-NEXT:    vmovdqa 1472(%rdi), %xmm113314; AVX2-FCP-NEXT:    vmovdqa 1504(%rdi), %xmm213315; AVX2-FCP-NEXT:    vmovdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill13316; AVX2-FCP-NEXT:    vpunpckhqdq {{.*#+}} xmm1 = xmm1[1],xmm2[1]13317; AVX2-FCP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm113318; AVX2-FCP-NEXT:    vpbroadcastd 1540(%rdi), %ymm213319; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]13320; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]13321; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13322; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm0 = mem[2,2,2,2]13323; AVX2-FCP-NEXT:    vinserti128 $1, %xmm0, %ymm0, %ymm313324; AVX2-FCP-NEXT:    vmovdqa 384(%rdi), %ymm113325; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13326; AVX2-FCP-NEXT:    vmovdqa 352(%rdi), %ymm013327; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13328; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm1 = ymm1[12,13,14,15],ymm0[0,1,2,3,4,5,6,7,8,9,10,11],ymm1[28,29,30,31],ymm0[16,17,18,19,20,21,22,23,24,25,26,27]13329; AVX2-FCP-NEXT:    vpermq {{.*#+}} ymm1 = ymm1[0,1,2,0]13330; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm3[7]13331; AVX2-FCP-NEXT:    vmovdqa 288(%rdi), %ymm013332; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13333; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 32-byte Reload13334; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm13[0,1],ymm0[2,3],ymm13[4,5],ymm0[6,7]13335; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm10[0],ymm11[1],ymm10[2,3,4],ymm11[5],ymm10[6,7]13336; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13337; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm0[5,6],ymm2[7]13338; AVX2-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm0 = [1,0,7,6,5,6,5,6]13339; AVX2-FCP-NEXT:    vpermd %ymm2, %ymm0, %ymm213340; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]13341; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13342; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]13343; AVX2-FCP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm113344; AVX2-FCP-NEXT:    vmovdqa 832(%rdi), %ymm213345; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13346; AVX2-FCP-NEXT:    vmovdqa 800(%rdi), %ymm313347; AVX2-FCP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13348; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm2[12,13,14,15],ymm3[0,1,2,3,4,5,6,7,8,9,10,11],ymm2[28,29,30,31],ymm3[16,17,18,19,20,21,22,23,24,25,26,27]13349; AVX2-FCP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]13350; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]13351; AVX2-FCP-NEXT:    vmovdqa 736(%rdi), %ymm213352; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13353; AVX2-FCP-NEXT:    vmovdqu %ymm6, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13354; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm6[0,1],ymm2[2,3],ymm6[4,5],ymm2[6,7]13355; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm3 = ymm8[0],ymm7[1],ymm8[2,3,4],ymm7[5],ymm8[6,7]13356; AVX2-FCP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13357; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm3[0,1,2,3,4],ymm2[5,6],ymm3[7]13358; AVX2-FCP-NEXT:    vpermd %ymm2, %ymm0, %ymm213359; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]13360; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13361; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]13362; AVX2-FCP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm113363; AVX2-FCP-NEXT:    vmovdqa 1280(%rdi), %ymm313364; AVX2-FCP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13365; AVX2-FCP-NEXT:    vmovdqa 1248(%rdi), %ymm213366; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13367; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm3[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm3[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]13368; AVX2-FCP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]13369; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]13370; AVX2-FCP-NEXT:    vmovdqa 1184(%rdi), %ymm213371; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13372; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Reload13373; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm8[0,1],ymm2[2,3],ymm8[4,5],ymm2[6,7]13374; AVX2-FCP-NEXT:    vpblendd $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm7 # 32-byte Folded Reload13375; AVX2-FCP-NEXT:    # ymm7 = ymm4[0],mem[1],ymm4[2,3,4],mem[5],ymm4[6,7]13376; AVX2-FCP-NEXT:    vmovdqu %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13377; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm7[0,1,2,3,4],ymm2[5,6],ymm7[7]13378; AVX2-FCP-NEXT:    vpermd %ymm2, %ymm0, %ymm213379; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]13380; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13381; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]13382; AVX2-FCP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm113383; AVX2-FCP-NEXT:    vmovdqa 1728(%rdi), %ymm313384; AVX2-FCP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13385; AVX2-FCP-NEXT:    vmovdqa 1696(%rdi), %ymm213386; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13387; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm3[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm3[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]13388; AVX2-FCP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]13389; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]13390; AVX2-FCP-NEXT:    vmovdqa 1632(%rdi), %ymm213391; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13392; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload13393; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm7[0,1],ymm2[2,3],ymm7[4,5],ymm2[6,7]13394; AVX2-FCP-NEXT:    vpblendd $221, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5, %ymm5 # 32-byte Folded Reload13395; AVX2-FCP-NEXT:    # ymm5 = mem[0],ymm5[1],mem[2,3,4],ymm5[5],mem[6,7]13396; AVX2-FCP-NEXT:    vmovdqu %ymm5, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13397; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm5[0,1,2,3,4],ymm2[5,6],ymm5[7]13398; AVX2-FCP-NEXT:    vpermd %ymm2, %ymm0, %ymm213399; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]13400; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13401; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]13402; AVX2-FCP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm113403; AVX2-FCP-NEXT:    vmovdqa 608(%rdi), %ymm313404; AVX2-FCP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13405; AVX2-FCP-NEXT:    vmovdqa 576(%rdi), %ymm213406; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13407; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm3[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm3[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]13408; AVX2-FCP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]13409; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]13410; AVX2-FCP-NEXT:    vmovdqa 512(%rdi), %ymm213411; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13412; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload13413; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm11[0,1],ymm2[2,3],ymm11[4,5],ymm2[6,7]13414; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload13415; AVX2-FCP-NEXT:    vpblendd $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload13416; AVX2-FCP-NEXT:    # ymm3 = ymm3[0],mem[1],ymm3[2,3,4],mem[5],ymm3[6,7]13417; AVX2-FCP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13418; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm3[0,1,2,3,4],ymm2[5,6],ymm3[7]13419; AVX2-FCP-NEXT:    vpermd %ymm2, %ymm0, %ymm213420; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]13421; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13422; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]13423; AVX2-FCP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm113424; AVX2-FCP-NEXT:    vmovdqa 1056(%rdi), %ymm313425; AVX2-FCP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13426; AVX2-FCP-NEXT:    vmovdqa 1024(%rdi), %ymm213427; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13428; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm3[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm3[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]13429; AVX2-FCP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]13430; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]13431; AVX2-FCP-NEXT:    vmovdqa 960(%rdi), %ymm213432; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13433; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm12[0,1],ymm2[2,3],ymm12[4,5],ymm2[6,7]13434; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload13435; AVX2-FCP-NEXT:    vpblendd $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload13436; AVX2-FCP-NEXT:    # ymm3 = ymm3[0],mem[1],ymm3[2,3,4],mem[5],ymm3[6,7]13437; AVX2-FCP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13438; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm3[0,1,2,3,4],ymm2[5,6],ymm3[7]13439; AVX2-FCP-NEXT:    vpermd %ymm2, %ymm0, %ymm213440; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]13441; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13442; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]13443; AVX2-FCP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm113444; AVX2-FCP-NEXT:    vmovdqa 1504(%rdi), %ymm313445; AVX2-FCP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13446; AVX2-FCP-NEXT:    vmovdqa 1472(%rdi), %ymm213447; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13448; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm3[12,13,14,15],ymm2[0,1,2,3,4,5,6,7,8,9,10,11],ymm3[28,29,30,31],ymm2[16,17,18,19,20,21,22,23,24,25,26,27]13449; AVX2-FCP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]13450; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]13451; AVX2-FCP-NEXT:    vmovdqa 1408(%rdi), %ymm213452; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13453; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm9[0,1],ymm2[2,3],ymm9[4,5],ymm2[6,7]13454; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm3 = ymm15[0],ymm14[1],ymm15[2,3,4],ymm14[5],ymm15[6,7]13455; AVX2-FCP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13456; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm3[0,1,2,3,4],ymm2[5,6],ymm3[7]13457; AVX2-FCP-NEXT:    vpermd %ymm2, %ymm0, %ymm213458; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6,7]13459; AVX2-FCP-NEXT:    vmovdqu %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13460; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm1 = mem[2,2,2,2]13461; AVX2-FCP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm113462; AVX2-FCP-NEXT:    vmovdqa 160(%rdi), %ymm1513463; AVX2-FCP-NEXT:    vmovdqa 128(%rdi), %ymm1413464; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm2 = ymm15[12,13,14,15],ymm14[0,1,2,3,4,5,6,7,8,9,10,11],ymm15[28,29,30,31],ymm14[16,17,18,19,20,21,22,23,24,25,26,27]13465; AVX2-FCP-NEXT:    vmovdqu %ymm14, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13466; AVX2-FCP-NEXT:    vmovdqu %ymm15, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13467; AVX2-FCP-NEXT:    vpermq {{.*#+}} ymm2 = ymm2[0,1,2,0]13468; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5,6],ymm1[7]13469; AVX2-FCP-NEXT:    vmovdqa 64(%rdi), %ymm413470; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload13471; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm12[0,1],ymm4[2,3],ymm12[4,5],ymm4[6,7]13472; AVX2-FCP-NEXT:    vmovdqu %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13473; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload13474; AVX2-FCP-NEXT:    vpblendd $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload13475; AVX2-FCP-NEXT:    # ymm3 = ymm3[0],mem[1],ymm3[2,3,4],mem[5],ymm3[6,7]13476; AVX2-FCP-NEXT:    vmovdqu %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13477; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm3[0,1,2,3,4],ymm2[5,6],ymm3[7]13478; AVX2-FCP-NEXT:    vpermd %ymm2, %ymm0, %ymm013479; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]13480; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13481; AVX2-FCP-NEXT:    vmovdqa 304(%rdi), %xmm013482; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13483; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm1 = ymm13[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],ymm13[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23]13484; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]13485; AVX2-FCP-NEXT:    vpbroadcastd 232(%rdi), %xmm113486; AVX2-FCP-NEXT:    vmovdqa 256(%rdi), %xmm513487; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm5[1],xmm1[2,3]13488; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]13489; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload13490; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload13491; AVX2-FCP-NEXT:    vpunpcklqdq {{.*#+}} ymm1 = ymm10[0],ymm9[0],ymm10[2],ymm9[2]13492; AVX2-FCP-NEXT:    vpbroadcastd 428(%rdi), %ymm213493; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]13494; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]13495; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13496; AVX2-FCP-NEXT:    vmovdqa 752(%rdi), %xmm013497; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13498; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm1 = ymm6[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],ymm6[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23]13499; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]13500; AVX2-FCP-NEXT:    vpbroadcastd 680(%rdi), %xmm113501; AVX2-FCP-NEXT:    vmovdqa 704(%rdi), %xmm213502; AVX2-FCP-NEXT:    vmovdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill13503; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm2[1],xmm1[2,3]13504; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]13505; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload13506; AVX2-FCP-NEXT:    vpunpcklqdq {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm1 # 32-byte Folded Reload13507; AVX2-FCP-NEXT:    # ymm1 = ymm3[0],mem[0],ymm3[2],mem[2]13508; AVX2-FCP-NEXT:    vpbroadcastd 876(%rdi), %ymm213509; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]13510; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]13511; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13512; AVX2-FCP-NEXT:    vmovdqa 1200(%rdi), %xmm013513; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13514; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm1 = ymm8[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],ymm8[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23]13515; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]13516; AVX2-FCP-NEXT:    vpbroadcastd 1128(%rdi), %xmm113517; AVX2-FCP-NEXT:    vmovdqa 1152(%rdi), %xmm213518; AVX2-FCP-NEXT:    vmovdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill13519; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm2[1],xmm1[2,3]13520; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]13521; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Reload13522; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13523; AVX2-FCP-NEXT:    vpunpcklqdq {{.*#+}} ymm1 = ymm1[0],ymm8[0],ymm1[2],ymm8[2]13524; AVX2-FCP-NEXT:    vpbroadcastd 1324(%rdi), %ymm213525; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]13526; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]13527; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13528; AVX2-FCP-NEXT:    vmovdqa 1648(%rdi), %xmm013529; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13530; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm1 = ymm7[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],ymm7[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23]13531; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]13532; AVX2-FCP-NEXT:    vpbroadcastd 1576(%rdi), %xmm113533; AVX2-FCP-NEXT:    vmovdqa 1600(%rdi), %xmm213534; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm2[1],xmm1[2,3]13535; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]13536; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13537; AVX2-FCP-NEXT:    vpunpcklqdq {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload13538; AVX2-FCP-NEXT:    # ymm1 = ymm1[0],mem[0],ymm1[2],mem[2]13539; AVX2-FCP-NEXT:    vpbroadcastd 1772(%rdi), %ymm613540; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm6[7]13541; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]13542; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13543; AVX2-FCP-NEXT:    vmovdqa 80(%rdi), %xmm013544; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm1 = ymm12[8,9,10,11,12,13,14,15],ymm4[0,1,2,3,4,5,6,7],ymm12[24,25,26,27,28,29,30,31],ymm4[16,17,18,19,20,21,22,23]13545; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]13546; AVX2-FCP-NEXT:    vpbroadcastd 8(%rdi), %xmm113547; AVX2-FCP-NEXT:    vmovdqa 32(%rdi), %xmm413548; AVX2-FCP-NEXT:    vmovdqa %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill13549; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm4[1],xmm1[2,3]13550; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]13551; AVX2-FCP-NEXT:    vpunpcklqdq {{.*#+}} ymm1 = ymm14[0],ymm15[0],ymm14[2],ymm15[2]13552; AVX2-FCP-NEXT:    vpbroadcastd 204(%rdi), %ymm613553; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm6[7]13554; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]13555; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13556; AVX2-FCP-NEXT:    vmovdqa 528(%rdi), %xmm013557; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13558; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm1 = ymm11[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],ymm11[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23]13559; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]13560; AVX2-FCP-NEXT:    vpbroadcastd 456(%rdi), %xmm113561; AVX2-FCP-NEXT:    vmovdqa 480(%rdi), %xmm413562; AVX2-FCP-NEXT:    vmovdqa %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill13563; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm1[0],xmm4[1],xmm1[2,3]13564; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]13565; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13566; AVX2-FCP-NEXT:    vpunpcklqdq {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload13567; AVX2-FCP-NEXT:    # ymm1 = ymm1[0],mem[0],ymm1[2],mem[2]13568; AVX2-FCP-NEXT:    vpbroadcastd 652(%rdi), %ymm1513569; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm15[7]13570; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]13571; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13572; AVX2-FCP-NEXT:    vmovdqa 976(%rdi), %xmm013573; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13574; AVX2-FCP-NEXT:    vpalignr $8, (%rsp), %ymm1, %ymm1 # 32-byte Folded Reload13575; AVX2-FCP-NEXT:    # ymm1 = mem[8,9,10,11,12,13,14,15],ymm1[0,1,2,3,4,5,6,7],mem[24,25,26,27,28,29,30,31],ymm1[16,17,18,19,20,21,22,23]13576; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3],ymm1[4,5,6,7]13577; AVX2-FCP-NEXT:    vpbroadcastd 904(%rdi), %xmm1513578; AVX2-FCP-NEXT:    vmovdqa 928(%rdi), %xmm1213579; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm15 = xmm15[0],xmm12[1],xmm15[2,3]13580; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm15[0,1],ymm0[2,3,4,5,6,7]13581; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13582; AVX2-FCP-NEXT:    vpunpcklqdq {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm15 # 32-byte Folded Reload13583; AVX2-FCP-NEXT:    # ymm15 = ymm1[0],mem[0],ymm1[2],mem[2]13584; AVX2-FCP-NEXT:    vpbroadcastd 1100(%rdi), %ymm1413585; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm14 = ymm15[0,1,2,3,4,5,6],ymm14[7]13586; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm14[5,6,7]13587; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13588; AVX2-FCP-NEXT:    vmovdqa 1424(%rdi), %xmm013589; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload13590; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload13591; AVX2-FCP-NEXT:    vpalignr {{.*#+}} ymm14 = ymm7[8,9,10,11,12,13,14,15],ymm6[0,1,2,3,4,5,6,7],ymm7[24,25,26,27,28,29,30,31],ymm6[16,17,18,19,20,21,22,23]13592; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm14 = ymm14[0,1,2],ymm0[3],ymm14[4,5,6,7]13593; AVX2-FCP-NEXT:    vpbroadcastd 1352(%rdi), %xmm1513594; AVX2-FCP-NEXT:    vmovdqa 1376(%rdi), %xmm013595; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm15 = xmm15[0],xmm0[1],xmm15[2,3]13596; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm14 = ymm15[0,1],ymm14[2,3,4,5,6,7]13597; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload13598; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13599; AVX2-FCP-NEXT:    vpunpcklqdq {{.*#+}} ymm15 = ymm11[0],ymm1[0],ymm11[2],ymm1[2]13600; AVX2-FCP-NEXT:    vpbroadcastd 1548(%rdi), %ymm1313601; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm13 = ymm15[0,1,2,3,4,5,6],ymm13[7]13602; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm13 = ymm14[0,1,2,3,4],ymm13[5,6,7]13603; AVX2-FCP-NEXT:    vmovdqu %ymm13, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13604; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload13605; AVX2-FCP-NEXT:    vpblendd $2, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm13 # 32-byte Folded Reload13606; AVX2-FCP-NEXT:    # ymm13 = ymm4[0],mem[1],ymm4[2,3,4,5,6,7]13607; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm5 = xmm5[0,1,2],mem[3]13608; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm5 = xmm5[3,2,2,3]13609; AVX2-FCP-NEXT:    vpshufd {{.*#+}} ymm13 = ymm13[3,1,1,0,7,5,5,4]13610; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm5[0,1],ymm13[2,3,4,5,6,7]13611; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm13 = ymm10[0,2],ymm9[1,3],ymm10[4,6],ymm9[5,7]13612; AVX2-FCP-NEXT:    vbroadcastss 432(%rdi), %ymm1413613; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm13 = ymm13[0,1,2,3,4,5,6],ymm14[7]13614; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm5 = ymm5[0,1,2,3,4],ymm13[5,6,7]13615; AVX2-FCP-NEXT:    vmovdqu %ymm5, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13616; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload13617; AVX2-FCP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm5 # 32-byte Folded Reload13618; AVX2-FCP-NEXT:    # ymm5 = ymm4[0],mem[1],ymm4[2,3,4,5,6,7]13619; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload13620; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm4 = xmm4[0,1,2],mem[3]13621; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm4 = xmm4[3,2,2,3]13622; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm5 = ymm5[3,1,1,0,7,5,5,4]13623; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1],ymm5[2,3,4,5,6,7]13624; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload13625; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm5 = ymm3[0,2],ymm10[1,3],ymm3[4,6],ymm10[5,7]13626; AVX2-FCP-NEXT:    vbroadcastss 880(%rdi), %ymm1313627; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3,4,5,6],ymm13[7]13628; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm4[0,1,2,3,4],ymm5[5,6,7]13629; AVX2-FCP-NEXT:    vmovups %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13630; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload13631; AVX2-FCP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm4 # 32-byte Folded Reload13632; AVX2-FCP-NEXT:    # ymm4 = ymm3[0],mem[1],ymm3[2,3,4,5,6,7]13633; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload13634; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm3 = xmm3[0,1,2],mem[3]13635; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm3 = xmm3[3,2,2,3]13636; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm4 = ymm4[3,1,1,0,7,5,5,4]13637; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1],ymm4[2,3,4,5,6,7]13638; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload13639; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm4 = ymm14[0,2],ymm8[1,3],ymm14[4,6],ymm8[5,7]13640; AVX2-FCP-NEXT:    vmovaps %ymm8, %ymm1313641; AVX2-FCP-NEXT:    vbroadcastss 1328(%rdi), %ymm513642; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm5[7]13643; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4],ymm4[5,6,7]13644; AVX2-FCP-NEXT:    vmovups %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13645; AVX2-FCP-NEXT:    vmovdqu {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload13646; AVX2-FCP-NEXT:    vpblendd $2, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload13647; AVX2-FCP-NEXT:    # ymm3 = ymm3[0],mem[1],ymm3[2,3,4,5,6,7]13648; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm2 = xmm2[0,1,2],mem[3]13649; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm2 = xmm2[3,2,2,3]13650; AVX2-FCP-NEXT:    vpshufd {{.*#+}} ymm3 = ymm3[3,1,1,0,7,5,5,4]13651; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1],ymm3[2,3,4,5,6,7]13652; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload13653; AVX2-FCP-NEXT:    vshufps $216, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload13654; AVX2-FCP-NEXT:    # ymm3 = ymm3[0,2],mem[1,3],ymm3[4,6],mem[5,7]13655; AVX2-FCP-NEXT:    vbroadcastss 1776(%rdi), %ymm413656; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5,6],ymm4[7]13657; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm3[5,6,7]13658; AVX2-FCP-NEXT:    vmovdqu %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13659; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm2 = ymm7[0],ymm6[1],ymm7[2,3,4,5,6,7]13660; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm0 = xmm0[0,1,2],mem[3]13661; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm0 = xmm0[3,2,2,3]13662; AVX2-FCP-NEXT:    vpshufd {{.*#+}} ymm2 = ymm2[3,1,1,0,7,5,5,4]13663; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1],ymm2[2,3,4,5,6,7]13664; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm2 = ymm11[0,2],ymm1[1,3],ymm11[4,6],ymm1[5,7]13665; AVX2-FCP-NEXT:    vbroadcastss 1552(%rdi), %ymm313666; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]13667; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm2[5,6,7]13668; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13669; AVX2-FCP-NEXT:    vmovdqu (%rsp), %ymm0 # 32-byte Reload13670; AVX2-FCP-NEXT:    vpblendd $2, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload13671; AVX2-FCP-NEXT:    # ymm0 = ymm0[0],mem[1],ymm0[2,3,4,5,6,7]13672; AVX2-FCP-NEXT:    vpblendd {{.*#+}} xmm1 = xmm12[0,1,2],mem[3]13673; AVX2-FCP-NEXT:    vpshufd {{.*#+}} xmm1 = xmm1[3,2,2,3]13674; AVX2-FCP-NEXT:    vpshufd {{.*#+}} ymm0 = ymm0[3,1,1,0,7,5,5,4]13675; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]13676; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload13677; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Reload13678; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm11[0,2],ymm8[1,3],ymm11[4,6],ymm8[5,7]13679; AVX2-FCP-NEXT:    vbroadcastss 1104(%rdi), %ymm213680; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]13681; AVX2-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]13682; AVX2-FCP-NEXT:    vmovdqu %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13683; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13684; AVX2-FCP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload13685; AVX2-FCP-NEXT:    # ymm0 = ymm0[0],mem[1],ymm0[2,3,4,5,6,7]13686; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload13687; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1,2],mem[3]13688; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[3,2,2,3]13689; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[3,1,1,0,7,5,5,4]13690; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]13691; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload13692; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload13693; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm6[0,2],ymm7[1,3],ymm6[4,6],ymm7[5,7]13694; AVX2-FCP-NEXT:    vbroadcastss 656(%rdi), %ymm213695; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]13696; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]13697; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13698; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13699; AVX2-FCP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload13700; AVX2-FCP-NEXT:    # ymm0 = ymm0[0],mem[1],ymm0[2,3,4,5,6,7]13701; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload13702; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1,2],mem[3]13703; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[3,2,2,3]13704; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[3,1,1,0,7,5,5,4]13705; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5,6,7]13706; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload13707; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload13708; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm4[0,2],ymm12[1,3],ymm4[4,6],ymm12[5,7]13709; AVX2-FCP-NEXT:    vbroadcastss 208(%rdi), %ymm213710; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5,6],ymm2[7]13711; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6,7]13712; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13713; AVX2-FCP-NEXT:    vbroadcastss 100(%rdi), %xmm013714; AVX2-FCP-NEXT:    vmovaps 64(%rdi), %xmm313715; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm3[0,1,2],xmm0[3]13716; AVX2-FCP-NEXT:    vmovsd {{.*#+}} xmm0 = [4,3,0,0]13717; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload13718; AVX2-FCP-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2, %ymm2 # 32-byte Folded Reload13719; AVX2-FCP-NEXT:    # ymm2 = mem[0,1,2,3],ymm2[4,5,6,7]13720; AVX2-FCP-NEXT:    vpermps %ymm2, %ymm0, %ymm213721; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm2[0,1],xmm1[2,3]13722; AVX2-FCP-NEXT:    vbroadcastsd {{.*#+}} ymm15 = [0,7,0,7,0,7,0,7]13723; AVX2-FCP-NEXT:    vpermps %ymm4, %ymm15, %ymm213724; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5],ymm12[6,7]13725; AVX2-FCP-NEXT:    vbroadcastss 212(%rdi), %ymm413726; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm4[7]13727; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]13728; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13729; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13730; AVX2-FCP-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload13731; AVX2-FCP-NEXT:    # ymm1 = mem[0,1,2,3],ymm1[4,5,6,7]13732; AVX2-FCP-NEXT:    vpermps %ymm1, %ymm0, %ymm213733; AVX2-FCP-NEXT:    vbroadcastss 324(%rdi), %xmm413734; AVX2-FCP-NEXT:    vmovaps 288(%rdi), %xmm113735; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm4 = xmm1[0,1,2],xmm4[3]13736; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0,1],xmm4[2,3]13737; AVX2-FCP-NEXT:    vpermps {{[-0-9]+}}(%r{{[sb]}}p), %ymm15, %ymm4 # 32-byte Folded Reload13738; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5],ymm9[6,7]13739; AVX2-FCP-NEXT:    vbroadcastss 436(%rdi), %ymm513740; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm5[7]13741; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm4[4,5,6,7]13742; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13743; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload13744; AVX2-FCP-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2, %ymm2 # 32-byte Folded Reload13745; AVX2-FCP-NEXT:    # ymm2 = mem[0,1,2,3],ymm2[4,5,6,7]13746; AVX2-FCP-NEXT:    vpermps %ymm2, %ymm0, %ymm413747; AVX2-FCP-NEXT:    vbroadcastss 548(%rdi), %xmm513748; AVX2-FCP-NEXT:    vmovaps 512(%rdi), %xmm213749; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm5 = xmm2[0,1,2],xmm5[3]13750; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm4 = xmm4[0,1],xmm5[2,3]13751; AVX2-FCP-NEXT:    vpermps %ymm6, %ymm15, %ymm513752; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3,4,5],ymm7[6,7]13753; AVX2-FCP-NEXT:    vbroadcastss 660(%rdi), %ymm613754; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3,4,5,6],ymm6[7]13755; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3],ymm5[4,5,6,7]13756; AVX2-FCP-NEXT:    vmovups %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13757; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload13758; AVX2-FCP-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm4 # 32-byte Folded Reload13759; AVX2-FCP-NEXT:    # ymm4 = mem[0,1,2,3],ymm4[4,5,6,7]13760; AVX2-FCP-NEXT:    vpermps %ymm4, %ymm0, %ymm513761; AVX2-FCP-NEXT:    vbroadcastss 772(%rdi), %xmm613762; AVX2-FCP-NEXT:    vmovaps 736(%rdi), %xmm413763; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm6 = xmm4[0,1,2],xmm6[3]13764; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm5 = xmm5[0,1],xmm6[2,3]13765; AVX2-FCP-NEXT:    vpermps {{[-0-9]+}}(%r{{[sb]}}p), %ymm15, %ymm6 # 32-byte Folded Reload13766; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3,4,5],ymm10[6,7]13767; AVX2-FCP-NEXT:    vbroadcastss 884(%rdi), %ymm713768; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3,4,5,6],ymm7[7]13769; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3],ymm6[4,5,6,7]13770; AVX2-FCP-NEXT:    vmovups %ymm5, (%rsp) # 32-byte Spill13771; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload13772; AVX2-FCP-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5, %ymm5 # 32-byte Folded Reload13773; AVX2-FCP-NEXT:    # ymm5 = mem[0,1,2,3],ymm5[4,5,6,7]13774; AVX2-FCP-NEXT:    vpermps %ymm5, %ymm0, %ymm613775; AVX2-FCP-NEXT:    vbroadcastss 996(%rdi), %xmm713776; AVX2-FCP-NEXT:    vmovaps 960(%rdi), %xmm513777; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm7 = xmm5[0,1,2],xmm7[3]13778; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm6 = xmm6[0,1],xmm7[2,3]13779; AVX2-FCP-NEXT:    vpermps %ymm11, %ymm15, %ymm713780; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3,4,5],ymm8[6,7]13781; AVX2-FCP-NEXT:    vbroadcastss 1108(%rdi), %ymm813782; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3,4,5,6],ymm8[7]13783; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3],ymm7[4,5,6,7]13784; AVX2-FCP-NEXT:    vmovups %ymm6, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13785; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload13786; AVX2-FCP-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm6, %ymm6 # 32-byte Folded Reload13787; AVX2-FCP-NEXT:    # ymm6 = mem[0,1,2,3],ymm6[4,5,6,7]13788; AVX2-FCP-NEXT:    vpermps %ymm6, %ymm0, %ymm613789; AVX2-FCP-NEXT:    vbroadcastss 1220(%rdi), %xmm713790; AVX2-FCP-NEXT:    vmovaps 1184(%rdi), %xmm1013791; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm7 = xmm10[0,1,2],xmm7[3]13792; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm6 = xmm6[0,1],xmm7[2,3]13793; AVX2-FCP-NEXT:    vpermps %ymm14, %ymm15, %ymm713794; AVX2-FCP-NEXT:    vmovaps %ymm13, %ymm1113795; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3,4,5],ymm13[6,7]13796; AVX2-FCP-NEXT:    vbroadcastss 1332(%rdi), %ymm813797; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3,4,5,6],ymm8[7]13798; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3],ymm7[4,5,6,7]13799; AVX2-FCP-NEXT:    vmovups %ymm6, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13800; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload13801; AVX2-FCP-NEXT:    vblendps $15, {{[-0-9]+}}(%r{{[sb]}}p), %ymm6, %ymm6 # 32-byte Folded Reload13802; AVX2-FCP-NEXT:    # ymm6 = mem[0,1,2,3],ymm6[4,5,6,7]13803; AVX2-FCP-NEXT:    vpermps %ymm6, %ymm0, %ymm613804; AVX2-FCP-NEXT:    vbroadcastss 1444(%rdi), %xmm713805; AVX2-FCP-NEXT:    vmovaps 1408(%rdi), %xmm1413806; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm7 = xmm14[0,1,2],xmm7[3]13807; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm6 = xmm6[0,1],xmm7[2,3]13808; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 32-byte Reload13809; AVX2-FCP-NEXT:    vpermps %ymm13, %ymm15, %ymm713810; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload13811; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3,4,5],ymm9[6,7]13812; AVX2-FCP-NEXT:    vbroadcastss 1556(%rdi), %ymm813813; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3,4,5,6],ymm8[7]13814; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3],ymm7[4,5,6,7]13815; AVX2-FCP-NEXT:    vmovups %ymm6, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13816; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload13817; AVX2-FCP-NEXT:    vblendps $240, {{[-0-9]+}}(%r{{[sb]}}p), %ymm6, %ymm6 # 32-byte Folded Reload13818; AVX2-FCP-NEXT:    # ymm6 = ymm6[0,1,2,3],mem[4,5,6,7]13819; AVX2-FCP-NEXT:    vpermps %ymm6, %ymm0, %ymm613820; AVX2-FCP-NEXT:    vbroadcastss 1668(%rdi), %xmm713821; AVX2-FCP-NEXT:    vmovaps 1632(%rdi), %xmm013822; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm7 = xmm0[0,1,2],xmm7[3]13823; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm6 = xmm6[0,1],xmm7[2,3]13824; AVX2-FCP-NEXT:    vpermps {{[-0-9]+}}(%r{{[sb]}}p), %ymm15, %ymm7 # 32-byte Folded Reload13825; AVX2-FCP-NEXT:    vblendps $192, {{[-0-9]+}}(%r{{[sb]}}p), %ymm7, %ymm7 # 32-byte Folded Reload13826; AVX2-FCP-NEXT:    # ymm7 = ymm7[0,1,2,3,4,5],mem[6,7]13827; AVX2-FCP-NEXT:    vbroadcastss 1780(%rdi), %ymm813828; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3,4,5,6],ymm8[7]13829; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3],ymm7[4,5,6,7]13830; AVX2-FCP-NEXT:    vmovups %ymm6, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13831; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm12, %ymm6 # 32-byte Folded Reload13832; AVX2-FCP-NEXT:    # ymm6 = ymm12[0],mem[1],ymm12[2,3,4],mem[5],ymm12[6,7]13833; AVX2-FCP-NEXT:    vmovaps {{.*#+}} ymm12 = [1,0,3,3,1,0,7,7]13834; AVX2-FCP-NEXT:    vpermps %ymm6, %ymm12, %ymm613835; AVX2-FCP-NEXT:    vbroadcastss 216(%rdi), %ymm713836; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3,4,5,6],ymm7[7]13837; AVX2-FCP-NEXT:    vmovaps 96(%rdi), %xmm713838; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm3 = xmm7[0,1,2],xmm3[3]13839; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm3 = xmm3[0,1,3,2]13840; AVX2-FCP-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Folded Reload13841; AVX2-FCP-NEXT:    # ymm8 = mem[1,0,2,3,5,4,6,7]13842; AVX2-FCP-NEXT:    vextractf128 $1, %ymm8, %xmm813843; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm3 = xmm8[0,1],xmm3[2,3]13844; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3],ymm6[4,5,6,7]13845; AVX2-FCP-NEXT:    vmovups %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13846; AVX2-FCP-NEXT:    vmovaps 320(%rdi), %xmm813847; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm8[0,1,2],xmm1[3]13848; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,3,2]13849; AVX2-FCP-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Folded Reload13850; AVX2-FCP-NEXT:    # ymm3 = mem[1,0,2,3,5,4,6,7]13851; AVX2-FCP-NEXT:    vextractf128 $1, %ymm3, %xmm313852; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm3[0,1],xmm1[2,3]13853; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload13854; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload13855; AVX2-FCP-NEXT:    # ymm3 = ymm3[0],mem[1],ymm3[2,3,4],mem[5],ymm3[6,7]13856; AVX2-FCP-NEXT:    vpermps %ymm3, %ymm12, %ymm313857; AVX2-FCP-NEXT:    vbroadcastss 440(%rdi), %ymm613858; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5,6],ymm6[7]13859; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm3[4,5,6,7]13860; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13861; AVX2-FCP-NEXT:    vmovaps 544(%rdi), %xmm613862; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm6[0,1,2],xmm2[3]13863; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,3,2]13864; AVX2-FCP-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload13865; AVX2-FCP-NEXT:    # ymm2 = mem[1,0,2,3,5,4,6,7]13866; AVX2-FCP-NEXT:    vextractf128 $1, %ymm2, %xmm213867; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm2[0,1],xmm1[2,3]13868; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload13869; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2, %ymm2 # 32-byte Folded Reload13870; AVX2-FCP-NEXT:    # ymm2 = ymm2[0],mem[1],ymm2[2,3,4],mem[5],ymm2[6,7]13871; AVX2-FCP-NEXT:    vpermps %ymm2, %ymm12, %ymm213872; AVX2-FCP-NEXT:    vbroadcastss 664(%rdi), %ymm313873; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm3[7]13874; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]13875; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13876; AVX2-FCP-NEXT:    vmovaps 768(%rdi), %xmm313877; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm3[0,1,2],xmm4[3]13878; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,3,2]13879; AVX2-FCP-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload13880; AVX2-FCP-NEXT:    # ymm2 = mem[1,0,2,3,5,4,6,7]13881; AVX2-FCP-NEXT:    vextractf128 $1, %ymm2, %xmm213882; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm2[0,1],xmm1[2,3]13883; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload13884; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2, %ymm2 # 32-byte Folded Reload13885; AVX2-FCP-NEXT:    # ymm2 = ymm2[0],mem[1],ymm2[2,3,4],mem[5],ymm2[6,7]13886; AVX2-FCP-NEXT:    vpermps %ymm2, %ymm12, %ymm213887; AVX2-FCP-NEXT:    vbroadcastss 888(%rdi), %ymm413888; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5,6],ymm4[7]13889; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]13890; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13891; AVX2-FCP-NEXT:    vmovaps 992(%rdi), %xmm113892; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm2 = xmm1[0,1,2],xmm5[3]13893; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[0,1,3,2]13894; AVX2-FCP-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Folded Reload13895; AVX2-FCP-NEXT:    # ymm4 = mem[1,0,2,3,5,4,6,7]13896; AVX2-FCP-NEXT:    vextractf128 $1, %ymm4, %xmm413897; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm2 = xmm4[0,1],xmm2[2,3]13898; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload13899; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm4 # 32-byte Folded Reload13900; AVX2-FCP-NEXT:    # ymm4 = ymm4[0],mem[1],ymm4[2,3,4],mem[5],ymm4[6,7]13901; AVX2-FCP-NEXT:    vpermps %ymm4, %ymm12, %ymm413902; AVX2-FCP-NEXT:    vbroadcastss 1112(%rdi), %ymm513903; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5,6],ymm5[7]13904; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm4[4,5,6,7]13905; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13906; AVX2-FCP-NEXT:    vmovaps 1216(%rdi), %xmm213907; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm4 = xmm2[0,1,2],xmm10[3]13908; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm4 = xmm4[0,1,3,2]13909; AVX2-FCP-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Folded Reload13910; AVX2-FCP-NEXT:    # ymm5 = mem[1,0,2,3,5,4,6,7]13911; AVX2-FCP-NEXT:    vextractf128 $1, %ymm5, %xmm513912; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm4 = xmm5[0,1],xmm4[2,3]13913; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11, %ymm5 # 32-byte Folded Reload13914; AVX2-FCP-NEXT:    # ymm5 = ymm11[0],mem[1],ymm11[2,3,4],mem[5],ymm11[6,7]13915; AVX2-FCP-NEXT:    vpermps %ymm5, %ymm12, %ymm513916; AVX2-FCP-NEXT:    vbroadcastss 1336(%rdi), %ymm1013917; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3,4,5,6],ymm10[7]13918; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm5 = ymm4[0,1,2,3],ymm5[4,5,6,7]13919; AVX2-FCP-NEXT:    vmovaps 1440(%rdi), %xmm413920; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm10 = xmm4[0,1,2],xmm14[3]13921; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm10 = xmm10[0,1,3,2]13922; AVX2-FCP-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Folded Reload13923; AVX2-FCP-NEXT:    # ymm14 = mem[1,0,2,3,5,4,6,7]13924; AVX2-FCP-NEXT:    vextractf128 $1, %ymm14, %xmm1413925; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm10 = xmm14[0,1],xmm10[2,3]13926; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm14 = ymm9[0],ymm13[1],ymm9[2,3,4],ymm13[5],ymm9[6,7]13927; AVX2-FCP-NEXT:    vpermps %ymm14, %ymm12, %ymm1413928; AVX2-FCP-NEXT:    vbroadcastss 1560(%rdi), %ymm1113929; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm11 = ymm14[0,1,2,3,4,5,6],ymm11[7]13930; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm10 = ymm10[0,1,2,3],ymm11[4,5,6,7]13931; AVX2-FCP-NEXT:    vmovaps 1664(%rdi), %xmm1413932; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm0 = xmm14[0,1,2],xmm0[3]13933; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[0,1,3,2]13934; AVX2-FCP-NEXT:    vpermilps $225, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Folded Reload13935; AVX2-FCP-NEXT:    # ymm11 = mem[1,0,2,3,5,4,6,7]13936; AVX2-FCP-NEXT:    vextractf128 $1, %ymm11, %xmm1113937; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm0 = xmm11[0,1],xmm0[2,3]13938; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload13939; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm9, %ymm11 # 32-byte Folded Reload13940; AVX2-FCP-NEXT:    # ymm11 = ymm9[0],mem[1],ymm9[2,3,4],mem[5],ymm9[6,7]13941; AVX2-FCP-NEXT:    vpermps %ymm11, %ymm12, %ymm1113942; AVX2-FCP-NEXT:    vbroadcastss 1784(%rdi), %ymm1213943; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm11 = ymm11[0,1,2,3,4,5,6],ymm12[7]13944; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm12 = ymm0[0,1,2,3],ymm11[4,5,6,7]13945; AVX2-FCP-NEXT:    vbroadcastss 136(%rdi), %xmm013946; AVX2-FCP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload13947; AVX2-FCP-NEXT:    # xmm0 = xmm0[0],mem[1],xmm0[2,3]13948; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm013949; AVX2-FCP-NEXT:    vpermps 192(%rdi), %ymm15, %ymm1113950; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm11[6,7]13951; AVX2-FCP-NEXT:    vbroadcastss 80(%rdi), %ymm1113952; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm7 = xmm11[0,1,2],xmm7[3]13953; AVX2-FCP-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Folded Reload13954; AVX2-FCP-NEXT:    # ymm11 = mem[2,3,2,3,6,7,6,7]13955; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11, %ymm11 # 32-byte Folded Reload13956; AVX2-FCP-NEXT:    # ymm11 = ymm11[0],mem[1],ymm11[2,3,4],mem[5],ymm11[6,7]13957; AVX2-FCP-NEXT:    vextractf128 $1, %ymm11, %xmm1113958; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm7 = xmm11[0,1],xmm7[2,3]13959; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3],ymm0[4,5,6,7]13960; AVX2-FCP-NEXT:    vbroadcastss 360(%rdi), %xmm013961; AVX2-FCP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload13962; AVX2-FCP-NEXT:    # xmm0 = xmm0[0],mem[1],xmm0[2,3]13963; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm013964; AVX2-FCP-NEXT:    vpermps 416(%rdi), %ymm15, %ymm1113965; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm11[6,7]13966; AVX2-FCP-NEXT:    vbroadcastss 304(%rdi), %ymm1113967; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm11 = xmm11[0,1,2],xmm8[3]13968; AVX2-FCP-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 32-byte Folded Reload13969; AVX2-FCP-NEXT:    # ymm13 = mem[2,3,2,3,6,7,6,7]13970; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm13, %ymm13 # 32-byte Folded Reload13971; AVX2-FCP-NEXT:    # ymm13 = ymm13[0],mem[1],ymm13[2,3,4],mem[5],ymm13[6,7]13972; AVX2-FCP-NEXT:    vextractf128 $1, %ymm13, %xmm1313973; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm11 = xmm13[0,1],xmm11[2,3]13974; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm13 = ymm11[0,1,2,3],ymm0[4,5,6,7]13975; AVX2-FCP-NEXT:    vbroadcastss 584(%rdi), %xmm013976; AVX2-FCP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload13977; AVX2-FCP-NEXT:    # xmm0 = xmm0[0],mem[1],xmm0[2,3]13978; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm013979; AVX2-FCP-NEXT:    vpermps 640(%rdi), %ymm15, %ymm1113980; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm11[6,7]13981; AVX2-FCP-NEXT:    vbroadcastss 528(%rdi), %ymm1113982; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm8 = xmm11[0,1,2],xmm6[3]13983; AVX2-FCP-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Folded Reload13984; AVX2-FCP-NEXT:    # ymm11 = mem[2,3,2,3,6,7,6,7]13985; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11, %ymm11 # 32-byte Folded Reload13986; AVX2-FCP-NEXT:    # ymm11 = ymm11[0],mem[1],ymm11[2,3,4],mem[5],ymm11[6,7]13987; AVX2-FCP-NEXT:    vextractf128 $1, %ymm11, %xmm1113988; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm8 = xmm11[0,1],xmm8[2,3]13989; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1,2,3],ymm0[4,5,6,7]13990; AVX2-FCP-NEXT:    vbroadcastss 808(%rdi), %xmm013991; AVX2-FCP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload13992; AVX2-FCP-NEXT:    # xmm0 = xmm0[0],mem[1],xmm0[2,3]13993; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm013994; AVX2-FCP-NEXT:    vpermps 864(%rdi), %ymm15, %ymm1113995; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm11[6,7]13996; AVX2-FCP-NEXT:    vbroadcastss 752(%rdi), %ymm1113997; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm3 = xmm11[0,1,2],xmm3[3]13998; AVX2-FCP-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Folded Reload13999; AVX2-FCP-NEXT:    # ymm11 = mem[2,3,2,3,6,7,6,7]14000; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11, %ymm11 # 32-byte Folded Reload14001; AVX2-FCP-NEXT:    # ymm11 = ymm11[0],mem[1],ymm11[2,3,4],mem[5],ymm11[6,7]14002; AVX2-FCP-NEXT:    vextractf128 $1, %ymm11, %xmm1114003; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm3 = xmm11[0,1],xmm3[2,3]14004; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3],ymm0[4,5,6,7]14005; AVX2-FCP-NEXT:    vbroadcastss 1032(%rdi), %xmm014006; AVX2-FCP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload14007; AVX2-FCP-NEXT:    # xmm0 = xmm0[0],mem[1],xmm0[2,3]14008; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm014009; AVX2-FCP-NEXT:    vpermps 1088(%rdi), %ymm15, %ymm1114010; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm11[6,7]14011; AVX2-FCP-NEXT:    vbroadcastss 976(%rdi), %ymm1114012; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm11[0,1,2],xmm1[3]14013; AVX2-FCP-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Folded Reload14014; AVX2-FCP-NEXT:    # ymm11 = mem[2,3,2,3,6,7,6,7]14015; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11, %ymm11 # 32-byte Folded Reload14016; AVX2-FCP-NEXT:    # ymm11 = ymm11[0],mem[1],ymm11[2,3,4],mem[5],ymm11[6,7]14017; AVX2-FCP-NEXT:    vextractf128 $1, %ymm11, %xmm1114018; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm11[0,1],xmm1[2,3]14019; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3],ymm0[4,5,6,7]14020; AVX2-FCP-NEXT:    vbroadcastss 1256(%rdi), %xmm114021; AVX2-FCP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload14022; AVX2-FCP-NEXT:    # xmm1 = xmm1[0],mem[1],xmm1[2,3]14023; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm114024; AVX2-FCP-NEXT:    vpermps 1312(%rdi), %ymm15, %ymm1114025; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4,5],ymm11[6,7]14026; AVX2-FCP-NEXT:    vbroadcastss 1200(%rdi), %ymm1114027; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm2 = xmm11[0,1,2],xmm2[3]14028; AVX2-FCP-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Folded Reload14029; AVX2-FCP-NEXT:    # ymm11 = mem[2,3,2,3,6,7,6,7]14030; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11, %ymm11 # 32-byte Folded Reload14031; AVX2-FCP-NEXT:    # ymm11 = ymm11[0],mem[1],ymm11[2,3,4],mem[5],ymm11[6,7]14032; AVX2-FCP-NEXT:    vextractf128 $1, %ymm11, %xmm1114033; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm2 = xmm11[0,1],xmm2[2,3]14034; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0,1,2,3],ymm1[4,5,6,7]14035; AVX2-FCP-NEXT:    vbroadcastss 1480(%rdi), %xmm214036; AVX2-FCP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm2, %xmm2 # 16-byte Folded Reload14037; AVX2-FCP-NEXT:    # xmm2 = xmm2[0],mem[1],xmm2[2,3]14038; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm2, %ymm0, %ymm214039; AVX2-FCP-NEXT:    vpermps 1536(%rdi), %ymm15, %ymm1114040; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5],ymm11[6,7]14041; AVX2-FCP-NEXT:    vbroadcastss 1424(%rdi), %ymm1114042; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm4 = xmm11[0,1,2],xmm4[3]14043; AVX2-FCP-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Folded Reload14044; AVX2-FCP-NEXT:    # ymm11 = mem[2,3,2,3,6,7,6,7]14045; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm11, %ymm11 # 32-byte Folded Reload14046; AVX2-FCP-NEXT:    # ymm11 = ymm11[0],mem[1],ymm11[2,3,4],mem[5],ymm11[6,7]14047; AVX2-FCP-NEXT:    vextractf128 $1, %ymm11, %xmm1114048; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm4 = xmm11[0,1],xmm4[2,3]14049; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm4[0,1,2,3],ymm2[4,5,6,7]14050; AVX2-FCP-NEXT:    vbroadcastss 1704(%rdi), %xmm414051; AVX2-FCP-NEXT:    vblendps $2, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4, %xmm4 # 16-byte Folded Reload14052; AVX2-FCP-NEXT:    # xmm4 = xmm4[0],mem[1],xmm4[2,3]14053; AVX2-FCP-NEXT:    vpermps 1760(%rdi), %ymm15, %ymm1114054; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm4, %ymm0, %ymm414055; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5],ymm11[6,7]14056; AVX2-FCP-NEXT:    vbroadcastss 1648(%rdi), %ymm1114057; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm11 = xmm11[0,1,2],xmm14[3]14058; AVX2-FCP-NEXT:    vpermilps $238, {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Folded Reload14059; AVX2-FCP-NEXT:    # ymm14 = mem[2,3,2,3,6,7,6,7]14060; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm14, %ymm14 # 32-byte Folded Reload14061; AVX2-FCP-NEXT:    # ymm14 = ymm14[0],mem[1],ymm14[2,3,4],mem[5],ymm14[6,7]14062; AVX2-FCP-NEXT:    vextractf128 $1, %ymm14, %xmm1414063; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm11 = xmm14[0,1],xmm11[2,3]14064; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm11[0,1,2,3],ymm4[4,5,6,7]14065; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload14066; AVX2-FCP-NEXT:    vmovaps %ymm11, 192(%rsi)14067; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload14068; AVX2-FCP-NEXT:    vmovaps %ymm11, 128(%rsi)14069; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload14070; AVX2-FCP-NEXT:    vmovaps %ymm11, 64(%rsi)14071; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload14072; AVX2-FCP-NEXT:    vmovaps %ymm11, (%rsi)14073; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload14074; AVX2-FCP-NEXT:    vmovaps %ymm11, 224(%rsi)14075; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload14076; AVX2-FCP-NEXT:    vmovaps %ymm11, 160(%rsi)14077; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload14078; AVX2-FCP-NEXT:    vmovaps %ymm11, 96(%rsi)14079; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload14080; AVX2-FCP-NEXT:    vmovaps %ymm11, 32(%rsi)14081; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14082; AVX2-FCP-NEXT:    vmovaps %ymm9, 192(%rdx)14083; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14084; AVX2-FCP-NEXT:    vmovaps %ymm9, 128(%rdx)14085; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14086; AVX2-FCP-NEXT:    vmovaps %ymm9, 64(%rdx)14087; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14088; AVX2-FCP-NEXT:    vmovaps %ymm9, (%rdx)14089; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14090; AVX2-FCP-NEXT:    vmovaps %ymm9, 224(%rdx)14091; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload14092; AVX2-FCP-NEXT:    vmovaps %ymm11, 160(%rdx)14093; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload14094; AVX2-FCP-NEXT:    vmovaps %ymm11, 96(%rdx)14095; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload14096; AVX2-FCP-NEXT:    vmovaps %ymm11, 32(%rdx)14097; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14098; AVX2-FCP-NEXT:    vmovaps %ymm9, 192(%rcx)14099; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14100; AVX2-FCP-NEXT:    vmovaps %ymm9, 128(%rcx)14101; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14102; AVX2-FCP-NEXT:    vmovaps %ymm9, 64(%rcx)14103; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14104; AVX2-FCP-NEXT:    vmovaps %ymm9, (%rcx)14105; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14106; AVX2-FCP-NEXT:    vmovaps %ymm9, 224(%rcx)14107; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14108; AVX2-FCP-NEXT:    vmovaps %ymm9, 160(%rcx)14109; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14110; AVX2-FCP-NEXT:    vmovaps %ymm9, 96(%rcx)14111; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14112; AVX2-FCP-NEXT:    vmovaps %ymm9, 32(%rcx)14113; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14114; AVX2-FCP-NEXT:    vmovaps %ymm9, (%r8)14115; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14116; AVX2-FCP-NEXT:    vmovaps %ymm9, 64(%r8)14117; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14118; AVX2-FCP-NEXT:    vmovaps %ymm9, 128(%r8)14119; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14120; AVX2-FCP-NEXT:    vmovaps %ymm9, 192(%r8)14121; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14122; AVX2-FCP-NEXT:    vmovaps %ymm9, 224(%r8)14123; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14124; AVX2-FCP-NEXT:    vmovaps %ymm9, 160(%r8)14125; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14126; AVX2-FCP-NEXT:    vmovaps %ymm9, 96(%r8)14127; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14128; AVX2-FCP-NEXT:    vmovaps %ymm9, 32(%r8)14129; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14130; AVX2-FCP-NEXT:    vmovaps %ymm9, 224(%r9)14131; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14132; AVX2-FCP-NEXT:    vmovaps %ymm9, 192(%r9)14133; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14134; AVX2-FCP-NEXT:    vmovaps %ymm9, 160(%r9)14135; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14136; AVX2-FCP-NEXT:    vmovaps %ymm9, 128(%r9)14137; AVX2-FCP-NEXT:    vmovups (%rsp), %ymm9 # 32-byte Reload14138; AVX2-FCP-NEXT:    vmovaps %ymm9, 96(%r9)14139; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14140; AVX2-FCP-NEXT:    vmovaps %ymm9, 64(%r9)14141; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14142; AVX2-FCP-NEXT:    vmovaps %ymm9, 32(%r9)14143; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload14144; AVX2-FCP-NEXT:    vmovaps %ymm9, (%r9)14145; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax14146; AVX2-FCP-NEXT:    vmovaps %ymm12, 224(%rax)14147; AVX2-FCP-NEXT:    vmovaps %ymm10, 192(%rax)14148; AVX2-FCP-NEXT:    vmovaps %ymm5, 160(%rax)14149; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload14150; AVX2-FCP-NEXT:    vmovaps %ymm5, 128(%rax)14151; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload14152; AVX2-FCP-NEXT:    vmovaps %ymm5, 96(%rax)14153; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload14154; AVX2-FCP-NEXT:    vmovaps %ymm5, 64(%rax)14155; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload14156; AVX2-FCP-NEXT:    vmovaps %ymm5, 32(%rax)14157; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload14158; AVX2-FCP-NEXT:    vmovaps %ymm5, (%rax)14159; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax14160; AVX2-FCP-NEXT:    vmovaps %ymm4, 224(%rax)14161; AVX2-FCP-NEXT:    vmovaps %ymm2, 192(%rax)14162; AVX2-FCP-NEXT:    vmovaps %ymm1, 160(%rax)14163; AVX2-FCP-NEXT:    vmovaps %ymm0, 128(%rax)14164; AVX2-FCP-NEXT:    vmovaps %ymm3, 96(%rax)14165; AVX2-FCP-NEXT:    vmovaps %ymm8, 64(%rax)14166; AVX2-FCP-NEXT:    vmovaps %ymm13, 32(%rax)14167; AVX2-FCP-NEXT:    vmovaps %ymm7, (%rax)14168; AVX2-FCP-NEXT:    addq $2648, %rsp # imm = 0xA5814169; AVX2-FCP-NEXT:    vzeroupper14170; AVX2-FCP-NEXT:    retq14171;14172; AVX512-LABEL: load_i32_stride7_vf64:14173; AVX512:       # %bb.0:14174; AVX512-NEXT:    subq $3400, %rsp # imm = 0xD4814175; AVX512-NEXT:    vmovdqa64 1728(%rdi), %zmm214176; AVX512-NEXT:    vmovdqa64 1664(%rdi), %zmm1714177; AVX512-NEXT:    vmovdqa64 1600(%rdi), %zmm1114178; AVX512-NEXT:    vmovdqa64 1280(%rdi), %zmm714179; AVX512-NEXT:    vmovdqa64 1216(%rdi), %zmm514180; AVX512-NEXT:    vmovdqa64 1152(%rdi), %zmm1214181; AVX512-NEXT:    vmovdqa64 832(%rdi), %zmm614182; AVX512-NEXT:    vmovdqa64 768(%rdi), %zmm814183; AVX512-NEXT:    vmovdqa64 704(%rdi), %zmm1314184; AVX512-NEXT:    vmovdqa64 384(%rdi), %zmm2014185; AVX512-NEXT:    vmovdqa64 320(%rdi), %zmm414186; AVX512-NEXT:    vmovdqa64 256(%rdi), %zmm1414187; AVX512-NEXT:    vbroadcasti32x4 {{.*#+}} zmm1 = [20,27,6,13,20,27,6,13,20,27,6,13,20,27,6,13]14188; AVX512-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]14189; AVX512-NEXT:    vmovdqa64 %zmm14, %zmm314190; AVX512-NEXT:    vpermt2d %zmm4, %zmm1, %zmm314191; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,0,10,11,12,13,18,25,0,0,10,11,12,13,18,25]14192; AVX512-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]14193; AVX512-NEXT:    vpermt2d %zmm20, %zmm0, %zmm314194; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14195; AVX512-NEXT:    vmovdqa64 %zmm13, %zmm314196; AVX512-NEXT:    vpermt2d %zmm8, %zmm1, %zmm314197; AVX512-NEXT:    vpermt2d %zmm6, %zmm0, %zmm314198; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14199; AVX512-NEXT:    vmovdqa64 %zmm12, %zmm314200; AVX512-NEXT:    vpermt2d %zmm5, %zmm1, %zmm314201; AVX512-NEXT:    vpermt2d %zmm7, %zmm0, %zmm314202; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14203; AVX512-NEXT:    vpermi2d %zmm17, %zmm11, %zmm114204; AVX512-NEXT:    vpermt2d %zmm2, %zmm0, %zmm114205; AVX512-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14206; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,0,7,14,21,28,0,0,0,0,7,14,21,28,0,0]14207; AVX512-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]14208; AVX512-NEXT:    vmovdqa64 %zmm12, %zmm314209; AVX512-NEXT:    vpermt2d %zmm5, %zmm1, %zmm314210; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,19,26,0,9,10,11,12,13,19,26]14211; AVX512-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]14212; AVX512-NEXT:    vpermt2d %zmm7, %zmm0, %zmm314213; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14214; AVX512-NEXT:    vmovdqa64 %zmm13, %zmm314215; AVX512-NEXT:    vpermt2d %zmm8, %zmm1, %zmm314216; AVX512-NEXT:    vpermt2d %zmm6, %zmm0, %zmm314217; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14218; AVX512-NEXT:    vmovdqa64 %zmm14, %zmm314219; AVX512-NEXT:    vpermt2d %zmm4, %zmm1, %zmm314220; AVX512-NEXT:    vpermt2d %zmm20, %zmm0, %zmm314221; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14222; AVX512-NEXT:    vpermi2d %zmm17, %zmm11, %zmm114223; AVX512-NEXT:    vpermt2d %zmm2, %zmm0, %zmm114224; AVX512-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14225; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,1,8,15,22,29,0,0,0,1,8,15,22,29,0,0]14226; AVX512-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]14227; AVX512-NEXT:    vmovdqa64 %zmm12, %zmm314228; AVX512-NEXT:    vpermt2d %zmm5, %zmm1, %zmm314229; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,20,27,0,9,10,11,12,13,20,27]14230; AVX512-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]14231; AVX512-NEXT:    vpermt2d %zmm7, %zmm0, %zmm314232; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14233; AVX512-NEXT:    vmovdqa64 %zmm13, %zmm314234; AVX512-NEXT:    vpermt2d %zmm8, %zmm1, %zmm314235; AVX512-NEXT:    vpermt2d %zmm6, %zmm0, %zmm314236; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14237; AVX512-NEXT:    vmovdqa64 %zmm14, %zmm314238; AVX512-NEXT:    vpermt2d %zmm4, %zmm1, %zmm314239; AVX512-NEXT:    vpermt2d %zmm20, %zmm0, %zmm314240; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14241; AVX512-NEXT:    vpermi2d %zmm17, %zmm11, %zmm114242; AVX512-NEXT:    vpermt2d %zmm2, %zmm0, %zmm114243; AVX512-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14244; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,18,25,0,7,14,0,0,0,18,25,0,7,14,0,0]14245; AVX512-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]14246; AVX512-NEXT:    vmovdqa64 %zmm5, %zmm314247; AVX512-NEXT:    vpermt2d %zmm12, %zmm1, %zmm314248; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,21,28,0,9,10,11,12,13,21,28]14249; AVX512-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]14250; AVX512-NEXT:    vpermt2d %zmm7, %zmm0, %zmm314251; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14252; AVX512-NEXT:    vmovdqa64 %zmm8, %zmm314253; AVX512-NEXT:    vpermt2d %zmm13, %zmm1, %zmm314254; AVX512-NEXT:    vpermt2d %zmm6, %zmm0, %zmm314255; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14256; AVX512-NEXT:    vmovdqa64 %zmm4, %zmm314257; AVX512-NEXT:    vpermt2d %zmm14, %zmm1, %zmm314258; AVX512-NEXT:    vpermt2d %zmm20, %zmm0, %zmm314259; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14260; AVX512-NEXT:    vpermi2d %zmm11, %zmm17, %zmm114261; AVX512-NEXT:    vpermt2d %zmm2, %zmm0, %zmm114262; AVX512-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14263; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,19,26,1,8,15,0,0,0,19,26,1,8,15,0,0]14264; AVX512-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]14265; AVX512-NEXT:    vmovdqa64 %zmm5, %zmm314266; AVX512-NEXT:    vpermt2d %zmm12, %zmm1, %zmm314267; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,22,29,0,9,10,11,12,13,22,29]14268; AVX512-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]14269; AVX512-NEXT:    vpermt2d %zmm7, %zmm0, %zmm314270; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14271; AVX512-NEXT:    vmovdqa64 %zmm8, %zmm314272; AVX512-NEXT:    vpermt2d %zmm13, %zmm1, %zmm314273; AVX512-NEXT:    vpermt2d %zmm6, %zmm0, %zmm314274; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14275; AVX512-NEXT:    vmovdqa64 %zmm4, %zmm314276; AVX512-NEXT:    vpermt2d %zmm14, %zmm1, %zmm314277; AVX512-NEXT:    vpermt2d %zmm20, %zmm0, %zmm314278; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14279; AVX512-NEXT:    vpermi2d %zmm11, %zmm17, %zmm114280; AVX512-NEXT:    vpermt2d %zmm2, %zmm0, %zmm114281; AVX512-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14282; AVX512-NEXT:    vmovdqa64 1024(%rdi), %zmm314283; AVX512-NEXT:    vmovdqa64 1088(%rdi), %zmm1514284; AVX512-NEXT:    vbroadcasti32x4 {{.*#+}} zmm30 = [25,4,11,18,25,4,11,18,25,4,11,18,25,4,11,18]14285; AVX512-NEXT:    # zmm30 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]14286; AVX512-NEXT:    vmovdqa64 %zmm3, %zmm014287; AVX512-NEXT:    vpermt2d %zmm15, %zmm30, %zmm014288; AVX512-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14289; AVX512-NEXT:    vmovdqa64 576(%rdi), %zmm914290; AVX512-NEXT:    vmovdqa64 640(%rdi), %zmm1614291; AVX512-NEXT:    vmovdqa64 %zmm9, %zmm014292; AVX512-NEXT:    vpermt2d %zmm16, %zmm30, %zmm014293; AVX512-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14294; AVX512-NEXT:    vmovdqa64 128(%rdi), %zmm014295; AVX512-NEXT:    vmovdqa64 192(%rdi), %zmm1814296; AVX512-NEXT:    vmovdqa64 %zmm0, %zmm114297; AVX512-NEXT:    vpermt2d %zmm18, %zmm30, %zmm114298; AVX512-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14299; AVX512-NEXT:    vmovdqa64 1472(%rdi), %zmm114300; AVX512-NEXT:    vmovdqa64 1536(%rdi), %zmm1914301; AVX512-NEXT:    vmovdqa64 %zmm1, %zmm1014302; AVX512-NEXT:    vpermt2d %zmm19, %zmm30, %zmm1014303; AVX512-NEXT:    vmovdqu64 %zmm10, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14304; AVX512-NEXT:    vmovdqa64 %zmm12, %zmm2114305; AVX512-NEXT:    vpermt2d %zmm5, %zmm30, %zmm2114306; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm10 = [0,9,10,11,12,16,23,30,0,9,10,11,12,16,23,30]14307; AVX512-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3]14308; AVX512-NEXT:    vpermt2d %zmm7, %zmm10, %zmm2114309; AVX512-NEXT:    vmovdqu64 %zmm21, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14310; AVX512-NEXT:    vmovdqa64 %zmm13, %zmm2114311; AVX512-NEXT:    vpermt2d %zmm8, %zmm30, %zmm2114312; AVX512-NEXT:    vpermt2d %zmm6, %zmm10, %zmm2114313; AVX512-NEXT:    vmovdqu64 %zmm21, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14314; AVX512-NEXT:    vmovdqa64 %zmm14, %zmm2114315; AVX512-NEXT:    vpermt2d %zmm4, %zmm30, %zmm2114316; AVX512-NEXT:    vpermt2d %zmm20, %zmm10, %zmm2114317; AVX512-NEXT:    vmovdqu64 %zmm21, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14318; AVX512-NEXT:    vpermi2d %zmm17, %zmm11, %zmm3014319; AVX512-NEXT:    vpermt2d %zmm2, %zmm10, %zmm3014320; AVX512-NEXT:    vbroadcasti32x4 {{.*#+}} zmm10 = [26,5,12,19,26,5,12,19,26,5,12,19,26,5,12,19]14321; AVX512-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]14322; AVX512-NEXT:    vpermt2d %zmm8, %zmm10, %zmm1314323; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm8 = [0,9,10,11,12,17,24,31,0,9,10,11,12,17,24,31]14324; AVX512-NEXT:    # zmm8 = mem[0,1,2,3,0,1,2,3]14325; AVX512-NEXT:    vpermt2d %zmm6, %zmm8, %zmm1314326; AVX512-NEXT:    vmovdqu64 %zmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14327; AVX512-NEXT:    vpermt2d %zmm4, %zmm10, %zmm1414328; AVX512-NEXT:    vpermt2d %zmm20, %zmm8, %zmm1414329; AVX512-NEXT:    vmovdqu64 %zmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14330; AVX512-NEXT:    vpermt2d %zmm17, %zmm10, %zmm1114331; AVX512-NEXT:    vpermt2d %zmm2, %zmm8, %zmm1114332; AVX512-NEXT:    vmovdqu64 %zmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14333; AVX512-NEXT:    vpermt2d %zmm5, %zmm10, %zmm1214334; AVX512-NEXT:    vpermt2d %zmm7, %zmm8, %zmm1214335; AVX512-NEXT:    vmovdqu64 %zmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14336; AVX512-NEXT:    vmovdqa64 %zmm3, %zmm214337; AVX512-NEXT:    vpermt2d %zmm15, %zmm10, %zmm214338; AVX512-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14339; AVX512-NEXT:    vmovdqa64 %zmm9, %zmm214340; AVX512-NEXT:    vpermt2d %zmm16, %zmm10, %zmm214341; AVX512-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14342; AVX512-NEXT:    vmovdqa64 %zmm0, %zmm214343; AVX512-NEXT:    vpermt2d %zmm18, %zmm10, %zmm214344; AVX512-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14345; AVX512-NEXT:    vmovdqa64 %zmm1, %zmm214346; AVX512-NEXT:    vpermt2d %zmm19, %zmm10, %zmm214347; AVX512-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14348; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm25 = [8,15,0,0,0,19,26,1,8,15,0,0,0,19,26,1]14349; AVX512-NEXT:    # zmm25 = mem[0,1,2,3,0,1,2,3]14350; AVX512-NEXT:    vmovdqa64 %zmm16, %zmm214351; AVX512-NEXT:    vpermt2d %zmm9, %zmm25, %zmm214352; AVX512-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14353; AVX512-NEXT:    vbroadcasti32x4 {{.*#+}} zmm27 = [27,6,13,20,27,6,13,20,27,6,13,20,27,6,13,20]14354; AVX512-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]14355; AVX512-NEXT:    vmovdqa64 %zmm9, %zmm214356; AVX512-NEXT:    vpermt2d %zmm16, %zmm27, %zmm214357; AVX512-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14358; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm28 = [28,0,0,0,0,7,14,21,28,0,0,0,0,7,14,21]14359; AVX512-NEXT:    # zmm28 = mem[0,1,2,3,0,1,2,3]14360; AVX512-NEXT:    vmovdqa64 %zmm9, %zmm214361; AVX512-NEXT:    vpermt2d %zmm16, %zmm28, %zmm214362; AVX512-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14363; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm31 = [29,0,0,0,1,8,15,22,29,0,0,0,1,8,15,22]14364; AVX512-NEXT:    # zmm31 = mem[0,1,2,3,0,1,2,3]14365; AVX512-NEXT:    vmovdqa64 %zmm9, %zmm214366; AVX512-NEXT:    vpermt2d %zmm16, %zmm31, %zmm214367; AVX512-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14368; AVX512-NEXT:    vbroadcasti64x4 {{.*#+}} zmm2 = [14,0,0,0,18,25,0,7,14,0,0,0,18,25,0,7]14369; AVX512-NEXT:    # zmm2 = mem[0,1,2,3,0,1,2,3]14370; AVX512-NEXT:    vpermt2d %zmm9, %zmm2, %zmm1614371; AVX512-NEXT:    vmovdqu64 %zmm16, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14372; AVX512-NEXT:    vmovdqa64 %zmm18, %zmm414373; AVX512-NEXT:    vpermt2d %zmm0, %zmm25, %zmm414374; AVX512-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14375; AVX512-NEXT:    vmovdqa64 %zmm0, %zmm414376; AVX512-NEXT:    vpermt2d %zmm18, %zmm27, %zmm414377; AVX512-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14378; AVX512-NEXT:    vmovdqa64 %zmm0, %zmm414379; AVX512-NEXT:    vpermt2d %zmm18, %zmm28, %zmm414380; AVX512-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14381; AVX512-NEXT:    vmovdqa64 %zmm0, %zmm414382; AVX512-NEXT:    vpermt2d %zmm18, %zmm31, %zmm414383; AVX512-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14384; AVX512-NEXT:    vpermt2d %zmm0, %zmm2, %zmm1814385; AVX512-NEXT:    vmovdqu64 %zmm18, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14386; AVX512-NEXT:    vmovdqa64 %zmm15, %zmm014387; AVX512-NEXT:    vpermt2d %zmm3, %zmm25, %zmm014388; AVX512-NEXT:    vmovdqu64 %zmm0, (%rsp) # 64-byte Spill14389; AVX512-NEXT:    vpermi2d %zmm1, %zmm19, %zmm2514390; AVX512-NEXT:    vmovdqa64 %zmm3, %zmm014391; AVX512-NEXT:    vpermt2d %zmm15, %zmm27, %zmm014392; AVX512-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14393; AVX512-NEXT:    vpermi2d %zmm19, %zmm1, %zmm2714394; AVX512-NEXT:    vmovdqa64 %zmm3, %zmm014395; AVX512-NEXT:    vpermt2d %zmm15, %zmm28, %zmm014396; AVX512-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14397; AVX512-NEXT:    vpermi2d %zmm19, %zmm1, %zmm2814398; AVX512-NEXT:    vmovdqa64 %zmm3, %zmm014399; AVX512-NEXT:    vpermt2d %zmm15, %zmm31, %zmm014400; AVX512-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14401; AVX512-NEXT:    vpermi2d %zmm19, %zmm1, %zmm3114402; AVX512-NEXT:    vpermt2d %zmm1, %zmm2, %zmm1914403; AVX512-NEXT:    vmovdqu64 %zmm19, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14404; AVX512-NEXT:    vpermt2d %zmm3, %zmm2, %zmm1514405; AVX512-NEXT:    vmovdqu64 %zmm15, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14406; AVX512-NEXT:    vmovdqa64 512(%rdi), %zmm014407; AVX512-NEXT:    vmovdqa64 448(%rdi), %zmm1714408; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm2 = [0,7,14,21,28,0,0,0]14409; AVX512-NEXT:    vmovdqa64 %zmm17, %zmm2214410; AVX512-NEXT:    vpermt2d %zmm0, %zmm2, %zmm2214411; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm3 = [1,8,15,22,29,0,0,0]14412; AVX512-NEXT:    vmovdqa64 %zmm17, %zmm2314413; AVX512-NEXT:    vpermt2d %zmm0, %zmm3, %zmm2314414; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm4 = [18,25,0,7,14,0,0,0]14415; AVX512-NEXT:    vmovdqa64 %zmm0, %zmm2414416; AVX512-NEXT:    vpermt2d %zmm17, %zmm4, %zmm2414417; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [19,26,1,8,15,0,0,0]14418; AVX512-NEXT:    vmovdqa64 %zmm0, %zmm2914419; AVX512-NEXT:    vpermt2d %zmm17, %zmm7, %zmm2914420; AVX512-NEXT:    vpmovsxbd {{.*#+}} xmm18 = [4,11,18,25]14421; AVX512-NEXT:    vmovdqa64 %zmm17, %zmm114422; AVX512-NEXT:    vpermt2d %zmm0, %zmm18, %zmm114423; AVX512-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14424; AVX512-NEXT:    vpmovsxbd {{.*#+}} xmm19 = [5,12,19,26]14425; AVX512-NEXT:    vmovdqa64 %zmm17, %zmm114426; AVX512-NEXT:    vpermt2d %zmm0, %zmm19, %zmm114427; AVX512-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14428; AVX512-NEXT:    vpmovsxbd {{.*#+}} xmm20 = [6,13,20,27]14429; AVX512-NEXT:    vpermt2d %zmm0, %zmm20, %zmm1714430; AVX512-NEXT:    vmovdqa64 (%rdi), %zmm514431; AVX512-NEXT:    vmovdqa64 64(%rdi), %zmm014432; AVX512-NEXT:    vmovdqa64 %zmm5, %zmm1314433; AVX512-NEXT:    vpermt2d %zmm0, %zmm2, %zmm1314434; AVX512-NEXT:    vmovdqa64 %zmm5, %zmm1414435; AVX512-NEXT:    vpermt2d %zmm0, %zmm3, %zmm1414436; AVX512-NEXT:    vmovdqa64 %zmm0, %zmm1514437; AVX512-NEXT:    vpermt2d %zmm5, %zmm4, %zmm1514438; AVX512-NEXT:    vmovdqa64 %zmm0, %zmm1614439; AVX512-NEXT:    vpermt2d %zmm5, %zmm7, %zmm1614440; AVX512-NEXT:    vmovdqa64 %zmm5, %zmm114441; AVX512-NEXT:    vpermt2d %zmm0, %zmm18, %zmm114442; AVX512-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14443; AVX512-NEXT:    vmovdqa64 %zmm5, %zmm114444; AVX512-NEXT:    vpermt2d %zmm0, %zmm19, %zmm114445; AVX512-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14446; AVX512-NEXT:    vpermt2d %zmm0, %zmm20, %zmm514447; AVX512-NEXT:    vmovdqa64 960(%rdi), %zmm914448; AVX512-NEXT:    vmovdqa64 896(%rdi), %zmm614449; AVX512-NEXT:    vmovdqa64 %zmm6, %zmm814450; AVX512-NEXT:    vpermt2d %zmm9, %zmm2, %zmm814451; AVX512-NEXT:    vmovdqa64 1408(%rdi), %zmm014452; AVX512-NEXT:    vmovdqa64 1344(%rdi), %zmm114453; AVX512-NEXT:    vpermi2d %zmm0, %zmm1, %zmm214454; AVX512-NEXT:    vmovdqa64 %zmm6, %zmm1014455; AVX512-NEXT:    vpermt2d %zmm9, %zmm3, %zmm1014456; AVX512-NEXT:    vpermi2d %zmm0, %zmm1, %zmm314457; AVX512-NEXT:    vmovdqa64 %zmm9, %zmm1114458; AVX512-NEXT:    vpermt2d %zmm6, %zmm4, %zmm1114459; AVX512-NEXT:    vpermi2d %zmm1, %zmm0, %zmm414460; AVX512-NEXT:    vmovdqa64 %zmm9, %zmm1214461; AVX512-NEXT:    vpermt2d %zmm6, %zmm7, %zmm1214462; AVX512-NEXT:    vpermi2d %zmm1, %zmm0, %zmm714463; AVX512-NEXT:    vmovdqa64 %zmm6, %zmm2114464; AVX512-NEXT:    vpermt2d %zmm9, %zmm18, %zmm2114465; AVX512-NEXT:    vpermi2d %zmm0, %zmm1, %zmm1814466; AVX512-NEXT:    vmovdqa64 %zmm6, %zmm2614467; AVX512-NEXT:    vpermt2d %zmm9, %zmm19, %zmm2614468; AVX512-NEXT:    vpermi2d %zmm0, %zmm1, %zmm1914469; AVX512-NEXT:    vpermt2d %zmm0, %zmm20, %zmm114470; AVX512-NEXT:    vpermt2d %zmm9, %zmm20, %zmm614471; AVX512-NEXT:    movw $992, %ax # imm = 0x3E014472; AVX512-NEXT:    kmovw %eax, %k114473; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14474; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm13 {%k1}14475; AVX512-NEXT:    movb $-32, %al14476; AVX512-NEXT:    kmovw %eax, %k214477; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14478; AVX512-NEXT:    vmovdqa64 %zmm0, %zmm13 {%k2}14479; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14480; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm22 {%k1}14481; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14482; AVX512-NEXT:    vmovdqa64 %zmm0, %zmm22 {%k2}14483; AVX512-NEXT:    vmovdqu64 (%rsp), %zmm0 # 64-byte Reload14484; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm8 {%k1}14485; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14486; AVX512-NEXT:    vmovdqa64 %zmm0, %zmm8 {%k2}14487; AVX512-NEXT:    vmovdqa32 %zmm25, %zmm2 {%k1}14488; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14489; AVX512-NEXT:    vmovdqa64 %zmm0, %zmm2 {%k2}14490; AVX512-NEXT:    movw $480, %ax # imm = 0x1E014491; AVX512-NEXT:    kmovw %eax, %k214492; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14493; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm10 {%k2}14494; AVX512-NEXT:    movw $-512, %ax # imm = 0xFE0014495; AVX512-NEXT:    kmovw %eax, %k114496; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14497; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm10 {%k1}14498; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14499; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm23 {%k2}14500; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14501; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm23 {%k1}14502; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14503; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm14 {%k2}14504; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14505; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm14 {%k1}14506; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14507; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k2}14508; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14509; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k1}14510; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14511; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm11 {%k2}14512; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14513; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm11 {%k1}14514; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14515; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm24 {%k2}14516; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14517; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm24 {%k1}14518; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14519; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm15 {%k2}14520; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14521; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm15 {%k1}14522; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14523; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm4 {%k2}14524; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14525; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm4 {%k1}14526; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14527; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm12 {%k2}14528; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14529; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm12 {%k1}14530; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14531; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm29 {%k2}14532; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14533; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm29 {%k1}14534; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14535; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm16 {%k2}14536; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14537; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm16 {%k1}14538; AVX512-NEXT:    vmovdqa32 %zmm27, %zmm7 {%k2}14539; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14540; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm7 {%k1}14541; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14542; AVX512-NEXT:    vinserti32x4 $0, %xmm21, %zmm0, %zmm014543; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm9 # 64-byte Reload14544; AVX512-NEXT:    vmovdqa32 %zmm9, %zmm0 {%k1}14545; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm9 # 64-byte Reload14546; AVX512-NEXT:    vinserti32x4 $0, {{[-0-9]+}}(%r{{[sb]}}p), %zmm9, %zmm9 # 16-byte Folded Reload14547; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm20 # 64-byte Reload14548; AVX512-NEXT:    vmovdqa32 %zmm20, %zmm9 {%k1}14549; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm20 # 64-byte Reload14550; AVX512-NEXT:    vinserti32x4 $0, {{[-0-9]+}}(%r{{[sb]}}p), %zmm20, %zmm20 # 16-byte Folded Reload14551; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm25 # 64-byte Reload14552; AVX512-NEXT:    vmovdqa32 %zmm25, %zmm20 {%k1}14553; AVX512-NEXT:    vinserti32x4 $0, %xmm18, %zmm28, %zmm1814554; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm25 # 64-byte Reload14555; AVX512-NEXT:    vmovdqa32 %zmm25, %zmm18 {%k1}14556; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm25 # 64-byte Reload14557; AVX512-NEXT:    vinserti32x4 $0, %xmm26, %zmm25, %zmm2514558; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm26 # 64-byte Reload14559; AVX512-NEXT:    vmovdqa32 %zmm26, %zmm25 {%k1}14560; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm26 # 64-byte Reload14561; AVX512-NEXT:    vinserti32x4 $0, {{[-0-9]+}}(%r{{[sb]}}p), %zmm26, %zmm26 # 16-byte Folded Reload14562; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm27 # 64-byte Reload14563; AVX512-NEXT:    vmovdqa32 %zmm27, %zmm26 {%k1}14564; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm27 # 64-byte Reload14565; AVX512-NEXT:    vinserti32x4 $0, {{[-0-9]+}}(%r{{[sb]}}p), %zmm27, %zmm27 # 16-byte Folded Reload14566; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload14567; AVX512-NEXT:    vmovdqa32 %zmm28, %zmm27 {%k1}14568; AVX512-NEXT:    vinserti32x4 $0, %xmm19, %zmm31, %zmm1914569; AVX512-NEXT:    vmovdqa32 %zmm30, %zmm19 {%k1}14570; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload14571; AVX512-NEXT:    vinserti32x4 $0, %xmm17, %zmm28, %zmm1714572; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload14573; AVX512-NEXT:    vmovdqa32 %zmm28, %zmm17 {%k1}14574; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload14575; AVX512-NEXT:    vinserti32x4 $0, %xmm5, %zmm28, %zmm514576; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload14577; AVX512-NEXT:    vmovdqa32 %zmm28, %zmm5 {%k1}14578; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload14579; AVX512-NEXT:    vinserti32x4 $0, %xmm1, %zmm28, %zmm114580; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload14581; AVX512-NEXT:    vmovdqa32 %zmm28, %zmm1 {%k1}14582; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload14583; AVX512-NEXT:    vinserti32x4 $0, %xmm6, %zmm28, %zmm614584; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload14585; AVX512-NEXT:    vmovdqa32 %zmm28, %zmm6 {%k1}14586; AVX512-NEXT:    vmovdqa64 %zmm2, 192(%rsi)14587; AVX512-NEXT:    vmovdqa64 %zmm8, 128(%rsi)14588; AVX512-NEXT:    vmovdqa64 %zmm22, 64(%rsi)14589; AVX512-NEXT:    vmovdqa64 %zmm13, (%rsi)14590; AVX512-NEXT:    vmovdqa64 %zmm3, 192(%rdx)14591; AVX512-NEXT:    vmovdqa64 %zmm14, (%rdx)14592; AVX512-NEXT:    vmovdqa64 %zmm23, 64(%rdx)14593; AVX512-NEXT:    vmovdqa64 %zmm10, 128(%rdx)14594; AVX512-NEXT:    vmovdqa64 %zmm4, 192(%rcx)14595; AVX512-NEXT:    vmovdqa64 %zmm15, (%rcx)14596; AVX512-NEXT:    vmovdqa64 %zmm24, 64(%rcx)14597; AVX512-NEXT:    vmovdqa64 %zmm11, 128(%rcx)14598; AVX512-NEXT:    vmovdqa64 %zmm7, 192(%r8)14599; AVX512-NEXT:    vmovdqa64 %zmm16, (%r8)14600; AVX512-NEXT:    vmovdqa64 %zmm29, 64(%r8)14601; AVX512-NEXT:    vmovdqa64 %zmm12, 128(%r8)14602; AVX512-NEXT:    vmovdqa64 %zmm18, 192(%r9)14603; AVX512-NEXT:    vmovdqa64 %zmm20, (%r9)14604; AVX512-NEXT:    vmovdqa64 %zmm9, 64(%r9)14605; AVX512-NEXT:    vmovdqa64 %zmm0, 128(%r9)14606; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %rax14607; AVX512-NEXT:    vmovdqa64 %zmm19, 192(%rax)14608; AVX512-NEXT:    vmovdqa64 %zmm27, (%rax)14609; AVX512-NEXT:    vmovdqa64 %zmm26, 64(%rax)14610; AVX512-NEXT:    vmovdqa64 %zmm25, 128(%rax)14611; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %rax14612; AVX512-NEXT:    vmovdqa64 %zmm6, 128(%rax)14613; AVX512-NEXT:    vmovdqa64 %zmm1, 192(%rax)14614; AVX512-NEXT:    vmovdqa64 %zmm5, (%rax)14615; AVX512-NEXT:    vmovdqa64 %zmm17, 64(%rax)14616; AVX512-NEXT:    addq $3400, %rsp # imm = 0xD4814617; AVX512-NEXT:    vzeroupper14618; AVX512-NEXT:    retq14619;14620; AVX512-FCP-LABEL: load_i32_stride7_vf64:14621; AVX512-FCP:       # %bb.0:14622; AVX512-FCP-NEXT:    subq $3400, %rsp # imm = 0xD4814623; AVX512-FCP-NEXT:    vmovdqa64 1728(%rdi), %zmm214624; AVX512-FCP-NEXT:    vmovdqa64 1664(%rdi), %zmm1714625; AVX512-FCP-NEXT:    vmovdqa64 1600(%rdi), %zmm1114626; AVX512-FCP-NEXT:    vmovdqa64 1280(%rdi), %zmm714627; AVX512-FCP-NEXT:    vmovdqa64 1216(%rdi), %zmm514628; AVX512-FCP-NEXT:    vmovdqa64 1152(%rdi), %zmm1214629; AVX512-FCP-NEXT:    vmovdqa64 832(%rdi), %zmm614630; AVX512-FCP-NEXT:    vmovdqa64 768(%rdi), %zmm814631; AVX512-FCP-NEXT:    vmovdqa64 704(%rdi), %zmm1314632; AVX512-FCP-NEXT:    vmovdqa64 384(%rdi), %zmm2014633; AVX512-FCP-NEXT:    vmovdqa64 320(%rdi), %zmm414634; AVX512-FCP-NEXT:    vmovdqa64 256(%rdi), %zmm1414635; AVX512-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm1 = [20,27,6,13,20,27,6,13,20,27,6,13,20,27,6,13]14636; AVX512-FCP-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]14637; AVX512-FCP-NEXT:    vmovdqa64 %zmm14, %zmm314638; AVX512-FCP-NEXT:    vpermt2d %zmm4, %zmm1, %zmm314639; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,0,10,11,12,13,18,25,0,0,10,11,12,13,18,25]14640; AVX512-FCP-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]14641; AVX512-FCP-NEXT:    vpermt2d %zmm20, %zmm0, %zmm314642; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14643; AVX512-FCP-NEXT:    vmovdqa64 %zmm13, %zmm314644; AVX512-FCP-NEXT:    vpermt2d %zmm8, %zmm1, %zmm314645; AVX512-FCP-NEXT:    vpermt2d %zmm6, %zmm0, %zmm314646; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14647; AVX512-FCP-NEXT:    vmovdqa64 %zmm12, %zmm314648; AVX512-FCP-NEXT:    vpermt2d %zmm5, %zmm1, %zmm314649; AVX512-FCP-NEXT:    vpermt2d %zmm7, %zmm0, %zmm314650; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14651; AVX512-FCP-NEXT:    vpermi2d %zmm17, %zmm11, %zmm114652; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm0, %zmm114653; AVX512-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14654; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,0,7,14,21,28,0,0,0,0,7,14,21,28,0,0]14655; AVX512-FCP-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]14656; AVX512-FCP-NEXT:    vmovdqa64 %zmm12, %zmm314657; AVX512-FCP-NEXT:    vpermt2d %zmm5, %zmm1, %zmm314658; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,19,26,0,9,10,11,12,13,19,26]14659; AVX512-FCP-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]14660; AVX512-FCP-NEXT:    vpermt2d %zmm7, %zmm0, %zmm314661; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14662; AVX512-FCP-NEXT:    vmovdqa64 %zmm13, %zmm314663; AVX512-FCP-NEXT:    vpermt2d %zmm8, %zmm1, %zmm314664; AVX512-FCP-NEXT:    vpermt2d %zmm6, %zmm0, %zmm314665; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14666; AVX512-FCP-NEXT:    vmovdqa64 %zmm14, %zmm314667; AVX512-FCP-NEXT:    vpermt2d %zmm4, %zmm1, %zmm314668; AVX512-FCP-NEXT:    vpermt2d %zmm20, %zmm0, %zmm314669; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14670; AVX512-FCP-NEXT:    vpermi2d %zmm17, %zmm11, %zmm114671; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm0, %zmm114672; AVX512-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14673; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,1,8,15,22,29,0,0,0,1,8,15,22,29,0,0]14674; AVX512-FCP-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]14675; AVX512-FCP-NEXT:    vmovdqa64 %zmm12, %zmm314676; AVX512-FCP-NEXT:    vpermt2d %zmm5, %zmm1, %zmm314677; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,20,27,0,9,10,11,12,13,20,27]14678; AVX512-FCP-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]14679; AVX512-FCP-NEXT:    vpermt2d %zmm7, %zmm0, %zmm314680; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14681; AVX512-FCP-NEXT:    vmovdqa64 %zmm13, %zmm314682; AVX512-FCP-NEXT:    vpermt2d %zmm8, %zmm1, %zmm314683; AVX512-FCP-NEXT:    vpermt2d %zmm6, %zmm0, %zmm314684; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14685; AVX512-FCP-NEXT:    vmovdqa64 %zmm14, %zmm314686; AVX512-FCP-NEXT:    vpermt2d %zmm4, %zmm1, %zmm314687; AVX512-FCP-NEXT:    vpermt2d %zmm20, %zmm0, %zmm314688; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14689; AVX512-FCP-NEXT:    vpermi2d %zmm17, %zmm11, %zmm114690; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm0, %zmm114691; AVX512-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14692; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,18,25,0,7,14,0,0,0,18,25,0,7,14,0,0]14693; AVX512-FCP-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]14694; AVX512-FCP-NEXT:    vmovdqa64 %zmm5, %zmm314695; AVX512-FCP-NEXT:    vpermt2d %zmm12, %zmm1, %zmm314696; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,21,28,0,9,10,11,12,13,21,28]14697; AVX512-FCP-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]14698; AVX512-FCP-NEXT:    vpermt2d %zmm7, %zmm0, %zmm314699; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14700; AVX512-FCP-NEXT:    vmovdqa64 %zmm8, %zmm314701; AVX512-FCP-NEXT:    vpermt2d %zmm13, %zmm1, %zmm314702; AVX512-FCP-NEXT:    vpermt2d %zmm6, %zmm0, %zmm314703; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14704; AVX512-FCP-NEXT:    vmovdqa64 %zmm4, %zmm314705; AVX512-FCP-NEXT:    vpermt2d %zmm14, %zmm1, %zmm314706; AVX512-FCP-NEXT:    vpermt2d %zmm20, %zmm0, %zmm314707; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14708; AVX512-FCP-NEXT:    vpermi2d %zmm11, %zmm17, %zmm114709; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm0, %zmm114710; AVX512-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14711; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,19,26,1,8,15,0,0,0,19,26,1,8,15,0,0]14712; AVX512-FCP-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]14713; AVX512-FCP-NEXT:    vmovdqa64 %zmm5, %zmm314714; AVX512-FCP-NEXT:    vpermt2d %zmm12, %zmm1, %zmm314715; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,22,29,0,9,10,11,12,13,22,29]14716; AVX512-FCP-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]14717; AVX512-FCP-NEXT:    vpermt2d %zmm7, %zmm0, %zmm314718; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14719; AVX512-FCP-NEXT:    vmovdqa64 %zmm8, %zmm314720; AVX512-FCP-NEXT:    vpermt2d %zmm13, %zmm1, %zmm314721; AVX512-FCP-NEXT:    vpermt2d %zmm6, %zmm0, %zmm314722; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14723; AVX512-FCP-NEXT:    vmovdqa64 %zmm4, %zmm314724; AVX512-FCP-NEXT:    vpermt2d %zmm14, %zmm1, %zmm314725; AVX512-FCP-NEXT:    vpermt2d %zmm20, %zmm0, %zmm314726; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14727; AVX512-FCP-NEXT:    vpermi2d %zmm11, %zmm17, %zmm114728; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm0, %zmm114729; AVX512-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14730; AVX512-FCP-NEXT:    vmovdqa64 1024(%rdi), %zmm314731; AVX512-FCP-NEXT:    vmovdqa64 1088(%rdi), %zmm1514732; AVX512-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm30 = [25,4,11,18,25,4,11,18,25,4,11,18,25,4,11,18]14733; AVX512-FCP-NEXT:    # zmm30 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]14734; AVX512-FCP-NEXT:    vmovdqa64 %zmm3, %zmm014735; AVX512-FCP-NEXT:    vpermt2d %zmm15, %zmm30, %zmm014736; AVX512-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14737; AVX512-FCP-NEXT:    vmovdqa64 576(%rdi), %zmm914738; AVX512-FCP-NEXT:    vmovdqa64 640(%rdi), %zmm1614739; AVX512-FCP-NEXT:    vmovdqa64 %zmm9, %zmm014740; AVX512-FCP-NEXT:    vpermt2d %zmm16, %zmm30, %zmm014741; AVX512-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14742; AVX512-FCP-NEXT:    vmovdqa64 128(%rdi), %zmm014743; AVX512-FCP-NEXT:    vmovdqa64 192(%rdi), %zmm1814744; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, %zmm114745; AVX512-FCP-NEXT:    vpermt2d %zmm18, %zmm30, %zmm114746; AVX512-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14747; AVX512-FCP-NEXT:    vmovdqa64 1472(%rdi), %zmm114748; AVX512-FCP-NEXT:    vmovdqa64 1536(%rdi), %zmm1914749; AVX512-FCP-NEXT:    vmovdqa64 %zmm1, %zmm1014750; AVX512-FCP-NEXT:    vpermt2d %zmm19, %zmm30, %zmm1014751; AVX512-FCP-NEXT:    vmovdqu64 %zmm10, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14752; AVX512-FCP-NEXT:    vmovdqa64 %zmm12, %zmm2114753; AVX512-FCP-NEXT:    vpermt2d %zmm5, %zmm30, %zmm2114754; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm10 = [0,9,10,11,12,16,23,30,0,9,10,11,12,16,23,30]14755; AVX512-FCP-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3]14756; AVX512-FCP-NEXT:    vpermt2d %zmm7, %zmm10, %zmm2114757; AVX512-FCP-NEXT:    vmovdqu64 %zmm21, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14758; AVX512-FCP-NEXT:    vmovdqa64 %zmm13, %zmm2114759; AVX512-FCP-NEXT:    vpermt2d %zmm8, %zmm30, %zmm2114760; AVX512-FCP-NEXT:    vpermt2d %zmm6, %zmm10, %zmm2114761; AVX512-FCP-NEXT:    vmovdqu64 %zmm21, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14762; AVX512-FCP-NEXT:    vmovdqa64 %zmm14, %zmm2114763; AVX512-FCP-NEXT:    vpermt2d %zmm4, %zmm30, %zmm2114764; AVX512-FCP-NEXT:    vpermt2d %zmm20, %zmm10, %zmm2114765; AVX512-FCP-NEXT:    vmovdqu64 %zmm21, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14766; AVX512-FCP-NEXT:    vpermi2d %zmm17, %zmm11, %zmm3014767; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm10, %zmm3014768; AVX512-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm10 = [26,5,12,19,26,5,12,19,26,5,12,19,26,5,12,19]14769; AVX512-FCP-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]14770; AVX512-FCP-NEXT:    vpermt2d %zmm8, %zmm10, %zmm1314771; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm8 = [0,9,10,11,12,17,24,31,0,9,10,11,12,17,24,31]14772; AVX512-FCP-NEXT:    # zmm8 = mem[0,1,2,3,0,1,2,3]14773; AVX512-FCP-NEXT:    vpermt2d %zmm6, %zmm8, %zmm1314774; AVX512-FCP-NEXT:    vmovdqu64 %zmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14775; AVX512-FCP-NEXT:    vpermt2d %zmm4, %zmm10, %zmm1414776; AVX512-FCP-NEXT:    vpermt2d %zmm20, %zmm8, %zmm1414777; AVX512-FCP-NEXT:    vmovdqu64 %zmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14778; AVX512-FCP-NEXT:    vpermt2d %zmm17, %zmm10, %zmm1114779; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm8, %zmm1114780; AVX512-FCP-NEXT:    vmovdqu64 %zmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14781; AVX512-FCP-NEXT:    vpermt2d %zmm5, %zmm10, %zmm1214782; AVX512-FCP-NEXT:    vpermt2d %zmm7, %zmm8, %zmm1214783; AVX512-FCP-NEXT:    vmovdqu64 %zmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14784; AVX512-FCP-NEXT:    vmovdqa64 %zmm3, %zmm214785; AVX512-FCP-NEXT:    vpermt2d %zmm15, %zmm10, %zmm214786; AVX512-FCP-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14787; AVX512-FCP-NEXT:    vmovdqa64 %zmm9, %zmm214788; AVX512-FCP-NEXT:    vpermt2d %zmm16, %zmm10, %zmm214789; AVX512-FCP-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14790; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, %zmm214791; AVX512-FCP-NEXT:    vpermt2d %zmm18, %zmm10, %zmm214792; AVX512-FCP-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14793; AVX512-FCP-NEXT:    vmovdqa64 %zmm1, %zmm214794; AVX512-FCP-NEXT:    vpermt2d %zmm19, %zmm10, %zmm214795; AVX512-FCP-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14796; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm25 = [8,15,0,0,0,19,26,1,8,15,0,0,0,19,26,1]14797; AVX512-FCP-NEXT:    # zmm25 = mem[0,1,2,3,0,1,2,3]14798; AVX512-FCP-NEXT:    vmovdqa64 %zmm16, %zmm214799; AVX512-FCP-NEXT:    vpermt2d %zmm9, %zmm25, %zmm214800; AVX512-FCP-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14801; AVX512-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm27 = [27,6,13,20,27,6,13,20,27,6,13,20,27,6,13,20]14802; AVX512-FCP-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]14803; AVX512-FCP-NEXT:    vmovdqa64 %zmm9, %zmm214804; AVX512-FCP-NEXT:    vpermt2d %zmm16, %zmm27, %zmm214805; AVX512-FCP-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14806; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm28 = [28,0,0,0,0,7,14,21,28,0,0,0,0,7,14,21]14807; AVX512-FCP-NEXT:    # zmm28 = mem[0,1,2,3,0,1,2,3]14808; AVX512-FCP-NEXT:    vmovdqa64 %zmm9, %zmm214809; AVX512-FCP-NEXT:    vpermt2d %zmm16, %zmm28, %zmm214810; AVX512-FCP-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14811; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm31 = [29,0,0,0,1,8,15,22,29,0,0,0,1,8,15,22]14812; AVX512-FCP-NEXT:    # zmm31 = mem[0,1,2,3,0,1,2,3]14813; AVX512-FCP-NEXT:    vmovdqa64 %zmm9, %zmm214814; AVX512-FCP-NEXT:    vpermt2d %zmm16, %zmm31, %zmm214815; AVX512-FCP-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14816; AVX512-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm2 = [14,0,0,0,18,25,0,7,14,0,0,0,18,25,0,7]14817; AVX512-FCP-NEXT:    # zmm2 = mem[0,1,2,3,0,1,2,3]14818; AVX512-FCP-NEXT:    vpermt2d %zmm9, %zmm2, %zmm1614819; AVX512-FCP-NEXT:    vmovdqu64 %zmm16, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14820; AVX512-FCP-NEXT:    vmovdqa64 %zmm18, %zmm414821; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm25, %zmm414822; AVX512-FCP-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14823; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, %zmm414824; AVX512-FCP-NEXT:    vpermt2d %zmm18, %zmm27, %zmm414825; AVX512-FCP-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14826; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, %zmm414827; AVX512-FCP-NEXT:    vpermt2d %zmm18, %zmm28, %zmm414828; AVX512-FCP-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14829; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, %zmm414830; AVX512-FCP-NEXT:    vpermt2d %zmm18, %zmm31, %zmm414831; AVX512-FCP-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14832; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm2, %zmm1814833; AVX512-FCP-NEXT:    vmovdqu64 %zmm18, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14834; AVX512-FCP-NEXT:    vmovdqa64 %zmm15, %zmm014835; AVX512-FCP-NEXT:    vpermt2d %zmm3, %zmm25, %zmm014836; AVX512-FCP-NEXT:    vmovdqu64 %zmm0, (%rsp) # 64-byte Spill14837; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm19, %zmm2514838; AVX512-FCP-NEXT:    vmovdqa64 %zmm3, %zmm014839; AVX512-FCP-NEXT:    vpermt2d %zmm15, %zmm27, %zmm014840; AVX512-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14841; AVX512-FCP-NEXT:    vpermi2d %zmm19, %zmm1, %zmm2714842; AVX512-FCP-NEXT:    vmovdqa64 %zmm3, %zmm014843; AVX512-FCP-NEXT:    vpermt2d %zmm15, %zmm28, %zmm014844; AVX512-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14845; AVX512-FCP-NEXT:    vpermi2d %zmm19, %zmm1, %zmm2814846; AVX512-FCP-NEXT:    vmovdqa64 %zmm3, %zmm014847; AVX512-FCP-NEXT:    vpermt2d %zmm15, %zmm31, %zmm014848; AVX512-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14849; AVX512-FCP-NEXT:    vpermi2d %zmm19, %zmm1, %zmm3114850; AVX512-FCP-NEXT:    vpermt2d %zmm1, %zmm2, %zmm1914851; AVX512-FCP-NEXT:    vmovdqu64 %zmm19, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14852; AVX512-FCP-NEXT:    vpermt2d %zmm3, %zmm2, %zmm1514853; AVX512-FCP-NEXT:    vmovdqu64 %zmm15, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14854; AVX512-FCP-NEXT:    vmovdqa64 512(%rdi), %zmm014855; AVX512-FCP-NEXT:    vmovdqa64 448(%rdi), %zmm1714856; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm2 = [0,7,14,21,28,0,0,0]14857; AVX512-FCP-NEXT:    vmovdqa64 %zmm17, %zmm2214858; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm2, %zmm2214859; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm3 = [1,8,15,22,29,0,0,0]14860; AVX512-FCP-NEXT:    vmovdqa64 %zmm17, %zmm2314861; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm3, %zmm2314862; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm4 = [18,25,0,7,14,0,0,0]14863; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, %zmm2414864; AVX512-FCP-NEXT:    vpermt2d %zmm17, %zmm4, %zmm2414865; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [19,26,1,8,15,0,0,0]14866; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, %zmm2914867; AVX512-FCP-NEXT:    vpermt2d %zmm17, %zmm7, %zmm2914868; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm18 = [4,11,18,25]14869; AVX512-FCP-NEXT:    vmovdqa64 %zmm17, %zmm114870; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm18, %zmm114871; AVX512-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14872; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm19 = [5,12,19,26]14873; AVX512-FCP-NEXT:    vmovdqa64 %zmm17, %zmm114874; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm19, %zmm114875; AVX512-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14876; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm20 = [6,13,20,27]14877; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm20, %zmm1714878; AVX512-FCP-NEXT:    vmovdqa64 (%rdi), %zmm514879; AVX512-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm014880; AVX512-FCP-NEXT:    vmovdqa64 %zmm5, %zmm1314881; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm2, %zmm1314882; AVX512-FCP-NEXT:    vmovdqa64 %zmm5, %zmm1414883; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm3, %zmm1414884; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, %zmm1514885; AVX512-FCP-NEXT:    vpermt2d %zmm5, %zmm4, %zmm1514886; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, %zmm1614887; AVX512-FCP-NEXT:    vpermt2d %zmm5, %zmm7, %zmm1614888; AVX512-FCP-NEXT:    vmovdqa64 %zmm5, %zmm114889; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm18, %zmm114890; AVX512-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14891; AVX512-FCP-NEXT:    vmovdqa64 %zmm5, %zmm114892; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm19, %zmm114893; AVX512-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14894; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm20, %zmm514895; AVX512-FCP-NEXT:    vmovdqa64 960(%rdi), %zmm914896; AVX512-FCP-NEXT:    vmovdqa64 896(%rdi), %zmm614897; AVX512-FCP-NEXT:    vmovdqa64 %zmm6, %zmm814898; AVX512-FCP-NEXT:    vpermt2d %zmm9, %zmm2, %zmm814899; AVX512-FCP-NEXT:    vmovdqa64 1408(%rdi), %zmm014900; AVX512-FCP-NEXT:    vmovdqa64 1344(%rdi), %zmm114901; AVX512-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm214902; AVX512-FCP-NEXT:    vmovdqa64 %zmm6, %zmm1014903; AVX512-FCP-NEXT:    vpermt2d %zmm9, %zmm3, %zmm1014904; AVX512-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm314905; AVX512-FCP-NEXT:    vmovdqa64 %zmm9, %zmm1114906; AVX512-FCP-NEXT:    vpermt2d %zmm6, %zmm4, %zmm1114907; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm414908; AVX512-FCP-NEXT:    vmovdqa64 %zmm9, %zmm1214909; AVX512-FCP-NEXT:    vpermt2d %zmm6, %zmm7, %zmm1214910; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm714911; AVX512-FCP-NEXT:    vmovdqa64 %zmm6, %zmm2114912; AVX512-FCP-NEXT:    vpermt2d %zmm9, %zmm18, %zmm2114913; AVX512-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm1814914; AVX512-FCP-NEXT:    vmovdqa64 %zmm6, %zmm2614915; AVX512-FCP-NEXT:    vpermt2d %zmm9, %zmm19, %zmm2614916; AVX512-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm1914917; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm20, %zmm114918; AVX512-FCP-NEXT:    vpermt2d %zmm9, %zmm20, %zmm614919; AVX512-FCP-NEXT:    movw $992, %ax # imm = 0x3E014920; AVX512-FCP-NEXT:    kmovw %eax, %k114921; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14922; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm13 {%k1}14923; AVX512-FCP-NEXT:    movb $-32, %al14924; AVX512-FCP-NEXT:    kmovw %eax, %k214925; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14926; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, %zmm13 {%k2}14927; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14928; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm22 {%k1}14929; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14930; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, %zmm22 {%k2}14931; AVX512-FCP-NEXT:    vmovdqu64 (%rsp), %zmm0 # 64-byte Reload14932; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm8 {%k1}14933; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14934; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, %zmm8 {%k2}14935; AVX512-FCP-NEXT:    vmovdqa32 %zmm25, %zmm2 {%k1}14936; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14937; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, %zmm2 {%k2}14938; AVX512-FCP-NEXT:    movw $480, %ax # imm = 0x1E014939; AVX512-FCP-NEXT:    kmovw %eax, %k214940; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14941; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm10 {%k2}14942; AVX512-FCP-NEXT:    movw $-512, %ax # imm = 0xFE0014943; AVX512-FCP-NEXT:    kmovw %eax, %k114944; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14945; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm10 {%k1}14946; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14947; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm23 {%k2}14948; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14949; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm23 {%k1}14950; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14951; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm14 {%k2}14952; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14953; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm14 {%k1}14954; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14955; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k2}14956; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14957; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k1}14958; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14959; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm11 {%k2}14960; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14961; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm11 {%k1}14962; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14963; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm24 {%k2}14964; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14965; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm24 {%k1}14966; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14967; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm15 {%k2}14968; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14969; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm15 {%k1}14970; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14971; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm4 {%k2}14972; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14973; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm4 {%k1}14974; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14975; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm12 {%k2}14976; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14977; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm12 {%k1}14978; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14979; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm29 {%k2}14980; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14981; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm29 {%k1}14982; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14983; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm16 {%k2}14984; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14985; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm16 {%k1}14986; AVX512-FCP-NEXT:    vmovdqa32 %zmm27, %zmm7 {%k2}14987; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14988; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm7 {%k1}14989; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14990; AVX512-FCP-NEXT:    vinserti32x4 $0, %xmm21, %zmm0, %zmm014991; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm9 # 64-byte Reload14992; AVX512-FCP-NEXT:    vmovdqa32 %zmm9, %zmm0 {%k1}14993; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm9 # 64-byte Reload14994; AVX512-FCP-NEXT:    vinserti32x4 $0, {{[-0-9]+}}(%r{{[sb]}}p), %zmm9, %zmm9 # 16-byte Folded Reload14995; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm20 # 64-byte Reload14996; AVX512-FCP-NEXT:    vmovdqa32 %zmm20, %zmm9 {%k1}14997; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm20 # 64-byte Reload14998; AVX512-FCP-NEXT:    vinserti32x4 $0, {{[-0-9]+}}(%r{{[sb]}}p), %zmm20, %zmm20 # 16-byte Folded Reload14999; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm25 # 64-byte Reload15000; AVX512-FCP-NEXT:    vmovdqa32 %zmm25, %zmm20 {%k1}15001; AVX512-FCP-NEXT:    vinserti32x4 $0, %xmm18, %zmm28, %zmm1815002; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm25 # 64-byte Reload15003; AVX512-FCP-NEXT:    vmovdqa32 %zmm25, %zmm18 {%k1}15004; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm25 # 64-byte Reload15005; AVX512-FCP-NEXT:    vinserti32x4 $0, %xmm26, %zmm25, %zmm2515006; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm26 # 64-byte Reload15007; AVX512-FCP-NEXT:    vmovdqa32 %zmm26, %zmm25 {%k1}15008; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm26 # 64-byte Reload15009; AVX512-FCP-NEXT:    vinserti32x4 $0, {{[-0-9]+}}(%r{{[sb]}}p), %zmm26, %zmm26 # 16-byte Folded Reload15010; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm27 # 64-byte Reload15011; AVX512-FCP-NEXT:    vmovdqa32 %zmm27, %zmm26 {%k1}15012; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm27 # 64-byte Reload15013; AVX512-FCP-NEXT:    vinserti32x4 $0, {{[-0-9]+}}(%r{{[sb]}}p), %zmm27, %zmm27 # 16-byte Folded Reload15014; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15015; AVX512-FCP-NEXT:    vmovdqa32 %zmm28, %zmm27 {%k1}15016; AVX512-FCP-NEXT:    vinserti32x4 $0, %xmm19, %zmm31, %zmm1915017; AVX512-FCP-NEXT:    vmovdqa32 %zmm30, %zmm19 {%k1}15018; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15019; AVX512-FCP-NEXT:    vinserti32x4 $0, %xmm17, %zmm28, %zmm1715020; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15021; AVX512-FCP-NEXT:    vmovdqa32 %zmm28, %zmm17 {%k1}15022; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15023; AVX512-FCP-NEXT:    vinserti32x4 $0, %xmm5, %zmm28, %zmm515024; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15025; AVX512-FCP-NEXT:    vmovdqa32 %zmm28, %zmm5 {%k1}15026; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15027; AVX512-FCP-NEXT:    vinserti32x4 $0, %xmm1, %zmm28, %zmm115028; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15029; AVX512-FCP-NEXT:    vmovdqa32 %zmm28, %zmm1 {%k1}15030; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15031; AVX512-FCP-NEXT:    vinserti32x4 $0, %xmm6, %zmm28, %zmm615032; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15033; AVX512-FCP-NEXT:    vmovdqa32 %zmm28, %zmm6 {%k1}15034; AVX512-FCP-NEXT:    vmovdqa64 %zmm2, 192(%rsi)15035; AVX512-FCP-NEXT:    vmovdqa64 %zmm8, 128(%rsi)15036; AVX512-FCP-NEXT:    vmovdqa64 %zmm22, 64(%rsi)15037; AVX512-FCP-NEXT:    vmovdqa64 %zmm13, (%rsi)15038; AVX512-FCP-NEXT:    vmovdqa64 %zmm3, 192(%rdx)15039; AVX512-FCP-NEXT:    vmovdqa64 %zmm14, (%rdx)15040; AVX512-FCP-NEXT:    vmovdqa64 %zmm23, 64(%rdx)15041; AVX512-FCP-NEXT:    vmovdqa64 %zmm10, 128(%rdx)15042; AVX512-FCP-NEXT:    vmovdqa64 %zmm4, 192(%rcx)15043; AVX512-FCP-NEXT:    vmovdqa64 %zmm15, (%rcx)15044; AVX512-FCP-NEXT:    vmovdqa64 %zmm24, 64(%rcx)15045; AVX512-FCP-NEXT:    vmovdqa64 %zmm11, 128(%rcx)15046; AVX512-FCP-NEXT:    vmovdqa64 %zmm7, 192(%r8)15047; AVX512-FCP-NEXT:    vmovdqa64 %zmm16, (%r8)15048; AVX512-FCP-NEXT:    vmovdqa64 %zmm29, 64(%r8)15049; AVX512-FCP-NEXT:    vmovdqa64 %zmm12, 128(%r8)15050; AVX512-FCP-NEXT:    vmovdqa64 %zmm18, 192(%r9)15051; AVX512-FCP-NEXT:    vmovdqa64 %zmm20, (%r9)15052; AVX512-FCP-NEXT:    vmovdqa64 %zmm9, 64(%r9)15053; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, 128(%r9)15054; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax15055; AVX512-FCP-NEXT:    vmovdqa64 %zmm19, 192(%rax)15056; AVX512-FCP-NEXT:    vmovdqa64 %zmm27, (%rax)15057; AVX512-FCP-NEXT:    vmovdqa64 %zmm26, 64(%rax)15058; AVX512-FCP-NEXT:    vmovdqa64 %zmm25, 128(%rax)15059; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax15060; AVX512-FCP-NEXT:    vmovdqa64 %zmm6, 128(%rax)15061; AVX512-FCP-NEXT:    vmovdqa64 %zmm1, 192(%rax)15062; AVX512-FCP-NEXT:    vmovdqa64 %zmm5, (%rax)15063; AVX512-FCP-NEXT:    vmovdqa64 %zmm17, 64(%rax)15064; AVX512-FCP-NEXT:    addq $3400, %rsp # imm = 0xD4815065; AVX512-FCP-NEXT:    vzeroupper15066; AVX512-FCP-NEXT:    retq15067;15068; AVX512DQ-LABEL: load_i32_stride7_vf64:15069; AVX512DQ:       # %bb.0:15070; AVX512DQ-NEXT:    subq $3400, %rsp # imm = 0xD4815071; AVX512DQ-NEXT:    vmovdqa64 1728(%rdi), %zmm215072; AVX512DQ-NEXT:    vmovdqa64 1664(%rdi), %zmm1715073; AVX512DQ-NEXT:    vmovdqa64 1600(%rdi), %zmm1115074; AVX512DQ-NEXT:    vmovdqa64 1280(%rdi), %zmm715075; AVX512DQ-NEXT:    vmovdqa64 1216(%rdi), %zmm515076; AVX512DQ-NEXT:    vmovdqa64 1152(%rdi), %zmm1215077; AVX512DQ-NEXT:    vmovdqa64 832(%rdi), %zmm615078; AVX512DQ-NEXT:    vmovdqa64 768(%rdi), %zmm815079; AVX512DQ-NEXT:    vmovdqa64 704(%rdi), %zmm1315080; AVX512DQ-NEXT:    vmovdqa64 384(%rdi), %zmm2015081; AVX512DQ-NEXT:    vmovdqa64 320(%rdi), %zmm415082; AVX512DQ-NEXT:    vmovdqa64 256(%rdi), %zmm1415083; AVX512DQ-NEXT:    vbroadcasti32x4 {{.*#+}} zmm1 = [20,27,6,13,20,27,6,13,20,27,6,13,20,27,6,13]15084; AVX512DQ-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]15085; AVX512DQ-NEXT:    vmovdqa64 %zmm14, %zmm315086; AVX512DQ-NEXT:    vpermt2d %zmm4, %zmm1, %zmm315087; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,0,10,11,12,13,18,25,0,0,10,11,12,13,18,25]15088; AVX512DQ-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]15089; AVX512DQ-NEXT:    vpermt2d %zmm20, %zmm0, %zmm315090; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15091; AVX512DQ-NEXT:    vmovdqa64 %zmm13, %zmm315092; AVX512DQ-NEXT:    vpermt2d %zmm8, %zmm1, %zmm315093; AVX512DQ-NEXT:    vpermt2d %zmm6, %zmm0, %zmm315094; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15095; AVX512DQ-NEXT:    vmovdqa64 %zmm12, %zmm315096; AVX512DQ-NEXT:    vpermt2d %zmm5, %zmm1, %zmm315097; AVX512DQ-NEXT:    vpermt2d %zmm7, %zmm0, %zmm315098; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15099; AVX512DQ-NEXT:    vpermi2d %zmm17, %zmm11, %zmm115100; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm0, %zmm115101; AVX512DQ-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15102; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,0,7,14,21,28,0,0,0,0,7,14,21,28,0,0]15103; AVX512DQ-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]15104; AVX512DQ-NEXT:    vmovdqa64 %zmm12, %zmm315105; AVX512DQ-NEXT:    vpermt2d %zmm5, %zmm1, %zmm315106; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,19,26,0,9,10,11,12,13,19,26]15107; AVX512DQ-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]15108; AVX512DQ-NEXT:    vpermt2d %zmm7, %zmm0, %zmm315109; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15110; AVX512DQ-NEXT:    vmovdqa64 %zmm13, %zmm315111; AVX512DQ-NEXT:    vpermt2d %zmm8, %zmm1, %zmm315112; AVX512DQ-NEXT:    vpermt2d %zmm6, %zmm0, %zmm315113; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15114; AVX512DQ-NEXT:    vmovdqa64 %zmm14, %zmm315115; AVX512DQ-NEXT:    vpermt2d %zmm4, %zmm1, %zmm315116; AVX512DQ-NEXT:    vpermt2d %zmm20, %zmm0, %zmm315117; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15118; AVX512DQ-NEXT:    vpermi2d %zmm17, %zmm11, %zmm115119; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm0, %zmm115120; AVX512DQ-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15121; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,1,8,15,22,29,0,0,0,1,8,15,22,29,0,0]15122; AVX512DQ-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]15123; AVX512DQ-NEXT:    vmovdqa64 %zmm12, %zmm315124; AVX512DQ-NEXT:    vpermt2d %zmm5, %zmm1, %zmm315125; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,20,27,0,9,10,11,12,13,20,27]15126; AVX512DQ-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]15127; AVX512DQ-NEXT:    vpermt2d %zmm7, %zmm0, %zmm315128; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15129; AVX512DQ-NEXT:    vmovdqa64 %zmm13, %zmm315130; AVX512DQ-NEXT:    vpermt2d %zmm8, %zmm1, %zmm315131; AVX512DQ-NEXT:    vpermt2d %zmm6, %zmm0, %zmm315132; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15133; AVX512DQ-NEXT:    vmovdqa64 %zmm14, %zmm315134; AVX512DQ-NEXT:    vpermt2d %zmm4, %zmm1, %zmm315135; AVX512DQ-NEXT:    vpermt2d %zmm20, %zmm0, %zmm315136; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15137; AVX512DQ-NEXT:    vpermi2d %zmm17, %zmm11, %zmm115138; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm0, %zmm115139; AVX512DQ-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15140; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,18,25,0,7,14,0,0,0,18,25,0,7,14,0,0]15141; AVX512DQ-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]15142; AVX512DQ-NEXT:    vmovdqa64 %zmm5, %zmm315143; AVX512DQ-NEXT:    vpermt2d %zmm12, %zmm1, %zmm315144; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,21,28,0,9,10,11,12,13,21,28]15145; AVX512DQ-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]15146; AVX512DQ-NEXT:    vpermt2d %zmm7, %zmm0, %zmm315147; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15148; AVX512DQ-NEXT:    vmovdqa64 %zmm8, %zmm315149; AVX512DQ-NEXT:    vpermt2d %zmm13, %zmm1, %zmm315150; AVX512DQ-NEXT:    vpermt2d %zmm6, %zmm0, %zmm315151; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15152; AVX512DQ-NEXT:    vmovdqa64 %zmm4, %zmm315153; AVX512DQ-NEXT:    vpermt2d %zmm14, %zmm1, %zmm315154; AVX512DQ-NEXT:    vpermt2d %zmm20, %zmm0, %zmm315155; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15156; AVX512DQ-NEXT:    vpermi2d %zmm11, %zmm17, %zmm115157; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm0, %zmm115158; AVX512DQ-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15159; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,19,26,1,8,15,0,0,0,19,26,1,8,15,0,0]15160; AVX512DQ-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]15161; AVX512DQ-NEXT:    vmovdqa64 %zmm5, %zmm315162; AVX512DQ-NEXT:    vpermt2d %zmm12, %zmm1, %zmm315163; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,22,29,0,9,10,11,12,13,22,29]15164; AVX512DQ-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]15165; AVX512DQ-NEXT:    vpermt2d %zmm7, %zmm0, %zmm315166; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15167; AVX512DQ-NEXT:    vmovdqa64 %zmm8, %zmm315168; AVX512DQ-NEXT:    vpermt2d %zmm13, %zmm1, %zmm315169; AVX512DQ-NEXT:    vpermt2d %zmm6, %zmm0, %zmm315170; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15171; AVX512DQ-NEXT:    vmovdqa64 %zmm4, %zmm315172; AVX512DQ-NEXT:    vpermt2d %zmm14, %zmm1, %zmm315173; AVX512DQ-NEXT:    vpermt2d %zmm20, %zmm0, %zmm315174; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15175; AVX512DQ-NEXT:    vpermi2d %zmm11, %zmm17, %zmm115176; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm0, %zmm115177; AVX512DQ-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15178; AVX512DQ-NEXT:    vmovdqa64 1024(%rdi), %zmm315179; AVX512DQ-NEXT:    vmovdqa64 1088(%rdi), %zmm1515180; AVX512DQ-NEXT:    vbroadcasti32x4 {{.*#+}} zmm30 = [25,4,11,18,25,4,11,18,25,4,11,18,25,4,11,18]15181; AVX512DQ-NEXT:    # zmm30 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]15182; AVX512DQ-NEXT:    vmovdqa64 %zmm3, %zmm015183; AVX512DQ-NEXT:    vpermt2d %zmm15, %zmm30, %zmm015184; AVX512DQ-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15185; AVX512DQ-NEXT:    vmovdqa64 576(%rdi), %zmm915186; AVX512DQ-NEXT:    vmovdqa64 640(%rdi), %zmm1615187; AVX512DQ-NEXT:    vmovdqa64 %zmm9, %zmm015188; AVX512DQ-NEXT:    vpermt2d %zmm16, %zmm30, %zmm015189; AVX512DQ-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15190; AVX512DQ-NEXT:    vmovdqa64 128(%rdi), %zmm015191; AVX512DQ-NEXT:    vmovdqa64 192(%rdi), %zmm1815192; AVX512DQ-NEXT:    vmovdqa64 %zmm0, %zmm115193; AVX512DQ-NEXT:    vpermt2d %zmm18, %zmm30, %zmm115194; AVX512DQ-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15195; AVX512DQ-NEXT:    vmovdqa64 1472(%rdi), %zmm115196; AVX512DQ-NEXT:    vmovdqa64 1536(%rdi), %zmm1915197; AVX512DQ-NEXT:    vmovdqa64 %zmm1, %zmm1015198; AVX512DQ-NEXT:    vpermt2d %zmm19, %zmm30, %zmm1015199; AVX512DQ-NEXT:    vmovdqu64 %zmm10, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15200; AVX512DQ-NEXT:    vmovdqa64 %zmm12, %zmm2115201; AVX512DQ-NEXT:    vpermt2d %zmm5, %zmm30, %zmm2115202; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm10 = [0,9,10,11,12,16,23,30,0,9,10,11,12,16,23,30]15203; AVX512DQ-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3]15204; AVX512DQ-NEXT:    vpermt2d %zmm7, %zmm10, %zmm2115205; AVX512DQ-NEXT:    vmovdqu64 %zmm21, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15206; AVX512DQ-NEXT:    vmovdqa64 %zmm13, %zmm2115207; AVX512DQ-NEXT:    vpermt2d %zmm8, %zmm30, %zmm2115208; AVX512DQ-NEXT:    vpermt2d %zmm6, %zmm10, %zmm2115209; AVX512DQ-NEXT:    vmovdqu64 %zmm21, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15210; AVX512DQ-NEXT:    vmovdqa64 %zmm14, %zmm2115211; AVX512DQ-NEXT:    vpermt2d %zmm4, %zmm30, %zmm2115212; AVX512DQ-NEXT:    vpermt2d %zmm20, %zmm10, %zmm2115213; AVX512DQ-NEXT:    vmovdqu64 %zmm21, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15214; AVX512DQ-NEXT:    vpermi2d %zmm17, %zmm11, %zmm3015215; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm10, %zmm3015216; AVX512DQ-NEXT:    vbroadcasti32x4 {{.*#+}} zmm10 = [26,5,12,19,26,5,12,19,26,5,12,19,26,5,12,19]15217; AVX512DQ-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]15218; AVX512DQ-NEXT:    vpermt2d %zmm8, %zmm10, %zmm1315219; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm8 = [0,9,10,11,12,17,24,31,0,9,10,11,12,17,24,31]15220; AVX512DQ-NEXT:    # zmm8 = mem[0,1,2,3,0,1,2,3]15221; AVX512DQ-NEXT:    vpermt2d %zmm6, %zmm8, %zmm1315222; AVX512DQ-NEXT:    vmovdqu64 %zmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15223; AVX512DQ-NEXT:    vpermt2d %zmm4, %zmm10, %zmm1415224; AVX512DQ-NEXT:    vpermt2d %zmm20, %zmm8, %zmm1415225; AVX512DQ-NEXT:    vmovdqu64 %zmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15226; AVX512DQ-NEXT:    vpermt2d %zmm17, %zmm10, %zmm1115227; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm8, %zmm1115228; AVX512DQ-NEXT:    vmovdqu64 %zmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15229; AVX512DQ-NEXT:    vpermt2d %zmm5, %zmm10, %zmm1215230; AVX512DQ-NEXT:    vpermt2d %zmm7, %zmm8, %zmm1215231; AVX512DQ-NEXT:    vmovdqu64 %zmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15232; AVX512DQ-NEXT:    vmovdqa64 %zmm3, %zmm215233; AVX512DQ-NEXT:    vpermt2d %zmm15, %zmm10, %zmm215234; AVX512DQ-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15235; AVX512DQ-NEXT:    vmovdqa64 %zmm9, %zmm215236; AVX512DQ-NEXT:    vpermt2d %zmm16, %zmm10, %zmm215237; AVX512DQ-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15238; AVX512DQ-NEXT:    vmovdqa64 %zmm0, %zmm215239; AVX512DQ-NEXT:    vpermt2d %zmm18, %zmm10, %zmm215240; AVX512DQ-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15241; AVX512DQ-NEXT:    vmovdqa64 %zmm1, %zmm215242; AVX512DQ-NEXT:    vpermt2d %zmm19, %zmm10, %zmm215243; AVX512DQ-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15244; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm25 = [8,15,0,0,0,19,26,1,8,15,0,0,0,19,26,1]15245; AVX512DQ-NEXT:    # zmm25 = mem[0,1,2,3,0,1,2,3]15246; AVX512DQ-NEXT:    vmovdqa64 %zmm16, %zmm215247; AVX512DQ-NEXT:    vpermt2d %zmm9, %zmm25, %zmm215248; AVX512DQ-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15249; AVX512DQ-NEXT:    vbroadcasti32x4 {{.*#+}} zmm27 = [27,6,13,20,27,6,13,20,27,6,13,20,27,6,13,20]15250; AVX512DQ-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]15251; AVX512DQ-NEXT:    vmovdqa64 %zmm9, %zmm215252; AVX512DQ-NEXT:    vpermt2d %zmm16, %zmm27, %zmm215253; AVX512DQ-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15254; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm28 = [28,0,0,0,0,7,14,21,28,0,0,0,0,7,14,21]15255; AVX512DQ-NEXT:    # zmm28 = mem[0,1,2,3,0,1,2,3]15256; AVX512DQ-NEXT:    vmovdqa64 %zmm9, %zmm215257; AVX512DQ-NEXT:    vpermt2d %zmm16, %zmm28, %zmm215258; AVX512DQ-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15259; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm31 = [29,0,0,0,1,8,15,22,29,0,0,0,1,8,15,22]15260; AVX512DQ-NEXT:    # zmm31 = mem[0,1,2,3,0,1,2,3]15261; AVX512DQ-NEXT:    vmovdqa64 %zmm9, %zmm215262; AVX512DQ-NEXT:    vpermt2d %zmm16, %zmm31, %zmm215263; AVX512DQ-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15264; AVX512DQ-NEXT:    vbroadcasti64x4 {{.*#+}} zmm2 = [14,0,0,0,18,25,0,7,14,0,0,0,18,25,0,7]15265; AVX512DQ-NEXT:    # zmm2 = mem[0,1,2,3,0,1,2,3]15266; AVX512DQ-NEXT:    vpermt2d %zmm9, %zmm2, %zmm1615267; AVX512DQ-NEXT:    vmovdqu64 %zmm16, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15268; AVX512DQ-NEXT:    vmovdqa64 %zmm18, %zmm415269; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm25, %zmm415270; AVX512DQ-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15271; AVX512DQ-NEXT:    vmovdqa64 %zmm0, %zmm415272; AVX512DQ-NEXT:    vpermt2d %zmm18, %zmm27, %zmm415273; AVX512DQ-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15274; AVX512DQ-NEXT:    vmovdqa64 %zmm0, %zmm415275; AVX512DQ-NEXT:    vpermt2d %zmm18, %zmm28, %zmm415276; AVX512DQ-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15277; AVX512DQ-NEXT:    vmovdqa64 %zmm0, %zmm415278; AVX512DQ-NEXT:    vpermt2d %zmm18, %zmm31, %zmm415279; AVX512DQ-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15280; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm2, %zmm1815281; AVX512DQ-NEXT:    vmovdqu64 %zmm18, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15282; AVX512DQ-NEXT:    vmovdqa64 %zmm15, %zmm015283; AVX512DQ-NEXT:    vpermt2d %zmm3, %zmm25, %zmm015284; AVX512DQ-NEXT:    vmovdqu64 %zmm0, (%rsp) # 64-byte Spill15285; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm19, %zmm2515286; AVX512DQ-NEXT:    vmovdqa64 %zmm3, %zmm015287; AVX512DQ-NEXT:    vpermt2d %zmm15, %zmm27, %zmm015288; AVX512DQ-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15289; AVX512DQ-NEXT:    vpermi2d %zmm19, %zmm1, %zmm2715290; AVX512DQ-NEXT:    vmovdqa64 %zmm3, %zmm015291; AVX512DQ-NEXT:    vpermt2d %zmm15, %zmm28, %zmm015292; AVX512DQ-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15293; AVX512DQ-NEXT:    vpermi2d %zmm19, %zmm1, %zmm2815294; AVX512DQ-NEXT:    vmovdqa64 %zmm3, %zmm015295; AVX512DQ-NEXT:    vpermt2d %zmm15, %zmm31, %zmm015296; AVX512DQ-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15297; AVX512DQ-NEXT:    vpermi2d %zmm19, %zmm1, %zmm3115298; AVX512DQ-NEXT:    vpermt2d %zmm1, %zmm2, %zmm1915299; AVX512DQ-NEXT:    vmovdqu64 %zmm19, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15300; AVX512DQ-NEXT:    vpermt2d %zmm3, %zmm2, %zmm1515301; AVX512DQ-NEXT:    vmovdqu64 %zmm15, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15302; AVX512DQ-NEXT:    vmovdqa64 512(%rdi), %zmm015303; AVX512DQ-NEXT:    vmovdqa64 448(%rdi), %zmm1715304; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm2 = [0,7,14,21,28,0,0,0]15305; AVX512DQ-NEXT:    vmovdqa64 %zmm17, %zmm2215306; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm2, %zmm2215307; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm3 = [1,8,15,22,29,0,0,0]15308; AVX512DQ-NEXT:    vmovdqa64 %zmm17, %zmm2315309; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm3, %zmm2315310; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm4 = [18,25,0,7,14,0,0,0]15311; AVX512DQ-NEXT:    vmovdqa64 %zmm0, %zmm2415312; AVX512DQ-NEXT:    vpermt2d %zmm17, %zmm4, %zmm2415313; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [19,26,1,8,15,0,0,0]15314; AVX512DQ-NEXT:    vmovdqa64 %zmm0, %zmm2915315; AVX512DQ-NEXT:    vpermt2d %zmm17, %zmm7, %zmm2915316; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} xmm18 = [4,11,18,25]15317; AVX512DQ-NEXT:    vmovdqa64 %zmm17, %zmm115318; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm18, %zmm115319; AVX512DQ-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15320; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} xmm19 = [5,12,19,26]15321; AVX512DQ-NEXT:    vmovdqa64 %zmm17, %zmm115322; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm19, %zmm115323; AVX512DQ-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15324; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} xmm20 = [6,13,20,27]15325; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm20, %zmm1715326; AVX512DQ-NEXT:    vmovdqa64 (%rdi), %zmm515327; AVX512DQ-NEXT:    vmovdqa64 64(%rdi), %zmm015328; AVX512DQ-NEXT:    vmovdqa64 %zmm5, %zmm1315329; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm2, %zmm1315330; AVX512DQ-NEXT:    vmovdqa64 %zmm5, %zmm1415331; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm3, %zmm1415332; AVX512DQ-NEXT:    vmovdqa64 %zmm0, %zmm1515333; AVX512DQ-NEXT:    vpermt2d %zmm5, %zmm4, %zmm1515334; AVX512DQ-NEXT:    vmovdqa64 %zmm0, %zmm1615335; AVX512DQ-NEXT:    vpermt2d %zmm5, %zmm7, %zmm1615336; AVX512DQ-NEXT:    vmovdqa64 %zmm5, %zmm115337; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm18, %zmm115338; AVX512DQ-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15339; AVX512DQ-NEXT:    vmovdqa64 %zmm5, %zmm115340; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm19, %zmm115341; AVX512DQ-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15342; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm20, %zmm515343; AVX512DQ-NEXT:    vmovdqa64 960(%rdi), %zmm915344; AVX512DQ-NEXT:    vmovdqa64 896(%rdi), %zmm615345; AVX512DQ-NEXT:    vmovdqa64 %zmm6, %zmm815346; AVX512DQ-NEXT:    vpermt2d %zmm9, %zmm2, %zmm815347; AVX512DQ-NEXT:    vmovdqa64 1408(%rdi), %zmm015348; AVX512DQ-NEXT:    vmovdqa64 1344(%rdi), %zmm115349; AVX512DQ-NEXT:    vpermi2d %zmm0, %zmm1, %zmm215350; AVX512DQ-NEXT:    vmovdqa64 %zmm6, %zmm1015351; AVX512DQ-NEXT:    vpermt2d %zmm9, %zmm3, %zmm1015352; AVX512DQ-NEXT:    vpermi2d %zmm0, %zmm1, %zmm315353; AVX512DQ-NEXT:    vmovdqa64 %zmm9, %zmm1115354; AVX512DQ-NEXT:    vpermt2d %zmm6, %zmm4, %zmm1115355; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm0, %zmm415356; AVX512DQ-NEXT:    vmovdqa64 %zmm9, %zmm1215357; AVX512DQ-NEXT:    vpermt2d %zmm6, %zmm7, %zmm1215358; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm0, %zmm715359; AVX512DQ-NEXT:    vmovdqa64 %zmm6, %zmm2115360; AVX512DQ-NEXT:    vpermt2d %zmm9, %zmm18, %zmm2115361; AVX512DQ-NEXT:    vpermi2d %zmm0, %zmm1, %zmm1815362; AVX512DQ-NEXT:    vmovdqa64 %zmm6, %zmm2615363; AVX512DQ-NEXT:    vpermt2d %zmm9, %zmm19, %zmm2615364; AVX512DQ-NEXT:    vpermi2d %zmm0, %zmm1, %zmm1915365; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm20, %zmm115366; AVX512DQ-NEXT:    vpermt2d %zmm9, %zmm20, %zmm615367; AVX512DQ-NEXT:    movw $992, %ax # imm = 0x3E015368; AVX512DQ-NEXT:    kmovw %eax, %k115369; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15370; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm13 {%k1}15371; AVX512DQ-NEXT:    movb $-32, %al15372; AVX512DQ-NEXT:    kmovw %eax, %k215373; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15374; AVX512DQ-NEXT:    vmovdqa64 %zmm0, %zmm13 {%k2}15375; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15376; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm22 {%k1}15377; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15378; AVX512DQ-NEXT:    vmovdqa64 %zmm0, %zmm22 {%k2}15379; AVX512DQ-NEXT:    vmovdqu64 (%rsp), %zmm0 # 64-byte Reload15380; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm8 {%k1}15381; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15382; AVX512DQ-NEXT:    vmovdqa64 %zmm0, %zmm8 {%k2}15383; AVX512DQ-NEXT:    vmovdqa32 %zmm25, %zmm2 {%k1}15384; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15385; AVX512DQ-NEXT:    vmovdqa64 %zmm0, %zmm2 {%k2}15386; AVX512DQ-NEXT:    movw $480, %ax # imm = 0x1E015387; AVX512DQ-NEXT:    kmovw %eax, %k215388; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15389; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm10 {%k2}15390; AVX512DQ-NEXT:    movw $-512, %ax # imm = 0xFE0015391; AVX512DQ-NEXT:    kmovw %eax, %k115392; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15393; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm10 {%k1}15394; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15395; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm23 {%k2}15396; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15397; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm23 {%k1}15398; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15399; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm14 {%k2}15400; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15401; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm14 {%k1}15402; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15403; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k2}15404; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15405; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k1}15406; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15407; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm11 {%k2}15408; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15409; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm11 {%k1}15410; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15411; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm24 {%k2}15412; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15413; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm24 {%k1}15414; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15415; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm15 {%k2}15416; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15417; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm15 {%k1}15418; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15419; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm4 {%k2}15420; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15421; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm4 {%k1}15422; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15423; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm12 {%k2}15424; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15425; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm12 {%k1}15426; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15427; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm29 {%k2}15428; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15429; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm29 {%k1}15430; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15431; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm16 {%k2}15432; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15433; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm16 {%k1}15434; AVX512DQ-NEXT:    vmovdqa32 %zmm27, %zmm7 {%k2}15435; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15436; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm7 {%k1}15437; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15438; AVX512DQ-NEXT:    vinserti32x4 $0, %xmm21, %zmm0, %zmm015439; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm9 # 64-byte Reload15440; AVX512DQ-NEXT:    vmovdqa32 %zmm9, %zmm0 {%k1}15441; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm9 # 64-byte Reload15442; AVX512DQ-NEXT:    vinserti32x4 $0, {{[-0-9]+}}(%r{{[sb]}}p), %zmm9, %zmm9 # 16-byte Folded Reload15443; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm20 # 64-byte Reload15444; AVX512DQ-NEXT:    vmovdqa32 %zmm20, %zmm9 {%k1}15445; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm20 # 64-byte Reload15446; AVX512DQ-NEXT:    vinserti32x4 $0, {{[-0-9]+}}(%r{{[sb]}}p), %zmm20, %zmm20 # 16-byte Folded Reload15447; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm25 # 64-byte Reload15448; AVX512DQ-NEXT:    vmovdqa32 %zmm25, %zmm20 {%k1}15449; AVX512DQ-NEXT:    vinserti32x4 $0, %xmm18, %zmm28, %zmm1815450; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm25 # 64-byte Reload15451; AVX512DQ-NEXT:    vmovdqa32 %zmm25, %zmm18 {%k1}15452; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm25 # 64-byte Reload15453; AVX512DQ-NEXT:    vinserti32x4 $0, %xmm26, %zmm25, %zmm2515454; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm26 # 64-byte Reload15455; AVX512DQ-NEXT:    vmovdqa32 %zmm26, %zmm25 {%k1}15456; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm26 # 64-byte Reload15457; AVX512DQ-NEXT:    vinserti32x4 $0, {{[-0-9]+}}(%r{{[sb]}}p), %zmm26, %zmm26 # 16-byte Folded Reload15458; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm27 # 64-byte Reload15459; AVX512DQ-NEXT:    vmovdqa32 %zmm27, %zmm26 {%k1}15460; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm27 # 64-byte Reload15461; AVX512DQ-NEXT:    vinserti32x4 $0, {{[-0-9]+}}(%r{{[sb]}}p), %zmm27, %zmm27 # 16-byte Folded Reload15462; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15463; AVX512DQ-NEXT:    vmovdqa32 %zmm28, %zmm27 {%k1}15464; AVX512DQ-NEXT:    vinserti32x4 $0, %xmm19, %zmm31, %zmm1915465; AVX512DQ-NEXT:    vmovdqa32 %zmm30, %zmm19 {%k1}15466; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15467; AVX512DQ-NEXT:    vinserti32x4 $0, %xmm17, %zmm28, %zmm1715468; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15469; AVX512DQ-NEXT:    vmovdqa32 %zmm28, %zmm17 {%k1}15470; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15471; AVX512DQ-NEXT:    vinserti32x4 $0, %xmm5, %zmm28, %zmm515472; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15473; AVX512DQ-NEXT:    vmovdqa32 %zmm28, %zmm5 {%k1}15474; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15475; AVX512DQ-NEXT:    vinserti32x4 $0, %xmm1, %zmm28, %zmm115476; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15477; AVX512DQ-NEXT:    vmovdqa32 %zmm28, %zmm1 {%k1}15478; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15479; AVX512DQ-NEXT:    vinserti32x4 $0, %xmm6, %zmm28, %zmm615480; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15481; AVX512DQ-NEXT:    vmovdqa32 %zmm28, %zmm6 {%k1}15482; AVX512DQ-NEXT:    vmovdqa64 %zmm2, 192(%rsi)15483; AVX512DQ-NEXT:    vmovdqa64 %zmm8, 128(%rsi)15484; AVX512DQ-NEXT:    vmovdqa64 %zmm22, 64(%rsi)15485; AVX512DQ-NEXT:    vmovdqa64 %zmm13, (%rsi)15486; AVX512DQ-NEXT:    vmovdqa64 %zmm3, 192(%rdx)15487; AVX512DQ-NEXT:    vmovdqa64 %zmm14, (%rdx)15488; AVX512DQ-NEXT:    vmovdqa64 %zmm23, 64(%rdx)15489; AVX512DQ-NEXT:    vmovdqa64 %zmm10, 128(%rdx)15490; AVX512DQ-NEXT:    vmovdqa64 %zmm4, 192(%rcx)15491; AVX512DQ-NEXT:    vmovdqa64 %zmm15, (%rcx)15492; AVX512DQ-NEXT:    vmovdqa64 %zmm24, 64(%rcx)15493; AVX512DQ-NEXT:    vmovdqa64 %zmm11, 128(%rcx)15494; AVX512DQ-NEXT:    vmovdqa64 %zmm7, 192(%r8)15495; AVX512DQ-NEXT:    vmovdqa64 %zmm16, (%r8)15496; AVX512DQ-NEXT:    vmovdqa64 %zmm29, 64(%r8)15497; AVX512DQ-NEXT:    vmovdqa64 %zmm12, 128(%r8)15498; AVX512DQ-NEXT:    vmovdqa64 %zmm18, 192(%r9)15499; AVX512DQ-NEXT:    vmovdqa64 %zmm20, (%r9)15500; AVX512DQ-NEXT:    vmovdqa64 %zmm9, 64(%r9)15501; AVX512DQ-NEXT:    vmovdqa64 %zmm0, 128(%r9)15502; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %rax15503; AVX512DQ-NEXT:    vmovdqa64 %zmm19, 192(%rax)15504; AVX512DQ-NEXT:    vmovdqa64 %zmm27, (%rax)15505; AVX512DQ-NEXT:    vmovdqa64 %zmm26, 64(%rax)15506; AVX512DQ-NEXT:    vmovdqa64 %zmm25, 128(%rax)15507; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %rax15508; AVX512DQ-NEXT:    vmovdqa64 %zmm6, 128(%rax)15509; AVX512DQ-NEXT:    vmovdqa64 %zmm1, 192(%rax)15510; AVX512DQ-NEXT:    vmovdqa64 %zmm5, (%rax)15511; AVX512DQ-NEXT:    vmovdqa64 %zmm17, 64(%rax)15512; AVX512DQ-NEXT:    addq $3400, %rsp # imm = 0xD4815513; AVX512DQ-NEXT:    vzeroupper15514; AVX512DQ-NEXT:    retq15515;15516; AVX512DQ-FCP-LABEL: load_i32_stride7_vf64:15517; AVX512DQ-FCP:       # %bb.0:15518; AVX512DQ-FCP-NEXT:    subq $3400, %rsp # imm = 0xD4815519; AVX512DQ-FCP-NEXT:    vmovdqa64 1728(%rdi), %zmm215520; AVX512DQ-FCP-NEXT:    vmovdqa64 1664(%rdi), %zmm1715521; AVX512DQ-FCP-NEXT:    vmovdqa64 1600(%rdi), %zmm1115522; AVX512DQ-FCP-NEXT:    vmovdqa64 1280(%rdi), %zmm715523; AVX512DQ-FCP-NEXT:    vmovdqa64 1216(%rdi), %zmm515524; AVX512DQ-FCP-NEXT:    vmovdqa64 1152(%rdi), %zmm1215525; AVX512DQ-FCP-NEXT:    vmovdqa64 832(%rdi), %zmm615526; AVX512DQ-FCP-NEXT:    vmovdqa64 768(%rdi), %zmm815527; AVX512DQ-FCP-NEXT:    vmovdqa64 704(%rdi), %zmm1315528; AVX512DQ-FCP-NEXT:    vmovdqa64 384(%rdi), %zmm2015529; AVX512DQ-FCP-NEXT:    vmovdqa64 320(%rdi), %zmm415530; AVX512DQ-FCP-NEXT:    vmovdqa64 256(%rdi), %zmm1415531; AVX512DQ-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm1 = [20,27,6,13,20,27,6,13,20,27,6,13,20,27,6,13]15532; AVX512DQ-FCP-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]15533; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm14, %zmm315534; AVX512DQ-FCP-NEXT:    vpermt2d %zmm4, %zmm1, %zmm315535; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,0,10,11,12,13,18,25,0,0,10,11,12,13,18,25]15536; AVX512DQ-FCP-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]15537; AVX512DQ-FCP-NEXT:    vpermt2d %zmm20, %zmm0, %zmm315538; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15539; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm13, %zmm315540; AVX512DQ-FCP-NEXT:    vpermt2d %zmm8, %zmm1, %zmm315541; AVX512DQ-FCP-NEXT:    vpermt2d %zmm6, %zmm0, %zmm315542; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15543; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm12, %zmm315544; AVX512DQ-FCP-NEXT:    vpermt2d %zmm5, %zmm1, %zmm315545; AVX512DQ-FCP-NEXT:    vpermt2d %zmm7, %zmm0, %zmm315546; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15547; AVX512DQ-FCP-NEXT:    vpermi2d %zmm17, %zmm11, %zmm115548; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm0, %zmm115549; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15550; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,0,7,14,21,28,0,0,0,0,7,14,21,28,0,0]15551; AVX512DQ-FCP-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]15552; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm12, %zmm315553; AVX512DQ-FCP-NEXT:    vpermt2d %zmm5, %zmm1, %zmm315554; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,19,26,0,9,10,11,12,13,19,26]15555; AVX512DQ-FCP-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]15556; AVX512DQ-FCP-NEXT:    vpermt2d %zmm7, %zmm0, %zmm315557; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15558; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm13, %zmm315559; AVX512DQ-FCP-NEXT:    vpermt2d %zmm8, %zmm1, %zmm315560; AVX512DQ-FCP-NEXT:    vpermt2d %zmm6, %zmm0, %zmm315561; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15562; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm14, %zmm315563; AVX512DQ-FCP-NEXT:    vpermt2d %zmm4, %zmm1, %zmm315564; AVX512DQ-FCP-NEXT:    vpermt2d %zmm20, %zmm0, %zmm315565; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15566; AVX512DQ-FCP-NEXT:    vpermi2d %zmm17, %zmm11, %zmm115567; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm0, %zmm115568; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15569; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,1,8,15,22,29,0,0,0,1,8,15,22,29,0,0]15570; AVX512DQ-FCP-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]15571; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm12, %zmm315572; AVX512DQ-FCP-NEXT:    vpermt2d %zmm5, %zmm1, %zmm315573; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,20,27,0,9,10,11,12,13,20,27]15574; AVX512DQ-FCP-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]15575; AVX512DQ-FCP-NEXT:    vpermt2d %zmm7, %zmm0, %zmm315576; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15577; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm13, %zmm315578; AVX512DQ-FCP-NEXT:    vpermt2d %zmm8, %zmm1, %zmm315579; AVX512DQ-FCP-NEXT:    vpermt2d %zmm6, %zmm0, %zmm315580; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15581; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm14, %zmm315582; AVX512DQ-FCP-NEXT:    vpermt2d %zmm4, %zmm1, %zmm315583; AVX512DQ-FCP-NEXT:    vpermt2d %zmm20, %zmm0, %zmm315584; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15585; AVX512DQ-FCP-NEXT:    vpermi2d %zmm17, %zmm11, %zmm115586; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm0, %zmm115587; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15588; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,18,25,0,7,14,0,0,0,18,25,0,7,14,0,0]15589; AVX512DQ-FCP-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]15590; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm5, %zmm315591; AVX512DQ-FCP-NEXT:    vpermt2d %zmm12, %zmm1, %zmm315592; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,21,28,0,9,10,11,12,13,21,28]15593; AVX512DQ-FCP-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]15594; AVX512DQ-FCP-NEXT:    vpermt2d %zmm7, %zmm0, %zmm315595; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15596; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm8, %zmm315597; AVX512DQ-FCP-NEXT:    vpermt2d %zmm13, %zmm1, %zmm315598; AVX512DQ-FCP-NEXT:    vpermt2d %zmm6, %zmm0, %zmm315599; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15600; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm4, %zmm315601; AVX512DQ-FCP-NEXT:    vpermt2d %zmm14, %zmm1, %zmm315602; AVX512DQ-FCP-NEXT:    vpermt2d %zmm20, %zmm0, %zmm315603; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15604; AVX512DQ-FCP-NEXT:    vpermi2d %zmm11, %zmm17, %zmm115605; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm0, %zmm115606; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15607; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,19,26,1,8,15,0,0,0,19,26,1,8,15,0,0]15608; AVX512DQ-FCP-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]15609; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm5, %zmm315610; AVX512DQ-FCP-NEXT:    vpermt2d %zmm12, %zmm1, %zmm315611; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,22,29,0,9,10,11,12,13,22,29]15612; AVX512DQ-FCP-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]15613; AVX512DQ-FCP-NEXT:    vpermt2d %zmm7, %zmm0, %zmm315614; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15615; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm8, %zmm315616; AVX512DQ-FCP-NEXT:    vpermt2d %zmm13, %zmm1, %zmm315617; AVX512DQ-FCP-NEXT:    vpermt2d %zmm6, %zmm0, %zmm315618; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15619; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm4, %zmm315620; AVX512DQ-FCP-NEXT:    vpermt2d %zmm14, %zmm1, %zmm315621; AVX512DQ-FCP-NEXT:    vpermt2d %zmm20, %zmm0, %zmm315622; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15623; AVX512DQ-FCP-NEXT:    vpermi2d %zmm11, %zmm17, %zmm115624; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm0, %zmm115625; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15626; AVX512DQ-FCP-NEXT:    vmovdqa64 1024(%rdi), %zmm315627; AVX512DQ-FCP-NEXT:    vmovdqa64 1088(%rdi), %zmm1515628; AVX512DQ-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm30 = [25,4,11,18,25,4,11,18,25,4,11,18,25,4,11,18]15629; AVX512DQ-FCP-NEXT:    # zmm30 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]15630; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm3, %zmm015631; AVX512DQ-FCP-NEXT:    vpermt2d %zmm15, %zmm30, %zmm015632; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15633; AVX512DQ-FCP-NEXT:    vmovdqa64 576(%rdi), %zmm915634; AVX512DQ-FCP-NEXT:    vmovdqa64 640(%rdi), %zmm1615635; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm9, %zmm015636; AVX512DQ-FCP-NEXT:    vpermt2d %zmm16, %zmm30, %zmm015637; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15638; AVX512DQ-FCP-NEXT:    vmovdqa64 128(%rdi), %zmm015639; AVX512DQ-FCP-NEXT:    vmovdqa64 192(%rdi), %zmm1815640; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, %zmm115641; AVX512DQ-FCP-NEXT:    vpermt2d %zmm18, %zmm30, %zmm115642; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15643; AVX512DQ-FCP-NEXT:    vmovdqa64 1472(%rdi), %zmm115644; AVX512DQ-FCP-NEXT:    vmovdqa64 1536(%rdi), %zmm1915645; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm1, %zmm1015646; AVX512DQ-FCP-NEXT:    vpermt2d %zmm19, %zmm30, %zmm1015647; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm10, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15648; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm12, %zmm2115649; AVX512DQ-FCP-NEXT:    vpermt2d %zmm5, %zmm30, %zmm2115650; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm10 = [0,9,10,11,12,16,23,30,0,9,10,11,12,16,23,30]15651; AVX512DQ-FCP-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3]15652; AVX512DQ-FCP-NEXT:    vpermt2d %zmm7, %zmm10, %zmm2115653; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm21, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15654; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm13, %zmm2115655; AVX512DQ-FCP-NEXT:    vpermt2d %zmm8, %zmm30, %zmm2115656; AVX512DQ-FCP-NEXT:    vpermt2d %zmm6, %zmm10, %zmm2115657; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm21, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15658; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm14, %zmm2115659; AVX512DQ-FCP-NEXT:    vpermt2d %zmm4, %zmm30, %zmm2115660; AVX512DQ-FCP-NEXT:    vpermt2d %zmm20, %zmm10, %zmm2115661; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm21, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15662; AVX512DQ-FCP-NEXT:    vpermi2d %zmm17, %zmm11, %zmm3015663; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm10, %zmm3015664; AVX512DQ-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm10 = [26,5,12,19,26,5,12,19,26,5,12,19,26,5,12,19]15665; AVX512DQ-FCP-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]15666; AVX512DQ-FCP-NEXT:    vpermt2d %zmm8, %zmm10, %zmm1315667; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm8 = [0,9,10,11,12,17,24,31,0,9,10,11,12,17,24,31]15668; AVX512DQ-FCP-NEXT:    # zmm8 = mem[0,1,2,3,0,1,2,3]15669; AVX512DQ-FCP-NEXT:    vpermt2d %zmm6, %zmm8, %zmm1315670; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15671; AVX512DQ-FCP-NEXT:    vpermt2d %zmm4, %zmm10, %zmm1415672; AVX512DQ-FCP-NEXT:    vpermt2d %zmm20, %zmm8, %zmm1415673; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15674; AVX512DQ-FCP-NEXT:    vpermt2d %zmm17, %zmm10, %zmm1115675; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm8, %zmm1115676; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15677; AVX512DQ-FCP-NEXT:    vpermt2d %zmm5, %zmm10, %zmm1215678; AVX512DQ-FCP-NEXT:    vpermt2d %zmm7, %zmm8, %zmm1215679; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15680; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm3, %zmm215681; AVX512DQ-FCP-NEXT:    vpermt2d %zmm15, %zmm10, %zmm215682; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15683; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm9, %zmm215684; AVX512DQ-FCP-NEXT:    vpermt2d %zmm16, %zmm10, %zmm215685; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15686; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, %zmm215687; AVX512DQ-FCP-NEXT:    vpermt2d %zmm18, %zmm10, %zmm215688; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15689; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm1, %zmm215690; AVX512DQ-FCP-NEXT:    vpermt2d %zmm19, %zmm10, %zmm215691; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15692; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm25 = [8,15,0,0,0,19,26,1,8,15,0,0,0,19,26,1]15693; AVX512DQ-FCP-NEXT:    # zmm25 = mem[0,1,2,3,0,1,2,3]15694; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm16, %zmm215695; AVX512DQ-FCP-NEXT:    vpermt2d %zmm9, %zmm25, %zmm215696; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15697; AVX512DQ-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm27 = [27,6,13,20,27,6,13,20,27,6,13,20,27,6,13,20]15698; AVX512DQ-FCP-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]15699; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm9, %zmm215700; AVX512DQ-FCP-NEXT:    vpermt2d %zmm16, %zmm27, %zmm215701; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15702; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm28 = [28,0,0,0,0,7,14,21,28,0,0,0,0,7,14,21]15703; AVX512DQ-FCP-NEXT:    # zmm28 = mem[0,1,2,3,0,1,2,3]15704; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm9, %zmm215705; AVX512DQ-FCP-NEXT:    vpermt2d %zmm16, %zmm28, %zmm215706; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15707; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm31 = [29,0,0,0,1,8,15,22,29,0,0,0,1,8,15,22]15708; AVX512DQ-FCP-NEXT:    # zmm31 = mem[0,1,2,3,0,1,2,3]15709; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm9, %zmm215710; AVX512DQ-FCP-NEXT:    vpermt2d %zmm16, %zmm31, %zmm215711; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15712; AVX512DQ-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm2 = [14,0,0,0,18,25,0,7,14,0,0,0,18,25,0,7]15713; AVX512DQ-FCP-NEXT:    # zmm2 = mem[0,1,2,3,0,1,2,3]15714; AVX512DQ-FCP-NEXT:    vpermt2d %zmm9, %zmm2, %zmm1615715; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm16, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15716; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm18, %zmm415717; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm25, %zmm415718; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15719; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, %zmm415720; AVX512DQ-FCP-NEXT:    vpermt2d %zmm18, %zmm27, %zmm415721; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15722; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, %zmm415723; AVX512DQ-FCP-NEXT:    vpermt2d %zmm18, %zmm28, %zmm415724; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15725; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, %zmm415726; AVX512DQ-FCP-NEXT:    vpermt2d %zmm18, %zmm31, %zmm415727; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15728; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm2, %zmm1815729; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm18, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15730; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm15, %zmm015731; AVX512DQ-FCP-NEXT:    vpermt2d %zmm3, %zmm25, %zmm015732; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm0, (%rsp) # 64-byte Spill15733; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm19, %zmm2515734; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm3, %zmm015735; AVX512DQ-FCP-NEXT:    vpermt2d %zmm15, %zmm27, %zmm015736; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15737; AVX512DQ-FCP-NEXT:    vpermi2d %zmm19, %zmm1, %zmm2715738; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm3, %zmm015739; AVX512DQ-FCP-NEXT:    vpermt2d %zmm15, %zmm28, %zmm015740; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15741; AVX512DQ-FCP-NEXT:    vpermi2d %zmm19, %zmm1, %zmm2815742; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm3, %zmm015743; AVX512DQ-FCP-NEXT:    vpermt2d %zmm15, %zmm31, %zmm015744; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15745; AVX512DQ-FCP-NEXT:    vpermi2d %zmm19, %zmm1, %zmm3115746; AVX512DQ-FCP-NEXT:    vpermt2d %zmm1, %zmm2, %zmm1915747; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm19, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15748; AVX512DQ-FCP-NEXT:    vpermt2d %zmm3, %zmm2, %zmm1515749; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm15, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15750; AVX512DQ-FCP-NEXT:    vmovdqa64 512(%rdi), %zmm015751; AVX512DQ-FCP-NEXT:    vmovdqa64 448(%rdi), %zmm1715752; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm2 = [0,7,14,21,28,0,0,0]15753; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm17, %zmm2215754; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm2, %zmm2215755; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm3 = [1,8,15,22,29,0,0,0]15756; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm17, %zmm2315757; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm3, %zmm2315758; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm4 = [18,25,0,7,14,0,0,0]15759; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, %zmm2415760; AVX512DQ-FCP-NEXT:    vpermt2d %zmm17, %zmm4, %zmm2415761; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [19,26,1,8,15,0,0,0]15762; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, %zmm2915763; AVX512DQ-FCP-NEXT:    vpermt2d %zmm17, %zmm7, %zmm2915764; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm18 = [4,11,18,25]15765; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm17, %zmm115766; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm18, %zmm115767; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15768; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm19 = [5,12,19,26]15769; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm17, %zmm115770; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm19, %zmm115771; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15772; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} xmm20 = [6,13,20,27]15773; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm20, %zmm1715774; AVX512DQ-FCP-NEXT:    vmovdqa64 (%rdi), %zmm515775; AVX512DQ-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm015776; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm5, %zmm1315777; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm2, %zmm1315778; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm5, %zmm1415779; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm3, %zmm1415780; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, %zmm1515781; AVX512DQ-FCP-NEXT:    vpermt2d %zmm5, %zmm4, %zmm1515782; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, %zmm1615783; AVX512DQ-FCP-NEXT:    vpermt2d %zmm5, %zmm7, %zmm1615784; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm5, %zmm115785; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm18, %zmm115786; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15787; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm5, %zmm115788; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm19, %zmm115789; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15790; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm20, %zmm515791; AVX512DQ-FCP-NEXT:    vmovdqa64 960(%rdi), %zmm915792; AVX512DQ-FCP-NEXT:    vmovdqa64 896(%rdi), %zmm615793; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm6, %zmm815794; AVX512DQ-FCP-NEXT:    vpermt2d %zmm9, %zmm2, %zmm815795; AVX512DQ-FCP-NEXT:    vmovdqa64 1408(%rdi), %zmm015796; AVX512DQ-FCP-NEXT:    vmovdqa64 1344(%rdi), %zmm115797; AVX512DQ-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm215798; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm6, %zmm1015799; AVX512DQ-FCP-NEXT:    vpermt2d %zmm9, %zmm3, %zmm1015800; AVX512DQ-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm315801; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm9, %zmm1115802; AVX512DQ-FCP-NEXT:    vpermt2d %zmm6, %zmm4, %zmm1115803; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm415804; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm9, %zmm1215805; AVX512DQ-FCP-NEXT:    vpermt2d %zmm6, %zmm7, %zmm1215806; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm715807; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm6, %zmm2115808; AVX512DQ-FCP-NEXT:    vpermt2d %zmm9, %zmm18, %zmm2115809; AVX512DQ-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm1815810; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm6, %zmm2615811; AVX512DQ-FCP-NEXT:    vpermt2d %zmm9, %zmm19, %zmm2615812; AVX512DQ-FCP-NEXT:    vpermi2d %zmm0, %zmm1, %zmm1915813; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm20, %zmm115814; AVX512DQ-FCP-NEXT:    vpermt2d %zmm9, %zmm20, %zmm615815; AVX512DQ-FCP-NEXT:    movw $992, %ax # imm = 0x3E015816; AVX512DQ-FCP-NEXT:    kmovw %eax, %k115817; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15818; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm13 {%k1}15819; AVX512DQ-FCP-NEXT:    movb $-32, %al15820; AVX512DQ-FCP-NEXT:    kmovw %eax, %k215821; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15822; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, %zmm13 {%k2}15823; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15824; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm22 {%k1}15825; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15826; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, %zmm22 {%k2}15827; AVX512DQ-FCP-NEXT:    vmovdqu64 (%rsp), %zmm0 # 64-byte Reload15828; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm8 {%k1}15829; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15830; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, %zmm8 {%k2}15831; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm25, %zmm2 {%k1}15832; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15833; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, %zmm2 {%k2}15834; AVX512DQ-FCP-NEXT:    movw $480, %ax # imm = 0x1E015835; AVX512DQ-FCP-NEXT:    kmovw %eax, %k215836; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15837; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm10 {%k2}15838; AVX512DQ-FCP-NEXT:    movw $-512, %ax # imm = 0xFE0015839; AVX512DQ-FCP-NEXT:    kmovw %eax, %k115840; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15841; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm10 {%k1}15842; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15843; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm23 {%k2}15844; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15845; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm23 {%k1}15846; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15847; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm14 {%k2}15848; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15849; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm14 {%k1}15850; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15851; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k2}15852; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15853; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k1}15854; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15855; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm11 {%k2}15856; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15857; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm11 {%k1}15858; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15859; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm24 {%k2}15860; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15861; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm24 {%k1}15862; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15863; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm15 {%k2}15864; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15865; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm15 {%k1}15866; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15867; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm4 {%k2}15868; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15869; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm4 {%k1}15870; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15871; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm12 {%k2}15872; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15873; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm12 {%k1}15874; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15875; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm29 {%k2}15876; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15877; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm29 {%k1}15878; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15879; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm16 {%k2}15880; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15881; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm16 {%k1}15882; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm27, %zmm7 {%k2}15883; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15884; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm7 {%k1}15885; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15886; AVX512DQ-FCP-NEXT:    vinserti32x4 $0, %xmm21, %zmm0, %zmm015887; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm9 # 64-byte Reload15888; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm9, %zmm0 {%k1}15889; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm9 # 64-byte Reload15890; AVX512DQ-FCP-NEXT:    vinserti32x4 $0, {{[-0-9]+}}(%r{{[sb]}}p), %zmm9, %zmm9 # 16-byte Folded Reload15891; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm20 # 64-byte Reload15892; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm20, %zmm9 {%k1}15893; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm20 # 64-byte Reload15894; AVX512DQ-FCP-NEXT:    vinserti32x4 $0, {{[-0-9]+}}(%r{{[sb]}}p), %zmm20, %zmm20 # 16-byte Folded Reload15895; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm25 # 64-byte Reload15896; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm25, %zmm20 {%k1}15897; AVX512DQ-FCP-NEXT:    vinserti32x4 $0, %xmm18, %zmm28, %zmm1815898; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm25 # 64-byte Reload15899; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm25, %zmm18 {%k1}15900; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm25 # 64-byte Reload15901; AVX512DQ-FCP-NEXT:    vinserti32x4 $0, %xmm26, %zmm25, %zmm2515902; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm26 # 64-byte Reload15903; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm26, %zmm25 {%k1}15904; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm26 # 64-byte Reload15905; AVX512DQ-FCP-NEXT:    vinserti32x4 $0, {{[-0-9]+}}(%r{{[sb]}}p), %zmm26, %zmm26 # 16-byte Folded Reload15906; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm27 # 64-byte Reload15907; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm27, %zmm26 {%k1}15908; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm27 # 64-byte Reload15909; AVX512DQ-FCP-NEXT:    vinserti32x4 $0, {{[-0-9]+}}(%r{{[sb]}}p), %zmm27, %zmm27 # 16-byte Folded Reload15910; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15911; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm28, %zmm27 {%k1}15912; AVX512DQ-FCP-NEXT:    vinserti32x4 $0, %xmm19, %zmm31, %zmm1915913; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm30, %zmm19 {%k1}15914; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15915; AVX512DQ-FCP-NEXT:    vinserti32x4 $0, %xmm17, %zmm28, %zmm1715916; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15917; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm28, %zmm17 {%k1}15918; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15919; AVX512DQ-FCP-NEXT:    vinserti32x4 $0, %xmm5, %zmm28, %zmm515920; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15921; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm28, %zmm5 {%k1}15922; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15923; AVX512DQ-FCP-NEXT:    vinserti32x4 $0, %xmm1, %zmm28, %zmm115924; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15925; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm28, %zmm1 {%k1}15926; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15927; AVX512DQ-FCP-NEXT:    vinserti32x4 $0, %xmm6, %zmm28, %zmm615928; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15929; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm28, %zmm6 {%k1}15930; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm2, 192(%rsi)15931; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm8, 128(%rsi)15932; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm22, 64(%rsi)15933; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm13, (%rsi)15934; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm3, 192(%rdx)15935; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm14, (%rdx)15936; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm23, 64(%rdx)15937; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm10, 128(%rdx)15938; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm4, 192(%rcx)15939; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm15, (%rcx)15940; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm24, 64(%rcx)15941; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm11, 128(%rcx)15942; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm7, 192(%r8)15943; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm16, (%r8)15944; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm29, 64(%r8)15945; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm12, 128(%r8)15946; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm18, 192(%r9)15947; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm20, (%r9)15948; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm9, 64(%r9)15949; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, 128(%r9)15950; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax15951; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm19, 192(%rax)15952; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm27, (%rax)15953; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm26, 64(%rax)15954; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm25, 128(%rax)15955; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax15956; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm6, 128(%rax)15957; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm1, 192(%rax)15958; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm5, (%rax)15959; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm17, 64(%rax)15960; AVX512DQ-FCP-NEXT:    addq $3400, %rsp # imm = 0xD4815961; AVX512DQ-FCP-NEXT:    vzeroupper15962; AVX512DQ-FCP-NEXT:    retq15963;15964; AVX512BW-LABEL: load_i32_stride7_vf64:15965; AVX512BW:       # %bb.0:15966; AVX512BW-NEXT:    subq $3400, %rsp # imm = 0xD4815967; AVX512BW-NEXT:    vmovdqa64 1728(%rdi), %zmm215968; AVX512BW-NEXT:    vmovdqa64 1664(%rdi), %zmm1715969; AVX512BW-NEXT:    vmovdqa64 1600(%rdi), %zmm1115970; AVX512BW-NEXT:    vmovdqa64 1280(%rdi), %zmm715971; AVX512BW-NEXT:    vmovdqa64 1216(%rdi), %zmm515972; AVX512BW-NEXT:    vmovdqa64 1152(%rdi), %zmm1215973; AVX512BW-NEXT:    vmovdqa64 832(%rdi), %zmm615974; AVX512BW-NEXT:    vmovdqa64 768(%rdi), %zmm815975; AVX512BW-NEXT:    vmovdqa64 704(%rdi), %zmm1315976; AVX512BW-NEXT:    vmovdqa64 384(%rdi), %zmm2015977; AVX512BW-NEXT:    vmovdqa64 320(%rdi), %zmm415978; AVX512BW-NEXT:    vmovdqa64 256(%rdi), %zmm1415979; AVX512BW-NEXT:    vbroadcasti32x4 {{.*#+}} zmm1 = [20,27,6,13,20,27,6,13,20,27,6,13,20,27,6,13]15980; AVX512BW-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]15981; AVX512BW-NEXT:    vmovdqa64 %zmm14, %zmm315982; AVX512BW-NEXT:    vpermt2d %zmm4, %zmm1, %zmm315983; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,0,10,11,12,13,18,25,0,0,10,11,12,13,18,25]15984; AVX512BW-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]15985; AVX512BW-NEXT:    vpermt2d %zmm20, %zmm0, %zmm315986; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15987; AVX512BW-NEXT:    vmovdqa64 %zmm13, %zmm315988; AVX512BW-NEXT:    vpermt2d %zmm8, %zmm1, %zmm315989; AVX512BW-NEXT:    vpermt2d %zmm6, %zmm0, %zmm315990; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15991; AVX512BW-NEXT:    vmovdqa64 %zmm12, %zmm315992; AVX512BW-NEXT:    vpermt2d %zmm5, %zmm1, %zmm315993; AVX512BW-NEXT:    vpermt2d %zmm7, %zmm0, %zmm315994; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15995; AVX512BW-NEXT:    vpermi2d %zmm17, %zmm11, %zmm115996; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm0, %zmm115997; AVX512BW-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15998; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,0,7,14,21,28,0,0,0,0,7,14,21,28,0,0]15999; AVX512BW-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]16000; AVX512BW-NEXT:    vmovdqa64 %zmm12, %zmm316001; AVX512BW-NEXT:    vpermt2d %zmm5, %zmm1, %zmm316002; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,19,26,0,9,10,11,12,13,19,26]16003; AVX512BW-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]16004; AVX512BW-NEXT:    vpermt2d %zmm7, %zmm0, %zmm316005; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16006; AVX512BW-NEXT:    vmovdqa64 %zmm13, %zmm316007; AVX512BW-NEXT:    vpermt2d %zmm8, %zmm1, %zmm316008; AVX512BW-NEXT:    vpermt2d %zmm6, %zmm0, %zmm316009; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16010; AVX512BW-NEXT:    vmovdqa64 %zmm14, %zmm316011; AVX512BW-NEXT:    vpermt2d %zmm4, %zmm1, %zmm316012; AVX512BW-NEXT:    vpermt2d %zmm20, %zmm0, %zmm316013; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16014; AVX512BW-NEXT:    vpermi2d %zmm17, %zmm11, %zmm116015; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm0, %zmm116016; AVX512BW-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16017; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,1,8,15,22,29,0,0,0,1,8,15,22,29,0,0]16018; AVX512BW-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]16019; AVX512BW-NEXT:    vmovdqa64 %zmm12, %zmm316020; AVX512BW-NEXT:    vpermt2d %zmm5, %zmm1, %zmm316021; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,20,27,0,9,10,11,12,13,20,27]16022; AVX512BW-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]16023; AVX512BW-NEXT:    vpermt2d %zmm7, %zmm0, %zmm316024; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16025; AVX512BW-NEXT:    vmovdqa64 %zmm13, %zmm316026; AVX512BW-NEXT:    vpermt2d %zmm8, %zmm1, %zmm316027; AVX512BW-NEXT:    vpermt2d %zmm6, %zmm0, %zmm316028; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16029; AVX512BW-NEXT:    vmovdqa64 %zmm14, %zmm316030; AVX512BW-NEXT:    vpermt2d %zmm4, %zmm1, %zmm316031; AVX512BW-NEXT:    vpermt2d %zmm20, %zmm0, %zmm316032; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16033; AVX512BW-NEXT:    vpermi2d %zmm17, %zmm11, %zmm116034; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm0, %zmm116035; AVX512BW-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16036; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,18,25,0,7,14,0,0,0,18,25,0,7,14,0,0]16037; AVX512BW-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]16038; AVX512BW-NEXT:    vmovdqa64 %zmm5, %zmm316039; AVX512BW-NEXT:    vpermt2d %zmm12, %zmm1, %zmm316040; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,21,28,0,9,10,11,12,13,21,28]16041; AVX512BW-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]16042; AVX512BW-NEXT:    vpermt2d %zmm7, %zmm0, %zmm316043; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16044; AVX512BW-NEXT:    vmovdqa64 %zmm8, %zmm316045; AVX512BW-NEXT:    vpermt2d %zmm13, %zmm1, %zmm316046; AVX512BW-NEXT:    vpermt2d %zmm6, %zmm0, %zmm316047; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16048; AVX512BW-NEXT:    vmovdqa64 %zmm4, %zmm316049; AVX512BW-NEXT:    vpermt2d %zmm14, %zmm1, %zmm316050; AVX512BW-NEXT:    vpermt2d %zmm20, %zmm0, %zmm316051; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16052; AVX512BW-NEXT:    vpermi2d %zmm11, %zmm17, %zmm116053; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm0, %zmm116054; AVX512BW-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16055; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,19,26,1,8,15,0,0,0,19,26,1,8,15,0,0]16056; AVX512BW-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]16057; AVX512BW-NEXT:    vmovdqa64 %zmm5, %zmm316058; AVX512BW-NEXT:    vpermt2d %zmm12, %zmm1, %zmm316059; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,22,29,0,9,10,11,12,13,22,29]16060; AVX512BW-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]16061; AVX512BW-NEXT:    vpermt2d %zmm7, %zmm0, %zmm316062; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16063; AVX512BW-NEXT:    vmovdqa64 %zmm8, %zmm316064; AVX512BW-NEXT:    vpermt2d %zmm13, %zmm1, %zmm316065; AVX512BW-NEXT:    vpermt2d %zmm6, %zmm0, %zmm316066; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16067; AVX512BW-NEXT:    vmovdqa64 %zmm4, %zmm316068; AVX512BW-NEXT:    vpermt2d %zmm14, %zmm1, %zmm316069; AVX512BW-NEXT:    vpermt2d %zmm20, %zmm0, %zmm316070; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16071; AVX512BW-NEXT:    vpermi2d %zmm11, %zmm17, %zmm116072; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm0, %zmm116073; AVX512BW-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16074; AVX512BW-NEXT:    vmovdqa64 1024(%rdi), %zmm316075; AVX512BW-NEXT:    vmovdqa64 1088(%rdi), %zmm1516076; AVX512BW-NEXT:    vbroadcasti32x4 {{.*#+}} zmm30 = [25,4,11,18,25,4,11,18,25,4,11,18,25,4,11,18]16077; AVX512BW-NEXT:    # zmm30 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]16078; AVX512BW-NEXT:    vmovdqa64 %zmm3, %zmm016079; AVX512BW-NEXT:    vpermt2d %zmm15, %zmm30, %zmm016080; AVX512BW-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16081; AVX512BW-NEXT:    vmovdqa64 576(%rdi), %zmm916082; AVX512BW-NEXT:    vmovdqa64 640(%rdi), %zmm1616083; AVX512BW-NEXT:    vmovdqa64 %zmm9, %zmm016084; AVX512BW-NEXT:    vpermt2d %zmm16, %zmm30, %zmm016085; AVX512BW-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16086; AVX512BW-NEXT:    vmovdqa64 128(%rdi), %zmm016087; AVX512BW-NEXT:    vmovdqa64 192(%rdi), %zmm1816088; AVX512BW-NEXT:    vmovdqa64 %zmm0, %zmm116089; AVX512BW-NEXT:    vpermt2d %zmm18, %zmm30, %zmm116090; AVX512BW-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16091; AVX512BW-NEXT:    vmovdqa64 1472(%rdi), %zmm116092; AVX512BW-NEXT:    vmovdqa64 1536(%rdi), %zmm1916093; AVX512BW-NEXT:    vmovdqa64 %zmm1, %zmm1016094; AVX512BW-NEXT:    vpermt2d %zmm19, %zmm30, %zmm1016095; AVX512BW-NEXT:    vmovdqu64 %zmm10, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16096; AVX512BW-NEXT:    vmovdqa64 %zmm12, %zmm2116097; AVX512BW-NEXT:    vpermt2d %zmm5, %zmm30, %zmm2116098; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm10 = [0,9,10,11,12,16,23,30,0,9,10,11,12,16,23,30]16099; AVX512BW-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3]16100; AVX512BW-NEXT:    vpermt2d %zmm7, %zmm10, %zmm2116101; AVX512BW-NEXT:    vmovdqu64 %zmm21, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16102; AVX512BW-NEXT:    vmovdqa64 %zmm13, %zmm2116103; AVX512BW-NEXT:    vpermt2d %zmm8, %zmm30, %zmm2116104; AVX512BW-NEXT:    vpermt2d %zmm6, %zmm10, %zmm2116105; AVX512BW-NEXT:    vmovdqu64 %zmm21, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16106; AVX512BW-NEXT:    vmovdqa64 %zmm14, %zmm2116107; AVX512BW-NEXT:    vpermt2d %zmm4, %zmm30, %zmm2116108; AVX512BW-NEXT:    vpermt2d %zmm20, %zmm10, %zmm2116109; AVX512BW-NEXT:    vmovdqu64 %zmm21, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16110; AVX512BW-NEXT:    vpermi2d %zmm17, %zmm11, %zmm3016111; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm10, %zmm3016112; AVX512BW-NEXT:    vbroadcasti32x4 {{.*#+}} zmm10 = [26,5,12,19,26,5,12,19,26,5,12,19,26,5,12,19]16113; AVX512BW-NEXT:    # zmm10 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]16114; AVX512BW-NEXT:    vpermt2d %zmm8, %zmm10, %zmm1316115; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm8 = [0,9,10,11,12,17,24,31,0,9,10,11,12,17,24,31]16116; AVX512BW-NEXT:    # zmm8 = mem[0,1,2,3,0,1,2,3]16117; AVX512BW-NEXT:    vpermt2d %zmm6, %zmm8, %zmm1316118; AVX512BW-NEXT:    vmovdqu64 %zmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16119; AVX512BW-NEXT:    vpermt2d %zmm4, %zmm10, %zmm1416120; AVX512BW-NEXT:    vpermt2d %zmm20, %zmm8, %zmm1416121; AVX512BW-NEXT:    vmovdqu64 %zmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16122; AVX512BW-NEXT:    vpermt2d %zmm17, %zmm10, %zmm1116123; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm8, %zmm1116124; AVX512BW-NEXT:    vmovdqu64 %zmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16125; AVX512BW-NEXT:    vpermt2d %zmm5, %zmm10, %zmm1216126; AVX512BW-NEXT:    vpermt2d %zmm7, %zmm8, %zmm1216127; AVX512BW-NEXT:    vmovdqu64 %zmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16128; AVX512BW-NEXT:    vmovdqa64 %zmm3, %zmm216129; AVX512BW-NEXT:    vpermt2d %zmm15, %zmm10, %zmm216130; AVX512BW-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16131; AVX512BW-NEXT:    vmovdqa64 %zmm9, %zmm216132; AVX512BW-NEXT:    vpermt2d %zmm16, %zmm10, %zmm216133; AVX512BW-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16134; AVX512BW-NEXT:    vmovdqa64 %zmm0, %zmm216135; AVX512BW-NEXT:    vpermt2d %zmm18, %zmm10, %zmm216136; AVX512BW-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16137; AVX512BW-NEXT:    vmovdqa64 %zmm1, %zmm216138; AVX512BW-NEXT:    vpermt2d %zmm19, %zmm10, %zmm216139; AVX512BW-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16140; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm25 = [8,15,0,0,0,19,26,1,8,15,0,0,0,19,26,1]16141; AVX512BW-NEXT:    # zmm25 = mem[0,1,2,3,0,1,2,3]16142; AVX512BW-NEXT:    vmovdqa64 %zmm16, %zmm216143; AVX512BW-NEXT:    vpermt2d %zmm9, %zmm25, %zmm216144; AVX512BW-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16145; AVX512BW-NEXT:    vbroadcasti32x4 {{.*#+}} zmm27 = [27,6,13,20,27,6,13,20,27,6,13,20,27,6,13,20]16146; AVX512BW-NEXT:    # zmm27 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]16147; AVX512BW-NEXT:    vmovdqa64 %zmm9, %zmm216148; AVX512BW-NEXT:    vpermt2d %zmm16, %zmm27, %zmm216149; AVX512BW-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16150; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm28 = [28,0,0,0,0,7,14,21,28,0,0,0,0,7,14,21]16151; AVX512BW-NEXT:    # zmm28 = mem[0,1,2,3,0,1,2,3]16152; AVX512BW-NEXT:    vmovdqa64 %zmm9, %zmm216153; AVX512BW-NEXT:    vpermt2d %zmm16, %zmm28, %zmm216154; AVX512BW-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16155; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm31 = [29,0,0,0,1,8,15,22,29,0,0,0,1,8,15,22]16156; AVX512BW-NEXT:    # zmm31 = mem[0,1,2,3,0,1,2,3]16157; AVX512BW-NEXT:    vmovdqa64 %zmm9, %zmm216158; AVX512BW-NEXT:    vpermt2d %zmm16, %zmm31, %zmm216159; AVX512BW-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16160; AVX512BW-NEXT:    vbroadcasti64x4 {{.*#+}} zmm2 = [14,0,0,0,18,25,0,7,14,0,0,0,18,25,0,7]16161; AVX512BW-NEXT:    # zmm2 = mem[0,1,2,3,0,1,2,3]16162; AVX512BW-NEXT:    vpermt2d %zmm9, %zmm2, %zmm1616163; AVX512BW-NEXT:    vmovdqu64 %zmm16, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16164; AVX512BW-NEXT:    vmovdqa64 %zmm18, %zmm416165; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm25, %zmm416166; AVX512BW-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16167; AVX512BW-NEXT:    vmovdqa64 %zmm0, %zmm416168; AVX512BW-NEXT:    vpermt2d %zmm18, %zmm27, %zmm416169; AVX512BW-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16170; AVX512BW-NEXT:    vmovdqa64 %zmm0, %zmm416171; AVX512BW-NEXT:    vpermt2d %zmm18, %zmm28, %zmm416172; AVX512BW-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16173; AVX512BW-NEXT:    vmovdqa64 %zmm0, %zmm416174; AVX512BW-NEXT:    vpermt2d %zmm18, %zmm31, %zmm416175; AVX512BW-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16176; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm2, %zmm1816177; AVX512BW-NEXT:    vmovdqu64 %zmm18, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16178; AVX512BW-NEXT:    vmovdqa64 %zmm15, %zmm016179; AVX512BW-NEXT:    vpermt2d %zmm3, %zmm25, %zmm016180; AVX512BW-NEXT:    vmovdqu64 %zmm0, (%rsp) # 64-byte Spill16181; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm19, %zmm2516182; AVX512BW-NEXT:    vmovdqa64 %zmm3, %zmm016183; AVX512BW-NEXT:    vpermt2d %zmm15, %zmm27, %zmm016184; AVX512BW-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16185; AVX512BW-NEXT:    vpermi2d %zmm19, %zmm1, %zmm2716186; AVX512BW-NEXT:    vmovdqa64 %zmm3, %zmm016187; AVX512BW-NEXT:    vpermt2d %zmm15, %zmm28, %zmm016188; AVX512BW-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16189; AVX512BW-NEXT:    vpermi2d %zmm19, %zmm1, %zmm2816190; AVX512BW-NEXT:    vmovdqa64 %zmm3, %zmm016191; AVX512BW-NEXT:    vpermt2d %zmm15, %zmm31, %zmm016192; AVX512BW-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16193; AVX512BW-NEXT:    vpermi2d %zmm19, %zmm1, %zmm3116194; AVX512BW-NEXT:    vpermt2d %zmm1, %zmm2, %zmm1916195; AVX512BW-NEXT:    vmovdqu64 %zmm19, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16196; AVX512BW-NEXT:    vpermt2d %zmm3, %zmm2, %zmm1516197; AVX512BW-NEXT:    vmovdqu64 %zmm15, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16198; AVX512BW-NEXT:    vmovdqa64 512(%rdi), %zmm016199; AVX512BW-NEXT:    vmovdqa64 448(%rdi), %zmm1716200; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm2 = [0,7,14,21,28,0,0,0]16201; AVX512BW-NEXT:    vmovdqa64 %zmm17, %zmm2216202; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm2, %zmm2216203; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm3 = [1,8,15,22,29,0,0,0]16204; AVX512BW-NEXT:    vmovdqa64 %zmm17, %zmm2316205; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm3, %zmm2316206; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm4 = [18,25,0,7,14,0,0,0]16207; AVX512BW-NEXT:    vmovdqa64 %zmm0, %zmm2416208; AVX512BW-NEXT:    vpermt2d %zmm17, %zmm4, %zmm2416209; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm7 = [19,26,1,8,15,0,0,0]16210; AVX512BW-NEXT:    vmovdqa64 %zmm0, %zmm2916211; AVX512BW-NEXT:    vpermt2d %zmm17, %zmm7, %zmm2916212; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} xmm18 = [4,11,18,25]16213; AVX512BW-NEXT:    vmovdqa64 %zmm17, %zmm116214; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm18, %zmm116215; AVX512BW-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16216; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} xmm19 = [5,12,19,26]16217; AVX512BW-NEXT:    vmovdqa64 %zmm17, %zmm116218; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm19, %zmm116219; AVX512BW-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16220; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} xmm20 = [6,13,20,27]16221; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm20, %zmm1716222; AVX512BW-NEXT:    vmovdqa64 (%rdi), %zmm516223; AVX512BW-NEXT:    vmovdqa64 64(%rdi), %zmm016224; AVX512BW-NEXT:    vmovdqa64 %zmm5, %zmm1316225; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm2, %zmm1316226; AVX512BW-NEXT:    vmovdqa64 %zmm5, %zmm1416227; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm3, %zmm1416228; AVX512BW-NEXT:    vmovdqa64 %zmm0, %zmm1516229; AVX512BW-NEXT:    vpermt2d %zmm5, %zmm4, %zmm1516230; AVX512BW-NEXT:    vmovdqa64 %zmm0, %zmm1616231; AVX512BW-NEXT:    vpermt2d %zmm5, %zmm7, %zmm1616232; AVX512BW-NEXT:    vmovdqa64 %zmm5, %zmm116233; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm18, %zmm116234; AVX512BW-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16235; AVX512BW-NEXT:    vmovdqa64 %zmm5, %zmm116236; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm19, %zmm116237; AVX512BW-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16238; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm20, %zmm516239; AVX512BW-NEXT:    vmovdqa64 960(%rdi), %zmm916240; AVX512BW-NEXT:    vmovdqa64 896(%rdi), %zmm616241; AVX512BW-NEXT:    vmovdqa64 %zmm6, %zmm816242; AVX512BW-NEXT:    vpermt2d %zmm9, %zmm2, %zmm816243; AVX512BW-NEXT:    vmovdqa64 1408(%rdi), %zmm016244; AVX512BW-NEXT:    vmovdqa64 1344(%rdi), %zmm116245; AVX512BW-NEXT:    vpermi2d %zmm0, %zmm1, %zmm216246; AVX512BW-NEXT:    vmovdqa64 %zmm6, %zmm1016247; AVX512BW-NEXT:    vpermt2d %zmm9, %zmm3, %zmm1016248; AVX512BW-NEXT:    vpermi2d %zmm0, %zmm1, %zmm316249; AVX512BW-NEXT:    vmovdqa64 %zmm9, %zmm1116250; AVX512BW-NEXT:    vpermt2d %zmm6, %zmm4, %zmm1116251; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm416252; AVX512BW-NEXT:    vmovdqa64 %zmm9, %zmm1216253; AVX512BW-NEXT:    vpermt2d %zmm6, %zmm7, %zmm1216254; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm716255; AVX512BW-NEXT:    vmovdqa64 %zmm6, %zmm2116256; AVX512BW-NEXT:    vpermt2d %zmm9, %zmm18, %zmm2116257; AVX512BW-NEXT:    vpermi2d %zmm0, %zmm1, %zmm1816258; AVX512BW-NEXT:    vmovdqa64 %zmm6, %zmm2616259; AVX512BW-NEXT:    vpermt2d %zmm9, %zmm19, %zmm2616260; AVX512BW-NEXT:    vpermi2d %zmm0, %zmm1, %zmm1916261; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm20, %zmm116262; AVX512BW-NEXT:    vpermt2d %zmm9, %zmm20, %zmm616263; AVX512BW-NEXT:    movw $992, %ax # imm = 0x3E016264; AVX512BW-NEXT:    kmovd %eax, %k116265; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16266; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm13 {%k1}16267; AVX512BW-NEXT:    movb $-32, %al16268; AVX512BW-NEXT:    kmovd %eax, %k216269; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16270; AVX512BW-NEXT:    vmovdqa64 %zmm0, %zmm13 {%k2}16271; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16272; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm22 {%k1}16273; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16274; AVX512BW-NEXT:    vmovdqa64 %zmm0, %zmm22 {%k2}16275; AVX512BW-NEXT:    vmovdqu64 (%rsp), %zmm0 # 64-byte Reload16276; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm8 {%k1}16277; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16278; AVX512BW-NEXT:    vmovdqa64 %zmm0, %zmm8 {%k2}16279; AVX512BW-NEXT:    vmovdqa32 %zmm25, %zmm2 {%k1}16280; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16281; AVX512BW-NEXT:    vmovdqa64 %zmm0, %zmm2 {%k2}16282; AVX512BW-NEXT:    movw $480, %ax # imm = 0x1E016283; AVX512BW-NEXT:    kmovd %eax, %k216284; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16285; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm10 {%k2}16286; AVX512BW-NEXT:    movw $-512, %ax # imm = 0xFE0016287; AVX512BW-NEXT:    kmovd %eax, %k116288; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16289; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm10 {%k1}16290; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16291; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm23 {%k2}16292; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16293; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm23 {%k1}16294; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16295; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm14 {%k2}16296; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16297; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm14 {%k1}16298; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16299; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k2}16300; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16301; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k1}16302; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16303; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm11 {%k2}16304; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16305; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm11 {%k1}16306; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16307; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm24 {%k2}16308; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16309; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm24 {%k1}16310; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16311; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm15 {%k2}16312; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16313; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm15 {%k1}16314; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16315; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm4 {%k2}16316; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16317; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm4 {%k1}16318; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16319; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm12 {%k2}16320; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16321; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm12 {%k1}16322; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16323; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm29 {%k2}16324; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16325; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm29 {%k1}16326; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16327; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm16 {%k2}16328; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16329; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm16 {%k1}16330; AVX512BW-NEXT:    vmovdqa32 %zmm27, %zmm7 {%k2}16331; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16332; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm7 {%k1}16333; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16334; AVX512BW-NEXT:    vinserti32x4 $0, %xmm21, %zmm0, %zmm016335; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm9 # 64-byte Reload16336; AVX512BW-NEXT:    vmovdqa32 %zmm9, %zmm0 {%k1}16337; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm9 # 64-byte Reload16338; AVX512BW-NEXT:    vinserti32x4 $0, {{[-0-9]+}}(%r{{[sb]}}p), %zmm9, %zmm9 # 16-byte Folded Reload16339; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm20 # 64-byte Reload16340; AVX512BW-NEXT:    vmovdqa32 %zmm20, %zmm9 {%k1}16341; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm20 # 64-byte Reload16342; AVX512BW-NEXT:    vinserti32x4 $0, {{[-0-9]+}}(%r{{[sb]}}p), %zmm20, %zmm20 # 16-byte Folded Reload16343; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm25 # 64-byte Reload16344; AVX512BW-NEXT:    vmovdqa32 %zmm25, %zmm20 {%k1}16345; AVX512BW-NEXT:    vinserti32x4 $0, %xmm18, %zmm28, %zmm1816346; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm25 # 64-byte Reload16347; AVX512BW-NEXT:    vmovdqa32 %zmm25, %zmm18 {%k1}16348; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm25 # 64-byte Reload16349; AVX512BW-NEXT:    vinserti32x4 $0, %xmm26, %zmm25, %zmm2516350; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm26 # 64-byte Reload16351; AVX512BW-NEXT:    vmovdqa32 %zmm26, %zmm25 {%k1}16352; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm26 # 64-byte Reload16353; AVX512BW-NEXT:    vinserti32x4 $0, {{[-0-9]+}}(%r{{[sb]}}p), %zmm26, %zmm26 # 16-byte Folded Reload16354; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm27 # 64-byte Reload16355; AVX512BW-NEXT:    vmovdqa32 %zmm27, %zmm26 {%k1}16356; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm27 # 64-byte Reload16357; AVX512BW-NEXT:    vinserti32x4 $0, {{[-0-9]+}}(%r{{[sb]}}p), %zmm27, %zmm27 # 16-byte Folded Reload16358; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload16359; AVX512BW-NEXT:    vmovdqa32 %zmm28, %zmm27 {%k1}16360; AVX512BW-NEXT:    vinserti32x4 $0, %xmm19, %zmm31, %zmm1916361; AVX512BW-NEXT:    vmovdqa32 %zmm30, %zmm19 {%k1}16362; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload16363; AVX512BW-NEXT:    vinserti32x4 $0, %xmm17, %zmm28, %zmm1716364; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload16365; AVX512BW-NEXT:    vmovdqa32 %zmm28, %zmm17 {%k1}16366; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload16367; AVX512BW-NEXT:    vinserti32x4 $0, %xmm5, %zmm28, %zmm516368; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload16369; AVX512BW-NEXT:    vmovdqa32 %zmm28, %zmm5 {%k1}16370; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload16371; AVX512BW-NEXT:    vinserti32x4 $0, %xmm1, %zmm28, %zmm116372; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload16373; AVX512BW-NEXT:    vmovdqa32 %zmm28, %zmm1 {%k1}16374; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload16375; AVX512BW-NEXT:    vinserti32x4 $0, %xmm6, %zmm28, %zmm616376; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload16377; AVX512BW-NEXT:    vmovdqa32 %zmm28, %zmm6 {%k1}16378; AVX512BW-NEXT:    vmovdqa64 %zmm2, 192(%rsi)16379; AVX512BW-NEXT:    vmovdqa64 %zmm8, 128(%rsi)16380; AVX512BW-NEXT:    vmovdqa64 %zmm22, 64(%rsi)16381; AVX512BW-NEXT:    vmovdqa64 %zmm13, (%rsi)16382; AVX512BW-NEXT:    vmovdqa64 %zmm3, 192(%rdx)16383; AVX512BW-NEXT:    vmovdqa64 %zmm14, (%rdx)16384; AVX512BW-NEXT:    vmovdqa64 %zmm23, 64(%rdx)16385; AVX512BW-NEXT:    vmovdqa64 %zmm10, 128(%rdx)16386; AVX512BW-NEXT:    vmovdqa64 %zmm4, 192(%rcx)16387; AVX512BW-NEXT:    vmovdqa64 %zmm15, (%rcx)16388; AVX512BW-NEXT:    vmovdqa64 %zmm24, 64(%rcx)16389; AVX512BW-NEXT:    vmovdqa64 %zmm11, 128(%rcx)16390; AVX512BW-NEXT:    vmovdqa64 %zmm7, 192(%r8)16391; AVX512BW-NEXT:    vmovdqa64 %zmm16, (%r8)16392; AVX512BW-NEXT:    vmovdqa64 %zmm29, 64(%r8)16393; AVX512BW-NEXT:    vmovdqa64 %zmm12, 128(%r8)16394; AVX512BW-NEXT:    vmovdqa64 %zmm18, 192(%r9)16395; AVX512BW-NEXT:    vmovdqa64 %zmm20, (%r9)16396; AVX512BW-NEXT:    vmovdqa64 %zmm9, 64(%r9)16397; AVX512BW-NEXT:    vmovdqa64 %zmm0, 128(%r9)16398; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax16399; AVX512BW-NEXT:    vmovdqa64 %zmm19, 192(%rax)16400; AVX512BW-NEXT:    vmovdqa64 %zmm27, (%rax)16401; AVX512BW-NEXT:    vmovdqa64 %zmm26, 64(%rax)16402; AVX512BW-NEXT:    vmovdqa64 %zmm25, 128(%rax)16403; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax16404; AVX512BW-NEXT:    vmovdqa64 %zmm6, 128(%rax)16405; AVX512BW-NEXT:    vmovdqa64 %zmm1, 192(%rax)16406; AVX512BW-NEXT:    vmovdqa64 %zmm5, (%rax)16407; AVX512BW-NEXT:    vmovdqa64 %zmm17, 64(%rax)16408; AVX512BW-NEXT:    addq $3400, %rsp # imm = 0xD4816409; AVX512BW-NEXT:    vzeroupper16410; AVX512BW-NEXT:    retq16411;16412; AVX512BW-FCP-LABEL: load_i32_stride7_vf64:16413; AVX512BW-FCP:       # %bb.0:16414; AVX512BW-FCP-NEXT:    subq $3400, %rsp # imm = 0xD4816415; AVX512BW-FCP-NEXT:    vmovdqa64 1728(%rdi), %zmm216416; AVX512BW-FCP-NEXT:    vmovdqa64 1664(%rdi), %zmm1716417; AVX512BW-FCP-NEXT:    vmovdqa64 1600(%rdi), %zmm1116418; AVX512BW-FCP-NEXT:    vmovdqa64 1280(%rdi), %zmm716419; AVX512BW-FCP-NEXT:    vmovdqa64 1216(%rdi), %zmm516420; AVX512BW-FCP-NEXT:    vmovdqa64 1152(%rdi), %zmm1216421; AVX512BW-FCP-NEXT:    vmovdqa64 832(%rdi), %zmm616422; AVX512BW-FCP-NEXT:    vmovdqa64 768(%rdi), %zmm816423; AVX512BW-FCP-NEXT:    vmovdqa64 704(%rdi), %zmm1316424; AVX512BW-FCP-NEXT:    vmovdqa64 384(%rdi), %zmm2016425; AVX512BW-FCP-NEXT:    vmovdqa64 320(%rdi), %zmm416426; AVX512BW-FCP-NEXT:    vmovdqa64 256(%rdi), %zmm1416427; AVX512BW-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm1 = [20,27,6,13,20,27,6,13,20,27,6,13,20,27,6,13]16428; AVX512BW-FCP-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]16429; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm14, %zmm316430; AVX512BW-FCP-NEXT:    vpermt2d %zmm4, %zmm1, %zmm316431; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,0,10,11,12,13,18,25,0,0,10,11,12,13,18,25]16432; AVX512BW-FCP-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]16433; AVX512BW-FCP-NEXT:    vpermt2d %zmm20, %zmm0, %zmm316434; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16435; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm13, %zmm316436; AVX512BW-FCP-NEXT:    vpermt2d %zmm8, %zmm1, %zmm316437; AVX512BW-FCP-NEXT:    vpermt2d %zmm6, %zmm0, %zmm316438; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16439; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm12, %zmm316440; AVX512BW-FCP-NEXT:    vpermt2d %zmm5, %zmm1, %zmm316441; AVX512BW-FCP-NEXT:    vpermt2d %zmm7, %zmm0, %zmm316442; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16443; AVX512BW-FCP-NEXT:    vpermi2d %zmm17, %zmm11, %zmm116444; AVX512BW-FCP-NEXT:    vpermt2d %zmm2, %zmm0, %zmm116445; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16446; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,0,7,14,21,28,0,0,0,0,7,14,21,28,0,0]16447; AVX512BW-FCP-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]16448; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm12, %zmm316449; AVX512BW-FCP-NEXT:    vpermt2d %zmm5, %zmm1, %zmm316450; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,19,26,0,9,10,11,12,13,19,26]16451; AVX512BW-FCP-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]16452; AVX512BW-FCP-NEXT:    vpermt2d %zmm7, %zmm0, %zmm316453; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16454; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm13, %zmm316455; AVX512BW-FCP-NEXT:    vpermt2d %zmm8, %zmm1, %zmm316456; AVX512BW-FCP-NEXT:    vpermt2d %zmm6, %zmm0, %zmm316457; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16458; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm14, %zmm316459; AVX512BW-FCP-NEXT:    vpermt2d %zmm4, %zmm1, %zmm316460; AVX512BW-FCP-NEXT:    vpermt2d %zmm20, %zmm0, %zmm316461; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16462; AVX512BW-FCP-NEXT:    vpermi2d %zmm17, %zmm11, %zmm116463; AVX512BW-FCP-NEXT:    vpermt2d %zmm2, %zmm0, %zmm116464; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16465; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,1,8,15,22,29,0,0,0,1,8,15,22,29,0,0]16466; AVX512BW-FCP-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]16467; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm12, %zmm316468; AVX512BW-FCP-NEXT:    vpermt2d %zmm5, %zmm1, %zmm316469; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,20,27,0,9,10,11,12,13,20,27]16470; AVX512BW-FCP-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]16471; AVX512BW-FCP-NEXT:    vpermt2d %zmm7, %zmm0, %zmm316472; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16473; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm13, %zmm316474; AVX512BW-FCP-NEXT:    vpermt2d %zmm8, %zmm1, %zmm316475; AVX512BW-FCP-NEXT:    vpermt2d %zmm6, %zmm0, %zmm316476; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16477; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm14, %zmm316478; AVX512BW-FCP-NEXT:    vpermt2d %zmm4, %zmm1, %zmm316479; AVX512BW-FCP-NEXT:    vpermt2d %zmm20, %zmm0, %zmm316480; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16481; AVX512BW-FCP-NEXT:    vpermi2d %zmm17, %zmm11, %zmm116482; AVX512BW-FCP-NEXT:    vpermt2d %zmm2, %zmm0, %zmm116483; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16484; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,18,25,0,7,14,0,0,0,18,25,0,7,14,0,0]16485; AVX512BW-FCP-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]16486; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm5, %zmm316487; AVX512BW-FCP-NEXT:    vpermt2d %zmm12, %zmm1, %zmm316488; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,21,28,0,9,10,11,12,13,21,28]16489; AVX512BW-FCP-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]16490; AVX512BW-FCP-NEXT:    vpermt2d %zmm7, %zmm0, %zmm316491; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16492; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm8, %zmm316493; AVX512BW-FCP-NEXT:    vpermt2d %zmm13, %zmm1, %zmm316494; AVX512BW-FCP-NEXT:    vpermt2d %zmm6, %zmm0, %zmm316495; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16496; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm4, %zmm316497; AVX512BW-FCP-NEXT:    vpermt2d %zmm14, %zmm1, %zmm316498; AVX512BW-FCP-NEXT:    vpermt2d %zmm20, %zmm0, %zmm316499; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16500; AVX512BW-FCP-NEXT:    vpermi2d %zmm11, %zmm17, %zmm116501; AVX512BW-FCP-NEXT:    vpermt2d %zmm2, %zmm0, %zmm116502; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16503; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm1 = [0,19,26,1,8,15,0,0,0,19,26,1,8,15,0,0]16504; AVX512BW-FCP-NEXT:    # zmm1 = mem[0,1,2,3,0,1,2,3]16505; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm5, %zmm316506; AVX512BW-FCP-NEXT:    vpermt2d %zmm12, %zmm1, %zmm316507; AVX512BW-FCP-NEXT:    vbroadcasti64x4 {{.*#+}} zmm0 = [0,9,10,11,12,13,22,29,0,9,10,11,12,13,22,29]16508; AVX512BW-FCP-NEXT:    # zmm0 = mem[0,1,2,3,0,1,2,3]16509; AVX512BW-FCP-NEXT:    vpermt2d %zmm7, %zmm0, %zmm316510; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16511; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm8, %zmm316512; AVX512BW-FCP-NEXT:    vpermt2d %zmm13, %zmm1, %zmm316513; AVX512BW-FCP-NEXT:    vpermt2d %zmm6, %zmm0, %zmm316514; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16515; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm4, %zmm316516; AVX512BW-FCP-NEXT:    vpermt2d %zmm14, %zmm1, %zmm316517; AVX512BW-FCP-NEXT:    vpermt2d %zmm20, %zmm0, %zmm316518; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16519; AVX512BW-FCP-NEXT:    vpermi2d %zmm11, %zmm17, %zmm116520; AVX512BW-FCP-NEXT:    vpermt2d %zmm2, %zmm0, %zmm116521; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16522; AVX512BW-FCP-NEXT:    vmovdqa64 1024(%rdi), %zmm316523; AVX512BW-FCP-NEXT:    vmovdqa64 1088(%rdi), %zmm1516524; AVX512BW-FCP-NEXT:    vbroadcasti32x4 {{.*#+}} zmm30 = [25,4,11,18,25,4,11,18,25,4,11,18,25,4,11,18]16525; AVX512BW-FCP-NEXT:    # zmm30 = mem[0,1,2,3,0,1,2,3,0,1,2,3,0,1,2,3]16526; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm3, %zmm016527; AVX512BW-FCP-NEXT:    vpermt2d %zmm15, %zmm30, %zmm016528; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16529; AVX512BW-FCP-NEXT:    vmovdqa64 576(%rdi), %zmm916530; AVX512BW-FCP-NEXT:    vmovdqa64 640(%rdi), %zmm1616531; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm9, %zmm016532; AVX512BW-FCP-NEXT:    vpermt2d %zmm16, %zmm30, %zmm016533; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16534; AVX512BW-FCP-NEXT:    vmovdqa64 128(%rdi), %zmm016535; AVX512BW-FCP-NEXT:    vmovdqa64 192(%rdi), %zmm1816536; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm0, %zmm116537; AVX512BW-FCP-NEXT:    vpermt2d %zmm18, %zmm30, %zmm116538; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16539; AVX512BW-FCP-NEXT:    vmovdqa64 1472(%rd

File truncated to the first 1 MiB.