brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.1 MiB · bfd1e3e Raw
16112 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 stores.17 18define void @store_i32_stride7_vf2(ptr %in.vecptr0, ptr %in.vecptr1, ptr %in.vecptr2, ptr %in.vecptr3, ptr %in.vecptr4, ptr %in.vecptr5, ptr %in.vecptr6, ptr %out.vec) nounwind {19; SSE-LABEL: store_i32_stride7_vf2:20; SSE:       # %bb.0:21; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %rax22; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %r1023; SSE-NEXT:    movsd {{.*#+}} xmm0 = mem[0],zero24; SSE-NEXT:    movsd {{.*#+}} xmm1 = mem[0],zero25; SSE-NEXT:    movsd {{.*#+}} xmm2 = mem[0],zero26; SSE-NEXT:    movsd {{.*#+}} xmm3 = mem[0],zero27; SSE-NEXT:    movq {{.*#+}} xmm4 = mem[0],zero28; SSE-NEXT:    movsd {{.*#+}} xmm5 = mem[0],zero29; SSE-NEXT:    movsd {{.*#+}} xmm6 = mem[0],zero30; SSE-NEXT:    movaps %xmm6, %xmm731; SSE-NEXT:    movlhps {{.*#+}} xmm7 = xmm7[0],xmm5[0]32; SSE-NEXT:    pshufd {{.*#+}} xmm5 = xmm4[1,1,1,1]33; SSE-NEXT:    shufps {{.*#+}} xmm4 = xmm4[0,1],xmm0[1,3]34; SSE-NEXT:    unpcklps {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]35; SSE-NEXT:    unpcklps {{.*#+}} xmm1 = xmm1[0],xmm2[0],xmm1[1],xmm2[1]36; SSE-NEXT:    unpcklps {{.*#+}} xmm2 = xmm2[0],xmm3[0],xmm2[1],xmm3[1]37; SSE-NEXT:    movlhps {{.*#+}} xmm0 = xmm0[0],xmm2[0]38; SSE-NEXT:    shufps {{.*#+}} xmm6 = xmm6[1,1],xmm3[1,1]39; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[2,3],xmm6[2,0]40; SSE-NEXT:    pshufd {{.*#+}} xmm2 = xmm7[3,3,3,3]41; SSE-NEXT:    shufps {{.*#+}} xmm7 = xmm7[0,2],xmm4[0,2]42; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm5[0],xmm2[1],xmm5[1]43; SSE-NEXT:    movaps %xmm1, 32(%rax)44; SSE-NEXT:    movaps %xmm7, 16(%rax)45; SSE-NEXT:    movaps %xmm0, (%rax)46; SSE-NEXT:    movq %xmm2, 48(%rax)47; SSE-NEXT:    retq48;49; AVX-LABEL: store_i32_stride7_vf2:50; AVX:       # %bb.0:51; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %rax52; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %r1053; AVX-NEXT:    vmovsd {{.*#+}} xmm0 = mem[0],zero54; AVX-NEXT:    vmovsd {{.*#+}} xmm1 = mem[0],zero55; AVX-NEXT:    vmovq {{.*#+}} xmm2 = mem[0],zero56; AVX-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero57; AVX-NEXT:    vpunpcklqdq {{.*#+}} xmm2 = xmm3[0],xmm2[0]58; AVX-NEXT:    vmovq {{.*#+}} xmm4 = mem[0],zero59; AVX-NEXT:    vmovq {{.*#+}} xmm5 = mem[0],zero60; AVX-NEXT:    vpunpcklqdq {{.*#+}} xmm4 = xmm5[0],xmm4[0]61; AVX-NEXT:    vmovsd {{.*#+}} xmm6 = mem[0],zero62; AVX-NEXT:    vinsertf128 $1, %xmm6, %ymm0, %ymm063; AVX-NEXT:    vunpcklpd {{.*#+}} ymm0 = ymm0[0],ymm1[0],ymm0[2],ymm1[2]64; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm0[2,3,0,1]65; AVX-NEXT:    vshufps {{.*#+}} ymm6 = ymm1[3,0],ymm0[1,0],ymm1[7,4],ymm0[5,4]66; AVX-NEXT:    vshufps {{.*#+}} ymm6 = ymm6[0,2],ymm0[2,1],ymm6[4,6],ymm0[6,5]67; AVX-NEXT:    vpalignr {{.*#+}} xmm5 = xmm2[12,13,14,15],xmm5[0,1,2,3,4,5,6,7,8,9,10,11]68; AVX-NEXT:    vshufps {{.*#+}} xmm5 = xmm5[0,2],xmm4[3,3]69; AVX-NEXT:    vblendps {{.*#+}} xmm5 = xmm5[0,1,2],xmm6[3]70; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm1[0,2],ymm0[0,3],ymm1[4,6],ymm0[4,7]71; AVX-NEXT:    vinsertf128 $1, %xmm3, %ymm4, %ymm172; AVX-NEXT:    vpermilps {{.*#+}} ymm1 = ymm1[u,u,0,2,u,u,u,5]73; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[0,2],ymm1[2,3],ymm2[4,6],ymm1[6,7]74; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3],ymm0[4,5,6],ymm1[7]75; AVX-NEXT:    vmovaps %ymm0, (%rax)76; AVX-NEXT:    vextractf128 $1, %ymm6, %xmm077; AVX-NEXT:    vmovlps %xmm0, 48(%rax)78; AVX-NEXT:    vmovaps %xmm5, 32(%rax)79; AVX-NEXT:    vzeroupper80; AVX-NEXT:    retq81;82; AVX2-LABEL: store_i32_stride7_vf2:83; AVX2:       # %bb.0:84; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %rax85; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %r1086; AVX2-NEXT:    vmovsd {{.*#+}} xmm0 = mem[0],zero87; AVX2-NEXT:    vmovsd {{.*#+}} xmm1 = mem[0],zero88; AVX2-NEXT:    vmovsd {{.*#+}} xmm2 = mem[0],zero89; AVX2-NEXT:    vmovsd {{.*#+}} xmm3 = mem[0],zero90; AVX2-NEXT:    vmovlhps {{.*#+}} xmm2 = xmm3[0],xmm2[0]91; AVX2-NEXT:    vmovsd {{.*#+}} xmm3 = mem[0],zero92; AVX2-NEXT:    vmovsd {{.*#+}} xmm4 = mem[0],zero93; AVX2-NEXT:    vmovlhps {{.*#+}} xmm3 = xmm4[0],xmm3[0]94; AVX2-NEXT:    vinsertf128 $1, %xmm3, %ymm2, %ymm295; AVX2-NEXT:    vmovsd {{.*#+}} xmm3 = mem[0],zero96; AVX2-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm097; AVX2-NEXT:    vunpcklpd {{.*#+}} ymm0 = ymm0[0],ymm3[0],ymm0[2],ymm3[2]98; AVX2-NEXT:    vbroadcastf128 {{.*#+}} ymm1 = [0,4,2,6,0,4,2,6]99; AVX2-NEXT:    # ymm1 = mem[0,1,0,1]100; AVX2-NEXT:    vpermps %ymm0, %ymm1, %ymm1101; AVX2-NEXT:    vshufps {{.*#+}} ymm3 = ymm2[0,2,2,1,4,6,6,5]102; AVX2-NEXT:    vpermpd {{.*#+}} ymm3 = ymm3[0,2,2,1]103; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm3[0,1,2,3],ymm1[4,5,6],ymm3[7]104; AVX2-NEXT:    vbroadcastf128 {{.*#+}} ymm3 = [5,3,0,1,5,3,0,1]105; AVX2-NEXT:    # ymm3 = mem[0,1,0,1]106; AVX2-NEXT:    vpermps %ymm0, %ymm3, %ymm0107; AVX2-NEXT:    vmovaps {{.*#+}} xmm3 = [3,5,7,u]108; AVX2-NEXT:    vpermps %ymm2, %ymm3, %ymm2109; AVX2-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0,1,2],xmm0[3]110; AVX2-NEXT:    vextractf128 $1, %ymm0, %xmm0111; AVX2-NEXT:    vmovlps %xmm0, 48(%rax)112; AVX2-NEXT:    vmovaps %xmm2, 32(%rax)113; AVX2-NEXT:    vmovaps %ymm1, (%rax)114; AVX2-NEXT:    vzeroupper115; AVX2-NEXT:    retq116;117; AVX2-FP-LABEL: store_i32_stride7_vf2:118; AVX2-FP:       # %bb.0:119; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %rax120; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %r10121; AVX2-FP-NEXT:    vmovsd {{.*#+}} xmm0 = mem[0],zero122; AVX2-FP-NEXT:    vmovsd {{.*#+}} xmm1 = mem[0],zero123; AVX2-FP-NEXT:    vmovsd {{.*#+}} xmm2 = mem[0],zero124; AVX2-FP-NEXT:    vmovsd {{.*#+}} xmm3 = mem[0],zero125; AVX2-FP-NEXT:    vmovlhps {{.*#+}} xmm2 = xmm3[0],xmm2[0]126; AVX2-FP-NEXT:    vmovsd {{.*#+}} xmm3 = mem[0],zero127; AVX2-FP-NEXT:    vmovsd {{.*#+}} xmm4 = mem[0],zero128; AVX2-FP-NEXT:    vmovlhps {{.*#+}} xmm3 = xmm4[0],xmm3[0]129; AVX2-FP-NEXT:    vinsertf128 $1, %xmm3, %ymm2, %ymm2130; AVX2-FP-NEXT:    vmovsd {{.*#+}} xmm3 = mem[0],zero131; AVX2-FP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm0132; AVX2-FP-NEXT:    vunpcklpd {{.*#+}} ymm0 = ymm0[0],ymm3[0],ymm0[2],ymm3[2]133; AVX2-FP-NEXT:    vbroadcastf128 {{.*#+}} ymm1 = [0,4,2,6,0,4,2,6]134; AVX2-FP-NEXT:    # ymm1 = mem[0,1,0,1]135; AVX2-FP-NEXT:    vpermps %ymm0, %ymm1, %ymm1136; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm3 = ymm2[0,2,2,1,4,6,6,5]137; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm3 = ymm3[0,2,2,1]138; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm3[0,1,2,3],ymm1[4,5,6],ymm3[7]139; AVX2-FP-NEXT:    vbroadcastf128 {{.*#+}} ymm3 = [5,3,0,1,5,3,0,1]140; AVX2-FP-NEXT:    # ymm3 = mem[0,1,0,1]141; AVX2-FP-NEXT:    vpermps %ymm0, %ymm3, %ymm0142; AVX2-FP-NEXT:    vmovaps {{.*#+}} xmm3 = [3,5,7,u]143; AVX2-FP-NEXT:    vpermps %ymm2, %ymm3, %ymm2144; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0,1,2],xmm0[3]145; AVX2-FP-NEXT:    vextractf128 $1, %ymm0, %xmm0146; AVX2-FP-NEXT:    vmovlps %xmm0, 48(%rax)147; AVX2-FP-NEXT:    vmovaps %xmm2, 32(%rax)148; AVX2-FP-NEXT:    vmovaps %ymm1, (%rax)149; AVX2-FP-NEXT:    vzeroupper150; AVX2-FP-NEXT:    retq151;152; AVX2-FCP-LABEL: store_i32_stride7_vf2:153; AVX2-FCP:       # %bb.0:154; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax155; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r10156; AVX2-FCP-NEXT:    vmovsd {{.*#+}} xmm0 = mem[0],zero157; AVX2-FCP-NEXT:    vmovsd {{.*#+}} xmm1 = mem[0],zero158; AVX2-FCP-NEXT:    vmovsd {{.*#+}} xmm2 = mem[0],zero159; AVX2-FCP-NEXT:    vmovsd {{.*#+}} xmm3 = mem[0],zero160; AVX2-FCP-NEXT:    vmovlhps {{.*#+}} xmm2 = xmm3[0],xmm2[0]161; AVX2-FCP-NEXT:    vmovsd {{.*#+}} xmm3 = mem[0],zero162; AVX2-FCP-NEXT:    vmovsd {{.*#+}} xmm4 = mem[0],zero163; AVX2-FCP-NEXT:    vmovlhps {{.*#+}} xmm3 = xmm4[0],xmm3[0]164; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm3, %ymm2, %ymm2165; AVX2-FCP-NEXT:    vmovsd {{.*#+}} xmm3 = mem[0],zero166; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm0167; AVX2-FCP-NEXT:    vunpcklpd {{.*#+}} ymm0 = ymm0[0],ymm3[0],ymm0[2],ymm3[2]168; AVX2-FCP-NEXT:    vbroadcastf128 {{.*#+}} ymm1 = [5,3,0,1,5,3,0,1]169; AVX2-FCP-NEXT:    # ymm1 = mem[0,1,0,1]170; AVX2-FCP-NEXT:    vpermps %ymm0, %ymm1, %ymm1171; AVX2-FCP-NEXT:    vmovaps {{.*#+}} xmm3 = [3,5,7,u]172; AVX2-FCP-NEXT:    vpermps %ymm2, %ymm3, %ymm3173; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm3 = xmm3[0,1,2],xmm1[3]174; AVX2-FCP-NEXT:    vbroadcastf128 {{.*#+}} ymm4 = [0,4,2,0,0,4,2,0]175; AVX2-FCP-NEXT:    # ymm4 = mem[0,1,0,1]176; AVX2-FCP-NEXT:    vpermps %ymm0, %ymm4, %ymm0177; AVX2-FCP-NEXT:    vmovaps {{.*#+}} ymm4 = [0,2,4,6,u,u,u,1]178; AVX2-FCP-NEXT:    vpermps %ymm2, %ymm4, %ymm2179; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2,3],ymm0[4,5,6],ymm2[7]180; AVX2-FCP-NEXT:    vextractf128 $1, %ymm1, %xmm1181; AVX2-FCP-NEXT:    vmovlps %xmm1, 48(%rax)182; AVX2-FCP-NEXT:    vmovaps %ymm0, (%rax)183; AVX2-FCP-NEXT:    vmovaps %xmm3, 32(%rax)184; AVX2-FCP-NEXT:    vzeroupper185; AVX2-FCP-NEXT:    retq186;187; AVX512-LABEL: store_i32_stride7_vf2:188; AVX512:       # %bb.0:189; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %rax190; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %r10191; AVX512-NEXT:    vmovq {{.*#+}} xmm0 = mem[0],zero192; AVX512-NEXT:    vmovq {{.*#+}} xmm1 = mem[0],zero193; AVX512-NEXT:    vmovq {{.*#+}} xmm2 = mem[0],zero194; AVX512-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero195; AVX512-NEXT:    vpunpcklqdq {{.*#+}} xmm2 = xmm3[0],xmm2[0]196; AVX512-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero197; AVX512-NEXT:    vmovq {{.*#+}} xmm4 = mem[0],zero198; AVX512-NEXT:    vpunpcklqdq {{.*#+}} xmm3 = xmm4[0],xmm3[0]199; AVX512-NEXT:    vinserti128 $1, %xmm3, %ymm2, %ymm2200; AVX512-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero201; AVX512-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm0202; AVX512-NEXT:    vpunpcklqdq {{.*#+}} ymm0 = ymm0[0],ymm3[0],ymm0[2],ymm3[2]203; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,2,4,6,16,20,18,1,3,5,7,17,21,19,0,0]204; AVX512-NEXT:    vpermi2d %zmm0, %zmm2, %zmm1205; AVX512-NEXT:    vextracti32x4 $2, %zmm1, 32(%rax)206; AVX512-NEXT:    vextracti32x4 $3, %zmm1, %xmm0207; AVX512-NEXT:    vmovq %xmm0, 48(%rax)208; AVX512-NEXT:    vmovdqa %ymm1, (%rax)209; AVX512-NEXT:    vzeroupper210; AVX512-NEXT:    retq211;212; AVX512-FCP-LABEL: store_i32_stride7_vf2:213; AVX512-FCP:       # %bb.0:214; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax215; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r10216; AVX512-FCP-NEXT:    vmovq {{.*#+}} xmm0 = mem[0],zero217; AVX512-FCP-NEXT:    vmovq {{.*#+}} xmm1 = mem[0],zero218; AVX512-FCP-NEXT:    vmovq {{.*#+}} xmm2 = mem[0],zero219; AVX512-FCP-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero220; AVX512-FCP-NEXT:    vpunpcklqdq {{.*#+}} xmm2 = xmm3[0],xmm2[0]221; AVX512-FCP-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero222; AVX512-FCP-NEXT:    vmovq {{.*#+}} xmm4 = mem[0],zero223; AVX512-FCP-NEXT:    vpunpcklqdq {{.*#+}} xmm3 = xmm4[0],xmm3[0]224; AVX512-FCP-NEXT:    vinserti128 $1, %xmm3, %ymm2, %ymm2225; AVX512-FCP-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero226; AVX512-FCP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm0227; AVX512-FCP-NEXT:    vpmovsxbq {{.*#+}} ymm1 = [0,2,4,0]228; AVX512-FCP-NEXT:    vpermi2q %ymm3, %ymm0, %ymm1229; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,2,4,6,16,18,20,1,3,5,7,17,19,21,0,0]230; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm2, %zmm0231; AVX512-FCP-NEXT:    vextracti32x4 $2, %zmm0, 32(%rax)232; AVX512-FCP-NEXT:    vextracti32x4 $3, %zmm0, %xmm1233; AVX512-FCP-NEXT:    vmovq %xmm1, 48(%rax)234; AVX512-FCP-NEXT:    vmovdqa %ymm0, (%rax)235; AVX512-FCP-NEXT:    vzeroupper236; AVX512-FCP-NEXT:    retq237;238; AVX512DQ-LABEL: store_i32_stride7_vf2:239; AVX512DQ:       # %bb.0:240; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %rax241; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %r10242; AVX512DQ-NEXT:    vmovq {{.*#+}} xmm0 = mem[0],zero243; AVX512DQ-NEXT:    vmovq {{.*#+}} xmm1 = mem[0],zero244; AVX512DQ-NEXT:    vmovq {{.*#+}} xmm2 = mem[0],zero245; AVX512DQ-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero246; AVX512DQ-NEXT:    vpunpcklqdq {{.*#+}} xmm2 = xmm3[0],xmm2[0]247; AVX512DQ-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero248; AVX512DQ-NEXT:    vmovq {{.*#+}} xmm4 = mem[0],zero249; AVX512DQ-NEXT:    vpunpcklqdq {{.*#+}} xmm3 = xmm4[0],xmm3[0]250; AVX512DQ-NEXT:    vinserti128 $1, %xmm3, %ymm2, %ymm2251; AVX512DQ-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero252; AVX512DQ-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm0253; AVX512DQ-NEXT:    vpunpcklqdq {{.*#+}} ymm0 = ymm0[0],ymm3[0],ymm0[2],ymm3[2]254; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,2,4,6,16,20,18,1,3,5,7,17,21,19,0,0]255; AVX512DQ-NEXT:    vpermi2d %zmm0, %zmm2, %zmm1256; AVX512DQ-NEXT:    vextracti32x4 $2, %zmm1, 32(%rax)257; AVX512DQ-NEXT:    vextracti32x4 $3, %zmm1, %xmm0258; AVX512DQ-NEXT:    vmovq %xmm0, 48(%rax)259; AVX512DQ-NEXT:    vmovdqa %ymm1, (%rax)260; AVX512DQ-NEXT:    vzeroupper261; AVX512DQ-NEXT:    retq262;263; AVX512DQ-FCP-LABEL: store_i32_stride7_vf2:264; AVX512DQ-FCP:       # %bb.0:265; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax266; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r10267; AVX512DQ-FCP-NEXT:    vmovq {{.*#+}} xmm0 = mem[0],zero268; AVX512DQ-FCP-NEXT:    vmovq {{.*#+}} xmm1 = mem[0],zero269; AVX512DQ-FCP-NEXT:    vmovq {{.*#+}} xmm2 = mem[0],zero270; AVX512DQ-FCP-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero271; AVX512DQ-FCP-NEXT:    vpunpcklqdq {{.*#+}} xmm2 = xmm3[0],xmm2[0]272; AVX512DQ-FCP-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero273; AVX512DQ-FCP-NEXT:    vmovq {{.*#+}} xmm4 = mem[0],zero274; AVX512DQ-FCP-NEXT:    vpunpcklqdq {{.*#+}} xmm3 = xmm4[0],xmm3[0]275; AVX512DQ-FCP-NEXT:    vinserti128 $1, %xmm3, %ymm2, %ymm2276; AVX512DQ-FCP-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero277; AVX512DQ-FCP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm0278; AVX512DQ-FCP-NEXT:    vpmovsxbq {{.*#+}} ymm1 = [0,2,4,0]279; AVX512DQ-FCP-NEXT:    vpermi2q %ymm3, %ymm0, %ymm1280; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,2,4,6,16,18,20,1,3,5,7,17,19,21,0,0]281; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm2, %zmm0282; AVX512DQ-FCP-NEXT:    vextracti32x4 $2, %zmm0, 32(%rax)283; AVX512DQ-FCP-NEXT:    vextracti32x4 $3, %zmm0, %xmm1284; AVX512DQ-FCP-NEXT:    vmovq %xmm1, 48(%rax)285; AVX512DQ-FCP-NEXT:    vmovdqa %ymm0, (%rax)286; AVX512DQ-FCP-NEXT:    vzeroupper287; AVX512DQ-FCP-NEXT:    retq288;289; AVX512BW-LABEL: store_i32_stride7_vf2:290; AVX512BW:       # %bb.0:291; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax292; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %r10293; AVX512BW-NEXT:    vmovq {{.*#+}} xmm0 = mem[0],zero294; AVX512BW-NEXT:    vmovq {{.*#+}} xmm1 = mem[0],zero295; AVX512BW-NEXT:    vmovq {{.*#+}} xmm2 = mem[0],zero296; AVX512BW-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero297; AVX512BW-NEXT:    vpunpcklqdq {{.*#+}} xmm2 = xmm3[0],xmm2[0]298; AVX512BW-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero299; AVX512BW-NEXT:    vmovq {{.*#+}} xmm4 = mem[0],zero300; AVX512BW-NEXT:    vpunpcklqdq {{.*#+}} xmm3 = xmm4[0],xmm3[0]301; AVX512BW-NEXT:    vinserti128 $1, %xmm3, %ymm2, %ymm2302; AVX512BW-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero303; AVX512BW-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm0304; AVX512BW-NEXT:    vpunpcklqdq {{.*#+}} ymm0 = ymm0[0],ymm3[0],ymm0[2],ymm3[2]305; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,2,4,6,16,20,18,1,3,5,7,17,21,19,0,0]306; AVX512BW-NEXT:    vpermi2d %zmm0, %zmm2, %zmm1307; AVX512BW-NEXT:    vextracti32x4 $2, %zmm1, 32(%rax)308; AVX512BW-NEXT:    vextracti32x4 $3, %zmm1, %xmm0309; AVX512BW-NEXT:    vmovq %xmm0, 48(%rax)310; AVX512BW-NEXT:    vmovdqa %ymm1, (%rax)311; AVX512BW-NEXT:    vzeroupper312; AVX512BW-NEXT:    retq313;314; AVX512BW-FCP-LABEL: store_i32_stride7_vf2:315; AVX512BW-FCP:       # %bb.0:316; AVX512BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax317; AVX512BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r10318; AVX512BW-FCP-NEXT:    vmovq {{.*#+}} xmm0 = mem[0],zero319; AVX512BW-FCP-NEXT:    vmovq {{.*#+}} xmm1 = mem[0],zero320; AVX512BW-FCP-NEXT:    vmovq {{.*#+}} xmm2 = mem[0],zero321; AVX512BW-FCP-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero322; AVX512BW-FCP-NEXT:    vpunpcklqdq {{.*#+}} xmm2 = xmm3[0],xmm2[0]323; AVX512BW-FCP-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero324; AVX512BW-FCP-NEXT:    vmovq {{.*#+}} xmm4 = mem[0],zero325; AVX512BW-FCP-NEXT:    vpunpcklqdq {{.*#+}} xmm3 = xmm4[0],xmm3[0]326; AVX512BW-FCP-NEXT:    vinserti128 $1, %xmm3, %ymm2, %ymm2327; AVX512BW-FCP-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero328; AVX512BW-FCP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm0329; AVX512BW-FCP-NEXT:    vpmovsxbq {{.*#+}} ymm1 = [0,2,4,0]330; AVX512BW-FCP-NEXT:    vpermi2q %ymm3, %ymm0, %ymm1331; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,2,4,6,16,18,20,1,3,5,7,17,19,21,0,0]332; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm2, %zmm0333; AVX512BW-FCP-NEXT:    vextracti32x4 $2, %zmm0, 32(%rax)334; AVX512BW-FCP-NEXT:    vextracti32x4 $3, %zmm0, %xmm1335; AVX512BW-FCP-NEXT:    vmovq %xmm1, 48(%rax)336; AVX512BW-FCP-NEXT:    vmovdqa %ymm0, (%rax)337; AVX512BW-FCP-NEXT:    vzeroupper338; AVX512BW-FCP-NEXT:    retq339;340; AVX512DQ-BW-LABEL: store_i32_stride7_vf2:341; AVX512DQ-BW:       # %bb.0:342; AVX512DQ-BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax343; AVX512DQ-BW-NEXT:    movq {{[0-9]+}}(%rsp), %r10344; AVX512DQ-BW-NEXT:    vmovq {{.*#+}} xmm0 = mem[0],zero345; AVX512DQ-BW-NEXT:    vmovq {{.*#+}} xmm1 = mem[0],zero346; AVX512DQ-BW-NEXT:    vmovq {{.*#+}} xmm2 = mem[0],zero347; AVX512DQ-BW-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero348; AVX512DQ-BW-NEXT:    vpunpcklqdq {{.*#+}} xmm2 = xmm3[0],xmm2[0]349; AVX512DQ-BW-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero350; AVX512DQ-BW-NEXT:    vmovq {{.*#+}} xmm4 = mem[0],zero351; AVX512DQ-BW-NEXT:    vpunpcklqdq {{.*#+}} xmm3 = xmm4[0],xmm3[0]352; AVX512DQ-BW-NEXT:    vinserti128 $1, %xmm3, %ymm2, %ymm2353; AVX512DQ-BW-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero354; AVX512DQ-BW-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm0355; AVX512DQ-BW-NEXT:    vpunpcklqdq {{.*#+}} ymm0 = ymm0[0],ymm3[0],ymm0[2],ymm3[2]356; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,2,4,6,16,20,18,1,3,5,7,17,21,19,0,0]357; AVX512DQ-BW-NEXT:    vpermi2d %zmm0, %zmm2, %zmm1358; AVX512DQ-BW-NEXT:    vextracti32x4 $2, %zmm1, 32(%rax)359; AVX512DQ-BW-NEXT:    vextracti32x4 $3, %zmm1, %xmm0360; AVX512DQ-BW-NEXT:    vmovq %xmm0, 48(%rax)361; AVX512DQ-BW-NEXT:    vmovdqa %ymm1, (%rax)362; AVX512DQ-BW-NEXT:    vzeroupper363; AVX512DQ-BW-NEXT:    retq364;365; AVX512DQ-BW-FCP-LABEL: store_i32_stride7_vf2:366; AVX512DQ-BW-FCP:       # %bb.0:367; AVX512DQ-BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax368; AVX512DQ-BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r10369; AVX512DQ-BW-FCP-NEXT:    vmovq {{.*#+}} xmm0 = mem[0],zero370; AVX512DQ-BW-FCP-NEXT:    vmovq {{.*#+}} xmm1 = mem[0],zero371; AVX512DQ-BW-FCP-NEXT:    vmovq {{.*#+}} xmm2 = mem[0],zero372; AVX512DQ-BW-FCP-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero373; AVX512DQ-BW-FCP-NEXT:    vpunpcklqdq {{.*#+}} xmm2 = xmm3[0],xmm2[0]374; AVX512DQ-BW-FCP-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero375; AVX512DQ-BW-FCP-NEXT:    vmovq {{.*#+}} xmm4 = mem[0],zero376; AVX512DQ-BW-FCP-NEXT:    vpunpcklqdq {{.*#+}} xmm3 = xmm4[0],xmm3[0]377; AVX512DQ-BW-FCP-NEXT:    vinserti128 $1, %xmm3, %ymm2, %ymm2378; AVX512DQ-BW-FCP-NEXT:    vmovq {{.*#+}} xmm3 = mem[0],zero379; AVX512DQ-BW-FCP-NEXT:    vinserti128 $1, %xmm1, %ymm0, %ymm0380; AVX512DQ-BW-FCP-NEXT:    vpmovsxbq {{.*#+}} ymm1 = [0,2,4,0]381; AVX512DQ-BW-FCP-NEXT:    vpermi2q %ymm3, %ymm0, %ymm1382; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,2,4,6,16,18,20,1,3,5,7,17,19,21,0,0]383; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm2, %zmm0384; AVX512DQ-BW-FCP-NEXT:    vextracti32x4 $2, %zmm0, 32(%rax)385; AVX512DQ-BW-FCP-NEXT:    vextracti32x4 $3, %zmm0, %xmm1386; AVX512DQ-BW-FCP-NEXT:    vmovq %xmm1, 48(%rax)387; AVX512DQ-BW-FCP-NEXT:    vmovdqa %ymm0, (%rax)388; AVX512DQ-BW-FCP-NEXT:    vzeroupper389; AVX512DQ-BW-FCP-NEXT:    retq390  %in.vec0 = load <2 x i32>, ptr %in.vecptr0, align 64391  %in.vec1 = load <2 x i32>, ptr %in.vecptr1, align 64392  %in.vec2 = load <2 x i32>, ptr %in.vecptr2, align 64393  %in.vec3 = load <2 x i32>, ptr %in.vecptr3, align 64394  %in.vec4 = load <2 x i32>, ptr %in.vecptr4, align 64395  %in.vec5 = load <2 x i32>, ptr %in.vecptr5, align 64396  %in.vec6 = load <2 x i32>, ptr %in.vecptr6, align 64397  %1 = shufflevector <2 x i32> %in.vec0, <2 x i32> %in.vec1, <4 x i32> <i32 0, i32 1, i32 2, i32 3>398  %2 = shufflevector <2 x i32> %in.vec2, <2 x i32> %in.vec3, <4 x i32> <i32 0, i32 1, i32 2, i32 3>399  %3 = shufflevector <2 x i32> %in.vec4, <2 x i32> %in.vec5, <4 x i32> <i32 0, i32 1, i32 2, i32 3>400  %4 = shufflevector <4 x i32> %1, <4 x i32> %2, <8 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7>401  %5 = shufflevector <2 x i32> %in.vec6, <2 x i32> poison, <4 x i32> <i32 0, i32 1, i32 undef, i32 undef>402  %6 = shufflevector <4 x i32> %3, <4 x i32> %5, <6 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5>403  %7 = shufflevector <6 x i32> %6, <6 x i32> poison, <8 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 undef, i32 undef>404  %8 = shufflevector <8 x i32> %4, <8 x i32> %7, <14 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13>405  %interleaved.vec = shufflevector <14 x i32> %8, <14 x i32> poison, <14 x i32> <i32 0, i32 2, i32 4, i32 6, i32 8, i32 10, i32 12, i32 1, i32 3, i32 5, i32 7, i32 9, i32 11, i32 13>406  store <14 x i32> %interleaved.vec, ptr %out.vec, align 64407  ret void408}409 410define void @store_i32_stride7_vf4(ptr %in.vecptr0, ptr %in.vecptr1, ptr %in.vecptr2, ptr %in.vecptr3, ptr %in.vecptr4, ptr %in.vecptr5, ptr %in.vecptr6, ptr %out.vec) nounwind {411; SSE-LABEL: store_i32_stride7_vf4:412; SSE:       # %bb.0:413; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %rax414; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %r10415; SSE-NEXT:    movaps (%rdi), %xmm0416; SSE-NEXT:    movaps (%rsi), %xmm6417; SSE-NEXT:    movaps (%rdx), %xmm5418; SSE-NEXT:    movaps (%rcx), %xmm1419; SSE-NEXT:    movaps (%r8), %xmm4420; SSE-NEXT:    movaps (%r9), %xmm2421; SSE-NEXT:    movaps (%r10), %xmm8422; SSE-NEXT:    movaps %xmm5, %xmm7423; SSE-NEXT:    unpcklps {{.*#+}} xmm7 = xmm7[0],xmm1[0],xmm7[1],xmm1[1]424; SSE-NEXT:    movaps %xmm0, %xmm3425; SSE-NEXT:    unpcklps {{.*#+}} xmm3 = xmm3[0],xmm6[0],xmm3[1],xmm6[1]426; SSE-NEXT:    movlhps {{.*#+}} xmm3 = xmm3[0],xmm7[0]427; SSE-NEXT:    movaps %xmm4, %xmm9428; SSE-NEXT:    unpckhps {{.*#+}} xmm9 = xmm9[2],xmm2[2],xmm9[3],xmm2[3]429; SSE-NEXT:    movaps %xmm5, %xmm7430; SSE-NEXT:    unpckhps {{.*#+}} xmm7 = xmm7[2],xmm1[2],xmm7[3],xmm1[3]431; SSE-NEXT:    movlhps {{.*#+}} xmm7 = xmm7[0],xmm9[0]432; SSE-NEXT:    movaps %xmm8, %xmm9433; SSE-NEXT:    shufps {{.*#+}} xmm9 = xmm9[3,3],xmm2[3,3]434; SSE-NEXT:    movaps %xmm4, %xmm10435; SSE-NEXT:    shufps {{.*#+}} xmm10 = xmm10[1,1],xmm1[1,1]436; SSE-NEXT:    unpckhps {{.*#+}} xmm1 = xmm1[2],xmm4[2],xmm1[3],xmm4[3]437; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[2,3],xmm9[2,0]438; SSE-NEXT:    movaps %xmm0, %xmm9439; SSE-NEXT:    unpckhps {{.*#+}} xmm9 = xmm9[2],xmm6[2],xmm9[3],xmm6[3]440; SSE-NEXT:    unpcklps {{.*#+}} xmm4 = xmm4[0],xmm2[0],xmm4[1],xmm2[1]441; SSE-NEXT:    unpcklps {{.*#+}} xmm2 = xmm2[0],xmm8[0],xmm2[1],xmm8[1]442; SSE-NEXT:    shufps {{.*#+}} xmm2 = xmm2[2,3],xmm9[0,1]443; SSE-NEXT:    movaps %xmm6, %xmm9444; SSE-NEXT:    unpcklps {{.*#+}} xmm9 = xmm9[0],xmm5[0],xmm9[1],xmm5[1]445; SSE-NEXT:    shufps {{.*#+}} xmm9 = xmm9[2,3],xmm10[2,0]446; SSE-NEXT:    pshufd {{.*#+}} xmm10 = xmm8[2,3,2,3]447; SSE-NEXT:    shufps {{.*#+}} xmm8 = xmm8[0,1],xmm0[1,3]448; SSE-NEXT:    shufps {{.*#+}} xmm4 = xmm4[0,1],xmm8[0,2]449; SSE-NEXT:    shufps {{.*#+}} xmm5 = xmm5[3,3],xmm6[3,3]450; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,3],xmm5[2,0]451; SSE-NEXT:    movss {{.*#+}} xmm0 = xmm10[0],xmm0[1,2,3]452; SSE-NEXT:    movaps %xmm4, 16(%rax)453; SSE-NEXT:    movaps %xmm9, 32(%rax)454; SSE-NEXT:    movaps %xmm2, 48(%rax)455; SSE-NEXT:    movaps %xmm1, 96(%rax)456; SSE-NEXT:    movaps %xmm7, 64(%rax)457; SSE-NEXT:    movaps %xmm3, (%rax)458; SSE-NEXT:    movaps %xmm0, 80(%rax)459; SSE-NEXT:    retq460;461; AVX-LABEL: store_i32_stride7_vf4:462; AVX:       # %bb.0:463; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %rax464; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %r10465; AVX-NEXT:    vmovaps (%rdi), %xmm4466; AVX-NEXT:    vmovaps (%rsi), %xmm5467; AVX-NEXT:    vmovaps (%rdx), %xmm6468; AVX-NEXT:    vmovaps (%rcx), %xmm0469; AVX-NEXT:    vmovaps (%r8), %xmm2470; AVX-NEXT:    vmovaps (%r9), %xmm3471; AVX-NEXT:    vmovaps (%r10), %xmm1472; AVX-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm7473; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm8474; AVX-NEXT:    vshufps {{.*#+}} ymm7 = ymm8[1,0],ymm7[1,0],ymm8[5,4],ymm7[5,4]475; AVX-NEXT:    vshufps {{.*#+}} ymm7 = ymm7[2,0],ymm2[2,1],ymm7[6,4],ymm2[6,5]476; AVX-NEXT:    vshufps {{.*#+}} xmm9 = xmm5[2,2,2,2]477; AVX-NEXT:    vblendps {{.*#+}} xmm9 = xmm4[0,1,2],xmm9[3]478; AVX-NEXT:    vinsertps {{.*#+}} xmm10 = zero,xmm6[1],xmm0[1],zero479; AVX-NEXT:    vinsertps {{.*#+}} xmm10 = xmm5[1],xmm10[1,2,3]480; AVX-NEXT:    vinsertf128 $1, %xmm9, %ymm10, %ymm9481; AVX-NEXT:    vblendps {{.*#+}} ymm7 = ymm9[0,1,2],ymm7[3,4,5],ymm9[6,7]482; AVX-NEXT:    vunpckhpd {{.*#+}} xmm9 = xmm3[1],xmm2[1]483; AVX-NEXT:    vshufps {{.*#+}} ymm8 = ymm8[2,1],ymm9[2,0],ymm8[6,5],ymm9[6,4]484; AVX-NEXT:    vshufps {{.*#+}} xmm9 = xmm4[3,3],xmm5[3,3]485; AVX-NEXT:    vblendps {{.*#+}} xmm9 = xmm9[0,1,2],xmm6[3]486; AVX-NEXT:    vunpckhps {{.*#+}} xmm10 = xmm6[2],xmm0[2],xmm6[3],xmm0[3]487; AVX-NEXT:    vinsertf128 $1, %xmm9, %ymm10, %ymm9488; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm9[0,1],ymm8[2,3,4],ymm9[5,6,7]489; AVX-NEXT:    vunpcklps {{.*#+}} xmm6 = xmm6[0],xmm0[0],xmm6[1],xmm0[1]490; AVX-NEXT:    vunpcklps {{.*#+}} xmm5 = xmm4[0],xmm5[0],xmm4[1],xmm5[1]491; AVX-NEXT:    vmovlhps {{.*#+}} xmm5 = xmm5[0],xmm6[0]492; AVX-NEXT:    vshufps {{.*#+}} xmm4 = xmm4[0,1,0,1]493; AVX-NEXT:    vinsertf128 $1, %xmm4, %ymm5, %ymm4494; AVX-NEXT:    vunpcklps {{.*#+}} xmm5 = xmm2[0],xmm3[0],xmm2[1],xmm3[1]495; AVX-NEXT:    vmovlhps {{.*#+}} xmm5 = xmm5[0],xmm1[0]496; AVX-NEXT:    vinsertf128 $1, %xmm5, %ymm0, %ymm5497; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3],ymm5[4,5,6],ymm4[7]498; AVX-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[3,3],xmm3[3,3]499; AVX-NEXT:    vinsertps {{.*#+}} xmm0 = xmm0[3],xmm2[1,2,3]500; AVX-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0,1,2],xmm1[3]501; AVX-NEXT:    vmovaps %xmm0, 96(%rax)502; AVX-NEXT:    vmovaps %ymm8, 64(%rax)503; AVX-NEXT:    vmovaps %ymm7, 32(%rax)504; AVX-NEXT:    vmovaps %ymm4, (%rax)505; AVX-NEXT:    vzeroupper506; AVX-NEXT:    retq507;508; AVX2-LABEL: store_i32_stride7_vf4:509; AVX2:       # %bb.0:510; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %rax511; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %r10512; AVX2-NEXT:    vmovaps (%rdi), %xmm4513; AVX2-NEXT:    vmovaps (%rdx), %xmm5514; AVX2-NEXT:    vmovaps (%rcx), %xmm0515; AVX2-NEXT:    vmovaps (%r8), %xmm2516; AVX2-NEXT:    vmovaps (%r9), %xmm3517; AVX2-NEXT:    vmovaps (%r10), %xmm1518; AVX2-NEXT:    vinsertf128 $1, (%rsi), %ymm4, %ymm4519; AVX2-NEXT:    vinsertf128 $1, %xmm0, %ymm5, %ymm6520; AVX2-NEXT:    vinsertf128 $1, %xmm3, %ymm2, %ymm7521; AVX2-NEXT:    vshufps {{.*#+}} ymm8 = ymm4[3,3,3,3,7,7,7,7]522; AVX2-NEXT:    vblendps {{.*#+}} ymm8 = ymm6[0],ymm8[1],ymm6[2,3],ymm8[4],ymm6[5,6,7]523; AVX2-NEXT:    vmovaps {{.*#+}} ymm9 = [2,6,u,u,u,1,4,3]524; AVX2-NEXT:    vpermps %ymm8, %ymm9, %ymm8525; AVX2-NEXT:    vinsertf128 $1, %xmm1, %ymm2, %ymm9526; AVX2-NEXT:    vunpckhps {{.*#+}} ymm9 = ymm9[2],ymm3[2],ymm9[3],ymm3[3],ymm9[6],ymm3[6],ymm9[7],ymm3[7]527; AVX2-NEXT:    vshufps {{.*#+}} ymm9 = ymm9[0,1,0,1,4,5,4,5]528; AVX2-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1],ymm9[2,3,4],ymm8[5,6,7]529; AVX2-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm9530; AVX2-NEXT:    vshufps {{.*#+}} ymm10 = ymm7[1,1,1,1,5,5,5,5]531; AVX2-NEXT:    vblendps {{.*#+}} ymm9 = ymm10[0,1,2,3,4],ymm9[5],ymm10[6,7]532; AVX2-NEXT:    vinsertps {{.*#+}} xmm5 = zero,xmm5[1],xmm0[1],zero533; AVX2-NEXT:    vbroadcastf128 {{.*#+}} ymm10 = [5,0,2,6,5,0,2,6]534; AVX2-NEXT:    # ymm10 = mem[0,1,0,1]535; AVX2-NEXT:    vpermps %ymm4, %ymm10, %ymm10536; AVX2-NEXT:    vblendps {{.*#+}} ymm5 = ymm10[0],ymm5[1,2],ymm10[3,4,5,6,7]537; AVX2-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2],ymm9[3,4,5],ymm5[6,7]538; AVX2-NEXT:    vbroadcastsd {{.*#+}} ymm9 = [0,4,0,4,0,4,0,4]539; AVX2-NEXT:    vpermps %ymm6, %ymm9, %ymm6540; AVX2-NEXT:    vbroadcastf128 {{.*#+}} ymm10 = [0,4,0,1,0,4,0,1]541; AVX2-NEXT:    # ymm10 = mem[0,1,0,1]542; AVX2-NEXT:    vpermps %ymm4, %ymm10, %ymm4543; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1],ymm6[2,3],ymm4[4,5,6,7]544; AVX2-NEXT:    vpermps %ymm7, %ymm9, %ymm6545; AVX2-NEXT:    vbroadcastss (%r10), %ymm7546; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3,4,5],ymm7[6,7]547; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3],ymm6[4,5,6],ymm4[7]548; AVX2-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[3,3],xmm3[3,3]549; AVX2-NEXT:    vinsertps {{.*#+}} xmm0 = xmm0[3],xmm2[1,2],zero550; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0,1,2],xmm1[3]551; AVX2-NEXT:    vmovaps %xmm0, 96(%rax)552; AVX2-NEXT:    vmovaps %ymm4, (%rax)553; AVX2-NEXT:    vmovaps %ymm5, 32(%rax)554; AVX2-NEXT:    vmovaps %ymm8, 64(%rax)555; AVX2-NEXT:    vzeroupper556; AVX2-NEXT:    retq557;558; AVX2-FP-LABEL: store_i32_stride7_vf4:559; AVX2-FP:       # %bb.0:560; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %rax561; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %r10562; AVX2-FP-NEXT:    vmovaps (%rdi), %xmm4563; AVX2-FP-NEXT:    vmovaps (%rdx), %xmm5564; AVX2-FP-NEXT:    vmovaps (%rcx), %xmm0565; AVX2-FP-NEXT:    vmovaps (%r8), %xmm2566; AVX2-FP-NEXT:    vmovaps (%r9), %xmm3567; AVX2-FP-NEXT:    vmovaps (%r10), %xmm1568; AVX2-FP-NEXT:    vinsertf128 $1, (%rsi), %ymm4, %ymm4569; AVX2-FP-NEXT:    vinsertf128 $1, %xmm0, %ymm5, %ymm6570; AVX2-FP-NEXT:    vinsertf128 $1, %xmm3, %ymm2, %ymm7571; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm8 = ymm4[3,3,3,3,7,7,7,7]572; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm8 = ymm6[0],ymm8[1],ymm6[2,3],ymm8[4],ymm6[5,6,7]573; AVX2-FP-NEXT:    vmovaps {{.*#+}} ymm9 = [2,6,u,u,u,1,4,3]574; AVX2-FP-NEXT:    vpermps %ymm8, %ymm9, %ymm8575; AVX2-FP-NEXT:    vinsertf128 $1, %xmm1, %ymm2, %ymm9576; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm9 = ymm9[2],ymm3[2],ymm9[3],ymm3[3],ymm9[6],ymm3[6],ymm9[7],ymm3[7]577; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm9 = ymm9[0,1,0,1,4,5,4,5]578; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1],ymm9[2,3,4],ymm8[5,6,7]579; AVX2-FP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm9580; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm10 = ymm7[1,1,1,1,5,5,5,5]581; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm9 = ymm10[0,1,2,3,4],ymm9[5],ymm10[6,7]582; AVX2-FP-NEXT:    vinsertps {{.*#+}} xmm5 = zero,xmm5[1],xmm0[1],zero583; AVX2-FP-NEXT:    vbroadcastf128 {{.*#+}} ymm10 = [5,0,2,6,5,0,2,6]584; AVX2-FP-NEXT:    # ymm10 = mem[0,1,0,1]585; AVX2-FP-NEXT:    vpermps %ymm4, %ymm10, %ymm10586; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm5 = ymm10[0],ymm5[1,2],ymm10[3,4,5,6,7]587; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2],ymm9[3,4,5],ymm5[6,7]588; AVX2-FP-NEXT:    vbroadcastsd {{.*#+}} ymm9 = [0,4,0,4,0,4,0,4]589; AVX2-FP-NEXT:    vpermps %ymm6, %ymm9, %ymm6590; AVX2-FP-NEXT:    vbroadcastf128 {{.*#+}} ymm10 = [0,4,0,1,0,4,0,1]591; AVX2-FP-NEXT:    # ymm10 = mem[0,1,0,1]592; AVX2-FP-NEXT:    vpermps %ymm4, %ymm10, %ymm4593; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1],ymm6[2,3],ymm4[4,5,6,7]594; AVX2-FP-NEXT:    vpermps %ymm7, %ymm9, %ymm6595; AVX2-FP-NEXT:    vbroadcastss (%r10), %ymm7596; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3,4,5],ymm7[6,7]597; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3],ymm6[4,5,6],ymm4[7]598; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[3,3],xmm3[3,3]599; AVX2-FP-NEXT:    vinsertps {{.*#+}} xmm0 = xmm0[3],xmm2[1,2],zero600; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0,1,2],xmm1[3]601; AVX2-FP-NEXT:    vmovaps %xmm0, 96(%rax)602; AVX2-FP-NEXT:    vmovaps %ymm4, (%rax)603; AVX2-FP-NEXT:    vmovaps %ymm5, 32(%rax)604; AVX2-FP-NEXT:    vmovaps %ymm8, 64(%rax)605; AVX2-FP-NEXT:    vzeroupper606; AVX2-FP-NEXT:    retq607;608; AVX2-FCP-LABEL: store_i32_stride7_vf4:609; AVX2-FCP:       # %bb.0:610; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax611; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r10612; AVX2-FCP-NEXT:    vmovaps (%rdi), %xmm2613; AVX2-FCP-NEXT:    vmovaps (%rdx), %xmm3614; AVX2-FCP-NEXT:    vmovaps (%rcx), %xmm1615; AVX2-FCP-NEXT:    vmovaps (%r8), %xmm4616; AVX2-FCP-NEXT:    vmovaps (%r9), %xmm5617; AVX2-FCP-NEXT:    vmovaps (%r10), %xmm0618; AVX2-FCP-NEXT:    vinsertf128 $1, (%rsi), %ymm2, %ymm2619; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm1, %ymm3, %ymm3620; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm5, %ymm4, %ymm6621; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm7622; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm8 = ymm6[1,1,1,1,5,5,5,5]623; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm7 = ymm8[0,1,2,3,4],ymm7[5],ymm8[6,7]624; AVX2-FCP-NEXT:    vbroadcastsd {{.*#+}} ymm8 = [5,1,5,1,5,1,5,1]625; AVX2-FCP-NEXT:    vpermps %ymm3, %ymm8, %ymm8626; AVX2-FCP-NEXT:    vbroadcastf128 {{.*#+}} ymm9 = [5,0,2,6,5,0,2,6]627; AVX2-FCP-NEXT:    # ymm9 = mem[0,1,0,1]628; AVX2-FCP-NEXT:    vpermps %ymm2, %ymm9, %ymm9629; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm8 = ymm9[0],ymm8[1,2],ymm9[3,4,5,6,7]630; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm7 = ymm8[0,1,2],ymm7[3,4,5],ymm8[6,7]631; AVX2-FCP-NEXT:    vbroadcastsd {{.*#+}} ymm8 = [7,3,7,3,7,3,7,3]632; AVX2-FCP-NEXT:    vpermps %ymm2, %ymm8, %ymm8633; AVX2-FCP-NEXT:    vbroadcastf128 {{.*#+}} ymm9 = [2,6,0,3,2,6,0,3]634; AVX2-FCP-NEXT:    # ymm9 = mem[0,1,0,1]635; AVX2-FCP-NEXT:    vpermps %ymm3, %ymm9, %ymm9636; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm8 = ymm9[0,1,2,3,4],ymm8[5,6],ymm9[7]637; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm0, %ymm4, %ymm4638; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm4 = ymm4[2],ymm5[2],ymm4[3],ymm5[3],ymm4[6],ymm5[6],ymm4[7],ymm5[7]639; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm4 = ymm4[0,1,0,1,4,5,4,5]640; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm8[0,1],ymm4[2,3,4],ymm8[5,6,7]641; AVX2-FCP-NEXT:    vbroadcastsd {{.*#+}} ymm5 = [0,4,0,4,0,4,0,4]642; AVX2-FCP-NEXT:    vpermps %ymm3, %ymm5, %ymm3643; AVX2-FCP-NEXT:    vbroadcastf128 {{.*#+}} ymm8 = [0,4,0,1,0,4,0,1]644; AVX2-FCP-NEXT:    # ymm8 = mem[0,1,0,1]645; AVX2-FCP-NEXT:    vpermps %ymm2, %ymm8, %ymm2646; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1],ymm3[2,3],ymm2[4,5,6,7]647; AVX2-FCP-NEXT:    vpermps %ymm6, %ymm5, %ymm3648; AVX2-FCP-NEXT:    vbroadcastss (%r10), %ymm5649; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4,5],ymm5[6,7]650; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6],ymm2[7]651; AVX2-FCP-NEXT:    vbroadcastsd {{.*#+}} ymm3 = [7,3,7,3,7,3,7,3]652; AVX2-FCP-NEXT:    vpermps %ymm6, %ymm3, %ymm3653; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[3,3,3,3]654; AVX2-FCP-NEXT:    vmovss {{.*#+}} xmm1 = xmm1[0],xmm3[1,2,3]655; AVX2-FCP-NEXT:    vmovaps %ymm2, (%rax)656; AVX2-FCP-NEXT:    vmovaps %ymm4, 64(%rax)657; AVX2-FCP-NEXT:    vmovaps %ymm7, 32(%rax)658; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm0 = xmm1[0,1,2],xmm0[3]659; AVX2-FCP-NEXT:    vmovaps %xmm0, 96(%rax)660; AVX2-FCP-NEXT:    vzeroupper661; AVX2-FCP-NEXT:    retq662;663; AVX512-LABEL: store_i32_stride7_vf4:664; AVX512:       # %bb.0:665; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %rax666; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %r10667; AVX512-NEXT:    vmovdqa (%rdi), %xmm0668; AVX512-NEXT:    vmovdqa (%rdx), %xmm1669; AVX512-NEXT:    vmovdqa (%r8), %xmm2670; AVX512-NEXT:    vinserti128 $1, (%rcx), %ymm1, %ymm1671; AVX512-NEXT:    vinserti128 $1, (%rsi), %ymm0, %ymm0672; AVX512-NEXT:    vinserti64x4 $1, %ymm1, %zmm0, %zmm0673; AVX512-NEXT:    vinserti128 $1, (%r9), %ymm2, %ymm1674; AVX512-NEXT:    vinserti32x4 $2, (%r10), %zmm1, %zmm1675; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,4,8,12,16,20,24,1,5,9,13,17,21,25,2,6]676; AVX512-NEXT:    vpermi2d %zmm1, %zmm0, %zmm2677; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm3 = [10,14,18,22,26,3,7,11,15,19,23,27,0,0,0,0]678; AVX512-NEXT:    vpermi2d %zmm1, %zmm0, %zmm3679; AVX512-NEXT:    vextracti32x4 $2, %zmm3, 96(%rax)680; AVX512-NEXT:    vmovdqa64 %zmm2, (%rax)681; AVX512-NEXT:    vmovdqa %ymm3, 64(%rax)682; AVX512-NEXT:    vzeroupper683; AVX512-NEXT:    retq684;685; AVX512-FCP-LABEL: store_i32_stride7_vf4:686; AVX512-FCP:       # %bb.0:687; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax688; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r10689; AVX512-FCP-NEXT:    vmovdqa (%rdi), %xmm0690; AVX512-FCP-NEXT:    vmovdqa (%rdx), %xmm1691; AVX512-FCP-NEXT:    vmovdqa (%r8), %xmm2692; AVX512-FCP-NEXT:    vinserti128 $1, (%rcx), %ymm1, %ymm1693; AVX512-FCP-NEXT:    vinserti128 $1, (%rsi), %ymm0, %ymm0694; AVX512-FCP-NEXT:    vinserti64x4 $1, %ymm1, %zmm0, %zmm0695; AVX512-FCP-NEXT:    vinserti128 $1, (%r9), %ymm2, %ymm1696; AVX512-FCP-NEXT:    vinserti32x4 $2, (%r10), %zmm1, %zmm1697; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,4,8,12,16,20,24,1,5,9,13,17,21,25,2,6]698; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm2699; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm3 = [10,14,18,22,26,3,7,11,15,19,23,27,0,0,0,0]700; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm3701; AVX512-FCP-NEXT:    vextracti32x4 $2, %zmm3, 96(%rax)702; AVX512-FCP-NEXT:    vmovdqa64 %zmm2, (%rax)703; AVX512-FCP-NEXT:    vmovdqa %ymm3, 64(%rax)704; AVX512-FCP-NEXT:    vzeroupper705; AVX512-FCP-NEXT:    retq706;707; AVX512DQ-LABEL: store_i32_stride7_vf4:708; AVX512DQ:       # %bb.0:709; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %rax710; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %r10711; AVX512DQ-NEXT:    vmovdqa (%rdi), %xmm0712; AVX512DQ-NEXT:    vmovdqa (%rdx), %xmm1713; AVX512DQ-NEXT:    vmovdqa (%r8), %xmm2714; AVX512DQ-NEXT:    vinserti128 $1, (%rcx), %ymm1, %ymm1715; AVX512DQ-NEXT:    vinserti128 $1, (%rsi), %ymm0, %ymm0716; AVX512DQ-NEXT:    vinserti64x4 $1, %ymm1, %zmm0, %zmm0717; AVX512DQ-NEXT:    vinserti128 $1, (%r9), %ymm2, %ymm1718; AVX512DQ-NEXT:    vinserti32x4 $2, (%r10), %zmm1, %zmm1719; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,4,8,12,16,20,24,1,5,9,13,17,21,25,2,6]720; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm0, %zmm2721; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm3 = [10,14,18,22,26,3,7,11,15,19,23,27,0,0,0,0]722; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm0, %zmm3723; AVX512DQ-NEXT:    vextracti32x4 $2, %zmm3, 96(%rax)724; AVX512DQ-NEXT:    vmovdqa64 %zmm2, (%rax)725; AVX512DQ-NEXT:    vmovdqa %ymm3, 64(%rax)726; AVX512DQ-NEXT:    vzeroupper727; AVX512DQ-NEXT:    retq728;729; AVX512DQ-FCP-LABEL: store_i32_stride7_vf4:730; AVX512DQ-FCP:       # %bb.0:731; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax732; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r10733; AVX512DQ-FCP-NEXT:    vmovdqa (%rdi), %xmm0734; AVX512DQ-FCP-NEXT:    vmovdqa (%rdx), %xmm1735; AVX512DQ-FCP-NEXT:    vmovdqa (%r8), %xmm2736; AVX512DQ-FCP-NEXT:    vinserti128 $1, (%rcx), %ymm1, %ymm1737; AVX512DQ-FCP-NEXT:    vinserti128 $1, (%rsi), %ymm0, %ymm0738; AVX512DQ-FCP-NEXT:    vinserti64x4 $1, %ymm1, %zmm0, %zmm0739; AVX512DQ-FCP-NEXT:    vinserti128 $1, (%r9), %ymm2, %ymm1740; AVX512DQ-FCP-NEXT:    vinserti32x4 $2, (%r10), %zmm1, %zmm1741; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,4,8,12,16,20,24,1,5,9,13,17,21,25,2,6]742; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm2743; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm3 = [10,14,18,22,26,3,7,11,15,19,23,27,0,0,0,0]744; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm3745; AVX512DQ-FCP-NEXT:    vextracti32x4 $2, %zmm3, 96(%rax)746; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm2, (%rax)747; AVX512DQ-FCP-NEXT:    vmovdqa %ymm3, 64(%rax)748; AVX512DQ-FCP-NEXT:    vzeroupper749; AVX512DQ-FCP-NEXT:    retq750;751; AVX512BW-LABEL: store_i32_stride7_vf4:752; AVX512BW:       # %bb.0:753; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax754; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %r10755; AVX512BW-NEXT:    vmovdqa (%rdi), %xmm0756; AVX512BW-NEXT:    vmovdqa (%rdx), %xmm1757; AVX512BW-NEXT:    vmovdqa (%r8), %xmm2758; AVX512BW-NEXT:    vinserti128 $1, (%rcx), %ymm1, %ymm1759; AVX512BW-NEXT:    vinserti128 $1, (%rsi), %ymm0, %ymm0760; AVX512BW-NEXT:    vinserti64x4 $1, %ymm1, %zmm0, %zmm0761; AVX512BW-NEXT:    vinserti128 $1, (%r9), %ymm2, %ymm1762; AVX512BW-NEXT:    vinserti32x4 $2, (%r10), %zmm1, %zmm1763; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,4,8,12,16,20,24,1,5,9,13,17,21,25,2,6]764; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm2765; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm3 = [10,14,18,22,26,3,7,11,15,19,23,27,0,0,0,0]766; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm3767; AVX512BW-NEXT:    vextracti32x4 $2, %zmm3, 96(%rax)768; AVX512BW-NEXT:    vmovdqa64 %zmm2, (%rax)769; AVX512BW-NEXT:    vmovdqa %ymm3, 64(%rax)770; AVX512BW-NEXT:    vzeroupper771; AVX512BW-NEXT:    retq772;773; AVX512BW-FCP-LABEL: store_i32_stride7_vf4:774; AVX512BW-FCP:       # %bb.0:775; AVX512BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax776; AVX512BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r10777; AVX512BW-FCP-NEXT:    vmovdqa (%rdi), %xmm0778; AVX512BW-FCP-NEXT:    vmovdqa (%rdx), %xmm1779; AVX512BW-FCP-NEXT:    vmovdqa (%r8), %xmm2780; AVX512BW-FCP-NEXT:    vinserti128 $1, (%rcx), %ymm1, %ymm1781; AVX512BW-FCP-NEXT:    vinserti128 $1, (%rsi), %ymm0, %ymm0782; AVX512BW-FCP-NEXT:    vinserti64x4 $1, %ymm1, %zmm0, %zmm0783; AVX512BW-FCP-NEXT:    vinserti128 $1, (%r9), %ymm2, %ymm1784; AVX512BW-FCP-NEXT:    vinserti32x4 $2, (%r10), %zmm1, %zmm1785; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,4,8,12,16,20,24,1,5,9,13,17,21,25,2,6]786; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm2787; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm3 = [10,14,18,22,26,3,7,11,15,19,23,27,0,0,0,0]788; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm3789; AVX512BW-FCP-NEXT:    vextracti32x4 $2, %zmm3, 96(%rax)790; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm2, (%rax)791; AVX512BW-FCP-NEXT:    vmovdqa %ymm3, 64(%rax)792; AVX512BW-FCP-NEXT:    vzeroupper793; AVX512BW-FCP-NEXT:    retq794;795; AVX512DQ-BW-LABEL: store_i32_stride7_vf4:796; AVX512DQ-BW:       # %bb.0:797; AVX512DQ-BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax798; AVX512DQ-BW-NEXT:    movq {{[0-9]+}}(%rsp), %r10799; AVX512DQ-BW-NEXT:    vmovdqa (%rdi), %xmm0800; AVX512DQ-BW-NEXT:    vmovdqa (%rdx), %xmm1801; AVX512DQ-BW-NEXT:    vmovdqa (%r8), %xmm2802; AVX512DQ-BW-NEXT:    vinserti128 $1, (%rcx), %ymm1, %ymm1803; AVX512DQ-BW-NEXT:    vinserti128 $1, (%rsi), %ymm0, %ymm0804; AVX512DQ-BW-NEXT:    vinserti64x4 $1, %ymm1, %zmm0, %zmm0805; AVX512DQ-BW-NEXT:    vinserti128 $1, (%r9), %ymm2, %ymm1806; AVX512DQ-BW-NEXT:    vinserti32x4 $2, (%r10), %zmm1, %zmm1807; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,4,8,12,16,20,24,1,5,9,13,17,21,25,2,6]808; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm2809; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm3 = [10,14,18,22,26,3,7,11,15,19,23,27,0,0,0,0]810; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm0, %zmm3811; AVX512DQ-BW-NEXT:    vextracti32x4 $2, %zmm3, 96(%rax)812; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm2, (%rax)813; AVX512DQ-BW-NEXT:    vmovdqa %ymm3, 64(%rax)814; AVX512DQ-BW-NEXT:    vzeroupper815; AVX512DQ-BW-NEXT:    retq816;817; AVX512DQ-BW-FCP-LABEL: store_i32_stride7_vf4:818; AVX512DQ-BW-FCP:       # %bb.0:819; AVX512DQ-BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax820; AVX512DQ-BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r10821; AVX512DQ-BW-FCP-NEXT:    vmovdqa (%rdi), %xmm0822; AVX512DQ-BW-FCP-NEXT:    vmovdqa (%rdx), %xmm1823; AVX512DQ-BW-FCP-NEXT:    vmovdqa (%r8), %xmm2824; AVX512DQ-BW-FCP-NEXT:    vinserti128 $1, (%rcx), %ymm1, %ymm1825; AVX512DQ-BW-FCP-NEXT:    vinserti128 $1, (%rsi), %ymm0, %ymm0826; AVX512DQ-BW-FCP-NEXT:    vinserti64x4 $1, %ymm1, %zmm0, %zmm0827; AVX512DQ-BW-FCP-NEXT:    vinserti128 $1, (%r9), %ymm2, %ymm1828; AVX512DQ-BW-FCP-NEXT:    vinserti32x4 $2, (%r10), %zmm1, %zmm1829; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,4,8,12,16,20,24,1,5,9,13,17,21,25,2,6]830; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm2831; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm3 = [10,14,18,22,26,3,7,11,15,19,23,27,0,0,0,0]832; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm0, %zmm3833; AVX512DQ-BW-FCP-NEXT:    vextracti32x4 $2, %zmm3, 96(%rax)834; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm2, (%rax)835; AVX512DQ-BW-FCP-NEXT:    vmovdqa %ymm3, 64(%rax)836; AVX512DQ-BW-FCP-NEXT:    vzeroupper837; AVX512DQ-BW-FCP-NEXT:    retq838  %in.vec0 = load <4 x i32>, ptr %in.vecptr0, align 64839  %in.vec1 = load <4 x i32>, ptr %in.vecptr1, align 64840  %in.vec2 = load <4 x i32>, ptr %in.vecptr2, align 64841  %in.vec3 = load <4 x i32>, ptr %in.vecptr3, align 64842  %in.vec4 = load <4 x i32>, ptr %in.vecptr4, align 64843  %in.vec5 = load <4 x i32>, ptr %in.vecptr5, align 64844  %in.vec6 = load <4 x i32>, ptr %in.vecptr6, align 64845  %1 = shufflevector <4 x i32> %in.vec0, <4 x i32> %in.vec1, <8 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7>846  %2 = shufflevector <4 x i32> %in.vec2, <4 x i32> %in.vec3, <8 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7>847  %3 = shufflevector <4 x i32> %in.vec4, <4 x i32> %in.vec5, <8 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7>848  %4 = shufflevector <8 x i32> %1, <8 x i32> %2, <16 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15>849  %5 = shufflevector <4 x i32> %in.vec6, <4 x i32> poison, <8 x i32> <i32 0, i32 1, i32 2, i32 3, i32 undef, i32 undef, i32 undef, i32 undef>850  %6 = shufflevector <8 x i32> %3, <8 x i32> %5, <12 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11>851  %7 = shufflevector <12 x i32> %6, <12 x i32> poison, <16 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 undef, i32 undef, i32 undef, i32 undef>852  %8 = shufflevector <16 x i32> %4, <16 x i32> %7, <28 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27>853  %interleaved.vec = shufflevector <28 x i32> %8, <28 x i32> poison, <28 x i32> <i32 0, i32 4, i32 8, i32 12, i32 16, i32 20, i32 24, i32 1, i32 5, i32 9, i32 13, i32 17, i32 21, i32 25, i32 2, i32 6, i32 10, i32 14, i32 18, i32 22, i32 26, i32 3, i32 7, i32 11, i32 15, i32 19, i32 23, i32 27>854  store <28 x i32> %interleaved.vec, ptr %out.vec, align 64855  ret void856}857 858define void @store_i32_stride7_vf8(ptr %in.vecptr0, ptr %in.vecptr1, ptr %in.vecptr2, ptr %in.vecptr3, ptr %in.vecptr4, ptr %in.vecptr5, ptr %in.vecptr6, ptr %out.vec) nounwind {859; SSE-LABEL: store_i32_stride7_vf8:860; SSE:       # %bb.0:861; SSE-NEXT:    subq $24, %rsp862; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %rax863; SSE-NEXT:    movdqa (%rdi), %xmm3864; SSE-NEXT:    movdqa 16(%rdi), %xmm9865; SSE-NEXT:    movdqa (%rsi), %xmm1866; SSE-NEXT:    movdqa 16(%rsi), %xmm14867; SSE-NEXT:    movdqa 16(%rdx), %xmm6868; SSE-NEXT:    movdqa 16(%rcx), %xmm12869; SSE-NEXT:    movdqa 16(%r8), %xmm11870; SSE-NEXT:    movdqa (%r9), %xmm8871; SSE-NEXT:    movaps 16(%r9), %xmm15872; SSE-NEXT:    movdqa (%rax), %xmm10873; SSE-NEXT:    movaps 16(%rax), %xmm7874; SSE-NEXT:    movaps %xmm7, %xmm2875; SSE-NEXT:    shufps {{.*#+}} xmm2 = xmm2[3,3],xmm15[3,3]876; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm11[3,3,3,3]877; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm12[3,3,3,3]878; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm4[0],xmm0[1],xmm4[1]879; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,1],xmm2[2,0]880; SSE-NEXT:    movaps %xmm0, (%rsp) # 16-byte Spill881; SSE-NEXT:    movdqa %xmm11, %xmm2882; SSE-NEXT:    shufps {{.*#+}} xmm2 = xmm2[1,1],xmm12[1,1]883; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm6[1,1,1,1]884; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm14[1,1,1,1]885; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm4[0],xmm0[1],xmm4[1]886; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,1],xmm2[2,0]887; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill888; SSE-NEXT:    movdqa %xmm9, %xmm2889; SSE-NEXT:    punpckhdq {{.*#+}} xmm2 = xmm2[2],xmm14[2],xmm2[3],xmm14[3]890; SSE-NEXT:    movdqa %xmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill891; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm7[1,1,1,1]892; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm15[1,1,1,1]893; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm4[0],xmm0[1],xmm4[1]894; SSE-NEXT:    punpcklqdq {{.*#+}} xmm0 = xmm0[0],xmm2[0]895; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill896; SSE-NEXT:    pshufd {{.*#+}} xmm2 = xmm10[1,1,1,1]897; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm8[1,1,1,1]898; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1]899; SSE-NEXT:    movdqa %xmm3, %xmm2900; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill901; SSE-NEXT:    punpckhdq {{.*#+}} xmm2 = xmm2[2],xmm1[2],xmm2[3],xmm1[3]902; SSE-NEXT:    punpcklqdq {{.*#+}} xmm0 = xmm0[0],xmm2[0]903; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill904; SSE-NEXT:    movaps (%rdx), %xmm2905; SSE-NEXT:    pshufd {{.*#+}} xmm5 = xmm1[1,1,1,1]906; SSE-NEXT:    movaps %xmm2, %xmm13907; SSE-NEXT:    movss {{.*#+}} xmm13 = xmm5[0],xmm13[1,2,3]908; SSE-NEXT:    movaps (%rcx), %xmm0909; SSE-NEXT:    movaps (%r8), %xmm4910; SSE-NEXT:    movaps %xmm4, %xmm5911; SSE-NEXT:    shufps {{.*#+}} xmm5 = xmm5[1,1],xmm0[1,1]912; SSE-NEXT:    shufps {{.*#+}} xmm13 = xmm13[0,1],xmm5[2,0]913; SSE-NEXT:    movdqa %xmm6, %xmm5914; SSE-NEXT:    punpckhdq {{.*#+}} xmm5 = xmm5[2],xmm12[2],xmm5[3],xmm12[3]915; SSE-NEXT:    punpcklqdq {{.*#+}} xmm12 = xmm12[0],xmm6[0]916; SSE-NEXT:    movdqa %xmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill917; SSE-NEXT:    shufps {{.*#+}} xmm6 = xmm6[3,3],xmm14[3,3]918; SSE-NEXT:    movdqa %xmm9, %xmm14919; SSE-NEXT:    shufps {{.*#+}} xmm14 = xmm14[1,1],xmm7[0,3]920; SSE-NEXT:    shufps {{.*#+}} xmm7 = xmm7[2,1],xmm9[3,3]921; SSE-NEXT:    shufps {{.*#+}} xmm7 = xmm7[0,2],xmm6[2,0]922; SSE-NEXT:    movdqa %xmm11, %xmm6923; SSE-NEXT:    punpckldq {{.*#+}} xmm6 = xmm6[0],xmm15[0],xmm6[1],xmm15[1]924; SSE-NEXT:    movdqa %xmm15, %xmm12925; SSE-NEXT:    shufps {{.*#+}} xmm6 = xmm6[0,1],xmm14[2,0]926; SSE-NEXT:    movaps %xmm4, %xmm15927; SSE-NEXT:    movdqa %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill928; SSE-NEXT:    unpckhps {{.*#+}} xmm15 = xmm15[2],xmm8[2],xmm15[3],xmm8[3]929; SSE-NEXT:    movaps %xmm2, %xmm14930; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill931; SSE-NEXT:    unpckhps {{.*#+}} xmm14 = xmm14[2],xmm0[2],xmm14[3],xmm0[3]932; SSE-NEXT:    movlhps {{.*#+}} xmm14 = xmm14[0],xmm15[0]933; SSE-NEXT:    movdqa %xmm10, %xmm15934; SSE-NEXT:    movdqa %xmm3, %xmm1935; SSE-NEXT:    shufps {{.*#+}} xmm15 = xmm15[0,1],xmm3[1,3]936; SSE-NEXT:    movaps %xmm4, %xmm3937; SSE-NEXT:    unpcklps {{.*#+}} xmm3 = xmm3[0],xmm8[0],xmm3[1],xmm8[1]938; SSE-NEXT:    shufps {{.*#+}} xmm3 = xmm3[0,1],xmm15[0,2]939; SSE-NEXT:    movaps %xmm2, %xmm15940; SSE-NEXT:    unpcklps {{.*#+}} xmm15 = xmm15[0],xmm0[0],xmm15[1],xmm0[1]941; SSE-NEXT:    movdqa %xmm1, %xmm8942; SSE-NEXT:    movdqa %xmm1, %xmm0943; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload944; SSE-NEXT:    punpckldq {{.*#+}} xmm8 = xmm8[0],xmm1[0],xmm8[1],xmm1[1]945; SSE-NEXT:    punpcklqdq {{.*#+}} xmm8 = xmm8[0],xmm15[0]946; SSE-NEXT:    punpckhdq {{.*#+}} xmm11 = xmm11[2],xmm12[2],xmm11[3],xmm12[3]947; SSE-NEXT:    punpcklqdq {{.*#+}} xmm5 = xmm5[0],xmm11[0]948; SSE-NEXT:    unpcklps {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload949; SSE-NEXT:    # xmm9 = xmm9[0],mem[0],xmm9[1],mem[1]950; SSE-NEXT:    shufps $36, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Folded Reload951; SSE-NEXT:    # xmm9 = xmm9[0,1],mem[2,0]952; SSE-NEXT:    shufps {{.*#+}} xmm2 = xmm2[3,3],xmm1[3,3]953; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,3],xmm2[2,0]954; SSE-NEXT:    pshufd {{.*#+}} xmm2 = xmm10[2,3,2,3]955; SSE-NEXT:    movss {{.*#+}} xmm0 = xmm2[0],xmm0[1,2,3]956; SSE-NEXT:    movaps %xmm0, %xmm1957; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Folded Reload958; SSE-NEXT:    # xmm10 = xmm10[3,3],mem[3,3]959; SSE-NEXT:    shufps {{.*#+}} xmm4 = xmm4[0,3],xmm10[2,0]960; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Folded Reload961; SSE-NEXT:    # xmm2 = mem[3,3,3,3]962; SSE-NEXT:    movss {{.*#+}} xmm4 = xmm2[0],xmm4[1,2,3]963; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %rax964; SSE-NEXT:    movaps %xmm9, 112(%rax)965; SSE-NEXT:    movdqa %xmm5, 176(%rax)966; SSE-NEXT:    movdqa %xmm8, (%rax)967; SSE-NEXT:    movaps %xmm3, 16(%rax)968; SSE-NEXT:    movaps %xmm14, 64(%rax)969; SSE-NEXT:    movaps %xmm6, 128(%rax)970; SSE-NEXT:    movaps %xmm7, 192(%rax)971; SSE-NEXT:    movaps %xmm13, 32(%rax)972; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload973; SSE-NEXT:    movaps %xmm0, 48(%rax)974; SSE-NEXT:    movaps %xmm4, 96(%rax)975; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload976; SSE-NEXT:    movaps %xmm0, 160(%rax)977; SSE-NEXT:    movaps %xmm1, 80(%rax)978; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload979; SSE-NEXT:    movaps %xmm0, 144(%rax)980; SSE-NEXT:    movaps (%rsp), %xmm0 # 16-byte Reload981; SSE-NEXT:    movaps %xmm0, 208(%rax)982; SSE-NEXT:    addq $24, %rsp983; SSE-NEXT:    retq984;985; AVX-LABEL: store_i32_stride7_vf8:986; AVX:       # %bb.0:987; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %rax988; AVX-NEXT:    vmovaps (%rdi), %ymm0989; AVX-NEXT:    vmovaps (%rsi), %ymm1990; AVX-NEXT:    vmovaps (%rdx), %ymm2991; AVX-NEXT:    vmovaps (%rcx), %ymm3992; AVX-NEXT:    vmovaps (%r8), %ymm7993; AVX-NEXT:    vmovaps (%r9), %ymm8994; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm2[1,1],ymm3[1,1],ymm2[5,5],ymm3[5,5]995; AVX-NEXT:    vshufps {{.*#+}} ymm5 = ymm1[1,1],ymm0[1,1],ymm1[5,5],ymm0[5,5]996; AVX-NEXT:    vperm2f128 {{.*#+}} ymm5 = ymm5[2,3,2,3]997; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm5[0,1,2,3,4],ymm4[5,6],ymm5[7]998; AVX-NEXT:    vunpcklpd {{.*#+}} ymm5 = ymm8[0],ymm7[0],ymm8[2],ymm7[2]999; AVX-NEXT:    vshufps {{.*#+}} ymm5 = ymm5[2,0],ymm7[2,1],ymm5[6,4],ymm7[6,5]1000; AVX-NEXT:    vperm2f128 {{.*#+}} ymm6 = mem[2,3],ymm5[2,3]1001; AVX-NEXT:    vextractf128 $1, %ymm5, %xmm51002; AVX-NEXT:    vshufpd {{.*#+}} ymm5 = ymm5[0],ymm6[0],ymm5[2],ymm6[3]1003; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm5[0,1,2],ymm4[3,4,5,6],ymm5[7]1004; AVX-NEXT:    vmovups %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill1005; AVX-NEXT:    vmovaps (%r8), %xmm51006; AVX-NEXT:    vmovaps (%r9), %xmm61007; AVX-NEXT:    vshufps {{.*#+}} xmm4 = xmm6[1,1],xmm5[1,1]1008; AVX-NEXT:    vinsertf128 $1, %xmm4, %ymm4, %ymm41009; AVX-NEXT:    vmovaps (%rsi), %xmm111010; AVX-NEXT:    vmovaps (%rdi), %xmm121011; AVX-NEXT:    vunpckhpd {{.*#+}} xmm9 = xmm12[1],xmm11[1]1012; AVX-NEXT:    vshufps {{.*#+}} xmm9 = xmm11[1,1],xmm9[0,2]1013; AVX-NEXT:    vinsertf128 $1, %xmm9, %ymm9, %ymm91014; AVX-NEXT:    vmovaps (%rcx), %xmm151015; AVX-NEXT:    vmovaps (%rdx), %xmm141016; AVX-NEXT:    vinsertps {{.*#+}} xmm10 = zero,xmm14[1],xmm15[1],zero1017; AVX-NEXT:    vblendps {{.*#+}} ymm9 = ymm9[0],ymm10[1,2],ymm9[3,4,5,6,7]1018; AVX-NEXT:    vmovaps (%rax), %xmm101019; AVX-NEXT:    vinsertf128 $1, %xmm10, %ymm0, %ymm131020; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4],ymm13[5],ymm4[6,7]1021; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm9[0,1,2],ymm4[3,4,5],ymm9[6,7]1022; AVX-NEXT:    vmovups %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill1023; AVX-NEXT:    vunpcklps {{.*#+}} xmm4 = xmm5[0],xmm6[0],xmm5[1],xmm6[1]1024; AVX-NEXT:    vinsertf128 $1, %xmm4, %ymm0, %ymm41025; AVX-NEXT:    vunpcklpd {{.*#+}} ymm4 = ymm4[0],ymm13[0],ymm4[2],ymm13[2]1026; AVX-NEXT:    vmovlhps {{.*#+}} xmm13 = xmm11[0],xmm12[0]1027; AVX-NEXT:    vshufps {{.*#+}} xmm13 = xmm13[2,0],xmm12[2,1]1028; AVX-NEXT:    vinsertf128 $1, %xmm13, %ymm13, %ymm131029; AVX-NEXT:    vunpcklps {{.*#+}} xmm9 = xmm14[0],xmm15[0],xmm14[1],xmm15[1]1030; AVX-NEXT:    vshufps {{.*#+}} xmm9 = xmm9[0,1,0,1]1031; AVX-NEXT:    vblendps {{.*#+}} ymm9 = ymm13[0,1],ymm9[2,3],ymm13[4,5,6,7]1032; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm9[0,1,2,3],ymm4[4,5,6],ymm9[7]1033; AVX-NEXT:    vmovups %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill1034; AVX-NEXT:    vunpckhpd {{.*#+}} ymm4 = ymm1[1],ymm0[1],ymm1[3],ymm0[3]1035; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm4[0,1,2,0,4,5,6,4]1036; AVX-NEXT:    vunpckhps {{.*#+}} ymm9 = ymm2[2],ymm3[2],ymm2[3],ymm3[3],ymm2[6],ymm3[6],ymm2[7],ymm3[7]1037; AVX-NEXT:    vperm2f128 {{.*#+}} ymm4 = ymm4[2,3],ymm9[2,3]1038; AVX-NEXT:    vunpckhpd {{.*#+}} ymm9 = ymm7[1],ymm8[1],ymm7[3],ymm8[3]1039; AVX-NEXT:    vshufps {{.*#+}} ymm9 = ymm8[1,1],ymm9[0,2],ymm8[5,5],ymm9[4,6]1040; AVX-NEXT:    vperm2f128 {{.*#+}} ymm9 = ymm9[2,3,2,3]1041; AVX-NEXT:    vmovaps 16(%rax), %xmm131042; AVX-NEXT:    vblendps {{.*#+}} ymm9 = ymm9[0],ymm13[1],ymm9[2,3,4,5,6,7]1043; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm9[0,1],ymm4[2,3,4,5],ymm9[6,7]1044; AVX-NEXT:    vshufps {{.*#+}} ymm9 = ymm3[3,3],ymm2[3,3],ymm3[7,7],ymm2[7,7]1045; AVX-NEXT:    vperm2f128 {{.*#+}} ymm9 = ymm9[2,3,2,3]1046; AVX-NEXT:    vshufps {{.*#+}} ymm13 = ymm0[3,3],ymm1[3,3],ymm0[7,7],ymm1[7,7]1047; AVX-NEXT:    vextractf128 $1, %ymm13, %xmm131048; AVX-NEXT:    vblendps {{.*#+}} ymm9 = ymm13[0,1,2],ymm9[3,4,5,6,7]1049; AVX-NEXT:    vshufps {{.*#+}} ymm7 = ymm7[3,3],ymm8[3,3],ymm7[7,7],ymm8[7,7]1050; AVX-NEXT:    vblendps {{.*#+}} ymm7 = ymm9[0,1,2,3,4],ymm7[5,6],ymm9[7]1051; AVX-NEXT:    vbroadcastsd 24(%rax), %ymm81052; AVX-NEXT:    vblendps {{.*#+}} ymm7 = ymm8[0],ymm7[1,2,3,4,5,6],ymm8[7]1053; AVX-NEXT:    vshufps {{.*#+}} xmm8 = xmm12[3,3],xmm11[3,3]1054; AVX-NEXT:    vinsertf128 $1, %xmm8, %ymm0, %ymm81055; AVX-NEXT:    vunpckhps {{.*#+}} xmm9 = xmm14[2],xmm15[2],xmm14[3],xmm15[3]1056; AVX-NEXT:    vinsertf128 $1, %xmm14, %ymm9, %ymm91057; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm9[0,1,2,3,4],ymm8[5,6],ymm9[7]1058; AVX-NEXT:    vshufps {{.*#+}} xmm9 = xmm6[2,2,2,2]1059; AVX-NEXT:    vblendps {{.*#+}} xmm9 = xmm5[0,1,2],xmm9[3]1060; AVX-NEXT:    vbroadcastsd 8(%rax), %ymm111061; AVX-NEXT:    vblendps {{.*#+}} ymm9 = ymm9[0,1,2,3],ymm11[4,5,6,7]1062; AVX-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1],ymm9[2,3,4],ymm8[5,6,7]1063; AVX-NEXT:    vunpcklps {{.*#+}} ymm0 = ymm0[0],ymm1[0],ymm0[1],ymm1[1],ymm0[4],ymm1[4],ymm0[5],ymm1[5]1064; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm2[0],ymm3[0],ymm2[2],ymm3[2]1065; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm3[3,1],ymm1[0,2],ymm3[7,5],ymm1[4,6]1066; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3],ymm0[4,5],ymm1[6,7]1067; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm5[3,3],xmm6[3,3]1068; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1,2],xmm10[3]1069; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm1[1,2,3],ymm0[4,5,6,7]1070; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %rax1071; AVX-NEXT:    vmovaps %ymm0, 96(%rax)1072; AVX-NEXT:    vmovaps %ymm8, 64(%rax)1073; AVX-NEXT:    vmovaps %ymm4, 160(%rax)1074; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload1075; AVX-NEXT:    vmovaps %ymm0, (%rax)1076; AVX-NEXT:    vmovaps %ymm7, 192(%rax)1077; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload1078; AVX-NEXT:    vmovaps %ymm0, 32(%rax)1079; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload1080; AVX-NEXT:    vmovaps %ymm0, 128(%rax)1081; AVX-NEXT:    vzeroupper1082; AVX-NEXT:    retq1083;1084; AVX2-LABEL: store_i32_stride7_vf8:1085; AVX2:       # %bb.0:1086; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %rax1087; AVX2-NEXT:    vmovaps (%rdi), %ymm01088; AVX2-NEXT:    vmovaps (%rsi), %ymm21089; AVX2-NEXT:    vmovaps (%rdx), %ymm91090; AVX2-NEXT:    vmovaps (%rcx), %ymm31091; AVX2-NEXT:    vmovaps (%r8), %ymm61092; AVX2-NEXT:    vmovaps (%r9), %ymm71093; AVX2-NEXT:    vmovaps (%rax), %xmm11094; AVX2-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm81095; AVX2-NEXT:    vmovaps (%r8), %xmm41096; AVX2-NEXT:    vmovaps (%r9), %xmm51097; AVX2-NEXT:    vshufps {{.*#+}} xmm10 = xmm5[1,1,1,1]1098; AVX2-NEXT:    vblendps {{.*#+}} xmm10 = xmm10[0],xmm4[1],xmm10[2,3]1099; AVX2-NEXT:    vbroadcastsd %xmm10, %ymm101100; AVX2-NEXT:    vblendps {{.*#+}} ymm8 = ymm10[0,1,2,3,4],ymm8[5],ymm10[6,7]1101; AVX2-NEXT:    vmovaps (%rcx), %xmm121102; AVX2-NEXT:    vmovaps (%rdx), %xmm131103; AVX2-NEXT:    vinsertps {{.*#+}} xmm10 = zero,xmm13[1],xmm12[1],zero1104; AVX2-NEXT:    vmovaps (%rdi), %xmm141105; AVX2-NEXT:    vmovaps (%rsi), %xmm151106; AVX2-NEXT:    vshufps {{.*#+}} xmm11 = xmm15[1,1,2,2]1107; AVX2-NEXT:    vblendps {{.*#+}} xmm11 = xmm11[0,1],xmm14[2],xmm11[3]1108; AVX2-NEXT:    vpermpd {{.*#+}} ymm11 = ymm11[0,1,2,1]1109; AVX2-NEXT:    vblendps {{.*#+}} ymm10 = ymm11[0],ymm10[1,2],ymm11[3,4,5,6,7]1110; AVX2-NEXT:    vblendps {{.*#+}} ymm8 = ymm10[0,1,2],ymm8[3,4,5],ymm10[6,7]1111; AVX2-NEXT:    vmovups %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill1112; AVX2-NEXT:    vunpckhps {{.*#+}} ymm10 = ymm9[2],ymm3[2],ymm9[3],ymm3[3],ymm9[6],ymm3[6],ymm9[7],ymm3[7]1113; AVX2-NEXT:    vunpckhps {{.*#+}} ymm11 = ymm0[2],ymm2[2],ymm0[3],ymm2[3],ymm0[6],ymm2[6],ymm0[7],ymm2[7]1114; AVX2-NEXT:    vpermpd {{.*#+}} ymm11 = ymm11[2,2,2,2]1115; AVX2-NEXT:    vblendps {{.*#+}} ymm10 = ymm11[0,1,2,3],ymm10[4,5,6,7]1116; AVX2-NEXT:    vshufps {{.*#+}} ymm11 = ymm7[1,1,2,2,5,5,6,6]1117; AVX2-NEXT:    vblendps {{.*#+}} ymm11 = ymm11[0,1],ymm6[2],ymm11[3,4,5],ymm6[6],ymm11[7]1118; AVX2-NEXT:    vpermpd {{.*#+}} ymm11 = ymm11[2,1,2,3]1119; AVX2-NEXT:    vmovaps 16(%rax), %xmm81120; AVX2-NEXT:    vblendps {{.*#+}} ymm8 = ymm11[0],ymm8[1],ymm11[2,3,4,5,6,7]1121; AVX2-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1],ymm10[2,3,4,5],ymm8[6,7]1122; AVX2-NEXT:    vmovups %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill1123; AVX2-NEXT:    vshufps {{.*#+}} xmm8 = xmm14[3,3],xmm15[3,3]1124; AVX2-NEXT:    vinsertf128 $1, %xmm8, %ymm0, %ymm81125; AVX2-NEXT:    vunpckhps {{.*#+}} xmm11 = xmm13[2],xmm12[2],xmm13[3],xmm12[3]1126; AVX2-NEXT:    vshufps {{.*#+}} xmm11 = xmm11[0,1,2,2]1127; AVX2-NEXT:    vpermpd {{.*#+}} ymm11 = ymm11[0,1,2,1]1128; AVX2-NEXT:    vblendps {{.*#+}} ymm8 = ymm11[0,1,2,3,4],ymm8[5,6],ymm11[7]1129; AVX2-NEXT:    vshufps {{.*#+}} xmm11 = xmm5[2,2,2,2]1130; AVX2-NEXT:    vblendps {{.*#+}} xmm11 = xmm4[0,1,2],xmm11[3]1131; AVX2-NEXT:    vbroadcastsd 8(%rax), %ymm101132; AVX2-NEXT:    vblendps {{.*#+}} ymm10 = ymm11[0,1,2,3],ymm10[4,5,6,7]1133; AVX2-NEXT:    vblendps {{.*#+}} ymm11 = ymm8[0,1],ymm10[2,3,4],ymm8[5,6,7]1134; AVX2-NEXT:    vbroadcastss %xmm12, %xmm81135; AVX2-NEXT:    vbroadcastss %xmm13, %xmm101136; AVX2-NEXT:    vunpcklps {{.*#+}} xmm8 = xmm10[0],xmm8[0],xmm10[1],xmm8[1]1137; AVX2-NEXT:    vunpcklps {{.*#+}} xmm10 = xmm14[0],xmm15[0],xmm14[1],xmm15[1]1138; AVX2-NEXT:    vshufps {{.*#+}} xmm10 = xmm10[0,1,2,2]1139; AVX2-NEXT:    vpermpd {{.*#+}} ymm10 = ymm10[0,1,2,1]1140; AVX2-NEXT:    vblendps {{.*#+}} ymm8 = ymm10[0,1],ymm8[2,3],ymm10[4,5,6,7]1141; AVX2-NEXT:    vunpcklps {{.*#+}} xmm10 = xmm4[0],xmm5[0],xmm4[1],xmm5[1]1142; AVX2-NEXT:    vinsertf128 $1, %xmm10, %ymm0, %ymm101143; AVX2-NEXT:    vbroadcastsd %xmm1, %ymm121144; AVX2-NEXT:    vunpcklpd {{.*#+}} ymm10 = ymm10[0],ymm12[0],ymm10[2],ymm12[2]1145; AVX2-NEXT:    vblendps {{.*#+}} ymm12 = ymm8[0,1,2,3],ymm10[4,5,6],ymm8[7]1146; AVX2-NEXT:    vshufps {{.*#+}} ymm8 = ymm9[1,1],ymm3[1,1],ymm9[5,5],ymm3[5,5]1147; AVX2-NEXT:    vshufps {{.*#+}} ymm10 = ymm2[1,1,1,1,5,5,5,5]1148; AVX2-NEXT:    vblendps {{.*#+}} ymm10 = ymm10[0],ymm0[1],ymm10[2,3,4],ymm0[5],ymm10[6,7]1149; AVX2-NEXT:    vpermpd {{.*#+}} ymm10 = ymm10[2,2,2,2]1150; AVX2-NEXT:    vblendps {{.*#+}} ymm8 = ymm10[0,1,2,3,4],ymm8[5,6],ymm10[7]1151; AVX2-NEXT:    vshufps {{.*#+}} ymm10 = ymm7[0,0,0,0,4,4,4,4]1152; AVX2-NEXT:    vshufps {{.*#+}} ymm13 = ymm6[0,1,0,1,4,5,4,5]1153; AVX2-NEXT:    vblendps {{.*#+}} ymm10 = ymm13[0],ymm10[1],ymm13[2,3,4],ymm10[5],ymm13[6,7]1154; AVX2-NEXT:    vpermpd {{.*#+}} ymm10 = ymm10[2,1,2,3]1155; AVX2-NEXT:    vbroadcastsd 16(%rax), %ymm131156; AVX2-NEXT:    vblendps {{.*#+}} ymm10 = ymm10[0,1],ymm13[2,3],ymm10[4,5,6,7]1157; AVX2-NEXT:    vblendps {{.*#+}} ymm8 = ymm10[0,1,2],ymm8[3,4,5,6],ymm10[7]1158; AVX2-NEXT:    vunpckhps {{.*#+}} ymm9 = ymm3[2],ymm9[2],ymm3[3],ymm9[3],ymm3[6],ymm9[6],ymm3[7],ymm9[7]1159; AVX2-NEXT:    vpermpd {{.*#+}} ymm9 = ymm9[3,3,3,3]1160; AVX2-NEXT:    vunpckhps {{.*#+}} ymm10 = ymm2[2],ymm0[2],ymm2[3],ymm0[3],ymm2[6],ymm0[6],ymm2[7],ymm0[7]1161; AVX2-NEXT:    vpermpd {{.*#+}} ymm10 = ymm10[3,3,3,3]1162; AVX2-NEXT:    vblendps {{.*#+}} ymm9 = ymm10[0,1,2],ymm9[3,4,5,6,7]1163; AVX2-NEXT:    vshufps {{.*#+}} ymm6 = ymm6[3,3],ymm7[3,3],ymm6[7,7],ymm7[7,7]1164; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm9[0,1,2,3,4],ymm6[5,6],ymm9[7]1165; AVX2-NEXT:    vbroadcastsd 24(%rax), %ymm71166; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0],ymm6[1,2,3,4,5,6],ymm7[7]1167; AVX2-NEXT:    vunpcklps {{.*#+}} ymm0 = ymm0[0],ymm2[0],ymm0[1],ymm2[1],ymm0[4],ymm2[4],ymm0[5],ymm2[5]1168; AVX2-NEXT:    vbroadcastss 16(%rdx), %ymm21169; AVX2-NEXT:    vshufps {{.*#+}} ymm3 = ymm3[3,1,2,0,7,5,6,4]1170; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm3[0,1,2,3,4,5],ymm2[6],ymm3[7]1171; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2,3],ymm0[4,5],ymm2[6,7]1172; AVX2-NEXT:    vshufps {{.*#+}} xmm2 = xmm4[3,3],xmm5[3,3]1173; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm2[0,1,2],xmm1[3]1174; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm1[1,2,3],ymm0[4,5,6,7]1175; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %rax1176; AVX2-NEXT:    vmovaps %ymm0, 96(%rax)1177; AVX2-NEXT:    vmovaps %ymm6, 192(%rax)1178; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload1179; AVX2-NEXT:    vmovaps %ymm0, 160(%rax)1180; AVX2-NEXT:    vmovaps %ymm8, 128(%rax)1181; AVX2-NEXT:    vmovaps %ymm12, (%rax)1182; AVX2-NEXT:    vmovaps %ymm11, 64(%rax)1183; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload1184; AVX2-NEXT:    vmovaps %ymm0, 32(%rax)1185; AVX2-NEXT:    vzeroupper1186; AVX2-NEXT:    retq1187;1188; AVX2-FP-LABEL: store_i32_stride7_vf8:1189; AVX2-FP:       # %bb.0:1190; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %rax1191; AVX2-FP-NEXT:    vmovaps (%rdi), %ymm01192; AVX2-FP-NEXT:    vmovaps (%rsi), %ymm21193; AVX2-FP-NEXT:    vmovaps (%rdx), %ymm91194; AVX2-FP-NEXT:    vmovaps (%rcx), %ymm31195; AVX2-FP-NEXT:    vmovaps (%r8), %ymm61196; AVX2-FP-NEXT:    vmovaps (%r9), %ymm71197; AVX2-FP-NEXT:    vmovaps (%rax), %xmm11198; AVX2-FP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm81199; AVX2-FP-NEXT:    vmovaps (%r8), %xmm41200; AVX2-FP-NEXT:    vmovaps (%r9), %xmm51201; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm10 = xmm5[1,1,1,1]1202; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm10 = xmm10[0],xmm4[1],xmm10[2,3]1203; AVX2-FP-NEXT:    vbroadcastsd %xmm10, %ymm101204; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm8 = ymm10[0,1,2,3,4],ymm8[5],ymm10[6,7]1205; AVX2-FP-NEXT:    vmovaps (%rcx), %xmm121206; AVX2-FP-NEXT:    vmovaps (%rdx), %xmm131207; AVX2-FP-NEXT:    vinsertps {{.*#+}} xmm10 = zero,xmm13[1],xmm12[1],zero1208; AVX2-FP-NEXT:    vmovaps (%rdi), %xmm141209; AVX2-FP-NEXT:    vmovaps (%rsi), %xmm151210; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm11 = xmm15[1,1,2,2]1211; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm11 = xmm11[0,1],xmm14[2],xmm11[3]1212; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm11 = ymm11[0,1,2,1]1213; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm10 = ymm11[0],ymm10[1,2],ymm11[3,4,5,6,7]1214; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm8 = ymm10[0,1,2],ymm8[3,4,5],ymm10[6,7]1215; AVX2-FP-NEXT:    vmovups %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill1216; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm10 = ymm9[2],ymm3[2],ymm9[3],ymm3[3],ymm9[6],ymm3[6],ymm9[7],ymm3[7]1217; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm11 = ymm0[2],ymm2[2],ymm0[3],ymm2[3],ymm0[6],ymm2[6],ymm0[7],ymm2[7]1218; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm11 = ymm11[2,2,2,2]1219; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm10 = ymm11[0,1,2,3],ymm10[4,5,6,7]1220; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm11 = ymm7[1,1,2,2,5,5,6,6]1221; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm11 = ymm11[0,1],ymm6[2],ymm11[3,4,5],ymm6[6],ymm11[7]1222; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm11 = ymm11[2,1,2,3]1223; AVX2-FP-NEXT:    vmovaps 16(%rax), %xmm81224; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm8 = ymm11[0],ymm8[1],ymm11[2,3,4,5,6,7]1225; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1],ymm10[2,3,4,5],ymm8[6,7]1226; AVX2-FP-NEXT:    vmovups %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill1227; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm8 = xmm14[3,3],xmm15[3,3]1228; AVX2-FP-NEXT:    vinsertf128 $1, %xmm8, %ymm0, %ymm81229; AVX2-FP-NEXT:    vunpckhps {{.*#+}} xmm11 = xmm13[2],xmm12[2],xmm13[3],xmm12[3]1230; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm11 = xmm11[0,1,2,2]1231; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm11 = ymm11[0,1,2,1]1232; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm8 = ymm11[0,1,2,3,4],ymm8[5,6],ymm11[7]1233; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm11 = xmm5[2,2,2,2]1234; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm11 = xmm4[0,1,2],xmm11[3]1235; AVX2-FP-NEXT:    vbroadcastsd 8(%rax), %ymm101236; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm10 = ymm11[0,1,2,3],ymm10[4,5,6,7]1237; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm11 = ymm8[0,1],ymm10[2,3,4],ymm8[5,6,7]1238; AVX2-FP-NEXT:    vbroadcastss %xmm12, %xmm81239; AVX2-FP-NEXT:    vbroadcastss %xmm13, %xmm101240; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm8 = xmm10[0],xmm8[0],xmm10[1],xmm8[1]1241; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm10 = xmm14[0],xmm15[0],xmm14[1],xmm15[1]1242; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm10 = xmm10[0,1,2,2]1243; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm10 = ymm10[0,1,2,1]1244; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm8 = ymm10[0,1],ymm8[2,3],ymm10[4,5,6,7]1245; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm10 = xmm4[0],xmm5[0],xmm4[1],xmm5[1]1246; AVX2-FP-NEXT:    vinsertf128 $1, %xmm10, %ymm0, %ymm101247; AVX2-FP-NEXT:    vbroadcastsd %xmm1, %ymm121248; AVX2-FP-NEXT:    vunpcklpd {{.*#+}} ymm10 = ymm10[0],ymm12[0],ymm10[2],ymm12[2]1249; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm12 = ymm8[0,1,2,3],ymm10[4,5,6],ymm8[7]1250; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm8 = ymm9[1,1],ymm3[1,1],ymm9[5,5],ymm3[5,5]1251; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm10 = ymm2[1,1,1,1,5,5,5,5]1252; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm10 = ymm10[0],ymm0[1],ymm10[2,3,4],ymm0[5],ymm10[6,7]1253; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm10 = ymm10[2,2,2,2]1254; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm8 = ymm10[0,1,2,3,4],ymm8[5,6],ymm10[7]1255; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm10 = ymm7[0,0,0,0,4,4,4,4]1256; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm13 = ymm6[0,1,0,1,4,5,4,5]1257; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm10 = ymm13[0],ymm10[1],ymm13[2,3,4],ymm10[5],ymm13[6,7]1258; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm10 = ymm10[2,1,2,3]1259; AVX2-FP-NEXT:    vbroadcastsd 16(%rax), %ymm131260; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm10 = ymm10[0,1],ymm13[2,3],ymm10[4,5,6,7]1261; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm8 = ymm10[0,1,2],ymm8[3,4,5,6],ymm10[7]1262; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm9 = ymm3[2],ymm9[2],ymm3[3],ymm9[3],ymm3[6],ymm9[6],ymm3[7],ymm9[7]1263; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm9 = ymm9[3,3,3,3]1264; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm10 = ymm2[2],ymm0[2],ymm2[3],ymm0[3],ymm2[6],ymm0[6],ymm2[7],ymm0[7]1265; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm10 = ymm10[3,3,3,3]1266; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm9 = ymm10[0,1,2],ymm9[3,4,5,6,7]1267; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm6 = ymm6[3,3],ymm7[3,3],ymm6[7,7],ymm7[7,7]1268; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm9[0,1,2,3,4],ymm6[5,6],ymm9[7]1269; AVX2-FP-NEXT:    vbroadcastsd 24(%rax), %ymm71270; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0],ymm6[1,2,3,4,5,6],ymm7[7]1271; AVX2-FP-NEXT:    vunpcklps {{.*#+}} ymm0 = ymm0[0],ymm2[0],ymm0[1],ymm2[1],ymm0[4],ymm2[4],ymm0[5],ymm2[5]1272; AVX2-FP-NEXT:    vbroadcastss 16(%rdx), %ymm21273; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm3 = ymm3[3,1,2,0,7,5,6,4]1274; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm3[0,1,2,3,4,5],ymm2[6],ymm3[7]1275; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2,3],ymm0[4,5],ymm2[6,7]1276; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm2 = xmm4[3,3],xmm5[3,3]1277; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm2[0,1,2],xmm1[3]1278; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm1[1,2,3],ymm0[4,5,6,7]1279; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %rax1280; AVX2-FP-NEXT:    vmovaps %ymm0, 96(%rax)1281; AVX2-FP-NEXT:    vmovaps %ymm6, 192(%rax)1282; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload1283; AVX2-FP-NEXT:    vmovaps %ymm0, 160(%rax)1284; AVX2-FP-NEXT:    vmovaps %ymm8, 128(%rax)1285; AVX2-FP-NEXT:    vmovaps %ymm12, (%rax)1286; AVX2-FP-NEXT:    vmovaps %ymm11, 64(%rax)1287; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload1288; AVX2-FP-NEXT:    vmovaps %ymm0, 32(%rax)1289; AVX2-FP-NEXT:    vzeroupper1290; AVX2-FP-NEXT:    retq1291;1292; AVX2-FCP-LABEL: store_i32_stride7_vf8:1293; AVX2-FCP:       # %bb.0:1294; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax1295; AVX2-FCP-NEXT:    vmovaps (%rdi), %ymm11296; AVX2-FCP-NEXT:    vmovaps (%rsi), %ymm21297; AVX2-FCP-NEXT:    vmovaps (%rdx), %ymm101298; AVX2-FCP-NEXT:    vmovaps (%rcx), %ymm31299; AVX2-FCP-NEXT:    vmovaps (%r8), %ymm71300; AVX2-FCP-NEXT:    vmovaps (%r9), %ymm81301; AVX2-FCP-NEXT:    vmovaps (%rax), %xmm01302; AVX2-FCP-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1303; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm61304; AVX2-FCP-NEXT:    vmovaps (%r8), %xmm41305; AVX2-FCP-NEXT:    vmovaps (%r9), %xmm51306; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm9 = xmm5[1,1,1,1]1307; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm9 = xmm9[0],xmm4[1],xmm9[2,3]1308; AVX2-FCP-NEXT:    vbroadcastsd %xmm9, %ymm91309; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm6 = ymm9[0,1,2,3,4],ymm6[5],ymm9[6,7]1310; AVX2-FCP-NEXT:    vmovaps (%rcx), %xmm111311; AVX2-FCP-NEXT:    vmovaps (%rdx), %xmm121312; AVX2-FCP-NEXT:    vinsertps {{.*#+}} xmm9 = zero,xmm12[1],xmm11[1],zero1313; AVX2-FCP-NEXT:    vmovaps (%rdi), %xmm131314; AVX2-FCP-NEXT:    vmovaps (%rsi), %xmm141315; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm15 = xmm14[1,1,2,2]1316; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm15 = xmm15[0,1],xmm13[2],xmm15[3]1317; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm15 = ymm15[0,1,2,1]1318; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm9 = ymm15[0],ymm9[1,2],ymm15[3,4,5,6,7]1319; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm9[0,1,2],ymm6[3,4,5],ymm9[6,7]1320; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill1321; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm6 = ymm10[2],ymm3[2],ymm10[3],ymm3[3],ymm10[6],ymm3[6],ymm10[7],ymm3[7]1322; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm9 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]1323; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm9 = ymm9[2,2,2,2]1324; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm6 = ymm9[0,1,2,3],ymm6[4,5,6,7]1325; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm9 = ymm8[1,1,2,2,5,5,6,6]1326; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm9 = ymm9[0,1],ymm7[2],ymm9[3,4,5],ymm7[6],ymm9[7]1327; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm9 = ymm9[2,1,2,3]1328; AVX2-FCP-NEXT:    vmovaps 16(%rax), %xmm151329; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm9 = ymm9[0],ymm15[1],ymm9[2,3,4,5,6,7]1330; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm9[0,1],ymm6[2,3,4,5],ymm9[6,7]1331; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill1332; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm6 = ymm2[1,1,1,1,5,5,5,5]1333; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0],ymm1[1],ymm6[2,3,4],ymm1[5],ymm6[6,7]1334; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm6 = ymm6[2,2,2,2]1335; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm15 = ymm10[1,1],ymm3[1,1],ymm10[5,5],ymm3[5,5]1336; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3,4],ymm15[5,6],ymm6[7]1337; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm15 = ymm8[0,0,0,0,4,4,4,4]1338; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm9 = ymm7[0,1,0,1,4,5,4,5]1339; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm9 = ymm9[0],ymm15[1],ymm9[2,3,4],ymm15[5],ymm9[6,7]1340; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm9 = ymm9[2,1,2,3]1341; AVX2-FCP-NEXT:    vbroadcastsd 16(%rax), %ymm151342; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm9 = ymm9[0,1],ymm15[2,3],ymm9[4,5,6,7]1343; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm9[0,1,2],ymm6[3,4,5,6],ymm9[7]1344; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill1345; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm6 = xmm13[3,3],xmm14[3,3]1346; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm6, %ymm0, %ymm61347; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} xmm9 = xmm12[2],xmm11[2],xmm12[3],xmm11[3]1348; AVX2-FCP-NEXT:    vbroadcastf128 {{.*#+}} ymm0 = [0,1,2,2,0,1,2,2]1349; AVX2-FCP-NEXT:    # ymm0 = mem[0,1,0,1]1350; AVX2-FCP-NEXT:    vpermps %ymm9, %ymm0, %ymm91351; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm6 = ymm9[0,1,2,3,4],ymm6[5,6],ymm9[7]1352; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm9 = xmm5[2,2,2,2]1353; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm9 = xmm4[0,1,2],xmm9[3]1354; AVX2-FCP-NEXT:    vbroadcastsd 8(%rax), %ymm151355; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm9 = ymm9[0,1,2,3],ymm15[4,5,6,7]1356; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1],ymm9[2,3,4],ymm6[5,6,7]1357; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm9 = ymm3[2],ymm10[2],ymm3[3],ymm10[3],ymm3[6],ymm10[6],ymm3[7],ymm10[7]1358; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm9 = ymm9[3,3,3,3]1359; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm10 = ymm2[2],ymm1[2],ymm2[3],ymm1[3],ymm2[6],ymm1[6],ymm2[7],ymm1[7]1360; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm10 = ymm10[3,3,3,3]1361; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm9 = ymm10[0,1,2],ymm9[3,4,5,6,7]1362; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm7 = ymm7[3,3],ymm8[3,3],ymm7[7,7],ymm8[7,7]1363; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm7 = ymm9[0,1,2,3,4],ymm7[5,6],ymm9[7]1364; AVX2-FCP-NEXT:    vbroadcastsd 24(%rax), %ymm81365; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm7 = ymm8[0],ymm7[1,2,3,4,5,6],ymm8[7]1366; AVX2-FCP-NEXT:    vbroadcastss %xmm11, %xmm81367; AVX2-FCP-NEXT:    vbroadcastss %xmm12, %xmm91368; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm8 = xmm9[0],xmm8[0],xmm9[1],xmm8[1]1369; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm9 = xmm13[0],xmm14[0],xmm13[1],xmm14[1]1370; AVX2-FCP-NEXT:    vpermps %ymm9, %ymm0, %ymm01371; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm8[2,3],ymm0[4,5,6,7]1372; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm8 = xmm4[0],xmm5[0],xmm4[1],xmm5[1]1373; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm8, %ymm0, %ymm81374; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload1375; AVX2-FCP-NEXT:    vbroadcastsd %xmm10, %ymm91376; AVX2-FCP-NEXT:    vunpcklpd {{.*#+}} ymm8 = ymm8[0],ymm9[0],ymm8[2],ymm9[2]1377; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm8[4,5,6],ymm0[7]1378; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[1],ymm2[1],ymm1[4],ymm2[4],ymm1[5],ymm2[5]1379; AVX2-FCP-NEXT:    vbroadcastss 16(%rdx), %ymm21380; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm3 = ymm3[3,1,2,0,7,5,6,4]1381; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm3[0,1,2,3,4,5],ymm2[6],ymm3[7]1382; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0,1,2,3],ymm1[4,5],ymm2[6,7]1383; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm2 = xmm4[3,3],xmm5[3,3]1384; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0,1,2],xmm10[3]1385; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2,3],ymm1[4,5,6,7]1386; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax1387; AVX2-FCP-NEXT:    vmovaps %ymm1, 96(%rax)1388; AVX2-FCP-NEXT:    vmovaps %ymm0, (%rax)1389; AVX2-FCP-NEXT:    vmovaps %ymm7, 192(%rax)1390; AVX2-FCP-NEXT:    vmovaps %ymm6, 64(%rax)1391; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload1392; AVX2-FCP-NEXT:    vmovaps %ymm0, 160(%rax)1393; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload1394; AVX2-FCP-NEXT:    vmovaps %ymm0, 128(%rax)1395; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload1396; AVX2-FCP-NEXT:    vmovaps %ymm0, 32(%rax)1397; AVX2-FCP-NEXT:    vzeroupper1398; AVX2-FCP-NEXT:    retq1399;1400; AVX512-LABEL: store_i32_stride7_vf8:1401; AVX512:       # %bb.0:1402; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %rax1403; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %r101404; AVX512-NEXT:    vmovdqa (%rdi), %ymm01405; AVX512-NEXT:    vmovdqa (%rdx), %ymm11406; AVX512-NEXT:    vmovdqa (%r8), %ymm21407; AVX512-NEXT:    vmovdqa (%r10), %ymm31408; AVX512-NEXT:    vinserti64x4 $1, (%rsi), %zmm0, %zmm41409; AVX512-NEXT:    vinserti64x4 $1, (%rcx), %zmm1, %zmm51410; AVX512-NEXT:    vinserti64x4 $1, (%r9), %zmm2, %zmm21411; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm0 = [0,7,15,23,31,0,0,0]1412; AVX512-NEXT:    vpermi2d %zmm5, %zmm4, %zmm01413; AVX512-NEXT:    vpmovsxbd {{.*#+}} ymm1 = [6,0,0,0,0,23,31,7]1414; AVX512-NEXT:    vpermi2d %zmm2, %zmm3, %zmm11415; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,0,0,0,8,16,0,0,0,0,1,9,17,0,0]1416; AVX512-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61417; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,8,16,24,0,0,0,1,9,17,25,0,0,0,2,10]1418; AVX512-NEXT:    vpermi2d %zmm5, %zmm4, %zmm71419; AVX512-NEXT:    movw $14448, %cx # imm = 0x38701420; AVX512-NEXT:    kmovw %ecx, %k11421; AVX512-NEXT:    vmovdqa32 %zmm6, %zmm7 {%k1}1422; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,2,10,18,0,0,0,0,3,11,19,0,0,0,0]1423; AVX512-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61424; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [2,10,0,0,0,19,27,3,11,0,0,0,20,28,4,12]1425; AVX512-NEXT:    vpermi2d %zmm4, %zmm5, %zmm81426; AVX512-NEXT:    movw $3612, %cx # imm = 0xE1C1427; AVX512-NEXT:    kmovw %ecx, %k11428; AVX512-NEXT:    vmovdqa32 %zmm6, %zmm8 {%k1}1429; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,0,5,13,21,29,0,0,0,6,14,22,30,0,0]1430; AVX512-NEXT:    vpermi2d %zmm5, %zmm4, %zmm61431; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [4,12,20,0,0,0,0,5,13,21,0,0,0,0,6,14]1432; AVX512-NEXT:    vpermi2d %zmm3, %zmm2, %zmm41433; AVX512-NEXT:    movw $15480, %cx # imm = 0x3C781434; AVX512-NEXT:    kmovw %ecx, %k11435; AVX512-NEXT:    vmovdqa32 %zmm6, %zmm4 {%k1}1436; AVX512-NEXT:    vmovdqa64 %zmm4, 128(%rax)1437; AVX512-NEXT:    vmovdqa64 %zmm8, 64(%rax)1438; AVX512-NEXT:    vmovdqa64 %zmm7, (%rax)1439; AVX512-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]1440; AVX512-NEXT:    vmovdqa %ymm0, 192(%rax)1441; AVX512-NEXT:    vzeroupper1442; AVX512-NEXT:    retq1443;1444; AVX512-FCP-LABEL: store_i32_stride7_vf8:1445; AVX512-FCP:       # %bb.0:1446; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax1447; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r101448; AVX512-FCP-NEXT:    vmovdqa (%rdi), %ymm01449; AVX512-FCP-NEXT:    vmovdqa (%rdx), %ymm11450; AVX512-FCP-NEXT:    vmovdqa (%r8), %ymm21451; AVX512-FCP-NEXT:    vmovdqa (%r10), %ymm31452; AVX512-FCP-NEXT:    vinserti64x4 $1, (%rsi), %zmm0, %zmm41453; AVX512-FCP-NEXT:    vinserti64x4 $1, (%rcx), %zmm1, %zmm51454; AVX512-FCP-NEXT:    vinserti64x4 $1, (%r9), %zmm2, %zmm21455; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm0 = [0,7,15,23,31,0,0,0]1456; AVX512-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm01457; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm1 = [6,0,0,0,0,23,31,7]1458; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm3, %zmm11459; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,0,0,0,8,16,0,0,0,0,1,9,17,0,0]1460; AVX512-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61461; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,8,16,24,0,0,0,1,9,17,25,0,0,0,2,10]1462; AVX512-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm71463; AVX512-FCP-NEXT:    movw $14448, %cx # imm = 0x38701464; AVX512-FCP-NEXT:    kmovw %ecx, %k11465; AVX512-FCP-NEXT:    vmovdqa32 %zmm6, %zmm7 {%k1}1466; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,2,10,18,0,0,0,0,3,11,19,0,0,0,0]1467; AVX512-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61468; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [2,10,0,0,0,19,27,3,11,0,0,0,20,28,4,12]1469; AVX512-FCP-NEXT:    vpermi2d %zmm4, %zmm5, %zmm81470; AVX512-FCP-NEXT:    movw $3612, %cx # imm = 0xE1C1471; AVX512-FCP-NEXT:    kmovw %ecx, %k11472; AVX512-FCP-NEXT:    vmovdqa32 %zmm6, %zmm8 {%k1}1473; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,0,5,13,21,29,0,0,0,6,14,22,30,0,0]1474; AVX512-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm61475; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [4,12,20,0,0,0,0,5,13,21,0,0,0,0,6,14]1476; AVX512-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm41477; AVX512-FCP-NEXT:    movw $15480, %cx # imm = 0x3C781478; AVX512-FCP-NEXT:    kmovw %ecx, %k11479; AVX512-FCP-NEXT:    vmovdqa32 %zmm6, %zmm4 {%k1}1480; AVX512-FCP-NEXT:    vmovdqa64 %zmm4, 128(%rax)1481; AVX512-FCP-NEXT:    vmovdqa64 %zmm8, 64(%rax)1482; AVX512-FCP-NEXT:    vmovdqa64 %zmm7, (%rax)1483; AVX512-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]1484; AVX512-FCP-NEXT:    vmovdqa %ymm0, 192(%rax)1485; AVX512-FCP-NEXT:    vzeroupper1486; AVX512-FCP-NEXT:    retq1487;1488; AVX512DQ-LABEL: store_i32_stride7_vf8:1489; AVX512DQ:       # %bb.0:1490; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %rax1491; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %r101492; AVX512DQ-NEXT:    vmovdqa (%rdi), %ymm01493; AVX512DQ-NEXT:    vmovdqa (%rdx), %ymm11494; AVX512DQ-NEXT:    vmovdqa (%r8), %ymm21495; AVX512DQ-NEXT:    vmovdqa (%r10), %ymm31496; AVX512DQ-NEXT:    vinserti64x4 $1, (%rsi), %zmm0, %zmm41497; AVX512DQ-NEXT:    vinserti64x4 $1, (%rcx), %zmm1, %zmm51498; AVX512DQ-NEXT:    vinserti64x4 $1, (%r9), %zmm2, %zmm21499; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm0 = [0,7,15,23,31,0,0,0]1500; AVX512DQ-NEXT:    vpermi2d %zmm5, %zmm4, %zmm01501; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} ymm1 = [6,0,0,0,0,23,31,7]1502; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm3, %zmm11503; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,0,0,0,8,16,0,0,0,0,1,9,17,0,0]1504; AVX512DQ-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61505; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,8,16,24,0,0,0,1,9,17,25,0,0,0,2,10]1506; AVX512DQ-NEXT:    vpermi2d %zmm5, %zmm4, %zmm71507; AVX512DQ-NEXT:    movw $14448, %cx # imm = 0x38701508; AVX512DQ-NEXT:    kmovw %ecx, %k11509; AVX512DQ-NEXT:    vmovdqa32 %zmm6, %zmm7 {%k1}1510; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,2,10,18,0,0,0,0,3,11,19,0,0,0,0]1511; AVX512DQ-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61512; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [2,10,0,0,0,19,27,3,11,0,0,0,20,28,4,12]1513; AVX512DQ-NEXT:    vpermi2d %zmm4, %zmm5, %zmm81514; AVX512DQ-NEXT:    movw $3612, %cx # imm = 0xE1C1515; AVX512DQ-NEXT:    kmovw %ecx, %k11516; AVX512DQ-NEXT:    vmovdqa32 %zmm6, %zmm8 {%k1}1517; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,0,5,13,21,29,0,0,0,6,14,22,30,0,0]1518; AVX512DQ-NEXT:    vpermi2d %zmm5, %zmm4, %zmm61519; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [4,12,20,0,0,0,0,5,13,21,0,0,0,0,6,14]1520; AVX512DQ-NEXT:    vpermi2d %zmm3, %zmm2, %zmm41521; AVX512DQ-NEXT:    movw $15480, %cx # imm = 0x3C781522; AVX512DQ-NEXT:    kmovw %ecx, %k11523; AVX512DQ-NEXT:    vmovdqa32 %zmm6, %zmm4 {%k1}1524; AVX512DQ-NEXT:    vmovdqa64 %zmm4, 128(%rax)1525; AVX512DQ-NEXT:    vmovdqa64 %zmm8, 64(%rax)1526; AVX512DQ-NEXT:    vmovdqa64 %zmm7, (%rax)1527; AVX512DQ-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]1528; AVX512DQ-NEXT:    vmovdqa %ymm0, 192(%rax)1529; AVX512DQ-NEXT:    vzeroupper1530; AVX512DQ-NEXT:    retq1531;1532; AVX512DQ-FCP-LABEL: store_i32_stride7_vf8:1533; AVX512DQ-FCP:       # %bb.0:1534; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax1535; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r101536; AVX512DQ-FCP-NEXT:    vmovdqa (%rdi), %ymm01537; AVX512DQ-FCP-NEXT:    vmovdqa (%rdx), %ymm11538; AVX512DQ-FCP-NEXT:    vmovdqa (%r8), %ymm21539; AVX512DQ-FCP-NEXT:    vmovdqa (%r10), %ymm31540; AVX512DQ-FCP-NEXT:    vinserti64x4 $1, (%rsi), %zmm0, %zmm41541; AVX512DQ-FCP-NEXT:    vinserti64x4 $1, (%rcx), %zmm1, %zmm51542; AVX512DQ-FCP-NEXT:    vinserti64x4 $1, (%r9), %zmm2, %zmm21543; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm0 = [0,7,15,23,31,0,0,0]1544; AVX512DQ-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm01545; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm1 = [6,0,0,0,0,23,31,7]1546; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm3, %zmm11547; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,0,0,0,8,16,0,0,0,0,1,9,17,0,0]1548; AVX512DQ-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61549; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,8,16,24,0,0,0,1,9,17,25,0,0,0,2,10]1550; AVX512DQ-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm71551; AVX512DQ-FCP-NEXT:    movw $14448, %cx # imm = 0x38701552; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k11553; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm6, %zmm7 {%k1}1554; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,2,10,18,0,0,0,0,3,11,19,0,0,0,0]1555; AVX512DQ-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61556; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [2,10,0,0,0,19,27,3,11,0,0,0,20,28,4,12]1557; AVX512DQ-FCP-NEXT:    vpermi2d %zmm4, %zmm5, %zmm81558; AVX512DQ-FCP-NEXT:    movw $3612, %cx # imm = 0xE1C1559; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k11560; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm6, %zmm8 {%k1}1561; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,0,5,13,21,29,0,0,0,6,14,22,30,0,0]1562; AVX512DQ-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm61563; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [4,12,20,0,0,0,0,5,13,21,0,0,0,0,6,14]1564; AVX512DQ-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm41565; AVX512DQ-FCP-NEXT:    movw $15480, %cx # imm = 0x3C781566; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k11567; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm6, %zmm4 {%k1}1568; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm4, 128(%rax)1569; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm8, 64(%rax)1570; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm7, (%rax)1571; AVX512DQ-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]1572; AVX512DQ-FCP-NEXT:    vmovdqa %ymm0, 192(%rax)1573; AVX512DQ-FCP-NEXT:    vzeroupper1574; AVX512DQ-FCP-NEXT:    retq1575;1576; AVX512BW-LABEL: store_i32_stride7_vf8:1577; AVX512BW:       # %bb.0:1578; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax1579; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %r101580; AVX512BW-NEXT:    vmovdqa (%rdi), %ymm01581; AVX512BW-NEXT:    vmovdqa (%rdx), %ymm11582; AVX512BW-NEXT:    vmovdqa (%r8), %ymm21583; AVX512BW-NEXT:    vmovdqa (%r10), %ymm31584; AVX512BW-NEXT:    vinserti64x4 $1, (%rsi), %zmm0, %zmm41585; AVX512BW-NEXT:    vinserti64x4 $1, (%rcx), %zmm1, %zmm51586; AVX512BW-NEXT:    vinserti64x4 $1, (%r9), %zmm2, %zmm21587; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm0 = [0,7,15,23,31,0,0,0]1588; AVX512BW-NEXT:    vpermi2d %zmm5, %zmm4, %zmm01589; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} ymm1 = [6,0,0,0,0,23,31,7]1590; AVX512BW-NEXT:    vpermi2d %zmm2, %zmm3, %zmm11591; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,0,0,0,8,16,0,0,0,0,1,9,17,0,0]1592; AVX512BW-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61593; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,8,16,24,0,0,0,1,9,17,25,0,0,0,2,10]1594; AVX512BW-NEXT:    vpermi2d %zmm5, %zmm4, %zmm71595; AVX512BW-NEXT:    movw $14448, %cx # imm = 0x38701596; AVX512BW-NEXT:    kmovd %ecx, %k11597; AVX512BW-NEXT:    vmovdqa32 %zmm6, %zmm7 {%k1}1598; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,2,10,18,0,0,0,0,3,11,19,0,0,0,0]1599; AVX512BW-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61600; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [2,10,0,0,0,19,27,3,11,0,0,0,20,28,4,12]1601; AVX512BW-NEXT:    vpermi2d %zmm4, %zmm5, %zmm81602; AVX512BW-NEXT:    movw $3612, %cx # imm = 0xE1C1603; AVX512BW-NEXT:    kmovd %ecx, %k11604; AVX512BW-NEXT:    vmovdqa32 %zmm6, %zmm8 {%k1}1605; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,0,5,13,21,29,0,0,0,6,14,22,30,0,0]1606; AVX512BW-NEXT:    vpermi2d %zmm5, %zmm4, %zmm61607; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [4,12,20,0,0,0,0,5,13,21,0,0,0,0,6,14]1608; AVX512BW-NEXT:    vpermi2d %zmm3, %zmm2, %zmm41609; AVX512BW-NEXT:    movw $15480, %cx # imm = 0x3C781610; AVX512BW-NEXT:    kmovd %ecx, %k11611; AVX512BW-NEXT:    vmovdqa32 %zmm6, %zmm4 {%k1}1612; AVX512BW-NEXT:    vmovdqa64 %zmm4, 128(%rax)1613; AVX512BW-NEXT:    vmovdqa64 %zmm8, 64(%rax)1614; AVX512BW-NEXT:    vmovdqa64 %zmm7, (%rax)1615; AVX512BW-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]1616; AVX512BW-NEXT:    vmovdqa %ymm0, 192(%rax)1617; AVX512BW-NEXT:    vzeroupper1618; AVX512BW-NEXT:    retq1619;1620; AVX512BW-FCP-LABEL: store_i32_stride7_vf8:1621; AVX512BW-FCP:       # %bb.0:1622; AVX512BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax1623; AVX512BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r101624; AVX512BW-FCP-NEXT:    vmovdqa (%rdi), %ymm01625; AVX512BW-FCP-NEXT:    vmovdqa (%rdx), %ymm11626; AVX512BW-FCP-NEXT:    vmovdqa (%r8), %ymm21627; AVX512BW-FCP-NEXT:    vmovdqa (%r10), %ymm31628; AVX512BW-FCP-NEXT:    vinserti64x4 $1, (%rsi), %zmm0, %zmm41629; AVX512BW-FCP-NEXT:    vinserti64x4 $1, (%rcx), %zmm1, %zmm51630; AVX512BW-FCP-NEXT:    vinserti64x4 $1, (%r9), %zmm2, %zmm21631; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm0 = [0,7,15,23,31,0,0,0]1632; AVX512BW-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm01633; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm1 = [6,0,0,0,0,23,31,7]1634; AVX512BW-FCP-NEXT:    vpermi2d %zmm2, %zmm3, %zmm11635; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,0,0,0,8,16,0,0,0,0,1,9,17,0,0]1636; AVX512BW-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61637; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,8,16,24,0,0,0,1,9,17,25,0,0,0,2,10]1638; AVX512BW-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm71639; AVX512BW-FCP-NEXT:    movw $14448, %cx # imm = 0x38701640; AVX512BW-FCP-NEXT:    kmovd %ecx, %k11641; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm6, %zmm7 {%k1}1642; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,2,10,18,0,0,0,0,3,11,19,0,0,0,0]1643; AVX512BW-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61644; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [2,10,0,0,0,19,27,3,11,0,0,0,20,28,4,12]1645; AVX512BW-FCP-NEXT:    vpermi2d %zmm4, %zmm5, %zmm81646; AVX512BW-FCP-NEXT:    movw $3612, %cx # imm = 0xE1C1647; AVX512BW-FCP-NEXT:    kmovd %ecx, %k11648; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm6, %zmm8 {%k1}1649; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,0,5,13,21,29,0,0,0,6,14,22,30,0,0]1650; AVX512BW-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm61651; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [4,12,20,0,0,0,0,5,13,21,0,0,0,0,6,14]1652; AVX512BW-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm41653; AVX512BW-FCP-NEXT:    movw $15480, %cx # imm = 0x3C781654; AVX512BW-FCP-NEXT:    kmovd %ecx, %k11655; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm6, %zmm4 {%k1}1656; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm4, 128(%rax)1657; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm8, 64(%rax)1658; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm7, (%rax)1659; AVX512BW-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]1660; AVX512BW-FCP-NEXT:    vmovdqa %ymm0, 192(%rax)1661; AVX512BW-FCP-NEXT:    vzeroupper1662; AVX512BW-FCP-NEXT:    retq1663;1664; AVX512DQ-BW-LABEL: store_i32_stride7_vf8:1665; AVX512DQ-BW:       # %bb.0:1666; AVX512DQ-BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax1667; AVX512DQ-BW-NEXT:    movq {{[0-9]+}}(%rsp), %r101668; AVX512DQ-BW-NEXT:    vmovdqa (%rdi), %ymm01669; AVX512DQ-BW-NEXT:    vmovdqa (%rdx), %ymm11670; AVX512DQ-BW-NEXT:    vmovdqa (%r8), %ymm21671; AVX512DQ-BW-NEXT:    vmovdqa (%r10), %ymm31672; AVX512DQ-BW-NEXT:    vinserti64x4 $1, (%rsi), %zmm0, %zmm41673; AVX512DQ-BW-NEXT:    vinserti64x4 $1, (%rcx), %zmm1, %zmm51674; AVX512DQ-BW-NEXT:    vinserti64x4 $1, (%r9), %zmm2, %zmm21675; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} ymm0 = [0,7,15,23,31,0,0,0]1676; AVX512DQ-BW-NEXT:    vpermi2d %zmm5, %zmm4, %zmm01677; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} ymm1 = [6,0,0,0,0,23,31,7]1678; AVX512DQ-BW-NEXT:    vpermi2d %zmm2, %zmm3, %zmm11679; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,0,0,0,8,16,0,0,0,0,1,9,17,0,0]1680; AVX512DQ-BW-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61681; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,8,16,24,0,0,0,1,9,17,25,0,0,0,2,10]1682; AVX512DQ-BW-NEXT:    vpermi2d %zmm5, %zmm4, %zmm71683; AVX512DQ-BW-NEXT:    movw $14448, %cx # imm = 0x38701684; AVX512DQ-BW-NEXT:    kmovd %ecx, %k11685; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm6, %zmm7 {%k1}1686; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,2,10,18,0,0,0,0,3,11,19,0,0,0,0]1687; AVX512DQ-BW-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61688; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [2,10,0,0,0,19,27,3,11,0,0,0,20,28,4,12]1689; AVX512DQ-BW-NEXT:    vpermi2d %zmm4, %zmm5, %zmm81690; AVX512DQ-BW-NEXT:    movw $3612, %cx # imm = 0xE1C1691; AVX512DQ-BW-NEXT:    kmovd %ecx, %k11692; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm6, %zmm8 {%k1}1693; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,0,5,13,21,29,0,0,0,6,14,22,30,0,0]1694; AVX512DQ-BW-NEXT:    vpermi2d %zmm5, %zmm4, %zmm61695; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [4,12,20,0,0,0,0,5,13,21,0,0,0,0,6,14]1696; AVX512DQ-BW-NEXT:    vpermi2d %zmm3, %zmm2, %zmm41697; AVX512DQ-BW-NEXT:    movw $15480, %cx # imm = 0x3C781698; AVX512DQ-BW-NEXT:    kmovd %ecx, %k11699; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm6, %zmm4 {%k1}1700; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm4, 128(%rax)1701; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm8, 64(%rax)1702; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm7, (%rax)1703; AVX512DQ-BW-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]1704; AVX512DQ-BW-NEXT:    vmovdqa %ymm0, 192(%rax)1705; AVX512DQ-BW-NEXT:    vzeroupper1706; AVX512DQ-BW-NEXT:    retq1707;1708; AVX512DQ-BW-FCP-LABEL: store_i32_stride7_vf8:1709; AVX512DQ-BW-FCP:       # %bb.0:1710; AVX512DQ-BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax1711; AVX512DQ-BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r101712; AVX512DQ-BW-FCP-NEXT:    vmovdqa (%rdi), %ymm01713; AVX512DQ-BW-FCP-NEXT:    vmovdqa (%rdx), %ymm11714; AVX512DQ-BW-FCP-NEXT:    vmovdqa (%r8), %ymm21715; AVX512DQ-BW-FCP-NEXT:    vmovdqa (%r10), %ymm31716; AVX512DQ-BW-FCP-NEXT:    vinserti64x4 $1, (%rsi), %zmm0, %zmm41717; AVX512DQ-BW-FCP-NEXT:    vinserti64x4 $1, (%rcx), %zmm1, %zmm51718; AVX512DQ-BW-FCP-NEXT:    vinserti64x4 $1, (%r9), %zmm2, %zmm21719; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm0 = [0,7,15,23,31,0,0,0]1720; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm01721; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} ymm1 = [6,0,0,0,0,23,31,7]1722; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm2, %zmm3, %zmm11723; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,0,0,0,8,16,0,0,0,0,1,9,17,0,0]1724; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61725; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,8,16,24,0,0,0,1,9,17,25,0,0,0,2,10]1726; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm71727; AVX512DQ-BW-FCP-NEXT:    movw $14448, %cx # imm = 0x38701728; AVX512DQ-BW-FCP-NEXT:    kmovd %ecx, %k11729; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm6, %zmm7 {%k1}1730; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,2,10,18,0,0,0,0,3,11,19,0,0,0,0]1731; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm61732; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [2,10,0,0,0,19,27,3,11,0,0,0,20,28,4,12]1733; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm4, %zmm5, %zmm81734; AVX512DQ-BW-FCP-NEXT:    movw $3612, %cx # imm = 0xE1C1735; AVX512DQ-BW-FCP-NEXT:    kmovd %ecx, %k11736; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm6, %zmm8 {%k1}1737; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,0,5,13,21,29,0,0,0,6,14,22,30,0,0]1738; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm5, %zmm4, %zmm61739; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [4,12,20,0,0,0,0,5,13,21,0,0,0,0,6,14]1740; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm3, %zmm2, %zmm41741; AVX512DQ-BW-FCP-NEXT:    movw $15480, %cx # imm = 0x3C781742; AVX512DQ-BW-FCP-NEXT:    kmovd %ecx, %k11743; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm6, %zmm4 {%k1}1744; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm4, 128(%rax)1745; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm8, 64(%rax)1746; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm7, (%rax)1747; AVX512DQ-BW-FCP-NEXT:    vpblendd {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]1748; AVX512DQ-BW-FCP-NEXT:    vmovdqa %ymm0, 192(%rax)1749; AVX512DQ-BW-FCP-NEXT:    vzeroupper1750; AVX512DQ-BW-FCP-NEXT:    retq1751  %in.vec0 = load <8 x i32>, ptr %in.vecptr0, align 641752  %in.vec1 = load <8 x i32>, ptr %in.vecptr1, align 641753  %in.vec2 = load <8 x i32>, ptr %in.vecptr2, align 641754  %in.vec3 = load <8 x i32>, ptr %in.vecptr3, align 641755  %in.vec4 = load <8 x i32>, ptr %in.vecptr4, align 641756  %in.vec5 = load <8 x i32>, ptr %in.vecptr5, align 641757  %in.vec6 = load <8 x i32>, ptr %in.vecptr6, align 641758  %1 = shufflevector <8 x i32> %in.vec0, <8 x i32> %in.vec1, <16 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15>1759  %2 = shufflevector <8 x i32> %in.vec2, <8 x i32> %in.vec3, <16 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15>1760  %3 = shufflevector <8 x i32> %in.vec4, <8 x i32> %in.vec5, <16 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15>1761  %4 = shufflevector <16 x i32> %1, <16 x i32> %2, <32 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31>1762  %5 = shufflevector <8 x i32> %in.vec6, <8 x i32> poison, <16 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>1763  %6 = shufflevector <16 x i32> %3, <16 x i32> %5, <24 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23>1764  %7 = shufflevector <24 x i32> %6, <24 x i32> poison, <32 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>1765  %8 = shufflevector <32 x i32> %4, <32 x i32> %7, <56 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55>1766  %interleaved.vec = shufflevector <56 x i32> %8, <56 x i32> poison, <56 x i32> <i32 0, i32 8, i32 16, i32 24, i32 32, i32 40, i32 48, i32 1, i32 9, i32 17, i32 25, i32 33, i32 41, i32 49, i32 2, i32 10, i32 18, i32 26, i32 34, i32 42, i32 50, i32 3, i32 11, i32 19, i32 27, i32 35, i32 43, i32 51, i32 4, i32 12, i32 20, i32 28, i32 36, i32 44, i32 52, i32 5, i32 13, i32 21, i32 29, i32 37, i32 45, i32 53, i32 6, i32 14, i32 22, i32 30, i32 38, i32 46, i32 54, i32 7, i32 15, i32 23, i32 31, i32 39, i32 47, i32 55>1767  store <56 x i32> %interleaved.vec, ptr %out.vec, align 641768  ret void1769}1770 1771define void @store_i32_stride7_vf16(ptr %in.vecptr0, ptr %in.vecptr1, ptr %in.vecptr2, ptr %in.vecptr3, ptr %in.vecptr4, ptr %in.vecptr5, ptr %in.vecptr6, ptr %out.vec) nounwind {1772; SSE-LABEL: store_i32_stride7_vf16:1773; SSE:       # %bb.0:1774; SSE-NEXT:    subq $520, %rsp # imm = 0x2081775; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %rax1776; SSE-NEXT:    movdqa (%rdi), %xmm101777; SSE-NEXT:    movdqa %xmm10, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1778; SSE-NEXT:    movdqa (%rsi), %xmm121779; SSE-NEXT:    movdqa 16(%rsi), %xmm61780; SSE-NEXT:    movaps (%rdx), %xmm51781; SSE-NEXT:    movaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1782; SSE-NEXT:    movdqa 16(%rdx), %xmm91783; SSE-NEXT:    movdqa %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1784; SSE-NEXT:    movaps (%rcx), %xmm81785; SSE-NEXT:    movaps 16(%rcx), %xmm21786; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1787; SSE-NEXT:    movaps (%r8), %xmm151788; SSE-NEXT:    movaps 16(%r8), %xmm141789; SSE-NEXT:    movaps %xmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1790; SSE-NEXT:    movdqa (%r9), %xmm131791; SSE-NEXT:    movdqa 16(%r9), %xmm31792; SSE-NEXT:    movdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1793; SSE-NEXT:    movdqa (%rax), %xmm111794; SSE-NEXT:    movaps %xmm15, %xmm01795; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm8[1,1]1796; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm12[1,1,1,1]1797; SSE-NEXT:    movss {{.*#+}} xmm5 = xmm1[0],xmm5[1,2,3]1798; SSE-NEXT:    shufps {{.*#+}} xmm5 = xmm5[0,1],xmm0[2,0]1799; SSE-NEXT:    movaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1800; SSE-NEXT:    movdqa %xmm10, %xmm01801; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm12[2],xmm0[3],xmm12[3]1802; SSE-NEXT:    movdqa %xmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1803; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm11[1,1,1,1]1804; SSE-NEXT:    movdqa %xmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1805; SSE-NEXT:    pshufd {{.*#+}} xmm5 = xmm13[1,1,1,1]1806; SSE-NEXT:    punpckldq {{.*#+}} xmm5 = xmm5[0],xmm1[0],xmm5[1],xmm1[1]1807; SSE-NEXT:    punpcklqdq {{.*#+}} xmm5 = xmm5[0],xmm0[0]1808; SSE-NEXT:    movdqa %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1809; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm9[1,1,1,1]1810; SSE-NEXT:    movdqa %xmm6, %xmm91811; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm6[1,1,1,1]1812; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]1813; SSE-NEXT:    movaps %xmm14, %xmm01814; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm2[1,1]1815; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]1816; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1817; SSE-NEXT:    movdqa 16(%rax), %xmm101818; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm10[1,1,1,1]1819; SSE-NEXT:    movdqa %xmm10, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1820; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm3[1,1,1,1]1821; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]1822; SSE-NEXT:    movdqa 16(%rdi), %xmm41823; SSE-NEXT:    movdqa %xmm4, %xmm01824; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm6[2],xmm0[3],xmm6[3]1825; SSE-NEXT:    movdqa %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1826; SSE-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]1827; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1828; SSE-NEXT:    movdqa 32(%rsi), %xmm61829; SSE-NEXT:    movaps 32(%rdx), %xmm11830; SSE-NEXT:    movaps %xmm1, (%rsp) # 16-byte Spill1831; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm6[1,1,1,1]1832; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm0[0],xmm1[1,2,3]1833; SSE-NEXT:    movaps 32(%rcx), %xmm21834; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1835; SSE-NEXT:    movaps 32(%r8), %xmm01836; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1837; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm2[1,1]1838; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]1839; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1840; SSE-NEXT:    movdqa 32(%r9), %xmm11841; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1842; SSE-NEXT:    movdqa 32(%rax), %xmm01843; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1844; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]1845; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[1,1,1,1]1846; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]1847; SSE-NEXT:    movdqa 32(%rdi), %xmm01848; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1849; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm6[2],xmm0[3],xmm6[3]1850; SSE-NEXT:    movdqa %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1851; SSE-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]1852; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1853; SSE-NEXT:    movdqa 48(%rsi), %xmm11854; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1855; SSE-NEXT:    movdqa 48(%rdx), %xmm01856; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1857; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]1858; SSE-NEXT:    pshufd {{.*#+}} xmm5 = xmm1[1,1,1,1]1859; SSE-NEXT:    punpckldq {{.*#+}} xmm5 = xmm5[0],xmm0[0],xmm5[1],xmm0[1]1860; SSE-NEXT:    movaps 48(%rcx), %xmm31861; SSE-NEXT:    movaps 48(%r8), %xmm01862; SSE-NEXT:    movaps %xmm0, %xmm11863; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[1,1],xmm3[1,1]1864; SSE-NEXT:    movaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1865; SSE-NEXT:    shufps {{.*#+}} xmm5 = xmm5[0,1],xmm1[2,0]1866; SSE-NEXT:    movaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1867; SSE-NEXT:    movaps 48(%rdi), %xmm21868; SSE-NEXT:    movaps 48(%rax), %xmm11869; SSE-NEXT:    movaps %xmm2, %xmm51870; SSE-NEXT:    shufps {{.*#+}} xmm5 = xmm5[1,1],xmm1[0,3]1871; SSE-NEXT:    movaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1872; SSE-NEXT:    movaps 48(%r9), %xmm71873; SSE-NEXT:    movaps %xmm7, %xmm51874; SSE-NEXT:    shufps {{.*#+}} xmm5 = xmm5[1,1],xmm1[1,1]1875; SSE-NEXT:    movaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1876; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1877; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1878; SSE-NEXT:    shufps {{.*#+}} xmm2 = xmm2[3,1],xmm1[2,3]1879; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1880; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[3,3],xmm7[3,3]1881; SSE-NEXT:    movaps %xmm0, %xmm21882; SSE-NEXT:    unpcklps {{.*#+}} xmm2 = xmm2[0],xmm7[0],xmm2[1],xmm7[1]1883; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1884; SSE-NEXT:    unpckhpd {{.*#+}} xmm7 = xmm7[1],xmm0[1]1885; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[3,3,3,3]1886; SSE-NEXT:    pshufd {{.*#+}} xmm2 = xmm3[3,3,3,3]1887; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm0[0],xmm2[1],xmm0[1]1888; SSE-NEXT:    shufps {{.*#+}} xmm2 = xmm2[0,1],xmm1[2,0]1889; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1890; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload1891; SSE-NEXT:    movaps %xmm14, %xmm01892; SSE-NEXT:    movaps %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1893; SSE-NEXT:    unpcklps {{.*#+}} xmm0 = xmm0[0],xmm8[0],xmm0[1],xmm8[1]1894; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload1895; SSE-NEXT:    movdqa %xmm2, %xmm31896; SSE-NEXT:    punpckldq {{.*#+}} xmm3 = xmm3[0],xmm12[0],xmm3[1],xmm12[1]1897; SSE-NEXT:    punpcklqdq {{.*#+}} xmm3 = xmm3[0],xmm0[0]1898; SSE-NEXT:    movdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1899; SSE-NEXT:    shufps {{.*#+}} xmm11 = xmm11[0,1],xmm2[1,3]1900; SSE-NEXT:    movaps %xmm15, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1901; SSE-NEXT:    movaps %xmm15, %xmm51902; SSE-NEXT:    movdqa %xmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1903; SSE-NEXT:    unpcklps {{.*#+}} xmm5 = xmm5[0],xmm13[0],xmm5[1],xmm13[1]1904; SSE-NEXT:    shufps {{.*#+}} xmm5 = xmm5[0,1],xmm11[0,2]1905; SSE-NEXT:    movaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1906; SSE-NEXT:    unpckhps {{.*#+}} xmm15 = xmm15[2],xmm13[2],xmm15[3],xmm13[3]1907; SSE-NEXT:    unpckhps {{.*#+}} xmm14 = xmm14[2],xmm8[2],xmm14[3],xmm8[3]1908; SSE-NEXT:    movlhps {{.*#+}} xmm14 = xmm14[0],xmm15[0]1909; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload1910; SSE-NEXT:    movaps %xmm2, %xmm01911; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload1912; SSE-NEXT:    movlhps {{.*#+}} xmm0 = xmm0[0],xmm5[0]1913; SSE-NEXT:    movdqa %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1914; SSE-NEXT:    movdqa %xmm4, %xmm131915; SSE-NEXT:    punpckldq {{.*#+}} xmm13 = xmm13[0],xmm9[0],xmm13[1],xmm9[1]1916; SSE-NEXT:    shufps {{.*#+}} xmm13 = xmm13[0,1],xmm0[2,0]1917; SSE-NEXT:    shufps {{.*#+}} xmm4 = xmm4[1,1],xmm10[0,3]1918; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Reload1919; SSE-NEXT:    movaps %xmm12, %xmm111920; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload1921; SSE-NEXT:    unpcklps {{.*#+}} xmm11 = xmm11[0],xmm3[0],xmm11[1],xmm3[1]1922; SSE-NEXT:    shufps {{.*#+}} xmm11 = xmm11[0,1],xmm4[2,0]1923; SSE-NEXT:    movaps %xmm5, %xmm101924; SSE-NEXT:    unpckhps {{.*#+}} xmm10 = xmm10[2],xmm2[2],xmm10[3],xmm2[3]1925; SSE-NEXT:    movaps %xmm12, %xmm01926; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm3[2],xmm0[3],xmm3[3]1927; SSE-NEXT:    movlhps {{.*#+}} xmm10 = xmm10[0],xmm0[0]1928; SSE-NEXT:    movdqa (%rsp), %xmm5 # 16-byte Reload1929; SSE-NEXT:    movdqa %xmm5, %xmm01930; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload1931; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1]1932; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload1933; SSE-NEXT:    movdqa %xmm9, %xmm151934; SSE-NEXT:    punpckldq {{.*#+}} xmm15 = xmm15[0],xmm6[0],xmm15[1],xmm6[1]1935; SSE-NEXT:    punpcklqdq {{.*#+}} xmm15 = xmm15[0],xmm0[0]1936; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload1937; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,1],xmm9[1,3]1938; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload1939; SSE-NEXT:    movaps %xmm8, %xmm61940; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload1941; SSE-NEXT:    unpcklps {{.*#+}} xmm6 = xmm6[0],xmm3[0],xmm6[1],xmm3[1]1942; SSE-NEXT:    shufps {{.*#+}} xmm6 = xmm6[0,1],xmm0[0,2]1943; SSE-NEXT:    movaps %xmm8, %xmm01944; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm3[2],xmm0[3],xmm3[3]1945; SSE-NEXT:    punpckhdq {{.*#+}} xmm5 = xmm5[2],xmm2[2],xmm5[3],xmm2[3]1946; SSE-NEXT:    punpcklqdq {{.*#+}} xmm5 = xmm5[0],xmm0[0]1947; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload1948; SSE-NEXT:    movaps %xmm0, %xmm31949; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload1950; SSE-NEXT:    unpckhps {{.*#+}} xmm3 = xmm3[2],xmm1[2],xmm3[3],xmm1[3]1951; SSE-NEXT:    movlhps {{.*#+}} xmm1 = xmm1[0],xmm0[0]1952; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload1953; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload1954; SSE-NEXT:    unpcklps {{.*#+}} xmm4 = xmm4[0],xmm2[0],xmm4[1],xmm2[1]1955; SSE-NEXT:    shufps {{.*#+}} xmm4 = xmm4[0,1],xmm1[2,0]1956; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1957; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload1958; SSE-NEXT:    shufps $36, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload1959; SSE-NEXT:    # xmm1 = xmm1[0,1],mem[2,0]1960; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1961; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload1962; SSE-NEXT:    unpckhps {{.*#+}} xmm1 = xmm1[2],xmm2[2],xmm1[3],xmm2[3]1963; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload1964; SSE-NEXT:    shufps {{.*#+}} xmm4 = xmm4[0,2],xmm1[0,1]1965; SSE-NEXT:    shufps {{.*#+}} xmm3 = xmm3[0,1],xmm7[2,0]1966; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[3,3],xmm2[3,3]1967; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload1968; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[2,0],xmm0[2,0]1969; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload1970; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload1971; SSE-NEXT:    # xmm7 = xmm7[3,3],mem[3,3]1972; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload1973; SSE-NEXT:    shufps {{.*#+}} xmm2 = xmm2[0,3],xmm7[2,0]1974; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload1975; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm0[2,3,2,3]1976; SSE-NEXT:    movss {{.*#+}} xmm2 = xmm7[0],xmm2[1,2,3]1977; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1978; SSE-NEXT:    movdqa %xmm0, %xmm71979; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload1980; SSE-NEXT:    # xmm7 = xmm7[3,3],mem[3,3]1981; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload1982; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,3],xmm7[2,0]1983; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload1984; SSE-NEXT:    # xmm7 = mem[3,3,3,3]1985; SSE-NEXT:    movss {{.*#+}} xmm0 = xmm7[0],xmm0[1,2,3]1986; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill1987; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload1988; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload1989; SSE-NEXT:    # xmm7 = xmm7[3,3],mem[3,3]1990; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload1991; SSE-NEXT:    shufps {{.*#+}} xmm2 = xmm2[0,3],xmm7[2,0]1992; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload1993; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm0[2,3,2,3]1994; SSE-NEXT:    movss {{.*#+}} xmm2 = xmm7[0],xmm2[1,2,3]1995; SSE-NEXT:    movdqa %xmm0, %xmm71996; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload1997; SSE-NEXT:    # xmm7 = xmm7[3,3],mem[3,3]1998; SSE-NEXT:    shufps {{.*#+}} xmm12 = xmm12[0,3],xmm7[2,0]1999; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload2000; SSE-NEXT:    # xmm7 = mem[3,3,3,3]2001; SSE-NEXT:    movss {{.*#+}} xmm12 = xmm7[0],xmm12[1,2,3]2002; SSE-NEXT:    movaps (%rsp), %xmm0 # 16-byte Reload2003; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload2004; SSE-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]2005; SSE-NEXT:    shufps {{.*#+}} xmm9 = xmm9[0,3],xmm0[2,0]2006; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2007; SSE-NEXT:    pshufd {{.*#+}} xmm7 = xmm0[2,3,2,3]2008; SSE-NEXT:    movss {{.*#+}} xmm9 = xmm7[0],xmm9[1,2,3]2009; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload2010; SSE-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]2011; SSE-NEXT:    shufps {{.*#+}} xmm8 = xmm8[0,3],xmm0[2,0]2012; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Folded Reload2013; SSE-NEXT:    # xmm7 = mem[3,3,3,3]2014; SSE-NEXT:    movss {{.*#+}} xmm8 = xmm7[0],xmm8[1,2,3]2015; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %rax2016; SSE-NEXT:    movaps %xmm1, 416(%rax)2017; SSE-NEXT:    movaps %xmm3, 400(%rax)2018; SSE-NEXT:    movaps %xmm4, 384(%rax)2019; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2020; SSE-NEXT:    movaps %xmm0, 352(%rax)2021; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2022; SSE-NEXT:    movaps %xmm0, 336(%rax)2023; SSE-NEXT:    movdqa %xmm5, 288(%rax)2024; SSE-NEXT:    movaps %xmm6, 240(%rax)2025; SSE-NEXT:    movdqa %xmm15, 224(%rax)2026; SSE-NEXT:    movaps %xmm10, 176(%rax)2027; SSE-NEXT:    movaps %xmm11, 128(%rax)2028; SSE-NEXT:    movaps %xmm13, 112(%rax)2029; SSE-NEXT:    movaps %xmm14, 64(%rax)2030; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2031; SSE-NEXT:    movaps %xmm0, 16(%rax)2032; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2033; SSE-NEXT:    movaps %xmm0, (%rax)2034; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2035; SSE-NEXT:    movaps %xmm0, 432(%rax)2036; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2037; SSE-NEXT:    movaps %xmm0, 368(%rax)2038; SSE-NEXT:    movaps %xmm8, 320(%rax)2039; SSE-NEXT:    movaps %xmm9, 304(%rax)2040; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2041; SSE-NEXT:    movaps %xmm0, 272(%rax)2042; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2043; SSE-NEXT:    movaps %xmm0, 256(%rax)2044; SSE-NEXT:    movaps %xmm12, 208(%rax)2045; SSE-NEXT:    movaps %xmm2, 192(%rax)2046; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2047; SSE-NEXT:    movaps %xmm0, 160(%rax)2048; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2049; SSE-NEXT:    movaps %xmm0, 144(%rax)2050; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2051; SSE-NEXT:    movaps %xmm0, 96(%rax)2052; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2053; SSE-NEXT:    movaps %xmm0, 80(%rax)2054; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2055; SSE-NEXT:    movaps %xmm0, 48(%rax)2056; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2057; SSE-NEXT:    movaps %xmm0, 32(%rax)2058; SSE-NEXT:    addq $520, %rsp # imm = 0x2082059; SSE-NEXT:    retq2060;2061; AVX-LABEL: store_i32_stride7_vf16:2062; AVX:       # %bb.0:2063; AVX-NEXT:    subq $472, %rsp # imm = 0x1D82064; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %rax2065; AVX-NEXT:    vmovaps 32(%rdi), %ymm82066; AVX-NEXT:    vmovaps 32(%rsi), %ymm52067; AVX-NEXT:    vmovaps 32(%rdx), %ymm62068; AVX-NEXT:    vmovaps 32(%rcx), %ymm72069; AVX-NEXT:    vmovaps 32(%r8), %ymm02070; AVX-NEXT:    vmovaps 32(%rax), %ymm12071; AVX-NEXT:    vunpckhps {{.*#+}} ymm2 = ymm6[2],ymm7[2],ymm6[3],ymm7[3],ymm6[6],ymm7[6],ymm6[7],ymm7[7]2072; AVX-NEXT:    vunpckhpd {{.*#+}} ymm3 = ymm5[1],ymm8[1],ymm5[3],ymm8[3]2073; AVX-NEXT:    vmovups %ymm5, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2074; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm8[0,1],ymm3[2,0],ymm8[4,5],ymm3[6,4]2075; AVX-NEXT:    vperm2f128 {{.*#+}} ymm2 = ymm3[2,3],ymm2[2,3]2076; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5],ymm0[6,7]2077; AVX-NEXT:    vbroadcastf128 {{.*#+}} ymm3 = mem[0,1,0,1]2078; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm3[1,1,2,2,5,5,6,6]2079; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm3[0],ymm2[1,2,3,4,5,6],ymm3[7]2080; AVX-NEXT:    vperm2f128 {{.*#+}} ymm3 = ymm1[2,3],ymm2[2,3]2081; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm3[1],ymm2[2,3,4],ymm3[5],ymm2[6,7]2082; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2083; AVX-NEXT:    vmovaps 32(%rax), %xmm42084; AVX-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2085; AVX-NEXT:    vmovaps 32(%r9), %xmm102086; AVX-NEXT:    vmovaps %xmm10, (%rsp) # 16-byte Spill2087; AVX-NEXT:    vmovaps 32(%r8), %xmm112088; AVX-NEXT:    vmovaps %xmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2089; AVX-NEXT:    vmovaps 32(%rdi), %xmm122090; AVX-NEXT:    vmovaps 32(%rsi), %xmm92091; AVX-NEXT:    vmovlhps {{.*#+}} xmm2 = xmm9[0],xmm12[0]2092; AVX-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[2,0],xmm12[2,1]2093; AVX-NEXT:    vmovaps %xmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2094; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm2, %ymm22095; AVX-NEXT:    vmovaps 32(%rcx), %xmm132096; AVX-NEXT:    vmovaps 32(%rdx), %xmm142097; AVX-NEXT:    vunpcklps {{.*#+}} xmm3 = xmm14[0],xmm13[0],xmm14[1],xmm13[1]2098; AVX-NEXT:    vmovaps %xmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2099; AVX-NEXT:    vmovaps %xmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2100; AVX-NEXT:    vshufps {{.*#+}} xmm3 = xmm3[0,1,0,1]2101; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1],ymm3[2,3],ymm2[4,5,6,7]2102; AVX-NEXT:    vunpcklps {{.*#+}} xmm3 = xmm11[0],xmm10[0],xmm11[1],xmm10[1]2103; AVX-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm32104; AVX-NEXT:    vinsertf128 $1, %xmm4, %ymm0, %ymm42105; AVX-NEXT:    vunpcklpd {{.*#+}} ymm3 = ymm3[0],ymm4[0],ymm3[2],ymm4[2]2106; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6],ymm2[7]2107; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2108; AVX-NEXT:    vshufps {{.*#+}} xmm2 = xmm10[1,1],xmm11[1,1]2109; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm2, %ymm22110; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm4[5],ymm2[6,7]2111; AVX-NEXT:    vmovaps %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2112; AVX-NEXT:    vunpckhpd {{.*#+}} xmm3 = xmm12[1],xmm9[1]2113; AVX-NEXT:    vshufps {{.*#+}} xmm3 = xmm9[1,1],xmm3[0,2]2114; AVX-NEXT:    vinsertf128 $1, %xmm3, %ymm3, %ymm32115; AVX-NEXT:    vinsertps {{.*#+}} xmm4 = zero,xmm14[1],xmm13[1],zero2116; AVX-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0],ymm4[1,2],ymm3[3,4,5,6,7]2117; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm3[0,1,2],ymm2[3,4,5],ymm3[6,7]2118; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2119; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm5[1,1],ymm8[1,1],ymm5[5,5],ymm8[5,5]2120; AVX-NEXT:    vmovaps %ymm8, %ymm42121; AVX-NEXT:    vmovups %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2122; AVX-NEXT:    vperm2f128 {{.*#+}} ymm2 = ymm2[2,3,2,3]2123; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm6[1,1],ymm7[1,1],ymm6[5,5],ymm7[5,5]2124; AVX-NEXT:    vmovaps %ymm7, %ymm112125; AVX-NEXT:    vmovups %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2126; AVX-NEXT:    vmovups %ymm6, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2127; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm3[5,6],ymm2[7]2128; AVX-NEXT:    vmovaps 32(%r9), %ymm32129; AVX-NEXT:    vunpcklpd {{.*#+}} ymm3 = ymm3[0],ymm0[0],ymm3[2],ymm0[2]2130; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm3[2,0],ymm0[2,1],ymm3[6,4],ymm0[6,5]2131; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm1[2,3],ymm0[2,3]2132; AVX-NEXT:    vextractf128 $1, %ymm0, %xmm02133; AVX-NEXT:    vshufpd {{.*#+}} ymm0 = ymm0[0],ymm1[0],ymm0[2],ymm1[3]2134; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm2[3,4,5,6],ymm0[7]2135; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2136; AVX-NEXT:    vmovaps (%rdi), %xmm142137; AVX-NEXT:    vmovaps (%rsi), %xmm132138; AVX-NEXT:    vunpckhpd {{.*#+}} xmm0 = xmm14[1],xmm13[1]2139; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm13[1,1],xmm0[0,2]2140; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm02141; AVX-NEXT:    vmovaps (%rcx), %xmm72142; AVX-NEXT:    vmovaps (%rdx), %xmm122143; AVX-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm12[1],xmm7[1],zero2144; AVX-NEXT:    vmovaps %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2145; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm1[1,2],ymm0[3,4,5,6,7]2146; AVX-NEXT:    vmovaps (%r9), %xmm32147; AVX-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2148; AVX-NEXT:    vmovaps (%r8), %xmm52149; AVX-NEXT:    vmovaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2150; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm3[1,1],xmm5[1,1]2151; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm1, %ymm12152; AVX-NEXT:    vmovaps (%rax), %xmm22153; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2154; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm0, %ymm22155; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5],ymm1[6,7]2156; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm1[3,4,5],ymm0[6,7]2157; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2158; AVX-NEXT:    vunpcklps {{.*#+}} xmm0 = xmm5[0],xmm3[0],xmm5[1],xmm3[1]2159; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm02160; AVX-NEXT:    vunpcklpd {{.*#+}} ymm0 = ymm0[0],ymm2[0],ymm0[2],ymm2[2]2161; AVX-NEXT:    vmovlhps {{.*#+}} xmm1 = xmm13[0],xmm14[0]2162; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[2,0],xmm14[2,1]2163; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm1, %ymm12164; AVX-NEXT:    vunpcklps {{.*#+}} xmm2 = xmm12[0],xmm7[0],xmm12[1],xmm7[1]2165; AVX-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[0,1,0,1]2166; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]2167; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3],ymm0[4,5,6],ymm1[7]2168; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2169; AVX-NEXT:    vmovaps (%rdi), %ymm102170; AVX-NEXT:    vmovaps (%rsi), %ymm92171; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm9[1,1],ymm10[1,1],ymm9[5,5],ymm10[5,5]2172; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]2173; AVX-NEXT:    vmovaps (%rdx), %ymm82174; AVX-NEXT:    vmovaps (%rcx), %ymm72175; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm8[1,1],ymm7[1,1],ymm8[5,5],ymm7[5,5]2176; AVX-NEXT:    vblendps {{.*#+}} ymm3 = ymm0[0,1,2,3,4],ymm2[5,6],ymm0[7]2177; AVX-NEXT:    vmovaps (%r8), %ymm152178; AVX-NEXT:    vmovaps (%r9), %ymm12179; AVX-NEXT:    vunpcklpd {{.*#+}} ymm2 = ymm1[0],ymm15[0],ymm1[2],ymm15[2]2180; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm2[2,0],ymm15[2,1],ymm2[6,4],ymm15[6,5]2181; AVX-NEXT:    vmovaps (%rax), %ymm52182; AVX-NEXT:    vperm2f128 {{.*#+}} ymm2 = ymm5[2,3],ymm0[2,3]2183; AVX-NEXT:    vextractf128 $1, %ymm0, %xmm02184; AVX-NEXT:    vshufpd {{.*#+}} ymm0 = ymm0[0],ymm2[0],ymm0[2],ymm2[3]2185; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm3[3,4,5,6],ymm0[7]2186; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2187; AVX-NEXT:    vunpckhpd {{.*#+}} ymm0 = ymm9[1],ymm10[1],ymm9[3],ymm10[3]2188; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[0,1,2,0,4,5,6,4]2189; AVX-NEXT:    vunpckhps {{.*#+}} ymm2 = ymm8[2],ymm7[2],ymm8[3],ymm7[3],ymm8[6],ymm7[6],ymm8[7],ymm7[7]2190; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3],ymm2[2,3]2191; AVX-NEXT:    vunpckhpd {{.*#+}} ymm2 = ymm15[1],ymm1[1],ymm15[3],ymm1[3]2192; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm1[1,1],ymm2[0,2],ymm1[5,5],ymm2[4,6]2193; AVX-NEXT:    vperm2f128 {{.*#+}} ymm2 = ymm2[2,3,2,3]2194; AVX-NEXT:    vmovaps 16(%rax), %xmm32195; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm3[1],ymm2[2,3,4,5,6,7]2196; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1],ymm0[2,3,4,5],ymm2[6,7]2197; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2198; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm11[3,3],ymm6[3,3],ymm11[7,7],ymm6[7,7]2199; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]2200; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload2201; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm4[3,3],ymm11[3,3],ymm4[7,7],ymm11[7,7]2202; AVX-NEXT:    vextractf128 $1, %ymm2, %xmm22203; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2],ymm0[3,4,5,6,7]2204; AVX-NEXT:    vbroadcastss 60(%r8), %ymm22205; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm2[5],ymm0[6,7]2206; AVX-NEXT:    vbroadcastss 60(%r9), %ymm22207; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm2[6,7]2208; AVX-NEXT:    vbroadcastsd 56(%rax), %ymm22209; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0],ymm0[1,2,3,4,5,6],ymm2[7]2210; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2211; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm7[3,3],ymm8[3,3],ymm7[7,7],ymm8[7,7]2212; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]2213; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm10[3,3],ymm9[3,3],ymm10[7,7],ymm9[7,7]2214; AVX-NEXT:    vextractf128 $1, %ymm2, %xmm22215; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2],ymm0[3,4,5,6,7]2216; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm15[3,3],ymm1[3,3],ymm15[7,7],ymm1[7,7]2217; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm5[2,3],ymm1[1,2],ymm5[6,7],ymm1[5,6]2218; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm1[2,3,2,3]2219; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[0,2,3,1,4,6,7,5]2220; AVX-NEXT:    vblendps {{.*#+}} ymm15 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]2221; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2222; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload2223; AVX-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]2224; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload2225; AVX-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2, %xmm1 # 16-byte Folded Reload2226; AVX-NEXT:    # xmm1 = xmm2[2],mem[2],xmm2[3],mem[3]2227; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm1, %ymm12228; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm02229; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]2230; AVX-NEXT:    vmovaps (%rsp), %xmm6 # 16-byte Reload2231; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm6[2,2,2,2]2232; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload2233; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm4[0,1,2],xmm1[3]2234; AVX-NEXT:    vbroadcastsd 40(%rax), %ymm22235; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]2236; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3,4],ymm0[5,6,7]2237; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm14[3,3],xmm13[3,3]2238; AVX-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %xmm12, %xmm2 # 16-byte Folded Reload2239; AVX-NEXT:    # xmm2 = xmm12[2],mem[2],xmm12[3],mem[3]2240; AVX-NEXT:    vinsertf128 $1, %xmm12, %ymm2, %ymm22241; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm12242; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6],ymm2[7]2243; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Reload2244; AVX-NEXT:    vshufps {{.*#+}} xmm2 = xmm13[2,2,2,2]2245; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Reload2246; AVX-NEXT:    vblendps {{.*#+}} xmm2 = xmm12[0,1,2],xmm2[3]2247; AVX-NEXT:    vbroadcastsd 8(%rax), %ymm32248; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6,7]2249; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3,4],ymm1[5,6,7]2250; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload2251; AVX-NEXT:    vunpcklps {{.*#+}} ymm2 = ymm2[0],ymm11[0],ymm2[1],ymm11[1],ymm2[4],ymm11[4],ymm2[5],ymm11[5]2252; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload2253; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload2254; AVX-NEXT:    vunpcklpd {{.*#+}} ymm3 = ymm3[0],ymm5[0],ymm3[2],ymm5[2]2255; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm5[3,1],ymm3[0,2],ymm5[7,5],ymm3[4,6]2256; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm3[0,1,2,3],ymm2[4,5],ymm3[6,7]2257; AVX-NEXT:    vshufps {{.*#+}} xmm3 = xmm4[3,3],xmm6[3,3]2258; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload2259; AVX-NEXT:    # xmm3 = xmm3[0,1,2],mem[3]2260; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm3[1,2,3],ymm2[4,5,6,7]2261; AVX-NEXT:    vunpcklps {{.*#+}} ymm3 = ymm10[0],ymm9[0],ymm10[1],ymm9[1],ymm10[4],ymm9[4],ymm10[5],ymm9[5]2262; AVX-NEXT:    vunpcklpd {{.*#+}} ymm5 = ymm8[0],ymm7[0],ymm8[2],ymm7[2]2263; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm7[3,1],ymm5[0,2],ymm7[7,5],ymm5[4,6]2264; AVX-NEXT:    vblendps {{.*#+}} ymm3 = ymm4[0,1,2,3],ymm3[4,5],ymm4[6,7]2265; AVX-NEXT:    vshufps {{.*#+}} xmm4 = xmm12[3,3],xmm13[3,3]2266; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4, %xmm4 # 16-byte Folded Reload2267; AVX-NEXT:    # xmm4 = xmm4[0,1,2],mem[3]2268; AVX-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0],ymm4[1,2,3],ymm3[4,5,6,7]2269; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %rax2270; AVX-NEXT:    vmovaps %ymm3, 96(%rax)2271; AVX-NEXT:    vmovaps %ymm2, 320(%rax)2272; AVX-NEXT:    vmovaps %ymm1, 64(%rax)2273; AVX-NEXT:    vmovaps %ymm0, 288(%rax)2274; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2275; AVX-NEXT:    vmovaps %ymm0, 160(%rax)2276; AVX-NEXT:    vmovaps %ymm15, 192(%rax)2277; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2278; AVX-NEXT:    vmovaps %ymm0, 128(%rax)2279; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2280; AVX-NEXT:    vmovaps %ymm0, (%rax)2281; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2282; AVX-NEXT:    vmovaps %ymm0, 32(%rax)2283; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2284; AVX-NEXT:    vmovaps %ymm0, 352(%rax)2285; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2286; AVX-NEXT:    vmovaps %ymm0, 256(%rax)2287; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2288; AVX-NEXT:    vmovaps %ymm0, 224(%rax)2289; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2290; AVX-NEXT:    vmovaps %ymm0, 416(%rax)2291; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2292; AVX-NEXT:    vmovaps %ymm0, 384(%rax)2293; AVX-NEXT:    addq $472, %rsp # imm = 0x1D82294; AVX-NEXT:    vzeroupper2295; AVX-NEXT:    retq2296;2297; AVX2-LABEL: store_i32_stride7_vf16:2298; AVX2:       # %bb.0:2299; AVX2-NEXT:    subq $488, %rsp # imm = 0x1E82300; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %rax2301; AVX2-NEXT:    vmovaps (%rax), %xmm62302; AVX2-NEXT:    vmovaps %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2303; AVX2-NEXT:    vmovaps 32(%rax), %xmm02304; AVX2-NEXT:    vmovaps %xmm0, (%rsp) # 16-byte Spill2305; AVX2-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm02306; AVX2-NEXT:    vmovaps (%r8), %xmm82307; AVX2-NEXT:    vmovaps %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2308; AVX2-NEXT:    vmovaps 32(%r8), %xmm22309; AVX2-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2310; AVX2-NEXT:    vmovaps (%r9), %xmm92311; AVX2-NEXT:    vmovaps %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2312; AVX2-NEXT:    vmovaps 32(%r9), %xmm12313; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2314; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,1,1]2315; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0],xmm2[1],xmm1[2,3]2316; AVX2-NEXT:    vbroadcastsd %xmm1, %ymm12317; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5],ymm1[6,7]2318; AVX2-NEXT:    vmovaps (%rcx), %xmm32319; AVX2-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2320; AVX2-NEXT:    vmovaps 32(%rcx), %xmm122321; AVX2-NEXT:    vmovaps 32(%rdx), %xmm102322; AVX2-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm10[1],xmm12[1],zero2323; AVX2-NEXT:    vmovaps (%rdi), %xmm112324; AVX2-NEXT:    vmovaps %xmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2325; AVX2-NEXT:    vmovaps 32(%rdi), %xmm72326; AVX2-NEXT:    vmovaps (%rsi), %xmm12327; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2328; AVX2-NEXT:    vmovaps 32(%rsi), %xmm52329; AVX2-NEXT:    vshufps {{.*#+}} xmm4 = xmm5[1,1,2,2]2330; AVX2-NEXT:    vblendps {{.*#+}} xmm4 = xmm4[0,1],xmm7[2],xmm4[3]2331; AVX2-NEXT:    vpermpd {{.*#+}} ymm4 = ymm4[0,1,2,1]2332; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm4[0],ymm2[1,2],ymm4[3,4,5,6,7]2333; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2],ymm0[3,4,5],ymm2[6,7]2334; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2335; AVX2-NEXT:    vinsertf128 $1, %xmm6, %ymm0, %ymm02336; AVX2-NEXT:    vshufps {{.*#+}} xmm2 = xmm9[1,1,1,1]2337; AVX2-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0],xmm8[1],xmm2[2,3]2338; AVX2-NEXT:    vbroadcastsd %xmm2, %ymm22339; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2,3,4],ymm0[5],ymm2[6,7]2340; AVX2-NEXT:    vshufps {{.*#+}} xmm2 = xmm1[1,1,2,2]2341; AVX2-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0,1],xmm11[2],xmm2[3]2342; AVX2-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[0,1,2,1]2343; AVX2-NEXT:    vmovaps (%rdx), %xmm132344; AVX2-NEXT:    vinsertps {{.*#+}} xmm4 = zero,xmm13[1],xmm3[1],zero2345; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm4[1,2],ymm2[3,4,5,6,7]2346; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2],ymm0[3,4,5],ymm2[6,7]2347; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2348; AVX2-NEXT:    vmovaps (%rdi), %ymm02349; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2350; AVX2-NEXT:    vmovaps (%rsi), %ymm12351; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2352; AVX2-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm1[2],ymm0[3],ymm1[3],ymm0[6],ymm1[6],ymm0[7],ymm1[7]2353; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]2354; AVX2-NEXT:    vmovaps (%rdx), %ymm12355; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2356; AVX2-NEXT:    vmovaps (%rcx), %ymm142357; AVX2-NEXT:    vunpckhps {{.*#+}} ymm2 = ymm1[2],ymm14[2],ymm1[3],ymm14[3],ymm1[6],ymm14[6],ymm1[7],ymm14[7]2358; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm2[4,5,6,7]2359; AVX2-NEXT:    vmovaps (%r8), %ymm12360; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2361; AVX2-NEXT:    vmovaps (%r9), %ymm22362; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2363; AVX2-NEXT:    vshufps {{.*#+}} ymm2 = ymm2[1,1,2,2,5,5,6,6]2364; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1],ymm1[2],ymm2[3,4,5],ymm1[6],ymm2[7]2365; AVX2-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[2,1,2,3]2366; AVX2-NEXT:    vmovaps 16(%rax), %xmm42367; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm4[1],ymm2[2,3,4,5,6,7]2368; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1],ymm0[2,3,4,5],ymm2[6,7]2369; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2370; AVX2-NEXT:    vmovaps 32(%rdi), %ymm112371; AVX2-NEXT:    vmovaps 32(%rsi), %ymm62372; AVX2-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm11[2],ymm6[2],ymm11[3],ymm6[3],ymm11[6],ymm6[6],ymm11[7],ymm6[7]2373; AVX2-NEXT:    vpermpd {{.*#+}} ymm9 = ymm0[2,2,2,2]2374; AVX2-NEXT:    vmovaps 32(%rdx), %ymm42375; AVX2-NEXT:    vmovaps 32(%rcx), %ymm82376; AVX2-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm4[2],ymm8[2],ymm4[3],ymm8[3],ymm4[6],ymm8[6],ymm4[7],ymm8[7]2377; AVX2-NEXT:    vblendps {{.*#+}} ymm9 = ymm9[0,1,2,3],ymm0[4,5,6,7]2378; AVX2-NEXT:    vmovaps 32(%r8), %ymm12379; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2380; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm9[0,1,2,3,4,5],ymm1[6,7]2381; AVX2-NEXT:    vmovaps 32(%r9), %ymm92382; AVX2-NEXT:    vshufps {{.*#+}} ymm15 = ymm9[1,2,2,3,5,6,6,7]2383; AVX2-NEXT:    vpermpd {{.*#+}} ymm15 = ymm15[2,2,2,2]2384; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm15[0],ymm1[1,2,3,4,5,6],ymm15[7]2385; AVX2-NEXT:    vperm2f128 {{.*#+}} ymm0 = mem[2,3],ymm0[2,3]2386; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1],ymm1[2,3,4],ymm0[5],ymm1[6,7]2387; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2388; AVX2-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm8[2],ymm4[2],ymm8[3],ymm4[3],ymm8[6],ymm4[6],ymm8[7],ymm4[7]2389; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]2390; AVX2-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm6[2],ymm11[2],ymm6[3],ymm11[3],ymm6[6],ymm11[6],ymm6[7],ymm11[7]2391; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[3,3,3,3]2392; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]2393; AVX2-NEXT:    vbroadcastss 60(%r8), %ymm12394; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]2395; AVX2-NEXT:    vbroadcastss 60(%r9), %ymm12396; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm1[6,7]2397; AVX2-NEXT:    vbroadcastsd 56(%rax), %ymm12398; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4,5,6],ymm1[7]2399; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2400; AVX2-NEXT:    vshufps {{.*#+}} xmm0 = xmm7[3,3],xmm5[3,3]2401; AVX2-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm02402; AVX2-NEXT:    vunpckhps {{.*#+}} xmm1 = xmm10[2],xmm12[2],xmm10[3],xmm12[3]2403; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,2,2]2404; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]2405; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]2406; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload2407; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm2[2,2,2,2]2408; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2409; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm0[0,1,2],xmm1[3]2410; AVX2-NEXT:    vbroadcastsd 40(%rax), %ymm152411; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm15[4,5,6,7]2412; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm3[0,1],ymm1[2,3,4],ymm3[5,6,7]2413; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2414; AVX2-NEXT:    vbroadcastss %xmm12, %xmm32415; AVX2-NEXT:    vbroadcastss %xmm10, %xmm12416; AVX2-NEXT:    vunpcklps {{.*#+}} xmm3 = xmm1[0],xmm3[0],xmm1[1],xmm3[1]2417; AVX2-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm7[0],xmm5[0],xmm7[1],xmm5[1]2418; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,2,2]2419; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]2420; AVX2-NEXT:    vblendps {{.*#+}} ymm5 = ymm1[0,1],ymm3[2,3],ymm1[4,5,6,7]2421; AVX2-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm0[0],xmm2[0],xmm0[1],xmm2[1]2422; AVX2-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm12423; AVX2-NEXT:    vmovaps (%rsp), %xmm15 # 16-byte Reload2424; AVX2-NEXT:    vbroadcastsd %xmm15, %ymm32425; AVX2-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm1[0],ymm3[0],ymm1[2],ymm3[2]2426; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0,1,2,3],ymm1[4,5,6],ymm5[7]2427; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2428; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload2429; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Reload2430; AVX2-NEXT:    vshufps {{.*#+}} xmm0 = xmm7[3,3],xmm12[3,3]2431; AVX2-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm02432; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload2433; AVX2-NEXT:    vunpckhps {{.*#+}} xmm1 = xmm13[2],xmm2[2],xmm13[3],xmm2[3]2434; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,2,2]2435; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]2436; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]2437; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload2438; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm5[2,2,2,2]2439; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload2440; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm10[0,1,2],xmm1[3]2441; AVX2-NEXT:    vbroadcastsd 8(%rax), %ymm32442; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm3[4,5,6,7]2443; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3,4],ymm0[5,6,7]2444; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2445; AVX2-NEXT:    vbroadcastss %xmm2, %xmm02446; AVX2-NEXT:    vbroadcastss %xmm13, %xmm32447; AVX2-NEXT:    vunpcklps {{.*#+}} xmm0 = xmm3[0],xmm0[0],xmm3[1],xmm0[1]2448; AVX2-NEXT:    vunpcklps {{.*#+}} xmm3 = xmm7[0],xmm12[0],xmm7[1],xmm12[1]2449; AVX2-NEXT:    vshufps {{.*#+}} xmm3 = xmm3[0,1,2,2]2450; AVX2-NEXT:    vpermpd {{.*#+}} ymm3 = ymm3[0,1,2,1]2451; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm3[0,1],ymm0[2,3],ymm3[4,5,6,7]2452; AVX2-NEXT:    vunpcklps {{.*#+}} xmm3 = xmm10[0],xmm5[0],xmm10[1],xmm5[1]2453; AVX2-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm32454; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Reload2455; AVX2-NEXT:    vbroadcastsd %xmm12, %ymm52456; AVX2-NEXT:    vunpcklpd {{.*#+}} ymm3 = ymm3[0],ymm5[0],ymm3[2],ymm5[2]2457; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm3[4,5,6],ymm0[7]2458; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2459; AVX2-NEXT:    vshufps {{.*#+}} ymm0 = ymm4[1,1],ymm8[1,1],ymm4[5,5],ymm8[5,5]2460; AVX2-NEXT:    vshufps {{.*#+}} ymm2 = ymm6[1,1,1,1,5,5,5,5]2461; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm11[1],ymm2[2,3,4],ymm11[5],ymm2[6,7]2462; AVX2-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[2,2,2,2]2463; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2,3,4],ymm0[5,6],ymm2[7]2464; AVX2-NEXT:    vshufps {{.*#+}} ymm2 = ymm9[0,0,0,0,4,4,4,4]2465; AVX2-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Folded Reload2466; AVX2-NEXT:    # ymm5 = mem[0,1,0,1,4,5,4,5]2467; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm5[0],ymm2[1],ymm5[2,3,4],ymm2[5],ymm5[6,7]2468; AVX2-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[2,1,2,3]2469; AVX2-NEXT:    vbroadcastsd 48(%rax), %ymm52470; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1],ymm5[2,3],ymm2[4,5,6,7]2471; AVX2-NEXT:    vblendps {{.*#+}} ymm10 = ymm2[0,1,2],ymm0[3,4,5,6],ymm2[7]2472; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 32-byte Reload2473; AVX2-NEXT:    vshufps {{.*#+}} ymm2 = ymm13[1,1,1,1,5,5,5,5]2474; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload2475; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm9[1],ymm2[2,3,4],ymm9[5],ymm2[6,7]2476; AVX2-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[2,2,2,2]2477; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2478; AVX2-NEXT:    vshufps {{.*#+}} ymm5 = ymm0[1,1],ymm14[1,1],ymm0[5,5],ymm14[5,5]2479; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm5[5,6],ymm2[7]2480; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload2481; AVX2-NEXT:    vshufps {{.*#+}} ymm5 = ymm3[0,0,0,0,4,4,4,4]2482; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload2483; AVX2-NEXT:    vshufps {{.*#+}} ymm7 = ymm1[0,1,0,1,4,5,4,5]2484; AVX2-NEXT:    vblendps {{.*#+}} ymm5 = ymm7[0],ymm5[1],ymm7[2,3,4],ymm5[5],ymm7[6,7]2485; AVX2-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[2,1,2,3]2486; AVX2-NEXT:    vbroadcastsd 16(%rax), %ymm72487; AVX2-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1],ymm7[2,3],ymm5[4,5,6,7]2488; AVX2-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2],ymm2[3,4,5,6],ymm5[7]2489; AVX2-NEXT:    vunpckhps {{.*#+}} ymm2 = ymm14[2],ymm0[2],ymm14[3],ymm0[3],ymm14[6],ymm0[6],ymm14[7],ymm0[7]2490; AVX2-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[3,3,3,3]2491; AVX2-NEXT:    vunpckhps {{.*#+}} ymm7 = ymm13[2],ymm9[2],ymm13[3],ymm9[3],ymm13[6],ymm9[6],ymm13[7],ymm9[7]2492; AVX2-NEXT:    vmovaps %ymm9, %ymm02493; AVX2-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[3,3,3,3]2494; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm7[0,1,2],ymm2[3,4,5,6,7]2495; AVX2-NEXT:    vshufps {{.*#+}} ymm7 = ymm1[3,3],ymm3[3,3],ymm1[7,7],ymm3[7,7]2496; AVX2-NEXT:    vpermilps {{.*#+}} ymm9 = mem[2,3,2,3,6,7,6,7]2497; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm9[0],ymm7[1,2],ymm9[3,4],ymm7[5,6],ymm9[7]2498; AVX2-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[2,1,2,3]2499; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm7[0],ymm2[1,2,3,4],ymm7[5,6,7]2500; AVX2-NEXT:    vunpcklps {{.*#+}} ymm6 = ymm11[0],ymm6[0],ymm11[1],ymm6[1],ymm11[4],ymm6[4],ymm11[5],ymm6[5]2501; AVX2-NEXT:    vshufps {{.*#+}} ymm4 = ymm8[3,1,2,0,7,5,6,4]2502; AVX2-NEXT:    vbroadcastss 48(%rdx), %ymm72503; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5],ymm7[6],ymm4[7]2504; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3],ymm6[4,5],ymm4[6,7]2505; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload2506; AVX2-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm6 # 16-byte Folded Reload2507; AVX2-NEXT:    # xmm6 = xmm1[3,3],mem[3,3]2508; AVX2-NEXT:    vblendps {{.*#+}} xmm6 = xmm6[0,1,2],xmm15[3]2509; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0],ymm6[1,2,3],ymm4[4,5,6,7]2510; AVX2-NEXT:    vunpcklps {{.*#+}} ymm6 = ymm0[0],ymm13[0],ymm0[1],ymm13[1],ymm0[4],ymm13[4],ymm0[5],ymm13[5]2511; AVX2-NEXT:    vshufps {{.*#+}} ymm7 = ymm14[3,1,2,0,7,5,6,4]2512; AVX2-NEXT:    vbroadcastss 16(%rdx), %ymm82513; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3,4,5],ymm8[6],ymm7[7]2514; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1,2,3],ymm6[4,5],ymm7[6,7]2515; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2516; AVX2-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm7 # 16-byte Folded Reload2517; AVX2-NEXT:    # xmm7 = xmm0[3,3],mem[3,3]2518; AVX2-NEXT:    vblendps {{.*#+}} xmm7 = xmm7[0,1,2],xmm12[3]2519; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0],ymm7[1,2,3],ymm6[4,5,6,7]2520; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %rax2521; AVX2-NEXT:    vmovaps %ymm6, 96(%rax)2522; AVX2-NEXT:    vmovaps %ymm4, 320(%rax)2523; AVX2-NEXT:    vmovaps %ymm2, 192(%rax)2524; AVX2-NEXT:    vmovaps %ymm5, 128(%rax)2525; AVX2-NEXT:    vmovaps %ymm10, 352(%rax)2526; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2527; AVX2-NEXT:    vmovaps %ymm0, 160(%rax)2528; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2529; AVX2-NEXT:    vmovaps %ymm0, (%rax)2530; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2531; AVX2-NEXT:    vmovaps %ymm0, 32(%rax)2532; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2533; AVX2-NEXT:    vmovaps %ymm0, 64(%rax)2534; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2535; AVX2-NEXT:    vmovaps %ymm0, 256(%rax)2536; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2537; AVX2-NEXT:    vmovaps %ymm0, 224(%rax)2538; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2539; AVX2-NEXT:    vmovaps %ymm0, 288(%rax)2540; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2541; AVX2-NEXT:    vmovaps %ymm0, 416(%rax)2542; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2543; AVX2-NEXT:    vmovaps %ymm0, 384(%rax)2544; AVX2-NEXT:    addq $488, %rsp # imm = 0x1E82545; AVX2-NEXT:    vzeroupper2546; AVX2-NEXT:    retq2547;2548; AVX2-FP-LABEL: store_i32_stride7_vf16:2549; AVX2-FP:       # %bb.0:2550; AVX2-FP-NEXT:    subq $488, %rsp # imm = 0x1E82551; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %rax2552; AVX2-FP-NEXT:    vmovaps (%rax), %xmm62553; AVX2-FP-NEXT:    vmovaps %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2554; AVX2-FP-NEXT:    vmovaps 32(%rax), %xmm02555; AVX2-FP-NEXT:    vmovaps %xmm0, (%rsp) # 16-byte Spill2556; AVX2-FP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm02557; AVX2-FP-NEXT:    vmovaps (%r8), %xmm82558; AVX2-FP-NEXT:    vmovaps %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2559; AVX2-FP-NEXT:    vmovaps 32(%r8), %xmm22560; AVX2-FP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2561; AVX2-FP-NEXT:    vmovaps (%r9), %xmm92562; AVX2-FP-NEXT:    vmovaps %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2563; AVX2-FP-NEXT:    vmovaps 32(%r9), %xmm12564; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2565; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,1,1]2566; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0],xmm2[1],xmm1[2,3]2567; AVX2-FP-NEXT:    vbroadcastsd %xmm1, %ymm12568; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5],ymm1[6,7]2569; AVX2-FP-NEXT:    vmovaps (%rcx), %xmm32570; AVX2-FP-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2571; AVX2-FP-NEXT:    vmovaps 32(%rcx), %xmm122572; AVX2-FP-NEXT:    vmovaps 32(%rdx), %xmm102573; AVX2-FP-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm10[1],xmm12[1],zero2574; AVX2-FP-NEXT:    vmovaps (%rdi), %xmm112575; AVX2-FP-NEXT:    vmovaps %xmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2576; AVX2-FP-NEXT:    vmovaps 32(%rdi), %xmm72577; AVX2-FP-NEXT:    vmovaps (%rsi), %xmm12578; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2579; AVX2-FP-NEXT:    vmovaps 32(%rsi), %xmm52580; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm4 = xmm5[1,1,2,2]2581; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm4 = xmm4[0,1],xmm7[2],xmm4[3]2582; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm4 = ymm4[0,1,2,1]2583; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm4[0],ymm2[1,2],ymm4[3,4,5,6,7]2584; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2],ymm0[3,4,5],ymm2[6,7]2585; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2586; AVX2-FP-NEXT:    vinsertf128 $1, %xmm6, %ymm0, %ymm02587; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm2 = xmm9[1,1,1,1]2588; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0],xmm8[1],xmm2[2,3]2589; AVX2-FP-NEXT:    vbroadcastsd %xmm2, %ymm22590; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2,3,4],ymm0[5],ymm2[6,7]2591; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm2 = xmm1[1,1,2,2]2592; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0,1],xmm11[2],xmm2[3]2593; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[0,1,2,1]2594; AVX2-FP-NEXT:    vmovaps (%rdx), %xmm132595; AVX2-FP-NEXT:    vinsertps {{.*#+}} xmm4 = zero,xmm13[1],xmm3[1],zero2596; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm4[1,2],ymm2[3,4,5,6,7]2597; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2],ymm0[3,4,5],ymm2[6,7]2598; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2599; AVX2-FP-NEXT:    vmovaps (%rdi), %ymm02600; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2601; AVX2-FP-NEXT:    vmovaps (%rsi), %ymm12602; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2603; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm1[2],ymm0[3],ymm1[3],ymm0[6],ymm1[6],ymm0[7],ymm1[7]2604; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]2605; AVX2-FP-NEXT:    vmovaps (%rdx), %ymm12606; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2607; AVX2-FP-NEXT:    vmovaps (%rcx), %ymm142608; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm2 = ymm1[2],ymm14[2],ymm1[3],ymm14[3],ymm1[6],ymm14[6],ymm1[7],ymm14[7]2609; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm2[4,5,6,7]2610; AVX2-FP-NEXT:    vmovaps (%r8), %ymm12611; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2612; AVX2-FP-NEXT:    vmovaps (%r9), %ymm22613; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2614; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm2 = ymm2[1,1,2,2,5,5,6,6]2615; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1],ymm1[2],ymm2[3,4,5],ymm1[6],ymm2[7]2616; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[2,1,2,3]2617; AVX2-FP-NEXT:    vmovaps 16(%rax), %xmm42618; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm4[1],ymm2[2,3,4,5,6,7]2619; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1],ymm0[2,3,4,5],ymm2[6,7]2620; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2621; AVX2-FP-NEXT:    vmovaps 32(%rdi), %ymm112622; AVX2-FP-NEXT:    vmovaps 32(%rsi), %ymm62623; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm11[2],ymm6[2],ymm11[3],ymm6[3],ymm11[6],ymm6[6],ymm11[7],ymm6[7]2624; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm9 = ymm0[2,2,2,2]2625; AVX2-FP-NEXT:    vmovaps 32(%rdx), %ymm42626; AVX2-FP-NEXT:    vmovaps 32(%rcx), %ymm82627; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm4[2],ymm8[2],ymm4[3],ymm8[3],ymm4[6],ymm8[6],ymm4[7],ymm8[7]2628; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm9 = ymm9[0,1,2,3],ymm0[4,5,6,7]2629; AVX2-FP-NEXT:    vmovaps 32(%r8), %ymm12630; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2631; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm9[0,1,2,3,4,5],ymm1[6,7]2632; AVX2-FP-NEXT:    vmovaps 32(%r9), %ymm92633; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm15 = ymm9[1,2,2,3,5,6,6,7]2634; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm15 = ymm15[2,2,2,2]2635; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm15[0],ymm1[1,2,3,4,5,6],ymm15[7]2636; AVX2-FP-NEXT:    vperm2f128 {{.*#+}} ymm0 = mem[2,3],ymm0[2,3]2637; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1],ymm1[2,3,4],ymm0[5],ymm1[6,7]2638; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2639; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm8[2],ymm4[2],ymm8[3],ymm4[3],ymm8[6],ymm4[6],ymm8[7],ymm4[7]2640; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]2641; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm6[2],ymm11[2],ymm6[3],ymm11[3],ymm6[6],ymm11[6],ymm6[7],ymm11[7]2642; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[3,3,3,3]2643; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]2644; AVX2-FP-NEXT:    vbroadcastss 60(%r8), %ymm12645; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]2646; AVX2-FP-NEXT:    vbroadcastss 60(%r9), %ymm12647; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm1[6,7]2648; AVX2-FP-NEXT:    vbroadcastsd 56(%rax), %ymm12649; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4,5,6],ymm1[7]2650; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2651; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm0 = xmm7[3,3],xmm5[3,3]2652; AVX2-FP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm02653; AVX2-FP-NEXT:    vunpckhps {{.*#+}} xmm1 = xmm10[2],xmm12[2],xmm10[3],xmm12[3]2654; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,2,2]2655; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]2656; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]2657; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload2658; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm2[2,2,2,2]2659; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2660; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm0[0,1,2],xmm1[3]2661; AVX2-FP-NEXT:    vbroadcastsd 40(%rax), %ymm152662; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm15[4,5,6,7]2663; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm3[0,1],ymm1[2,3,4],ymm3[5,6,7]2664; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2665; AVX2-FP-NEXT:    vbroadcastss %xmm12, %xmm32666; AVX2-FP-NEXT:    vbroadcastss %xmm10, %xmm12667; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm3 = xmm1[0],xmm3[0],xmm1[1],xmm3[1]2668; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm7[0],xmm5[0],xmm7[1],xmm5[1]2669; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,2,2]2670; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]2671; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm5 = ymm1[0,1],ymm3[2,3],ymm1[4,5,6,7]2672; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm0[0],xmm2[0],xmm0[1],xmm2[1]2673; AVX2-FP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm12674; AVX2-FP-NEXT:    vmovaps (%rsp), %xmm15 # 16-byte Reload2675; AVX2-FP-NEXT:    vbroadcastsd %xmm15, %ymm32676; AVX2-FP-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm1[0],ymm3[0],ymm1[2],ymm3[2]2677; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0,1,2,3],ymm1[4,5,6],ymm5[7]2678; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2679; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload2680; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Reload2681; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm0 = xmm7[3,3],xmm12[3,3]2682; AVX2-FP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm02683; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload2684; AVX2-FP-NEXT:    vunpckhps {{.*#+}} xmm1 = xmm13[2],xmm2[2],xmm13[3],xmm2[3]2685; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,2,2]2686; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]2687; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]2688; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload2689; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm5[2,2,2,2]2690; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload2691; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm10[0,1,2],xmm1[3]2692; AVX2-FP-NEXT:    vbroadcastsd 8(%rax), %ymm32693; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm3[4,5,6,7]2694; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3,4],ymm0[5,6,7]2695; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2696; AVX2-FP-NEXT:    vbroadcastss %xmm2, %xmm02697; AVX2-FP-NEXT:    vbroadcastss %xmm13, %xmm32698; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm0 = xmm3[0],xmm0[0],xmm3[1],xmm0[1]2699; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm3 = xmm7[0],xmm12[0],xmm7[1],xmm12[1]2700; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm3 = xmm3[0,1,2,2]2701; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm3 = ymm3[0,1,2,1]2702; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm3[0,1],ymm0[2,3],ymm3[4,5,6,7]2703; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm3 = xmm10[0],xmm5[0],xmm10[1],xmm5[1]2704; AVX2-FP-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm32705; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Reload2706; AVX2-FP-NEXT:    vbroadcastsd %xmm12, %ymm52707; AVX2-FP-NEXT:    vunpcklpd {{.*#+}} ymm3 = ymm3[0],ymm5[0],ymm3[2],ymm5[2]2708; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm3[4,5,6],ymm0[7]2709; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2710; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm0 = ymm4[1,1],ymm8[1,1],ymm4[5,5],ymm8[5,5]2711; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm2 = ymm6[1,1,1,1,5,5,5,5]2712; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm11[1],ymm2[2,3,4],ymm11[5],ymm2[6,7]2713; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[2,2,2,2]2714; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2,3,4],ymm0[5,6],ymm2[7]2715; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm2 = ymm9[0,0,0,0,4,4,4,4]2716; AVX2-FP-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Folded Reload2717; AVX2-FP-NEXT:    # ymm5 = mem[0,1,0,1,4,5,4,5]2718; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm5[0],ymm2[1],ymm5[2,3,4],ymm2[5],ymm5[6,7]2719; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[2,1,2,3]2720; AVX2-FP-NEXT:    vbroadcastsd 48(%rax), %ymm52721; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1],ymm5[2,3],ymm2[4,5,6,7]2722; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm10 = ymm2[0,1,2],ymm0[3,4,5,6],ymm2[7]2723; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 32-byte Reload2724; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm2 = ymm13[1,1,1,1,5,5,5,5]2725; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload2726; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm9[1],ymm2[2,3,4],ymm9[5],ymm2[6,7]2727; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[2,2,2,2]2728; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2729; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm5 = ymm0[1,1],ymm14[1,1],ymm0[5,5],ymm14[5,5]2730; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm5[5,6],ymm2[7]2731; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload2732; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm5 = ymm3[0,0,0,0,4,4,4,4]2733; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload2734; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm7 = ymm1[0,1,0,1,4,5,4,5]2735; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm5 = ymm7[0],ymm5[1],ymm7[2,3,4],ymm5[5],ymm7[6,7]2736; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[2,1,2,3]2737; AVX2-FP-NEXT:    vbroadcastsd 16(%rax), %ymm72738; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1],ymm7[2,3],ymm5[4,5,6,7]2739; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2],ymm2[3,4,5,6],ymm5[7]2740; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm2 = ymm14[2],ymm0[2],ymm14[3],ymm0[3],ymm14[6],ymm0[6],ymm14[7],ymm0[7]2741; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[3,3,3,3]2742; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm7 = ymm13[2],ymm9[2],ymm13[3],ymm9[3],ymm13[6],ymm9[6],ymm13[7],ymm9[7]2743; AVX2-FP-NEXT:    vmovaps %ymm9, %ymm02744; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[3,3,3,3]2745; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm7[0,1,2],ymm2[3,4,5,6,7]2746; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm7 = ymm1[3,3],ymm3[3,3],ymm1[7,7],ymm3[7,7]2747; AVX2-FP-NEXT:    vpermilps {{.*#+}} ymm9 = mem[2,3,2,3,6,7,6,7]2748; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm9[0],ymm7[1,2],ymm9[3,4],ymm7[5,6],ymm9[7]2749; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[2,1,2,3]2750; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm7[0],ymm2[1,2,3,4],ymm7[5,6,7]2751; AVX2-FP-NEXT:    vunpcklps {{.*#+}} ymm6 = ymm11[0],ymm6[0],ymm11[1],ymm6[1],ymm11[4],ymm6[4],ymm11[5],ymm6[5]2752; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm4 = ymm8[3,1,2,0,7,5,6,4]2753; AVX2-FP-NEXT:    vbroadcastss 48(%rdx), %ymm72754; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3,4,5],ymm7[6],ymm4[7]2755; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3],ymm6[4,5],ymm4[6,7]2756; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload2757; AVX2-FP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm6 # 16-byte Folded Reload2758; AVX2-FP-NEXT:    # xmm6 = xmm1[3,3],mem[3,3]2759; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm6 = xmm6[0,1,2],xmm15[3]2760; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0],ymm6[1,2,3],ymm4[4,5,6,7]2761; AVX2-FP-NEXT:    vunpcklps {{.*#+}} ymm6 = ymm0[0],ymm13[0],ymm0[1],ymm13[1],ymm0[4],ymm13[4],ymm0[5],ymm13[5]2762; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm7 = ymm14[3,1,2,0,7,5,6,4]2763; AVX2-FP-NEXT:    vbroadcastss 16(%rdx), %ymm82764; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3,4,5],ymm8[6],ymm7[7]2765; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1,2,3],ymm6[4,5],ymm7[6,7]2766; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2767; AVX2-FP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm7 # 16-byte Folded Reload2768; AVX2-FP-NEXT:    # xmm7 = xmm0[3,3],mem[3,3]2769; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm7 = xmm7[0,1,2],xmm12[3]2770; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0],ymm7[1,2,3],ymm6[4,5,6,7]2771; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %rax2772; AVX2-FP-NEXT:    vmovaps %ymm6, 96(%rax)2773; AVX2-FP-NEXT:    vmovaps %ymm4, 320(%rax)2774; AVX2-FP-NEXT:    vmovaps %ymm2, 192(%rax)2775; AVX2-FP-NEXT:    vmovaps %ymm5, 128(%rax)2776; AVX2-FP-NEXT:    vmovaps %ymm10, 352(%rax)2777; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2778; AVX2-FP-NEXT:    vmovaps %ymm0, 160(%rax)2779; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2780; AVX2-FP-NEXT:    vmovaps %ymm0, (%rax)2781; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2782; AVX2-FP-NEXT:    vmovaps %ymm0, 32(%rax)2783; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2784; AVX2-FP-NEXT:    vmovaps %ymm0, 64(%rax)2785; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2786; AVX2-FP-NEXT:    vmovaps %ymm0, 256(%rax)2787; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2788; AVX2-FP-NEXT:    vmovaps %ymm0, 224(%rax)2789; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2790; AVX2-FP-NEXT:    vmovaps %ymm0, 288(%rax)2791; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2792; AVX2-FP-NEXT:    vmovaps %ymm0, 416(%rax)2793; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2794; AVX2-FP-NEXT:    vmovaps %ymm0, 384(%rax)2795; AVX2-FP-NEXT:    addq $488, %rsp # imm = 0x1E82796; AVX2-FP-NEXT:    vzeroupper2797; AVX2-FP-NEXT:    retq2798;2799; AVX2-FCP-LABEL: store_i32_stride7_vf16:2800; AVX2-FCP:       # %bb.0:2801; AVX2-FCP-NEXT:    subq $536, %rsp # imm = 0x2182802; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax2803; AVX2-FCP-NEXT:    vmovaps (%rax), %xmm32804; AVX2-FCP-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2805; AVX2-FCP-NEXT:    vmovaps 32(%rax), %xmm02806; AVX2-FCP-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2807; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm02808; AVX2-FCP-NEXT:    vmovaps (%r8), %xmm52809; AVX2-FCP-NEXT:    vmovaps %xmm5, (%rsp) # 16-byte Spill2810; AVX2-FCP-NEXT:    vmovaps 32(%r8), %xmm22811; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2812; AVX2-FCP-NEXT:    vmovaps (%r9), %xmm72813; AVX2-FCP-NEXT:    vmovaps %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2814; AVX2-FCP-NEXT:    vmovaps 32(%r9), %xmm142815; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm14[1,1,1,1]2816; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0],xmm2[1],xmm1[2,3]2817; AVX2-FCP-NEXT:    vbroadcastsd %xmm1, %ymm12818; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5],ymm1[6,7]2819; AVX2-FCP-NEXT:    vmovaps (%rcx), %xmm82820; AVX2-FCP-NEXT:    vmovaps %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2821; AVX2-FCP-NEXT:    vmovaps 32(%rcx), %xmm112822; AVX2-FCP-NEXT:    vmovaps 32(%rdx), %xmm102823; AVX2-FCP-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm10[1],xmm11[1],zero2824; AVX2-FCP-NEXT:    vmovaps (%rdi), %xmm122825; AVX2-FCP-NEXT:    vmovaps %xmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2826; AVX2-FCP-NEXT:    vmovaps 32(%rdi), %xmm92827; AVX2-FCP-NEXT:    vmovaps (%rsi), %xmm42828; AVX2-FCP-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2829; AVX2-FCP-NEXT:    vmovaps 32(%rsi), %xmm62830; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm2 = xmm6[1,1,2,2]2831; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0,1],xmm9[2],xmm2[3]2832; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[0,1,2,1]2833; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1,2],ymm2[3,4,5,6,7]2834; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]2835; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2836; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm02837; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm7[1,1,1,1]2838; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0],xmm5[1],xmm1[2,3]2839; AVX2-FCP-NEXT:    vbroadcastsd %xmm1, %ymm12840; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5],ymm1[6,7]2841; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm4[1,1,2,2]2842; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm12[2],xmm1[3]2843; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]2844; AVX2-FCP-NEXT:    vmovaps (%rdx), %xmm22845; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2846; AVX2-FCP-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm2[1],xmm8[1],zero2847; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]2848; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]2849; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2850; AVX2-FCP-NEXT:    vmovaps (%rdi), %ymm02851; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2852; AVX2-FCP-NEXT:    vmovaps (%rsi), %ymm12853; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2854; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm1[2],ymm0[3],ymm1[3],ymm0[6],ymm1[6],ymm0[7],ymm1[7]2855; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]2856; AVX2-FCP-NEXT:    vmovaps (%rdx), %ymm12857; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2858; AVX2-FCP-NEXT:    vmovaps (%rcx), %ymm22859; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2860; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]2861; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]2862; AVX2-FCP-NEXT:    vmovaps (%r8), %ymm22863; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2864; AVX2-FCP-NEXT:    vmovaps (%r9), %ymm12865; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2866; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]2867; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]2868; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]2869; AVX2-FCP-NEXT:    vmovaps 16(%rax), %xmm22870; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]2871; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]2872; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2873; AVX2-FCP-NEXT:    vmovaps 32(%rdi), %ymm132874; AVX2-FCP-NEXT:    vmovaps 32(%rsi), %ymm122875; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm13[2],ymm12[2],ymm13[3],ymm12[3],ymm13[6],ymm12[6],ymm13[7],ymm12[7]2876; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm2 = ymm0[2,2,2,2]2877; AVX2-FCP-NEXT:    vmovaps 32(%rdx), %ymm32878; AVX2-FCP-NEXT:    vmovaps 32(%rcx), %ymm82879; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm3[2],ymm8[2],ymm3[3],ymm8[3],ymm3[6],ymm8[6],ymm3[7],ymm8[7]2880; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm0[4,5,6,7]2881; AVX2-FCP-NEXT:    vmovaps 32(%r8), %ymm72882; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0,1,2,3,4,5],ymm7[6,7]2883; AVX2-FCP-NEXT:    vmovaps 32(%r9), %ymm42884; AVX2-FCP-NEXT:    vbroadcastsd {{.*#+}} ymm15 = [5,6,5,6,5,6,5,6]2885; AVX2-FCP-NEXT:    vpermps %ymm4, %ymm15, %ymm152886; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm15[0],ymm1[1,2,3,4,5,6],ymm15[7]2887; AVX2-FCP-NEXT:    vperm2f128 {{.*#+}} ymm0 = mem[2,3],ymm0[2,3]2888; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1],ymm1[2,3,4],ymm0[5],ymm1[6,7]2889; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2890; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm8[2],ymm3[2],ymm8[3],ymm3[3],ymm8[6],ymm3[6],ymm8[7],ymm3[7]2891; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]2892; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm12[2],ymm13[2],ymm12[3],ymm13[3],ymm12[6],ymm13[6],ymm12[7],ymm13[7]2893; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[3,3,3,3]2894; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]2895; AVX2-FCP-NEXT:    vbroadcastss 60(%r8), %ymm12896; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]2897; AVX2-FCP-NEXT:    vbroadcastss 60(%r9), %ymm12898; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm1[6,7]2899; AVX2-FCP-NEXT:    vbroadcastsd 56(%rax), %ymm12900; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4,5,6],ymm1[7]2901; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2902; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm0 = xmm9[3,3],xmm6[3,3]2903; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm12904; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} xmm15 = xmm10[2],xmm11[2],xmm10[3],xmm11[3]2905; AVX2-FCP-NEXT:    vbroadcastf128 {{.*#+}} ymm5 = [0,1,2,2,0,1,2,2]2906; AVX2-FCP-NEXT:    # ymm5 = mem[0,1,0,1]2907; AVX2-FCP-NEXT:    vpermps %ymm15, %ymm5, %ymm152908; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm15[0,1,2,3,4],ymm1[5,6],ymm15[7]2909; AVX2-FCP-NEXT:    vmovaps %xmm14, %xmm12910; AVX2-FCP-NEXT:    vmovaps %xmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill2911; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm15 = xmm14[2,2,2,2]2912; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2913; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm15 = xmm0[0,1,2],xmm15[3]2914; AVX2-FCP-NEXT:    vbroadcastsd 40(%rax), %ymm142915; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm14 = ymm15[0,1,2,3],ymm14[4,5,6,7]2916; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1],ymm14[2,3,4],ymm2[5,6,7]2917; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2918; AVX2-FCP-NEXT:    vbroadcastss %xmm11, %xmm22919; AVX2-FCP-NEXT:    vbroadcastss %xmm10, %xmm102920; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm2 = xmm10[0],xmm2[0],xmm10[1],xmm2[1]2921; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm6 = xmm9[0],xmm6[0],xmm9[1],xmm6[1]2922; AVX2-FCP-NEXT:    vpermps %ymm6, %ymm5, %ymm62923; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm6[0,1],ymm2[2,3],ymm6[4,5,6,7]2924; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm6 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]2925; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm6, %ymm0, %ymm62926; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload2927; AVX2-FCP-NEXT:    vbroadcastsd %xmm14, %ymm92928; AVX2-FCP-NEXT:    vunpcklpd {{.*#+}} ymm6 = ymm6[0],ymm9[0],ymm6[2],ymm9[2]2929; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2,3],ymm6[4,5,6],ymm2[7]2930; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2931; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm3[1,1],ymm8[1,1],ymm3[5,5],ymm8[5,5]2932; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm3 = ymm12[1,1,1,1,5,5,5,5]2933; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0],ymm13[1],ymm3[2,3,4],ymm13[5],ymm3[6,7]2934; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm3 = ymm3[2,2,2,2]2935; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm3[0,1,2,3,4],ymm1[5,6],ymm3[7]2936; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm2 = ymm4[0,0,0,0,4,4,4,4]2937; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm3 = ymm7[0,1,0,1,4,5,4,5]2938; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm3[0],ymm2[1],ymm3[2,3,4],ymm2[5],ymm3[6,7]2939; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[2,1,2,3]2940; AVX2-FCP-NEXT:    vbroadcastsd 48(%rax), %ymm32941; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1],ymm3[2,3],ymm2[4,5,6,7]2942; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2],ymm1[3,4,5,6],ymm2[7]2943; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2944; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload2945; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload2946; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm2 = xmm1[3,3],xmm6[3,3]2947; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm2, %ymm0, %ymm22948; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload2949; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload2950; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} xmm3 = xmm7[2],xmm0[2],xmm7[3],xmm0[3]2951; AVX2-FCP-NEXT:    vpermps %ymm3, %ymm5, %ymm32952; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm3[0,1,2,3,4],ymm2[5,6],ymm3[7]2953; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload2954; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm3 = xmm9[2,2,2,2]2955; AVX2-FCP-NEXT:    vmovaps (%rsp), %xmm15 # 16-byte Reload2956; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm3 = xmm15[0,1,2],xmm3[3]2957; AVX2-FCP-NEXT:    vbroadcastsd 8(%rax), %ymm42958; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3],ymm4[4,5,6,7]2959; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1],ymm3[2,3,4],ymm2[5,6,7]2960; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2961; AVX2-FCP-NEXT:    vbroadcastss %xmm0, %xmm32962; AVX2-FCP-NEXT:    vbroadcastss %xmm7, %xmm42963; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm3 = xmm4[0],xmm3[0],xmm4[1],xmm3[1]2964; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm4 = xmm1[0],xmm6[0],xmm1[1],xmm6[1]2965; AVX2-FCP-NEXT:    vpermps %ymm4, %ymm5, %ymm02966; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm3[2,3],ymm0[4,5,6,7]2967; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm3 = xmm15[0],xmm9[0],xmm15[1],xmm9[1]2968; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm32969; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload2970; AVX2-FCP-NEXT:    vbroadcastsd %xmm6, %ymm42971; AVX2-FCP-NEXT:    vunpcklpd {{.*#+}} ymm3 = ymm3[0],ymm4[0],ymm3[2],ymm4[2]2972; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm3[4,5,6],ymm0[7]2973; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill2974; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload2975; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm3 = ymm5[1,1,1,1,5,5,5,5]2976; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload2977; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0],ymm0[1],ymm3[2,3,4],ymm0[5],ymm3[6,7]2978; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm3 = ymm3[2,2,2,2]2979; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload2980; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload2981; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm4 = ymm7[1,1],ymm1[1,1],ymm7[5,5],ymm1[5,5]2982; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4],ymm4[5,6],ymm3[7]2983; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload2984; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm4 = ymm10[0,0,0,0,4,4,4,4]2985; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload2986; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm9 = ymm2[0,1,0,1,4,5,4,5]2987; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm9[0],ymm4[1],ymm9[2,3,4],ymm4[5],ymm9[6,7]2988; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm4 = ymm4[2,1,2,3]2989; AVX2-FCP-NEXT:    vbroadcastsd 16(%rax), %ymm92990; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1],ymm9[2,3],ymm4[4,5,6,7]2991; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm11 = ymm4[0,1,2],ymm3[3,4,5,6],ymm4[7]2992; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm4 = ymm1[2],ymm7[2],ymm1[3],ymm7[3],ymm1[6],ymm7[6],ymm1[7],ymm7[7]2993; AVX2-FCP-NEXT:    vmovaps %ymm1, %ymm32994; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm4 = ymm4[3,3,3,3]2995; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm9 = ymm5[2],ymm0[2],ymm5[3],ymm0[3],ymm5[6],ymm0[6],ymm5[7],ymm0[7]2996; AVX2-FCP-NEXT:    vmovaps %ymm0, %ymm12997; AVX2-FCP-NEXT:    vmovaps %ymm5, %ymm02998; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm9 = ymm9[3,3,3,3]2999; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm9[0,1,2],ymm4[3,4,5,6,7]3000; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm9 = ymm2[3,3],ymm10[3,3],ymm2[7,7],ymm10[7,7]3001; AVX2-FCP-NEXT:    vpermilps {{.*#+}} ymm10 = mem[2,3,2,3,6,7,6,7]3002; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm9 = ymm10[0],ymm9[1,2],ymm10[3,4],ymm9[5,6],ymm10[7]3003; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm9 = ymm9[2,1,2,3]3004; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm9[0],ymm4[1,2,3,4],ymm9[5,6,7]3005; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} ymm7 = ymm13[0],ymm12[0],ymm13[1],ymm12[1],ymm13[4],ymm12[4],ymm13[5],ymm12[5]3006; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm5 = ymm8[3,1,2,0,7,5,6,4]3007; AVX2-FCP-NEXT:    vbroadcastss 48(%rdx), %ymm83008; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3,4,5],ymm8[6],ymm5[7]3009; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3],ymm7[4,5],ymm5[6,7]3010; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload3011; AVX2-FCP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm2, %xmm7 # 16-byte Folded Reload3012; AVX2-FCP-NEXT:    # xmm7 = xmm2[3,3],mem[3,3]3013; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm7 = xmm7[0,1,2],xmm14[3]3014; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0],ymm7[1,2,3],ymm5[4,5,6,7]3015; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} ymm7 = ymm1[0],ymm0[0],ymm1[1],ymm0[1],ymm1[4],ymm0[4],ymm1[5],ymm0[5]3016; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm8 = ymm3[3,1,2,0,7,5,6,4]3017; AVX2-FCP-NEXT:    vbroadcastss 16(%rdx), %ymm93018; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1,2,3,4,5],ymm9[6],ymm8[7]3019; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm7 = ymm8[0,1,2,3],ymm7[4,5],ymm8[6,7]3020; AVX2-FCP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm15, %xmm8 # 16-byte Folded Reload3021; AVX2-FCP-NEXT:    # xmm8 = xmm15[3,3],mem[3,3]3022; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm8 = xmm8[0,1,2],xmm6[3]3023; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0],ymm8[1,2,3],ymm7[4,5,6,7]3024; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax3025; AVX2-FCP-NEXT:    vmovaps %ymm7, 96(%rax)3026; AVX2-FCP-NEXT:    vmovaps %ymm5, 320(%rax)3027; AVX2-FCP-NEXT:    vmovaps %ymm4, 192(%rax)3028; AVX2-FCP-NEXT:    vmovaps %ymm11, 128(%rax)3029; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload3030; AVX2-FCP-NEXT:    vmovaps %ymm0, (%rax)3031; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload3032; AVX2-FCP-NEXT:    vmovaps %ymm0, 64(%rax)3033; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload3034; AVX2-FCP-NEXT:    vmovaps %ymm0, 352(%rax)3035; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload3036; AVX2-FCP-NEXT:    vmovaps %ymm0, 224(%rax)3037; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload3038; AVX2-FCP-NEXT:    vmovaps %ymm0, 288(%rax)3039; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload3040; AVX2-FCP-NEXT:    vmovaps %ymm0, 160(%rax)3041; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload3042; AVX2-FCP-NEXT:    vmovaps %ymm0, 32(%rax)3043; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload3044; AVX2-FCP-NEXT:    vmovaps %ymm0, 256(%rax)3045; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload3046; AVX2-FCP-NEXT:    vmovaps %ymm0, 416(%rax)3047; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload3048; AVX2-FCP-NEXT:    vmovaps %ymm0, 384(%rax)3049; AVX2-FCP-NEXT:    addq $536, %rsp # imm = 0x2183050; AVX2-FCP-NEXT:    vzeroupper3051; AVX2-FCP-NEXT:    retq3052;3053; AVX512-LABEL: store_i32_stride7_vf16:3054; AVX512:       # %bb.0:3055; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %rax3056; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %r103057; AVX512-NEXT:    vmovdqa64 (%rdi), %zmm43058; AVX512-NEXT:    vmovdqa64 (%rsi), %zmm63059; AVX512-NEXT:    vmovdqa64 (%rdx), %zmm33060; AVX512-NEXT:    vmovdqa64 (%rcx), %zmm53061; AVX512-NEXT:    vmovdqa64 (%r8), %zmm13062; AVX512-NEXT:    vmovdqa64 (%r9), %zmm23063; AVX512-NEXT:    vmovdqa64 (%r10), %zmm03064; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,0,0,0,14,30,0,0,0,0,0,15,31,0,0,0]3065; AVX512-NEXT:    vpermi2d %zmm5, %zmm3, %zmm73066; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,0,14,30,0,0,0,0,0,15,31,0,0,0,0,0]3067; AVX512-NEXT:    vpermi2d %zmm6, %zmm4, %zmm83068; AVX512-NEXT:    movw $6192, %cx # imm = 0x18303069; AVX512-NEXT:    kmovw %ecx, %k13070; AVX512-NEXT:    vmovdqa32 %zmm7, %zmm8 {%k1}3071; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [13,0,0,0,0,0,30,14,0,0,0,0,0,31,15,0]3072; AVX512-NEXT:    vpermi2d %zmm1, %zmm2, %zmm73073; AVX512-NEXT:    movw $24769, %cx # imm = 0x60C13074; AVX512-NEXT:    kmovw %ecx, %k23075; AVX512-NEXT:    vmovdqa32 %zmm7, %zmm8 {%k2}3076; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,29,2,3,4,5,6,7,30,9,10,11,12,13,14,31]3077; AVX512-NEXT:    vpermi2d %zmm0, %zmm8, %zmm73078; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [0,0,0,16,0,0,0,0,0,1,17,0,0,0,0,0]3079; AVX512-NEXT:    vpermi2d %zmm5, %zmm3, %zmm93080; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,16,0,0,0,0,0,1,17,0,0,0,0,0,2,18]3081; AVX512-NEXT:    vpermi2d %zmm6, %zmm4, %zmm83082; AVX512-NEXT:    movw $1548, %cx # imm = 0x60C3083; AVX512-NEXT:    kmovw %ecx, %k23084; AVX512-NEXT:    vmovdqa32 %zmm9, %zmm8 {%k2}3085; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]3086; AVX512-NEXT:    vpermi2d %zmm2, %zmm1, %zmm93087; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,4,5,16,0,0,0,0,11,12,17,0,0]3088; AVX512-NEXT:    vpermi2d %zmm0, %zmm9, %zmm103089; AVX512-NEXT:    movw $14448, %cx # imm = 0x38703090; AVX512-NEXT:    kmovw %ecx, %k23091; AVX512-NEXT:    vmovdqa32 %zmm10, %zmm8 {%k2}3092; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,0,3,19,0,0,0,0,0,4,20,0,0]3093; AVX512-NEXT:    vpermi2d %zmm6, %zmm4, %zmm103094; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [2,18,0,0,0,0,0,3,19,0,0,0,0,0,4,20]3095; AVX512-NEXT:    vpermi2d %zmm5, %zmm3, %zmm93096; AVX512-NEXT:    movw $12384, %cx # imm = 0x30603097; AVX512-NEXT:    kmovw %ecx, %k23098; AVX512-NEXT:    vmovdqa32 %zmm10, %zmm9 {%k2}3099; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]3100; AVX512-NEXT:    vpermi2d %zmm2, %zmm1, %zmm103101; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,2,3,18,0,0,0,0,9,10,19,0,0,0,0]3102; AVX512-NEXT:    vpermi2d %zmm0, %zmm10, %zmm113103; AVX512-NEXT:    movw $3612, %cx # imm = 0xE1C3104; AVX512-NEXT:    kmovw %ecx, %k33105; AVX512-NEXT:    vmovdqa32 %zmm11, %zmm9 {%k3}3106; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,0,5,21,0,0,0,0,0,6,22,0,0]3107; AVX512-NEXT:    vpermi2d %zmm5, %zmm3, %zmm103108; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,5,21,0,0,0,0,0,6,22,0,0,0,0]3109; AVX512-NEXT:    vpermi2d %zmm6, %zmm4, %zmm113110; AVX512-NEXT:    vmovdqa32 %zmm10, %zmm11 {%k2}3111; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm12 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]3112; AVX512-NEXT:    vpermi2d %zmm2, %zmm1, %zmm123113; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,1,20,0,0,0,0,7,8,21,0,0,0,0,14,15]3114; AVX512-NEXT:    vpermi2d %zmm0, %zmm12, %zmm103115; AVX512-NEXT:    movw $15480, %cx # imm = 0x3C783116; AVX512-NEXT:    kmovw %ecx, %k23117; AVX512-NEXT:    vmovdqa32 %zmm11, %zmm10 {%k2}3118; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,7,23,0,0,0,0,0,8,24,0,0,0,0]3119; AVX512-NEXT:    vpermi2d %zmm5, %zmm3, %zmm113120; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm12 = [0,7,23,0,0,0,0,0,8,24,0,0,0,0,0,9]3121; AVX512-NEXT:    vpermi2d %zmm6, %zmm4, %zmm123122; AVX512-NEXT:    movw $3096, %cx # imm = 0xC183123; AVX512-NEXT:    kmovw %ecx, %k23124; AVX512-NEXT:    vmovdqa32 %zmm11, %zmm12 {%k2}3125; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,0,0,7,23,0,0,0,0,0,8,24,0,0]3126; AVX512-NEXT:    vpermi2d %zmm2, %zmm1, %zmm113127; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [22,0,0,0,0,5,6,23,0,0,0,0,12,13,24,0]3128; AVX512-NEXT:    vpermi2d %zmm0, %zmm11, %zmm133129; AVX512-NEXT:    movw $28897, %cx # imm = 0x70E13130; AVX512-NEXT:    kmovw %ecx, %k23131; AVX512-NEXT:    vmovdqa32 %zmm13, %zmm12 {%k2}3132; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,9,25,0,0,0,0,0,10,26,0,0,0,0,0,11]3133; AVX512-NEXT:    vpermi2d %zmm5, %zmm3, %zmm113134; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [9,0,0,0,0,0,26,10,0,0,0,0,0,27,11,0]3135; AVX512-NEXT:    vpermi2d %zmm4, %zmm6, %zmm133136; AVX512-NEXT:    movw $-31994, %cx # imm = 0x83063137; AVX512-NEXT:    kmovw %ecx, %k23138; AVX512-NEXT:    vmovdqa32 %zmm11, %zmm13 {%k2}3139; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,9,25,0,0,0,0,0,10,26,0,0,0,0]3140; AVX512-NEXT:    vpermi2d %zmm2, %zmm1, %zmm113141; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm14 = [0,0,0,3,4,25,0,0,0,0,10,11,26,0,0,0]3142; AVX512-NEXT:    vpermi2d %zmm0, %zmm11, %zmm143143; AVX512-NEXT:    movw $7224, %cx # imm = 0x1C383144; AVX512-NEXT:    kmovw %ecx, %k23145; AVX512-NEXT:    vmovdqa32 %zmm14, %zmm13 {%k2}3146; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,0,12,28,0,0,0,0,0,13,29,0,0,0]3147; AVX512-NEXT:    vpermi2d %zmm6, %zmm4, %zmm113148; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [11,0,0,0,0,0,28,12,0,0,0,0,0,29,13,0]3149; AVX512-NEXT:    vpermi2d %zmm3, %zmm5, %zmm43150; AVX512-NEXT:    vmovdqa32 %zmm11, %zmm4 {%k1}3151; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm3 = [0,11,27,0,0,0,0,0,12,28,0,0,0,0,0,13]3152; AVX512-NEXT:    vpermi2d %zmm2, %zmm1, %zmm33153; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,1,2,27,0,0,0,0,8,9,28,0,0,0,0,15]3154; AVX512-NEXT:    vpermi2d %zmm0, %zmm3, %zmm13155; AVX512-NEXT:    movw $-30962, %cx # imm = 0x870E3156; AVX512-NEXT:    kmovw %ecx, %k13157; AVX512-NEXT:    vmovdqa32 %zmm1, %zmm4 {%k1}3158; AVX512-NEXT:    vmovdqa64 %zmm4, 320(%rax)3159; AVX512-NEXT:    vmovdqa64 %zmm13, 256(%rax)3160; AVX512-NEXT:    vmovdqa64 %zmm12, 192(%rax)3161; AVX512-NEXT:    vmovdqa64 %zmm10, 128(%rax)3162; AVX512-NEXT:    vmovdqa64 %zmm9, 64(%rax)3163; AVX512-NEXT:    vmovdqa64 %zmm8, (%rax)3164; AVX512-NEXT:    vmovdqa64 %zmm7, 384(%rax)3165; AVX512-NEXT:    vzeroupper3166; AVX512-NEXT:    retq3167;3168; AVX512-FCP-LABEL: store_i32_stride7_vf16:3169; AVX512-FCP:       # %bb.0:3170; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax3171; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r103172; AVX512-FCP-NEXT:    vmovdqa64 (%rdi), %zmm43173; AVX512-FCP-NEXT:    vmovdqa64 (%rsi), %zmm63174; AVX512-FCP-NEXT:    vmovdqa64 (%rdx), %zmm33175; AVX512-FCP-NEXT:    vmovdqa64 (%rcx), %zmm53176; AVX512-FCP-NEXT:    vmovdqa64 (%r8), %zmm13177; AVX512-FCP-NEXT:    vmovdqa64 (%r9), %zmm23178; AVX512-FCP-NEXT:    vmovdqa64 (%r10), %zmm03179; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,0,0,0,14,30,0,0,0,0,0,15,31,0,0,0]3180; AVX512-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm73181; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,0,14,30,0,0,0,0,0,15,31,0,0,0,0,0]3182; AVX512-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm83183; AVX512-FCP-NEXT:    movw $6192, %cx # imm = 0x18303184; AVX512-FCP-NEXT:    kmovw %ecx, %k13185; AVX512-FCP-NEXT:    vmovdqa32 %zmm7, %zmm8 {%k1}3186; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [13,0,0,0,0,0,30,14,0,0,0,0,0,31,15,0]3187; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm2, %zmm73188; AVX512-FCP-NEXT:    movw $24769, %cx # imm = 0x60C13189; AVX512-FCP-NEXT:    kmovw %ecx, %k23190; AVX512-FCP-NEXT:    vmovdqa32 %zmm7, %zmm8 {%k2}3191; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,29,2,3,4,5,6,7,30,9,10,11,12,13,14,31]3192; AVX512-FCP-NEXT:    vpermi2d %zmm0, %zmm8, %zmm73193; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [0,0,0,16,0,0,0,0,0,1,17,0,0,0,0,0]3194; AVX512-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm93195; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,16,0,0,0,0,0,1,17,0,0,0,0,0,2,18]3196; AVX512-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm83197; AVX512-FCP-NEXT:    movw $1548, %cx # imm = 0x60C3198; AVX512-FCP-NEXT:    kmovw %ecx, %k23199; AVX512-FCP-NEXT:    vmovdqa32 %zmm9, %zmm8 {%k2}3200; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]3201; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm93202; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,4,5,16,0,0,0,0,11,12,17,0,0]3203; AVX512-FCP-NEXT:    vpermi2d %zmm0, %zmm9, %zmm103204; AVX512-FCP-NEXT:    movw $14448, %cx # imm = 0x38703205; AVX512-FCP-NEXT:    kmovw %ecx, %k23206; AVX512-FCP-NEXT:    vmovdqa32 %zmm10, %zmm8 {%k2}3207; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,0,3,19,0,0,0,0,0,4,20,0,0]3208; AVX512-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm103209; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [2,18,0,0,0,0,0,3,19,0,0,0,0,0,4,20]3210; AVX512-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm93211; AVX512-FCP-NEXT:    movw $12384, %cx # imm = 0x30603212; AVX512-FCP-NEXT:    kmovw %ecx, %k23213; AVX512-FCP-NEXT:    vmovdqa32 %zmm10, %zmm9 {%k2}3214; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]3215; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm103216; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,2,3,18,0,0,0,0,9,10,19,0,0,0,0]3217; AVX512-FCP-NEXT:    vpermi2d %zmm0, %zmm10, %zmm113218; AVX512-FCP-NEXT:    movw $3612, %cx # imm = 0xE1C3219; AVX512-FCP-NEXT:    kmovw %ecx, %k33220; AVX512-FCP-NEXT:    vmovdqa32 %zmm11, %zmm9 {%k3}3221; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,0,5,21,0,0,0,0,0,6,22,0,0]3222; AVX512-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm103223; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,5,21,0,0,0,0,0,6,22,0,0,0,0]3224; AVX512-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm113225; AVX512-FCP-NEXT:    vmovdqa32 %zmm10, %zmm11 {%k2}3226; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm12 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]3227; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm123228; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,1,20,0,0,0,0,7,8,21,0,0,0,0,14,15]3229; AVX512-FCP-NEXT:    vpermi2d %zmm0, %zmm12, %zmm103230; AVX512-FCP-NEXT:    movw $15480, %cx # imm = 0x3C783231; AVX512-FCP-NEXT:    kmovw %ecx, %k23232; AVX512-FCP-NEXT:    vmovdqa32 %zmm11, %zmm10 {%k2}3233; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,7,23,0,0,0,0,0,8,24,0,0,0,0]3234; AVX512-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm113235; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm12 = [0,7,23,0,0,0,0,0,8,24,0,0,0,0,0,9]3236; AVX512-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm123237; AVX512-FCP-NEXT:    movw $3096, %cx # imm = 0xC183238; AVX512-FCP-NEXT:    kmovw %ecx, %k23239; AVX512-FCP-NEXT:    vmovdqa32 %zmm11, %zmm12 {%k2}3240; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,0,0,7,23,0,0,0,0,0,8,24,0,0]3241; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm113242; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [22,0,0,0,0,5,6,23,0,0,0,0,12,13,24,0]3243; AVX512-FCP-NEXT:    vpermi2d %zmm0, %zmm11, %zmm133244; AVX512-FCP-NEXT:    movw $28897, %cx # imm = 0x70E13245; AVX512-FCP-NEXT:    kmovw %ecx, %k23246; AVX512-FCP-NEXT:    vmovdqa32 %zmm13, %zmm12 {%k2}3247; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,9,25,0,0,0,0,0,10,26,0,0,0,0,0,11]3248; AVX512-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm113249; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [9,0,0,0,0,0,26,10,0,0,0,0,0,27,11,0]3250; AVX512-FCP-NEXT:    vpermi2d %zmm4, %zmm6, %zmm133251; AVX512-FCP-NEXT:    movw $-31994, %cx # imm = 0x83063252; AVX512-FCP-NEXT:    kmovw %ecx, %k23253; AVX512-FCP-NEXT:    vmovdqa32 %zmm11, %zmm13 {%k2}3254; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,9,25,0,0,0,0,0,10,26,0,0,0,0]3255; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm113256; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm14 = [0,0,0,3,4,25,0,0,0,0,10,11,26,0,0,0]3257; AVX512-FCP-NEXT:    vpermi2d %zmm0, %zmm11, %zmm143258; AVX512-FCP-NEXT:    movw $7224, %cx # imm = 0x1C383259; AVX512-FCP-NEXT:    kmovw %ecx, %k23260; AVX512-FCP-NEXT:    vmovdqa32 %zmm14, %zmm13 {%k2}3261; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,0,12,28,0,0,0,0,0,13,29,0,0,0]3262; AVX512-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm113263; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [11,0,0,0,0,0,28,12,0,0,0,0,0,29,13,0]3264; AVX512-FCP-NEXT:    vpermi2d %zmm3, %zmm5, %zmm43265; AVX512-FCP-NEXT:    vmovdqa32 %zmm11, %zmm4 {%k1}3266; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm3 = [0,11,27,0,0,0,0,0,12,28,0,0,0,0,0,13]3267; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm33268; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,1,2,27,0,0,0,0,8,9,28,0,0,0,0,15]3269; AVX512-FCP-NEXT:    vpermi2d %zmm0, %zmm3, %zmm13270; AVX512-FCP-NEXT:    movw $-30962, %cx # imm = 0x870E3271; AVX512-FCP-NEXT:    kmovw %ecx, %k13272; AVX512-FCP-NEXT:    vmovdqa32 %zmm1, %zmm4 {%k1}3273; AVX512-FCP-NEXT:    vmovdqa64 %zmm4, 320(%rax)3274; AVX512-FCP-NEXT:    vmovdqa64 %zmm13, 256(%rax)3275; AVX512-FCP-NEXT:    vmovdqa64 %zmm12, 192(%rax)3276; AVX512-FCP-NEXT:    vmovdqa64 %zmm10, 128(%rax)3277; AVX512-FCP-NEXT:    vmovdqa64 %zmm9, 64(%rax)3278; AVX512-FCP-NEXT:    vmovdqa64 %zmm8, (%rax)3279; AVX512-FCP-NEXT:    vmovdqa64 %zmm7, 384(%rax)3280; AVX512-FCP-NEXT:    vzeroupper3281; AVX512-FCP-NEXT:    retq3282;3283; AVX512DQ-LABEL: store_i32_stride7_vf16:3284; AVX512DQ:       # %bb.0:3285; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %rax3286; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %r103287; AVX512DQ-NEXT:    vmovdqa64 (%rdi), %zmm43288; AVX512DQ-NEXT:    vmovdqa64 (%rsi), %zmm63289; AVX512DQ-NEXT:    vmovdqa64 (%rdx), %zmm33290; AVX512DQ-NEXT:    vmovdqa64 (%rcx), %zmm53291; AVX512DQ-NEXT:    vmovdqa64 (%r8), %zmm13292; AVX512DQ-NEXT:    vmovdqa64 (%r9), %zmm23293; AVX512DQ-NEXT:    vmovdqa64 (%r10), %zmm03294; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,0,0,0,14,30,0,0,0,0,0,15,31,0,0,0]3295; AVX512DQ-NEXT:    vpermi2d %zmm5, %zmm3, %zmm73296; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,0,14,30,0,0,0,0,0,15,31,0,0,0,0,0]3297; AVX512DQ-NEXT:    vpermi2d %zmm6, %zmm4, %zmm83298; AVX512DQ-NEXT:    movw $6192, %cx # imm = 0x18303299; AVX512DQ-NEXT:    kmovw %ecx, %k13300; AVX512DQ-NEXT:    vmovdqa32 %zmm7, %zmm8 {%k1}3301; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [13,0,0,0,0,0,30,14,0,0,0,0,0,31,15,0]3302; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm2, %zmm73303; AVX512DQ-NEXT:    movw $24769, %cx # imm = 0x60C13304; AVX512DQ-NEXT:    kmovw %ecx, %k23305; AVX512DQ-NEXT:    vmovdqa32 %zmm7, %zmm8 {%k2}3306; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,29,2,3,4,5,6,7,30,9,10,11,12,13,14,31]3307; AVX512DQ-NEXT:    vpermi2d %zmm0, %zmm8, %zmm73308; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [0,0,0,16,0,0,0,0,0,1,17,0,0,0,0,0]3309; AVX512DQ-NEXT:    vpermi2d %zmm5, %zmm3, %zmm93310; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,16,0,0,0,0,0,1,17,0,0,0,0,0,2,18]3311; AVX512DQ-NEXT:    vpermi2d %zmm6, %zmm4, %zmm83312; AVX512DQ-NEXT:    movw $1548, %cx # imm = 0x60C3313; AVX512DQ-NEXT:    kmovw %ecx, %k23314; AVX512DQ-NEXT:    vmovdqa32 %zmm9, %zmm8 {%k2}3315; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]3316; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm1, %zmm93317; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,4,5,16,0,0,0,0,11,12,17,0,0]3318; AVX512DQ-NEXT:    vpermi2d %zmm0, %zmm9, %zmm103319; AVX512DQ-NEXT:    movw $14448, %cx # imm = 0x38703320; AVX512DQ-NEXT:    kmovw %ecx, %k23321; AVX512DQ-NEXT:    vmovdqa32 %zmm10, %zmm8 {%k2}3322; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,0,3,19,0,0,0,0,0,4,20,0,0]3323; AVX512DQ-NEXT:    vpermi2d %zmm6, %zmm4, %zmm103324; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [2,18,0,0,0,0,0,3,19,0,0,0,0,0,4,20]3325; AVX512DQ-NEXT:    vpermi2d %zmm5, %zmm3, %zmm93326; AVX512DQ-NEXT:    movw $12384, %cx # imm = 0x30603327; AVX512DQ-NEXT:    kmovw %ecx, %k23328; AVX512DQ-NEXT:    vmovdqa32 %zmm10, %zmm9 {%k2}3329; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]3330; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm1, %zmm103331; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,2,3,18,0,0,0,0,9,10,19,0,0,0,0]3332; AVX512DQ-NEXT:    vpermi2d %zmm0, %zmm10, %zmm113333; AVX512DQ-NEXT:    movw $3612, %cx # imm = 0xE1C3334; AVX512DQ-NEXT:    kmovw %ecx, %k33335; AVX512DQ-NEXT:    vmovdqa32 %zmm11, %zmm9 {%k3}3336; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,0,5,21,0,0,0,0,0,6,22,0,0]3337; AVX512DQ-NEXT:    vpermi2d %zmm5, %zmm3, %zmm103338; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,5,21,0,0,0,0,0,6,22,0,0,0,0]3339; AVX512DQ-NEXT:    vpermi2d %zmm6, %zmm4, %zmm113340; AVX512DQ-NEXT:    vmovdqa32 %zmm10, %zmm11 {%k2}3341; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm12 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]3342; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm1, %zmm123343; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,1,20,0,0,0,0,7,8,21,0,0,0,0,14,15]3344; AVX512DQ-NEXT:    vpermi2d %zmm0, %zmm12, %zmm103345; AVX512DQ-NEXT:    movw $15480, %cx # imm = 0x3C783346; AVX512DQ-NEXT:    kmovw %ecx, %k23347; AVX512DQ-NEXT:    vmovdqa32 %zmm11, %zmm10 {%k2}3348; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,7,23,0,0,0,0,0,8,24,0,0,0,0]3349; AVX512DQ-NEXT:    vpermi2d %zmm5, %zmm3, %zmm113350; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm12 = [0,7,23,0,0,0,0,0,8,24,0,0,0,0,0,9]3351; AVX512DQ-NEXT:    vpermi2d %zmm6, %zmm4, %zmm123352; AVX512DQ-NEXT:    movw $3096, %cx # imm = 0xC183353; AVX512DQ-NEXT:    kmovw %ecx, %k23354; AVX512DQ-NEXT:    vmovdqa32 %zmm11, %zmm12 {%k2}3355; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,0,0,7,23,0,0,0,0,0,8,24,0,0]3356; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm1, %zmm113357; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [22,0,0,0,0,5,6,23,0,0,0,0,12,13,24,0]3358; AVX512DQ-NEXT:    vpermi2d %zmm0, %zmm11, %zmm133359; AVX512DQ-NEXT:    movw $28897, %cx # imm = 0x70E13360; AVX512DQ-NEXT:    kmovw %ecx, %k23361; AVX512DQ-NEXT:    vmovdqa32 %zmm13, %zmm12 {%k2}3362; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,9,25,0,0,0,0,0,10,26,0,0,0,0,0,11]3363; AVX512DQ-NEXT:    vpermi2d %zmm5, %zmm3, %zmm113364; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [9,0,0,0,0,0,26,10,0,0,0,0,0,27,11,0]3365; AVX512DQ-NEXT:    vpermi2d %zmm4, %zmm6, %zmm133366; AVX512DQ-NEXT:    movw $-31994, %cx # imm = 0x83063367; AVX512DQ-NEXT:    kmovw %ecx, %k23368; AVX512DQ-NEXT:    vmovdqa32 %zmm11, %zmm13 {%k2}3369; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,9,25,0,0,0,0,0,10,26,0,0,0,0]3370; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm1, %zmm113371; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm14 = [0,0,0,3,4,25,0,0,0,0,10,11,26,0,0,0]3372; AVX512DQ-NEXT:    vpermi2d %zmm0, %zmm11, %zmm143373; AVX512DQ-NEXT:    movw $7224, %cx # imm = 0x1C383374; AVX512DQ-NEXT:    kmovw %ecx, %k23375; AVX512DQ-NEXT:    vmovdqa32 %zmm14, %zmm13 {%k2}3376; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,0,12,28,0,0,0,0,0,13,29,0,0,0]3377; AVX512DQ-NEXT:    vpermi2d %zmm6, %zmm4, %zmm113378; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [11,0,0,0,0,0,28,12,0,0,0,0,0,29,13,0]3379; AVX512DQ-NEXT:    vpermi2d %zmm3, %zmm5, %zmm43380; AVX512DQ-NEXT:    vmovdqa32 %zmm11, %zmm4 {%k1}3381; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm3 = [0,11,27,0,0,0,0,0,12,28,0,0,0,0,0,13]3382; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm1, %zmm33383; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,1,2,27,0,0,0,0,8,9,28,0,0,0,0,15]3384; AVX512DQ-NEXT:    vpermi2d %zmm0, %zmm3, %zmm13385; AVX512DQ-NEXT:    movw $-30962, %cx # imm = 0x870E3386; AVX512DQ-NEXT:    kmovw %ecx, %k13387; AVX512DQ-NEXT:    vmovdqa32 %zmm1, %zmm4 {%k1}3388; AVX512DQ-NEXT:    vmovdqa64 %zmm4, 320(%rax)3389; AVX512DQ-NEXT:    vmovdqa64 %zmm13, 256(%rax)3390; AVX512DQ-NEXT:    vmovdqa64 %zmm12, 192(%rax)3391; AVX512DQ-NEXT:    vmovdqa64 %zmm10, 128(%rax)3392; AVX512DQ-NEXT:    vmovdqa64 %zmm9, 64(%rax)3393; AVX512DQ-NEXT:    vmovdqa64 %zmm8, (%rax)3394; AVX512DQ-NEXT:    vmovdqa64 %zmm7, 384(%rax)3395; AVX512DQ-NEXT:    vzeroupper3396; AVX512DQ-NEXT:    retq3397;3398; AVX512DQ-FCP-LABEL: store_i32_stride7_vf16:3399; AVX512DQ-FCP:       # %bb.0:3400; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax3401; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r103402; AVX512DQ-FCP-NEXT:    vmovdqa64 (%rdi), %zmm43403; AVX512DQ-FCP-NEXT:    vmovdqa64 (%rsi), %zmm63404; AVX512DQ-FCP-NEXT:    vmovdqa64 (%rdx), %zmm33405; AVX512DQ-FCP-NEXT:    vmovdqa64 (%rcx), %zmm53406; AVX512DQ-FCP-NEXT:    vmovdqa64 (%r8), %zmm13407; AVX512DQ-FCP-NEXT:    vmovdqa64 (%r9), %zmm23408; AVX512DQ-FCP-NEXT:    vmovdqa64 (%r10), %zmm03409; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,0,0,0,14,30,0,0,0,0,0,15,31,0,0,0]3410; AVX512DQ-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm73411; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,0,14,30,0,0,0,0,0,15,31,0,0,0,0,0]3412; AVX512DQ-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm83413; AVX512DQ-FCP-NEXT:    movw $6192, %cx # imm = 0x18303414; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k13415; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm7, %zmm8 {%k1}3416; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [13,0,0,0,0,0,30,14,0,0,0,0,0,31,15,0]3417; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm2, %zmm73418; AVX512DQ-FCP-NEXT:    movw $24769, %cx # imm = 0x60C13419; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k23420; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm7, %zmm8 {%k2}3421; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,29,2,3,4,5,6,7,30,9,10,11,12,13,14,31]3422; AVX512DQ-FCP-NEXT:    vpermi2d %zmm0, %zmm8, %zmm73423; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [0,0,0,16,0,0,0,0,0,1,17,0,0,0,0,0]3424; AVX512DQ-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm93425; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,16,0,0,0,0,0,1,17,0,0,0,0,0,2,18]3426; AVX512DQ-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm83427; AVX512DQ-FCP-NEXT:    movw $1548, %cx # imm = 0x60C3428; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k23429; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm9, %zmm8 {%k2}3430; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]3431; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm93432; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,4,5,16,0,0,0,0,11,12,17,0,0]3433; AVX512DQ-FCP-NEXT:    vpermi2d %zmm0, %zmm9, %zmm103434; AVX512DQ-FCP-NEXT:    movw $14448, %cx # imm = 0x38703435; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k23436; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm10, %zmm8 {%k2}3437; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,0,3,19,0,0,0,0,0,4,20,0,0]3438; AVX512DQ-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm103439; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [2,18,0,0,0,0,0,3,19,0,0,0,0,0,4,20]3440; AVX512DQ-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm93441; AVX512DQ-FCP-NEXT:    movw $12384, %cx # imm = 0x30603442; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k23443; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm10, %zmm9 {%k2}3444; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]3445; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm103446; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,2,3,18,0,0,0,0,9,10,19,0,0,0,0]3447; AVX512DQ-FCP-NEXT:    vpermi2d %zmm0, %zmm10, %zmm113448; AVX512DQ-FCP-NEXT:    movw $3612, %cx # imm = 0xE1C3449; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k33450; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm11, %zmm9 {%k3}3451; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,0,5,21,0,0,0,0,0,6,22,0,0]3452; AVX512DQ-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm103453; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,5,21,0,0,0,0,0,6,22,0,0,0,0]3454; AVX512DQ-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm113455; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm10, %zmm11 {%k2}3456; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm12 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]3457; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm123458; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,1,20,0,0,0,0,7,8,21,0,0,0,0,14,15]3459; AVX512DQ-FCP-NEXT:    vpermi2d %zmm0, %zmm12, %zmm103460; AVX512DQ-FCP-NEXT:    movw $15480, %cx # imm = 0x3C783461; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k23462; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm11, %zmm10 {%k2}3463; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,7,23,0,0,0,0,0,8,24,0,0,0,0]3464; AVX512DQ-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm113465; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm12 = [0,7,23,0,0,0,0,0,8,24,0,0,0,0,0,9]3466; AVX512DQ-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm123467; AVX512DQ-FCP-NEXT:    movw $3096, %cx # imm = 0xC183468; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k23469; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm11, %zmm12 {%k2}3470; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,0,0,7,23,0,0,0,0,0,8,24,0,0]3471; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm113472; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [22,0,0,0,0,5,6,23,0,0,0,0,12,13,24,0]3473; AVX512DQ-FCP-NEXT:    vpermi2d %zmm0, %zmm11, %zmm133474; AVX512DQ-FCP-NEXT:    movw $28897, %cx # imm = 0x70E13475; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k23476; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm13, %zmm12 {%k2}3477; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,9,25,0,0,0,0,0,10,26,0,0,0,0,0,11]3478; AVX512DQ-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm113479; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [9,0,0,0,0,0,26,10,0,0,0,0,0,27,11,0]3480; AVX512DQ-FCP-NEXT:    vpermi2d %zmm4, %zmm6, %zmm133481; AVX512DQ-FCP-NEXT:    movw $-31994, %cx # imm = 0x83063482; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k23483; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm11, %zmm13 {%k2}3484; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,9,25,0,0,0,0,0,10,26,0,0,0,0]3485; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm113486; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm14 = [0,0,0,3,4,25,0,0,0,0,10,11,26,0,0,0]3487; AVX512DQ-FCP-NEXT:    vpermi2d %zmm0, %zmm11, %zmm143488; AVX512DQ-FCP-NEXT:    movw $7224, %cx # imm = 0x1C383489; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k23490; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm14, %zmm13 {%k2}3491; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,0,12,28,0,0,0,0,0,13,29,0,0,0]3492; AVX512DQ-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm113493; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [11,0,0,0,0,0,28,12,0,0,0,0,0,29,13,0]3494; AVX512DQ-FCP-NEXT:    vpermi2d %zmm3, %zmm5, %zmm43495; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm11, %zmm4 {%k1}3496; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm3 = [0,11,27,0,0,0,0,0,12,28,0,0,0,0,0,13]3497; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm33498; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,1,2,27,0,0,0,0,8,9,28,0,0,0,0,15]3499; AVX512DQ-FCP-NEXT:    vpermi2d %zmm0, %zmm3, %zmm13500; AVX512DQ-FCP-NEXT:    movw $-30962, %cx # imm = 0x870E3501; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k13502; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm1, %zmm4 {%k1}3503; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm4, 320(%rax)3504; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm13, 256(%rax)3505; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm12, 192(%rax)3506; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm10, 128(%rax)3507; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm9, 64(%rax)3508; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm8, (%rax)3509; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm7, 384(%rax)3510; AVX512DQ-FCP-NEXT:    vzeroupper3511; AVX512DQ-FCP-NEXT:    retq3512;3513; AVX512BW-LABEL: store_i32_stride7_vf16:3514; AVX512BW:       # %bb.0:3515; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax3516; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %r103517; AVX512BW-NEXT:    vmovdqa64 (%rdi), %zmm43518; AVX512BW-NEXT:    vmovdqa64 (%rsi), %zmm63519; AVX512BW-NEXT:    vmovdqa64 (%rdx), %zmm33520; AVX512BW-NEXT:    vmovdqa64 (%rcx), %zmm53521; AVX512BW-NEXT:    vmovdqa64 (%r8), %zmm13522; AVX512BW-NEXT:    vmovdqa64 (%r9), %zmm23523; AVX512BW-NEXT:    vmovdqa64 (%r10), %zmm03524; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,0,0,0,14,30,0,0,0,0,0,15,31,0,0,0]3525; AVX512BW-NEXT:    vpermi2d %zmm5, %zmm3, %zmm73526; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,0,14,30,0,0,0,0,0,15,31,0,0,0,0,0]3527; AVX512BW-NEXT:    vpermi2d %zmm6, %zmm4, %zmm83528; AVX512BW-NEXT:    movw $6192, %cx # imm = 0x18303529; AVX512BW-NEXT:    kmovd %ecx, %k13530; AVX512BW-NEXT:    vmovdqa32 %zmm7, %zmm8 {%k1}3531; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [13,0,0,0,0,0,30,14,0,0,0,0,0,31,15,0]3532; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm2, %zmm73533; AVX512BW-NEXT:    movw $24769, %cx # imm = 0x60C13534; AVX512BW-NEXT:    kmovd %ecx, %k23535; AVX512BW-NEXT:    vmovdqa32 %zmm7, %zmm8 {%k2}3536; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,29,2,3,4,5,6,7,30,9,10,11,12,13,14,31]3537; AVX512BW-NEXT:    vpermi2d %zmm0, %zmm8, %zmm73538; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [0,0,0,16,0,0,0,0,0,1,17,0,0,0,0,0]3539; AVX512BW-NEXT:    vpermi2d %zmm5, %zmm3, %zmm93540; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,16,0,0,0,0,0,1,17,0,0,0,0,0,2,18]3541; AVX512BW-NEXT:    vpermi2d %zmm6, %zmm4, %zmm83542; AVX512BW-NEXT:    movw $1548, %cx # imm = 0x60C3543; AVX512BW-NEXT:    kmovd %ecx, %k23544; AVX512BW-NEXT:    vmovdqa32 %zmm9, %zmm8 {%k2}3545; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]3546; AVX512BW-NEXT:    vpermi2d %zmm2, %zmm1, %zmm93547; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,4,5,16,0,0,0,0,11,12,17,0,0]3548; AVX512BW-NEXT:    vpermi2d %zmm0, %zmm9, %zmm103549; AVX512BW-NEXT:    movw $14448, %cx # imm = 0x38703550; AVX512BW-NEXT:    kmovd %ecx, %k23551; AVX512BW-NEXT:    vmovdqa32 %zmm10, %zmm8 {%k2}3552; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,0,3,19,0,0,0,0,0,4,20,0,0]3553; AVX512BW-NEXT:    vpermi2d %zmm6, %zmm4, %zmm103554; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [2,18,0,0,0,0,0,3,19,0,0,0,0,0,4,20]3555; AVX512BW-NEXT:    vpermi2d %zmm5, %zmm3, %zmm93556; AVX512BW-NEXT:    movw $12384, %cx # imm = 0x30603557; AVX512BW-NEXT:    kmovd %ecx, %k23558; AVX512BW-NEXT:    vmovdqa32 %zmm10, %zmm9 {%k2}3559; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]3560; AVX512BW-NEXT:    vpermi2d %zmm2, %zmm1, %zmm103561; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,2,3,18,0,0,0,0,9,10,19,0,0,0,0]3562; AVX512BW-NEXT:    vpermi2d %zmm0, %zmm10, %zmm113563; AVX512BW-NEXT:    movw $3612, %cx # imm = 0xE1C3564; AVX512BW-NEXT:    kmovd %ecx, %k33565; AVX512BW-NEXT:    vmovdqa32 %zmm11, %zmm9 {%k3}3566; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,0,5,21,0,0,0,0,0,6,22,0,0]3567; AVX512BW-NEXT:    vpermi2d %zmm5, %zmm3, %zmm103568; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,5,21,0,0,0,0,0,6,22,0,0,0,0]3569; AVX512BW-NEXT:    vpermi2d %zmm6, %zmm4, %zmm113570; AVX512BW-NEXT:    vmovdqa32 %zmm10, %zmm11 {%k2}3571; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm12 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]3572; AVX512BW-NEXT:    vpermi2d %zmm2, %zmm1, %zmm123573; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,1,20,0,0,0,0,7,8,21,0,0,0,0,14,15]3574; AVX512BW-NEXT:    vpermi2d %zmm0, %zmm12, %zmm103575; AVX512BW-NEXT:    movw $15480, %cx # imm = 0x3C783576; AVX512BW-NEXT:    kmovd %ecx, %k23577; AVX512BW-NEXT:    vmovdqa32 %zmm11, %zmm10 {%k2}3578; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,7,23,0,0,0,0,0,8,24,0,0,0,0]3579; AVX512BW-NEXT:    vpermi2d %zmm5, %zmm3, %zmm113580; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm12 = [0,7,23,0,0,0,0,0,8,24,0,0,0,0,0,9]3581; AVX512BW-NEXT:    vpermi2d %zmm6, %zmm4, %zmm123582; AVX512BW-NEXT:    movw $3096, %cx # imm = 0xC183583; AVX512BW-NEXT:    kmovd %ecx, %k23584; AVX512BW-NEXT:    vmovdqa32 %zmm11, %zmm12 {%k2}3585; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,0,0,7,23,0,0,0,0,0,8,24,0,0]3586; AVX512BW-NEXT:    vpermi2d %zmm2, %zmm1, %zmm113587; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [22,0,0,0,0,5,6,23,0,0,0,0,12,13,24,0]3588; AVX512BW-NEXT:    vpermi2d %zmm0, %zmm11, %zmm133589; AVX512BW-NEXT:    movw $28897, %cx # imm = 0x70E13590; AVX512BW-NEXT:    kmovd %ecx, %k23591; AVX512BW-NEXT:    vmovdqa32 %zmm13, %zmm12 {%k2}3592; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,9,25,0,0,0,0,0,10,26,0,0,0,0,0,11]3593; AVX512BW-NEXT:    vpermi2d %zmm5, %zmm3, %zmm113594; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [9,0,0,0,0,0,26,10,0,0,0,0,0,27,11,0]3595; AVX512BW-NEXT:    vpermi2d %zmm4, %zmm6, %zmm133596; AVX512BW-NEXT:    movw $-31994, %cx # imm = 0x83063597; AVX512BW-NEXT:    kmovd %ecx, %k23598; AVX512BW-NEXT:    vmovdqa32 %zmm11, %zmm13 {%k2}3599; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,9,25,0,0,0,0,0,10,26,0,0,0,0]3600; AVX512BW-NEXT:    vpermi2d %zmm2, %zmm1, %zmm113601; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm14 = [0,0,0,3,4,25,0,0,0,0,10,11,26,0,0,0]3602; AVX512BW-NEXT:    vpermi2d %zmm0, %zmm11, %zmm143603; AVX512BW-NEXT:    movw $7224, %cx # imm = 0x1C383604; AVX512BW-NEXT:    kmovd %ecx, %k23605; AVX512BW-NEXT:    vmovdqa32 %zmm14, %zmm13 {%k2}3606; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,0,12,28,0,0,0,0,0,13,29,0,0,0]3607; AVX512BW-NEXT:    vpermi2d %zmm6, %zmm4, %zmm113608; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [11,0,0,0,0,0,28,12,0,0,0,0,0,29,13,0]3609; AVX512BW-NEXT:    vpermi2d %zmm3, %zmm5, %zmm43610; AVX512BW-NEXT:    vmovdqa32 %zmm11, %zmm4 {%k1}3611; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm3 = [0,11,27,0,0,0,0,0,12,28,0,0,0,0,0,13]3612; AVX512BW-NEXT:    vpermi2d %zmm2, %zmm1, %zmm33613; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,1,2,27,0,0,0,0,8,9,28,0,0,0,0,15]3614; AVX512BW-NEXT:    vpermi2d %zmm0, %zmm3, %zmm13615; AVX512BW-NEXT:    movw $-30962, %cx # imm = 0x870E3616; AVX512BW-NEXT:    kmovd %ecx, %k13617; AVX512BW-NEXT:    vmovdqa32 %zmm1, %zmm4 {%k1}3618; AVX512BW-NEXT:    vmovdqa64 %zmm4, 320(%rax)3619; AVX512BW-NEXT:    vmovdqa64 %zmm13, 256(%rax)3620; AVX512BW-NEXT:    vmovdqa64 %zmm12, 192(%rax)3621; AVX512BW-NEXT:    vmovdqa64 %zmm10, 128(%rax)3622; AVX512BW-NEXT:    vmovdqa64 %zmm9, 64(%rax)3623; AVX512BW-NEXT:    vmovdqa64 %zmm8, (%rax)3624; AVX512BW-NEXT:    vmovdqa64 %zmm7, 384(%rax)3625; AVX512BW-NEXT:    vzeroupper3626; AVX512BW-NEXT:    retq3627;3628; AVX512BW-FCP-LABEL: store_i32_stride7_vf16:3629; AVX512BW-FCP:       # %bb.0:3630; AVX512BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax3631; AVX512BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r103632; AVX512BW-FCP-NEXT:    vmovdqa64 (%rdi), %zmm43633; AVX512BW-FCP-NEXT:    vmovdqa64 (%rsi), %zmm63634; AVX512BW-FCP-NEXT:    vmovdqa64 (%rdx), %zmm33635; AVX512BW-FCP-NEXT:    vmovdqa64 (%rcx), %zmm53636; AVX512BW-FCP-NEXT:    vmovdqa64 (%r8), %zmm13637; AVX512BW-FCP-NEXT:    vmovdqa64 (%r9), %zmm23638; AVX512BW-FCP-NEXT:    vmovdqa64 (%r10), %zmm03639; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,0,0,0,14,30,0,0,0,0,0,15,31,0,0,0]3640; AVX512BW-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm73641; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,0,14,30,0,0,0,0,0,15,31,0,0,0,0,0]3642; AVX512BW-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm83643; AVX512BW-FCP-NEXT:    movw $6192, %cx # imm = 0x18303644; AVX512BW-FCP-NEXT:    kmovd %ecx, %k13645; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm7, %zmm8 {%k1}3646; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [13,0,0,0,0,0,30,14,0,0,0,0,0,31,15,0]3647; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm2, %zmm73648; AVX512BW-FCP-NEXT:    movw $24769, %cx # imm = 0x60C13649; AVX512BW-FCP-NEXT:    kmovd %ecx, %k23650; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm7, %zmm8 {%k2}3651; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,29,2,3,4,5,6,7,30,9,10,11,12,13,14,31]3652; AVX512BW-FCP-NEXT:    vpermi2d %zmm0, %zmm8, %zmm73653; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [0,0,0,16,0,0,0,0,0,1,17,0,0,0,0,0]3654; AVX512BW-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm93655; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,16,0,0,0,0,0,1,17,0,0,0,0,0,2,18]3656; AVX512BW-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm83657; AVX512BW-FCP-NEXT:    movw $1548, %cx # imm = 0x60C3658; AVX512BW-FCP-NEXT:    kmovd %ecx, %k23659; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm9, %zmm8 {%k2}3660; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]3661; AVX512BW-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm93662; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,4,5,16,0,0,0,0,11,12,17,0,0]3663; AVX512BW-FCP-NEXT:    vpermi2d %zmm0, %zmm9, %zmm103664; AVX512BW-FCP-NEXT:    movw $14448, %cx # imm = 0x38703665; AVX512BW-FCP-NEXT:    kmovd %ecx, %k23666; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm10, %zmm8 {%k2}3667; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,0,3,19,0,0,0,0,0,4,20,0,0]3668; AVX512BW-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm103669; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [2,18,0,0,0,0,0,3,19,0,0,0,0,0,4,20]3670; AVX512BW-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm93671; AVX512BW-FCP-NEXT:    movw $12384, %cx # imm = 0x30603672; AVX512BW-FCP-NEXT:    kmovd %ecx, %k23673; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm10, %zmm9 {%k2}3674; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]3675; AVX512BW-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm103676; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,2,3,18,0,0,0,0,9,10,19,0,0,0,0]3677; AVX512BW-FCP-NEXT:    vpermi2d %zmm0, %zmm10, %zmm113678; AVX512BW-FCP-NEXT:    movw $3612, %cx # imm = 0xE1C3679; AVX512BW-FCP-NEXT:    kmovd %ecx, %k33680; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm11, %zmm9 {%k3}3681; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,0,5,21,0,0,0,0,0,6,22,0,0]3682; AVX512BW-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm103683; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,5,21,0,0,0,0,0,6,22,0,0,0,0]3684; AVX512BW-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm113685; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm10, %zmm11 {%k2}3686; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm12 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]3687; AVX512BW-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm123688; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,1,20,0,0,0,0,7,8,21,0,0,0,0,14,15]3689; AVX512BW-FCP-NEXT:    vpermi2d %zmm0, %zmm12, %zmm103690; AVX512BW-FCP-NEXT:    movw $15480, %cx # imm = 0x3C783691; AVX512BW-FCP-NEXT:    kmovd %ecx, %k23692; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm11, %zmm10 {%k2}3693; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,7,23,0,0,0,0,0,8,24,0,0,0,0]3694; AVX512BW-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm113695; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm12 = [0,7,23,0,0,0,0,0,8,24,0,0,0,0,0,9]3696; AVX512BW-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm123697; AVX512BW-FCP-NEXT:    movw $3096, %cx # imm = 0xC183698; AVX512BW-FCP-NEXT:    kmovd %ecx, %k23699; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm11, %zmm12 {%k2}3700; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,0,0,7,23,0,0,0,0,0,8,24,0,0]3701; AVX512BW-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm113702; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [22,0,0,0,0,5,6,23,0,0,0,0,12,13,24,0]3703; AVX512BW-FCP-NEXT:    vpermi2d %zmm0, %zmm11, %zmm133704; AVX512BW-FCP-NEXT:    movw $28897, %cx # imm = 0x70E13705; AVX512BW-FCP-NEXT:    kmovd %ecx, %k23706; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm13, %zmm12 {%k2}3707; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,9,25,0,0,0,0,0,10,26,0,0,0,0,0,11]3708; AVX512BW-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm113709; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [9,0,0,0,0,0,26,10,0,0,0,0,0,27,11,0]3710; AVX512BW-FCP-NEXT:    vpermi2d %zmm4, %zmm6, %zmm133711; AVX512BW-FCP-NEXT:    movw $-31994, %cx # imm = 0x83063712; AVX512BW-FCP-NEXT:    kmovd %ecx, %k23713; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm11, %zmm13 {%k2}3714; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,9,25,0,0,0,0,0,10,26,0,0,0,0]3715; AVX512BW-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm113716; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm14 = [0,0,0,3,4,25,0,0,0,0,10,11,26,0,0,0]3717; AVX512BW-FCP-NEXT:    vpermi2d %zmm0, %zmm11, %zmm143718; AVX512BW-FCP-NEXT:    movw $7224, %cx # imm = 0x1C383719; AVX512BW-FCP-NEXT:    kmovd %ecx, %k23720; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm14, %zmm13 {%k2}3721; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,0,12,28,0,0,0,0,0,13,29,0,0,0]3722; AVX512BW-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm113723; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [11,0,0,0,0,0,28,12,0,0,0,0,0,29,13,0]3724; AVX512BW-FCP-NEXT:    vpermi2d %zmm3, %zmm5, %zmm43725; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm11, %zmm4 {%k1}3726; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm3 = [0,11,27,0,0,0,0,0,12,28,0,0,0,0,0,13]3727; AVX512BW-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm33728; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,1,2,27,0,0,0,0,8,9,28,0,0,0,0,15]3729; AVX512BW-FCP-NEXT:    vpermi2d %zmm0, %zmm3, %zmm13730; AVX512BW-FCP-NEXT:    movw $-30962, %cx # imm = 0x870E3731; AVX512BW-FCP-NEXT:    kmovd %ecx, %k13732; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm1, %zmm4 {%k1}3733; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm4, 320(%rax)3734; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm13, 256(%rax)3735; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm12, 192(%rax)3736; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm10, 128(%rax)3737; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm9, 64(%rax)3738; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm8, (%rax)3739; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm7, 384(%rax)3740; AVX512BW-FCP-NEXT:    vzeroupper3741; AVX512BW-FCP-NEXT:    retq3742;3743; AVX512DQ-BW-LABEL: store_i32_stride7_vf16:3744; AVX512DQ-BW:       # %bb.0:3745; AVX512DQ-BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax3746; AVX512DQ-BW-NEXT:    movq {{[0-9]+}}(%rsp), %r103747; AVX512DQ-BW-NEXT:    vmovdqa64 (%rdi), %zmm43748; AVX512DQ-BW-NEXT:    vmovdqa64 (%rsi), %zmm63749; AVX512DQ-BW-NEXT:    vmovdqa64 (%rdx), %zmm33750; AVX512DQ-BW-NEXT:    vmovdqa64 (%rcx), %zmm53751; AVX512DQ-BW-NEXT:    vmovdqa64 (%r8), %zmm13752; AVX512DQ-BW-NEXT:    vmovdqa64 (%r9), %zmm23753; AVX512DQ-BW-NEXT:    vmovdqa64 (%r10), %zmm03754; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,0,0,0,14,30,0,0,0,0,0,15,31,0,0,0]3755; AVX512DQ-BW-NEXT:    vpermi2d %zmm5, %zmm3, %zmm73756; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,0,14,30,0,0,0,0,0,15,31,0,0,0,0,0]3757; AVX512DQ-BW-NEXT:    vpermi2d %zmm6, %zmm4, %zmm83758; AVX512DQ-BW-NEXT:    movw $6192, %cx # imm = 0x18303759; AVX512DQ-BW-NEXT:    kmovd %ecx, %k13760; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm7, %zmm8 {%k1}3761; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [13,0,0,0,0,0,30,14,0,0,0,0,0,31,15,0]3762; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm2, %zmm73763; AVX512DQ-BW-NEXT:    movw $24769, %cx # imm = 0x60C13764; AVX512DQ-BW-NEXT:    kmovd %ecx, %k23765; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm7, %zmm8 {%k2}3766; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,29,2,3,4,5,6,7,30,9,10,11,12,13,14,31]3767; AVX512DQ-BW-NEXT:    vpermi2d %zmm0, %zmm8, %zmm73768; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [0,0,0,16,0,0,0,0,0,1,17,0,0,0,0,0]3769; AVX512DQ-BW-NEXT:    vpermi2d %zmm5, %zmm3, %zmm93770; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,16,0,0,0,0,0,1,17,0,0,0,0,0,2,18]3771; AVX512DQ-BW-NEXT:    vpermi2d %zmm6, %zmm4, %zmm83772; AVX512DQ-BW-NEXT:    movw $1548, %cx # imm = 0x60C3773; AVX512DQ-BW-NEXT:    kmovd %ecx, %k23774; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm9, %zmm8 {%k2}3775; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]3776; AVX512DQ-BW-NEXT:    vpermi2d %zmm2, %zmm1, %zmm93777; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,4,5,16,0,0,0,0,11,12,17,0,0]3778; AVX512DQ-BW-NEXT:    vpermi2d %zmm0, %zmm9, %zmm103779; AVX512DQ-BW-NEXT:    movw $14448, %cx # imm = 0x38703780; AVX512DQ-BW-NEXT:    kmovd %ecx, %k23781; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm10, %zmm8 {%k2}3782; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,0,3,19,0,0,0,0,0,4,20,0,0]3783; AVX512DQ-BW-NEXT:    vpermi2d %zmm6, %zmm4, %zmm103784; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [2,18,0,0,0,0,0,3,19,0,0,0,0,0,4,20]3785; AVX512DQ-BW-NEXT:    vpermi2d %zmm5, %zmm3, %zmm93786; AVX512DQ-BW-NEXT:    movw $12384, %cx # imm = 0x30603787; AVX512DQ-BW-NEXT:    kmovd %ecx, %k23788; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm10, %zmm9 {%k2}3789; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]3790; AVX512DQ-BW-NEXT:    vpermi2d %zmm2, %zmm1, %zmm103791; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,2,3,18,0,0,0,0,9,10,19,0,0,0,0]3792; AVX512DQ-BW-NEXT:    vpermi2d %zmm0, %zmm10, %zmm113793; AVX512DQ-BW-NEXT:    movw $3612, %cx # imm = 0xE1C3794; AVX512DQ-BW-NEXT:    kmovd %ecx, %k33795; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm11, %zmm9 {%k3}3796; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,0,5,21,0,0,0,0,0,6,22,0,0]3797; AVX512DQ-BW-NEXT:    vpermi2d %zmm5, %zmm3, %zmm103798; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,5,21,0,0,0,0,0,6,22,0,0,0,0]3799; AVX512DQ-BW-NEXT:    vpermi2d %zmm6, %zmm4, %zmm113800; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm10, %zmm11 {%k2}3801; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm12 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]3802; AVX512DQ-BW-NEXT:    vpermi2d %zmm2, %zmm1, %zmm123803; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,1,20,0,0,0,0,7,8,21,0,0,0,0,14,15]3804; AVX512DQ-BW-NEXT:    vpermi2d %zmm0, %zmm12, %zmm103805; AVX512DQ-BW-NEXT:    movw $15480, %cx # imm = 0x3C783806; AVX512DQ-BW-NEXT:    kmovd %ecx, %k23807; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm11, %zmm10 {%k2}3808; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,7,23,0,0,0,0,0,8,24,0,0,0,0]3809; AVX512DQ-BW-NEXT:    vpermi2d %zmm5, %zmm3, %zmm113810; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm12 = [0,7,23,0,0,0,0,0,8,24,0,0,0,0,0,9]3811; AVX512DQ-BW-NEXT:    vpermi2d %zmm6, %zmm4, %zmm123812; AVX512DQ-BW-NEXT:    movw $3096, %cx # imm = 0xC183813; AVX512DQ-BW-NEXT:    kmovd %ecx, %k23814; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm11, %zmm12 {%k2}3815; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,0,0,7,23,0,0,0,0,0,8,24,0,0]3816; AVX512DQ-BW-NEXT:    vpermi2d %zmm2, %zmm1, %zmm113817; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [22,0,0,0,0,5,6,23,0,0,0,0,12,13,24,0]3818; AVX512DQ-BW-NEXT:    vpermi2d %zmm0, %zmm11, %zmm133819; AVX512DQ-BW-NEXT:    movw $28897, %cx # imm = 0x70E13820; AVX512DQ-BW-NEXT:    kmovd %ecx, %k23821; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm13, %zmm12 {%k2}3822; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,9,25,0,0,0,0,0,10,26,0,0,0,0,0,11]3823; AVX512DQ-BW-NEXT:    vpermi2d %zmm5, %zmm3, %zmm113824; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [9,0,0,0,0,0,26,10,0,0,0,0,0,27,11,0]3825; AVX512DQ-BW-NEXT:    vpermi2d %zmm4, %zmm6, %zmm133826; AVX512DQ-BW-NEXT:    movw $-31994, %cx # imm = 0x83063827; AVX512DQ-BW-NEXT:    kmovd %ecx, %k23828; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm11, %zmm13 {%k2}3829; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,9,25,0,0,0,0,0,10,26,0,0,0,0]3830; AVX512DQ-BW-NEXT:    vpermi2d %zmm2, %zmm1, %zmm113831; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm14 = [0,0,0,3,4,25,0,0,0,0,10,11,26,0,0,0]3832; AVX512DQ-BW-NEXT:    vpermi2d %zmm0, %zmm11, %zmm143833; AVX512DQ-BW-NEXT:    movw $7224, %cx # imm = 0x1C383834; AVX512DQ-BW-NEXT:    kmovd %ecx, %k23835; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm14, %zmm13 {%k2}3836; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,0,12,28,0,0,0,0,0,13,29,0,0,0]3837; AVX512DQ-BW-NEXT:    vpermi2d %zmm6, %zmm4, %zmm113838; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [11,0,0,0,0,0,28,12,0,0,0,0,0,29,13,0]3839; AVX512DQ-BW-NEXT:    vpermi2d %zmm3, %zmm5, %zmm43840; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm11, %zmm4 {%k1}3841; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm3 = [0,11,27,0,0,0,0,0,12,28,0,0,0,0,0,13]3842; AVX512DQ-BW-NEXT:    vpermi2d %zmm2, %zmm1, %zmm33843; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,1,2,27,0,0,0,0,8,9,28,0,0,0,0,15]3844; AVX512DQ-BW-NEXT:    vpermi2d %zmm0, %zmm3, %zmm13845; AVX512DQ-BW-NEXT:    movw $-30962, %cx # imm = 0x870E3846; AVX512DQ-BW-NEXT:    kmovd %ecx, %k13847; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm1, %zmm4 {%k1}3848; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm4, 320(%rax)3849; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm13, 256(%rax)3850; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm12, 192(%rax)3851; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm10, 128(%rax)3852; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm9, 64(%rax)3853; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm8, (%rax)3854; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm7, 384(%rax)3855; AVX512DQ-BW-NEXT:    vzeroupper3856; AVX512DQ-BW-NEXT:    retq3857;3858; AVX512DQ-BW-FCP-LABEL: store_i32_stride7_vf16:3859; AVX512DQ-BW-FCP:       # %bb.0:3860; AVX512DQ-BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax3861; AVX512DQ-BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %r103862; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 (%rdi), %zmm43863; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 (%rsi), %zmm63864; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 (%rdx), %zmm33865; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 (%rcx), %zmm53866; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 (%r8), %zmm13867; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 (%r9), %zmm23868; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 (%r10), %zmm03869; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,0,0,0,14,30,0,0,0,0,0,15,31,0,0,0]3870; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm73871; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,0,14,30,0,0,0,0,0,15,31,0,0,0,0,0]3872; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm83873; AVX512DQ-BW-FCP-NEXT:    movw $6192, %cx # imm = 0x18303874; AVX512DQ-BW-FCP-NEXT:    kmovd %ecx, %k13875; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm7, %zmm8 {%k1}3876; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [13,0,0,0,0,0,30,14,0,0,0,0,0,31,15,0]3877; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm2, %zmm73878; AVX512DQ-BW-FCP-NEXT:    movw $24769, %cx # imm = 0x60C13879; AVX512DQ-BW-FCP-NEXT:    kmovd %ecx, %k23880; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm7, %zmm8 {%k2}3881; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,29,2,3,4,5,6,7,30,9,10,11,12,13,14,31]3882; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm0, %zmm8, %zmm73883; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [0,0,0,16,0,0,0,0,0,1,17,0,0,0,0,0]3884; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm93885; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,16,0,0,0,0,0,1,17,0,0,0,0,0,2,18]3886; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm83887; AVX512DQ-BW-FCP-NEXT:    movw $1548, %cx # imm = 0x60C3888; AVX512DQ-BW-FCP-NEXT:    kmovd %ecx, %k23889; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm9, %zmm8 {%k2}3890; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]3891; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm93892; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,4,5,16,0,0,0,0,11,12,17,0,0]3893; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm0, %zmm9, %zmm103894; AVX512DQ-BW-FCP-NEXT:    movw $14448, %cx # imm = 0x38703895; AVX512DQ-BW-FCP-NEXT:    kmovd %ecx, %k23896; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm10, %zmm8 {%k2}3897; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,0,3,19,0,0,0,0,0,4,20,0,0]3898; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm103899; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [2,18,0,0,0,0,0,3,19,0,0,0,0,0,4,20]3900; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm93901; AVX512DQ-BW-FCP-NEXT:    movw $12384, %cx # imm = 0x30603902; AVX512DQ-BW-FCP-NEXT:    kmovd %ecx, %k23903; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm10, %zmm9 {%k2}3904; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]3905; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm103906; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,2,3,18,0,0,0,0,9,10,19,0,0,0,0]3907; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm0, %zmm10, %zmm113908; AVX512DQ-BW-FCP-NEXT:    movw $3612, %cx # imm = 0xE1C3909; AVX512DQ-BW-FCP-NEXT:    kmovd %ecx, %k33910; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm11, %zmm9 {%k3}3911; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,0,5,21,0,0,0,0,0,6,22,0,0]3912; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm103913; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,5,21,0,0,0,0,0,6,22,0,0,0,0]3914; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm113915; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm10, %zmm11 {%k2}3916; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm12 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]3917; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm123918; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,1,20,0,0,0,0,7,8,21,0,0,0,0,14,15]3919; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm0, %zmm12, %zmm103920; AVX512DQ-BW-FCP-NEXT:    movw $15480, %cx # imm = 0x3C783921; AVX512DQ-BW-FCP-NEXT:    kmovd %ecx, %k23922; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm11, %zmm10 {%k2}3923; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,7,23,0,0,0,0,0,8,24,0,0,0,0]3924; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm113925; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm12 = [0,7,23,0,0,0,0,0,8,24,0,0,0,0,0,9]3926; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm123927; AVX512DQ-BW-FCP-NEXT:    movw $3096, %cx # imm = 0xC183928; AVX512DQ-BW-FCP-NEXT:    kmovd %ecx, %k23929; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm11, %zmm12 {%k2}3930; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,0,0,7,23,0,0,0,0,0,8,24,0,0]3931; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm113932; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [22,0,0,0,0,5,6,23,0,0,0,0,12,13,24,0]3933; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm0, %zmm11, %zmm133934; AVX512DQ-BW-FCP-NEXT:    movw $28897, %cx # imm = 0x70E13935; AVX512DQ-BW-FCP-NEXT:    kmovd %ecx, %k23936; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm13, %zmm12 {%k2}3937; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,9,25,0,0,0,0,0,10,26,0,0,0,0,0,11]3938; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm5, %zmm3, %zmm113939; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [9,0,0,0,0,0,26,10,0,0,0,0,0,27,11,0]3940; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm4, %zmm6, %zmm133941; AVX512DQ-BW-FCP-NEXT:    movw $-31994, %cx # imm = 0x83063942; AVX512DQ-BW-FCP-NEXT:    kmovd %ecx, %k23943; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm11, %zmm13 {%k2}3944; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,9,25,0,0,0,0,0,10,26,0,0,0,0]3945; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm113946; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm14 = [0,0,0,3,4,25,0,0,0,0,10,11,26,0,0,0]3947; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm0, %zmm11, %zmm143948; AVX512DQ-BW-FCP-NEXT:    movw $7224, %cx # imm = 0x1C383949; AVX512DQ-BW-FCP-NEXT:    kmovd %ecx, %k23950; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm14, %zmm13 {%k2}3951; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,0,12,28,0,0,0,0,0,13,29,0,0,0]3952; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm6, %zmm4, %zmm113953; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [11,0,0,0,0,0,28,12,0,0,0,0,0,29,13,0]3954; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm3, %zmm5, %zmm43955; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm11, %zmm4 {%k1}3956; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm3 = [0,11,27,0,0,0,0,0,12,28,0,0,0,0,0,13]3957; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm33958; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,1,2,27,0,0,0,0,8,9,28,0,0,0,0,15]3959; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm0, %zmm3, %zmm13960; AVX512DQ-BW-FCP-NEXT:    movw $-30962, %cx # imm = 0x870E3961; AVX512DQ-BW-FCP-NEXT:    kmovd %ecx, %k13962; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm1, %zmm4 {%k1}3963; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm4, 320(%rax)3964; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm13, 256(%rax)3965; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm12, 192(%rax)3966; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm10, 128(%rax)3967; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm9, 64(%rax)3968; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm8, (%rax)3969; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm7, 384(%rax)3970; AVX512DQ-BW-FCP-NEXT:    vzeroupper3971; AVX512DQ-BW-FCP-NEXT:    retq3972  %in.vec0 = load <16 x i32>, ptr %in.vecptr0, align 643973  %in.vec1 = load <16 x i32>, ptr %in.vecptr1, align 643974  %in.vec2 = load <16 x i32>, ptr %in.vecptr2, align 643975  %in.vec3 = load <16 x i32>, ptr %in.vecptr3, align 643976  %in.vec4 = load <16 x i32>, ptr %in.vecptr4, align 643977  %in.vec5 = load <16 x i32>, ptr %in.vecptr5, align 643978  %in.vec6 = load <16 x i32>, ptr %in.vecptr6, align 643979  %1 = shufflevector <16 x i32> %in.vec0, <16 x i32> %in.vec1, <32 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31>3980  %2 = shufflevector <16 x i32> %in.vec2, <16 x i32> %in.vec3, <32 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31>3981  %3 = shufflevector <16 x i32> %in.vec4, <16 x i32> %in.vec5, <32 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31>3982  %4 = shufflevector <32 x i32> %1, <32 x i32> %2, <64 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63>3983  %5 = shufflevector <16 x i32> %in.vec6, <16 x i32> poison, <32 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>3984  %6 = shufflevector <32 x i32> %3, <32 x i32> %5, <48 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47>3985  %7 = shufflevector <48 x i32> %6, <48 x i32> poison, <64 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>3986  %8 = shufflevector <64 x i32> %4, <64 x i32> %7, <112 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 108, i32 109, i32 110, i32 111>3987  %interleaved.vec = shufflevector <112 x i32> %8, <112 x i32> poison, <112 x i32> <i32 0, i32 16, i32 32, i32 48, i32 64, i32 80, i32 96, i32 1, i32 17, i32 33, i32 49, i32 65, i32 81, i32 97, i32 2, i32 18, i32 34, i32 50, i32 66, i32 82, i32 98, i32 3, i32 19, i32 35, i32 51, i32 67, i32 83, i32 99, i32 4, i32 20, i32 36, i32 52, i32 68, i32 84, i32 100, i32 5, i32 21, i32 37, i32 53, i32 69, i32 85, i32 101, i32 6, i32 22, i32 38, i32 54, i32 70, i32 86, i32 102, i32 7, i32 23, i32 39, i32 55, i32 71, i32 87, i32 103, i32 8, i32 24, i32 40, i32 56, i32 72, i32 88, i32 104, i32 9, i32 25, i32 41, i32 57, i32 73, i32 89, i32 105, i32 10, i32 26, i32 42, i32 58, i32 74, i32 90, i32 106, i32 11, i32 27, i32 43, i32 59, i32 75, i32 91, i32 107, i32 12, i32 28, i32 44, i32 60, i32 76, i32 92, i32 108, i32 13, i32 29, i32 45, i32 61, i32 77, i32 93, i32 109, i32 14, i32 30, i32 46, i32 62, i32 78, i32 94, i32 110, i32 15, i32 31, i32 47, i32 63, i32 79, i32 95, i32 111>3988  store <112 x i32> %interleaved.vec, ptr %out.vec, align 643989  ret void3990}3991 3992define void @store_i32_stride7_vf32(ptr %in.vecptr0, ptr %in.vecptr1, ptr %in.vecptr2, ptr %in.vecptr3, ptr %in.vecptr4, ptr %in.vecptr5, ptr %in.vecptr6, ptr %out.vec) nounwind {3993; SSE-LABEL: store_i32_stride7_vf32:3994; SSE:       # %bb.0:3995; SSE-NEXT:    subq $1256, %rsp # imm = 0x4E83996; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %rax3997; SSE-NEXT:    movdqa (%rdi), %xmm83998; SSE-NEXT:    movdqa (%rsi), %xmm103999; SSE-NEXT:    movdqa 16(%rsi), %xmm44000; SSE-NEXT:    movaps (%rdx), %xmm144001; SSE-NEXT:    movdqa 16(%rdx), %xmm74002; SSE-NEXT:    movdqa %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4003; SSE-NEXT:    movaps (%rcx), %xmm134004; SSE-NEXT:    movaps 16(%rcx), %xmm94005; SSE-NEXT:    movaps %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4006; SSE-NEXT:    movaps (%r8), %xmm04007; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4008; SSE-NEXT:    movaps 16(%r8), %xmm114009; SSE-NEXT:    movaps %xmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4010; SSE-NEXT:    movdqa (%r9), %xmm154011; SSE-NEXT:    movdqa %xmm15, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4012; SSE-NEXT:    movdqa 16(%r9), %xmm124013; SSE-NEXT:    movdqa %xmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4014; SSE-NEXT:    movdqa (%rax), %xmm24015; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4016; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm13[1,1]4017; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm10[1,1,1,1]4018; SSE-NEXT:    movaps %xmm14, %xmm34019; SSE-NEXT:    movss {{.*#+}} xmm3 = xmm1[0],xmm3[1,2,3]4020; SSE-NEXT:    shufps {{.*#+}} xmm3 = xmm3[0,1],xmm0[2,0]4021; SSE-NEXT:    movaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4022; SSE-NEXT:    movdqa %xmm8, %xmm04023; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm10[2],xmm0[3],xmm10[3]4024; SSE-NEXT:    movdqa %xmm10, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4025; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm2[1,1,1,1]4026; SSE-NEXT:    pshufd {{.*#+}} xmm3 = xmm15[1,1,1,1]4027; SSE-NEXT:    punpckldq {{.*#+}} xmm3 = xmm3[0],xmm1[0],xmm3[1],xmm1[1]4028; SSE-NEXT:    punpcklqdq {{.*#+}} xmm3 = xmm3[0],xmm0[0]4029; SSE-NEXT:    movdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4030; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm7[1,1,1,1]4031; SSE-NEXT:    movdqa %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4032; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm4[1,1,1,1]4033; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4034; SSE-NEXT:    movaps %xmm11, %xmm04035; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm9[1,1]4036; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]4037; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4038; SSE-NEXT:    movdqa 16(%rax), %xmm04039; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4040; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]4041; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm12[1,1,1,1]4042; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4043; SSE-NEXT:    movdqa 16(%rdi), %xmm154044; SSE-NEXT:    movdqa %xmm15, %xmm04045; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm4[2],xmm0[3],xmm4[3]4046; SSE-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]4047; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4048; SSE-NEXT:    movdqa 32(%rsi), %xmm24049; SSE-NEXT:    movaps 32(%rdx), %xmm14050; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4051; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm2[1,1,1,1]4052; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4053; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm0[0],xmm1[1,2,3]4054; SSE-NEXT:    movaps 32(%rcx), %xmm54055; SSE-NEXT:    movaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4056; SSE-NEXT:    movaps 32(%r8), %xmm04057; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4058; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm5[1,1]4059; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]4060; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4061; SSE-NEXT:    movdqa 32(%r9), %xmm14062; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4063; SSE-NEXT:    movdqa 32(%rax), %xmm04064; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4065; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]4066; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[1,1,1,1]4067; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4068; SSE-NEXT:    movdqa 32(%rdi), %xmm04069; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4070; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm2[2],xmm0[3],xmm2[3]4071; SSE-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]4072; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4073; SSE-NEXT:    movdqa 48(%rsi), %xmm34074; SSE-NEXT:    movdqa 48(%rdx), %xmm04075; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4076; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]4077; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm3[1,1,1,1]4078; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4079; SSE-NEXT:    movaps 48(%rcx), %xmm74080; SSE-NEXT:    movaps %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4081; SSE-NEXT:    movaps 48(%r8), %xmm04082; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4083; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm7[1,1]4084; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]4085; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4086; SSE-NEXT:    movdqa 48(%r9), %xmm14087; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4088; SSE-NEXT:    movdqa 48(%rax), %xmm04089; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4090; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]4091; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[1,1,1,1]4092; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4093; SSE-NEXT:    movdqa 48(%rdi), %xmm114094; SSE-NEXT:    movdqa %xmm11, %xmm04095; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm3[2],xmm0[3],xmm3[3]4096; SSE-NEXT:    movdqa %xmm3, %xmm74097; SSE-NEXT:    movdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4098; SSE-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]4099; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4100; SSE-NEXT:    movdqa 64(%rsi), %xmm124101; SSE-NEXT:    movaps 64(%rdx), %xmm14102; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4103; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm12[1,1,1,1]4104; SSE-NEXT:    movdqa %xmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4105; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm0[0],xmm1[1,2,3]4106; SSE-NEXT:    movaps 64(%rcx), %xmm34107; SSE-NEXT:    movaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4108; SSE-NEXT:    movaps 64(%r8), %xmm04109; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4110; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm3[1,1]4111; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]4112; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4113; SSE-NEXT:    movdqa 64(%r9), %xmm14114; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4115; SSE-NEXT:    movdqa 64(%rax), %xmm04116; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4117; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]4118; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[1,1,1,1]4119; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4120; SSE-NEXT:    movdqa 64(%rdi), %xmm94121; SSE-NEXT:    movdqa %xmm9, %xmm04122; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm12[2],xmm0[3],xmm12[3]4123; SSE-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]4124; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4125; SSE-NEXT:    movdqa 80(%rsi), %xmm124126; SSE-NEXT:    movdqa 80(%rdx), %xmm04127; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4128; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]4129; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm12[1,1,1,1]4130; SSE-NEXT:    movdqa %xmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4131; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4132; SSE-NEXT:    movaps 80(%rcx), %xmm24133; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4134; SSE-NEXT:    movaps 80(%r8), %xmm04135; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4136; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm2[1,1]4137; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]4138; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4139; SSE-NEXT:    movdqa 80(%r9), %xmm14140; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4141; SSE-NEXT:    movdqa 80(%rax), %xmm04142; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4143; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]4144; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[1,1,1,1]4145; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4146; SSE-NEXT:    movdqa 80(%rdi), %xmm04147; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4148; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm12[2],xmm0[3],xmm12[3]4149; SSE-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]4150; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4151; SSE-NEXT:    movdqa 96(%rsi), %xmm64152; SSE-NEXT:    movaps 96(%rdx), %xmm14153; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4154; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm6[1,1,1,1]4155; SSE-NEXT:    movdqa %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4156; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm0[0],xmm1[1,2,3]4157; SSE-NEXT:    movaps 96(%rcx), %xmm34158; SSE-NEXT:    movaps 96(%r8), %xmm44159; SSE-NEXT:    movaps %xmm4, %xmm04160; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4161; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm3[1,1]4162; SSE-NEXT:    movaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4163; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]4164; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4165; SSE-NEXT:    movdqa 96(%r9), %xmm24166; SSE-NEXT:    movdqa 96(%rax), %xmm124167; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm12[1,1,1,1]4168; SSE-NEXT:    movdqa %xmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4169; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm2[1,1,1,1]4170; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4171; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4172; SSE-NEXT:    movdqa 96(%rdi), %xmm04173; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4174; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm6[2],xmm0[3],xmm6[3]4175; SSE-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]4176; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4177; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm4[3,3,3,3]4178; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm3[3,3,3,3]4179; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]4180; SSE-NEXT:    movdqa %xmm12, %xmm04181; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[3,3],xmm2[3,3]4182; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]4183; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4184; SSE-NEXT:    movdqa 112(%rsi), %xmm14185; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4186; SSE-NEXT:    movdqa 112(%rdx), %xmm04187; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4188; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]4189; SSE-NEXT:    pshufd {{.*#+}} xmm3 = xmm1[1,1,1,1]4190; SSE-NEXT:    punpckldq {{.*#+}} xmm3 = xmm3[0],xmm0[0],xmm3[1],xmm0[1]4191; SSE-NEXT:    movaps 112(%rcx), %xmm24192; SSE-NEXT:    movaps 112(%r8), %xmm04193; SSE-NEXT:    movaps %xmm0, %xmm14194; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[1,1],xmm2[1,1]4195; SSE-NEXT:    shufps {{.*#+}} xmm3 = xmm3[0,1],xmm1[2,0]4196; SSE-NEXT:    movaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4197; SSE-NEXT:    movaps %xmm0, %xmm14198; SSE-NEXT:    movaps 112(%r9), %xmm124199; SSE-NEXT:    movlhps {{.*#+}} xmm1 = xmm1[0],xmm12[0]4200; SSE-NEXT:    movaps %xmm1, (%rsp) # 16-byte Spill4201; SSE-NEXT:    movaps %xmm12, %xmm14202; SSE-NEXT:    movaps %xmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4203; SSE-NEXT:    unpckhpd {{.*#+}} xmm12 = xmm12[1],xmm0[1]4204; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[3,3,3,3]4205; SSE-NEXT:    movaps %xmm2, %xmm34206; SSE-NEXT:    pshufd {{.*#+}} xmm2 = xmm2[3,3,3,3]4207; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm0[0],xmm2[1],xmm0[1]4208; SSE-NEXT:    movaps 112(%rax), %xmm04209; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4210; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[3,3],xmm0[3,3]4211; SSE-NEXT:    shufps {{.*#+}} xmm2 = xmm2[0,1],xmm1[0,2]4212; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4213; SSE-NEXT:    movaps %xmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4214; SSE-NEXT:    movaps %xmm14, %xmm04215; SSE-NEXT:    movaps %xmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4216; SSE-NEXT:    unpcklps {{.*#+}} xmm0 = xmm0[0],xmm13[0],xmm0[1],xmm13[1]4217; SSE-NEXT:    movdqa %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4218; SSE-NEXT:    movdqa %xmm8, %xmm14219; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm10[0],xmm1[1],xmm10[1]4220; SSE-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]4221; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4222; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4223; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,1],xmm8[1,3]4224; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload4225; SSE-NEXT:    movaps %xmm2, %xmm14226; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload4227; SSE-NEXT:    unpcklps {{.*#+}} xmm1 = xmm1[0],xmm4[0],xmm1[1],xmm4[1]4228; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[0,2]4229; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4230; SSE-NEXT:    movaps %xmm2, %xmm04231; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm4[2],xmm0[3],xmm4[3]4232; SSE-NEXT:    movaps %xmm14, %xmm14233; SSE-NEXT:    unpckhps {{.*#+}} xmm1 = xmm1[2],xmm13[2],xmm1[3],xmm13[3]4234; SSE-NEXT:    movlhps {{.*#+}} xmm1 = xmm1[0],xmm0[0]4235; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4236; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4237; SSE-NEXT:    movaps %xmm1, %xmm04238; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload4239; SSE-NEXT:    movlhps {{.*#+}} xmm0 = xmm0[0],xmm6[0]4240; SSE-NEXT:    movdqa %xmm15, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4241; SSE-NEXT:    movdqa %xmm15, %xmm24242; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Folded Reload4243; SSE-NEXT:    # xmm2 = xmm2[0],mem[0],xmm2[1],mem[1]4244; SSE-NEXT:    shufps {{.*#+}} xmm2 = xmm2[0,1],xmm0[2,0]4245; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4246; SSE-NEXT:    shufps $197, {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Folded Reload4247; SSE-NEXT:    # xmm15 = xmm15[1,1],mem[0,3]4248; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload4249; SSE-NEXT:    movaps %xmm2, %xmm44250; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload4251; SSE-NEXT:    unpcklps {{.*#+}} xmm4 = xmm4[0],xmm5[0],xmm4[1],xmm5[1]4252; SSE-NEXT:    shufps {{.*#+}} xmm4 = xmm4[0,1],xmm15[2,0]4253; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4254; SSE-NEXT:    movaps %xmm6, %xmm44255; SSE-NEXT:    unpckhps {{.*#+}} xmm4 = xmm4[2],xmm1[2],xmm4[3],xmm1[3]4256; SSE-NEXT:    movaps %xmm2, %xmm04257; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm5[2],xmm0[3],xmm5[3]4258; SSE-NEXT:    movlhps {{.*#+}} xmm4 = xmm4[0],xmm0[0]4259; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4260; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload4261; SSE-NEXT:    movaps %xmm2, %xmm04262; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4263; SSE-NEXT:    unpcklps {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]4264; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload4265; SSE-NEXT:    movaps %xmm5, %xmm44266; SSE-NEXT:    unpcklps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload4267; SSE-NEXT:    # xmm4 = xmm4[0],mem[0],xmm4[1],mem[1]4268; SSE-NEXT:    movlhps {{.*#+}} xmm4 = xmm4[0],xmm0[0]4269; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4270; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4271; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,1],xmm5[1,3]4272; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload4273; SSE-NEXT:    movaps %xmm5, %xmm64274; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload4275; SSE-NEXT:    unpcklps {{.*#+}} xmm6 = xmm6[0],xmm4[0],xmm6[1],xmm4[1]4276; SSE-NEXT:    shufps {{.*#+}} xmm6 = xmm6[0,1],xmm0[0,2]4277; SSE-NEXT:    movaps %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4278; SSE-NEXT:    movaps %xmm5, %xmm04279; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm4[2],xmm0[3],xmm4[3]4280; SSE-NEXT:    movaps %xmm2, %xmm44281; SSE-NEXT:    unpckhps {{.*#+}} xmm4 = xmm4[2],xmm1[2],xmm4[3],xmm1[3]4282; SSE-NEXT:    movlhps {{.*#+}} xmm4 = xmm4[0],xmm0[0]4283; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4284; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4285; SSE-NEXT:    movaps %xmm1, %xmm04286; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload4287; SSE-NEXT:    movlhps {{.*#+}} xmm0 = xmm0[0],xmm2[0]4288; SSE-NEXT:    movdqa %xmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4289; SSE-NEXT:    movdqa %xmm11, %xmm44290; SSE-NEXT:    punpckldq {{.*#+}} xmm4 = xmm4[0],xmm7[0],xmm4[1],xmm7[1]4291; SSE-NEXT:    shufps {{.*#+}} xmm4 = xmm4[0,1],xmm0[2,0]4292; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4293; SSE-NEXT:    movdqa %xmm11, %xmm04294; SSE-NEXT:    shufps $197, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4295; SSE-NEXT:    # xmm0 = xmm0[1,1],mem[0,3]4296; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload4297; SSE-NEXT:    movaps %xmm6, %xmm54298; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload4299; SSE-NEXT:    unpcklps {{.*#+}} xmm5 = xmm5[0],xmm4[0],xmm5[1],xmm4[1]4300; SSE-NEXT:    shufps {{.*#+}} xmm5 = xmm5[0,1],xmm0[2,0]4301; SSE-NEXT:    movaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4302; SSE-NEXT:    movaps %xmm2, %xmm54303; SSE-NEXT:    unpckhps {{.*#+}} xmm5 = xmm5[2],xmm1[2],xmm5[3],xmm1[3]4304; SSE-NEXT:    movaps %xmm6, %xmm04305; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm4[2],xmm0[3],xmm4[3]4306; SSE-NEXT:    movlhps {{.*#+}} xmm5 = xmm5[0],xmm0[0]4307; SSE-NEXT:    movaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4308; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload4309; SSE-NEXT:    movdqa %xmm2, %xmm04310; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4311; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]4312; SSE-NEXT:    movdqa %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4313; SSE-NEXT:    movdqa %xmm9, %xmm44314; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload4315; SSE-NEXT:    # xmm4 = xmm4[0],mem[0],xmm4[1],mem[1]4316; SSE-NEXT:    punpcklqdq {{.*#+}} xmm4 = xmm4[0],xmm0[0]4317; SSE-NEXT:    movdqa %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4318; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4319; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,1],xmm9[1,3]4320; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload4321; SSE-NEXT:    movaps %xmm6, %xmm54322; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload4323; SSE-NEXT:    unpcklps {{.*#+}} xmm5 = xmm5[0],xmm4[0],xmm5[1],xmm4[1]4324; SSE-NEXT:    shufps {{.*#+}} xmm5 = xmm5[0,1],xmm0[0,2]4325; SSE-NEXT:    movaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4326; SSE-NEXT:    movaps %xmm6, %xmm04327; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm4[2],xmm0[3],xmm4[3]4328; SSE-NEXT:    movdqa %xmm2, %xmm44329; SSE-NEXT:    punpckhdq {{.*#+}} xmm4 = xmm4[2],xmm1[2],xmm4[3],xmm1[3]4330; SSE-NEXT:    punpcklqdq {{.*#+}} xmm4 = xmm4[0],xmm0[0]4331; SSE-NEXT:    movdqa %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4332; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload4333; SSE-NEXT:    movaps %xmm4, %xmm04334; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm11 # 16-byte Reload4335; SSE-NEXT:    movlhps {{.*#+}} xmm0 = xmm0[0],xmm11[0]4336; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4337; SSE-NEXT:    movaps %xmm1, %xmm154338; SSE-NEXT:    unpcklps {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Folded Reload4339; SSE-NEXT:    # xmm15 = xmm15[0],mem[0],xmm15[1],mem[1]4340; SSE-NEXT:    shufps {{.*#+}} xmm15 = xmm15[0,1],xmm0[2,0]4341; SSE-NEXT:    movaps %xmm1, %xmm04342; SSE-NEXT:    shufps $197, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4343; SSE-NEXT:    # xmm0 = xmm0[1,1],mem[0,3]4344; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4345; SSE-NEXT:    movaps %xmm1, %xmm134346; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload4347; SSE-NEXT:    unpcklps {{.*#+}} xmm13 = xmm13[0],xmm5[0],xmm13[1],xmm5[1]4348; SSE-NEXT:    shufps {{.*#+}} xmm13 = xmm13[0,1],xmm0[2,0]4349; SSE-NEXT:    unpckhps {{.*#+}} xmm11 = xmm11[2],xmm4[2],xmm11[3],xmm4[3]4350; SSE-NEXT:    movaps %xmm1, %xmm04351; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm5[2],xmm0[3],xmm5[3]4352; SSE-NEXT:    movlhps {{.*#+}} xmm11 = xmm11[0],xmm0[0]4353; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload4354; SSE-NEXT:    movaps %xmm8, %xmm04355; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload4356; SSE-NEXT:    unpcklps {{.*#+}} xmm0 = xmm0[0],xmm4[0],xmm0[1],xmm4[1]4357; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload4358; SSE-NEXT:    movaps %xmm14, %xmm104359; SSE-NEXT:    unpcklps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Folded Reload4360; SSE-NEXT:    # xmm10 = xmm10[0],mem[0],xmm10[1],mem[1]4361; SSE-NEXT:    movlhps {{.*#+}} xmm10 = xmm10[0],xmm0[0]4362; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4363; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,1],xmm14[1,3]4364; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4365; SSE-NEXT:    movaps %xmm1, %xmm94366; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload4367; SSE-NEXT:    unpcklps {{.*#+}} xmm9 = xmm9[0],xmm5[0],xmm9[1],xmm5[1]4368; SSE-NEXT:    shufps {{.*#+}} xmm9 = xmm9[0,1],xmm0[0,2]4369; SSE-NEXT:    unpckhps {{.*#+}} xmm1 = xmm1[2],xmm5[2],xmm1[3],xmm5[3]4370; SSE-NEXT:    unpckhps {{.*#+}} xmm8 = xmm8[2],xmm4[2],xmm8[3],xmm4[3]4371; SSE-NEXT:    movlhps {{.*#+}} xmm8 = xmm8[0],xmm1[0]4372; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload4373; SSE-NEXT:    movaps %xmm4, %xmm74374; SSE-NEXT:    unpckhps {{.*#+}} xmm7 = xmm7[2],xmm3[2],xmm7[3],xmm3[3]4375; SSE-NEXT:    movlhps {{.*#+}} xmm3 = xmm3[0],xmm4[0]4376; SSE-NEXT:    movaps 112(%rdi), %xmm54377; SSE-NEXT:    movaps %xmm5, %xmm64378; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload4379; SSE-NEXT:    unpcklps {{.*#+}} xmm6 = xmm6[0],xmm2[0],xmm6[1],xmm2[1]4380; SSE-NEXT:    shufps {{.*#+}} xmm6 = xmm6[0,1],xmm3[2,0]4381; SSE-NEXT:    movaps %xmm5, %xmm04382; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4383; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm1[0,3]4384; SSE-NEXT:    movaps (%rsp), %xmm3 # 16-byte Reload4385; SSE-NEXT:    shufps {{.*#+}} xmm3 = xmm3[0,2],xmm0[2,0]4386; SSE-NEXT:    movaps %xmm3, (%rsp) # 16-byte Spill4387; SSE-NEXT:    movaps %xmm5, %xmm04388; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm2[2],xmm0[3],xmm2[3]4389; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload4390; SSE-NEXT:    shufps {{.*#+}} xmm3 = xmm3[1,1],xmm1[1,1]4391; SSE-NEXT:    shufps {{.*#+}} xmm3 = xmm3[0,2],xmm0[0,1]4392; SSE-NEXT:    movaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4393; SSE-NEXT:    shufps {{.*#+}} xmm7 = xmm7[0,1],xmm12[2,0]4394; SSE-NEXT:    shufps {{.*#+}} xmm4 = xmm4[3,3],xmm2[3,3]4395; SSE-NEXT:    shufps {{.*#+}} xmm5 = xmm5[3,1],xmm1[2,3]4396; SSE-NEXT:    shufps {{.*#+}} xmm5 = xmm5[2,0],xmm4[2,0]4397; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4398; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4399; SSE-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]4400; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4401; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,3],xmm0[2,0]4402; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Reload4403; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm12[2,3,2,3]4404; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm0[0],xmm1[1,2,3]4405; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4406; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Folded Reload4407; SSE-NEXT:    # xmm12 = xmm12[3,3],mem[3,3]4408; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4409; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,3],xmm12[2,0]4410; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4411; SSE-NEXT:    # xmm0 = mem[3,3,3,3]4412; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm0[0],xmm1[1,2,3]4413; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4414; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4415; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4416; SSE-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]4417; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload4418; SSE-NEXT:    shufps {{.*#+}} xmm4 = xmm4[0,3],xmm0[2,0]4419; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4420; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm1[2,3,2,3]4421; SSE-NEXT:    movss {{.*#+}} xmm4 = xmm0[0],xmm4[1,2,3]4422; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload4423; SSE-NEXT:    # xmm1 = xmm1[3,3],mem[3,3]4424; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload4425; SSE-NEXT:    shufps {{.*#+}} xmm2 = xmm2[0,3],xmm1[2,0]4426; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4427; SSE-NEXT:    # xmm0 = mem[3,3,3,3]4428; SSE-NEXT:    movss {{.*#+}} xmm2 = xmm0[0],xmm2[1,2,3]4429; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4430; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4431; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4432; SSE-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]4433; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload4434; SSE-NEXT:    shufps {{.*#+}} xmm2 = xmm2[0,3],xmm0[2,0]4435; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4436; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm1[2,3,2,3]4437; SSE-NEXT:    movss {{.*#+}} xmm2 = xmm0[0],xmm2[1,2,3]4438; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4439; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload4440; SSE-NEXT:    # xmm1 = xmm1[3,3],mem[3,3]4441; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload4442; SSE-NEXT:    shufps {{.*#+}} xmm2 = xmm2[0,3],xmm1[2,0]4443; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4444; SSE-NEXT:    # xmm0 = mem[3,3,3,3]4445; SSE-NEXT:    movss {{.*#+}} xmm2 = xmm0[0],xmm2[1,2,3]4446; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4447; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4448; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4449; SSE-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]4450; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload4451; SSE-NEXT:    shufps {{.*#+}} xmm2 = xmm2[0,3],xmm0[2,0]4452; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4453; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm1[2,3,2,3]4454; SSE-NEXT:    movss {{.*#+}} xmm2 = xmm0[0],xmm2[1,2,3]4455; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4456; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload4457; SSE-NEXT:    # xmm1 = xmm1[3,3],mem[3,3]4458; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload4459; SSE-NEXT:    shufps {{.*#+}} xmm2 = xmm2[0,3],xmm1[2,0]4460; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4461; SSE-NEXT:    # xmm0 = mem[3,3,3,3]4462; SSE-NEXT:    movss {{.*#+}} xmm2 = xmm0[0],xmm2[1,2,3]4463; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4464; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4465; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4466; SSE-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]4467; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Reload4468; SSE-NEXT:    shufps {{.*#+}} xmm12 = xmm12[0,3],xmm0[2,0]4469; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4470; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm1[2,3,2,3]4471; SSE-NEXT:    movss {{.*#+}} xmm12 = xmm0[0],xmm12[1,2,3]4472; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload4473; SSE-NEXT:    # xmm1 = xmm1[3,3],mem[3,3]4474; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload4475; SSE-NEXT:    shufps {{.*#+}} xmm3 = xmm3[0,3],xmm1[2,0]4476; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4477; SSE-NEXT:    # xmm0 = mem[3,3,3,3]4478; SSE-NEXT:    movss {{.*#+}} xmm3 = xmm0[0],xmm3[1,2,3]4479; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4480; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4481; SSE-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]4482; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload4483; SSE-NEXT:    shufps {{.*#+}} xmm2 = xmm2[0,3],xmm0[2,0]4484; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4485; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm1[2,3,2,3]4486; SSE-NEXT:    movss {{.*#+}} xmm2 = xmm0[0],xmm2[1,2,3]4487; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload4488; SSE-NEXT:    # xmm1 = xmm1[3,3],mem[3,3]4489; SSE-NEXT:    movaps %xmm1, %xmm04490; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload4491; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,3],xmm0[2,0]4492; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4493; SSE-NEXT:    # xmm0 = mem[3,3,3,3]4494; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm0[0],xmm1[1,2,3]4495; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4496; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4497; SSE-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]4498; SSE-NEXT:    shufps {{.*#+}} xmm14 = xmm14[0,3],xmm0[2,0]4499; SSE-NEXT:    pshufd $238, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload4500; SSE-NEXT:    # xmm0 = mem[2,3,2,3]4501; SSE-NEXT:    movss {{.*#+}} xmm14 = xmm0[0],xmm14[1,2,3]4502; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %rax4503; SSE-NEXT:    movaps %xmm5, 864(%rax)4504; SSE-NEXT:    movaps %xmm7, 848(%rax)4505; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4506; SSE-NEXT:    movaps %xmm0, 832(%rax)4507; SSE-NEXT:    movaps (%rsp), %xmm0 # 16-byte Reload4508; SSE-NEXT:    movaps %xmm0, 800(%rax)4509; SSE-NEXT:    movaps %xmm6, 784(%rax)4510; SSE-NEXT:    movaps %xmm8, 736(%rax)4511; SSE-NEXT:    movaps %xmm9, 688(%rax)4512; SSE-NEXT:    movaps %xmm10, 672(%rax)4513; SSE-NEXT:    movaps %xmm11, 624(%rax)4514; SSE-NEXT:    movaps %xmm13, 576(%rax)4515; SSE-NEXT:    movaps %xmm15, 560(%rax)4516; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4517; SSE-NEXT:    movaps %xmm0, 512(%rax)4518; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4519; SSE-NEXT:    movaps %xmm0, 464(%rax)4520; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4521; SSE-NEXT:    movaps %xmm0, 448(%rax)4522; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4523; SSE-NEXT:    movaps %xmm0, 400(%rax)4524; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4525; SSE-NEXT:    movaps %xmm0, 352(%rax)4526; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4527; SSE-NEXT:    movaps %xmm0, 336(%rax)4528; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4529; SSE-NEXT:    movaps %xmm0, 288(%rax)4530; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4531; SSE-NEXT:    movaps %xmm0, 240(%rax)4532; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4533; SSE-NEXT:    movaps %xmm0, 224(%rax)4534; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4535; SSE-NEXT:    movaps %xmm0, 176(%rax)4536; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4537; SSE-NEXT:    movaps %xmm0, 128(%rax)4538; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4539; SSE-NEXT:    movaps %xmm0, 112(%rax)4540; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4541; SSE-NEXT:    movaps %xmm0, 64(%rax)4542; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4543; SSE-NEXT:    movaps %xmm0, 16(%rax)4544; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4545; SSE-NEXT:    movaps %xmm0, (%rax)4546; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4547; SSE-NEXT:    movaps %xmm0, 880(%rax)4548; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4549; SSE-NEXT:    movaps %xmm0, 816(%rax)4550; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4551; SSE-NEXT:    movaps %xmm0, 768(%rax)4552; SSE-NEXT:    movaps %xmm14, 752(%rax)4553; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4554; SSE-NEXT:    movaps %xmm0, 720(%rax)4555; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4556; SSE-NEXT:    movaps %xmm0, 704(%rax)4557; SSE-NEXT:    movaps %xmm1, 656(%rax)4558; SSE-NEXT:    movaps %xmm2, 640(%rax)4559; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4560; SSE-NEXT:    movaps %xmm0, 608(%rax)4561; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4562; SSE-NEXT:    movaps %xmm0, 592(%rax)4563; SSE-NEXT:    movaps %xmm3, 544(%rax)4564; SSE-NEXT:    movaps %xmm12, 528(%rax)4565; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4566; SSE-NEXT:    movaps %xmm0, 496(%rax)4567; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4568; SSE-NEXT:    movaps %xmm0, 480(%rax)4569; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4570; SSE-NEXT:    movaps %xmm0, 432(%rax)4571; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4572; SSE-NEXT:    movaps %xmm0, 416(%rax)4573; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4574; SSE-NEXT:    movaps %xmm0, 384(%rax)4575; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4576; SSE-NEXT:    movaps %xmm0, 368(%rax)4577; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4578; SSE-NEXT:    movaps %xmm0, 320(%rax)4579; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4580; SSE-NEXT:    movaps %xmm0, 304(%rax)4581; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4582; SSE-NEXT:    movaps %xmm0, 272(%rax)4583; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4584; SSE-NEXT:    movaps %xmm0, 256(%rax)4585; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4586; SSE-NEXT:    movaps %xmm0, 208(%rax)4587; SSE-NEXT:    movaps %xmm4, 192(%rax)4588; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4589; SSE-NEXT:    movaps %xmm0, 160(%rax)4590; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4591; SSE-NEXT:    movaps %xmm0, 144(%rax)4592; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4593; SSE-NEXT:    movaps %xmm0, 96(%rax)4594; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4595; SSE-NEXT:    movaps %xmm0, 80(%rax)4596; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4597; SSE-NEXT:    movaps %xmm0, 48(%rax)4598; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4599; SSE-NEXT:    movaps %xmm0, 32(%rax)4600; SSE-NEXT:    addq $1256, %rsp # imm = 0x4E84601; SSE-NEXT:    retq4602;4603; AVX-LABEL: store_i32_stride7_vf32:4604; AVX:       # %bb.0:4605; AVX-NEXT:    subq $1624, %rsp # imm = 0x6584606; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %rax4607; AVX-NEXT:    vmovaps 96(%rdi), %ymm44608; AVX-NEXT:    vmovups %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4609; AVX-NEXT:    vmovaps 96(%rsi), %ymm34610; AVX-NEXT:    vmovups %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4611; AVX-NEXT:    vmovaps 96(%rdx), %ymm04612; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4613; AVX-NEXT:    vmovaps 96(%rcx), %ymm14614; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4615; AVX-NEXT:    vmovaps 96(%rax), %ymm24616; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4617; AVX-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm1[2],ymm0[3],ymm1[3],ymm0[6],ymm1[6],ymm0[7],ymm1[7]4618; AVX-NEXT:    vunpckhpd {{.*#+}} ymm1 = ymm3[1],ymm4[1],ymm3[3],ymm4[3]4619; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm4[0,1],ymm1[2,0],ymm4[4,5],ymm1[6,4]4620; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm1[2,3],ymm0[2,3]4621; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],mem[6,7]4622; AVX-NEXT:    vbroadcastf128 {{.*#+}} ymm1 = mem[0,1,0,1]4623; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]4624; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4,5,6],ymm1[7]4625; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm2[2,3],ymm0[2,3]4626; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm1[1],ymm0[2,3,4],ymm1[5],ymm0[6,7]4627; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4628; AVX-NEXT:    vmovaps (%rax), %xmm04629; AVX-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4630; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm04631; AVX-NEXT:    vmovaps (%r9), %xmm34632; AVX-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4633; AVX-NEXT:    vmovaps (%r8), %xmm44634; AVX-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4635; AVX-NEXT:    vmovaps (%rdi), %xmm64636; AVX-NEXT:    vmovaps (%rsi), %xmm54637; AVX-NEXT:    vmovlhps {{.*#+}} xmm1 = xmm5[0],xmm6[0]4638; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[2,0],xmm6[2,1]4639; AVX-NEXT:    vmovaps %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4640; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm1, %ymm14641; AVX-NEXT:    vmovaps (%rcx), %xmm84642; AVX-NEXT:    vmovaps (%rdx), %xmm94643; AVX-NEXT:    vunpcklps {{.*#+}} xmm2 = xmm9[0],xmm8[0],xmm9[1],xmm8[1]4644; AVX-NEXT:    vmovaps %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4645; AVX-NEXT:    vmovaps %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4646; AVX-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[0,1,0,1]4647; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]4648; AVX-NEXT:    vunpcklps {{.*#+}} xmm2 = xmm4[0],xmm3[0],xmm4[1],xmm3[1]4649; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm0, %ymm24650; AVX-NEXT:    vunpcklpd {{.*#+}} ymm2 = ymm2[0],ymm0[0],ymm2[2],ymm0[2]4651; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6],ymm1[7]4652; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4653; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm3[1,1],xmm4[1,1]4654; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm1, %ymm14655; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5],ymm1[6,7]4656; AVX-NEXT:    vmovaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4657; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm6[1],xmm5[1]4658; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm5[1,1],xmm1[0,2]4659; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm1, %ymm14660; AVX-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm9[1],xmm8[1],zero4661; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]4662; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]4663; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4664; AVX-NEXT:    vmovaps (%rdi), %ymm14665; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4666; AVX-NEXT:    vmovaps (%rsi), %ymm04667; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4668; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[1,1],ymm1[1,1],ymm0[5,5],ymm1[5,5]4669; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]4670; AVX-NEXT:    vmovaps (%rdx), %ymm24671; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4672; AVX-NEXT:    vmovaps (%rcx), %ymm14673; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4674; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[1,1],ymm1[1,1],ymm2[5,5],ymm1[5,5]4675; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]4676; AVX-NEXT:    vmovaps (%r8), %ymm24677; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4678; AVX-NEXT:    vmovaps (%r9), %ymm84679; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm8[0],ymm2[0],ymm8[2],ymm2[2]4680; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[2,0],ymm2[2,1],ymm1[6,4],ymm2[6,5]4681; AVX-NEXT:    vmovaps (%rax), %ymm24682; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4683; AVX-NEXT:    vperm2f128 {{.*#+}} ymm2 = ymm2[2,3],ymm1[2,3]4684; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm14685; AVX-NEXT:    vshufpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[3]4686; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]4687; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4688; AVX-NEXT:    vmovaps 32(%rdi), %xmm54689; AVX-NEXT:    vmovaps 32(%rsi), %xmm74690; AVX-NEXT:    vmovlhps {{.*#+}} xmm0 = xmm7[0],xmm5[0]4691; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[2,0],xmm5[2,1]4692; AVX-NEXT:    vmovaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4693; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm04694; AVX-NEXT:    vmovaps 32(%rcx), %xmm64695; AVX-NEXT:    vmovaps 32(%rdx), %xmm94696; AVX-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm9[0],xmm6[0],xmm9[1],xmm6[1]4697; AVX-NEXT:    vmovaps %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4698; AVX-NEXT:    vmovaps %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4699; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,0,1]4700; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3],ymm0[4,5,6,7]4701; AVX-NEXT:    vmovaps 32(%r9), %xmm34702; AVX-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4703; AVX-NEXT:    vmovaps 32(%r8), %xmm44704; AVX-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4705; AVX-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm4[0],xmm3[0],xmm4[1],xmm3[1]4706; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm14707; AVX-NEXT:    vmovaps 32(%rax), %xmm24708; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4709; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm0, %ymm24710; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[2]4711; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6],ymm0[7]4712; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4713; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm3[1,1],xmm4[1,1]4714; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm04715; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm2[5],ymm0[6,7]4716; AVX-NEXT:    vmovaps %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4717; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm5[1],xmm7[1]4718; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm7[1,1],xmm1[0,2]4719; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm1, %ymm14720; AVX-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm9[1],xmm6[1],zero4721; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]4722; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]4723; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4724; AVX-NEXT:    vmovaps 32(%rdi), %ymm04725; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4726; AVX-NEXT:    vmovaps 32(%rsi), %ymm14727; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4728; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm1[1,1],ymm0[1,1],ymm1[5,5],ymm0[5,5]4729; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]4730; AVX-NEXT:    vmovaps 32(%rdx), %ymm24731; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4732; AVX-NEXT:    vmovaps 32(%rcx), %ymm14733; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4734; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[1,1],ymm1[1,1],ymm2[5,5],ymm1[5,5]4735; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]4736; AVX-NEXT:    vmovaps 32(%r8), %ymm24737; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4738; AVX-NEXT:    vmovaps 32(%r9), %ymm14739; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4740; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[2]4741; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[2,0],ymm2[2,1],ymm1[6,4],ymm2[6,5]4742; AVX-NEXT:    vmovaps 32(%rax), %ymm24743; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4744; AVX-NEXT:    vperm2f128 {{.*#+}} ymm2 = ymm2[2,3],ymm1[2,3]4745; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm14746; AVX-NEXT:    vshufpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[3]4747; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]4748; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4749; AVX-NEXT:    vmovaps 64(%rdi), %xmm64750; AVX-NEXT:    vmovaps 64(%rsi), %xmm74751; AVX-NEXT:    vmovlhps {{.*#+}} xmm0 = xmm7[0],xmm6[0]4752; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[2,0],xmm6[2,1]4753; AVX-NEXT:    vmovaps %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4754; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm04755; AVX-NEXT:    vmovaps 64(%rcx), %xmm94756; AVX-NEXT:    vmovaps 64(%rdx), %xmm104757; AVX-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm10[0],xmm9[0],xmm10[1],xmm9[1]4758; AVX-NEXT:    vmovaps %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4759; AVX-NEXT:    vmovaps %xmm10, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4760; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,0,1]4761; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3],ymm0[4,5,6,7]4762; AVX-NEXT:    vmovaps 64(%r9), %xmm44763; AVX-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4764; AVX-NEXT:    vmovaps 64(%r8), %xmm54765; AVX-NEXT:    vmovaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4766; AVX-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm5[0],xmm4[0],xmm5[1],xmm4[1]4767; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm14768; AVX-NEXT:    vmovaps 64(%rax), %xmm24769; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4770; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm0, %ymm24771; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[2]4772; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6],ymm0[7]4773; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4774; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm4[1,1],xmm5[1,1]4775; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm04776; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm2[5],ymm0[6,7]4777; AVX-NEXT:    vmovaps %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4778; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm6[1],xmm7[1]4779; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm7[1,1],xmm1[0,2]4780; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm1, %ymm14781; AVX-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm10[1],xmm9[1],zero4782; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]4783; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]4784; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4785; AVX-NEXT:    vmovaps 64(%rdi), %ymm144786; AVX-NEXT:    vmovaps 64(%rsi), %ymm04787; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4788; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[1,1],ymm14[1,1],ymm0[5,5],ymm14[5,5]4789; AVX-NEXT:    vmovups %ymm14, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4790; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]4791; AVX-NEXT:    vmovaps 64(%rdx), %ymm134792; AVX-NEXT:    vmovaps 64(%rcx), %ymm94793; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm13[1,1],ymm9[1,1],ymm13[5,5],ymm9[5,5]4794; AVX-NEXT:    vmovups %ymm9, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4795; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]4796; AVX-NEXT:    vmovaps 64(%r8), %ymm74797; AVX-NEXT:    vmovaps 64(%r9), %ymm104798; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm10[0],ymm7[0],ymm10[2],ymm7[2]4799; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[2,0],ymm7[2,1],ymm1[6,4],ymm7[6,5]4800; AVX-NEXT:    vmovups %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4801; AVX-NEXT:    vmovaps 64(%rax), %ymm24802; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4803; AVX-NEXT:    vperm2f128 {{.*#+}} ymm2 = ymm2[2,3],ymm1[2,3]4804; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm14805; AVX-NEXT:    vshufpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[3]4806; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]4807; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4808; AVX-NEXT:    vmovaps 96(%rdi), %xmm64809; AVX-NEXT:    vmovaps 96(%rsi), %xmm24810; AVX-NEXT:    vmovlhps {{.*#+}} xmm0 = xmm2[0],xmm6[0]4811; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[2,0],xmm6[2,1]4812; AVX-NEXT:    vmovaps %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4813; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm114814; AVX-NEXT:    vmovaps 96(%rcx), %xmm44815; AVX-NEXT:    vmovaps 96(%rdx), %xmm34816; AVX-NEXT:    vunpcklps {{.*#+}} xmm12 = xmm3[0],xmm4[0],xmm3[1],xmm4[1]4817; AVX-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4818; AVX-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4819; AVX-NEXT:    vshufps {{.*#+}} xmm12 = xmm12[0,1,0,1]4820; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm11[0,1],ymm12[2,3],ymm11[4,5,6,7]4821; AVX-NEXT:    vmovaps 96(%r9), %xmm54822; AVX-NEXT:    vmovaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4823; AVX-NEXT:    vmovaps 96(%r8), %xmm114824; AVX-NEXT:    vmovaps %xmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4825; AVX-NEXT:    vunpcklps {{.*#+}} xmm15 = xmm11[0],xmm5[0],xmm11[1],xmm5[1]4826; AVX-NEXT:    vinsertf128 $1, %xmm15, %ymm0, %ymm154827; AVX-NEXT:    vinsertf128 $1, 96(%rax), %ymm0, %ymm04828; AVX-NEXT:    vunpcklpd {{.*#+}} ymm15 = ymm15[0],ymm0[0],ymm15[2],ymm0[2]4829; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm15[4,5,6],ymm1[7]4830; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4831; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm5[1,1],xmm11[1,1]4832; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm1, %ymm14833; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5],ymm1[6,7]4834; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill4835; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm6[1],xmm2[1]4836; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm2[1,1],xmm1[0,2]4837; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm1, %ymm14838; AVX-NEXT:    vinsertps {{.*#+}} xmm15 = zero,xmm3[1],xmm4[1],zero4839; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm15[1,2],ymm1[3,4,5,6,7]4840; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]4841; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4842; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload4843; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload4844; AVX-NEXT:    vunpckhpd {{.*#+}} ymm0 = ymm5[1],ymm11[1],ymm5[3],ymm11[3]4845; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[0,1,2,0,4,5,6,4]4846; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload4847; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload4848; AVX-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm12[2],ymm4[2],ymm12[3],ymm4[3],ymm12[6],ymm4[6],ymm12[7],ymm4[7]4849; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3],ymm1[2,3]4850; AVX-NEXT:    vmovups %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4851; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload4852; AVX-NEXT:    vunpckhpd {{.*#+}} ymm1 = ymm1[1],ymm8[1],ymm1[3],ymm8[3]4853; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm8[1,1],ymm1[0,2],ymm8[5,5],ymm1[4,6]4854; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm1[2,3,2,3]4855; AVX-NEXT:    vmovaps 16(%rax), %xmm154856; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm15[1],ymm1[2,3,4,5,6,7]4857; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]4858; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4859; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload4860; AVX-NEXT:    vunpckhpd {{[-0-9]+}}(%r{{[sb]}}p), %ymm6, %ymm0 # 32-byte Folded Reload4861; AVX-NEXT:    # ymm0 = ymm6[1],mem[1],ymm6[3],mem[3]4862; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[0,1,2,0,4,5,6,4]4863; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload4864; AVX-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload4865; AVX-NEXT:    # ymm1 = ymm1[2],mem[2],ymm1[3],mem[3],ymm1[6],mem[6],ymm1[7],mem[7]4866; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3],ymm1[2,3]4867; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload4868; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload4869; AVX-NEXT:    vunpckhpd {{.*#+}} ymm1 = ymm1[1],ymm2[1],ymm1[3],ymm2[3]4870; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[1,1],ymm1[0,2],ymm2[5,5],ymm1[4,6]4871; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm1[2,3,2,3]4872; AVX-NEXT:    vmovaps 48(%rax), %xmm154873; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm15[1],ymm1[2,3,4,5,6,7]4874; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]4875; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4876; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload4877; AVX-NEXT:    vunpckhpd {{.*#+}} ymm0 = ymm0[1],ymm14[1],ymm0[3],ymm14[3]4878; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[0,1,2,0,4,5,6,4]4879; AVX-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm13[2],ymm9[2],ymm13[3],ymm9[3],ymm13[6],ymm9[6],ymm13[7],ymm9[7]4880; AVX-NEXT:    vmovaps %ymm13, %ymm144881; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3],ymm1[2,3]4882; AVX-NEXT:    vmovups %ymm10, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4883; AVX-NEXT:    vunpckhpd {{.*#+}} ymm1 = ymm7[1],ymm10[1],ymm7[3],ymm10[3]4884; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm10[1,1],ymm1[0,2],ymm10[5,5],ymm1[4,6]4885; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm1[2,3,2,3]4886; AVX-NEXT:    vmovaps 80(%rax), %xmm154887; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm15[1],ymm1[2,3,4,5,6,7]4888; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]4889; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4890; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload4891; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload4892; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm3[3,3],ymm2[3,3],ymm3[7,7],ymm2[7,7]4893; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]4894; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm15 # 32-byte Reload4895; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Reload4896; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm8[3,3],ymm15[3,3],ymm8[7,7],ymm15[7,7]4897; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm14898; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]4899; AVX-NEXT:    vbroadcastss 124(%r8), %ymm14900; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]4901; AVX-NEXT:    vbroadcastss 124(%r9), %ymm14902; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm1[6,7]4903; AVX-NEXT:    vbroadcastsd 120(%rax), %ymm14904; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4,5,6],ymm1[7]4905; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4906; AVX-NEXT:    vmovaps %ymm3, %ymm14907; AVX-NEXT:    vunpcklpd {{.*#+}} ymm0 = ymm2[0],ymm3[0],ymm2[2],ymm3[2]4908; AVX-NEXT:    vmovaps %ymm2, %ymm34909; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm1[3,1],ymm0[0,2],ymm1[7,5],ymm0[4,6]4910; AVX-NEXT:    vmovaps %ymm1, %ymm24911; AVX-NEXT:    vunpcklps {{.*#+}} ymm1 = ymm8[0],ymm15[0],ymm8[1],ymm15[1],ymm8[4],ymm15[4],ymm8[5],ymm15[5]4912; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5],ymm0[6,7]4913; AVX-NEXT:    vbroadcastss 108(%r8), %ymm14914; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm1[1],ymm0[2,3,4,5,6,7]4915; AVX-NEXT:    vbroadcastss 108(%r9), %xmm14916; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3],ymm0[4,5,6,7]4917; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload4918; AVX-NEXT:    # ymm0 = ymm0[0,1,2],mem[3],ymm0[4,5,6,7]4919; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4920; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm3[1,1],ymm2[1,1],ymm3[5,5],ymm2[5,5]4921; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm15[1,1],ymm8[1,1],ymm15[5,5],ymm8[5,5]4922; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm1[2,3,2,3]4923; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]4924; AVX-NEXT:    vbroadcastsd 112(%r8), %ymm14925; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4,5,6],ymm1[7]4926; AVX-NEXT:    vbroadcastss 112(%r9), %xmm14927; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm1[1],ymm0[2,3,4,5,6,7]4928; AVX-NEXT:    vbroadcastss 112(%rax), %ymm14929; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2],ymm0[3,4,5,6,7]4930; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4931; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4932; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload4933; AVX-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]4934; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload4935; AVX-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2, %xmm1 # 16-byte Folded Reload4936; AVX-NEXT:    # xmm1 = xmm2[2],mem[2],xmm2[3],mem[3]4937; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm1, %ymm14938; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm04939; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]4940; AVX-NEXT:    vpermilps $170, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload4941; AVX-NEXT:    # xmm1 = mem[2,2,2,2]4942; AVX-NEXT:    vblendps $7, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload4943; AVX-NEXT:    # xmm1 = mem[0,1,2],xmm1[3]4944; AVX-NEXT:    vbroadcastsd 8(%rax), %ymm154945; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm15[4,5,6,7]4946; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3,4],ymm0[5,6,7]4947; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4948; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm4[3,3],ymm12[3,3],ymm4[7,7],ymm12[7,7]4949; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]4950; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm11[3,3],ymm5[3,3],ymm11[7,7],ymm5[7,7]4951; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm14952; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]4953; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload4954; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload4955; AVX-NEXT:    # ymm1 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]4956; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload4957; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[2,3],ymm1[1,2],ymm2[6,7],ymm1[5,6]4958; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm1[2,3,2,3]4959; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[0,2,3,1,4,6,7,5]4960; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]4961; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4962; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4963; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload4964; AVX-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]4965; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload4966; AVX-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2, %xmm1 # 16-byte Folded Reload4967; AVX-NEXT:    # xmm1 = xmm2[2],mem[2],xmm2[3],mem[3]4968; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm1, %ymm14969; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm04970; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]4971; AVX-NEXT:    vpermilps $170, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload4972; AVX-NEXT:    # xmm1 = mem[2,2,2,2]4973; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Reload4974; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm13[0,1,2],xmm1[3]4975; AVX-NEXT:    vbroadcastsd 40(%rax), %ymm154976; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm15[4,5,6,7]4977; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3,4],ymm0[5,6,7]4978; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4979; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload4980; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload4981; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm11[3,3],ymm12[3,3],ymm11[7,7],ymm12[7,7]4982; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]4983; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload4984; AVX-NEXT:    vmovaps %ymm6, %ymm34985; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm10[3,3],ymm6[3,3],ymm10[7,7],ymm6[7,7]4986; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm14987; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]4988; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload4989; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload4990; AVX-NEXT:    # ymm1 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]4991; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload4992; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[2,3],ymm1[1,2],ymm2[6,7],ymm1[5,6]4993; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm1[2,3,2,3]4994; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[0,2,3,1,4,6,7,5]4995; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]4996; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill4997; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload4998; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload4999; AVX-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]5000; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload5001; AVX-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2, %xmm1 # 16-byte Folded Reload5002; AVX-NEXT:    # xmm1 = xmm2[2],mem[2],xmm2[3],mem[3]5003; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm1, %ymm15004; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm05005; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]5006; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload5007; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm9[2,2,2,2]5008; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload5009; AVX-NEXT:    vblendps {{.*#+}} xmm1 = xmm8[0,1,2],xmm1[3]5010; AVX-NEXT:    vbroadcastsd 72(%rax), %ymm65011; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm6[4,5,6,7]5012; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3,4],ymm0[5,6,7]5013; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5014; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5015; AVX-NEXT:    vmovaps %ymm14, %ymm75016; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm6[3,3],ymm14[3,3],ymm6[7,7],ymm14[7,7]5017; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]5018; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload5019; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload5020; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm4[3,3],ymm14[3,3],ymm4[7,7],ymm14[7,7]5021; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm15022; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]5023; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5024; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload5025; AVX-NEXT:    # ymm1 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]5026; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload5027; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[2,3],ymm1[1,2],ymm2[6,7],ymm1[5,6]5028; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm1[2,3,2,3]5029; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[0,2,3,1,4,6,7,5]5030; AVX-NEXT:    vblendps {{.*#+}} ymm15 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]5031; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload5032; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload5033; AVX-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]5034; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload5035; AVX-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2, %xmm1 # 16-byte Folded Reload5036; AVX-NEXT:    # xmm1 = xmm2[2],mem[2],xmm2[3],mem[3]5037; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm1, %ymm15038; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm05039; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]5040; AVX-NEXT:    vpermilps $170, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload5041; AVX-NEXT:    # xmm1 = mem[2,2,2,2]5042; AVX-NEXT:    vblendps $7, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload5043; AVX-NEXT:    # xmm1 = mem[0,1,2],xmm1[3]5044; AVX-NEXT:    vbroadcastsd 104(%rax), %ymm25045; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]5046; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3,4],ymm0[5,6,7]5047; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5048; AVX-NEXT:    vunpcklps {{.*#+}} ymm1 = ymm1[0],ymm5[0],ymm1[1],ymm5[1],ymm1[4],ymm5[4],ymm1[5],ymm5[5]5049; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload5050; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload5051; AVX-NEXT:    vunpcklpd {{.*#+}} ymm2 = ymm2[0],ymm5[0],ymm2[2],ymm5[2]5052; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm5[3,1],ymm2[0,2],ymm5[7,5],ymm2[4,6]5053; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0,1,2,3],ymm1[4,5],ymm2[6,7]5054; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload5055; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm2, %xmm2 # 16-byte Folded Reload5056; AVX-NEXT:    # xmm2 = xmm2[3,3],mem[3,3]5057; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm2, %xmm2 # 16-byte Folded Reload5058; AVX-NEXT:    # xmm2 = xmm2[0,1,2],mem[3]5059; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2,3],ymm1[4,5,6,7]5060; AVX-NEXT:    vunpcklps {{.*#+}} ymm2 = ymm10[0],ymm3[0],ymm10[1],ymm3[1],ymm10[4],ymm3[4],ymm10[5],ymm3[5]5061; AVX-NEXT:    vunpcklpd {{.*#+}} ymm3 = ymm12[0],ymm11[0],ymm12[2],ymm11[2]5062; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm11[3,1],ymm3[0,2],ymm11[7,5],ymm3[4,6]5063; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm3[0,1,2,3],ymm2[4,5],ymm3[6,7]5064; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm13, %xmm3 # 16-byte Folded Reload5065; AVX-NEXT:    # xmm3 = xmm13[3,3],mem[3,3]5066; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload5067; AVX-NEXT:    # xmm3 = xmm3[0,1,2],mem[3]5068; AVX-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm3[1,2,3],ymm2[4,5,6,7]5069; AVX-NEXT:    vunpcklps {{.*#+}} ymm3 = ymm4[0],ymm14[0],ymm4[1],ymm14[1],ymm4[4],ymm14[4],ymm4[5],ymm14[5]5070; AVX-NEXT:    vunpcklpd {{.*#+}} ymm5 = ymm7[0],ymm6[0],ymm7[2],ymm6[2]5071; AVX-NEXT:    vshufps {{.*#+}} ymm5 = ymm6[3,1],ymm5[0,2],ymm6[7,5],ymm5[4,6]5072; AVX-NEXT:    vblendps {{.*#+}} ymm3 = ymm5[0,1,2,3],ymm3[4,5],ymm5[6,7]5073; AVX-NEXT:    vshufps {{.*#+}} xmm5 = xmm8[3,3],xmm9[3,3]5074; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm5, %xmm5 # 16-byte Folded Reload5075; AVX-NEXT:    # xmm5 = xmm5[0,1,2],mem[3]5076; AVX-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0],ymm5[1,2,3],ymm3[4,5,6,7]5077; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %rax5078; AVX-NEXT:    vmovaps %ymm3, 544(%rax)5079; AVX-NEXT:    vmovaps %ymm2, 320(%rax)5080; AVX-NEXT:    vmovaps %ymm1, 96(%rax)5081; AVX-NEXT:    vmovaps %ymm0, 736(%rax)5082; AVX-NEXT:    vmovaps %ymm15, 640(%rax)5083; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5084; AVX-NEXT:    vmovaps %ymm0, 608(%rax)5085; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5086; AVX-NEXT:    vmovaps %ymm0, 512(%rax)5087; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5088; AVX-NEXT:    vmovaps %ymm0, 416(%rax)5089; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5090; AVX-NEXT:    vmovaps %ymm0, 384(%rax)5091; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5092; AVX-NEXT:    vmovaps %ymm0, 288(%rax)5093; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5094; AVX-NEXT:    vmovaps %ymm0, 192(%rax)5095; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5096; AVX-NEXT:    vmovaps %ymm0, 160(%rax)5097; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5098; AVX-NEXT:    vmovaps %ymm0, 64(%rax)5099; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5100; AVX-NEXT:    vmovaps %ymm0, 800(%rax)5101; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5102; AVX-NEXT:    vmovaps %ymm0, 768(%rax)5103; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5104; AVX-NEXT:    vmovaps %ymm0, 704(%rax)5105; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5106; AVX-NEXT:    vmovaps %ymm0, 672(%rax)5107; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5108; AVX-NEXT:    vmovaps %ymm0, 576(%rax)5109; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5110; AVX-NEXT:    vmovaps %ymm0, 480(%rax)5111; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5112; AVX-NEXT:    vmovaps %ymm0, 448(%rax)5113; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5114; AVX-NEXT:    vmovaps %ymm0, 352(%rax)5115; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5116; AVX-NEXT:    vmovaps %ymm0, 256(%rax)5117; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5118; AVX-NEXT:    vmovaps %ymm0, 224(%rax)5119; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5120; AVX-NEXT:    vmovaps %ymm0, 128(%rax)5121; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5122; AVX-NEXT:    vmovaps %ymm0, 32(%rax)5123; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5124; AVX-NEXT:    vmovaps %ymm0, (%rax)5125; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5126; AVX-NEXT:    vmovaps %ymm0, 864(%rax)5127; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5128; AVX-NEXT:    vmovaps %ymm0, 832(%rax)5129; AVX-NEXT:    addq $1624, %rsp # imm = 0x6585130; AVX-NEXT:    vzeroupper5131; AVX-NEXT:    retq5132;5133; AVX2-LABEL: store_i32_stride7_vf32:5134; AVX2:       # %bb.0:5135; AVX2-NEXT:    subq $1320, %rsp # imm = 0x5285136; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %rax5137; AVX2-NEXT:    vmovaps (%rax), %xmm05138; AVX2-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5139; AVX2-NEXT:    vmovaps 32(%rax), %xmm35140; AVX2-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5141; AVX2-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm05142; AVX2-NEXT:    vmovaps (%r8), %xmm145143; AVX2-NEXT:    vmovaps 32(%r8), %xmm75144; AVX2-NEXT:    vmovaps %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5145; AVX2-NEXT:    vmovaps (%r9), %xmm105146; AVX2-NEXT:    vmovaps 32(%r9), %xmm95147; AVX2-NEXT:    vmovaps %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5148; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm10[1,1,1,1]5149; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0],xmm14[1],xmm1[2,3]5150; AVX2-NEXT:    vbroadcastsd %xmm1, %ymm15151; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5],ymm1[6,7]5152; AVX2-NEXT:    vmovaps (%rcx), %xmm125153; AVX2-NEXT:    vmovaps 32(%rcx), %xmm45154; AVX2-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5155; AVX2-NEXT:    vmovaps (%rdx), %xmm85156; AVX2-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm8[1],xmm12[1],zero5157; AVX2-NEXT:    vmovaps (%rdi), %xmm65158; AVX2-NEXT:    vmovaps 32(%rdi), %xmm115159; AVX2-NEXT:    vmovaps %xmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5160; AVX2-NEXT:    vmovaps (%rsi), %xmm55161; AVX2-NEXT:    vmovaps 32(%rsi), %xmm135162; AVX2-NEXT:    vmovaps %xmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5163; AVX2-NEXT:    vshufps {{.*#+}} xmm2 = xmm5[1,1,2,2]5164; AVX2-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0,1],xmm6[2],xmm2[3]5165; AVX2-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[0,1,2,1]5166; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1,2],ymm2[3,4,5,6,7]5167; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]5168; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5169; AVX2-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm05170; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm9[1,1,1,1]5171; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0],xmm7[1],xmm1[2,3]5172; AVX2-NEXT:    vbroadcastsd %xmm1, %ymm15173; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5],ymm1[6,7]5174; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm13[1,1,2,2]5175; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm11[2],xmm1[3]5176; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]5177; AVX2-NEXT:    vmovaps 32(%rdx), %xmm95178; AVX2-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm9[1],xmm4[1],zero5179; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]5180; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]5181; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5182; AVX2-NEXT:    vmovaps 64(%r8), %xmm15183; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5184; AVX2-NEXT:    vmovaps 64(%r9), %xmm05185; AVX2-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5186; AVX2-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[1,1,1,1]5187; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3]5188; AVX2-NEXT:    vbroadcastsd %xmm0, %ymm05189; AVX2-NEXT:    vmovaps 64(%rax), %xmm15190; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5191; AVX2-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm15192; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]5193; AVX2-NEXT:    vmovaps 64(%rdi), %xmm25194; AVX2-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5195; AVX2-NEXT:    vmovaps 64(%rsi), %xmm15196; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5197; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,2,2]5198; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm2[2],xmm1[3]5199; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]5200; AVX2-NEXT:    vmovaps 64(%rcx), %xmm25201; AVX2-NEXT:    vmovaps %xmm2, (%rsp) # 16-byte Spill5202; AVX2-NEXT:    vmovaps 64(%rdx), %xmm135203; AVX2-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm13[1],xmm2[1],zero5204; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]5205; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]5206; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5207; AVX2-NEXT:    vmovaps 96(%r8), %xmm15208; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5209; AVX2-NEXT:    vmovaps 96(%r9), %xmm75210; AVX2-NEXT:    vshufps {{.*#+}} xmm0 = xmm7[1,1,1,1]5211; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3]5212; AVX2-NEXT:    vbroadcastsd %xmm0, %ymm05213; AVX2-NEXT:    vmovaps 96(%rax), %xmm15214; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5215; AVX2-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm15216; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]5217; AVX2-NEXT:    vmovaps 96(%rdi), %xmm25218; AVX2-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5219; AVX2-NEXT:    vmovaps 96(%rsi), %xmm15220; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5221; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,2,2]5222; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm2[2],xmm1[3]5223; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]5224; AVX2-NEXT:    vmovaps 96(%rcx), %xmm35225; AVX2-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5226; AVX2-NEXT:    vmovaps 96(%rdx), %xmm25227; AVX2-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5228; AVX2-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm2[1],xmm3[1],zero5229; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]5230; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]5231; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5232; AVX2-NEXT:    vmovaps (%rdi), %ymm05233; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5234; AVX2-NEXT:    vmovaps (%rsi), %ymm15235; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5236; AVX2-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm1[2],ymm0[3],ymm1[3],ymm0[6],ymm1[6],ymm0[7],ymm1[7]5237; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]5238; AVX2-NEXT:    vmovaps (%rdx), %ymm25239; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5240; AVX2-NEXT:    vmovaps (%rcx), %ymm15241; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5242; AVX2-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm2[2],ymm1[2],ymm2[3],ymm1[3],ymm2[6],ymm1[6],ymm2[7],ymm1[7]5243; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]5244; AVX2-NEXT:    vmovaps (%r8), %ymm25245; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5246; AVX2-NEXT:    vmovaps (%r9), %ymm15247; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5248; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]5249; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]5250; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]5251; AVX2-NEXT:    vmovaps 16(%rax), %xmm25252; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]5253; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]5254; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5255; AVX2-NEXT:    vmovaps 32(%rdi), %ymm05256; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5257; AVX2-NEXT:    vmovaps 32(%rsi), %ymm15258; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5259; AVX2-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm1[2],ymm0[3],ymm1[3],ymm0[6],ymm1[6],ymm0[7],ymm1[7]5260; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]5261; AVX2-NEXT:    vmovaps 32(%rdx), %ymm15262; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5263; AVX2-NEXT:    vmovaps 32(%rcx), %ymm25264; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5265; AVX2-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]5266; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]5267; AVX2-NEXT:    vmovaps 32(%r8), %ymm25268; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5269; AVX2-NEXT:    vmovaps 32(%r9), %ymm15270; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5271; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]5272; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]5273; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]5274; AVX2-NEXT:    vmovaps 48(%rax), %xmm25275; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]5276; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]5277; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5278; AVX2-NEXT:    vmovaps 64(%rdi), %ymm15279; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5280; AVX2-NEXT:    vmovaps 64(%rsi), %ymm05281; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5282; AVX2-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[6],ymm0[6],ymm1[7],ymm0[7]5283; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]5284; AVX2-NEXT:    vmovaps 64(%rdx), %ymm15285; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5286; AVX2-NEXT:    vmovaps 64(%rcx), %ymm25287; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5288; AVX2-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]5289; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]5290; AVX2-NEXT:    vmovaps 64(%r8), %ymm25291; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5292; AVX2-NEXT:    vmovaps 64(%r9), %ymm15293; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5294; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]5295; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]5296; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]5297; AVX2-NEXT:    vmovaps 80(%rax), %xmm25298; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]5299; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]5300; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5301; AVX2-NEXT:    vmovaps 96(%rdi), %ymm35302; AVX2-NEXT:    vmovaps 96(%rsi), %ymm25303; AVX2-NEXT:    vshufps {{.*#+}} ymm0 = ymm2[1,1,1,1,5,5,5,5]5304; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm3[1],ymm0[2,3,4],ymm3[5],ymm0[6,7]5305; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]5306; AVX2-NEXT:    vmovaps 96(%rdx), %ymm45307; AVX2-NEXT:    vmovaps 96(%rcx), %ymm15308; AVX2-NEXT:    vshufps {{.*#+}} ymm15 = ymm4[1,1],ymm1[1,1],ymm4[5,5],ymm1[5,5]5309; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm15[5,6],ymm0[7]5310; AVX2-NEXT:    vbroadcastsd 112(%r8), %ymm155311; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm15[0],ymm0[1,2,3,4,5,6],ymm15[7]5312; AVX2-NEXT:    vbroadcastss 112(%r9), %xmm155313; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm15[1],ymm0[2,3,4,5,6,7]5314; AVX2-NEXT:    vbroadcastss 112(%rax), %ymm155315; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm15[2],ymm0[3,4,5,6,7]5316; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5317; AVX2-NEXT:    vbroadcastss %xmm12, %xmm05318; AVX2-NEXT:    vbroadcastss %xmm8, %xmm155319; AVX2-NEXT:    vunpcklps {{.*#+}} xmm0 = xmm15[0],xmm0[0],xmm15[1],xmm0[1]5320; AVX2-NEXT:    vunpcklps {{.*#+}} xmm15 = xmm6[0],xmm5[0],xmm6[1],xmm5[1]5321; AVX2-NEXT:    vshufps {{.*#+}} xmm15 = xmm15[0,1,2,2]5322; AVX2-NEXT:    vpermpd {{.*#+}} ymm15 = ymm15[0,1,2,1]5323; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm15[0,1],ymm0[2,3],ymm15[4,5,6,7]5324; AVX2-NEXT:    vmovaps %xmm10, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5325; AVX2-NEXT:    vmovaps %xmm14, %xmm115326; AVX2-NEXT:    vmovaps %xmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5327; AVX2-NEXT:    vunpcklps {{.*#+}} xmm15 = xmm14[0],xmm10[0],xmm14[1],xmm10[1]5328; AVX2-NEXT:    vinsertf128 $1, %xmm15, %ymm0, %ymm155329; AVX2-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 16-byte Folded Reload5330; AVX2-NEXT:    vunpcklpd {{.*#+}} ymm14 = ymm15[0],ymm14[0],ymm15[2],ymm14[2]5331; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm14[4,5,6],ymm0[7]5332; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5333; AVX2-NEXT:    vshufps {{.*#+}} xmm0 = xmm6[3,3],xmm5[3,3]5334; AVX2-NEXT:    vunpckhps {{.*#+}} xmm5 = xmm8[2],xmm12[2],xmm8[3],xmm12[3]5335; AVX2-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm05336; AVX2-NEXT:    vshufps {{.*#+}} xmm5 = xmm5[0,1,2,2]5337; AVX2-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[0,1,2,1]5338; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0,1,2,3,4],ymm0[5,6],ymm5[7]5339; AVX2-NEXT:    vshufps {{.*#+}} xmm5 = xmm10[2,2,2,2]5340; AVX2-NEXT:    vblendps {{.*#+}} xmm5 = xmm11[0,1,2],xmm5[3]5341; AVX2-NEXT:    vbroadcastsd 8(%rax), %ymm65342; AVX2-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3],ymm6[4,5,6,7]5343; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm5[2,3,4],ymm0[5,6,7]5344; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5345; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload5346; AVX2-NEXT:    vbroadcastss %xmm8, %xmm05347; AVX2-NEXT:    vbroadcastss %xmm9, %xmm55348; AVX2-NEXT:    vunpcklps {{.*#+}} xmm0 = xmm5[0],xmm0[0],xmm5[1],xmm0[1]5349; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload5350; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm11 # 16-byte Reload5351; AVX2-NEXT:    vunpcklps {{.*#+}} xmm5 = xmm10[0],xmm11[0],xmm10[1],xmm11[1]5352; AVX2-NEXT:    vshufps {{.*#+}} xmm5 = xmm5[0,1,2,2]5353; AVX2-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[0,1,2,1]5354; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0,1],ymm0[2,3],ymm5[4,5,6,7]5355; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload5356; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Reload5357; AVX2-NEXT:    vunpcklps {{.*#+}} xmm5 = xmm14[0],xmm12[0],xmm14[1],xmm12[1]5358; AVX2-NEXT:    vinsertf128 $1, %xmm5, %ymm0, %ymm55359; AVX2-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 16-byte Folded Reload5360; AVX2-NEXT:    vunpcklpd {{.*#+}} ymm5 = ymm5[0],ymm6[0],ymm5[2],ymm6[2]5361; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm5[4,5,6],ymm0[7]5362; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5363; AVX2-NEXT:    vshufps {{.*#+}} xmm0 = xmm10[3,3],xmm11[3,3]5364; AVX2-NEXT:    vunpckhps {{.*#+}} xmm5 = xmm9[2],xmm8[2],xmm9[3],xmm8[3]5365; AVX2-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm05366; AVX2-NEXT:    vshufps {{.*#+}} xmm5 = xmm5[0,1,2,2]5367; AVX2-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[0,1,2,1]5368; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0,1,2,3,4],ymm0[5,6],ymm5[7]5369; AVX2-NEXT:    vshufps {{.*#+}} xmm5 = xmm12[2,2,2,2]5370; AVX2-NEXT:    vblendps {{.*#+}} xmm5 = xmm14[0,1,2],xmm5[3]5371; AVX2-NEXT:    vbroadcastsd 40(%rax), %ymm65372; AVX2-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3],ymm6[4,5,6,7]5373; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm5[2,3,4],ymm0[5,6,7]5374; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5375; AVX2-NEXT:    vmovaps (%rsp), %xmm12 # 16-byte Reload5376; AVX2-NEXT:    vbroadcastss %xmm12, %xmm05377; AVX2-NEXT:    vbroadcastss %xmm13, %xmm55378; AVX2-NEXT:    vunpcklps {{.*#+}} xmm0 = xmm5[0],xmm0[0],xmm5[1],xmm0[1]5379; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload5380; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm11 # 16-byte Reload5381; AVX2-NEXT:    vunpcklps {{.*#+}} xmm5 = xmm11[0],xmm10[0],xmm11[1],xmm10[1]5382; AVX2-NEXT:    vshufps {{.*#+}} xmm5 = xmm5[0,1,2,2]5383; AVX2-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[0,1,2,1]5384; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0,1],ymm0[2,3],ymm5[4,5,6,7]5385; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload5386; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload5387; AVX2-NEXT:    vunpcklps {{.*#+}} xmm5 = xmm9[0],xmm8[0],xmm9[1],xmm8[1]5388; AVX2-NEXT:    vinsertf128 $1, %xmm5, %ymm0, %ymm55389; AVX2-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 16-byte Folded Reload5390; AVX2-NEXT:    vunpcklpd {{.*#+}} ymm5 = ymm5[0],ymm6[0],ymm5[2],ymm6[2]5391; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm5[4,5,6],ymm0[7]5392; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5393; AVX2-NEXT:    vshufps {{.*#+}} xmm0 = xmm11[3,3],xmm10[3,3]5394; AVX2-NEXT:    vunpckhps {{.*#+}} xmm5 = xmm13[2],xmm12[2],xmm13[3],xmm12[3]5395; AVX2-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm05396; AVX2-NEXT:    vshufps {{.*#+}} xmm5 = xmm5[0,1,2,2]5397; AVX2-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[0,1,2,1]5398; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0,1,2,3,4],ymm0[5,6],ymm5[7]5399; AVX2-NEXT:    vshufps {{.*#+}} xmm5 = xmm8[2,2,2,2]5400; AVX2-NEXT:    vblendps {{.*#+}} xmm5 = xmm9[0,1,2],xmm5[3]5401; AVX2-NEXT:    vbroadcastsd 72(%rax), %ymm65402; AVX2-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3],ymm6[4,5,6,7]5403; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm5[2,3,4],ymm0[5,6,7]5404; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5405; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Reload5406; AVX2-NEXT:    vbroadcastss %xmm12, %xmm05407; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm11 # 16-byte Reload5408; AVX2-NEXT:    vbroadcastss %xmm11, %xmm55409; AVX2-NEXT:    vunpcklps {{.*#+}} xmm0 = xmm5[0],xmm0[0],xmm5[1],xmm0[1]5410; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload5411; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload5412; AVX2-NEXT:    vunpcklps {{.*#+}} xmm5 = xmm10[0],xmm9[0],xmm10[1],xmm9[1]5413; AVX2-NEXT:    vshufps {{.*#+}} xmm5 = xmm5[0,1,2,2]5414; AVX2-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[0,1,2,1]5415; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0,1],ymm0[2,3],ymm5[4,5,6,7]5416; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload5417; AVX2-NEXT:    vunpcklps {{.*#+}} xmm5 = xmm8[0],xmm7[0],xmm8[1],xmm7[1]5418; AVX2-NEXT:    vinsertf128 $1, %xmm5, %ymm0, %ymm55419; AVX2-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 16-byte Folded Reload5420; AVX2-NEXT:    vunpcklpd {{.*#+}} ymm5 = ymm5[0],ymm6[0],ymm5[2],ymm6[2]5421; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm5[4,5,6],ymm0[7]5422; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5423; AVX2-NEXT:    vshufps {{.*#+}} xmm0 = xmm10[3,3],xmm9[3,3]5424; AVX2-NEXT:    vunpckhps {{.*#+}} xmm5 = xmm11[2],xmm12[2],xmm11[3],xmm12[3]5425; AVX2-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm05426; AVX2-NEXT:    vshufps {{.*#+}} xmm5 = xmm5[0,1,2,2]5427; AVX2-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[0,1,2,1]5428; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0,1,2,3,4],ymm0[5,6],ymm5[7]5429; AVX2-NEXT:    vshufps {{.*#+}} xmm5 = xmm7[2,2,2,2]5430; AVX2-NEXT:    vblendps {{.*#+}} xmm5 = xmm8[0,1,2],xmm5[3]5431; AVX2-NEXT:    vbroadcastsd 104(%rax), %ymm65432; AVX2-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3],ymm6[4,5,6,7]5433; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm5[2,3,4],ymm0[5,6,7]5434; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5435; AVX2-NEXT:    vbroadcastss 112(%rdx), %ymm05436; AVX2-NEXT:    vshufps {{.*#+}} ymm6 = ymm1[3,1,2,0,7,5,6,4]5437; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1,2,3,4,5],ymm0[6],ymm6[7]5438; AVX2-NEXT:    vunpcklps {{.*#+}} ymm6 = ymm3[0],ymm2[0],ymm3[1],ymm2[1],ymm3[4],ymm2[4],ymm3[5],ymm2[5]5439; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm6[4,5],ymm0[6,7]5440; AVX2-NEXT:    vbroadcastss 108(%r8), %ymm65441; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm6[1],ymm0[2,3,4,5,6,7]5442; AVX2-NEXT:    vshufps {{.*#+}} xmm6 = xmm7[2,2,3,3]5443; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm6[2,3],ymm0[4,5,6,7]5444; AVX2-NEXT:    vunpckhps {{.*#+}} ymm6 = ymm3[2],ymm2[2],ymm3[3],ymm2[3],ymm3[6],ymm2[6],ymm3[7],ymm2[7]5445; AVX2-NEXT:    vpermpd {{.*#+}} ymm6 = ymm6[2,2,2,2]5446; AVX2-NEXT:    vunpckhps {{.*#+}} ymm7 = ymm4[2],ymm1[2],ymm4[3],ymm1[3],ymm4[6],ymm1[6],ymm4[7],ymm1[7]5447; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3],ymm7[4,5,6,7]5448; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3,4,5],mem[6,7]5449; AVX2-NEXT:    vpermilps {{.*#+}} ymm8 = mem[1,2,2,3,5,6,6,7]5450; AVX2-NEXT:    vpermpd {{.*#+}} ymm8 = ymm8[2,2,2,2]5451; AVX2-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0],ymm6[1,2,3,4,5,6],ymm8[7]5452; AVX2-NEXT:    vmovaps 96(%rax), %ymm95453; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm9[3],ymm0[4,5,6,7]5454; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5455; AVX2-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm9[2,3],ymm7[2,3]5456; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm8[0],ymm0[1],ymm8[2,3,4],ymm0[5],ymm8[6,7]5457; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5458; AVX2-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm1[2],ymm4[2],ymm1[3],ymm4[3],ymm1[6],ymm4[6],ymm1[7],ymm4[7]5459; AVX2-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm2[2],ymm3[2],ymm2[3],ymm3[3],ymm2[6],ymm3[6],ymm2[7],ymm3[7]5460; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]5461; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[3,3,3,3]5462; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]5463; AVX2-NEXT:    vbroadcastss 124(%r8), %ymm15464; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]5465; AVX2-NEXT:    vbroadcastss 124(%r9), %ymm15466; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm1[6,7]5467; AVX2-NEXT:    vbroadcastsd 120(%rax), %ymm15468; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4,5,6],ymm1[7]5469; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5470; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Reload5471; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm8[1,1,1,1,5,5,5,5]5472; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5473; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm6[1],ymm1[2,3,4],ymm6[5],ymm1[6,7]5474; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,2,2,2]5475; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload5476; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload5477; AVX2-NEXT:    vshufps {{.*#+}} ymm2 = ymm10[1,1],ymm5[1,1],ymm10[5,5],ymm5[5,5]5478; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6],ymm1[7]5479; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 32-byte Reload5480; AVX2-NEXT:    vshufps {{.*#+}} ymm2 = ymm13[0,0,0,0,4,4,4,4]5481; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload5482; AVX2-NEXT:    vshufps {{.*#+}} ymm3 = ymm11[0,1,0,1,4,5,4,5]5483; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm3[0],ymm2[1],ymm3[2,3,4],ymm2[5],ymm3[6,7]5484; AVX2-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[2,1,2,3]5485; AVX2-NEXT:    vbroadcastsd 16(%rax), %ymm35486; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1],ymm3[2,3],ymm2[4,5,6,7]5487; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2],ymm1[3,4,5,6],ymm2[7]5488; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5489; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload5490; AVX2-NEXT:    vshufps {{.*#+}} ymm2 = ymm14[1,1,1,1,5,5,5,5]5491; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload5492; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm12[1],ymm2[2,3,4],ymm12[5],ymm2[6,7]5493; AVX2-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[2,2,2,2]5494; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload5495; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5496; AVX2-NEXT:    vshufps {{.*#+}} ymm3 = ymm0[1,1],ymm9[1,1],ymm0[5,5],ymm9[5,5]5497; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm3[5,6],ymm2[7]5498; AVX2-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Folded Reload5499; AVX2-NEXT:    # ymm3 = mem[0,0,0,0,4,4,4,4]5500; AVX2-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Folded Reload5501; AVX2-NEXT:    # ymm4 = mem[0,1,0,1,4,5,4,5]5502; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm4[0],ymm3[1],ymm4[2,3,4],ymm3[5],ymm4[6,7]5503; AVX2-NEXT:    vpermpd {{.*#+}} ymm3 = ymm3[2,1,2,3]5504; AVX2-NEXT:    vbroadcastsd 48(%rax), %ymm45505; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1],ymm4[2,3],ymm3[4,5,6,7]5506; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm3[0,1,2],ymm2[3,4,5,6],ymm3[7]5507; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5508; AVX2-NEXT:    vpermilps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Folded Reload5509; AVX2-NEXT:    # ymm3 = mem[1,1,1,1,5,5,5,5]5510; AVX2-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload5511; AVX2-NEXT:    # ymm3 = ymm3[0],mem[1],ymm3[2,3,4],mem[5],ymm3[6,7]5512; AVX2-NEXT:    vpermpd {{.*#+}} ymm3 = ymm3[2,2,2,2]5513; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5514; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm15 # 32-byte Reload5515; AVX2-NEXT:    vshufps {{.*#+}} ymm4 = ymm0[1,1],ymm15[1,1],ymm0[5,5],ymm15[5,5]5516; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4],ymm4[5,6],ymm3[7]5517; AVX2-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Folded Reload5518; AVX2-NEXT:    # ymm4 = mem[0,0,0,0,4,4,4,4]5519; AVX2-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Folded Reload5520; AVX2-NEXT:    # ymm7 = mem[0,1,0,1,4,5,4,5]5521; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm7[0],ymm4[1],ymm7[2,3,4],ymm4[5],ymm7[6,7]5522; AVX2-NEXT:    vpermpd {{.*#+}} ymm4 = ymm4[2,1,2,3]5523; AVX2-NEXT:    vbroadcastsd 80(%rax), %ymm75524; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1],ymm7[2,3],ymm4[4,5,6,7]5525; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm4[0,1,2],ymm3[3,4,5,6],ymm4[7]5526; AVX2-NEXT:    vmovups %ymm0, (%rsp) # 32-byte Spill5527; AVX2-NEXT:    vbroadcastss 16(%rdx), %ymm45528; AVX2-NEXT:    vshufps {{.*#+}} ymm7 = ymm5[3,1,2,0,7,5,6,4]5529; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm7[0,1,2,3,4,5],ymm4[6],ymm7[7]5530; AVX2-NEXT:    vmovaps %ymm6, %ymm15531; AVX2-NEXT:    vunpcklps {{.*#+}} ymm7 = ymm6[0],ymm8[0],ymm6[1],ymm8[1],ymm6[4],ymm8[4],ymm6[5],ymm8[5]5532; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3],ymm7[4,5],ymm4[6,7]5533; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload5534; AVX2-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm7 # 16-byte Folded Reload5535; AVX2-NEXT:    # xmm7 = xmm3[3,3],mem[3,3]5536; AVX2-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7, %xmm7 # 16-byte Folded Reload5537; AVX2-NEXT:    # xmm7 = xmm7[0,1,2],mem[3]5538; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm4[0],ymm7[1,2,3],ymm4[4,5,6,7]5539; AVX2-NEXT:    vunpckhps {{.*#+}} ymm4 = ymm5[2],ymm10[2],ymm5[3],ymm10[3],ymm5[6],ymm10[6],ymm5[7],ymm10[7]5540; AVX2-NEXT:    vunpckhps {{.*#+}} ymm7 = ymm8[2],ymm1[2],ymm8[3],ymm1[3],ymm8[6],ymm1[6],ymm8[7],ymm1[7]5541; AVX2-NEXT:    vpermpd {{.*#+}} ymm4 = ymm4[3,3,3,3]5542; AVX2-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[3,3,3,3]5543; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm7[0,1,2],ymm4[3,4,5,6,7]5544; AVX2-NEXT:    vshufps {{.*#+}} ymm7 = ymm11[3,3],ymm13[3,3],ymm11[7,7],ymm13[7,7]5545; AVX2-NEXT:    vpermilps {{.*#+}} ymm10 = mem[2,3,2,3,6,7,6,7]5546; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm10[0],ymm7[1,2],ymm10[3,4],ymm7[5,6],ymm10[7]5547; AVX2-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[2,1,2,3]5548; AVX2-NEXT:    vblendps {{.*#+}} ymm10 = ymm7[0],ymm4[1,2,3,4],ymm7[5,6,7]5549; AVX2-NEXT:    vbroadcastss 48(%rdx), %ymm45550; AVX2-NEXT:    vshufps {{.*#+}} ymm7 = ymm9[3,1,2,0,7,5,6,4]5551; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm7[0,1,2,3,4,5],ymm4[6],ymm7[7]5552; AVX2-NEXT:    vunpcklps {{.*#+}} ymm7 = ymm12[0],ymm14[0],ymm12[1],ymm14[1],ymm12[4],ymm14[4],ymm12[5],ymm14[5]5553; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3],ymm7[4,5],ymm4[6,7]5554; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload5555; AVX2-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm7 # 16-byte Folded Reload5556; AVX2-NEXT:    # xmm7 = xmm3[3,3],mem[3,3]5557; AVX2-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7, %xmm7 # 16-byte Folded Reload5558; AVX2-NEXT:    # xmm7 = xmm7[0,1,2],mem[3]5559; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm4[0],ymm7[1,2,3],ymm4[4,5,6,7]5560; AVX2-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm9, %ymm4 # 32-byte Folded Reload5561; AVX2-NEXT:    # ymm4 = ymm9[2],mem[2],ymm9[3],mem[3],ymm9[6],mem[6],ymm9[7],mem[7]5562; AVX2-NEXT:    vunpckhps {{.*#+}} ymm7 = ymm14[2],ymm12[2],ymm14[3],ymm12[3],ymm14[6],ymm12[6],ymm14[7],ymm12[7]5563; AVX2-NEXT:    vpermpd {{.*#+}} ymm4 = ymm4[3,3,3,3]5564; AVX2-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[3,3,3,3]5565; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm7[0,1,2],ymm4[3,4,5,6,7]5566; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5567; AVX2-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm7 # 32-byte Folded Reload5568; AVX2-NEXT:    # ymm7 = ymm0[3,3],mem[3,3],ymm0[7,7],mem[7,7]5569; AVX2-NEXT:    vpermilps {{.*#+}} ymm12 = mem[2,3,2,3,6,7,6,7]5570; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm12[0],ymm7[1,2],ymm12[3,4],ymm7[5,6],ymm12[7]5571; AVX2-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[2,1,2,3]5572; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm7[0],ymm4[1,2,3,4],ymm7[5,6,7]5573; AVX2-NEXT:    vbroadcastss 80(%rdx), %ymm75574; AVX2-NEXT:    vshufps {{.*#+}} ymm12 = ymm15[3,1,2,0,7,5,6,4]5575; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm12[0,1,2,3,4,5],ymm7[6],ymm12[7]5576; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload5577; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5578; AVX2-NEXT:    vunpcklps {{.*#+}} ymm12 = ymm0[0],ymm1[0],ymm0[1],ymm1[1],ymm0[4],ymm1[4],ymm0[5],ymm1[5]5579; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3],ymm12[4,5],ymm7[6,7]5580; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload5581; AVX2-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm5, %xmm12 # 16-byte Folded Reload5582; AVX2-NEXT:    # xmm12 = xmm5[3,3],mem[3,3]5583; AVX2-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm12, %xmm12 # 16-byte Folded Reload5584; AVX2-NEXT:    # xmm12 = xmm12[0,1,2],mem[3]5585; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0],ymm12[1,2,3],ymm7[4,5,6,7]5586; AVX2-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm15, %ymm12 # 32-byte Folded Reload5587; AVX2-NEXT:    # ymm12 = ymm15[2],mem[2],ymm15[3],mem[3],ymm15[6],mem[6],ymm15[7],mem[7]5588; AVX2-NEXT:    vunpckhps {{.*#+}} ymm13 = ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[6],ymm0[6],ymm1[7],ymm0[7]5589; AVX2-NEXT:    vpermpd {{.*#+}} ymm12 = ymm12[3,3,3,3]5590; AVX2-NEXT:    vpermpd {{.*#+}} ymm13 = ymm13[3,3,3,3]5591; AVX2-NEXT:    vblendps {{.*#+}} ymm12 = ymm13[0,1,2],ymm12[3,4,5,6,7]5592; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5593; AVX2-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm13 # 32-byte Folded Reload5594; AVX2-NEXT:    # ymm13 = ymm0[3,3],mem[3,3],ymm0[7,7],mem[7,7]5595; AVX2-NEXT:    vpermilps {{.*#+}} ymm15 = mem[2,3,2,3,6,7,6,7]5596; AVX2-NEXT:    vblendps {{.*#+}} ymm13 = ymm15[0],ymm13[1,2],ymm15[3,4],ymm13[5,6],ymm15[7]5597; AVX2-NEXT:    vpermpd {{.*#+}} ymm13 = ymm13[2,1,2,3]5598; AVX2-NEXT:    vblendps {{.*#+}} ymm12 = ymm13[0],ymm12[1,2,3,4],ymm13[5,6,7]5599; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %rax5600; AVX2-NEXT:    vmovaps %ymm12, 640(%rax)5601; AVX2-NEXT:    vmovaps %ymm7, 544(%rax)5602; AVX2-NEXT:    vmovaps %ymm4, 416(%rax)5603; AVX2-NEXT:    vmovaps %ymm3, 320(%rax)5604; AVX2-NEXT:    vmovaps %ymm10, 192(%rax)5605; AVX2-NEXT:    vmovaps %ymm6, 96(%rax)5606; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload5607; AVX2-NEXT:    vmovaps %ymm4, 608(%rax)5608; AVX2-NEXT:    vmovups (%rsp), %ymm0 # 32-byte Reload5609; AVX2-NEXT:    vmovaps %ymm0, 576(%rax)5610; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload5611; AVX2-NEXT:    vmovaps %ymm3, 384(%rax)5612; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5613; AVX2-NEXT:    vmovaps %ymm0, 352(%rax)5614; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload5615; AVX2-NEXT:    vmovaps %ymm2, 160(%rax)5616; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5617; AVX2-NEXT:    vmovaps %ymm0, 128(%rax)5618; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5619; AVX2-NEXT:    vmovaps %ymm0, 864(%rax)5620; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5621; AVX2-NEXT:    vmovaps %ymm0, 832(%rax)5622; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5623; AVX2-NEXT:    vmovaps %ymm0, 768(%rax)5624; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5625; AVX2-NEXT:    vmovaps %ymm0, 736(%rax)5626; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5627; AVX2-NEXT:    vmovaps %ymm0, 704(%rax)5628; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5629; AVX2-NEXT:    vmovaps %ymm0, 672(%rax)5630; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5631; AVX2-NEXT:    vmovaps %ymm0, 512(%rax)5632; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5633; AVX2-NEXT:    vmovaps %ymm0, 480(%rax)5634; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5635; AVX2-NEXT:    vmovaps %ymm0, 448(%rax)5636; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5637; AVX2-NEXT:    vmovaps %ymm0, 288(%rax)5638; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5639; AVX2-NEXT:    vmovaps %ymm0, 256(%rax)5640; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5641; AVX2-NEXT:    vmovaps %ymm0, 224(%rax)5642; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5643; AVX2-NEXT:    vmovaps %ymm0, 64(%rax)5644; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5645; AVX2-NEXT:    vmovaps %ymm0, 32(%rax)5646; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5647; AVX2-NEXT:    vmovaps %ymm0, (%rax)5648; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload5649; AVX2-NEXT:    vmovaps %ymm0, 800(%rax)5650; AVX2-NEXT:    addq $1320, %rsp # imm = 0x5285651; AVX2-NEXT:    vzeroupper5652; AVX2-NEXT:    retq5653;5654; AVX2-FP-LABEL: store_i32_stride7_vf32:5655; AVX2-FP:       # %bb.0:5656; AVX2-FP-NEXT:    subq $1320, %rsp # imm = 0x5285657; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %rax5658; AVX2-FP-NEXT:    vmovaps (%rax), %xmm05659; AVX2-FP-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5660; AVX2-FP-NEXT:    vmovaps 32(%rax), %xmm35661; AVX2-FP-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5662; AVX2-FP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm05663; AVX2-FP-NEXT:    vmovaps (%r8), %xmm145664; AVX2-FP-NEXT:    vmovaps 32(%r8), %xmm75665; AVX2-FP-NEXT:    vmovaps %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5666; AVX2-FP-NEXT:    vmovaps (%r9), %xmm105667; AVX2-FP-NEXT:    vmovaps 32(%r9), %xmm95668; AVX2-FP-NEXT:    vmovaps %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5669; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm10[1,1,1,1]5670; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0],xmm14[1],xmm1[2,3]5671; AVX2-FP-NEXT:    vbroadcastsd %xmm1, %ymm15672; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5],ymm1[6,7]5673; AVX2-FP-NEXT:    vmovaps (%rcx), %xmm125674; AVX2-FP-NEXT:    vmovaps 32(%rcx), %xmm45675; AVX2-FP-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5676; AVX2-FP-NEXT:    vmovaps (%rdx), %xmm85677; AVX2-FP-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm8[1],xmm12[1],zero5678; AVX2-FP-NEXT:    vmovaps (%rdi), %xmm65679; AVX2-FP-NEXT:    vmovaps 32(%rdi), %xmm115680; AVX2-FP-NEXT:    vmovaps %xmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5681; AVX2-FP-NEXT:    vmovaps (%rsi), %xmm55682; AVX2-FP-NEXT:    vmovaps 32(%rsi), %xmm135683; AVX2-FP-NEXT:    vmovaps %xmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5684; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm2 = xmm5[1,1,2,2]5685; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0,1],xmm6[2],xmm2[3]5686; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[0,1,2,1]5687; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1,2],ymm2[3,4,5,6,7]5688; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]5689; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5690; AVX2-FP-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm05691; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm9[1,1,1,1]5692; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0],xmm7[1],xmm1[2,3]5693; AVX2-FP-NEXT:    vbroadcastsd %xmm1, %ymm15694; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5],ymm1[6,7]5695; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm13[1,1,2,2]5696; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm11[2],xmm1[3]5697; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]5698; AVX2-FP-NEXT:    vmovaps 32(%rdx), %xmm95699; AVX2-FP-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm9[1],xmm4[1],zero5700; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]5701; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]5702; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5703; AVX2-FP-NEXT:    vmovaps 64(%r8), %xmm15704; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5705; AVX2-FP-NEXT:    vmovaps 64(%r9), %xmm05706; AVX2-FP-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5707; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[1,1,1,1]5708; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3]5709; AVX2-FP-NEXT:    vbroadcastsd %xmm0, %ymm05710; AVX2-FP-NEXT:    vmovaps 64(%rax), %xmm15711; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5712; AVX2-FP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm15713; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]5714; AVX2-FP-NEXT:    vmovaps 64(%rdi), %xmm25715; AVX2-FP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5716; AVX2-FP-NEXT:    vmovaps 64(%rsi), %xmm15717; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5718; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,2,2]5719; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm2[2],xmm1[3]5720; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]5721; AVX2-FP-NEXT:    vmovaps 64(%rcx), %xmm25722; AVX2-FP-NEXT:    vmovaps %xmm2, (%rsp) # 16-byte Spill5723; AVX2-FP-NEXT:    vmovaps 64(%rdx), %xmm135724; AVX2-FP-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm13[1],xmm2[1],zero5725; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]5726; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]5727; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5728; AVX2-FP-NEXT:    vmovaps 96(%r8), %xmm15729; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5730; AVX2-FP-NEXT:    vmovaps 96(%r9), %xmm75731; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm0 = xmm7[1,1,1,1]5732; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3]5733; AVX2-FP-NEXT:    vbroadcastsd %xmm0, %ymm05734; AVX2-FP-NEXT:    vmovaps 96(%rax), %xmm15735; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5736; AVX2-FP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm15737; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]5738; AVX2-FP-NEXT:    vmovaps 96(%rdi), %xmm25739; AVX2-FP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5740; AVX2-FP-NEXT:    vmovaps 96(%rsi), %xmm15741; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5742; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,2,2]5743; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm2[2],xmm1[3]5744; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]5745; AVX2-FP-NEXT:    vmovaps 96(%rcx), %xmm35746; AVX2-FP-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5747; AVX2-FP-NEXT:    vmovaps 96(%rdx), %xmm25748; AVX2-FP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5749; AVX2-FP-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm2[1],xmm3[1],zero5750; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]5751; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]5752; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5753; AVX2-FP-NEXT:    vmovaps (%rdi), %ymm05754; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5755; AVX2-FP-NEXT:    vmovaps (%rsi), %ymm15756; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5757; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm1[2],ymm0[3],ymm1[3],ymm0[6],ymm1[6],ymm0[7],ymm1[7]5758; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]5759; AVX2-FP-NEXT:    vmovaps (%rdx), %ymm25760; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5761; AVX2-FP-NEXT:    vmovaps (%rcx), %ymm15762; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5763; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm2[2],ymm1[2],ymm2[3],ymm1[3],ymm2[6],ymm1[6],ymm2[7],ymm1[7]5764; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]5765; AVX2-FP-NEXT:    vmovaps (%r8), %ymm25766; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5767; AVX2-FP-NEXT:    vmovaps (%r9), %ymm15768; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5769; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]5770; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]5771; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]5772; AVX2-FP-NEXT:    vmovaps 16(%rax), %xmm25773; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]5774; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]5775; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5776; AVX2-FP-NEXT:    vmovaps 32(%rdi), %ymm05777; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5778; AVX2-FP-NEXT:    vmovaps 32(%rsi), %ymm15779; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5780; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm1[2],ymm0[3],ymm1[3],ymm0[6],ymm1[6],ymm0[7],ymm1[7]5781; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]5782; AVX2-FP-NEXT:    vmovaps 32(%rdx), %ymm15783; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5784; AVX2-FP-NEXT:    vmovaps 32(%rcx), %ymm25785; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5786; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]5787; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]5788; AVX2-FP-NEXT:    vmovaps 32(%r8), %ymm25789; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5790; AVX2-FP-NEXT:    vmovaps 32(%r9), %ymm15791; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5792; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]5793; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]5794; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]5795; AVX2-FP-NEXT:    vmovaps 48(%rax), %xmm25796; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]5797; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]5798; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5799; AVX2-FP-NEXT:    vmovaps 64(%rdi), %ymm15800; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5801; AVX2-FP-NEXT:    vmovaps 64(%rsi), %ymm05802; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5803; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[6],ymm0[6],ymm1[7],ymm0[7]5804; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]5805; AVX2-FP-NEXT:    vmovaps 64(%rdx), %ymm15806; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5807; AVX2-FP-NEXT:    vmovaps 64(%rcx), %ymm25808; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5809; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]5810; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]5811; AVX2-FP-NEXT:    vmovaps 64(%r8), %ymm25812; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5813; AVX2-FP-NEXT:    vmovaps 64(%r9), %ymm15814; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5815; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]5816; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]5817; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]5818; AVX2-FP-NEXT:    vmovaps 80(%rax), %xmm25819; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]5820; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]5821; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5822; AVX2-FP-NEXT:    vmovaps 96(%rdi), %ymm35823; AVX2-FP-NEXT:    vmovaps 96(%rsi), %ymm25824; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm0 = ymm2[1,1,1,1,5,5,5,5]5825; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm3[1],ymm0[2,3,4],ymm3[5],ymm0[6,7]5826; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]5827; AVX2-FP-NEXT:    vmovaps 96(%rdx), %ymm45828; AVX2-FP-NEXT:    vmovaps 96(%rcx), %ymm15829; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm15 = ymm4[1,1],ymm1[1,1],ymm4[5,5],ymm1[5,5]5830; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm15[5,6],ymm0[7]5831; AVX2-FP-NEXT:    vbroadcastsd 112(%r8), %ymm155832; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm15[0],ymm0[1,2,3,4,5,6],ymm15[7]5833; AVX2-FP-NEXT:    vbroadcastss 112(%r9), %xmm155834; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm15[1],ymm0[2,3,4,5,6,7]5835; AVX2-FP-NEXT:    vbroadcastss 112(%rax), %ymm155836; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm15[2],ymm0[3,4,5,6,7]5837; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5838; AVX2-FP-NEXT:    vbroadcastss %xmm12, %xmm05839; AVX2-FP-NEXT:    vbroadcastss %xmm8, %xmm155840; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm0 = xmm15[0],xmm0[0],xmm15[1],xmm0[1]5841; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm15 = xmm6[0],xmm5[0],xmm6[1],xmm5[1]5842; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm15 = xmm15[0,1,2,2]5843; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm15 = ymm15[0,1,2,1]5844; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm15[0,1],ymm0[2,3],ymm15[4,5,6,7]5845; AVX2-FP-NEXT:    vmovaps %xmm10, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5846; AVX2-FP-NEXT:    vmovaps %xmm14, %xmm115847; AVX2-FP-NEXT:    vmovaps %xmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill5848; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm15 = xmm14[0],xmm10[0],xmm14[1],xmm10[1]5849; AVX2-FP-NEXT:    vinsertf128 $1, %xmm15, %ymm0, %ymm155850; AVX2-FP-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 16-byte Folded Reload5851; AVX2-FP-NEXT:    vunpcklpd {{.*#+}} ymm14 = ymm15[0],ymm14[0],ymm15[2],ymm14[2]5852; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm14[4,5,6],ymm0[7]5853; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5854; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm0 = xmm6[3,3],xmm5[3,3]5855; AVX2-FP-NEXT:    vunpckhps {{.*#+}} xmm5 = xmm8[2],xmm12[2],xmm8[3],xmm12[3]5856; AVX2-FP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm05857; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm5 = xmm5[0,1,2,2]5858; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[0,1,2,1]5859; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0,1,2,3,4],ymm0[5,6],ymm5[7]5860; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm5 = xmm10[2,2,2,2]5861; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm5 = xmm11[0,1,2],xmm5[3]5862; AVX2-FP-NEXT:    vbroadcastsd 8(%rax), %ymm65863; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3],ymm6[4,5,6,7]5864; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm5[2,3,4],ymm0[5,6,7]5865; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5866; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload5867; AVX2-FP-NEXT:    vbroadcastss %xmm8, %xmm05868; AVX2-FP-NEXT:    vbroadcastss %xmm9, %xmm55869; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm0 = xmm5[0],xmm0[0],xmm5[1],xmm0[1]5870; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload5871; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm11 # 16-byte Reload5872; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm5 = xmm10[0],xmm11[0],xmm10[1],xmm11[1]5873; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm5 = xmm5[0,1,2,2]5874; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[0,1,2,1]5875; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0,1],ymm0[2,3],ymm5[4,5,6,7]5876; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload5877; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Reload5878; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm5 = xmm14[0],xmm12[0],xmm14[1],xmm12[1]5879; AVX2-FP-NEXT:    vinsertf128 $1, %xmm5, %ymm0, %ymm55880; AVX2-FP-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 16-byte Folded Reload5881; AVX2-FP-NEXT:    vunpcklpd {{.*#+}} ymm5 = ymm5[0],ymm6[0],ymm5[2],ymm6[2]5882; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm5[4,5,6],ymm0[7]5883; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5884; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm0 = xmm10[3,3],xmm11[3,3]5885; AVX2-FP-NEXT:    vunpckhps {{.*#+}} xmm5 = xmm9[2],xmm8[2],xmm9[3],xmm8[3]5886; AVX2-FP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm05887; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm5 = xmm5[0,1,2,2]5888; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[0,1,2,1]5889; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0,1,2,3,4],ymm0[5,6],ymm5[7]5890; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm5 = xmm12[2,2,2,2]5891; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm5 = xmm14[0,1,2],xmm5[3]5892; AVX2-FP-NEXT:    vbroadcastsd 40(%rax), %ymm65893; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3],ymm6[4,5,6,7]5894; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm5[2,3,4],ymm0[5,6,7]5895; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5896; AVX2-FP-NEXT:    vmovaps (%rsp), %xmm12 # 16-byte Reload5897; AVX2-FP-NEXT:    vbroadcastss %xmm12, %xmm05898; AVX2-FP-NEXT:    vbroadcastss %xmm13, %xmm55899; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm0 = xmm5[0],xmm0[0],xmm5[1],xmm0[1]5900; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload5901; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm11 # 16-byte Reload5902; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm5 = xmm11[0],xmm10[0],xmm11[1],xmm10[1]5903; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm5 = xmm5[0,1,2,2]5904; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[0,1,2,1]5905; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0,1],ymm0[2,3],ymm5[4,5,6,7]5906; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload5907; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload5908; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm5 = xmm9[0],xmm8[0],xmm9[1],xmm8[1]5909; AVX2-FP-NEXT:    vinsertf128 $1, %xmm5, %ymm0, %ymm55910; AVX2-FP-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 16-byte Folded Reload5911; AVX2-FP-NEXT:    vunpcklpd {{.*#+}} ymm5 = ymm5[0],ymm6[0],ymm5[2],ymm6[2]5912; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm5[4,5,6],ymm0[7]5913; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5914; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm0 = xmm11[3,3],xmm10[3,3]5915; AVX2-FP-NEXT:    vunpckhps {{.*#+}} xmm5 = xmm13[2],xmm12[2],xmm13[3],xmm12[3]5916; AVX2-FP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm05917; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm5 = xmm5[0,1,2,2]5918; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[0,1,2,1]5919; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0,1,2,3,4],ymm0[5,6],ymm5[7]5920; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm5 = xmm8[2,2,2,2]5921; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm5 = xmm9[0,1,2],xmm5[3]5922; AVX2-FP-NEXT:    vbroadcastsd 72(%rax), %ymm65923; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3],ymm6[4,5,6,7]5924; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm5[2,3,4],ymm0[5,6,7]5925; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5926; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Reload5927; AVX2-FP-NEXT:    vbroadcastss %xmm12, %xmm05928; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm11 # 16-byte Reload5929; AVX2-FP-NEXT:    vbroadcastss %xmm11, %xmm55930; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm0 = xmm5[0],xmm0[0],xmm5[1],xmm0[1]5931; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload5932; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload5933; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm5 = xmm10[0],xmm9[0],xmm10[1],xmm9[1]5934; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm5 = xmm5[0,1,2,2]5935; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[0,1,2,1]5936; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0,1],ymm0[2,3],ymm5[4,5,6,7]5937; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload5938; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm5 = xmm8[0],xmm7[0],xmm8[1],xmm7[1]5939; AVX2-FP-NEXT:    vinsertf128 $1, %xmm5, %ymm0, %ymm55940; AVX2-FP-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 16-byte Folded Reload5941; AVX2-FP-NEXT:    vunpcklpd {{.*#+}} ymm5 = ymm5[0],ymm6[0],ymm5[2],ymm6[2]5942; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm5[4,5,6],ymm0[7]5943; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5944; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm0 = xmm10[3,3],xmm9[3,3]5945; AVX2-FP-NEXT:    vunpckhps {{.*#+}} xmm5 = xmm11[2],xmm12[2],xmm11[3],xmm12[3]5946; AVX2-FP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm05947; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm5 = xmm5[0,1,2,2]5948; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[0,1,2,1]5949; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0,1,2,3,4],ymm0[5,6],ymm5[7]5950; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm5 = xmm7[2,2,2,2]5951; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm5 = xmm8[0,1,2],xmm5[3]5952; AVX2-FP-NEXT:    vbroadcastsd 104(%rax), %ymm65953; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm5 = ymm5[0,1,2,3],ymm6[4,5,6,7]5954; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm5[2,3,4],ymm0[5,6,7]5955; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5956; AVX2-FP-NEXT:    vbroadcastss 112(%rdx), %ymm05957; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm6 = ymm1[3,1,2,0,7,5,6,4]5958; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1,2,3,4,5],ymm0[6],ymm6[7]5959; AVX2-FP-NEXT:    vunpcklps {{.*#+}} ymm6 = ymm3[0],ymm2[0],ymm3[1],ymm2[1],ymm3[4],ymm2[4],ymm3[5],ymm2[5]5960; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm6[4,5],ymm0[6,7]5961; AVX2-FP-NEXT:    vbroadcastss 108(%r8), %ymm65962; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm6[1],ymm0[2,3,4,5,6,7]5963; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm6 = xmm7[2,2,3,3]5964; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm6[2,3],ymm0[4,5,6,7]5965; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm6 = ymm3[2],ymm2[2],ymm3[3],ymm2[3],ymm3[6],ymm2[6],ymm3[7],ymm2[7]5966; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm6 = ymm6[2,2,2,2]5967; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm7 = ymm4[2],ymm1[2],ymm4[3],ymm1[3],ymm4[6],ymm1[6],ymm4[7],ymm1[7]5968; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3],ymm7[4,5,6,7]5969; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3,4,5],mem[6,7]5970; AVX2-FP-NEXT:    vpermilps {{.*#+}} ymm8 = mem[1,2,2,3,5,6,6,7]5971; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm8 = ymm8[2,2,2,2]5972; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0],ymm6[1,2,3,4,5,6],ymm8[7]5973; AVX2-FP-NEXT:    vmovaps 96(%rax), %ymm95974; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm9[3],ymm0[4,5,6,7]5975; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5976; AVX2-FP-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm9[2,3],ymm7[2,3]5977; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm8[0],ymm0[1],ymm8[2,3,4],ymm0[5],ymm8[6,7]5978; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5979; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm1[2],ymm4[2],ymm1[3],ymm4[3],ymm1[6],ymm4[6],ymm1[7],ymm4[7]5980; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm2[2],ymm3[2],ymm2[3],ymm3[3],ymm2[6],ymm3[6],ymm2[7],ymm3[7]5981; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]5982; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[3,3,3,3]5983; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]5984; AVX2-FP-NEXT:    vbroadcastss 124(%r8), %ymm15985; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]5986; AVX2-FP-NEXT:    vbroadcastss 124(%r9), %ymm15987; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm1[6,7]5988; AVX2-FP-NEXT:    vbroadcastsd 120(%rax), %ymm15989; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4,5,6],ymm1[7]5990; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill5991; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Reload5992; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm8[1,1,1,1,5,5,5,5]5993; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload5994; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm6[1],ymm1[2,3,4],ymm6[5],ymm1[6,7]5995; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,2,2,2]5996; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload5997; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload5998; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm2 = ymm10[1,1],ymm5[1,1],ymm10[5,5],ymm5[5,5]5999; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6],ymm1[7]6000; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 32-byte Reload6001; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm2 = ymm13[0,0,0,0,4,4,4,4]6002; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload6003; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm3 = ymm11[0,1,0,1,4,5,4,5]6004; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm3[0],ymm2[1],ymm3[2,3,4],ymm2[5],ymm3[6,7]6005; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[2,1,2,3]6006; AVX2-FP-NEXT:    vbroadcastsd 16(%rax), %ymm36007; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1],ymm3[2,3],ymm2[4,5,6,7]6008; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2],ymm1[3,4,5,6],ymm2[7]6009; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6010; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload6011; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm2 = ymm14[1,1,1,1,5,5,5,5]6012; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload6013; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm12[1],ymm2[2,3,4],ymm12[5],ymm2[6,7]6014; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[2,2,2,2]6015; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload6016; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6017; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm3 = ymm0[1,1],ymm9[1,1],ymm0[5,5],ymm9[5,5]6018; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm3[5,6],ymm2[7]6019; AVX2-FP-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Folded Reload6020; AVX2-FP-NEXT:    # ymm3 = mem[0,0,0,0,4,4,4,4]6021; AVX2-FP-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Folded Reload6022; AVX2-FP-NEXT:    # ymm4 = mem[0,1,0,1,4,5,4,5]6023; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm4[0],ymm3[1],ymm4[2,3,4],ymm3[5],ymm4[6,7]6024; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm3 = ymm3[2,1,2,3]6025; AVX2-FP-NEXT:    vbroadcastsd 48(%rax), %ymm46026; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1],ymm4[2,3],ymm3[4,5,6,7]6027; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm3[0,1,2],ymm2[3,4,5,6],ymm3[7]6028; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6029; AVX2-FP-NEXT:    vpermilps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Folded Reload6030; AVX2-FP-NEXT:    # ymm3 = mem[1,1,1,1,5,5,5,5]6031; AVX2-FP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload6032; AVX2-FP-NEXT:    # ymm3 = ymm3[0],mem[1],ymm3[2,3,4],mem[5],ymm3[6,7]6033; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm3 = ymm3[2,2,2,2]6034; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6035; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm15 # 32-byte Reload6036; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm4 = ymm0[1,1],ymm15[1,1],ymm0[5,5],ymm15[5,5]6037; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4],ymm4[5,6],ymm3[7]6038; AVX2-FP-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Folded Reload6039; AVX2-FP-NEXT:    # ymm4 = mem[0,0,0,0,4,4,4,4]6040; AVX2-FP-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Folded Reload6041; AVX2-FP-NEXT:    # ymm7 = mem[0,1,0,1,4,5,4,5]6042; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm7[0],ymm4[1],ymm7[2,3,4],ymm4[5],ymm7[6,7]6043; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm4 = ymm4[2,1,2,3]6044; AVX2-FP-NEXT:    vbroadcastsd 80(%rax), %ymm76045; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1],ymm7[2,3],ymm4[4,5,6,7]6046; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm4[0,1,2],ymm3[3,4,5,6],ymm4[7]6047; AVX2-FP-NEXT:    vmovups %ymm0, (%rsp) # 32-byte Spill6048; AVX2-FP-NEXT:    vbroadcastss 16(%rdx), %ymm46049; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm7 = ymm5[3,1,2,0,7,5,6,4]6050; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm7[0,1,2,3,4,5],ymm4[6],ymm7[7]6051; AVX2-FP-NEXT:    vmovaps %ymm6, %ymm16052; AVX2-FP-NEXT:    vunpcklps {{.*#+}} ymm7 = ymm6[0],ymm8[0],ymm6[1],ymm8[1],ymm6[4],ymm8[4],ymm6[5],ymm8[5]6053; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3],ymm7[4,5],ymm4[6,7]6054; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload6055; AVX2-FP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm7 # 16-byte Folded Reload6056; AVX2-FP-NEXT:    # xmm7 = xmm3[3,3],mem[3,3]6057; AVX2-FP-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7, %xmm7 # 16-byte Folded Reload6058; AVX2-FP-NEXT:    # xmm7 = xmm7[0,1,2],mem[3]6059; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm4[0],ymm7[1,2,3],ymm4[4,5,6,7]6060; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm4 = ymm5[2],ymm10[2],ymm5[3],ymm10[3],ymm5[6],ymm10[6],ymm5[7],ymm10[7]6061; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm7 = ymm8[2],ymm1[2],ymm8[3],ymm1[3],ymm8[6],ymm1[6],ymm8[7],ymm1[7]6062; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm4 = ymm4[3,3,3,3]6063; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[3,3,3,3]6064; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm7[0,1,2],ymm4[3,4,5,6,7]6065; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm7 = ymm11[3,3],ymm13[3,3],ymm11[7,7],ymm13[7,7]6066; AVX2-FP-NEXT:    vpermilps {{.*#+}} ymm10 = mem[2,3,2,3,6,7,6,7]6067; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm10[0],ymm7[1,2],ymm10[3,4],ymm7[5,6],ymm10[7]6068; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[2,1,2,3]6069; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm10 = ymm7[0],ymm4[1,2,3,4],ymm7[5,6,7]6070; AVX2-FP-NEXT:    vbroadcastss 48(%rdx), %ymm46071; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm7 = ymm9[3,1,2,0,7,5,6,4]6072; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm7[0,1,2,3,4,5],ymm4[6],ymm7[7]6073; AVX2-FP-NEXT:    vunpcklps {{.*#+}} ymm7 = ymm12[0],ymm14[0],ymm12[1],ymm14[1],ymm12[4],ymm14[4],ymm12[5],ymm14[5]6074; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3],ymm7[4,5],ymm4[6,7]6075; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload6076; AVX2-FP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm7 # 16-byte Folded Reload6077; AVX2-FP-NEXT:    # xmm7 = xmm3[3,3],mem[3,3]6078; AVX2-FP-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7, %xmm7 # 16-byte Folded Reload6079; AVX2-FP-NEXT:    # xmm7 = xmm7[0,1,2],mem[3]6080; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm4[0],ymm7[1,2,3],ymm4[4,5,6,7]6081; AVX2-FP-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm9, %ymm4 # 32-byte Folded Reload6082; AVX2-FP-NEXT:    # ymm4 = ymm9[2],mem[2],ymm9[3],mem[3],ymm9[6],mem[6],ymm9[7],mem[7]6083; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm7 = ymm14[2],ymm12[2],ymm14[3],ymm12[3],ymm14[6],ymm12[6],ymm14[7],ymm12[7]6084; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm4 = ymm4[3,3,3,3]6085; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[3,3,3,3]6086; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm7[0,1,2],ymm4[3,4,5,6,7]6087; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6088; AVX2-FP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm7 # 32-byte Folded Reload6089; AVX2-FP-NEXT:    # ymm7 = ymm0[3,3],mem[3,3],ymm0[7,7],mem[7,7]6090; AVX2-FP-NEXT:    vpermilps {{.*#+}} ymm12 = mem[2,3,2,3,6,7,6,7]6091; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm12[0],ymm7[1,2],ymm12[3,4],ymm7[5,6],ymm12[7]6092; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[2,1,2,3]6093; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm7[0],ymm4[1,2,3,4],ymm7[5,6,7]6094; AVX2-FP-NEXT:    vbroadcastss 80(%rdx), %ymm76095; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm12 = ymm15[3,1,2,0,7,5,6,4]6096; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm12[0,1,2,3,4,5],ymm7[6],ymm12[7]6097; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload6098; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6099; AVX2-FP-NEXT:    vunpcklps {{.*#+}} ymm12 = ymm0[0],ymm1[0],ymm0[1],ymm1[1],ymm0[4],ymm1[4],ymm0[5],ymm1[5]6100; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3],ymm12[4,5],ymm7[6,7]6101; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload6102; AVX2-FP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm5, %xmm12 # 16-byte Folded Reload6103; AVX2-FP-NEXT:    # xmm12 = xmm5[3,3],mem[3,3]6104; AVX2-FP-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm12, %xmm12 # 16-byte Folded Reload6105; AVX2-FP-NEXT:    # xmm12 = xmm12[0,1,2],mem[3]6106; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0],ymm12[1,2,3],ymm7[4,5,6,7]6107; AVX2-FP-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm15, %ymm12 # 32-byte Folded Reload6108; AVX2-FP-NEXT:    # ymm12 = ymm15[2],mem[2],ymm15[3],mem[3],ymm15[6],mem[6],ymm15[7],mem[7]6109; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm13 = ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[6],ymm0[6],ymm1[7],ymm0[7]6110; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm12 = ymm12[3,3,3,3]6111; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm13 = ymm13[3,3,3,3]6112; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm12 = ymm13[0,1,2],ymm12[3,4,5,6,7]6113; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6114; AVX2-FP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm13 # 32-byte Folded Reload6115; AVX2-FP-NEXT:    # ymm13 = ymm0[3,3],mem[3,3],ymm0[7,7],mem[7,7]6116; AVX2-FP-NEXT:    vpermilps {{.*#+}} ymm15 = mem[2,3,2,3,6,7,6,7]6117; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm13 = ymm15[0],ymm13[1,2],ymm15[3,4],ymm13[5,6],ymm15[7]6118; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm13 = ymm13[2,1,2,3]6119; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm12 = ymm13[0],ymm12[1,2,3,4],ymm13[5,6,7]6120; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %rax6121; AVX2-FP-NEXT:    vmovaps %ymm12, 640(%rax)6122; AVX2-FP-NEXT:    vmovaps %ymm7, 544(%rax)6123; AVX2-FP-NEXT:    vmovaps %ymm4, 416(%rax)6124; AVX2-FP-NEXT:    vmovaps %ymm3, 320(%rax)6125; AVX2-FP-NEXT:    vmovaps %ymm10, 192(%rax)6126; AVX2-FP-NEXT:    vmovaps %ymm6, 96(%rax)6127; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload6128; AVX2-FP-NEXT:    vmovaps %ymm4, 608(%rax)6129; AVX2-FP-NEXT:    vmovups (%rsp), %ymm0 # 32-byte Reload6130; AVX2-FP-NEXT:    vmovaps %ymm0, 576(%rax)6131; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload6132; AVX2-FP-NEXT:    vmovaps %ymm3, 384(%rax)6133; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6134; AVX2-FP-NEXT:    vmovaps %ymm0, 352(%rax)6135; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload6136; AVX2-FP-NEXT:    vmovaps %ymm2, 160(%rax)6137; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6138; AVX2-FP-NEXT:    vmovaps %ymm0, 128(%rax)6139; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6140; AVX2-FP-NEXT:    vmovaps %ymm0, 864(%rax)6141; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6142; AVX2-FP-NEXT:    vmovaps %ymm0, 832(%rax)6143; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6144; AVX2-FP-NEXT:    vmovaps %ymm0, 768(%rax)6145; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6146; AVX2-FP-NEXT:    vmovaps %ymm0, 736(%rax)6147; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6148; AVX2-FP-NEXT:    vmovaps %ymm0, 704(%rax)6149; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6150; AVX2-FP-NEXT:    vmovaps %ymm0, 672(%rax)6151; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6152; AVX2-FP-NEXT:    vmovaps %ymm0, 512(%rax)6153; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6154; AVX2-FP-NEXT:    vmovaps %ymm0, 480(%rax)6155; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6156; AVX2-FP-NEXT:    vmovaps %ymm0, 448(%rax)6157; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6158; AVX2-FP-NEXT:    vmovaps %ymm0, 288(%rax)6159; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6160; AVX2-FP-NEXT:    vmovaps %ymm0, 256(%rax)6161; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6162; AVX2-FP-NEXT:    vmovaps %ymm0, 224(%rax)6163; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6164; AVX2-FP-NEXT:    vmovaps %ymm0, 64(%rax)6165; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6166; AVX2-FP-NEXT:    vmovaps %ymm0, 32(%rax)6167; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6168; AVX2-FP-NEXT:    vmovaps %ymm0, (%rax)6169; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6170; AVX2-FP-NEXT:    vmovaps %ymm0, 800(%rax)6171; AVX2-FP-NEXT:    addq $1320, %rsp # imm = 0x5286172; AVX2-FP-NEXT:    vzeroupper6173; AVX2-FP-NEXT:    retq6174;6175; AVX2-FCP-LABEL: store_i32_stride7_vf32:6176; AVX2-FCP:       # %bb.0:6177; AVX2-FCP-NEXT:    subq $1416, %rsp # imm = 0x5886178; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax6179; AVX2-FCP-NEXT:    vmovaps (%rax), %xmm06180; AVX2-FCP-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6181; AVX2-FCP-NEXT:    vmovaps 32(%rax), %xmm36182; AVX2-FCP-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6183; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm06184; AVX2-FCP-NEXT:    vmovaps (%r8), %xmm26185; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6186; AVX2-FCP-NEXT:    vmovaps 32(%r8), %xmm46187; AVX2-FCP-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6188; AVX2-FCP-NEXT:    vmovaps (%r9), %xmm16189; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6190; AVX2-FCP-NEXT:    vmovaps 32(%r9), %xmm56191; AVX2-FCP-NEXT:    vmovaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6192; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,1,1]6193; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0],xmm2[1],xmm1[2,3]6194; AVX2-FCP-NEXT:    vbroadcastsd %xmm1, %ymm16195; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5],ymm1[6,7]6196; AVX2-FCP-NEXT:    vmovaps (%rcx), %xmm26197; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6198; AVX2-FCP-NEXT:    vmovaps 32(%rcx), %xmm66199; AVX2-FCP-NEXT:    vmovaps %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6200; AVX2-FCP-NEXT:    vmovaps (%rdx), %xmm16201; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6202; AVX2-FCP-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm1[1],xmm2[1],zero6203; AVX2-FCP-NEXT:    vmovaps (%rdi), %xmm96204; AVX2-FCP-NEXT:    vmovaps 32(%rdi), %xmm76205; AVX2-FCP-NEXT:    vmovaps %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6206; AVX2-FCP-NEXT:    vmovaps (%rsi), %xmm116207; AVX2-FCP-NEXT:    vmovaps 32(%rsi), %xmm86208; AVX2-FCP-NEXT:    vmovaps %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6209; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm2 = xmm11[1,1,2,2]6210; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0,1],xmm9[2],xmm2[3]6211; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[0,1,2,1]6212; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1,2],ymm2[3,4,5,6,7]6213; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]6214; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6215; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm06216; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm5[1,1,1,1]6217; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0],xmm4[1],xmm1[2,3]6218; AVX2-FCP-NEXT:    vbroadcastsd %xmm1, %ymm16219; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5],ymm1[6,7]6220; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm8[1,1,2,2]6221; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm7[2],xmm1[3]6222; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]6223; AVX2-FCP-NEXT:    vmovaps 32(%rdx), %xmm26224; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6225; AVX2-FCP-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm2[1],xmm6[1],zero6226; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]6227; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]6228; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6229; AVX2-FCP-NEXT:    vmovaps 64(%r8), %xmm16230; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6231; AVX2-FCP-NEXT:    vmovaps 64(%r9), %xmm06232; AVX2-FCP-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6233; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[1,1,1,1]6234; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3]6235; AVX2-FCP-NEXT:    vbroadcastsd %xmm0, %ymm06236; AVX2-FCP-NEXT:    vmovaps 64(%rax), %xmm16237; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6238; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm16239; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]6240; AVX2-FCP-NEXT:    vmovaps 64(%rdi), %xmm26241; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6242; AVX2-FCP-NEXT:    vmovaps 64(%rsi), %xmm16243; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6244; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,2,2]6245; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm2[2],xmm1[3]6246; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]6247; AVX2-FCP-NEXT:    vmovaps 64(%rcx), %xmm36248; AVX2-FCP-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6249; AVX2-FCP-NEXT:    vmovaps 64(%rdx), %xmm26250; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6251; AVX2-FCP-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm2[1],xmm3[1],zero6252; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]6253; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]6254; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6255; AVX2-FCP-NEXT:    vmovaps 96(%r8), %xmm16256; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6257; AVX2-FCP-NEXT:    vmovaps 96(%r9), %xmm76258; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm0 = xmm7[1,1,1,1]6259; AVX2-FCP-NEXT:    vmovaps %xmm7, (%rsp) # 16-byte Spill6260; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3]6261; AVX2-FCP-NEXT:    vbroadcastsd %xmm0, %ymm06262; AVX2-FCP-NEXT:    vmovaps 96(%rax), %xmm16263; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6264; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm16265; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]6266; AVX2-FCP-NEXT:    vmovaps 96(%rdi), %xmm26267; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6268; AVX2-FCP-NEXT:    vmovaps 96(%rsi), %xmm16269; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6270; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,2,2]6271; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm2[2],xmm1[3]6272; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]6273; AVX2-FCP-NEXT:    vmovaps 96(%rcx), %xmm36274; AVX2-FCP-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6275; AVX2-FCP-NEXT:    vmovaps 96(%rdx), %xmm26276; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill6277; AVX2-FCP-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm2[1],xmm3[1],zero6278; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]6279; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]6280; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6281; AVX2-FCP-NEXT:    vmovaps (%rdi), %ymm06282; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6283; AVX2-FCP-NEXT:    vmovaps (%rsi), %ymm136284; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm13[2],ymm0[3],ymm13[3],ymm0[6],ymm13[6],ymm0[7],ymm13[7]6285; AVX2-FCP-NEXT:    vmovups %ymm13, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6286; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]6287; AVX2-FCP-NEXT:    vmovaps (%rdx), %ymm66288; AVX2-FCP-NEXT:    vmovaps (%rcx), %ymm106289; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm6[2],ymm10[2],ymm6[3],ymm10[3],ymm6[6],ymm10[6],ymm6[7],ymm10[7]6290; AVX2-FCP-NEXT:    vmovups %ymm10, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6291; AVX2-FCP-NEXT:    vmovups %ymm6, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6292; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]6293; AVX2-FCP-NEXT:    vmovaps (%r8), %ymm86294; AVX2-FCP-NEXT:    vmovaps (%r9), %ymm146295; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm14[1,1,2,2,5,5,6,6]6296; AVX2-FCP-NEXT:    vmovups %ymm14, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6297; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm8[2],ymm1[3,4,5],ymm8[6],ymm1[7]6298; AVX2-FCP-NEXT:    vmovups %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6299; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]6300; AVX2-FCP-NEXT:    vmovaps 16(%rax), %xmm26301; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]6302; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]6303; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6304; AVX2-FCP-NEXT:    vmovaps 32(%rdi), %ymm16305; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6306; AVX2-FCP-NEXT:    vmovaps 32(%rsi), %ymm06307; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6308; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[6],ymm0[6],ymm1[7],ymm0[7]6309; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]6310; AVX2-FCP-NEXT:    vmovaps 32(%rdx), %ymm16311; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6312; AVX2-FCP-NEXT:    vmovaps 32(%rcx), %ymm26313; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6314; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]6315; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]6316; AVX2-FCP-NEXT:    vmovaps 32(%r8), %ymm26317; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6318; AVX2-FCP-NEXT:    vmovaps 32(%r9), %ymm16319; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6320; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]6321; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]6322; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]6323; AVX2-FCP-NEXT:    vmovaps 48(%rax), %xmm26324; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]6325; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]6326; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6327; AVX2-FCP-NEXT:    vmovaps 64(%rdi), %ymm06328; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6329; AVX2-FCP-NEXT:    vmovaps 64(%rsi), %ymm16330; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6331; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm1[2],ymm0[3],ymm1[3],ymm0[6],ymm1[6],ymm0[7],ymm1[7]6332; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]6333; AVX2-FCP-NEXT:    vmovaps 64(%rdx), %ymm26334; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6335; AVX2-FCP-NEXT:    vmovaps 64(%rcx), %ymm16336; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6337; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm2[2],ymm1[2],ymm2[3],ymm1[3],ymm2[6],ymm1[6],ymm2[7],ymm1[7]6338; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]6339; AVX2-FCP-NEXT:    vmovaps 64(%r8), %ymm26340; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6341; AVX2-FCP-NEXT:    vmovaps 64(%r9), %ymm16342; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6343; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]6344; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]6345; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]6346; AVX2-FCP-NEXT:    vmovaps 80(%rax), %xmm26347; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]6348; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]6349; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6350; AVX2-FCP-NEXT:    vmovaps 96(%rdi), %ymm46351; AVX2-FCP-NEXT:    vmovaps 96(%rsi), %ymm26352; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm0 = ymm2[1,1,1,1,5,5,5,5]6353; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm4[1],ymm0[2,3,4],ymm4[5],ymm0[6,7]6354; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm3 = ymm0[2,2,2,2]6355; AVX2-FCP-NEXT:    vmovaps 96(%rdx), %ymm56356; AVX2-FCP-NEXT:    vmovaps 96(%rcx), %ymm16357; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm15 = ymm5[1,1],ymm1[1,1],ymm5[5,5],ymm1[5,5]6358; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3,4],ymm15[5,6],ymm3[7]6359; AVX2-FCP-NEXT:    vbroadcastsd 112(%r8), %ymm156360; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm15[0],ymm3[1,2,3,4,5,6],ymm15[7]6361; AVX2-FCP-NEXT:    vbroadcastss 112(%r9), %xmm156362; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0],ymm15[1],ymm3[2,3,4,5,6,7]6363; AVX2-FCP-NEXT:    vbroadcastss 112(%rax), %ymm156364; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm3[0,1],ymm15[2],ymm3[3,4,5,6,7]6365; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6366; AVX2-FCP-NEXT:    vbroadcastss 112(%rdx), %ymm36367; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm15 = ymm1[3,1,2,0,7,5,6,4]6368; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm15[0,1,2,3,4,5],ymm3[6],ymm15[7]6369; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} ymm15 = ymm4[0],ymm2[0],ymm4[1],ymm2[1],ymm4[4],ymm2[4],ymm4[5],ymm2[5]6370; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3],ymm15[4,5],ymm3[6,7]6371; AVX2-FCP-NEXT:    vbroadcastss 108(%r8), %ymm156372; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0],ymm15[1],ymm3[2,3,4,5,6,7]6373; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm15 = xmm7[2,2,3,3]6374; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1],ymm15[2,3],ymm3[4,5,6,7]6375; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm15 = ymm4[2],ymm2[2],ymm4[3],ymm2[3],ymm4[6],ymm2[6],ymm4[7],ymm2[7]6376; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm15 = ymm15[2,2,2,2]6377; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm5[2],ymm1[2],ymm5[3],ymm1[3],ymm5[6],ymm1[6],ymm5[7],ymm1[7]6378; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm15 = ymm15[0,1,2,3],ymm0[4,5,6,7]6379; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm15 = ymm15[0,1,2,3,4,5],mem[6,7]6380; AVX2-FCP-NEXT:    vbroadcastsd {{.*#+}} ymm12 = [5,6,5,6,5,6,5,6]6381; AVX2-FCP-NEXT:    vpermps 96(%r9), %ymm12, %ymm126382; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm12 = ymm12[0],ymm15[1,2,3,4,5,6],ymm12[7]6383; AVX2-FCP-NEXT:    vmovaps 96(%rax), %ymm156384; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2],ymm15[3],ymm3[4,5,6,7]6385; AVX2-FCP-NEXT:    vmovups %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6386; AVX2-FCP-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm15[2,3],ymm0[2,3]6387; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm12[0],ymm0[1],ymm12[2,3,4],ymm0[5],ymm12[6,7]6388; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6389; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm1[2],ymm5[2],ymm1[3],ymm5[3],ymm1[6],ymm5[6],ymm1[7],ymm5[7]6390; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm2[2],ymm4[2],ymm2[3],ymm4[3],ymm2[6],ymm4[6],ymm2[7],ymm4[7]6391; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]6392; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[3,3,3,3]6393; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]6394; AVX2-FCP-NEXT:    vbroadcastss 124(%r8), %ymm16395; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]6396; AVX2-FCP-NEXT:    vbroadcastss 124(%r9), %ymm16397; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm1[6,7]6398; AVX2-FCP-NEXT:    vbroadcastsd 120(%rax), %ymm16399; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4,5,6],ymm1[7]6400; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6401; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm12 # 16-byte Reload6402; AVX2-FCP-NEXT:    vbroadcastss %xmm12, %xmm06403; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload6404; AVX2-FCP-NEXT:    vbroadcastss %xmm7, %xmm16405; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]6406; AVX2-FCP-NEXT:    vmovaps %xmm11, %xmm156407; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm2 = xmm9[0],xmm11[0],xmm9[1],xmm11[1]6408; AVX2-FCP-NEXT:    vbroadcastf128 {{.*#+}} ymm11 = [0,1,2,2,0,1,2,2]6409; AVX2-FCP-NEXT:    # ymm11 = mem[0,1,0,1]6410; AVX2-FCP-NEXT:    vpermps %ymm2, %ymm11, %ymm26411; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0,1],ymm1[2,3],ymm2[4,5,6,7]6412; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload6413; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload6414; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm2 = xmm4[0],xmm5[0],xmm4[1],xmm5[1]6415; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm2, %ymm0, %ymm26416; AVX2-FCP-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 16-byte Folded Reload6417; AVX2-FCP-NEXT:    vunpcklpd {{.*#+}} ymm2 = ymm2[0],ymm3[0],ymm2[2],ymm3[2]6418; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3],ymm2[4,5,6],ymm1[7]6419; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6420; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm9[3,3],xmm15[3,3]6421; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} xmm2 = xmm7[2],xmm12[2],xmm7[3],xmm12[3]6422; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm16423; AVX2-FCP-NEXT:    vpermps %ymm2, %ymm11, %ymm26424; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6],ymm2[7]6425; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm2 = xmm5[2,2,2,2]6426; AVX2-FCP-NEXT:    vmovaps %xmm5, %xmm96427; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm2 = xmm4[0,1,2],xmm2[3]6428; AVX2-FCP-NEXT:    vbroadcastsd 8(%rax), %ymm36429; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6,7]6430; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm2[2,3,4],ymm1[5,6,7]6431; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6432; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm13[1,1,1,1,5,5,5,5]6433; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload6434; AVX2-FCP-NEXT:    # ymm1 = ymm1[0],mem[1],ymm1[2,3,4],mem[5],ymm1[6,7]6435; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,2,2,2]6436; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm2 = ymm6[1,1],ymm10[1,1],ymm6[5,5],ymm10[5,5]6437; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6],ymm1[7]6438; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm2 = ymm14[0,0,0,0,4,4,4,4]6439; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm3 = ymm8[0,1,0,1,4,5,4,5]6440; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm3[0],ymm2[1],ymm3[2,3,4],ymm2[5],ymm3[6,7]6441; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[2,1,2,3]6442; AVX2-FCP-NEXT:    vbroadcastsd 16(%rax), %ymm36443; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1],ymm3[2,3],ymm2[4,5,6,7]6444; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2],ymm1[3,4,5,6],ymm2[7]6445; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6446; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload6447; AVX2-FCP-NEXT:    vbroadcastss %xmm0, %xmm16448; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload6449; AVX2-FCP-NEXT:    vbroadcastss %xmm6, %xmm26450; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]6451; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload6452; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload6453; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm2 = xmm4[0],xmm5[0],xmm4[1],xmm5[1]6454; AVX2-FCP-NEXT:    vpermps %ymm2, %ymm11, %ymm26455; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0,1],ymm1[2,3],ymm2[4,5,6,7]6456; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload6457; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload6458; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm2 = xmm8[0],xmm7[0],xmm8[1],xmm7[1]6459; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm2, %ymm0, %ymm26460; AVX2-FCP-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 16-byte Folded Reload6461; AVX2-FCP-NEXT:    vunpcklpd {{.*#+}} ymm2 = ymm2[0],ymm3[0],ymm2[2],ymm3[2]6462; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6],ymm1[7]6463; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6464; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm4[3,3],xmm5[3,3]6465; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} xmm2 = xmm6[2],xmm0[2],xmm6[3],xmm0[3]6466; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm16467; AVX2-FCP-NEXT:    vpermps %ymm2, %ymm11, %ymm26468; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6],ymm2[7]6469; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm2 = xmm7[2,2,2,2]6470; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm2 = xmm8[0,1,2],xmm2[3]6471; AVX2-FCP-NEXT:    vbroadcastsd 40(%rax), %ymm36472; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6,7]6473; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm2[2,3,4],ymm1[5,6,7]6474; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6475; AVX2-FCP-NEXT:    vpermilps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Folded Reload6476; AVX2-FCP-NEXT:    # ymm1 = mem[1,1,1,1,5,5,5,5]6477; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload6478; AVX2-FCP-NEXT:    # ymm1 = ymm1[0],mem[1],ymm1[2,3,4],mem[5],ymm1[6,7]6479; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,2,2,2]6480; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6481; AVX2-FCP-NEXT:    vshufps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm2 # 32-byte Folded Reload6482; AVX2-FCP-NEXT:    # ymm2 = ymm0[1,1],mem[1,1],ymm0[5,5],mem[5,5]6483; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6],ymm1[7]6484; AVX2-FCP-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload6485; AVX2-FCP-NEXT:    # ymm2 = mem[0,0,0,0,4,4,4,4]6486; AVX2-FCP-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Folded Reload6487; AVX2-FCP-NEXT:    # ymm3 = mem[0,1,0,1,4,5,4,5]6488; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm3[0],ymm2[1],ymm3[2,3,4],ymm2[5],ymm3[6,7]6489; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[2,1,2,3]6490; AVX2-FCP-NEXT:    vbroadcastsd 48(%rax), %ymm36491; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1],ymm3[2,3],ymm2[4,5,6,7]6492; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2],ymm1[3,4,5,6],ymm2[7]6493; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6494; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload6495; AVX2-FCP-NEXT:    vbroadcastss %xmm8, %xmm16496; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload6497; AVX2-FCP-NEXT:    vbroadcastss %xmm7, %xmm26498; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]6499; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload6500; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload6501; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm2 = xmm4[0],xmm0[0],xmm4[1],xmm0[1]6502; AVX2-FCP-NEXT:    vpermps %ymm2, %ymm11, %ymm26503; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0,1],ymm1[2,3],ymm2[4,5,6,7]6504; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload6505; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload6506; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm2 = xmm5[0],xmm6[0],xmm5[1],xmm6[1]6507; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm2, %ymm0, %ymm26508; AVX2-FCP-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 16-byte Folded Reload6509; AVX2-FCP-NEXT:    vunpcklpd {{.*#+}} ymm2 = ymm2[0],ymm3[0],ymm2[2],ymm3[2]6510; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6],ymm1[7]6511; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6512; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm4[3,3],xmm0[3,3]6513; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} xmm2 = xmm7[2],xmm8[2],xmm7[3],xmm8[3]6514; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm16515; AVX2-FCP-NEXT:    vpermps %ymm2, %ymm11, %ymm26516; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0,1,2,3,4],ymm1[5,6],ymm2[7]6517; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm2 = xmm6[2,2,2,2]6518; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm2 = xmm5[0,1,2],xmm2[3]6519; AVX2-FCP-NEXT:    vbroadcastsd 72(%rax), %ymm36520; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5,6,7]6521; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm2[2,3,4],ymm1[5,6,7]6522; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6523; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload6524; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm12[1,1,1,1,5,5,5,5]6525; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload6526; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm14[1],ymm1[2,3,4],ymm14[5],ymm1[6,7]6527; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,2,2,2]6528; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 32-byte Reload6529; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload6530; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm2 = ymm13[1,1],ymm10[1,1],ymm13[5,5],ymm10[5,5]6531; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3,4],ymm2[5,6],ymm1[7]6532; AVX2-FCP-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload6533; AVX2-FCP-NEXT:    # ymm2 = mem[0,0,0,0,4,4,4,4]6534; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm15 # 32-byte Reload6535; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm3 = ymm15[0,1,0,1,4,5,4,5]6536; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm3[0],ymm2[1],ymm3[2,3,4],ymm2[5],ymm3[6,7]6537; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[2,1,2,3]6538; AVX2-FCP-NEXT:    vbroadcastsd 80(%rax), %ymm36539; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1],ymm3[2,3],ymm2[4,5,6,7]6540; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1,2],ymm1[3,4,5,6],ymm2[7]6541; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6542; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload6543; AVX2-FCP-NEXT:    vbroadcastss %xmm7, %xmm16544; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload6545; AVX2-FCP-NEXT:    vbroadcastss %xmm6, %xmm36546; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm2 = xmm3[0],xmm1[0],xmm3[1],xmm1[1]6547; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload6548; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload6549; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm3 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]6550; AVX2-FCP-NEXT:    vpermps %ymm3, %ymm11, %ymm36551; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm8 = ymm3[0,1],ymm2[2,3],ymm3[4,5,6,7]6552; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload6553; AVX2-FCP-NEXT:    vmovaps (%rsp), %xmm2 # 16-byte Reload6554; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm3 = xmm5[0],xmm2[0],xmm5[1],xmm2[1]6555; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm36556; AVX2-FCP-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 16-byte Folded Reload6557; AVX2-FCP-NEXT:    vunpcklpd {{.*#+}} ymm3 = ymm3[0],ymm4[0],ymm3[2],ymm4[2]6558; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm8[0,1,2,3],ymm3[4,5,6],ymm8[7]6559; AVX2-FCP-NEXT:    vmovups %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill6560; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm3 = xmm0[3,3],xmm1[3,3]6561; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} xmm4 = xmm6[2],xmm7[2],xmm6[3],xmm7[3]6562; AVX2-FCP-NEXT:    vpermps %ymm4, %ymm11, %ymm46563; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm3, %ymm0, %ymm36564; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm7 = ymm4[0,1,2,3,4],ymm3[5,6],ymm4[7]6565; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm3 = xmm2[2,2,2,2]6566; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm3 = xmm5[0,1,2],xmm3[3]6567; AVX2-FCP-NEXT:    vbroadcastsd 104(%rax), %ymm46568; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3],ymm4[4,5,6,7]6569; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1],ymm3[2,3,4],ymm7[5,6,7]6570; AVX2-FCP-NEXT:    vbroadcastss 16(%rdx), %ymm36571; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6572; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm4 = ymm0[3,1,2,0,7,5,6,4]6573; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm4[0,1,2,3,4,5],ymm3[6],ymm4[7]6574; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload6575; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload6576; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} ymm4 = ymm1[0],ymm7[0],ymm1[1],ymm7[1],ymm1[4],ymm7[4],ymm1[5],ymm7[5]6577; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3],ymm4[4,5],ymm3[6,7]6578; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload6579; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm4 = xmm2[3,3],xmm9[3,3]6580; AVX2-FCP-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4, %xmm4 # 16-byte Folded Reload6581; AVX2-FCP-NEXT:    # xmm4 = xmm4[0,1,2],mem[3]6582; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm3[0],ymm4[1,2,3],ymm3[4,5,6,7]6583; AVX2-FCP-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm3 # 32-byte Folded Reload6584; AVX2-FCP-NEXT:    # ymm3 = ymm0[2],mem[2],ymm0[3],mem[3],ymm0[6],mem[6],ymm0[7],mem[7]6585; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm4 = ymm7[2],ymm1[2],ymm7[3],ymm1[3],ymm7[6],ymm1[6],ymm7[7],ymm1[7]6586; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm3 = ymm3[3,3,3,3]6587; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm4 = ymm4[3,3,3,3]6588; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm4[0,1,2],ymm3[3,4,5,6,7]6589; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6590; AVX2-FCP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm4 # 32-byte Folded Reload6591; AVX2-FCP-NEXT:    # ymm4 = ymm0[3,3],mem[3,3],ymm0[7,7],mem[7,7]6592; AVX2-FCP-NEXT:    vpermilps {{.*#+}} ymm7 = mem[2,3,2,3,6,7,6,7]6593; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm7[0],ymm4[1,2],ymm7[3,4],ymm4[5,6],ymm7[7]6594; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm4 = ymm4[2,1,2,3]6595; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm4[0],ymm3[1,2,3,4],ymm4[5,6,7]6596; AVX2-FCP-NEXT:    vbroadcastss 48(%rdx), %ymm46597; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6598; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm7 = ymm0[3,1,2,0,7,5,6,4]6599; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm7[0,1,2,3,4,5],ymm4[6],ymm7[7]6600; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload6601; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload6602; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} ymm7 = ymm9[0],ymm1[0],ymm9[1],ymm1[1],ymm9[4],ymm1[4],ymm9[5],ymm1[5]6603; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3],ymm7[4,5],ymm4[6,7]6604; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload6605; AVX2-FCP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm5, %xmm7 # 16-byte Folded Reload6606; AVX2-FCP-NEXT:    # xmm7 = xmm5[3,3],mem[3,3]6607; AVX2-FCP-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7, %xmm7 # 16-byte Folded Reload6608; AVX2-FCP-NEXT:    # xmm7 = xmm7[0,1,2],mem[3]6609; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0],ymm7[1,2,3],ymm4[4,5,6,7]6610; AVX2-FCP-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm7 # 32-byte Folded Reload6611; AVX2-FCP-NEXT:    # ymm7 = ymm0[2],mem[2],ymm0[3],mem[3],ymm0[6],mem[6],ymm0[7],mem[7]6612; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm8 = ymm1[2],ymm9[2],ymm1[3],ymm9[3],ymm1[6],ymm9[6],ymm1[7],ymm9[7]6613; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[3,3,3,3]6614; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm8 = ymm8[3,3,3,3]6615; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm7 = ymm8[0,1,2],ymm7[3,4,5,6,7]6616; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6617; AVX2-FCP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm8 # 32-byte Folded Reload6618; AVX2-FCP-NEXT:    # ymm8 = ymm0[3,3],mem[3,3],ymm0[7,7],mem[7,7]6619; AVX2-FCP-NEXT:    vpermilps {{.*#+}} ymm9 = mem[2,3,2,3,6,7,6,7]6620; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm8 = ymm9[0],ymm8[1,2],ymm9[3,4],ymm8[5,6],ymm9[7]6621; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm8 = ymm8[2,1,2,3]6622; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm7 = ymm8[0],ymm7[1,2,3,4],ymm8[5,6,7]6623; AVX2-FCP-NEXT:    vbroadcastss 80(%rdx), %ymm86624; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm9 = ymm10[3,1,2,0,7,5,6,4]6625; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm8 = ymm9[0,1,2,3,4,5],ymm8[6],ymm9[7]6626; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} ymm9 = ymm14[0],ymm12[0],ymm14[1],ymm12[1],ymm14[4],ymm12[4],ymm14[5],ymm12[5]6627; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0,1,2,3],ymm9[4,5],ymm8[6,7]6628; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload6629; AVX2-FCP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm9 # 16-byte Folded Reload6630; AVX2-FCP-NEXT:    # xmm9 = xmm0[3,3],mem[3,3]6631; AVX2-FCP-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9, %xmm9 # 16-byte Folded Reload6632; AVX2-FCP-NEXT:    # xmm9 = xmm9[0,1,2],mem[3]6633; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0],ymm9[1,2,3],ymm8[4,5,6,7]6634; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm9 = ymm10[2],ymm13[2],ymm10[3],ymm13[3],ymm10[6],ymm13[6],ymm10[7],ymm13[7]6635; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm10 = ymm12[2],ymm14[2],ymm12[3],ymm14[3],ymm12[6],ymm14[6],ymm12[7],ymm14[7]6636; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm9 = ymm9[3,3,3,3]6637; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm10 = ymm10[3,3,3,3]6638; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm9 = ymm10[0,1,2],ymm9[3,4,5,6,7]6639; AVX2-FCP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm15, %ymm10 # 32-byte Folded Reload6640; AVX2-FCP-NEXT:    # ymm10 = ymm15[3,3],mem[3,3],ymm15[7,7],mem[7,7]6641; AVX2-FCP-NEXT:    vpermilps {{.*#+}} ymm11 = mem[2,3,2,3,6,7,6,7]6642; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm10 = ymm11[0],ymm10[1,2],ymm11[3,4],ymm10[5,6],ymm11[7]6643; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm10 = ymm10[2,1,2,3]6644; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm9 = ymm10[0],ymm9[1,2,3,4],ymm10[5,6,7]6645; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax6646; AVX2-FCP-NEXT:    vmovaps %ymm9, 640(%rax)6647; AVX2-FCP-NEXT:    vmovaps %ymm8, 544(%rax)6648; AVX2-FCP-NEXT:    vmovaps %ymm7, 416(%rax)6649; AVX2-FCP-NEXT:    vmovaps %ymm4, 320(%rax)6650; AVX2-FCP-NEXT:    vmovaps %ymm3, 192(%rax)6651; AVX2-FCP-NEXT:    vmovaps %ymm2, 96(%rax)6652; AVX2-FCP-NEXT:    vmovaps %ymm6, 736(%rax)6653; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6654; AVX2-FCP-NEXT:    vmovaps %ymm0, 672(%rax)6655; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6656; AVX2-FCP-NEXT:    vmovaps %ymm0, 608(%rax)6657; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6658; AVX2-FCP-NEXT:    vmovaps %ymm0, 576(%rax)6659; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6660; AVX2-FCP-NEXT:    vmovaps %ymm0, 512(%rax)6661; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6662; AVX2-FCP-NEXT:    vmovaps %ymm0, 448(%rax)6663; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6664; AVX2-FCP-NEXT:    vmovaps %ymm0, 384(%rax)6665; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6666; AVX2-FCP-NEXT:    vmovaps %ymm0, 352(%rax)6667; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6668; AVX2-FCP-NEXT:    vmovaps %ymm0, 288(%rax)6669; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6670; AVX2-FCP-NEXT:    vmovaps %ymm0, 224(%rax)6671; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6672; AVX2-FCP-NEXT:    vmovaps %ymm0, 160(%rax)6673; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6674; AVX2-FCP-NEXT:    vmovaps %ymm0, 128(%rax)6675; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6676; AVX2-FCP-NEXT:    vmovaps %ymm0, 64(%rax)6677; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6678; AVX2-FCP-NEXT:    vmovaps %ymm0, (%rax)6679; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6680; AVX2-FCP-NEXT:    vmovaps %ymm0, 864(%rax)6681; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6682; AVX2-FCP-NEXT:    vmovaps %ymm0, 832(%rax)6683; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6684; AVX2-FCP-NEXT:    vmovaps %ymm0, 768(%rax)6685; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6686; AVX2-FCP-NEXT:    vmovaps %ymm0, 704(%rax)6687; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6688; AVX2-FCP-NEXT:    vmovaps %ymm0, 480(%rax)6689; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6690; AVX2-FCP-NEXT:    vmovaps %ymm0, 256(%rax)6691; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6692; AVX2-FCP-NEXT:    vmovaps %ymm0, 32(%rax)6693; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload6694; AVX2-FCP-NEXT:    vmovaps %ymm0, 800(%rax)6695; AVX2-FCP-NEXT:    addq $1416, %rsp # imm = 0x5886696; AVX2-FCP-NEXT:    vzeroupper6697; AVX2-FCP-NEXT:    retq6698;6699; AVX512-LABEL: store_i32_stride7_vf32:6700; AVX512:       # %bb.0:6701; AVX512-NEXT:    pushq %rax6702; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %rax6703; AVX512-NEXT:    vmovdqa64 (%rdi), %zmm146704; AVX512-NEXT:    vmovdqa64 64(%rdi), %zmm186705; AVX512-NEXT:    vmovdqa64 (%rsi), %zmm86706; AVX512-NEXT:    vmovdqa64 64(%rsi), %zmm126707; AVX512-NEXT:    vmovdqa64 (%rdx), %zmm16708; AVX512-NEXT:    vmovdqa64 64(%rdx), %zmm236709; AVX512-NEXT:    vmovdqa64 (%rcx), %zmm96710; AVX512-NEXT:    vmovdqa64 64(%rcx), %zmm136711; AVX512-NEXT:    vmovdqa64 (%r8), %zmm46712; AVX512-NEXT:    vmovdqa64 64(%r8), %zmm226713; AVX512-NEXT:    vmovdqa64 (%r9), %zmm106714; AVX512-NEXT:    vmovdqa64 64(%r9), %zmm266715; AVX512-NEXT:    vmovdqa64 (%rax), %zmm156716; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,0,14,30,0,0,0,0,0,15,31,0,0,0]6717; AVX512-NEXT:    vmovdqa64 %zmm23, %zmm06718; AVX512-NEXT:    vpermt2d %zmm13, %zmm21, %zmm06719; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,14,30,0,0,0,0,0,15,31,0,0,0,0,0]6720; AVX512-NEXT:    vmovdqa64 %zmm18, %zmm36721; AVX512-NEXT:    vpermt2d %zmm12, %zmm6, %zmm36722; AVX512-NEXT:    movw $6192, %cx # imm = 0x18306723; AVX512-NEXT:    kmovw %ecx, %k16724; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k1}6725; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,3,4,5,30,0,0,9,10,11,12,31,0,0]6726; AVX512-NEXT:    vpermi2d %zmm22, %zmm3, %zmm06727; AVX512-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill6728; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,0,0,0,12,28,0,0,0,0,0,13,29,0,0,0]6729; AVX512-NEXT:    vmovdqa64 %zmm18, %zmm06730; AVX512-NEXT:    vpermt2d %zmm12, %zmm20, %zmm06731; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [11,0,0,0,0,0,28,12,0,0,0,0,0,29,13,0]6732; AVX512-NEXT:    vmovdqa64 %zmm13, %zmm36733; AVX512-NEXT:    vpermt2d %zmm23, %zmm11, %zmm36734; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k1}6735; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,27,0,0,4,5,6,7,28,0,0,11,12,13,14,29]6736; AVX512-NEXT:    vpermi2d %zmm22, %zmm3, %zmm06737; AVX512-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill6738; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm28 = [0,0,0,16,0,0,0,0,0,1,17,0,0,0,0,0]6739; AVX512-NEXT:    vmovdqa64 %zmm1, %zmm06740; AVX512-NEXT:    vpermt2d %zmm9, %zmm28, %zmm06741; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm25 = [0,16,0,0,0,0,0,1,17,0,0,0,0,0,2,18]6742; AVX512-NEXT:    vmovdqa64 %zmm14, %zmm76743; AVX512-NEXT:    vpermt2d %zmm8, %zmm25, %zmm76744; AVX512-NEXT:    movw $1548, %cx # imm = 0x60C6745; AVX512-NEXT:    kmovw %ecx, %k26746; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm7 {%k2}6747; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]6748; AVX512-NEXT:    vmovdqa64 %zmm4, %zmm56749; AVX512-NEXT:    vpermt2d %zmm10, %zmm0, %zmm56750; AVX512-NEXT:    vmovdqa64 %zmm23, %zmm306751; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm17 = [9,0,0,0,0,0,26,10,0,0,0,0,0,27,11,0]6752; AVX512-NEXT:    vmovdqa64 %zmm12, %zmm166753; AVX512-NEXT:    vpermt2d %zmm18, %zmm17, %zmm166754; AVX512-NEXT:    vmovdqa64 %zmm23, %zmm276755; AVX512-NEXT:    vmovdqa64 %zmm18, %zmm36756; AVX512-NEXT:    vmovdqa64 %zmm23, %zmm316757; AVX512-NEXT:    vmovdqa64 %zmm18, %zmm246758; AVX512-NEXT:    vmovdqa64 %zmm23, %zmm196759; AVX512-NEXT:    vpermt2d %zmm13, %zmm28, %zmm236760; AVX512-NEXT:    vmovdqa64 %zmm18, %zmm296761; AVX512-NEXT:    vpermt2d %zmm12, %zmm25, %zmm186762; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,0,0,0,4,5,16,0,0,0,0,11,12,17,0,0]6763; AVX512-NEXT:    vpermt2d %zmm15, %zmm2, %zmm56764; AVX512-NEXT:    movw $14448, %cx # imm = 0x38706765; AVX512-NEXT:    vmovdqa32 %zmm23, %zmm18 {%k2}6766; AVX512-NEXT:    kmovw %ecx, %k26767; AVX512-NEXT:    vmovdqa32 %zmm5, %zmm7 {%k2}6768; AVX512-NEXT:    vmovdqa64 %zmm22, %zmm56769; AVX512-NEXT:    vmovdqa64 %zmm22, %zmm06770; AVX512-NEXT:    vmovdqa64 %zmm22, %zmm236771; AVX512-NEXT:    vmovdqa64 %zmm22, %zmm286772; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm25 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]6773; AVX512-NEXT:    vpermt2d %zmm26, %zmm25, %zmm226774; AVX512-NEXT:    vmovdqa64 64(%rax), %zmm256775; AVX512-NEXT:    vpermt2d %zmm25, %zmm2, %zmm226776; AVX512-NEXT:    vmovdqa32 %zmm22, %zmm18 {%k2}6777; AVX512-NEXT:    vpermi2d %zmm9, %zmm1, %zmm216778; AVX512-NEXT:    vpermi2d %zmm8, %zmm14, %zmm66779; AVX512-NEXT:    vmovdqa32 %zmm21, %zmm6 {%k1}6780; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [13,0,0,0,0,0,30,14,0,0,0,0,0,31,15,0]6781; AVX512-NEXT:    vpermi2d %zmm4, %zmm10, %zmm26782; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,29,0,0,0,0,6,7,30,0,0,0,0,13,14,31]6783; AVX512-NEXT:    vpermi2d %zmm15, %zmm2, %zmm216784; AVX512-NEXT:    movw $-7741, %ax # imm = 0xE1C36785; AVX512-NEXT:    kmovw %eax, %k26786; AVX512-NEXT:    vmovdqa32 %zmm21, %zmm6 {%k2}6787; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,9,25,0,0,0,0,0,10,26,0,0,0,0,0,11]6788; AVX512-NEXT:    vpermt2d %zmm13, %zmm2, %zmm306789; AVX512-NEXT:    movw $-31994, %ax # imm = 0x83066790; AVX512-NEXT:    kmovw %eax, %k26791; AVX512-NEXT:    vmovdqa32 %zmm30, %zmm16 {%k2}6792; AVX512-NEXT:    vpermi2d %zmm8, %zmm14, %zmm206793; AVX512-NEXT:    vpermi2d %zmm1, %zmm9, %zmm116794; AVX512-NEXT:    vmovdqa32 %zmm20, %zmm11 {%k1}6795; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,11,27,0,0,0,0,0,12,28,0,0,0,0,0,13]6796; AVX512-NEXT:    vpermi2d %zmm10, %zmm4, %zmm206797; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,1,2,27,0,0,0,0,8,9,28,0,0,0,0,15]6798; AVX512-NEXT:    vpermi2d %zmm15, %zmm20, %zmm216799; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,0,0,9,25,0,0,0,0,0,10,26,0,0,0,0]6800; AVX512-NEXT:    vpermt2d %zmm26, %zmm20, %zmm56801; AVX512-NEXT:    movw $-30962, %ax # imm = 0x870E6802; AVX512-NEXT:    kmovw %eax, %k16803; AVX512-NEXT:    vmovdqa32 %zmm21, %zmm11 {%k1}6804; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,3,4,25,0,0,0,0,10,11,26,0,0,0]6805; AVX512-NEXT:    vpermt2d %zmm25, %zmm21, %zmm56806; AVX512-NEXT:    movw $7224, %ax # imm = 0x1C386807; AVX512-NEXT:    kmovw %eax, %k16808; AVX512-NEXT:    vmovdqa32 %zmm5, %zmm16 {%k1}6809; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm22 = [0,0,0,7,23,0,0,0,0,0,8,24,0,0,0,0]6810; AVX512-NEXT:    vpermt2d %zmm13, %zmm22, %zmm276811; AVX512-NEXT:    vpermi2d %zmm9, %zmm1, %zmm26812; AVX512-NEXT:    vpermi2d %zmm14, %zmm8, %zmm176813; AVX512-NEXT:    vmovdqa32 %zmm2, %zmm17 {%k2}6814; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm5 = [0,7,23,0,0,0,0,0,8,24,0,0,0,0,0,9]6815; AVX512-NEXT:    vpermt2d %zmm12, %zmm5, %zmm36816; AVX512-NEXT:    movw $3096, %ax # imm = 0xC186817; AVX512-NEXT:    kmovw %eax, %k26818; AVX512-NEXT:    vmovdqa32 %zmm27, %zmm3 {%k2}6819; AVX512-NEXT:    vpermi2d %zmm10, %zmm4, %zmm206820; AVX512-NEXT:    vpermt2d %zmm15, %zmm21, %zmm206821; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,0,0,0,0,7,23,0,0,0,0,0,8,24,0,0]6822; AVX512-NEXT:    vpermt2d %zmm26, %zmm2, %zmm06823; AVX512-NEXT:    vmovdqa32 %zmm20, %zmm17 {%k1}6824; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [22,0,0,0,0,5,6,23,0,0,0,0,12,13,24,0]6825; AVX512-NEXT:    vpermt2d %zmm25, %zmm20, %zmm06826; AVX512-NEXT:    movw $28897, %ax # imm = 0x70E16827; AVX512-NEXT:    kmovw %eax, %k36828; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k3}6829; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,5,21,0,0,0,0,0,6,22,0,0]6830; AVX512-NEXT:    vpermt2d %zmm13, %zmm0, %zmm316831; AVX512-NEXT:    vpermi2d %zmm9, %zmm1, %zmm226832; AVX512-NEXT:    vpermi2d %zmm8, %zmm14, %zmm56833; AVX512-NEXT:    vmovdqa32 %zmm22, %zmm5 {%k2}6834; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,5,21,0,0,0,0,0,6,22,0,0,0,0]6835; AVX512-NEXT:    vpermt2d %zmm12, %zmm21, %zmm246836; AVX512-NEXT:    movw $12384, %ax # imm = 0x30606837; AVX512-NEXT:    kmovw %eax, %k16838; AVX512-NEXT:    vmovdqa32 %zmm31, %zmm24 {%k1}6839; AVX512-NEXT:    vpermi2d %zmm10, %zmm4, %zmm26840; AVX512-NEXT:    vpermt2d %zmm15, %zmm20, %zmm26841; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]6842; AVX512-NEXT:    vpermt2d %zmm26, %zmm20, %zmm236843; AVX512-NEXT:    vmovdqa32 %zmm2, %zmm5 {%k3}6844; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,1,20,0,0,0,0,7,8,21,0,0,0,0,14,15]6845; AVX512-NEXT:    vpermt2d %zmm25, %zmm2, %zmm236846; AVX512-NEXT:    movw $15480, %ax # imm = 0x3C786847; AVX512-NEXT:    kmovw %eax, %k26848; AVX512-NEXT:    vmovdqa32 %zmm24, %zmm23 {%k2}6849; AVX512-NEXT:    vpermi2d %zmm9, %zmm1, %zmm06850; AVX512-NEXT:    vpermi2d %zmm8, %zmm14, %zmm216851; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm21 {%k1}6852; AVX512-NEXT:    vpermi2d %zmm10, %zmm4, %zmm206853; AVX512-NEXT:    vpermt2d %zmm15, %zmm2, %zmm206854; AVX512-NEXT:    vmovdqa32 %zmm21, %zmm20 {%k2}6855; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,3,19,0,0,0,0,0,4,20,0,0]6856; AVX512-NEXT:    vpermt2d %zmm12, %zmm0, %zmm296857; AVX512-NEXT:    vpermt2d %zmm8, %zmm0, %zmm146858; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [2,18,0,0,0,0,0,3,19,0,0,0,0,0,4,20]6859; AVX512-NEXT:    vpermt2d %zmm13, %zmm0, %zmm196860; AVX512-NEXT:    vpermt2d %zmm9, %zmm0, %zmm16861; AVX512-NEXT:    vmovdqa32 %zmm29, %zmm19 {%k1}6862; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]6863; AVX512-NEXT:    vpermt2d %zmm10, %zmm0, %zmm46864; AVX512-NEXT:    vpermt2d %zmm26, %zmm0, %zmm286865; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,3,18,0,0,0,0,9,10,19,0,0,0,0]6866; AVX512-NEXT:    vpermt2d %zmm15, %zmm0, %zmm46867; AVX512-NEXT:    vpermt2d %zmm25, %zmm0, %zmm286868; AVX512-NEXT:    vmovdqa32 %zmm14, %zmm1 {%k1}6869; AVX512-NEXT:    movw $3612, %ax # imm = 0xE1C6870; AVX512-NEXT:    kmovw %eax, %k16871; AVX512-NEXT:    vmovdqa32 %zmm28, %zmm19 {%k1}6872; AVX512-NEXT:    vmovdqa32 %zmm4, %zmm1 {%k1}6873; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [29,0,2,3,4,5,6,30,0,9,10,11,12,13,31,0]6874; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload6875; AVX512-NEXT:    vpermi2d %zmm26, %zmm2, %zmm06876; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,1,27,0,4,5,6,7,8,28,0,11,12,13,14,15]6877; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm4 # 64-byte Reload6878; AVX512-NEXT:    vpermi2d %zmm26, %zmm4, %zmm26879; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [0,29,2,3,4,5,6,7,30,9,10,11,12,13,14,31]6880; AVX512-NEXT:    vpermi2d %zmm25, %zmm0, %zmm46881; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,1,2,27,4,5,6,7,8,9,28,11,12,13,14,15]6882; AVX512-NEXT:    vpermi2d %zmm25, %zmm2, %zmm06883; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %rax6884; AVX512-NEXT:    vmovdqa64 %zmm1, 64(%rax)6885; AVX512-NEXT:    vmovdqa64 %zmm20, 128(%rax)6886; AVX512-NEXT:    vmovdqa64 %zmm5, 192(%rax)6887; AVX512-NEXT:    vmovdqa64 %zmm17, 256(%rax)6888; AVX512-NEXT:    vmovdqa64 %zmm11, 320(%rax)6889; AVX512-NEXT:    vmovdqa64 %zmm6, 384(%rax)6890; AVX512-NEXT:    vmovdqa64 %zmm18, 448(%rax)6891; AVX512-NEXT:    vmovdqa64 %zmm19, 512(%rax)6892; AVX512-NEXT:    vmovdqa64 %zmm23, 576(%rax)6893; AVX512-NEXT:    vmovdqa64 %zmm3, 640(%rax)6894; AVX512-NEXT:    vmovdqa64 %zmm16, 704(%rax)6895; AVX512-NEXT:    vmovdqa64 %zmm7, (%rax)6896; AVX512-NEXT:    vmovdqa64 %zmm0, 768(%rax)6897; AVX512-NEXT:    vmovdqa64 %zmm4, 832(%rax)6898; AVX512-NEXT:    popq %rax6899; AVX512-NEXT:    vzeroupper6900; AVX512-NEXT:    retq6901;6902; AVX512-FCP-LABEL: store_i32_stride7_vf32:6903; AVX512-FCP:       # %bb.0:6904; AVX512-FCP-NEXT:    pushq %rax6905; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax6906; AVX512-FCP-NEXT:    vmovdqa64 (%rdi), %zmm146907; AVX512-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm186908; AVX512-FCP-NEXT:    vmovdqa64 (%rsi), %zmm86909; AVX512-FCP-NEXT:    vmovdqa64 64(%rsi), %zmm126910; AVX512-FCP-NEXT:    vmovdqa64 (%rdx), %zmm16911; AVX512-FCP-NEXT:    vmovdqa64 64(%rdx), %zmm236912; AVX512-FCP-NEXT:    vmovdqa64 (%rcx), %zmm96913; AVX512-FCP-NEXT:    vmovdqa64 64(%rcx), %zmm136914; AVX512-FCP-NEXT:    vmovdqa64 (%r8), %zmm46915; AVX512-FCP-NEXT:    vmovdqa64 64(%r8), %zmm226916; AVX512-FCP-NEXT:    vmovdqa64 (%r9), %zmm106917; AVX512-FCP-NEXT:    vmovdqa64 64(%r9), %zmm266918; AVX512-FCP-NEXT:    vmovdqa64 (%rax), %zmm156919; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,0,14,30,0,0,0,0,0,15,31,0,0,0]6920; AVX512-FCP-NEXT:    vmovdqa64 %zmm23, %zmm06921; AVX512-FCP-NEXT:    vpermt2d %zmm13, %zmm21, %zmm06922; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,14,30,0,0,0,0,0,15,31,0,0,0,0,0]6923; AVX512-FCP-NEXT:    vmovdqa64 %zmm18, %zmm36924; AVX512-FCP-NEXT:    vpermt2d %zmm12, %zmm6, %zmm36925; AVX512-FCP-NEXT:    movw $6192, %cx # imm = 0x18306926; AVX512-FCP-NEXT:    kmovw %ecx, %k16927; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k1}6928; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,3,4,5,30,0,0,9,10,11,12,31,0,0]6929; AVX512-FCP-NEXT:    vpermi2d %zmm22, %zmm3, %zmm06930; AVX512-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill6931; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,0,0,0,12,28,0,0,0,0,0,13,29,0,0,0]6932; AVX512-FCP-NEXT:    vmovdqa64 %zmm18, %zmm06933; AVX512-FCP-NEXT:    vpermt2d %zmm12, %zmm20, %zmm06934; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [11,0,0,0,0,0,28,12,0,0,0,0,0,29,13,0]6935; AVX512-FCP-NEXT:    vmovdqa64 %zmm13, %zmm36936; AVX512-FCP-NEXT:    vpermt2d %zmm23, %zmm11, %zmm36937; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k1}6938; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,27,0,0,4,5,6,7,28,0,0,11,12,13,14,29]6939; AVX512-FCP-NEXT:    vpermi2d %zmm22, %zmm3, %zmm06940; AVX512-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill6941; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm28 = [0,0,0,16,0,0,0,0,0,1,17,0,0,0,0,0]6942; AVX512-FCP-NEXT:    vmovdqa64 %zmm1, %zmm06943; AVX512-FCP-NEXT:    vpermt2d %zmm9, %zmm28, %zmm06944; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm25 = [0,16,0,0,0,0,0,1,17,0,0,0,0,0,2,18]6945; AVX512-FCP-NEXT:    vmovdqa64 %zmm14, %zmm76946; AVX512-FCP-NEXT:    vpermt2d %zmm8, %zmm25, %zmm76947; AVX512-FCP-NEXT:    movw $1548, %cx # imm = 0x60C6948; AVX512-FCP-NEXT:    kmovw %ecx, %k26949; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm7 {%k2}6950; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]6951; AVX512-FCP-NEXT:    vmovdqa64 %zmm4, %zmm56952; AVX512-FCP-NEXT:    vpermt2d %zmm10, %zmm0, %zmm56953; AVX512-FCP-NEXT:    vmovdqa64 %zmm23, %zmm306954; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm17 = [9,0,0,0,0,0,26,10,0,0,0,0,0,27,11,0]6955; AVX512-FCP-NEXT:    vmovdqa64 %zmm12, %zmm166956; AVX512-FCP-NEXT:    vpermt2d %zmm18, %zmm17, %zmm166957; AVX512-FCP-NEXT:    vmovdqa64 %zmm23, %zmm276958; AVX512-FCP-NEXT:    vmovdqa64 %zmm18, %zmm36959; AVX512-FCP-NEXT:    vmovdqa64 %zmm23, %zmm316960; AVX512-FCP-NEXT:    vmovdqa64 %zmm18, %zmm246961; AVX512-FCP-NEXT:    vmovdqa64 %zmm23, %zmm196962; AVX512-FCP-NEXT:    vpermt2d %zmm13, %zmm28, %zmm236963; AVX512-FCP-NEXT:    vmovdqa64 %zmm18, %zmm296964; AVX512-FCP-NEXT:    vpermt2d %zmm12, %zmm25, %zmm186965; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,0,0,0,4,5,16,0,0,0,0,11,12,17,0,0]6966; AVX512-FCP-NEXT:    vpermt2d %zmm15, %zmm2, %zmm56967; AVX512-FCP-NEXT:    movw $14448, %cx # imm = 0x38706968; AVX512-FCP-NEXT:    vmovdqa32 %zmm23, %zmm18 {%k2}6969; AVX512-FCP-NEXT:    kmovw %ecx, %k26970; AVX512-FCP-NEXT:    vmovdqa32 %zmm5, %zmm7 {%k2}6971; AVX512-FCP-NEXT:    vmovdqa64 %zmm22, %zmm56972; AVX512-FCP-NEXT:    vmovdqa64 %zmm22, %zmm06973; AVX512-FCP-NEXT:    vmovdqa64 %zmm22, %zmm236974; AVX512-FCP-NEXT:    vmovdqa64 %zmm22, %zmm286975; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm25 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]6976; AVX512-FCP-NEXT:    vpermt2d %zmm26, %zmm25, %zmm226977; AVX512-FCP-NEXT:    vmovdqa64 64(%rax), %zmm256978; AVX512-FCP-NEXT:    vpermt2d %zmm25, %zmm2, %zmm226979; AVX512-FCP-NEXT:    vmovdqa32 %zmm22, %zmm18 {%k2}6980; AVX512-FCP-NEXT:    vpermi2d %zmm9, %zmm1, %zmm216981; AVX512-FCP-NEXT:    vpermi2d %zmm8, %zmm14, %zmm66982; AVX512-FCP-NEXT:    vmovdqa32 %zmm21, %zmm6 {%k1}6983; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [13,0,0,0,0,0,30,14,0,0,0,0,0,31,15,0]6984; AVX512-FCP-NEXT:    vpermi2d %zmm4, %zmm10, %zmm26985; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,29,0,0,0,0,6,7,30,0,0,0,0,13,14,31]6986; AVX512-FCP-NEXT:    vpermi2d %zmm15, %zmm2, %zmm216987; AVX512-FCP-NEXT:    movw $-7741, %ax # imm = 0xE1C36988; AVX512-FCP-NEXT:    kmovw %eax, %k26989; AVX512-FCP-NEXT:    vmovdqa32 %zmm21, %zmm6 {%k2}6990; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,9,25,0,0,0,0,0,10,26,0,0,0,0,0,11]6991; AVX512-FCP-NEXT:    vpermt2d %zmm13, %zmm2, %zmm306992; AVX512-FCP-NEXT:    movw $-31994, %ax # imm = 0x83066993; AVX512-FCP-NEXT:    kmovw %eax, %k26994; AVX512-FCP-NEXT:    vmovdqa32 %zmm30, %zmm16 {%k2}6995; AVX512-FCP-NEXT:    vpermi2d %zmm8, %zmm14, %zmm206996; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm9, %zmm116997; AVX512-FCP-NEXT:    vmovdqa32 %zmm20, %zmm11 {%k1}6998; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,11,27,0,0,0,0,0,12,28,0,0,0,0,0,13]6999; AVX512-FCP-NEXT:    vpermi2d %zmm10, %zmm4, %zmm207000; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,1,2,27,0,0,0,0,8,9,28,0,0,0,0,15]7001; AVX512-FCP-NEXT:    vpermi2d %zmm15, %zmm20, %zmm217002; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,0,0,9,25,0,0,0,0,0,10,26,0,0,0,0]7003; AVX512-FCP-NEXT:    vpermt2d %zmm26, %zmm20, %zmm57004; AVX512-FCP-NEXT:    movw $-30962, %ax # imm = 0x870E7005; AVX512-FCP-NEXT:    kmovw %eax, %k17006; AVX512-FCP-NEXT:    vmovdqa32 %zmm21, %zmm11 {%k1}7007; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,3,4,25,0,0,0,0,10,11,26,0,0,0]7008; AVX512-FCP-NEXT:    vpermt2d %zmm25, %zmm21, %zmm57009; AVX512-FCP-NEXT:    movw $7224, %ax # imm = 0x1C387010; AVX512-FCP-NEXT:    kmovw %eax, %k17011; AVX512-FCP-NEXT:    vmovdqa32 %zmm5, %zmm16 {%k1}7012; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm22 = [0,0,0,7,23,0,0,0,0,0,8,24,0,0,0,0]7013; AVX512-FCP-NEXT:    vpermt2d %zmm13, %zmm22, %zmm277014; AVX512-FCP-NEXT:    vpermi2d %zmm9, %zmm1, %zmm27015; AVX512-FCP-NEXT:    vpermi2d %zmm14, %zmm8, %zmm177016; AVX512-FCP-NEXT:    vmovdqa32 %zmm2, %zmm17 {%k2}7017; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm5 = [0,7,23,0,0,0,0,0,8,24,0,0,0,0,0,9]7018; AVX512-FCP-NEXT:    vpermt2d %zmm12, %zmm5, %zmm37019; AVX512-FCP-NEXT:    movw $3096, %ax # imm = 0xC187020; AVX512-FCP-NEXT:    kmovw %eax, %k27021; AVX512-FCP-NEXT:    vmovdqa32 %zmm27, %zmm3 {%k2}7022; AVX512-FCP-NEXT:    vpermi2d %zmm10, %zmm4, %zmm207023; AVX512-FCP-NEXT:    vpermt2d %zmm15, %zmm21, %zmm207024; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,0,0,0,0,7,23,0,0,0,0,0,8,24,0,0]7025; AVX512-FCP-NEXT:    vpermt2d %zmm26, %zmm2, %zmm07026; AVX512-FCP-NEXT:    vmovdqa32 %zmm20, %zmm17 {%k1}7027; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [22,0,0,0,0,5,6,23,0,0,0,0,12,13,24,0]7028; AVX512-FCP-NEXT:    vpermt2d %zmm25, %zmm20, %zmm07029; AVX512-FCP-NEXT:    movw $28897, %ax # imm = 0x70E17030; AVX512-FCP-NEXT:    kmovw %eax, %k37031; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k3}7032; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,5,21,0,0,0,0,0,6,22,0,0]7033; AVX512-FCP-NEXT:    vpermt2d %zmm13, %zmm0, %zmm317034; AVX512-FCP-NEXT:    vpermi2d %zmm9, %zmm1, %zmm227035; AVX512-FCP-NEXT:    vpermi2d %zmm8, %zmm14, %zmm57036; AVX512-FCP-NEXT:    vmovdqa32 %zmm22, %zmm5 {%k2}7037; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,5,21,0,0,0,0,0,6,22,0,0,0,0]7038; AVX512-FCP-NEXT:    vpermt2d %zmm12, %zmm21, %zmm247039; AVX512-FCP-NEXT:    movw $12384, %ax # imm = 0x30607040; AVX512-FCP-NEXT:    kmovw %eax, %k17041; AVX512-FCP-NEXT:    vmovdqa32 %zmm31, %zmm24 {%k1}7042; AVX512-FCP-NEXT:    vpermi2d %zmm10, %zmm4, %zmm27043; AVX512-FCP-NEXT:    vpermt2d %zmm15, %zmm20, %zmm27044; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]7045; AVX512-FCP-NEXT:    vpermt2d %zmm26, %zmm20, %zmm237046; AVX512-FCP-NEXT:    vmovdqa32 %zmm2, %zmm5 {%k3}7047; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,1,20,0,0,0,0,7,8,21,0,0,0,0,14,15]7048; AVX512-FCP-NEXT:    vpermt2d %zmm25, %zmm2, %zmm237049; AVX512-FCP-NEXT:    movw $15480, %ax # imm = 0x3C787050; AVX512-FCP-NEXT:    kmovw %eax, %k27051; AVX512-FCP-NEXT:    vmovdqa32 %zmm24, %zmm23 {%k2}7052; AVX512-FCP-NEXT:    vpermi2d %zmm9, %zmm1, %zmm07053; AVX512-FCP-NEXT:    vpermi2d %zmm8, %zmm14, %zmm217054; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm21 {%k1}7055; AVX512-FCP-NEXT:    vpermi2d %zmm10, %zmm4, %zmm207056; AVX512-FCP-NEXT:    vpermt2d %zmm15, %zmm2, %zmm207057; AVX512-FCP-NEXT:    vmovdqa32 %zmm21, %zmm20 {%k2}7058; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,3,19,0,0,0,0,0,4,20,0,0]7059; AVX512-FCP-NEXT:    vpermt2d %zmm12, %zmm0, %zmm297060; AVX512-FCP-NEXT:    vpermt2d %zmm8, %zmm0, %zmm147061; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [2,18,0,0,0,0,0,3,19,0,0,0,0,0,4,20]7062; AVX512-FCP-NEXT:    vpermt2d %zmm13, %zmm0, %zmm197063; AVX512-FCP-NEXT:    vpermt2d %zmm9, %zmm0, %zmm17064; AVX512-FCP-NEXT:    vmovdqa32 %zmm29, %zmm19 {%k1}7065; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]7066; AVX512-FCP-NEXT:    vpermt2d %zmm10, %zmm0, %zmm47067; AVX512-FCP-NEXT:    vpermt2d %zmm26, %zmm0, %zmm287068; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,3,18,0,0,0,0,9,10,19,0,0,0,0]7069; AVX512-FCP-NEXT:    vpermt2d %zmm15, %zmm0, %zmm47070; AVX512-FCP-NEXT:    vpermt2d %zmm25, %zmm0, %zmm287071; AVX512-FCP-NEXT:    vmovdqa32 %zmm14, %zmm1 {%k1}7072; AVX512-FCP-NEXT:    movw $3612, %ax # imm = 0xE1C7073; AVX512-FCP-NEXT:    kmovw %eax, %k17074; AVX512-FCP-NEXT:    vmovdqa32 %zmm28, %zmm19 {%k1}7075; AVX512-FCP-NEXT:    vmovdqa32 %zmm4, %zmm1 {%k1}7076; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [29,0,2,3,4,5,6,30,0,9,10,11,12,13,31,0]7077; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload7078; AVX512-FCP-NEXT:    vpermi2d %zmm26, %zmm2, %zmm07079; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,1,27,0,4,5,6,7,8,28,0,11,12,13,14,15]7080; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm4 # 64-byte Reload7081; AVX512-FCP-NEXT:    vpermi2d %zmm26, %zmm4, %zmm27082; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [0,29,2,3,4,5,6,7,30,9,10,11,12,13,14,31]7083; AVX512-FCP-NEXT:    vpermi2d %zmm25, %zmm0, %zmm47084; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,1,2,27,4,5,6,7,8,9,28,11,12,13,14,15]7085; AVX512-FCP-NEXT:    vpermi2d %zmm25, %zmm2, %zmm07086; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax7087; AVX512-FCP-NEXT:    vmovdqa64 %zmm1, 64(%rax)7088; AVX512-FCP-NEXT:    vmovdqa64 %zmm20, 128(%rax)7089; AVX512-FCP-NEXT:    vmovdqa64 %zmm5, 192(%rax)7090; AVX512-FCP-NEXT:    vmovdqa64 %zmm17, 256(%rax)7091; AVX512-FCP-NEXT:    vmovdqa64 %zmm11, 320(%rax)7092; AVX512-FCP-NEXT:    vmovdqa64 %zmm6, 384(%rax)7093; AVX512-FCP-NEXT:    vmovdqa64 %zmm18, 448(%rax)7094; AVX512-FCP-NEXT:    vmovdqa64 %zmm19, 512(%rax)7095; AVX512-FCP-NEXT:    vmovdqa64 %zmm23, 576(%rax)7096; AVX512-FCP-NEXT:    vmovdqa64 %zmm3, 640(%rax)7097; AVX512-FCP-NEXT:    vmovdqa64 %zmm16, 704(%rax)7098; AVX512-FCP-NEXT:    vmovdqa64 %zmm7, (%rax)7099; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, 768(%rax)7100; AVX512-FCP-NEXT:    vmovdqa64 %zmm4, 832(%rax)7101; AVX512-FCP-NEXT:    popq %rax7102; AVX512-FCP-NEXT:    vzeroupper7103; AVX512-FCP-NEXT:    retq7104;7105; AVX512DQ-LABEL: store_i32_stride7_vf32:7106; AVX512DQ:       # %bb.0:7107; AVX512DQ-NEXT:    pushq %rax7108; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %rax7109; AVX512DQ-NEXT:    vmovdqa64 (%rdi), %zmm147110; AVX512DQ-NEXT:    vmovdqa64 64(%rdi), %zmm187111; AVX512DQ-NEXT:    vmovdqa64 (%rsi), %zmm87112; AVX512DQ-NEXT:    vmovdqa64 64(%rsi), %zmm127113; AVX512DQ-NEXT:    vmovdqa64 (%rdx), %zmm17114; AVX512DQ-NEXT:    vmovdqa64 64(%rdx), %zmm237115; AVX512DQ-NEXT:    vmovdqa64 (%rcx), %zmm97116; AVX512DQ-NEXT:    vmovdqa64 64(%rcx), %zmm137117; AVX512DQ-NEXT:    vmovdqa64 (%r8), %zmm47118; AVX512DQ-NEXT:    vmovdqa64 64(%r8), %zmm227119; AVX512DQ-NEXT:    vmovdqa64 (%r9), %zmm107120; AVX512DQ-NEXT:    vmovdqa64 64(%r9), %zmm267121; AVX512DQ-NEXT:    vmovdqa64 (%rax), %zmm157122; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,0,14,30,0,0,0,0,0,15,31,0,0,0]7123; AVX512DQ-NEXT:    vmovdqa64 %zmm23, %zmm07124; AVX512DQ-NEXT:    vpermt2d %zmm13, %zmm21, %zmm07125; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,14,30,0,0,0,0,0,15,31,0,0,0,0,0]7126; AVX512DQ-NEXT:    vmovdqa64 %zmm18, %zmm37127; AVX512DQ-NEXT:    vpermt2d %zmm12, %zmm6, %zmm37128; AVX512DQ-NEXT:    movw $6192, %cx # imm = 0x18307129; AVX512DQ-NEXT:    kmovw %ecx, %k17130; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k1}7131; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,3,4,5,30,0,0,9,10,11,12,31,0,0]7132; AVX512DQ-NEXT:    vpermi2d %zmm22, %zmm3, %zmm07133; AVX512DQ-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill7134; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,0,0,0,12,28,0,0,0,0,0,13,29,0,0,0]7135; AVX512DQ-NEXT:    vmovdqa64 %zmm18, %zmm07136; AVX512DQ-NEXT:    vpermt2d %zmm12, %zmm20, %zmm07137; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [11,0,0,0,0,0,28,12,0,0,0,0,0,29,13,0]7138; AVX512DQ-NEXT:    vmovdqa64 %zmm13, %zmm37139; AVX512DQ-NEXT:    vpermt2d %zmm23, %zmm11, %zmm37140; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k1}7141; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,27,0,0,4,5,6,7,28,0,0,11,12,13,14,29]7142; AVX512DQ-NEXT:    vpermi2d %zmm22, %zmm3, %zmm07143; AVX512DQ-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill7144; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm28 = [0,0,0,16,0,0,0,0,0,1,17,0,0,0,0,0]7145; AVX512DQ-NEXT:    vmovdqa64 %zmm1, %zmm07146; AVX512DQ-NEXT:    vpermt2d %zmm9, %zmm28, %zmm07147; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm25 = [0,16,0,0,0,0,0,1,17,0,0,0,0,0,2,18]7148; AVX512DQ-NEXT:    vmovdqa64 %zmm14, %zmm77149; AVX512DQ-NEXT:    vpermt2d %zmm8, %zmm25, %zmm77150; AVX512DQ-NEXT:    movw $1548, %cx # imm = 0x60C7151; AVX512DQ-NEXT:    kmovw %ecx, %k27152; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm7 {%k2}7153; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]7154; AVX512DQ-NEXT:    vmovdqa64 %zmm4, %zmm57155; AVX512DQ-NEXT:    vpermt2d %zmm10, %zmm0, %zmm57156; AVX512DQ-NEXT:    vmovdqa64 %zmm23, %zmm307157; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm17 = [9,0,0,0,0,0,26,10,0,0,0,0,0,27,11,0]7158; AVX512DQ-NEXT:    vmovdqa64 %zmm12, %zmm167159; AVX512DQ-NEXT:    vpermt2d %zmm18, %zmm17, %zmm167160; AVX512DQ-NEXT:    vmovdqa64 %zmm23, %zmm277161; AVX512DQ-NEXT:    vmovdqa64 %zmm18, %zmm37162; AVX512DQ-NEXT:    vmovdqa64 %zmm23, %zmm317163; AVX512DQ-NEXT:    vmovdqa64 %zmm18, %zmm247164; AVX512DQ-NEXT:    vmovdqa64 %zmm23, %zmm197165; AVX512DQ-NEXT:    vpermt2d %zmm13, %zmm28, %zmm237166; AVX512DQ-NEXT:    vmovdqa64 %zmm18, %zmm297167; AVX512DQ-NEXT:    vpermt2d %zmm12, %zmm25, %zmm187168; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,0,0,0,4,5,16,0,0,0,0,11,12,17,0,0]7169; AVX512DQ-NEXT:    vpermt2d %zmm15, %zmm2, %zmm57170; AVX512DQ-NEXT:    movw $14448, %cx # imm = 0x38707171; AVX512DQ-NEXT:    vmovdqa32 %zmm23, %zmm18 {%k2}7172; AVX512DQ-NEXT:    kmovw %ecx, %k27173; AVX512DQ-NEXT:    vmovdqa32 %zmm5, %zmm7 {%k2}7174; AVX512DQ-NEXT:    vmovdqa64 %zmm22, %zmm57175; AVX512DQ-NEXT:    vmovdqa64 %zmm22, %zmm07176; AVX512DQ-NEXT:    vmovdqa64 %zmm22, %zmm237177; AVX512DQ-NEXT:    vmovdqa64 %zmm22, %zmm287178; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm25 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]7179; AVX512DQ-NEXT:    vpermt2d %zmm26, %zmm25, %zmm227180; AVX512DQ-NEXT:    vmovdqa64 64(%rax), %zmm257181; AVX512DQ-NEXT:    vpermt2d %zmm25, %zmm2, %zmm227182; AVX512DQ-NEXT:    vmovdqa32 %zmm22, %zmm18 {%k2}7183; AVX512DQ-NEXT:    vpermi2d %zmm9, %zmm1, %zmm217184; AVX512DQ-NEXT:    vpermi2d %zmm8, %zmm14, %zmm67185; AVX512DQ-NEXT:    vmovdqa32 %zmm21, %zmm6 {%k1}7186; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [13,0,0,0,0,0,30,14,0,0,0,0,0,31,15,0]7187; AVX512DQ-NEXT:    vpermi2d %zmm4, %zmm10, %zmm27188; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,29,0,0,0,0,6,7,30,0,0,0,0,13,14,31]7189; AVX512DQ-NEXT:    vpermi2d %zmm15, %zmm2, %zmm217190; AVX512DQ-NEXT:    movw $-7741, %ax # imm = 0xE1C37191; AVX512DQ-NEXT:    kmovw %eax, %k27192; AVX512DQ-NEXT:    vmovdqa32 %zmm21, %zmm6 {%k2}7193; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,9,25,0,0,0,0,0,10,26,0,0,0,0,0,11]7194; AVX512DQ-NEXT:    vpermt2d %zmm13, %zmm2, %zmm307195; AVX512DQ-NEXT:    movw $-31994, %ax # imm = 0x83067196; AVX512DQ-NEXT:    kmovw %eax, %k27197; AVX512DQ-NEXT:    vmovdqa32 %zmm30, %zmm16 {%k2}7198; AVX512DQ-NEXT:    vpermi2d %zmm8, %zmm14, %zmm207199; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm9, %zmm117200; AVX512DQ-NEXT:    vmovdqa32 %zmm20, %zmm11 {%k1}7201; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,11,27,0,0,0,0,0,12,28,0,0,0,0,0,13]7202; AVX512DQ-NEXT:    vpermi2d %zmm10, %zmm4, %zmm207203; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,1,2,27,0,0,0,0,8,9,28,0,0,0,0,15]7204; AVX512DQ-NEXT:    vpermi2d %zmm15, %zmm20, %zmm217205; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,0,0,9,25,0,0,0,0,0,10,26,0,0,0,0]7206; AVX512DQ-NEXT:    vpermt2d %zmm26, %zmm20, %zmm57207; AVX512DQ-NEXT:    movw $-30962, %ax # imm = 0x870E7208; AVX512DQ-NEXT:    kmovw %eax, %k17209; AVX512DQ-NEXT:    vmovdqa32 %zmm21, %zmm11 {%k1}7210; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,3,4,25,0,0,0,0,10,11,26,0,0,0]7211; AVX512DQ-NEXT:    vpermt2d %zmm25, %zmm21, %zmm57212; AVX512DQ-NEXT:    movw $7224, %ax # imm = 0x1C387213; AVX512DQ-NEXT:    kmovw %eax, %k17214; AVX512DQ-NEXT:    vmovdqa32 %zmm5, %zmm16 {%k1}7215; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm22 = [0,0,0,7,23,0,0,0,0,0,8,24,0,0,0,0]7216; AVX512DQ-NEXT:    vpermt2d %zmm13, %zmm22, %zmm277217; AVX512DQ-NEXT:    vpermi2d %zmm9, %zmm1, %zmm27218; AVX512DQ-NEXT:    vpermi2d %zmm14, %zmm8, %zmm177219; AVX512DQ-NEXT:    vmovdqa32 %zmm2, %zmm17 {%k2}7220; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm5 = [0,7,23,0,0,0,0,0,8,24,0,0,0,0,0,9]7221; AVX512DQ-NEXT:    vpermt2d %zmm12, %zmm5, %zmm37222; AVX512DQ-NEXT:    movw $3096, %ax # imm = 0xC187223; AVX512DQ-NEXT:    kmovw %eax, %k27224; AVX512DQ-NEXT:    vmovdqa32 %zmm27, %zmm3 {%k2}7225; AVX512DQ-NEXT:    vpermi2d %zmm10, %zmm4, %zmm207226; AVX512DQ-NEXT:    vpermt2d %zmm15, %zmm21, %zmm207227; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,0,0,0,0,7,23,0,0,0,0,0,8,24,0,0]7228; AVX512DQ-NEXT:    vpermt2d %zmm26, %zmm2, %zmm07229; AVX512DQ-NEXT:    vmovdqa32 %zmm20, %zmm17 {%k1}7230; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [22,0,0,0,0,5,6,23,0,0,0,0,12,13,24,0]7231; AVX512DQ-NEXT:    vpermt2d %zmm25, %zmm20, %zmm07232; AVX512DQ-NEXT:    movw $28897, %ax # imm = 0x70E17233; AVX512DQ-NEXT:    kmovw %eax, %k37234; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k3}7235; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,5,21,0,0,0,0,0,6,22,0,0]7236; AVX512DQ-NEXT:    vpermt2d %zmm13, %zmm0, %zmm317237; AVX512DQ-NEXT:    vpermi2d %zmm9, %zmm1, %zmm227238; AVX512DQ-NEXT:    vpermi2d %zmm8, %zmm14, %zmm57239; AVX512DQ-NEXT:    vmovdqa32 %zmm22, %zmm5 {%k2}7240; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,5,21,0,0,0,0,0,6,22,0,0,0,0]7241; AVX512DQ-NEXT:    vpermt2d %zmm12, %zmm21, %zmm247242; AVX512DQ-NEXT:    movw $12384, %ax # imm = 0x30607243; AVX512DQ-NEXT:    kmovw %eax, %k17244; AVX512DQ-NEXT:    vmovdqa32 %zmm31, %zmm24 {%k1}7245; AVX512DQ-NEXT:    vpermi2d %zmm10, %zmm4, %zmm27246; AVX512DQ-NEXT:    vpermt2d %zmm15, %zmm20, %zmm27247; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]7248; AVX512DQ-NEXT:    vpermt2d %zmm26, %zmm20, %zmm237249; AVX512DQ-NEXT:    vmovdqa32 %zmm2, %zmm5 {%k3}7250; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,1,20,0,0,0,0,7,8,21,0,0,0,0,14,15]7251; AVX512DQ-NEXT:    vpermt2d %zmm25, %zmm2, %zmm237252; AVX512DQ-NEXT:    movw $15480, %ax # imm = 0x3C787253; AVX512DQ-NEXT:    kmovw %eax, %k27254; AVX512DQ-NEXT:    vmovdqa32 %zmm24, %zmm23 {%k2}7255; AVX512DQ-NEXT:    vpermi2d %zmm9, %zmm1, %zmm07256; AVX512DQ-NEXT:    vpermi2d %zmm8, %zmm14, %zmm217257; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm21 {%k1}7258; AVX512DQ-NEXT:    vpermi2d %zmm10, %zmm4, %zmm207259; AVX512DQ-NEXT:    vpermt2d %zmm15, %zmm2, %zmm207260; AVX512DQ-NEXT:    vmovdqa32 %zmm21, %zmm20 {%k2}7261; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,3,19,0,0,0,0,0,4,20,0,0]7262; AVX512DQ-NEXT:    vpermt2d %zmm12, %zmm0, %zmm297263; AVX512DQ-NEXT:    vpermt2d %zmm8, %zmm0, %zmm147264; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [2,18,0,0,0,0,0,3,19,0,0,0,0,0,4,20]7265; AVX512DQ-NEXT:    vpermt2d %zmm13, %zmm0, %zmm197266; AVX512DQ-NEXT:    vpermt2d %zmm9, %zmm0, %zmm17267; AVX512DQ-NEXT:    vmovdqa32 %zmm29, %zmm19 {%k1}7268; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]7269; AVX512DQ-NEXT:    vpermt2d %zmm10, %zmm0, %zmm47270; AVX512DQ-NEXT:    vpermt2d %zmm26, %zmm0, %zmm287271; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,3,18,0,0,0,0,9,10,19,0,0,0,0]7272; AVX512DQ-NEXT:    vpermt2d %zmm15, %zmm0, %zmm47273; AVX512DQ-NEXT:    vpermt2d %zmm25, %zmm0, %zmm287274; AVX512DQ-NEXT:    vmovdqa32 %zmm14, %zmm1 {%k1}7275; AVX512DQ-NEXT:    movw $3612, %ax # imm = 0xE1C7276; AVX512DQ-NEXT:    kmovw %eax, %k17277; AVX512DQ-NEXT:    vmovdqa32 %zmm28, %zmm19 {%k1}7278; AVX512DQ-NEXT:    vmovdqa32 %zmm4, %zmm1 {%k1}7279; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [29,0,2,3,4,5,6,30,0,9,10,11,12,13,31,0]7280; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload7281; AVX512DQ-NEXT:    vpermi2d %zmm26, %zmm2, %zmm07282; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,1,27,0,4,5,6,7,8,28,0,11,12,13,14,15]7283; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm4 # 64-byte Reload7284; AVX512DQ-NEXT:    vpermi2d %zmm26, %zmm4, %zmm27285; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [0,29,2,3,4,5,6,7,30,9,10,11,12,13,14,31]7286; AVX512DQ-NEXT:    vpermi2d %zmm25, %zmm0, %zmm47287; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,1,2,27,4,5,6,7,8,9,28,11,12,13,14,15]7288; AVX512DQ-NEXT:    vpermi2d %zmm25, %zmm2, %zmm07289; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %rax7290; AVX512DQ-NEXT:    vmovdqa64 %zmm1, 64(%rax)7291; AVX512DQ-NEXT:    vmovdqa64 %zmm20, 128(%rax)7292; AVX512DQ-NEXT:    vmovdqa64 %zmm5, 192(%rax)7293; AVX512DQ-NEXT:    vmovdqa64 %zmm17, 256(%rax)7294; AVX512DQ-NEXT:    vmovdqa64 %zmm11, 320(%rax)7295; AVX512DQ-NEXT:    vmovdqa64 %zmm6, 384(%rax)7296; AVX512DQ-NEXT:    vmovdqa64 %zmm18, 448(%rax)7297; AVX512DQ-NEXT:    vmovdqa64 %zmm19, 512(%rax)7298; AVX512DQ-NEXT:    vmovdqa64 %zmm23, 576(%rax)7299; AVX512DQ-NEXT:    vmovdqa64 %zmm3, 640(%rax)7300; AVX512DQ-NEXT:    vmovdqa64 %zmm16, 704(%rax)7301; AVX512DQ-NEXT:    vmovdqa64 %zmm7, (%rax)7302; AVX512DQ-NEXT:    vmovdqa64 %zmm0, 768(%rax)7303; AVX512DQ-NEXT:    vmovdqa64 %zmm4, 832(%rax)7304; AVX512DQ-NEXT:    popq %rax7305; AVX512DQ-NEXT:    vzeroupper7306; AVX512DQ-NEXT:    retq7307;7308; AVX512DQ-FCP-LABEL: store_i32_stride7_vf32:7309; AVX512DQ-FCP:       # %bb.0:7310; AVX512DQ-FCP-NEXT:    pushq %rax7311; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax7312; AVX512DQ-FCP-NEXT:    vmovdqa64 (%rdi), %zmm147313; AVX512DQ-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm187314; AVX512DQ-FCP-NEXT:    vmovdqa64 (%rsi), %zmm87315; AVX512DQ-FCP-NEXT:    vmovdqa64 64(%rsi), %zmm127316; AVX512DQ-FCP-NEXT:    vmovdqa64 (%rdx), %zmm17317; AVX512DQ-FCP-NEXT:    vmovdqa64 64(%rdx), %zmm237318; AVX512DQ-FCP-NEXT:    vmovdqa64 (%rcx), %zmm97319; AVX512DQ-FCP-NEXT:    vmovdqa64 64(%rcx), %zmm137320; AVX512DQ-FCP-NEXT:    vmovdqa64 (%r8), %zmm47321; AVX512DQ-FCP-NEXT:    vmovdqa64 64(%r8), %zmm227322; AVX512DQ-FCP-NEXT:    vmovdqa64 (%r9), %zmm107323; AVX512DQ-FCP-NEXT:    vmovdqa64 64(%r9), %zmm267324; AVX512DQ-FCP-NEXT:    vmovdqa64 (%rax), %zmm157325; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,0,14,30,0,0,0,0,0,15,31,0,0,0]7326; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm23, %zmm07327; AVX512DQ-FCP-NEXT:    vpermt2d %zmm13, %zmm21, %zmm07328; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,14,30,0,0,0,0,0,15,31,0,0,0,0,0]7329; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm18, %zmm37330; AVX512DQ-FCP-NEXT:    vpermt2d %zmm12, %zmm6, %zmm37331; AVX512DQ-FCP-NEXT:    movw $6192, %cx # imm = 0x18307332; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k17333; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k1}7334; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,3,4,5,30,0,0,9,10,11,12,31,0,0]7335; AVX512DQ-FCP-NEXT:    vpermi2d %zmm22, %zmm3, %zmm07336; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill7337; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,0,0,0,12,28,0,0,0,0,0,13,29,0,0,0]7338; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm18, %zmm07339; AVX512DQ-FCP-NEXT:    vpermt2d %zmm12, %zmm20, %zmm07340; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [11,0,0,0,0,0,28,12,0,0,0,0,0,29,13,0]7341; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm13, %zmm37342; AVX512DQ-FCP-NEXT:    vpermt2d %zmm23, %zmm11, %zmm37343; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k1}7344; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,27,0,0,4,5,6,7,28,0,0,11,12,13,14,29]7345; AVX512DQ-FCP-NEXT:    vpermi2d %zmm22, %zmm3, %zmm07346; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill7347; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm28 = [0,0,0,16,0,0,0,0,0,1,17,0,0,0,0,0]7348; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm1, %zmm07349; AVX512DQ-FCP-NEXT:    vpermt2d %zmm9, %zmm28, %zmm07350; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm25 = [0,16,0,0,0,0,0,1,17,0,0,0,0,0,2,18]7351; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm14, %zmm77352; AVX512DQ-FCP-NEXT:    vpermt2d %zmm8, %zmm25, %zmm77353; AVX512DQ-FCP-NEXT:    movw $1548, %cx # imm = 0x60C7354; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k27355; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm7 {%k2}7356; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]7357; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm4, %zmm57358; AVX512DQ-FCP-NEXT:    vpermt2d %zmm10, %zmm0, %zmm57359; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm23, %zmm307360; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm17 = [9,0,0,0,0,0,26,10,0,0,0,0,0,27,11,0]7361; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm12, %zmm167362; AVX512DQ-FCP-NEXT:    vpermt2d %zmm18, %zmm17, %zmm167363; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm23, %zmm277364; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm18, %zmm37365; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm23, %zmm317366; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm18, %zmm247367; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm23, %zmm197368; AVX512DQ-FCP-NEXT:    vpermt2d %zmm13, %zmm28, %zmm237369; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm18, %zmm297370; AVX512DQ-FCP-NEXT:    vpermt2d %zmm12, %zmm25, %zmm187371; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,0,0,0,4,5,16,0,0,0,0,11,12,17,0,0]7372; AVX512DQ-FCP-NEXT:    vpermt2d %zmm15, %zmm2, %zmm57373; AVX512DQ-FCP-NEXT:    movw $14448, %cx # imm = 0x38707374; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm23, %zmm18 {%k2}7375; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k27376; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm5, %zmm7 {%k2}7377; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm22, %zmm57378; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm22, %zmm07379; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm22, %zmm237380; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm22, %zmm287381; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm25 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]7382; AVX512DQ-FCP-NEXT:    vpermt2d %zmm26, %zmm25, %zmm227383; AVX512DQ-FCP-NEXT:    vmovdqa64 64(%rax), %zmm257384; AVX512DQ-FCP-NEXT:    vpermt2d %zmm25, %zmm2, %zmm227385; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm22, %zmm18 {%k2}7386; AVX512DQ-FCP-NEXT:    vpermi2d %zmm9, %zmm1, %zmm217387; AVX512DQ-FCP-NEXT:    vpermi2d %zmm8, %zmm14, %zmm67388; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm21, %zmm6 {%k1}7389; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [13,0,0,0,0,0,30,14,0,0,0,0,0,31,15,0]7390; AVX512DQ-FCP-NEXT:    vpermi2d %zmm4, %zmm10, %zmm27391; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,29,0,0,0,0,6,7,30,0,0,0,0,13,14,31]7392; AVX512DQ-FCP-NEXT:    vpermi2d %zmm15, %zmm2, %zmm217393; AVX512DQ-FCP-NEXT:    movw $-7741, %ax # imm = 0xE1C37394; AVX512DQ-FCP-NEXT:    kmovw %eax, %k27395; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm21, %zmm6 {%k2}7396; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,9,25,0,0,0,0,0,10,26,0,0,0,0,0,11]7397; AVX512DQ-FCP-NEXT:    vpermt2d %zmm13, %zmm2, %zmm307398; AVX512DQ-FCP-NEXT:    movw $-31994, %ax # imm = 0x83067399; AVX512DQ-FCP-NEXT:    kmovw %eax, %k27400; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm30, %zmm16 {%k2}7401; AVX512DQ-FCP-NEXT:    vpermi2d %zmm8, %zmm14, %zmm207402; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm9, %zmm117403; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm20, %zmm11 {%k1}7404; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,11,27,0,0,0,0,0,12,28,0,0,0,0,0,13]7405; AVX512DQ-FCP-NEXT:    vpermi2d %zmm10, %zmm4, %zmm207406; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,1,2,27,0,0,0,0,8,9,28,0,0,0,0,15]7407; AVX512DQ-FCP-NEXT:    vpermi2d %zmm15, %zmm20, %zmm217408; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,0,0,9,25,0,0,0,0,0,10,26,0,0,0,0]7409; AVX512DQ-FCP-NEXT:    vpermt2d %zmm26, %zmm20, %zmm57410; AVX512DQ-FCP-NEXT:    movw $-30962, %ax # imm = 0x870E7411; AVX512DQ-FCP-NEXT:    kmovw %eax, %k17412; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm21, %zmm11 {%k1}7413; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,3,4,25,0,0,0,0,10,11,26,0,0,0]7414; AVX512DQ-FCP-NEXT:    vpermt2d %zmm25, %zmm21, %zmm57415; AVX512DQ-FCP-NEXT:    movw $7224, %ax # imm = 0x1C387416; AVX512DQ-FCP-NEXT:    kmovw %eax, %k17417; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm5, %zmm16 {%k1}7418; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm22 = [0,0,0,7,23,0,0,0,0,0,8,24,0,0,0,0]7419; AVX512DQ-FCP-NEXT:    vpermt2d %zmm13, %zmm22, %zmm277420; AVX512DQ-FCP-NEXT:    vpermi2d %zmm9, %zmm1, %zmm27421; AVX512DQ-FCP-NEXT:    vpermi2d %zmm14, %zmm8, %zmm177422; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm2, %zmm17 {%k2}7423; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm5 = [0,7,23,0,0,0,0,0,8,24,0,0,0,0,0,9]7424; AVX512DQ-FCP-NEXT:    vpermt2d %zmm12, %zmm5, %zmm37425; AVX512DQ-FCP-NEXT:    movw $3096, %ax # imm = 0xC187426; AVX512DQ-FCP-NEXT:    kmovw %eax, %k27427; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm27, %zmm3 {%k2}7428; AVX512DQ-FCP-NEXT:    vpermi2d %zmm10, %zmm4, %zmm207429; AVX512DQ-FCP-NEXT:    vpermt2d %zmm15, %zmm21, %zmm207430; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,0,0,0,0,7,23,0,0,0,0,0,8,24,0,0]7431; AVX512DQ-FCP-NEXT:    vpermt2d %zmm26, %zmm2, %zmm07432; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm20, %zmm17 {%k1}7433; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [22,0,0,0,0,5,6,23,0,0,0,0,12,13,24,0]7434; AVX512DQ-FCP-NEXT:    vpermt2d %zmm25, %zmm20, %zmm07435; AVX512DQ-FCP-NEXT:    movw $28897, %ax # imm = 0x70E17436; AVX512DQ-FCP-NEXT:    kmovw %eax, %k37437; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k3}7438; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,5,21,0,0,0,0,0,6,22,0,0]7439; AVX512DQ-FCP-NEXT:    vpermt2d %zmm13, %zmm0, %zmm317440; AVX512DQ-FCP-NEXT:    vpermi2d %zmm9, %zmm1, %zmm227441; AVX512DQ-FCP-NEXT:    vpermi2d %zmm8, %zmm14, %zmm57442; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm22, %zmm5 {%k2}7443; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,5,21,0,0,0,0,0,6,22,0,0,0,0]7444; AVX512DQ-FCP-NEXT:    vpermt2d %zmm12, %zmm21, %zmm247445; AVX512DQ-FCP-NEXT:    movw $12384, %ax # imm = 0x30607446; AVX512DQ-FCP-NEXT:    kmovw %eax, %k17447; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm31, %zmm24 {%k1}7448; AVX512DQ-FCP-NEXT:    vpermi2d %zmm10, %zmm4, %zmm27449; AVX512DQ-FCP-NEXT:    vpermt2d %zmm15, %zmm20, %zmm27450; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]7451; AVX512DQ-FCP-NEXT:    vpermt2d %zmm26, %zmm20, %zmm237452; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm2, %zmm5 {%k3}7453; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,1,20,0,0,0,0,7,8,21,0,0,0,0,14,15]7454; AVX512DQ-FCP-NEXT:    vpermt2d %zmm25, %zmm2, %zmm237455; AVX512DQ-FCP-NEXT:    movw $15480, %ax # imm = 0x3C787456; AVX512DQ-FCP-NEXT:    kmovw %eax, %k27457; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm24, %zmm23 {%k2}7458; AVX512DQ-FCP-NEXT:    vpermi2d %zmm9, %zmm1, %zmm07459; AVX512DQ-FCP-NEXT:    vpermi2d %zmm8, %zmm14, %zmm217460; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm21 {%k1}7461; AVX512DQ-FCP-NEXT:    vpermi2d %zmm10, %zmm4, %zmm207462; AVX512DQ-FCP-NEXT:    vpermt2d %zmm15, %zmm2, %zmm207463; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm21, %zmm20 {%k2}7464; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,3,19,0,0,0,0,0,4,20,0,0]7465; AVX512DQ-FCP-NEXT:    vpermt2d %zmm12, %zmm0, %zmm297466; AVX512DQ-FCP-NEXT:    vpermt2d %zmm8, %zmm0, %zmm147467; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [2,18,0,0,0,0,0,3,19,0,0,0,0,0,4,20]7468; AVX512DQ-FCP-NEXT:    vpermt2d %zmm13, %zmm0, %zmm197469; AVX512DQ-FCP-NEXT:    vpermt2d %zmm9, %zmm0, %zmm17470; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm29, %zmm19 {%k1}7471; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]7472; AVX512DQ-FCP-NEXT:    vpermt2d %zmm10, %zmm0, %zmm47473; AVX512DQ-FCP-NEXT:    vpermt2d %zmm26, %zmm0, %zmm287474; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,3,18,0,0,0,0,9,10,19,0,0,0,0]7475; AVX512DQ-FCP-NEXT:    vpermt2d %zmm15, %zmm0, %zmm47476; AVX512DQ-FCP-NEXT:    vpermt2d %zmm25, %zmm0, %zmm287477; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm14, %zmm1 {%k1}7478; AVX512DQ-FCP-NEXT:    movw $3612, %ax # imm = 0xE1C7479; AVX512DQ-FCP-NEXT:    kmovw %eax, %k17480; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm28, %zmm19 {%k1}7481; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm4, %zmm1 {%k1}7482; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [29,0,2,3,4,5,6,30,0,9,10,11,12,13,31,0]7483; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload7484; AVX512DQ-FCP-NEXT:    vpermi2d %zmm26, %zmm2, %zmm07485; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,1,27,0,4,5,6,7,8,28,0,11,12,13,14,15]7486; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm4 # 64-byte Reload7487; AVX512DQ-FCP-NEXT:    vpermi2d %zmm26, %zmm4, %zmm27488; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [0,29,2,3,4,5,6,7,30,9,10,11,12,13,14,31]7489; AVX512DQ-FCP-NEXT:    vpermi2d %zmm25, %zmm0, %zmm47490; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,1,2,27,4,5,6,7,8,9,28,11,12,13,14,15]7491; AVX512DQ-FCP-NEXT:    vpermi2d %zmm25, %zmm2, %zmm07492; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax7493; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm1, 64(%rax)7494; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm20, 128(%rax)7495; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm5, 192(%rax)7496; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm17, 256(%rax)7497; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm11, 320(%rax)7498; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm6, 384(%rax)7499; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm18, 448(%rax)7500; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm19, 512(%rax)7501; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm23, 576(%rax)7502; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm3, 640(%rax)7503; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm16, 704(%rax)7504; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm7, (%rax)7505; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, 768(%rax)7506; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm4, 832(%rax)7507; AVX512DQ-FCP-NEXT:    popq %rax7508; AVX512DQ-FCP-NEXT:    vzeroupper7509; AVX512DQ-FCP-NEXT:    retq7510;7511; AVX512BW-LABEL: store_i32_stride7_vf32:7512; AVX512BW:       # %bb.0:7513; AVX512BW-NEXT:    pushq %rax7514; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax7515; AVX512BW-NEXT:    vmovdqa64 (%rdi), %zmm147516; AVX512BW-NEXT:    vmovdqa64 64(%rdi), %zmm187517; AVX512BW-NEXT:    vmovdqa64 (%rsi), %zmm87518; AVX512BW-NEXT:    vmovdqa64 64(%rsi), %zmm127519; AVX512BW-NEXT:    vmovdqa64 (%rdx), %zmm17520; AVX512BW-NEXT:    vmovdqa64 64(%rdx), %zmm237521; AVX512BW-NEXT:    vmovdqa64 (%rcx), %zmm97522; AVX512BW-NEXT:    vmovdqa64 64(%rcx), %zmm137523; AVX512BW-NEXT:    vmovdqa64 (%r8), %zmm47524; AVX512BW-NEXT:    vmovdqa64 64(%r8), %zmm227525; AVX512BW-NEXT:    vmovdqa64 (%r9), %zmm107526; AVX512BW-NEXT:    vmovdqa64 64(%r9), %zmm267527; AVX512BW-NEXT:    vmovdqa64 (%rax), %zmm157528; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,0,14,30,0,0,0,0,0,15,31,0,0,0]7529; AVX512BW-NEXT:    vmovdqa64 %zmm23, %zmm07530; AVX512BW-NEXT:    vpermt2d %zmm13, %zmm21, %zmm07531; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,14,30,0,0,0,0,0,15,31,0,0,0,0,0]7532; AVX512BW-NEXT:    vmovdqa64 %zmm18, %zmm37533; AVX512BW-NEXT:    vpermt2d %zmm12, %zmm6, %zmm37534; AVX512BW-NEXT:    movw $6192, %cx # imm = 0x18307535; AVX512BW-NEXT:    kmovd %ecx, %k17536; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k1}7537; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,3,4,5,30,0,0,9,10,11,12,31,0,0]7538; AVX512BW-NEXT:    vpermi2d %zmm22, %zmm3, %zmm07539; AVX512BW-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill7540; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,0,0,0,12,28,0,0,0,0,0,13,29,0,0,0]7541; AVX512BW-NEXT:    vmovdqa64 %zmm18, %zmm07542; AVX512BW-NEXT:    vpermt2d %zmm12, %zmm20, %zmm07543; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [11,0,0,0,0,0,28,12,0,0,0,0,0,29,13,0]7544; AVX512BW-NEXT:    vmovdqa64 %zmm13, %zmm37545; AVX512BW-NEXT:    vpermt2d %zmm23, %zmm11, %zmm37546; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k1}7547; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,27,0,0,4,5,6,7,28,0,0,11,12,13,14,29]7548; AVX512BW-NEXT:    vpermi2d %zmm22, %zmm3, %zmm07549; AVX512BW-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill7550; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm28 = [0,0,0,16,0,0,0,0,0,1,17,0,0,0,0,0]7551; AVX512BW-NEXT:    vmovdqa64 %zmm1, %zmm07552; AVX512BW-NEXT:    vpermt2d %zmm9, %zmm28, %zmm07553; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm25 = [0,16,0,0,0,0,0,1,17,0,0,0,0,0,2,18]7554; AVX512BW-NEXT:    vmovdqa64 %zmm14, %zmm77555; AVX512BW-NEXT:    vpermt2d %zmm8, %zmm25, %zmm77556; AVX512BW-NEXT:    movw $1548, %cx # imm = 0x60C7557; AVX512BW-NEXT:    kmovd %ecx, %k27558; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm7 {%k2}7559; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]7560; AVX512BW-NEXT:    vmovdqa64 %zmm4, %zmm57561; AVX512BW-NEXT:    vpermt2d %zmm10, %zmm0, %zmm57562; AVX512BW-NEXT:    vmovdqa64 %zmm23, %zmm307563; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm17 = [9,0,0,0,0,0,26,10,0,0,0,0,0,27,11,0]7564; AVX512BW-NEXT:    vmovdqa64 %zmm12, %zmm167565; AVX512BW-NEXT:    vpermt2d %zmm18, %zmm17, %zmm167566; AVX512BW-NEXT:    vmovdqa64 %zmm23, %zmm277567; AVX512BW-NEXT:    vmovdqa64 %zmm18, %zmm37568; AVX512BW-NEXT:    vmovdqa64 %zmm23, %zmm317569; AVX512BW-NEXT:    vmovdqa64 %zmm18, %zmm247570; AVX512BW-NEXT:    vmovdqa64 %zmm23, %zmm197571; AVX512BW-NEXT:    vpermt2d %zmm13, %zmm28, %zmm237572; AVX512BW-NEXT:    vmovdqa64 %zmm18, %zmm297573; AVX512BW-NEXT:    vpermt2d %zmm12, %zmm25, %zmm187574; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,0,0,0,4,5,16,0,0,0,0,11,12,17,0,0]7575; AVX512BW-NEXT:    vpermt2d %zmm15, %zmm2, %zmm57576; AVX512BW-NEXT:    movw $14448, %cx # imm = 0x38707577; AVX512BW-NEXT:    vmovdqa32 %zmm23, %zmm18 {%k2}7578; AVX512BW-NEXT:    kmovd %ecx, %k27579; AVX512BW-NEXT:    vmovdqa32 %zmm5, %zmm7 {%k2}7580; AVX512BW-NEXT:    vmovdqa64 %zmm22, %zmm57581; AVX512BW-NEXT:    vmovdqa64 %zmm22, %zmm07582; AVX512BW-NEXT:    vmovdqa64 %zmm22, %zmm237583; AVX512BW-NEXT:    vmovdqa64 %zmm22, %zmm287584; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm25 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]7585; AVX512BW-NEXT:    vpermt2d %zmm26, %zmm25, %zmm227586; AVX512BW-NEXT:    vmovdqa64 64(%rax), %zmm257587; AVX512BW-NEXT:    vpermt2d %zmm25, %zmm2, %zmm227588; AVX512BW-NEXT:    vmovdqa32 %zmm22, %zmm18 {%k2}7589; AVX512BW-NEXT:    vpermi2d %zmm9, %zmm1, %zmm217590; AVX512BW-NEXT:    vpermi2d %zmm8, %zmm14, %zmm67591; AVX512BW-NEXT:    vmovdqa32 %zmm21, %zmm6 {%k1}7592; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [13,0,0,0,0,0,30,14,0,0,0,0,0,31,15,0]7593; AVX512BW-NEXT:    vpermi2d %zmm4, %zmm10, %zmm27594; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,29,0,0,0,0,6,7,30,0,0,0,0,13,14,31]7595; AVX512BW-NEXT:    vpermi2d %zmm15, %zmm2, %zmm217596; AVX512BW-NEXT:    movw $-7741, %ax # imm = 0xE1C37597; AVX512BW-NEXT:    kmovd %eax, %k27598; AVX512BW-NEXT:    vmovdqa32 %zmm21, %zmm6 {%k2}7599; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,9,25,0,0,0,0,0,10,26,0,0,0,0,0,11]7600; AVX512BW-NEXT:    vpermt2d %zmm13, %zmm2, %zmm307601; AVX512BW-NEXT:    movw $-31994, %ax # imm = 0x83067602; AVX512BW-NEXT:    kmovd %eax, %k27603; AVX512BW-NEXT:    vmovdqa32 %zmm30, %zmm16 {%k2}7604; AVX512BW-NEXT:    vpermi2d %zmm8, %zmm14, %zmm207605; AVX512BW-NEXT:    vpermi2d %zmm1, %zmm9, %zmm117606; AVX512BW-NEXT:    vmovdqa32 %zmm20, %zmm11 {%k1}7607; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,11,27,0,0,0,0,0,12,28,0,0,0,0,0,13]7608; AVX512BW-NEXT:    vpermi2d %zmm10, %zmm4, %zmm207609; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,1,2,27,0,0,0,0,8,9,28,0,0,0,0,15]7610; AVX512BW-NEXT:    vpermi2d %zmm15, %zmm20, %zmm217611; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,0,0,9,25,0,0,0,0,0,10,26,0,0,0,0]7612; AVX512BW-NEXT:    vpermt2d %zmm26, %zmm20, %zmm57613; AVX512BW-NEXT:    movw $-30962, %ax # imm = 0x870E7614; AVX512BW-NEXT:    kmovd %eax, %k17615; AVX512BW-NEXT:    vmovdqa32 %zmm21, %zmm11 {%k1}7616; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,3,4,25,0,0,0,0,10,11,26,0,0,0]7617; AVX512BW-NEXT:    vpermt2d %zmm25, %zmm21, %zmm57618; AVX512BW-NEXT:    movw $7224, %ax # imm = 0x1C387619; AVX512BW-NEXT:    kmovd %eax, %k17620; AVX512BW-NEXT:    vmovdqa32 %zmm5, %zmm16 {%k1}7621; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm22 = [0,0,0,7,23,0,0,0,0,0,8,24,0,0,0,0]7622; AVX512BW-NEXT:    vpermt2d %zmm13, %zmm22, %zmm277623; AVX512BW-NEXT:    vpermi2d %zmm9, %zmm1, %zmm27624; AVX512BW-NEXT:    vpermi2d %zmm14, %zmm8, %zmm177625; AVX512BW-NEXT:    vmovdqa32 %zmm2, %zmm17 {%k2}7626; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm5 = [0,7,23,0,0,0,0,0,8,24,0,0,0,0,0,9]7627; AVX512BW-NEXT:    vpermt2d %zmm12, %zmm5, %zmm37628; AVX512BW-NEXT:    movw $3096, %ax # imm = 0xC187629; AVX512BW-NEXT:    kmovd %eax, %k27630; AVX512BW-NEXT:    vmovdqa32 %zmm27, %zmm3 {%k2}7631; AVX512BW-NEXT:    vpermi2d %zmm10, %zmm4, %zmm207632; AVX512BW-NEXT:    vpermt2d %zmm15, %zmm21, %zmm207633; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,0,0,0,0,7,23,0,0,0,0,0,8,24,0,0]7634; AVX512BW-NEXT:    vpermt2d %zmm26, %zmm2, %zmm07635; AVX512BW-NEXT:    vmovdqa32 %zmm20, %zmm17 {%k1}7636; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [22,0,0,0,0,5,6,23,0,0,0,0,12,13,24,0]7637; AVX512BW-NEXT:    vpermt2d %zmm25, %zmm20, %zmm07638; AVX512BW-NEXT:    movw $28897, %ax # imm = 0x70E17639; AVX512BW-NEXT:    kmovd %eax, %k37640; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k3}7641; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,5,21,0,0,0,0,0,6,22,0,0]7642; AVX512BW-NEXT:    vpermt2d %zmm13, %zmm0, %zmm317643; AVX512BW-NEXT:    vpermi2d %zmm9, %zmm1, %zmm227644; AVX512BW-NEXT:    vpermi2d %zmm8, %zmm14, %zmm57645; AVX512BW-NEXT:    vmovdqa32 %zmm22, %zmm5 {%k2}7646; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,5,21,0,0,0,0,0,6,22,0,0,0,0]7647; AVX512BW-NEXT:    vpermt2d %zmm12, %zmm21, %zmm247648; AVX512BW-NEXT:    movw $12384, %ax # imm = 0x30607649; AVX512BW-NEXT:    kmovd %eax, %k17650; AVX512BW-NEXT:    vmovdqa32 %zmm31, %zmm24 {%k1}7651; AVX512BW-NEXT:    vpermi2d %zmm10, %zmm4, %zmm27652; AVX512BW-NEXT:    vpermt2d %zmm15, %zmm20, %zmm27653; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]7654; AVX512BW-NEXT:    vpermt2d %zmm26, %zmm20, %zmm237655; AVX512BW-NEXT:    vmovdqa32 %zmm2, %zmm5 {%k3}7656; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,1,20,0,0,0,0,7,8,21,0,0,0,0,14,15]7657; AVX512BW-NEXT:    vpermt2d %zmm25, %zmm2, %zmm237658; AVX512BW-NEXT:    movw $15480, %ax # imm = 0x3C787659; AVX512BW-NEXT:    kmovd %eax, %k27660; AVX512BW-NEXT:    vmovdqa32 %zmm24, %zmm23 {%k2}7661; AVX512BW-NEXT:    vpermi2d %zmm9, %zmm1, %zmm07662; AVX512BW-NEXT:    vpermi2d %zmm8, %zmm14, %zmm217663; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm21 {%k1}7664; AVX512BW-NEXT:    vpermi2d %zmm10, %zmm4, %zmm207665; AVX512BW-NEXT:    vpermt2d %zmm15, %zmm2, %zmm207666; AVX512BW-NEXT:    vmovdqa32 %zmm21, %zmm20 {%k2}7667; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,3,19,0,0,0,0,0,4,20,0,0]7668; AVX512BW-NEXT:    vpermt2d %zmm12, %zmm0, %zmm297669; AVX512BW-NEXT:    vpermt2d %zmm8, %zmm0, %zmm147670; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [2,18,0,0,0,0,0,3,19,0,0,0,0,0,4,20]7671; AVX512BW-NEXT:    vpermt2d %zmm13, %zmm0, %zmm197672; AVX512BW-NEXT:    vpermt2d %zmm9, %zmm0, %zmm17673; AVX512BW-NEXT:    vmovdqa32 %zmm29, %zmm19 {%k1}7674; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]7675; AVX512BW-NEXT:    vpermt2d %zmm10, %zmm0, %zmm47676; AVX512BW-NEXT:    vpermt2d %zmm26, %zmm0, %zmm287677; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,3,18,0,0,0,0,9,10,19,0,0,0,0]7678; AVX512BW-NEXT:    vpermt2d %zmm15, %zmm0, %zmm47679; AVX512BW-NEXT:    vpermt2d %zmm25, %zmm0, %zmm287680; AVX512BW-NEXT:    vmovdqa32 %zmm14, %zmm1 {%k1}7681; AVX512BW-NEXT:    movw $3612, %ax # imm = 0xE1C7682; AVX512BW-NEXT:    kmovd %eax, %k17683; AVX512BW-NEXT:    vmovdqa32 %zmm28, %zmm19 {%k1}7684; AVX512BW-NEXT:    vmovdqa32 %zmm4, %zmm1 {%k1}7685; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [29,0,2,3,4,5,6,30,0,9,10,11,12,13,31,0]7686; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload7687; AVX512BW-NEXT:    vpermi2d %zmm26, %zmm2, %zmm07688; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,1,27,0,4,5,6,7,8,28,0,11,12,13,14,15]7689; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm4 # 64-byte Reload7690; AVX512BW-NEXT:    vpermi2d %zmm26, %zmm4, %zmm27691; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [0,29,2,3,4,5,6,7,30,9,10,11,12,13,14,31]7692; AVX512BW-NEXT:    vpermi2d %zmm25, %zmm0, %zmm47693; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,1,2,27,4,5,6,7,8,9,28,11,12,13,14,15]7694; AVX512BW-NEXT:    vpermi2d %zmm25, %zmm2, %zmm07695; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax7696; AVX512BW-NEXT:    vmovdqa64 %zmm1, 64(%rax)7697; AVX512BW-NEXT:    vmovdqa64 %zmm20, 128(%rax)7698; AVX512BW-NEXT:    vmovdqa64 %zmm5, 192(%rax)7699; AVX512BW-NEXT:    vmovdqa64 %zmm17, 256(%rax)7700; AVX512BW-NEXT:    vmovdqa64 %zmm11, 320(%rax)7701; AVX512BW-NEXT:    vmovdqa64 %zmm6, 384(%rax)7702; AVX512BW-NEXT:    vmovdqa64 %zmm18, 448(%rax)7703; AVX512BW-NEXT:    vmovdqa64 %zmm19, 512(%rax)7704; AVX512BW-NEXT:    vmovdqa64 %zmm23, 576(%rax)7705; AVX512BW-NEXT:    vmovdqa64 %zmm3, 640(%rax)7706; AVX512BW-NEXT:    vmovdqa64 %zmm16, 704(%rax)7707; AVX512BW-NEXT:    vmovdqa64 %zmm7, (%rax)7708; AVX512BW-NEXT:    vmovdqa64 %zmm0, 768(%rax)7709; AVX512BW-NEXT:    vmovdqa64 %zmm4, 832(%rax)7710; AVX512BW-NEXT:    popq %rax7711; AVX512BW-NEXT:    vzeroupper7712; AVX512BW-NEXT:    retq7713;7714; AVX512BW-FCP-LABEL: store_i32_stride7_vf32:7715; AVX512BW-FCP:       # %bb.0:7716; AVX512BW-FCP-NEXT:    pushq %rax7717; AVX512BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax7718; AVX512BW-FCP-NEXT:    vmovdqa64 (%rdi), %zmm147719; AVX512BW-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm187720; AVX512BW-FCP-NEXT:    vmovdqa64 (%rsi), %zmm87721; AVX512BW-FCP-NEXT:    vmovdqa64 64(%rsi), %zmm127722; AVX512BW-FCP-NEXT:    vmovdqa64 (%rdx), %zmm17723; AVX512BW-FCP-NEXT:    vmovdqa64 64(%rdx), %zmm237724; AVX512BW-FCP-NEXT:    vmovdqa64 (%rcx), %zmm97725; AVX512BW-FCP-NEXT:    vmovdqa64 64(%rcx), %zmm137726; AVX512BW-FCP-NEXT:    vmovdqa64 (%r8), %zmm47727; AVX512BW-FCP-NEXT:    vmovdqa64 64(%r8), %zmm227728; AVX512BW-FCP-NEXT:    vmovdqa64 (%r9), %zmm107729; AVX512BW-FCP-NEXT:    vmovdqa64 64(%r9), %zmm267730; AVX512BW-FCP-NEXT:    vmovdqa64 (%rax), %zmm157731; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,0,14,30,0,0,0,0,0,15,31,0,0,0]7732; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm23, %zmm07733; AVX512BW-FCP-NEXT:    vpermt2d %zmm13, %zmm21, %zmm07734; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,14,30,0,0,0,0,0,15,31,0,0,0,0,0]7735; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm18, %zmm37736; AVX512BW-FCP-NEXT:    vpermt2d %zmm12, %zmm6, %zmm37737; AVX512BW-FCP-NEXT:    movw $6192, %cx # imm = 0x18307738; AVX512BW-FCP-NEXT:    kmovd %ecx, %k17739; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k1}7740; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,3,4,5,30,0,0,9,10,11,12,31,0,0]7741; AVX512BW-FCP-NEXT:    vpermi2d %zmm22, %zmm3, %zmm07742; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill7743; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,0,0,0,12,28,0,0,0,0,0,13,29,0,0,0]7744; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm18, %zmm07745; AVX512BW-FCP-NEXT:    vpermt2d %zmm12, %zmm20, %zmm07746; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [11,0,0,0,0,0,28,12,0,0,0,0,0,29,13,0]7747; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm13, %zmm37748; AVX512BW-FCP-NEXT:    vpermt2d %zmm23, %zmm11, %zmm37749; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k1}7750; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,27,0,0,4,5,6,7,28,0,0,11,12,13,14,29]7751; AVX512BW-FCP-NEXT:    vpermi2d %zmm22, %zmm3, %zmm07752; AVX512BW-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill7753; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm28 = [0,0,0,16,0,0,0,0,0,1,17,0,0,0,0,0]7754; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm1, %zmm07755; AVX512BW-FCP-NEXT:    vpermt2d %zmm9, %zmm28, %zmm07756; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm25 = [0,16,0,0,0,0,0,1,17,0,0,0,0,0,2,18]7757; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm14, %zmm77758; AVX512BW-FCP-NEXT:    vpermt2d %zmm8, %zmm25, %zmm77759; AVX512BW-FCP-NEXT:    movw $1548, %cx # imm = 0x60C7760; AVX512BW-FCP-NEXT:    kmovd %ecx, %k27761; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm0, %zmm7 {%k2}7762; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]7763; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm4, %zmm57764; AVX512BW-FCP-NEXT:    vpermt2d %zmm10, %zmm0, %zmm57765; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm23, %zmm307766; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm17 = [9,0,0,0,0,0,26,10,0,0,0,0,0,27,11,0]7767; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm12, %zmm167768; AVX512BW-FCP-NEXT:    vpermt2d %zmm18, %zmm17, %zmm167769; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm23, %zmm277770; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm18, %zmm37771; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm23, %zmm317772; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm18, %zmm247773; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm23, %zmm197774; AVX512BW-FCP-NEXT:    vpermt2d %zmm13, %zmm28, %zmm237775; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm18, %zmm297776; AVX512BW-FCP-NEXT:    vpermt2d %zmm12, %zmm25, %zmm187777; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,0,0,0,4,5,16,0,0,0,0,11,12,17,0,0]7778; AVX512BW-FCP-NEXT:    vpermt2d %zmm15, %zmm2, %zmm57779; AVX512BW-FCP-NEXT:    movw $14448, %cx # imm = 0x38707780; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm23, %zmm18 {%k2}7781; AVX512BW-FCP-NEXT:    kmovd %ecx, %k27782; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm5, %zmm7 {%k2}7783; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm22, %zmm57784; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm22, %zmm07785; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm22, %zmm237786; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm22, %zmm287787; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm25 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]7788; AVX512BW-FCP-NEXT:    vpermt2d %zmm26, %zmm25, %zmm227789; AVX512BW-FCP-NEXT:    vmovdqa64 64(%rax), %zmm257790; AVX512BW-FCP-NEXT:    vpermt2d %zmm25, %zmm2, %zmm227791; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm22, %zmm18 {%k2}7792; AVX512BW-FCP-NEXT:    vpermi2d %zmm9, %zmm1, %zmm217793; AVX512BW-FCP-NEXT:    vpermi2d %zmm8, %zmm14, %zmm67794; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm21, %zmm6 {%k1}7795; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [13,0,0,0,0,0,30,14,0,0,0,0,0,31,15,0]7796; AVX512BW-FCP-NEXT:    vpermi2d %zmm4, %zmm10, %zmm27797; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,29,0,0,0,0,6,7,30,0,0,0,0,13,14,31]7798; AVX512BW-FCP-NEXT:    vpermi2d %zmm15, %zmm2, %zmm217799; AVX512BW-FCP-NEXT:    movw $-7741, %ax # imm = 0xE1C37800; AVX512BW-FCP-NEXT:    kmovd %eax, %k27801; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm21, %zmm6 {%k2}7802; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,9,25,0,0,0,0,0,10,26,0,0,0,0,0,11]7803; AVX512BW-FCP-NEXT:    vpermt2d %zmm13, %zmm2, %zmm307804; AVX512BW-FCP-NEXT:    movw $-31994, %ax # imm = 0x83067805; AVX512BW-FCP-NEXT:    kmovd %eax, %k27806; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm30, %zmm16 {%k2}7807; AVX512BW-FCP-NEXT:    vpermi2d %zmm8, %zmm14, %zmm207808; AVX512BW-FCP-NEXT:    vpermi2d %zmm1, %zmm9, %zmm117809; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm20, %zmm11 {%k1}7810; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,11,27,0,0,0,0,0,12,28,0,0,0,0,0,13]7811; AVX512BW-FCP-NEXT:    vpermi2d %zmm10, %zmm4, %zmm207812; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,1,2,27,0,0,0,0,8,9,28,0,0,0,0,15]7813; AVX512BW-FCP-NEXT:    vpermi2d %zmm15, %zmm20, %zmm217814; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,0,0,9,25,0,0,0,0,0,10,26,0,0,0,0]7815; AVX512BW-FCP-NEXT:    vpermt2d %zmm26, %zmm20, %zmm57816; AVX512BW-FCP-NEXT:    movw $-30962, %ax # imm = 0x870E7817; AVX512BW-FCP-NEXT:    kmovd %eax, %k17818; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm21, %zmm11 {%k1}7819; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,3,4,25,0,0,0,0,10,11,26,0,0,0]7820; AVX512BW-FCP-NEXT:    vpermt2d %zmm25, %zmm21, %zmm57821; AVX512BW-FCP-NEXT:    movw $7224, %ax # imm = 0x1C387822; AVX512BW-FCP-NEXT:    kmovd %eax, %k17823; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm5, %zmm16 {%k1}7824; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm22 = [0,0,0,7,23,0,0,0,0,0,8,24,0,0,0,0]7825; AVX512BW-FCP-NEXT:    vpermt2d %zmm13, %zmm22, %zmm277826; AVX512BW-FCP-NEXT:    vpermi2d %zmm9, %zmm1, %zmm27827; AVX512BW-FCP-NEXT:    vpermi2d %zmm14, %zmm8, %zmm177828; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm2, %zmm17 {%k2}7829; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm5 = [0,7,23,0,0,0,0,0,8,24,0,0,0,0,0,9]7830; AVX512BW-FCP-NEXT:    vpermt2d %zmm12, %zmm5, %zmm37831; AVX512BW-FCP-NEXT:    movw $3096, %ax # imm = 0xC187832; AVX512BW-FCP-NEXT:    kmovd %eax, %k27833; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm27, %zmm3 {%k2}7834; AVX512BW-FCP-NEXT:    vpermi2d %zmm10, %zmm4, %zmm207835; AVX512BW-FCP-NEXT:    vpermt2d %zmm15, %zmm21, %zmm207836; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,0,0,0,0,7,23,0,0,0,0,0,8,24,0,0]7837; AVX512BW-FCP-NEXT:    vpermt2d %zmm26, %zmm2, %zmm07838; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm20, %zmm17 {%k1}7839; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [22,0,0,0,0,5,6,23,0,0,0,0,12,13,24,0]7840; AVX512BW-FCP-NEXT:    vpermt2d %zmm25, %zmm20, %zmm07841; AVX512BW-FCP-NEXT:    movw $28897, %ax # imm = 0x70E17842; AVX512BW-FCP-NEXT:    kmovd %eax, %k37843; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k3}7844; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,5,21,0,0,0,0,0,6,22,0,0]7845; AVX512BW-FCP-NEXT:    vpermt2d %zmm13, %zmm0, %zmm317846; AVX512BW-FCP-NEXT:    vpermi2d %zmm9, %zmm1, %zmm227847; AVX512BW-FCP-NEXT:    vpermi2d %zmm8, %zmm14, %zmm57848; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm22, %zmm5 {%k2}7849; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,5,21,0,0,0,0,0,6,22,0,0,0,0]7850; AVX512BW-FCP-NEXT:    vpermt2d %zmm12, %zmm21, %zmm247851; AVX512BW-FCP-NEXT:    movw $12384, %ax # imm = 0x30607852; AVX512BW-FCP-NEXT:    kmovd %eax, %k17853; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm31, %zmm24 {%k1}7854; AVX512BW-FCP-NEXT:    vpermi2d %zmm10, %zmm4, %zmm27855; AVX512BW-FCP-NEXT:    vpermt2d %zmm15, %zmm20, %zmm27856; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]7857; AVX512BW-FCP-NEXT:    vpermt2d %zmm26, %zmm20, %zmm237858; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm2, %zmm5 {%k3}7859; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,1,20,0,0,0,0,7,8,21,0,0,0,0,14,15]7860; AVX512BW-FCP-NEXT:    vpermt2d %zmm25, %zmm2, %zmm237861; AVX512BW-FCP-NEXT:    movw $15480, %ax # imm = 0x3C787862; AVX512BW-FCP-NEXT:    kmovd %eax, %k27863; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm24, %zmm23 {%k2}7864; AVX512BW-FCP-NEXT:    vpermi2d %zmm9, %zmm1, %zmm07865; AVX512BW-FCP-NEXT:    vpermi2d %zmm8, %zmm14, %zmm217866; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm0, %zmm21 {%k1}7867; AVX512BW-FCP-NEXT:    vpermi2d %zmm10, %zmm4, %zmm207868; AVX512BW-FCP-NEXT:    vpermt2d %zmm15, %zmm2, %zmm207869; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm21, %zmm20 {%k2}7870; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,3,19,0,0,0,0,0,4,20,0,0]7871; AVX512BW-FCP-NEXT:    vpermt2d %zmm12, %zmm0, %zmm297872; AVX512BW-FCP-NEXT:    vpermt2d %zmm8, %zmm0, %zmm147873; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [2,18,0,0,0,0,0,3,19,0,0,0,0,0,4,20]7874; AVX512BW-FCP-NEXT:    vpermt2d %zmm13, %zmm0, %zmm197875; AVX512BW-FCP-NEXT:    vpermt2d %zmm9, %zmm0, %zmm17876; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm29, %zmm19 {%k1}7877; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]7878; AVX512BW-FCP-NEXT:    vpermt2d %zmm10, %zmm0, %zmm47879; AVX512BW-FCP-NEXT:    vpermt2d %zmm26, %zmm0, %zmm287880; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,3,18,0,0,0,0,9,10,19,0,0,0,0]7881; AVX512BW-FCP-NEXT:    vpermt2d %zmm15, %zmm0, %zmm47882; AVX512BW-FCP-NEXT:    vpermt2d %zmm25, %zmm0, %zmm287883; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm14, %zmm1 {%k1}7884; AVX512BW-FCP-NEXT:    movw $3612, %ax # imm = 0xE1C7885; AVX512BW-FCP-NEXT:    kmovd %eax, %k17886; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm28, %zmm19 {%k1}7887; AVX512BW-FCP-NEXT:    vmovdqa32 %zmm4, %zmm1 {%k1}7888; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [29,0,2,3,4,5,6,30,0,9,10,11,12,13,31,0]7889; AVX512BW-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload7890; AVX512BW-FCP-NEXT:    vpermi2d %zmm26, %zmm2, %zmm07891; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,1,27,0,4,5,6,7,8,28,0,11,12,13,14,15]7892; AVX512BW-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm4 # 64-byte Reload7893; AVX512BW-FCP-NEXT:    vpermi2d %zmm26, %zmm4, %zmm27894; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [0,29,2,3,4,5,6,7,30,9,10,11,12,13,14,31]7895; AVX512BW-FCP-NEXT:    vpermi2d %zmm25, %zmm0, %zmm47896; AVX512BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,1,2,27,4,5,6,7,8,9,28,11,12,13,14,15]7897; AVX512BW-FCP-NEXT:    vpermi2d %zmm25, %zmm2, %zmm07898; AVX512BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax7899; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm1, 64(%rax)7900; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm20, 128(%rax)7901; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm5, 192(%rax)7902; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm17, 256(%rax)7903; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm11, 320(%rax)7904; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm6, 384(%rax)7905; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm18, 448(%rax)7906; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm19, 512(%rax)7907; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm23, 576(%rax)7908; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm3, 640(%rax)7909; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm16, 704(%rax)7910; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm7, (%rax)7911; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm0, 768(%rax)7912; AVX512BW-FCP-NEXT:    vmovdqa64 %zmm4, 832(%rax)7913; AVX512BW-FCP-NEXT:    popq %rax7914; AVX512BW-FCP-NEXT:    vzeroupper7915; AVX512BW-FCP-NEXT:    retq7916;7917; AVX512DQ-BW-LABEL: store_i32_stride7_vf32:7918; AVX512DQ-BW:       # %bb.0:7919; AVX512DQ-BW-NEXT:    pushq %rax7920; AVX512DQ-BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax7921; AVX512DQ-BW-NEXT:    vmovdqa64 (%rdi), %zmm147922; AVX512DQ-BW-NEXT:    vmovdqa64 64(%rdi), %zmm187923; AVX512DQ-BW-NEXT:    vmovdqa64 (%rsi), %zmm87924; AVX512DQ-BW-NEXT:    vmovdqa64 64(%rsi), %zmm127925; AVX512DQ-BW-NEXT:    vmovdqa64 (%rdx), %zmm17926; AVX512DQ-BW-NEXT:    vmovdqa64 64(%rdx), %zmm237927; AVX512DQ-BW-NEXT:    vmovdqa64 (%rcx), %zmm97928; AVX512DQ-BW-NEXT:    vmovdqa64 64(%rcx), %zmm137929; AVX512DQ-BW-NEXT:    vmovdqa64 (%r8), %zmm47930; AVX512DQ-BW-NEXT:    vmovdqa64 64(%r8), %zmm227931; AVX512DQ-BW-NEXT:    vmovdqa64 (%r9), %zmm107932; AVX512DQ-BW-NEXT:    vmovdqa64 64(%r9), %zmm267933; AVX512DQ-BW-NEXT:    vmovdqa64 (%rax), %zmm157934; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,0,14,30,0,0,0,0,0,15,31,0,0,0]7935; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm23, %zmm07936; AVX512DQ-BW-NEXT:    vpermt2d %zmm13, %zmm21, %zmm07937; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,14,30,0,0,0,0,0,15,31,0,0,0,0,0]7938; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm18, %zmm37939; AVX512DQ-BW-NEXT:    vpermt2d %zmm12, %zmm6, %zmm37940; AVX512DQ-BW-NEXT:    movw $6192, %cx # imm = 0x18307941; AVX512DQ-BW-NEXT:    kmovd %ecx, %k17942; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k1}7943; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,3,4,5,30,0,0,9,10,11,12,31,0,0]7944; AVX512DQ-BW-NEXT:    vpermi2d %zmm22, %zmm3, %zmm07945; AVX512DQ-BW-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill7946; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,0,0,0,12,28,0,0,0,0,0,13,29,0,0,0]7947; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm18, %zmm07948; AVX512DQ-BW-NEXT:    vpermt2d %zmm12, %zmm20, %zmm07949; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [11,0,0,0,0,0,28,12,0,0,0,0,0,29,13,0]7950; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm13, %zmm37951; AVX512DQ-BW-NEXT:    vpermt2d %zmm23, %zmm11, %zmm37952; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k1}7953; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,27,0,0,4,5,6,7,28,0,0,11,12,13,14,29]7954; AVX512DQ-BW-NEXT:    vpermi2d %zmm22, %zmm3, %zmm07955; AVX512DQ-BW-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill7956; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm28 = [0,0,0,16,0,0,0,0,0,1,17,0,0,0,0,0]7957; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm1, %zmm07958; AVX512DQ-BW-NEXT:    vpermt2d %zmm9, %zmm28, %zmm07959; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm25 = [0,16,0,0,0,0,0,1,17,0,0,0,0,0,2,18]7960; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm14, %zmm77961; AVX512DQ-BW-NEXT:    vpermt2d %zmm8, %zmm25, %zmm77962; AVX512DQ-BW-NEXT:    movw $1548, %cx # imm = 0x60C7963; AVX512DQ-BW-NEXT:    kmovd %ecx, %k27964; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm0, %zmm7 {%k2}7965; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]7966; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm4, %zmm57967; AVX512DQ-BW-NEXT:    vpermt2d %zmm10, %zmm0, %zmm57968; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm23, %zmm307969; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm17 = [9,0,0,0,0,0,26,10,0,0,0,0,0,27,11,0]7970; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm12, %zmm167971; AVX512DQ-BW-NEXT:    vpermt2d %zmm18, %zmm17, %zmm167972; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm23, %zmm277973; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm18, %zmm37974; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm23, %zmm317975; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm18, %zmm247976; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm23, %zmm197977; AVX512DQ-BW-NEXT:    vpermt2d %zmm13, %zmm28, %zmm237978; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm18, %zmm297979; AVX512DQ-BW-NEXT:    vpermt2d %zmm12, %zmm25, %zmm187980; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,0,0,0,4,5,16,0,0,0,0,11,12,17,0,0]7981; AVX512DQ-BW-NEXT:    vpermt2d %zmm15, %zmm2, %zmm57982; AVX512DQ-BW-NEXT:    movw $14448, %cx # imm = 0x38707983; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm23, %zmm18 {%k2}7984; AVX512DQ-BW-NEXT:    kmovd %ecx, %k27985; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm5, %zmm7 {%k2}7986; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm22, %zmm57987; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm22, %zmm07988; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm22, %zmm237989; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm22, %zmm287990; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm25 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]7991; AVX512DQ-BW-NEXT:    vpermt2d %zmm26, %zmm25, %zmm227992; AVX512DQ-BW-NEXT:    vmovdqa64 64(%rax), %zmm257993; AVX512DQ-BW-NEXT:    vpermt2d %zmm25, %zmm2, %zmm227994; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm22, %zmm18 {%k2}7995; AVX512DQ-BW-NEXT:    vpermi2d %zmm9, %zmm1, %zmm217996; AVX512DQ-BW-NEXT:    vpermi2d %zmm8, %zmm14, %zmm67997; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm21, %zmm6 {%k1}7998; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [13,0,0,0,0,0,30,14,0,0,0,0,0,31,15,0]7999; AVX512DQ-BW-NEXT:    vpermi2d %zmm4, %zmm10, %zmm28000; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,29,0,0,0,0,6,7,30,0,0,0,0,13,14,31]8001; AVX512DQ-BW-NEXT:    vpermi2d %zmm15, %zmm2, %zmm218002; AVX512DQ-BW-NEXT:    movw $-7741, %ax # imm = 0xE1C38003; AVX512DQ-BW-NEXT:    kmovd %eax, %k28004; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm21, %zmm6 {%k2}8005; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,9,25,0,0,0,0,0,10,26,0,0,0,0,0,11]8006; AVX512DQ-BW-NEXT:    vpermt2d %zmm13, %zmm2, %zmm308007; AVX512DQ-BW-NEXT:    movw $-31994, %ax # imm = 0x83068008; AVX512DQ-BW-NEXT:    kmovd %eax, %k28009; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm30, %zmm16 {%k2}8010; AVX512DQ-BW-NEXT:    vpermi2d %zmm8, %zmm14, %zmm208011; AVX512DQ-BW-NEXT:    vpermi2d %zmm1, %zmm9, %zmm118012; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm20, %zmm11 {%k1}8013; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,11,27,0,0,0,0,0,12,28,0,0,0,0,0,13]8014; AVX512DQ-BW-NEXT:    vpermi2d %zmm10, %zmm4, %zmm208015; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,1,2,27,0,0,0,0,8,9,28,0,0,0,0,15]8016; AVX512DQ-BW-NEXT:    vpermi2d %zmm15, %zmm20, %zmm218017; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,0,0,9,25,0,0,0,0,0,10,26,0,0,0,0]8018; AVX512DQ-BW-NEXT:    vpermt2d %zmm26, %zmm20, %zmm58019; AVX512DQ-BW-NEXT:    movw $-30962, %ax # imm = 0x870E8020; AVX512DQ-BW-NEXT:    kmovd %eax, %k18021; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm21, %zmm11 {%k1}8022; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,3,4,25,0,0,0,0,10,11,26,0,0,0]8023; AVX512DQ-BW-NEXT:    vpermt2d %zmm25, %zmm21, %zmm58024; AVX512DQ-BW-NEXT:    movw $7224, %ax # imm = 0x1C388025; AVX512DQ-BW-NEXT:    kmovd %eax, %k18026; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm5, %zmm16 {%k1}8027; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm22 = [0,0,0,7,23,0,0,0,0,0,8,24,0,0,0,0]8028; AVX512DQ-BW-NEXT:    vpermt2d %zmm13, %zmm22, %zmm278029; AVX512DQ-BW-NEXT:    vpermi2d %zmm9, %zmm1, %zmm28030; AVX512DQ-BW-NEXT:    vpermi2d %zmm14, %zmm8, %zmm178031; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm2, %zmm17 {%k2}8032; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm5 = [0,7,23,0,0,0,0,0,8,24,0,0,0,0,0,9]8033; AVX512DQ-BW-NEXT:    vpermt2d %zmm12, %zmm5, %zmm38034; AVX512DQ-BW-NEXT:    movw $3096, %ax # imm = 0xC188035; AVX512DQ-BW-NEXT:    kmovd %eax, %k28036; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm27, %zmm3 {%k2}8037; AVX512DQ-BW-NEXT:    vpermi2d %zmm10, %zmm4, %zmm208038; AVX512DQ-BW-NEXT:    vpermt2d %zmm15, %zmm21, %zmm208039; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,0,0,0,0,7,23,0,0,0,0,0,8,24,0,0]8040; AVX512DQ-BW-NEXT:    vpermt2d %zmm26, %zmm2, %zmm08041; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm20, %zmm17 {%k1}8042; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [22,0,0,0,0,5,6,23,0,0,0,0,12,13,24,0]8043; AVX512DQ-BW-NEXT:    vpermt2d %zmm25, %zmm20, %zmm08044; AVX512DQ-BW-NEXT:    movw $28897, %ax # imm = 0x70E18045; AVX512DQ-BW-NEXT:    kmovd %eax, %k38046; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k3}8047; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,5,21,0,0,0,0,0,6,22,0,0]8048; AVX512DQ-BW-NEXT:    vpermt2d %zmm13, %zmm0, %zmm318049; AVX512DQ-BW-NEXT:    vpermi2d %zmm9, %zmm1, %zmm228050; AVX512DQ-BW-NEXT:    vpermi2d %zmm8, %zmm14, %zmm58051; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm22, %zmm5 {%k2}8052; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,5,21,0,0,0,0,0,6,22,0,0,0,0]8053; AVX512DQ-BW-NEXT:    vpermt2d %zmm12, %zmm21, %zmm248054; AVX512DQ-BW-NEXT:    movw $12384, %ax # imm = 0x30608055; AVX512DQ-BW-NEXT:    kmovd %eax, %k18056; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm31, %zmm24 {%k1}8057; AVX512DQ-BW-NEXT:    vpermi2d %zmm10, %zmm4, %zmm28058; AVX512DQ-BW-NEXT:    vpermt2d %zmm15, %zmm20, %zmm28059; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]8060; AVX512DQ-BW-NEXT:    vpermt2d %zmm26, %zmm20, %zmm238061; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm2, %zmm5 {%k3}8062; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,1,20,0,0,0,0,7,8,21,0,0,0,0,14,15]8063; AVX512DQ-BW-NEXT:    vpermt2d %zmm25, %zmm2, %zmm238064; AVX512DQ-BW-NEXT:    movw $15480, %ax # imm = 0x3C788065; AVX512DQ-BW-NEXT:    kmovd %eax, %k28066; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm24, %zmm23 {%k2}8067; AVX512DQ-BW-NEXT:    vpermi2d %zmm9, %zmm1, %zmm08068; AVX512DQ-BW-NEXT:    vpermi2d %zmm8, %zmm14, %zmm218069; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm0, %zmm21 {%k1}8070; AVX512DQ-BW-NEXT:    vpermi2d %zmm10, %zmm4, %zmm208071; AVX512DQ-BW-NEXT:    vpermt2d %zmm15, %zmm2, %zmm208072; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm21, %zmm20 {%k2}8073; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,3,19,0,0,0,0,0,4,20,0,0]8074; AVX512DQ-BW-NEXT:    vpermt2d %zmm12, %zmm0, %zmm298075; AVX512DQ-BW-NEXT:    vpermt2d %zmm8, %zmm0, %zmm148076; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [2,18,0,0,0,0,0,3,19,0,0,0,0,0,4,20]8077; AVX512DQ-BW-NEXT:    vpermt2d %zmm13, %zmm0, %zmm198078; AVX512DQ-BW-NEXT:    vpermt2d %zmm9, %zmm0, %zmm18079; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm29, %zmm19 {%k1}8080; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]8081; AVX512DQ-BW-NEXT:    vpermt2d %zmm10, %zmm0, %zmm48082; AVX512DQ-BW-NEXT:    vpermt2d %zmm26, %zmm0, %zmm288083; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,3,18,0,0,0,0,9,10,19,0,0,0,0]8084; AVX512DQ-BW-NEXT:    vpermt2d %zmm15, %zmm0, %zmm48085; AVX512DQ-BW-NEXT:    vpermt2d %zmm25, %zmm0, %zmm288086; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm14, %zmm1 {%k1}8087; AVX512DQ-BW-NEXT:    movw $3612, %ax # imm = 0xE1C8088; AVX512DQ-BW-NEXT:    kmovd %eax, %k18089; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm28, %zmm19 {%k1}8090; AVX512DQ-BW-NEXT:    vmovdqa32 %zmm4, %zmm1 {%k1}8091; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [29,0,2,3,4,5,6,30,0,9,10,11,12,13,31,0]8092; AVX512DQ-BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload8093; AVX512DQ-BW-NEXT:    vpermi2d %zmm26, %zmm2, %zmm08094; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,1,27,0,4,5,6,7,8,28,0,11,12,13,14,15]8095; AVX512DQ-BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm4 # 64-byte Reload8096; AVX512DQ-BW-NEXT:    vpermi2d %zmm26, %zmm4, %zmm28097; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [0,29,2,3,4,5,6,7,30,9,10,11,12,13,14,31]8098; AVX512DQ-BW-NEXT:    vpermi2d %zmm25, %zmm0, %zmm48099; AVX512DQ-BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,1,2,27,4,5,6,7,8,9,28,11,12,13,14,15]8100; AVX512DQ-BW-NEXT:    vpermi2d %zmm25, %zmm2, %zmm08101; AVX512DQ-BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax8102; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm1, 64(%rax)8103; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm20, 128(%rax)8104; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm5, 192(%rax)8105; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm17, 256(%rax)8106; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm11, 320(%rax)8107; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm6, 384(%rax)8108; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm18, 448(%rax)8109; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm19, 512(%rax)8110; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm23, 576(%rax)8111; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm3, 640(%rax)8112; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm16, 704(%rax)8113; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm7, (%rax)8114; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm0, 768(%rax)8115; AVX512DQ-BW-NEXT:    vmovdqa64 %zmm4, 832(%rax)8116; AVX512DQ-BW-NEXT:    popq %rax8117; AVX512DQ-BW-NEXT:    vzeroupper8118; AVX512DQ-BW-NEXT:    retq8119;8120; AVX512DQ-BW-FCP-LABEL: store_i32_stride7_vf32:8121; AVX512DQ-BW-FCP:       # %bb.0:8122; AVX512DQ-BW-FCP-NEXT:    pushq %rax8123; AVX512DQ-BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax8124; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 (%rdi), %zmm148125; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm188126; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 (%rsi), %zmm88127; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 64(%rsi), %zmm128128; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 (%rdx), %zmm18129; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 64(%rdx), %zmm238130; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 (%rcx), %zmm98131; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 64(%rcx), %zmm138132; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 (%r8), %zmm48133; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 64(%r8), %zmm228134; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 (%r9), %zmm108135; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 64(%r9), %zmm268136; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 (%rax), %zmm158137; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,0,14,30,0,0,0,0,0,15,31,0,0,0]8138; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm23, %zmm08139; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm13, %zmm21, %zmm08140; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [0,0,14,30,0,0,0,0,0,15,31,0,0,0,0,0]8141; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm18, %zmm38142; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm12, %zmm6, %zmm38143; AVX512DQ-BW-FCP-NEXT:    movw $6192, %cx # imm = 0x18308144; AVX512DQ-BW-FCP-NEXT:    kmovd %ecx, %k18145; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k1}8146; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,3,4,5,30,0,0,9,10,11,12,31,0,0]8147; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm22, %zmm3, %zmm08148; AVX512DQ-BW-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill8149; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,0,0,0,12,28,0,0,0,0,0,13,29,0,0,0]8150; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm18, %zmm08151; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm12, %zmm20, %zmm08152; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [11,0,0,0,0,0,28,12,0,0,0,0,0,29,13,0]8153; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm13, %zmm38154; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm23, %zmm11, %zmm38155; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k1}8156; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,27,0,0,4,5,6,7,28,0,0,11,12,13,14,29]8157; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm22, %zmm3, %zmm08158; AVX512DQ-BW-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill8159; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm28 = [0,0,0,16,0,0,0,0,0,1,17,0,0,0,0,0]8160; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm1, %zmm08161; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm9, %zmm28, %zmm08162; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm25 = [0,16,0,0,0,0,0,1,17,0,0,0,0,0,2,18]8163; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm14, %zmm78164; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm8, %zmm25, %zmm78165; AVX512DQ-BW-FCP-NEXT:    movw $1548, %cx # imm = 0x60C8166; AVX512DQ-BW-FCP-NEXT:    kmovd %ecx, %k28167; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm0, %zmm7 {%k2}8168; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]8169; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm4, %zmm58170; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm10, %zmm0, %zmm58171; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm23, %zmm308172; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm17 = [9,0,0,0,0,0,26,10,0,0,0,0,0,27,11,0]8173; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm12, %zmm168174; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm18, %zmm17, %zmm168175; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm23, %zmm278176; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm18, %zmm38177; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm23, %zmm318178; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm18, %zmm248179; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm23, %zmm198180; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm13, %zmm28, %zmm238181; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm18, %zmm298182; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm12, %zmm25, %zmm188183; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,0,0,0,4,5,16,0,0,0,0,11,12,17,0,0]8184; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm15, %zmm2, %zmm58185; AVX512DQ-BW-FCP-NEXT:    movw $14448, %cx # imm = 0x38708186; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm23, %zmm18 {%k2}8187; AVX512DQ-BW-FCP-NEXT:    kmovd %ecx, %k28188; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm5, %zmm7 {%k2}8189; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm22, %zmm58190; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm22, %zmm08191; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm22, %zmm238192; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm22, %zmm288193; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm25 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]8194; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm26, %zmm25, %zmm228195; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 64(%rax), %zmm258196; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm25, %zmm2, %zmm228197; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm22, %zmm18 {%k2}8198; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm9, %zmm1, %zmm218199; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm8, %zmm14, %zmm68200; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm21, %zmm6 {%k1}8201; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [13,0,0,0,0,0,30,14,0,0,0,0,0,31,15,0]8202; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm4, %zmm10, %zmm28203; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,29,0,0,0,0,6,7,30,0,0,0,0,13,14,31]8204; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm15, %zmm2, %zmm218205; AVX512DQ-BW-FCP-NEXT:    movw $-7741, %ax # imm = 0xE1C38206; AVX512DQ-BW-FCP-NEXT:    kmovd %eax, %k28207; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm21, %zmm6 {%k2}8208; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,9,25,0,0,0,0,0,10,26,0,0,0,0,0,11]8209; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm13, %zmm2, %zmm308210; AVX512DQ-BW-FCP-NEXT:    movw $-31994, %ax # imm = 0x83068211; AVX512DQ-BW-FCP-NEXT:    kmovd %eax, %k28212; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm30, %zmm16 {%k2}8213; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm8, %zmm14, %zmm208214; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm1, %zmm9, %zmm118215; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm20, %zmm11 {%k1}8216; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,11,27,0,0,0,0,0,12,28,0,0,0,0,0,13]8217; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm10, %zmm4, %zmm208218; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,1,2,27,0,0,0,0,8,9,28,0,0,0,0,15]8219; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm15, %zmm20, %zmm218220; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,0,0,9,25,0,0,0,0,0,10,26,0,0,0,0]8221; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm26, %zmm20, %zmm58222; AVX512DQ-BW-FCP-NEXT:    movw $-30962, %ax # imm = 0x870E8223; AVX512DQ-BW-FCP-NEXT:    kmovd %eax, %k18224; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm21, %zmm11 {%k1}8225; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,3,4,25,0,0,0,0,10,11,26,0,0,0]8226; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm25, %zmm21, %zmm58227; AVX512DQ-BW-FCP-NEXT:    movw $7224, %ax # imm = 0x1C388228; AVX512DQ-BW-FCP-NEXT:    kmovd %eax, %k18229; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm5, %zmm16 {%k1}8230; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm22 = [0,0,0,7,23,0,0,0,0,0,8,24,0,0,0,0]8231; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm13, %zmm22, %zmm278232; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm9, %zmm1, %zmm28233; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm14, %zmm8, %zmm178234; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm2, %zmm17 {%k2}8235; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm5 = [0,7,23,0,0,0,0,0,8,24,0,0,0,0,0,9]8236; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm12, %zmm5, %zmm38237; AVX512DQ-BW-FCP-NEXT:    movw $3096, %ax # imm = 0xC188238; AVX512DQ-BW-FCP-NEXT:    kmovd %eax, %k28239; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm27, %zmm3 {%k2}8240; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm10, %zmm4, %zmm208241; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm15, %zmm21, %zmm208242; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,0,0,0,0,7,23,0,0,0,0,0,8,24,0,0]8243; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm26, %zmm2, %zmm08244; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm20, %zmm17 {%k1}8245; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [22,0,0,0,0,5,6,23,0,0,0,0,12,13,24,0]8246; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm25, %zmm20, %zmm08247; AVX512DQ-BW-FCP-NEXT:    movw $28897, %ax # imm = 0x70E18248; AVX512DQ-BW-FCP-NEXT:    kmovd %eax, %k38249; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k3}8250; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,5,21,0,0,0,0,0,6,22,0,0]8251; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm13, %zmm0, %zmm318252; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm9, %zmm1, %zmm228253; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm8, %zmm14, %zmm58254; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm22, %zmm5 {%k2}8255; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm21 = [0,0,0,5,21,0,0,0,0,0,6,22,0,0,0,0]8256; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm12, %zmm21, %zmm248257; AVX512DQ-BW-FCP-NEXT:    movw $12384, %ax # imm = 0x30608258; AVX512DQ-BW-FCP-NEXT:    kmovd %eax, %k18259; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm31, %zmm24 {%k1}8260; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm10, %zmm4, %zmm28261; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm15, %zmm20, %zmm28262; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]8263; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm26, %zmm20, %zmm238264; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm2, %zmm5 {%k3}8265; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,1,20,0,0,0,0,7,8,21,0,0,0,0,14,15]8266; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm25, %zmm2, %zmm238267; AVX512DQ-BW-FCP-NEXT:    movw $15480, %ax # imm = 0x3C788268; AVX512DQ-BW-FCP-NEXT:    kmovd %eax, %k28269; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm24, %zmm23 {%k2}8270; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm9, %zmm1, %zmm08271; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm8, %zmm14, %zmm218272; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm0, %zmm21 {%k1}8273; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm10, %zmm4, %zmm208274; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm15, %zmm2, %zmm208275; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm21, %zmm20 {%k2}8276; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,3,19,0,0,0,0,0,4,20,0,0]8277; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm12, %zmm0, %zmm298278; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm8, %zmm0, %zmm148279; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [2,18,0,0,0,0,0,3,19,0,0,0,0,0,4,20]8280; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm13, %zmm0, %zmm198281; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm9, %zmm0, %zmm18282; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm29, %zmm19 {%k1}8283; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]8284; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm10, %zmm0, %zmm48285; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm26, %zmm0, %zmm288286; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,3,18,0,0,0,0,9,10,19,0,0,0,0]8287; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm15, %zmm0, %zmm48288; AVX512DQ-BW-FCP-NEXT:    vpermt2d %zmm25, %zmm0, %zmm288289; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm14, %zmm1 {%k1}8290; AVX512DQ-BW-FCP-NEXT:    movw $3612, %ax # imm = 0xE1C8291; AVX512DQ-BW-FCP-NEXT:    kmovd %eax, %k18292; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm28, %zmm19 {%k1}8293; AVX512DQ-BW-FCP-NEXT:    vmovdqa32 %zmm4, %zmm1 {%k1}8294; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [29,0,2,3,4,5,6,30,0,9,10,11,12,13,31,0]8295; AVX512DQ-BW-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload8296; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm26, %zmm2, %zmm08297; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [0,1,27,0,4,5,6,7,8,28,0,11,12,13,14,15]8298; AVX512DQ-BW-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm4 # 64-byte Reload8299; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm26, %zmm4, %zmm28300; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [0,29,2,3,4,5,6,7,30,9,10,11,12,13,14,31]8301; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm25, %zmm0, %zmm48302; AVX512DQ-BW-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,1,2,27,4,5,6,7,8,9,28,11,12,13,14,15]8303; AVX512DQ-BW-FCP-NEXT:    vpermi2d %zmm25, %zmm2, %zmm08304; AVX512DQ-BW-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax8305; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm1, 64(%rax)8306; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm20, 128(%rax)8307; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm5, 192(%rax)8308; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm17, 256(%rax)8309; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm11, 320(%rax)8310; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm6, 384(%rax)8311; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm18, 448(%rax)8312; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm19, 512(%rax)8313; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm23, 576(%rax)8314; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm3, 640(%rax)8315; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm16, 704(%rax)8316; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm7, (%rax)8317; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm0, 768(%rax)8318; AVX512DQ-BW-FCP-NEXT:    vmovdqa64 %zmm4, 832(%rax)8319; AVX512DQ-BW-FCP-NEXT:    popq %rax8320; AVX512DQ-BW-FCP-NEXT:    vzeroupper8321; AVX512DQ-BW-FCP-NEXT:    retq8322  %in.vec0 = load <32 x i32>, ptr %in.vecptr0, align 648323  %in.vec1 = load <32 x i32>, ptr %in.vecptr1, align 648324  %in.vec2 = load <32 x i32>, ptr %in.vecptr2, align 648325  %in.vec3 = load <32 x i32>, ptr %in.vecptr3, align 648326  %in.vec4 = load <32 x i32>, ptr %in.vecptr4, align 648327  %in.vec5 = load <32 x i32>, ptr %in.vecptr5, align 648328  %in.vec6 = load <32 x i32>, ptr %in.vecptr6, align 648329  %1 = shufflevector <32 x i32> %in.vec0, <32 x i32> %in.vec1, <64 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63>8330  %2 = shufflevector <32 x i32> %in.vec2, <32 x i32> %in.vec3, <64 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63>8331  %3 = shufflevector <32 x i32> %in.vec4, <32 x i32> %in.vec5, <64 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63>8332  %4 = shufflevector <64 x i32> %1, <64 x i32> %2, <128 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 108, i32 109, i32 110, i32 111, i32 112, i32 113, i32 114, i32 115, i32 116, i32 117, i32 118, i32 119, i32 120, i32 121, i32 122, i32 123, i32 124, i32 125, i32 126, i32 127>8333  %5 = shufflevector <32 x i32> %in.vec6, <32 x i32> poison, <64 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>8334  %6 = shufflevector <64 x i32> %3, <64 x i32> %5, <96 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95>8335  %7 = shufflevector <96 x i32> %6, <96 x i32> poison, <128 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef, i32 undef>8336  %8 = shufflevector <128 x i32> %4, <128 x i32> %7, <224 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7, i32 8, i32 9, i32 10, i32 11, i32 12, i32 13, i32 14, i32 15, i32 16, i32 17, i32 18, i32 19, i32 20, i32 21, i32 22, i32 23, i32 24, i32 25, i32 26, i32 27, i32 28, i32 29, i32 30, i32 31, i32 32, i32 33, i32 34, i32 35, i32 36, i32 37, i32 38, i32 39, i32 40, i32 41, i32 42, i32 43, i32 44, i32 45, i32 46, i32 47, i32 48, i32 49, i32 50, i32 51, i32 52, i32 53, i32 54, i32 55, i32 56, i32 57, i32 58, i32 59, i32 60, i32 61, i32 62, i32 63, i32 64, i32 65, i32 66, i32 67, i32 68, i32 69, i32 70, i32 71, i32 72, i32 73, i32 74, i32 75, i32 76, i32 77, i32 78, i32 79, i32 80, i32 81, i32 82, i32 83, i32 84, i32 85, i32 86, i32 87, i32 88, i32 89, i32 90, i32 91, i32 92, i32 93, i32 94, i32 95, i32 96, i32 97, i32 98, i32 99, i32 100, i32 101, i32 102, i32 103, i32 104, i32 105, i32 106, i32 107, i32 108, i32 109, i32 110, i32 111, i32 112, i32 113, i32 114, i32 115, i32 116, i32 117, i32 118, i32 119, i32 120, i32 121, i32 122, i32 123, i32 124, i32 125, i32 126, i32 127, i32 128, i32 129, i32 130, i32 131, i32 132, i32 133, i32 134, i32 135, i32 136, i32 137, i32 138, i32 139, i32 140, i32 141, i32 142, i32 143, i32 144, i32 145, i32 146, i32 147, i32 148, i32 149, i32 150, i32 151, i32 152, i32 153, i32 154, i32 155, i32 156, i32 157, i32 158, i32 159, i32 160, i32 161, i32 162, i32 163, i32 164, i32 165, i32 166, i32 167, i32 168, i32 169, i32 170, i32 171, i32 172, i32 173, i32 174, i32 175, i32 176, i32 177, i32 178, i32 179, i32 180, i32 181, i32 182, i32 183, i32 184, i32 185, i32 186, i32 187, i32 188, i32 189, i32 190, i32 191, i32 192, i32 193, i32 194, i32 195, i32 196, i32 197, i32 198, i32 199, i32 200, i32 201, i32 202, i32 203, i32 204, i32 205, i32 206, i32 207, i32 208, i32 209, i32 210, i32 211, i32 212, i32 213, i32 214, i32 215, i32 216, i32 217, i32 218, i32 219, i32 220, i32 221, i32 222, i32 223>8337  %interleaved.vec = shufflevector <224 x i32> %8, <224 x i32> poison, <224 x i32> <i32 0, i32 32, i32 64, i32 96, i32 128, i32 160, i32 192, i32 1, i32 33, i32 65, i32 97, i32 129, i32 161, i32 193, i32 2, i32 34, i32 66, i32 98, i32 130, i32 162, i32 194, i32 3, i32 35, i32 67, i32 99, i32 131, i32 163, i32 195, i32 4, i32 36, i32 68, i32 100, i32 132, i32 164, i32 196, i32 5, i32 37, i32 69, i32 101, i32 133, i32 165, i32 197, i32 6, i32 38, i32 70, i32 102, i32 134, i32 166, i32 198, i32 7, i32 39, i32 71, i32 103, i32 135, i32 167, i32 199, i32 8, i32 40, i32 72, i32 104, i32 136, i32 168, i32 200, i32 9, i32 41, i32 73, i32 105, i32 137, i32 169, i32 201, i32 10, i32 42, i32 74, i32 106, i32 138, i32 170, i32 202, i32 11, i32 43, i32 75, i32 107, i32 139, i32 171, i32 203, i32 12, i32 44, i32 76, i32 108, i32 140, i32 172, i32 204, i32 13, i32 45, i32 77, i32 109, i32 141, i32 173, i32 205, i32 14, i32 46, i32 78, i32 110, i32 142, i32 174, i32 206, i32 15, i32 47, i32 79, i32 111, i32 143, i32 175, i32 207, i32 16, i32 48, i32 80, i32 112, i32 144, i32 176, i32 208, i32 17, i32 49, i32 81, i32 113, i32 145, i32 177, i32 209, i32 18, i32 50, i32 82, i32 114, i32 146, i32 178, i32 210, i32 19, i32 51, i32 83, i32 115, i32 147, i32 179, i32 211, i32 20, i32 52, i32 84, i32 116, i32 148, i32 180, i32 212, i32 21, i32 53, i32 85, i32 117, i32 149, i32 181, i32 213, i32 22, i32 54, i32 86, i32 118, i32 150, i32 182, i32 214, i32 23, i32 55, i32 87, i32 119, i32 151, i32 183, i32 215, i32 24, i32 56, i32 88, i32 120, i32 152, i32 184, i32 216, i32 25, i32 57, i32 89, i32 121, i32 153, i32 185, i32 217, i32 26, i32 58, i32 90, i32 122, i32 154, i32 186, i32 218, i32 27, i32 59, i32 91, i32 123, i32 155, i32 187, i32 219, i32 28, i32 60, i32 92, i32 124, i32 156, i32 188, i32 220, i32 29, i32 61, i32 93, i32 125, i32 157, i32 189, i32 221, i32 30, i32 62, i32 94, i32 126, i32 158, i32 190, i32 222, i32 31, i32 63, i32 95, i32 127, i32 159, i32 191, i32 223>8338  store <224 x i32> %interleaved.vec, ptr %out.vec, align 648339  ret void8340}8341 8342define void @store_i32_stride7_vf64(ptr %in.vecptr0, ptr %in.vecptr1, ptr %in.vecptr2, ptr %in.vecptr3, ptr %in.vecptr4, ptr %in.vecptr5, ptr %in.vecptr6, ptr %out.vec) nounwind {8343; SSE-LABEL: store_i32_stride7_vf64:8344; SSE:       # %bb.0:8345; SSE-NEXT:    subq $2760, %rsp # imm = 0xAC88346; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %rax8347; SSE-NEXT:    movdqa (%rdi), %xmm68348; SSE-NEXT:    movdqa %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8349; SSE-NEXT:    movdqa (%rsi), %xmm48350; SSE-NEXT:    movdqa 16(%rsi), %xmm38351; SSE-NEXT:    movaps (%rdx), %xmm28352; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8353; SSE-NEXT:    movdqa 16(%rdx), %xmm78354; SSE-NEXT:    movdqa %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8355; SSE-NEXT:    movaps (%rcx), %xmm138356; SSE-NEXT:    movaps 16(%rcx), %xmm98357; SSE-NEXT:    movaps %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8358; SSE-NEXT:    movaps (%r8), %xmm08359; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8360; SSE-NEXT:    movaps 16(%r8), %xmm108361; SSE-NEXT:    movaps %xmm10, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8362; SSE-NEXT:    movdqa (%r9), %xmm128363; SSE-NEXT:    movdqa %xmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8364; SSE-NEXT:    movdqa 16(%r9), %xmm88365; SSE-NEXT:    movdqa %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8366; SSE-NEXT:    movdqa (%rax), %xmm158367; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm13[1,1]8368; SSE-NEXT:    movdqa %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8369; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm4[1,1,1,1]8370; SSE-NEXT:    movss {{.*#+}} xmm2 = xmm1[0],xmm2[1,2,3]8371; SSE-NEXT:    shufps {{.*#+}} xmm2 = xmm2[0,1],xmm0[2,0]8372; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8373; SSE-NEXT:    movdqa %xmm6, %xmm08374; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm4[2],xmm0[3],xmm4[3]8375; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm15[1,1,1,1]8376; SSE-NEXT:    movdqa %xmm15, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8377; SSE-NEXT:    pshufd {{.*#+}} xmm2 = xmm12[1,1,1,1]8378; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm1[0],xmm2[1],xmm1[1]8379; SSE-NEXT:    punpcklqdq {{.*#+}} xmm2 = xmm2[0],xmm0[0]8380; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8381; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm7[1,1,1,1]8382; SSE-NEXT:    movdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8383; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm3[1,1,1,1]8384; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8385; SSE-NEXT:    movaps %xmm10, %xmm08386; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm9[1,1]8387; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]8388; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8389; SSE-NEXT:    movdqa 16(%rax), %xmm08390; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8391; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]8392; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm8[1,1,1,1]8393; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8394; SSE-NEXT:    movdqa 16(%rdi), %xmm08395; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8396; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm3[2],xmm0[3],xmm3[3]8397; SSE-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]8398; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8399; SSE-NEXT:    movdqa 32(%rsi), %xmm28400; SSE-NEXT:    movaps 32(%rdx), %xmm18401; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8402; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm2[1,1,1,1]8403; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8404; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm0[0],xmm1[1,2,3]8405; SSE-NEXT:    movaps 32(%rcx), %xmm38406; SSE-NEXT:    movaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8407; SSE-NEXT:    movaps 32(%r8), %xmm08408; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8409; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm3[1,1]8410; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]8411; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8412; SSE-NEXT:    movdqa 32(%r9), %xmm18413; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8414; SSE-NEXT:    movdqa 32(%rax), %xmm08415; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8416; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]8417; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[1,1,1,1]8418; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8419; SSE-NEXT:    movdqa 32(%rdi), %xmm08420; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8421; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm2[2],xmm0[3],xmm2[3]8422; SSE-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]8423; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8424; SSE-NEXT:    movdqa 48(%rsi), %xmm28425; SSE-NEXT:    movdqa 48(%rdx), %xmm08426; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8427; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]8428; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm2[1,1,1,1]8429; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8430; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8431; SSE-NEXT:    movaps 48(%rcx), %xmm48432; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8433; SSE-NEXT:    movaps 48(%r8), %xmm08434; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8435; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm4[1,1]8436; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]8437; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8438; SSE-NEXT:    movdqa 48(%r9), %xmm18439; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8440; SSE-NEXT:    movdqa 48(%rax), %xmm08441; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8442; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]8443; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[1,1,1,1]8444; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8445; SSE-NEXT:    movdqa 48(%rdi), %xmm58446; SSE-NEXT:    movdqa %xmm5, %xmm08447; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm2[2],xmm0[3],xmm2[3]8448; SSE-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]8449; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8450; SSE-NEXT:    movdqa 64(%rsi), %xmm28451; SSE-NEXT:    movaps 64(%rdx), %xmm18452; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8453; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm2[1,1,1,1]8454; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8455; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm0[0],xmm1[1,2,3]8456; SSE-NEXT:    movaps 64(%rcx), %xmm48457; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8458; SSE-NEXT:    movaps 64(%r8), %xmm08459; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8460; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm4[1,1]8461; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]8462; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8463; SSE-NEXT:    movdqa 64(%r9), %xmm18464; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8465; SSE-NEXT:    movdqa 64(%rax), %xmm08466; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8467; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]8468; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[1,1,1,1]8469; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8470; SSE-NEXT:    movdqa 64(%rdi), %xmm88471; SSE-NEXT:    movdqa %xmm8, %xmm08472; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm2[2],xmm0[3],xmm2[3]8473; SSE-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]8474; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8475; SSE-NEXT:    movdqa 80(%rsi), %xmm28476; SSE-NEXT:    movdqa 80(%rdx), %xmm08477; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8478; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]8479; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm2[1,1,1,1]8480; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8481; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8482; SSE-NEXT:    movaps 80(%rcx), %xmm48483; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8484; SSE-NEXT:    movaps 80(%r8), %xmm08485; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8486; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm4[1,1]8487; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]8488; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8489; SSE-NEXT:    movdqa 80(%r9), %xmm18490; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8491; SSE-NEXT:    movdqa 80(%rax), %xmm08492; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8493; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]8494; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[1,1,1,1]8495; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8496; SSE-NEXT:    movdqa 80(%rdi), %xmm98497; SSE-NEXT:    movdqa %xmm9, %xmm08498; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm2[2],xmm0[3],xmm2[3]8499; SSE-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]8500; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8501; SSE-NEXT:    movdqa 96(%rsi), %xmm28502; SSE-NEXT:    movaps 96(%rdx), %xmm18503; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8504; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm2[1,1,1,1]8505; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8506; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm0[0],xmm1[1,2,3]8507; SSE-NEXT:    movaps 96(%rcx), %xmm108508; SSE-NEXT:    movaps 96(%r8), %xmm08509; SSE-NEXT:    movaps %xmm0, (%rsp) # 16-byte Spill8510; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm10[1,1]8511; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]8512; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8513; SSE-NEXT:    movdqa 96(%r9), %xmm18514; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8515; SSE-NEXT:    movdqa 96(%rax), %xmm08516; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8517; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]8518; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[1,1,1,1]8519; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8520; SSE-NEXT:    movdqa 96(%rdi), %xmm128521; SSE-NEXT:    movdqa %xmm12, %xmm08522; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm2[2],xmm0[3],xmm2[3]8523; SSE-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]8524; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8525; SSE-NEXT:    movdqa 112(%rsi), %xmm28526; SSE-NEXT:    movdqa 112(%rdx), %xmm08527; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8528; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]8529; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm2[1,1,1,1]8530; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8531; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8532; SSE-NEXT:    movaps 112(%rcx), %xmm48533; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8534; SSE-NEXT:    movaps 112(%r8), %xmm08535; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8536; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm4[1,1]8537; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]8538; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8539; SSE-NEXT:    movdqa 112(%r9), %xmm18540; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8541; SSE-NEXT:    movdqa 112(%rax), %xmm08542; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8543; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]8544; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[1,1,1,1]8545; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8546; SSE-NEXT:    movdqa 112(%rdi), %xmm148547; SSE-NEXT:    movdqa %xmm14, %xmm08548; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm2[2],xmm0[3],xmm2[3]8549; SSE-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]8550; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8551; SSE-NEXT:    movdqa 128(%rsi), %xmm28552; SSE-NEXT:    movaps 128(%rdx), %xmm18553; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8554; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm2[1,1,1,1]8555; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8556; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm0[0],xmm1[1,2,3]8557; SSE-NEXT:    movaps 128(%rcx), %xmm48558; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8559; SSE-NEXT:    movaps 128(%r8), %xmm08560; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8561; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm4[1,1]8562; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]8563; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8564; SSE-NEXT:    movdqa 128(%r9), %xmm18565; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8566; SSE-NEXT:    movdqa 128(%rax), %xmm08567; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8568; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]8569; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[1,1,1,1]8570; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8571; SSE-NEXT:    movdqa 128(%rdi), %xmm08572; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8573; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm2[2],xmm0[3],xmm2[3]8574; SSE-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]8575; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8576; SSE-NEXT:    movdqa 144(%rsi), %xmm28577; SSE-NEXT:    movdqa 144(%rdx), %xmm08578; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8579; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]8580; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm2[1,1,1,1]8581; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8582; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8583; SSE-NEXT:    movaps 144(%rcx), %xmm48584; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8585; SSE-NEXT:    movaps 144(%r8), %xmm08586; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8587; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm4[1,1]8588; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]8589; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8590; SSE-NEXT:    movdqa 144(%r9), %xmm18591; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8592; SSE-NEXT:    movdqa 144(%rax), %xmm08593; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8594; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]8595; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[1,1,1,1]8596; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8597; SSE-NEXT:    movdqa 144(%rdi), %xmm08598; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8599; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm2[2],xmm0[3],xmm2[3]8600; SSE-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]8601; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8602; SSE-NEXT:    movdqa 160(%rsi), %xmm28603; SSE-NEXT:    movaps 160(%rdx), %xmm18604; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8605; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm2[1,1,1,1]8606; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8607; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm0[0],xmm1[1,2,3]8608; SSE-NEXT:    movaps 160(%rcx), %xmm48609; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8610; SSE-NEXT:    movaps 160(%r8), %xmm08611; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8612; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm4[1,1]8613; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]8614; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8615; SSE-NEXT:    movdqa 160(%r9), %xmm18616; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8617; SSE-NEXT:    movdqa 160(%rax), %xmm08618; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8619; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]8620; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[1,1,1,1]8621; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8622; SSE-NEXT:    movdqa 160(%rdi), %xmm08623; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8624; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm2[2],xmm0[3],xmm2[3]8625; SSE-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]8626; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8627; SSE-NEXT:    movdqa 176(%rsi), %xmm28628; SSE-NEXT:    movdqa 176(%rdx), %xmm08629; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8630; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]8631; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm2[1,1,1,1]8632; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8633; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8634; SSE-NEXT:    movaps 176(%rcx), %xmm48635; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8636; SSE-NEXT:    movaps 176(%r8), %xmm08637; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8638; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm4[1,1]8639; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]8640; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8641; SSE-NEXT:    movdqa 176(%r9), %xmm18642; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8643; SSE-NEXT:    movdqa 176(%rax), %xmm08644; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8645; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]8646; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[1,1,1,1]8647; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8648; SSE-NEXT:    movdqa 176(%rdi), %xmm08649; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8650; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm2[2],xmm0[3],xmm2[3]8651; SSE-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]8652; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8653; SSE-NEXT:    movdqa 192(%rsi), %xmm28654; SSE-NEXT:    movaps 192(%rdx), %xmm18655; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8656; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm2[1,1,1,1]8657; SSE-NEXT:    movdqa %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8658; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm0[0],xmm1[1,2,3]8659; SSE-NEXT:    movaps 192(%rcx), %xmm48660; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8661; SSE-NEXT:    movaps 192(%r8), %xmm08662; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8663; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm4[1,1]8664; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]8665; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8666; SSE-NEXT:    movdqa 192(%r9), %xmm18667; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8668; SSE-NEXT:    movdqa 192(%rax), %xmm08669; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8670; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]8671; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm1[1,1,1,1]8672; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8673; SSE-NEXT:    movdqa 192(%rdi), %xmm08674; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8675; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm2[2],xmm0[3],xmm2[3]8676; SSE-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]8677; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8678; SSE-NEXT:    movdqa 208(%rsi), %xmm38679; SSE-NEXT:    movdqa 208(%rdx), %xmm08680; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8681; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]8682; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm3[1,1,1,1]8683; SSE-NEXT:    movdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8684; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8685; SSE-NEXT:    movaps 208(%rcx), %xmm28686; SSE-NEXT:    movaps 208(%r8), %xmm48687; SSE-NEXT:    movaps %xmm4, %xmm08688; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8689; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm2[1,1]8690; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8691; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]8692; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8693; SSE-NEXT:    movdqa 208(%r9), %xmm68694; SSE-NEXT:    movdqa 208(%rax), %xmm78695; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm7[1,1,1,1]8696; SSE-NEXT:    movdqa %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8697; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm6[1,1,1,1]8698; SSE-NEXT:    movdqa %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8699; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8700; SSE-NEXT:    movdqa 208(%rdi), %xmm08701; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8702; SSE-NEXT:    punpckhdq {{.*#+}} xmm0 = xmm0[2],xmm3[2],xmm0[3],xmm3[3]8703; SSE-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]8704; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8705; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm4[3,3,3,3]8706; SSE-NEXT:    pshufd {{.*#+}} xmm1 = xmm2[3,3,3,3]8707; SSE-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]8708; SSE-NEXT:    movdqa %xmm7, %xmm08709; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[3,3],xmm6[3,3]8710; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,1],xmm0[2,0]8711; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8712; SSE-NEXT:    movdqa 224(%rsi), %xmm08713; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8714; SSE-NEXT:    movaps 224(%rdx), %xmm28715; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8716; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]8717; SSE-NEXT:    movss {{.*#+}} xmm2 = xmm0[0],xmm2[1,2,3]8718; SSE-NEXT:    movaps 224(%rcx), %xmm48719; SSE-NEXT:    movaps 224(%r8), %xmm08720; SSE-NEXT:    movaps %xmm0, %xmm18721; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[1,1],xmm4[1,1]8722; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8723; SSE-NEXT:    shufps {{.*#+}} xmm2 = xmm2[0,1],xmm1[2,0]8724; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8725; SSE-NEXT:    movaps %xmm0, %xmm18726; SSE-NEXT:    movaps 224(%r9), %xmm78727; SSE-NEXT:    movlhps {{.*#+}} xmm1 = xmm1[0],xmm7[0]8728; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8729; SSE-NEXT:    movaps %xmm7, %xmm18730; SSE-NEXT:    movaps %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8731; SSE-NEXT:    unpckhpd {{.*#+}} xmm7 = xmm7[1],xmm0[1]8732; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[3,3,3,3]8733; SSE-NEXT:    pshufd {{.*#+}} xmm2 = xmm4[3,3,3,3]8734; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm0[0],xmm2[1],xmm0[1]8735; SSE-NEXT:    movaps 224(%rax), %xmm08736; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8737; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[3,3],xmm0[3,3]8738; SSE-NEXT:    shufps {{.*#+}} xmm2 = xmm2[0,1],xmm1[0,2]8739; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8740; SSE-NEXT:    movdqa 240(%rsi), %xmm18741; SSE-NEXT:    movdqa %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8742; SSE-NEXT:    movdqa 240(%rdx), %xmm08743; SSE-NEXT:    movdqa %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8744; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]8745; SSE-NEXT:    pshufd {{.*#+}} xmm2 = xmm1[1,1,1,1]8746; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm0[0],xmm2[1],xmm0[1]8747; SSE-NEXT:    movaps 240(%rcx), %xmm68748; SSE-NEXT:    movaps 240(%r8), %xmm08749; SSE-NEXT:    movaps %xmm0, %xmm18750; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[1,1],xmm6[1,1]8751; SSE-NEXT:    shufps {{.*#+}} xmm2 = xmm2[0,1],xmm1[2,0]8752; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8753; SSE-NEXT:    movaps %xmm0, %xmm18754; SSE-NEXT:    movaps 240(%r9), %xmm118755; SSE-NEXT:    movlhps {{.*#+}} xmm1 = xmm1[0],xmm11[0]8756; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8757; SSE-NEXT:    movaps %xmm11, %xmm18758; SSE-NEXT:    movaps %xmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8759; SSE-NEXT:    unpckhpd {{.*#+}} xmm11 = xmm11[1],xmm0[1]8760; SSE-NEXT:    pshufd {{.*#+}} xmm0 = xmm0[3,3,3,3]8761; SSE-NEXT:    pshufd {{.*#+}} xmm2 = xmm6[3,3,3,3]8762; SSE-NEXT:    punpckldq {{.*#+}} xmm2 = xmm2[0],xmm0[0],xmm2[1],xmm0[1]8763; SSE-NEXT:    movaps 240(%rax), %xmm08764; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8765; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[3,3],xmm0[3,3]8766; SSE-NEXT:    shufps {{.*#+}} xmm2 = xmm2[0,1],xmm1[0,2]8767; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8768; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload8769; SSE-NEXT:    movaps %xmm1, %xmm08770; SSE-NEXT:    movaps %xmm13, %xmm28771; SSE-NEXT:    movaps %xmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8772; SSE-NEXT:    unpcklps {{.*#+}} xmm0 = xmm0[0],xmm13[0],xmm0[1],xmm13[1]8773; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload8774; SSE-NEXT:    movaps %xmm4, %xmm38775; SSE-NEXT:    unpcklps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Folded Reload8776; SSE-NEXT:    # xmm3 = xmm3[0],mem[0],xmm3[1],mem[1]8777; SSE-NEXT:    movlhps {{.*#+}} xmm3 = xmm3[0],xmm0[0]8778; SSE-NEXT:    movaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8779; SSE-NEXT:    shufps {{.*#+}} xmm15 = xmm15[0,1],xmm4[1,3]8780; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload8781; SSE-NEXT:    movaps %xmm4, %xmm38782; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Reload8783; SSE-NEXT:    unpcklps {{.*#+}} xmm3 = xmm3[0],xmm13[0],xmm3[1],xmm13[1]8784; SSE-NEXT:    shufps {{.*#+}} xmm3 = xmm3[0,1],xmm15[0,2]8785; SSE-NEXT:    movaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8786; SSE-NEXT:    movaps %xmm4, %xmm08787; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm13[2],xmm0[3],xmm13[3]8788; SSE-NEXT:    movaps %xmm1, %xmm38789; SSE-NEXT:    unpckhps {{.*#+}} xmm3 = xmm3[2],xmm2[2],xmm3[3],xmm2[3]8790; SSE-NEXT:    movlhps {{.*#+}} xmm3 = xmm3[0],xmm0[0]8791; SSE-NEXT:    movaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8792; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload8793; SSE-NEXT:    movaps %xmm1, %xmm08794; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Reload8795; SSE-NEXT:    movlhps {{.*#+}} xmm0 = xmm0[0],xmm13[0]8796; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload8797; SSE-NEXT:    movaps %xmm2, %xmm38798; SSE-NEXT:    unpcklps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Folded Reload8799; SSE-NEXT:    # xmm3 = xmm3[0],mem[0],xmm3[1],mem[1]8800; SSE-NEXT:    shufps {{.*#+}} xmm3 = xmm3[0,1],xmm0[2,0]8801; SSE-NEXT:    movaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8802; SSE-NEXT:    movaps %xmm2, %xmm08803; SSE-NEXT:    shufps $197, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload8804; SSE-NEXT:    # xmm0 = xmm0[1,1],mem[0,3]8805; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload8806; SSE-NEXT:    movaps %xmm2, %xmm38807; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload8808; SSE-NEXT:    unpcklps {{.*#+}} xmm3 = xmm3[0],xmm4[0],xmm3[1],xmm4[1]8809; SSE-NEXT:    shufps {{.*#+}} xmm3 = xmm3[0,1],xmm0[2,0]8810; SSE-NEXT:    movaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8811; SSE-NEXT:    movaps %xmm13, %xmm38812; SSE-NEXT:    unpckhps {{.*#+}} xmm3 = xmm3[2],xmm1[2],xmm3[3],xmm1[3]8813; SSE-NEXT:    movaps %xmm2, %xmm08814; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm4[2],xmm0[3],xmm4[3]8815; SSE-NEXT:    movlhps {{.*#+}} xmm3 = xmm3[0],xmm0[0]8816; SSE-NEXT:    movaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8817; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload8818; SSE-NEXT:    movaps %xmm4, %xmm08819; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload8820; SSE-NEXT:    unpcklps {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]8821; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload8822; SSE-NEXT:    movaps %xmm3, %xmm28823; SSE-NEXT:    unpcklps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Folded Reload8824; SSE-NEXT:    # xmm2 = xmm2[0],mem[0],xmm2[1],mem[1]8825; SSE-NEXT:    movlhps {{.*#+}} xmm2 = xmm2[0],xmm0[0]8826; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8827; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload8828; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,1],xmm3[1,3]8829; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload8830; SSE-NEXT:    movaps %xmm2, %xmm158831; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload8832; SSE-NEXT:    unpcklps {{.*#+}} xmm15 = xmm15[0],xmm3[0],xmm15[1],xmm3[1]8833; SSE-NEXT:    shufps {{.*#+}} xmm15 = xmm15[0,1],xmm0[0,2]8834; SSE-NEXT:    movaps %xmm15, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8835; SSE-NEXT:    movaps %xmm2, %xmm08836; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm3[2],xmm0[3],xmm3[3]8837; SSE-NEXT:    movaps %xmm4, %xmm28838; SSE-NEXT:    unpckhps {{.*#+}} xmm2 = xmm2[2],xmm1[2],xmm2[3],xmm1[3]8839; SSE-NEXT:    movlhps {{.*#+}} xmm2 = xmm2[0],xmm0[0]8840; SSE-NEXT:    movaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8841; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload8842; SSE-NEXT:    movaps %xmm1, %xmm08843; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload8844; SSE-NEXT:    movlhps {{.*#+}} xmm0 = xmm0[0],xmm2[0]8845; SSE-NEXT:    movdqa %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8846; SSE-NEXT:    movdqa %xmm5, %xmm38847; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Folded Reload8848; SSE-NEXT:    # xmm3 = xmm3[0],mem[0],xmm3[1],mem[1]8849; SSE-NEXT:    shufps {{.*#+}} xmm3 = xmm3[0,1],xmm0[2,0]8850; SSE-NEXT:    movaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8851; SSE-NEXT:    movdqa %xmm5, %xmm08852; SSE-NEXT:    shufps $197, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload8853; SSE-NEXT:    # xmm0 = xmm0[1,1],mem[0,3]8854; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload8855; SSE-NEXT:    movaps %xmm3, %xmm58856; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload8857; SSE-NEXT:    unpcklps {{.*#+}} xmm5 = xmm5[0],xmm4[0],xmm5[1],xmm4[1]8858; SSE-NEXT:    shufps {{.*#+}} xmm5 = xmm5[0,1],xmm0[2,0]8859; SSE-NEXT:    movaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8860; SSE-NEXT:    movaps %xmm2, %xmm58861; SSE-NEXT:    unpckhps {{.*#+}} xmm5 = xmm5[2],xmm1[2],xmm5[3],xmm1[3]8862; SSE-NEXT:    movaps %xmm3, %xmm08863; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm4[2],xmm0[3],xmm4[3]8864; SSE-NEXT:    movlhps {{.*#+}} xmm5 = xmm5[0],xmm0[0]8865; SSE-NEXT:    movaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8866; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload8867; SSE-NEXT:    movdqa %xmm2, %xmm08868; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload8869; SSE-NEXT:    punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]8870; SSE-NEXT:    movdqa %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8871; SSE-NEXT:    movdqa %xmm8, %xmm38872; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Folded Reload8873; SSE-NEXT:    # xmm3 = xmm3[0],mem[0],xmm3[1],mem[1]8874; SSE-NEXT:    punpcklqdq {{.*#+}} xmm3 = xmm3[0],xmm0[0]8875; SSE-NEXT:    movdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8876; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload8877; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,1],xmm8[1,3]8878; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload8879; SSE-NEXT:    movaps %xmm4, %xmm88880; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload8881; SSE-NEXT:    unpcklps {{.*#+}} xmm8 = xmm8[0],xmm3[0],xmm8[1],xmm3[1]8882; SSE-NEXT:    shufps {{.*#+}} xmm8 = xmm8[0,1],xmm0[0,2]8883; SSE-NEXT:    movaps %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8884; SSE-NEXT:    movaps %xmm4, %xmm08885; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm3[2],xmm0[3],xmm3[3]8886; SSE-NEXT:    movdqa %xmm2, %xmm38887; SSE-NEXT:    punpckhdq {{.*#+}} xmm3 = xmm3[2],xmm1[2],xmm3[3],xmm1[3]8888; SSE-NEXT:    punpcklqdq {{.*#+}} xmm3 = xmm3[0],xmm0[0]8889; SSE-NEXT:    movdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8890; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload8891; SSE-NEXT:    movaps %xmm1, %xmm08892; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload8893; SSE-NEXT:    movlhps {{.*#+}} xmm0 = xmm0[0],xmm2[0]8894; SSE-NEXT:    movdqa %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8895; SSE-NEXT:    movdqa %xmm9, %xmm38896; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Folded Reload8897; SSE-NEXT:    # xmm3 = xmm3[0],mem[0],xmm3[1],mem[1]8898; SSE-NEXT:    shufps {{.*#+}} xmm3 = xmm3[0,1],xmm0[2,0]8899; SSE-NEXT:    movaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8900; SSE-NEXT:    movdqa %xmm9, %xmm08901; SSE-NEXT:    shufps $197, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload8902; SSE-NEXT:    # xmm0 = xmm0[1,1],mem[0,3]8903; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload8904; SSE-NEXT:    movaps %xmm3, %xmm88905; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload8906; SSE-NEXT:    unpcklps {{.*#+}} xmm8 = xmm8[0],xmm4[0],xmm8[1],xmm4[1]8907; SSE-NEXT:    shufps {{.*#+}} xmm8 = xmm8[0,1],xmm0[2,0]8908; SSE-NEXT:    movaps %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8909; SSE-NEXT:    movaps %xmm2, %xmm88910; SSE-NEXT:    unpckhps {{.*#+}} xmm8 = xmm8[2],xmm1[2],xmm8[3],xmm1[3]8911; SSE-NEXT:    movaps %xmm3, %xmm08912; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm4[2],xmm0[3],xmm4[3]8913; SSE-NEXT:    movlhps {{.*#+}} xmm8 = xmm8[0],xmm0[0]8914; SSE-NEXT:    movaps %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8915; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload8916; SSE-NEXT:    movaps %xmm2, %xmm08917; SSE-NEXT:    movaps %xmm10, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8918; SSE-NEXT:    unpcklps {{.*#+}} xmm0 = xmm0[0],xmm10[0],xmm0[1],xmm10[1]8919; SSE-NEXT:    movdqa %xmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8920; SSE-NEXT:    movdqa %xmm12, %xmm38921; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Folded Reload8922; SSE-NEXT:    # xmm3 = xmm3[0],mem[0],xmm3[1],mem[1]8923; SSE-NEXT:    punpcklqdq {{.*#+}} xmm3 = xmm3[0],xmm0[0]8924; SSE-NEXT:    movdqa %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8925; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload8926; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,1],xmm12[1,3]8927; SSE-NEXT:    movaps (%rsp), %xmm4 # 16-byte Reload8928; SSE-NEXT:    movaps %xmm4, %xmm58929; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload8930; SSE-NEXT:    unpcklps {{.*#+}} xmm5 = xmm5[0],xmm1[0],xmm5[1],xmm1[1]8931; SSE-NEXT:    shufps {{.*#+}} xmm5 = xmm5[0,1],xmm0[0,2]8932; SSE-NEXT:    movaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8933; SSE-NEXT:    movaps %xmm4, %xmm08934; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm1[2],xmm0[3],xmm1[3]8935; SSE-NEXT:    movaps %xmm2, %xmm38936; SSE-NEXT:    unpckhps {{.*#+}} xmm3 = xmm3[2],xmm10[2],xmm3[3],xmm10[3]8937; SSE-NEXT:    movlhps {{.*#+}} xmm3 = xmm3[0],xmm0[0]8938; SSE-NEXT:    movaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8939; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload8940; SSE-NEXT:    movaps %xmm1, %xmm08941; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload8942; SSE-NEXT:    movlhps {{.*#+}} xmm0 = xmm0[0],xmm2[0]8943; SSE-NEXT:    movdqa %xmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8944; SSE-NEXT:    movdqa %xmm14, %xmm38945; SSE-NEXT:    punpckldq {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Folded Reload8946; SSE-NEXT:    # xmm3 = xmm3[0],mem[0],xmm3[1],mem[1]8947; SSE-NEXT:    shufps {{.*#+}} xmm3 = xmm3[0,1],xmm0[2,0]8948; SSE-NEXT:    movaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8949; SSE-NEXT:    shufps $197, {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Folded Reload8950; SSE-NEXT:    # xmm14 = xmm14[1,1],mem[0,3]8951; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload8952; SSE-NEXT:    movaps %xmm4, %xmm58953; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload8954; SSE-NEXT:    unpcklps {{.*#+}} xmm5 = xmm5[0],xmm3[0],xmm5[1],xmm3[1]8955; SSE-NEXT:    shufps {{.*#+}} xmm5 = xmm5[0,1],xmm14[2,0]8956; SSE-NEXT:    movaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8957; SSE-NEXT:    movaps %xmm2, %xmm58958; SSE-NEXT:    unpckhps {{.*#+}} xmm5 = xmm5[2],xmm1[2],xmm5[3],xmm1[3]8959; SSE-NEXT:    movaps %xmm4, %xmm08960; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm3[2],xmm0[3],xmm3[3]8961; SSE-NEXT:    movlhps {{.*#+}} xmm5 = xmm5[0],xmm0[0]8962; SSE-NEXT:    movaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8963; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload8964; SSE-NEXT:    movaps %xmm3, %xmm08965; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload8966; SSE-NEXT:    unpcklps {{.*#+}} xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1]8967; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload8968; SSE-NEXT:    movaps %xmm1, %xmm58969; SSE-NEXT:    unpcklps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Folded Reload8970; SSE-NEXT:    # xmm5 = xmm5[0],mem[0],xmm5[1],mem[1]8971; SSE-NEXT:    movlhps {{.*#+}} xmm5 = xmm5[0],xmm0[0]8972; SSE-NEXT:    movaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8973; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload8974; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,1],xmm1[1,3]8975; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload8976; SSE-NEXT:    movaps %xmm1, %xmm88977; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload8978; SSE-NEXT:    unpcklps {{.*#+}} xmm8 = xmm8[0],xmm4[0],xmm8[1],xmm4[1]8979; SSE-NEXT:    shufps {{.*#+}} xmm8 = xmm8[0,1],xmm0[0,2]8980; SSE-NEXT:    movaps %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8981; SSE-NEXT:    movaps %xmm1, %xmm08982; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm4[2],xmm0[3],xmm4[3]8983; SSE-NEXT:    movaps %xmm3, %xmm18984; SSE-NEXT:    unpckhps {{.*#+}} xmm1 = xmm1[2],xmm2[2],xmm1[3],xmm2[3]8985; SSE-NEXT:    movlhps {{.*#+}} xmm1 = xmm1[0],xmm0[0]8986; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8987; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload8988; SSE-NEXT:    movaps %xmm2, %xmm08989; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload8990; SSE-NEXT:    movlhps {{.*#+}} xmm0 = xmm0[0],xmm3[0]8991; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload8992; SSE-NEXT:    movaps %xmm1, %xmm58993; SSE-NEXT:    unpcklps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Folded Reload8994; SSE-NEXT:    # xmm5 = xmm5[0],mem[0],xmm5[1],mem[1]8995; SSE-NEXT:    shufps {{.*#+}} xmm5 = xmm5[0,1],xmm0[2,0]8996; SSE-NEXT:    movaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill8997; SSE-NEXT:    movaps %xmm1, %xmm08998; SSE-NEXT:    shufps $197, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload8999; SSE-NEXT:    # xmm0 = xmm0[1,1],mem[0,3]9000; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9001; SSE-NEXT:    movaps %xmm1, %xmm89002; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload9003; SSE-NEXT:    unpcklps {{.*#+}} xmm8 = xmm8[0],xmm4[0],xmm8[1],xmm4[1]9004; SSE-NEXT:    shufps {{.*#+}} xmm8 = xmm8[0,1],xmm0[2,0]9005; SSE-NEXT:    movaps %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9006; SSE-NEXT:    movaps %xmm3, %xmm89007; SSE-NEXT:    unpckhps {{.*#+}} xmm8 = xmm8[2],xmm2[2],xmm8[3],xmm2[3]9008; SSE-NEXT:    movaps %xmm1, %xmm09009; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm4[2],xmm0[3],xmm4[3]9010; SSE-NEXT:    movlhps {{.*#+}} xmm8 = xmm8[0],xmm0[0]9011; SSE-NEXT:    movaps %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9012; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload9013; SSE-NEXT:    movaps %xmm3, %xmm09014; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload9015; SSE-NEXT:    unpcklps {{.*#+}} xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1]9016; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9017; SSE-NEXT:    movaps %xmm1, %xmm59018; SSE-NEXT:    unpcklps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Folded Reload9019; SSE-NEXT:    # xmm5 = xmm5[0],mem[0],xmm5[1],mem[1]9020; SSE-NEXT:    movlhps {{.*#+}} xmm5 = xmm5[0],xmm0[0]9021; SSE-NEXT:    movaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9022; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9023; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,1],xmm1[1,3]9024; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9025; SSE-NEXT:    movaps %xmm1, %xmm89026; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload9027; SSE-NEXT:    unpcklps {{.*#+}} xmm8 = xmm8[0],xmm4[0],xmm8[1],xmm4[1]9028; SSE-NEXT:    shufps {{.*#+}} xmm8 = xmm8[0,1],xmm0[0,2]9029; SSE-NEXT:    movaps %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9030; SSE-NEXT:    movaps %xmm1, %xmm09031; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm4[2],xmm0[3],xmm4[3]9032; SSE-NEXT:    movaps %xmm3, %xmm19033; SSE-NEXT:    unpckhps {{.*#+}} xmm1 = xmm1[2],xmm2[2],xmm1[3],xmm2[3]9034; SSE-NEXT:    movlhps {{.*#+}} xmm1 = xmm1[0],xmm0[0]9035; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9036; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload9037; SSE-NEXT:    movaps %xmm2, %xmm09038; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload9039; SSE-NEXT:    movlhps {{.*#+}} xmm0 = xmm0[0],xmm3[0]9040; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9041; SSE-NEXT:    movaps %xmm1, %xmm59042; SSE-NEXT:    unpcklps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Folded Reload9043; SSE-NEXT:    # xmm5 = xmm5[0],mem[0],xmm5[1],mem[1]9044; SSE-NEXT:    shufps {{.*#+}} xmm5 = xmm5[0,1],xmm0[2,0]9045; SSE-NEXT:    movaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9046; SSE-NEXT:    movaps %xmm1, %xmm09047; SSE-NEXT:    shufps $197, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9048; SSE-NEXT:    # xmm0 = xmm0[1,1],mem[0,3]9049; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9050; SSE-NEXT:    movaps %xmm1, %xmm49051; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload9052; SSE-NEXT:    unpcklps {{.*#+}} xmm4 = xmm4[0],xmm5[0],xmm4[1],xmm5[1]9053; SSE-NEXT:    shufps {{.*#+}} xmm4 = xmm4[0,1],xmm0[2,0]9054; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9055; SSE-NEXT:    movaps %xmm3, %xmm49056; SSE-NEXT:    unpckhps {{.*#+}} xmm4 = xmm4[2],xmm2[2],xmm4[3],xmm2[3]9057; SSE-NEXT:    movaps %xmm1, %xmm09058; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm5[2],xmm0[3],xmm5[3]9059; SSE-NEXT:    movlhps {{.*#+}} xmm4 = xmm4[0],xmm0[0]9060; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9061; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Reload9062; SSE-NEXT:    movaps %xmm15, %xmm09063; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload9064; SSE-NEXT:    unpcklps {{.*#+}} xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1]9065; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9066; SSE-NEXT:    movaps %xmm1, %xmm49067; SSE-NEXT:    unpcklps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9068; SSE-NEXT:    # xmm4 = xmm4[0],mem[0],xmm4[1],mem[1]9069; SSE-NEXT:    movlhps {{.*#+}} xmm4 = xmm4[0],xmm0[0]9070; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9071; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9072; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,1],xmm1[1,3]9073; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9074; SSE-NEXT:    movaps %xmm1, %xmm49075; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload9076; SSE-NEXT:    unpcklps {{.*#+}} xmm4 = xmm4[0],xmm5[0],xmm4[1],xmm5[1]9077; SSE-NEXT:    shufps {{.*#+}} xmm4 = xmm4[0,1],xmm0[0,2]9078; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9079; SSE-NEXT:    movaps %xmm1, %xmm09080; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm5[2],xmm0[3],xmm5[3]9081; SSE-NEXT:    unpckhps {{.*#+}} xmm15 = xmm15[2],xmm2[2],xmm15[3],xmm2[3]9082; SSE-NEXT:    movlhps {{.*#+}} xmm15 = xmm15[0],xmm0[0]9083; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload9084; SSE-NEXT:    movaps %xmm14, %xmm09085; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9086; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm1[0,3]9087; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[2,1],xmm14[3,3]9088; SSE-NEXT:    movaps %xmm1, %xmm49089; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9090; SSE-NEXT:    movaps %xmm1, %xmm139091; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload9092; SSE-NEXT:    unpckhps {{.*#+}} xmm13 = xmm13[2],xmm2[2],xmm13[3],xmm2[3]9093; SSE-NEXT:    movlhps {{.*#+}} xmm2 = xmm2[0],xmm1[0]9094; SSE-NEXT:    movaps %xmm2, %xmm39095; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload9096; SSE-NEXT:    unpcklps {{.*#+}} xmm14 = xmm14[0],xmm2[0],xmm14[1],xmm2[1]9097; SSE-NEXT:    shufps {{.*#+}} xmm14 = xmm14[0,1],xmm3[2,0]9098; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload9099; SSE-NEXT:    movaps %xmm3, %xmm129100; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload9101; SSE-NEXT:    unpcklps {{.*#+}} xmm12 = xmm12[0],xmm5[0],xmm12[1],xmm5[1]9102; SSE-NEXT:    shufps {{.*#+}} xmm12 = xmm12[0,1],xmm0[2,0]9103; SSE-NEXT:    unpckhps {{.*#+}} xmm3 = xmm3[2],xmm5[2],xmm3[3],xmm5[3]9104; SSE-NEXT:    movlhps {{.*#+}} xmm13 = xmm13[0],xmm3[0]9105; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[3,3],xmm2[3,3]9106; SSE-NEXT:    shufps {{.*#+}} xmm4 = xmm4[0,2],xmm1[2,0]9107; SSE-NEXT:    movaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9108; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload9109; SSE-NEXT:    movaps %xmm3, %xmm09110; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload9111; SSE-NEXT:    unpcklps {{.*#+}} xmm0 = xmm0[0],xmm4[0],xmm0[1],xmm4[1]9112; SSE-NEXT:    movaps 224(%rdi), %xmm89113; SSE-NEXT:    movaps %xmm8, %xmm109114; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload9115; SSE-NEXT:    unpcklps {{.*#+}} xmm10 = xmm10[0],xmm2[0],xmm10[1],xmm2[1]9116; SSE-NEXT:    movlhps {{.*#+}} xmm10 = xmm10[0],xmm0[0]9117; SSE-NEXT:    movaps %xmm8, %xmm09118; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9119; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm1[0,3]9120; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload9121; SSE-NEXT:    shufps {{.*#+}} xmm5 = xmm5[0,2],xmm0[2,0]9122; SSE-NEXT:    movaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9123; SSE-NEXT:    movaps %xmm8, %xmm09124; SSE-NEXT:    unpckhps {{.*#+}} xmm0 = xmm0[2],xmm2[2],xmm0[3],xmm2[3]9125; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload9126; SSE-NEXT:    shufps {{.*#+}} xmm5 = xmm5[1,1],xmm1[1,1]9127; SSE-NEXT:    shufps {{.*#+}} xmm5 = xmm5[0,2],xmm0[0,1]9128; SSE-NEXT:    movaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9129; SSE-NEXT:    movaps %xmm3, %xmm99130; SSE-NEXT:    unpckhps {{.*#+}} xmm9 = xmm9[2],xmm4[2],xmm9[3],xmm4[3]9131; SSE-NEXT:    shufps {{.*#+}} xmm9 = xmm9[0,1],xmm7[2,0]9132; SSE-NEXT:    shufps {{.*#+}} xmm3 = xmm3[3,3],xmm2[3,3]9133; SSE-NEXT:    shufps {{.*#+}} xmm8 = xmm8[3,1],xmm1[2,3]9134; SSE-NEXT:    shufps {{.*#+}} xmm8 = xmm8[2,0],xmm3[2,0]9135; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9136; SSE-NEXT:    movaps %xmm0, %xmm79137; SSE-NEXT:    unpckhps {{.*#+}} xmm7 = xmm7[2],xmm6[2],xmm7[3],xmm6[3]9138; SSE-NEXT:    movlhps {{.*#+}} xmm6 = xmm6[0],xmm0[0]9139; SSE-NEXT:    movaps %xmm0, %xmm49140; SSE-NEXT:    movaps 240(%rdi), %xmm39141; SSE-NEXT:    movaps %xmm3, %xmm59142; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload9143; SSE-NEXT:    unpcklps {{.*#+}} xmm5 = xmm5[0],xmm2[0],xmm5[1],xmm2[1]9144; SSE-NEXT:    shufps {{.*#+}} xmm5 = xmm5[0,1],xmm6[2,0]9145; SSE-NEXT:    movaps %xmm3, %xmm69146; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9147; SSE-NEXT:    shufps {{.*#+}} xmm6 = xmm6[1,1],xmm1[0,3]9148; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9149; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,2],xmm6[2,0]9150; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9151; SSE-NEXT:    movaps %xmm3, %xmm69152; SSE-NEXT:    unpckhps {{.*#+}} xmm6 = xmm6[2],xmm2[2],xmm6[3],xmm2[3]9153; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9154; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[1,1],xmm1[1,1]9155; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,2],xmm6[0,1]9156; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9157; SSE-NEXT:    shufps {{.*#+}} xmm7 = xmm7[0,1],xmm11[2,0]9158; SSE-NEXT:    shufps {{.*#+}} xmm4 = xmm4[3,3],xmm2[3,3]9159; SSE-NEXT:    shufps {{.*#+}} xmm3 = xmm3[3,1],xmm1[2,3]9160; SSE-NEXT:    shufps {{.*#+}} xmm3 = xmm3[2,0],xmm4[2,0]9161; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload9162; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9163; SSE-NEXT:    # xmm4 = xmm4[3,3],mem[3,3]9164; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9165; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,3],xmm4[2,0]9166; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm11 # 16-byte Reload9167; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm11[2,3,2,3]9168; SSE-NEXT:    movss {{.*#+}} xmm0 = xmm4[0],xmm0[1,2,3]9169; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9170; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm11 # 16-byte Folded Reload9171; SSE-NEXT:    # xmm11 = xmm11[3,3],mem[3,3]9172; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9173; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,3],xmm11[2,0]9174; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9175; SSE-NEXT:    # xmm4 = mem[3,3,3,3]9176; SSE-NEXT:    movss {{.*#+}} xmm0 = xmm4[0],xmm0[1,2,3]9177; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9178; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9179; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9180; SSE-NEXT:    # xmm1 = xmm1[3,3],mem[3,3]9181; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9182; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,3],xmm1[2,0]9183; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload9184; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm6[2,3,2,3]9185; SSE-NEXT:    movss {{.*#+}} xmm0 = xmm4[0],xmm0[1,2,3]9186; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9187; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Folded Reload9188; SSE-NEXT:    # xmm6 = xmm6[3,3],mem[3,3]9189; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9190; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,3],xmm6[2,0]9191; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9192; SSE-NEXT:    # xmm4 = mem[3,3,3,3]9193; SSE-NEXT:    movss {{.*#+}} xmm0 = xmm4[0],xmm0[1,2,3]9194; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9195; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload9196; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9197; SSE-NEXT:    # xmm4 = xmm4[3,3],mem[3,3]9198; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9199; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,3],xmm4[2,0]9200; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload9201; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm6[2,3,2,3]9202; SSE-NEXT:    movss {{.*#+}} xmm0 = xmm4[0],xmm0[1,2,3]9203; SSE-NEXT:    movaps %xmm0, %xmm29204; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Folded Reload9205; SSE-NEXT:    # xmm6 = xmm6[3,3],mem[3,3]9206; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9207; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,3],xmm6[2,0]9208; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9209; SSE-NEXT:    # xmm4 = mem[3,3,3,3]9210; SSE-NEXT:    movss {{.*#+}} xmm0 = xmm4[0],xmm0[1,2,3]9211; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9212; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9213; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9214; SSE-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]9215; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9216; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,3],xmm0[2,0]9217; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload9218; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm6[2,3,2,3]9219; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm4[0],xmm1[1,2,3]9220; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9221; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Folded Reload9222; SSE-NEXT:    # xmm6 = xmm6[3,3],mem[3,3]9223; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9224; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,3],xmm6[2,0]9225; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9226; SSE-NEXT:    # xmm4 = mem[3,3,3,3]9227; SSE-NEXT:    movss {{.*#+}} xmm0 = xmm4[0],xmm0[1,2,3]9228; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9229; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload9230; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9231; SSE-NEXT:    # xmm4 = xmm4[3,3],mem[3,3]9232; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9233; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,3],xmm4[2,0]9234; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload9235; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm6[2,3,2,3]9236; SSE-NEXT:    movss {{.*#+}} xmm0 = xmm4[0],xmm0[1,2,3]9237; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9238; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Folded Reload9239; SSE-NEXT:    # xmm6 = xmm6[3,3],mem[3,3]9240; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9241; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,3],xmm6[2,0]9242; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9243; SSE-NEXT:    # xmm4 = mem[3,3,3,3]9244; SSE-NEXT:    movss {{.*#+}} xmm0 = xmm4[0],xmm0[1,2,3]9245; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9246; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9247; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9248; SSE-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]9249; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9250; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,3],xmm0[2,0]9251; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload9252; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm6[2,3,2,3]9253; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm4[0],xmm1[1,2,3]9254; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9255; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Folded Reload9256; SSE-NEXT:    # xmm6 = xmm6[3,3],mem[3,3]9257; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9258; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,3],xmm6[2,0]9259; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9260; SSE-NEXT:    # xmm4 = mem[3,3,3,3]9261; SSE-NEXT:    movss {{.*#+}} xmm0 = xmm4[0],xmm0[1,2,3]9262; SSE-NEXT:    movaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9263; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload9264; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9265; SSE-NEXT:    # xmm4 = xmm4[3,3],mem[3,3]9266; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9267; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,3],xmm4[2,0]9268; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9269; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm0[2,3,2,3]9270; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm4[0],xmm1[1,2,3]9271; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9272; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9273; SSE-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]9274; SSE-NEXT:    movaps (%rsp), %xmm1 # 16-byte Reload9275; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,3],xmm0[2,0]9276; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9277; SSE-NEXT:    # xmm4 = mem[3,3,3,3]9278; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm4[0],xmm1[1,2,3]9279; SSE-NEXT:    movaps %xmm1, (%rsp) # 16-byte Spill9280; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9281; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9282; SSE-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]9283; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9284; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,3],xmm0[2,0]9285; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9286; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm0[2,3,2,3]9287; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm4[0],xmm1[1,2,3]9288; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9289; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9290; SSE-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]9291; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9292; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,3],xmm0[2,0]9293; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9294; SSE-NEXT:    # xmm4 = mem[3,3,3,3]9295; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm4[0],xmm1[1,2,3]9296; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9297; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9298; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9299; SSE-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]9300; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9301; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,3],xmm0[2,0]9302; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9303; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm0[2,3,2,3]9304; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm4[0],xmm1[1,2,3]9305; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9306; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9307; SSE-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]9308; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9309; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,3],xmm0[2,0]9310; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9311; SSE-NEXT:    # xmm4 = mem[3,3,3,3]9312; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm4[0],xmm1[1,2,3]9313; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9314; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9315; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9316; SSE-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]9317; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9318; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,3],xmm0[2,0]9319; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9320; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm0[2,3,2,3]9321; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm4[0],xmm1[1,2,3]9322; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9323; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9324; SSE-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]9325; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9326; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,3],xmm0[2,0]9327; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9328; SSE-NEXT:    # xmm4 = mem[3,3,3,3]9329; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm4[0],xmm1[1,2,3]9330; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9331; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9332; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9333; SSE-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]9334; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9335; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,3],xmm0[2,0]9336; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9337; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm0[2,3,2,3]9338; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm4[0],xmm1[1,2,3]9339; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9340; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9341; SSE-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]9342; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9343; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,3],xmm0[2,0]9344; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9345; SSE-NEXT:    # xmm4 = mem[3,3,3,3]9346; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm4[0],xmm1[1,2,3]9347; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9348; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9349; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9350; SSE-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]9351; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9352; SSE-NEXT:    shufps {{.*#+}} xmm1 = xmm1[0,3],xmm0[2,0]9353; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9354; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm0[2,3,2,3]9355; SSE-NEXT:    movss {{.*#+}} xmm1 = xmm4[0],xmm1[1,2,3]9356; SSE-NEXT:    movaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9357; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Folded Reload9358; SSE-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]9359; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm11 # 16-byte Reload9360; SSE-NEXT:    shufps {{.*#+}} xmm11 = xmm11[0,3],xmm0[2,0]9361; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9362; SSE-NEXT:    # xmm4 = mem[3,3,3,3]9363; SSE-NEXT:    movss {{.*#+}} xmm11 = xmm4[0],xmm11[1,2,3]9364; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload9365; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9366; SSE-NEXT:    # xmm4 = xmm4[3,3],mem[3,3]9367; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload9368; SSE-NEXT:    shufps {{.*#+}} xmm6 = xmm6[0,3],xmm4[2,0]9369; SSE-NEXT:    movdqa {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9370; SSE-NEXT:    pshufd {{.*#+}} xmm4 = xmm1[2,3,2,3]9371; SSE-NEXT:    movss {{.*#+}} xmm6 = xmm4[0],xmm6[1,2,3]9372; SSE-NEXT:    shufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload9373; SSE-NEXT:    # xmm1 = xmm1[3,3],mem[3,3]9374; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9375; SSE-NEXT:    shufps {{.*#+}} xmm0 = xmm0[0,3],xmm1[2,0]9376; SSE-NEXT:    pshufd $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Folded Reload9377; SSE-NEXT:    # xmm4 = mem[3,3,3,3]9378; SSE-NEXT:    movss {{.*#+}} xmm0 = xmm4[0],xmm0[1,2,3]9379; SSE-NEXT:    movaps %xmm0, %xmm49380; SSE-NEXT:    movq {{[0-9]+}}(%rsp), %rax9381; SSE-NEXT:    movaps %xmm3, 1760(%rax)9382; SSE-NEXT:    movaps %xmm7, 1744(%rax)9383; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9384; SSE-NEXT:    movaps %xmm0, 1728(%rax)9385; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9386; SSE-NEXT:    movaps %xmm1, 1696(%rax)9387; SSE-NEXT:    movaps %xmm5, 1680(%rax)9388; SSE-NEXT:    movaps %xmm8, 1648(%rax)9389; SSE-NEXT:    movaps %xmm9, 1632(%rax)9390; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9391; SSE-NEXT:    movaps %xmm0, 1616(%rax)9392; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9393; SSE-NEXT:    movaps %xmm1, 1584(%rax)9394; SSE-NEXT:    movaps %xmm10, 1568(%rax)9395; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9396; SSE-NEXT:    movaps %xmm0, 1536(%rax)9397; SSE-NEXT:    movaps %xmm13, 1520(%rax)9398; SSE-NEXT:    movaps %xmm12, 1472(%rax)9399; SSE-NEXT:    movaps %xmm14, 1456(%rax)9400; SSE-NEXT:    movaps %xmm15, 1408(%rax)9401; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9402; SSE-NEXT:    movaps %xmm0, 1360(%rax)9403; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9404; SSE-NEXT:    movaps %xmm0, 1344(%rax)9405; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9406; SSE-NEXT:    movaps %xmm0, 1296(%rax)9407; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9408; SSE-NEXT:    movaps %xmm0, 1248(%rax)9409; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9410; SSE-NEXT:    movaps %xmm0, 1232(%rax)9411; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9412; SSE-NEXT:    movaps %xmm0, 1184(%rax)9413; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9414; SSE-NEXT:    movaps %xmm0, 1136(%rax)9415; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9416; SSE-NEXT:    movaps %xmm0, 1120(%rax)9417; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9418; SSE-NEXT:    movaps %xmm1, 1072(%rax)9419; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9420; SSE-NEXT:    movaps %xmm1, 1024(%rax)9421; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9422; SSE-NEXT:    movaps %xmm1, 1008(%rax)9423; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9424; SSE-NEXT:    movaps %xmm1, 960(%rax)9425; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9426; SSE-NEXT:    movaps %xmm1, 912(%rax)9427; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9428; SSE-NEXT:    movaps %xmm1, 896(%rax)9429; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9430; SSE-NEXT:    movaps %xmm1, 848(%rax)9431; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9432; SSE-NEXT:    movaps %xmm1, 800(%rax)9433; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9434; SSE-NEXT:    movaps %xmm1, 784(%rax)9435; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9436; SSE-NEXT:    movaps %xmm1, 736(%rax)9437; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9438; SSE-NEXT:    movaps %xmm1, 688(%rax)9439; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9440; SSE-NEXT:    movaps %xmm1, 672(%rax)9441; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9442; SSE-NEXT:    movaps %xmm1, 624(%rax)9443; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9444; SSE-NEXT:    movaps %xmm1, 576(%rax)9445; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9446; SSE-NEXT:    movaps %xmm1, 560(%rax)9447; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9448; SSE-NEXT:    movaps %xmm1, 512(%rax)9449; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9450; SSE-NEXT:    movaps %xmm1, 464(%rax)9451; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9452; SSE-NEXT:    movaps %xmm1, 448(%rax)9453; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9454; SSE-NEXT:    movaps %xmm1, 400(%rax)9455; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9456; SSE-NEXT:    movaps %xmm1, 352(%rax)9457; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9458; SSE-NEXT:    movaps %xmm1, 336(%rax)9459; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9460; SSE-NEXT:    movaps %xmm1, 288(%rax)9461; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9462; SSE-NEXT:    movaps %xmm1, 240(%rax)9463; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9464; SSE-NEXT:    movaps %xmm1, 224(%rax)9465; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9466; SSE-NEXT:    movaps %xmm1, 176(%rax)9467; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9468; SSE-NEXT:    movaps %xmm1, 128(%rax)9469; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9470; SSE-NEXT:    movaps %xmm1, 112(%rax)9471; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9472; SSE-NEXT:    movaps %xmm1, 64(%rax)9473; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9474; SSE-NEXT:    movaps %xmm1, 16(%rax)9475; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9476; SSE-NEXT:    movaps %xmm1, (%rax)9477; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9478; SSE-NEXT:    movaps %xmm1, 1776(%rax)9479; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9480; SSE-NEXT:    movaps %xmm1, 1712(%rax)9481; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9482; SSE-NEXT:    movaps %xmm1, 1664(%rax)9483; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9484; SSE-NEXT:    movaps %xmm1, 1600(%rax)9485; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9486; SSE-NEXT:    movaps %xmm1, 1552(%rax)9487; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9488; SSE-NEXT:    movaps %xmm1, 1504(%rax)9489; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload9490; SSE-NEXT:    movaps %xmm1, 1488(%rax)9491; SSE-NEXT:    movaps %xmm4, 1440(%rax)9492; SSE-NEXT:    movaps %xmm6, 1424(%rax)9493; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9494; SSE-NEXT:    movaps %xmm0, 1392(%rax)9495; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9496; SSE-NEXT:    movaps %xmm0, 1376(%rax)9497; SSE-NEXT:    movaps %xmm11, 1328(%rax)9498; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9499; SSE-NEXT:    movaps %xmm0, 1312(%rax)9500; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9501; SSE-NEXT:    movaps %xmm0, 1280(%rax)9502; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9503; SSE-NEXT:    movaps %xmm0, 1264(%rax)9504; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9505; SSE-NEXT:    movaps %xmm0, 1216(%rax)9506; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9507; SSE-NEXT:    movaps %xmm0, 1200(%rax)9508; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9509; SSE-NEXT:    movaps %xmm0, 1168(%rax)9510; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9511; SSE-NEXT:    movaps %xmm0, 1152(%rax)9512; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9513; SSE-NEXT:    movaps %xmm0, 1104(%rax)9514; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9515; SSE-NEXT:    movaps %xmm0, 1088(%rax)9516; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9517; SSE-NEXT:    movaps %xmm0, 1056(%rax)9518; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9519; SSE-NEXT:    movaps %xmm0, 1040(%rax)9520; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9521; SSE-NEXT:    movaps %xmm0, 992(%rax)9522; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9523; SSE-NEXT:    movaps %xmm0, 976(%rax)9524; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9525; SSE-NEXT:    movaps %xmm0, 944(%rax)9526; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9527; SSE-NEXT:    movaps %xmm0, 928(%rax)9528; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9529; SSE-NEXT:    movaps %xmm0, 880(%rax)9530; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9531; SSE-NEXT:    movaps %xmm0, 864(%rax)9532; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9533; SSE-NEXT:    movaps %xmm0, 832(%rax)9534; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9535; SSE-NEXT:    movaps %xmm0, 816(%rax)9536; SSE-NEXT:    movaps (%rsp), %xmm0 # 16-byte Reload9537; SSE-NEXT:    movaps %xmm0, 768(%rax)9538; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9539; SSE-NEXT:    movaps %xmm0, 752(%rax)9540; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9541; SSE-NEXT:    movaps %xmm0, 720(%rax)9542; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9543; SSE-NEXT:    movaps %xmm0, 704(%rax)9544; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9545; SSE-NEXT:    movaps %xmm0, 656(%rax)9546; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9547; SSE-NEXT:    movaps %xmm0, 640(%rax)9548; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9549; SSE-NEXT:    movaps %xmm0, 608(%rax)9550; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9551; SSE-NEXT:    movaps %xmm0, 592(%rax)9552; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9553; SSE-NEXT:    movaps %xmm0, 544(%rax)9554; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9555; SSE-NEXT:    movaps %xmm0, 528(%rax)9556; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9557; SSE-NEXT:    movaps %xmm0, 496(%rax)9558; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9559; SSE-NEXT:    movaps %xmm0, 480(%rax)9560; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9561; SSE-NEXT:    movaps %xmm0, 432(%rax)9562; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9563; SSE-NEXT:    movaps %xmm0, 416(%rax)9564; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9565; SSE-NEXT:    movaps %xmm0, 384(%rax)9566; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9567; SSE-NEXT:    movaps %xmm0, 368(%rax)9568; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9569; SSE-NEXT:    movaps %xmm0, 320(%rax)9570; SSE-NEXT:    movaps %xmm2, 304(%rax)9571; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9572; SSE-NEXT:    movaps %xmm0, 272(%rax)9573; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9574; SSE-NEXT:    movaps %xmm0, 256(%rax)9575; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9576; SSE-NEXT:    movaps %xmm0, 208(%rax)9577; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9578; SSE-NEXT:    movaps %xmm0, 192(%rax)9579; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9580; SSE-NEXT:    movaps %xmm0, 160(%rax)9581; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9582; SSE-NEXT:    movaps %xmm0, 144(%rax)9583; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9584; SSE-NEXT:    movaps %xmm0, 96(%rax)9585; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9586; SSE-NEXT:    movaps %xmm0, 80(%rax)9587; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9588; SSE-NEXT:    movaps %xmm0, 48(%rax)9589; SSE-NEXT:    movaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload9590; SSE-NEXT:    movaps %xmm0, 32(%rax)9591; SSE-NEXT:    addq $2760, %rsp # imm = 0xAC89592; SSE-NEXT:    retq9593;9594; AVX-LABEL: store_i32_stride7_vf64:9595; AVX:       # %bb.0:9596; AVX-NEXT:    subq $3432, %rsp # imm = 0xD689597; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %rax9598; AVX-NEXT:    vmovaps 224(%rdi), %ymm19599; AVX-NEXT:    vmovaps 224(%rsi), %ymm29600; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9601; AVX-NEXT:    vmovaps 224(%rdx), %ymm09602; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9603; AVX-NEXT:    vmovaps 224(%rcx), %ymm59604; AVX-NEXT:    vmovups %ymm5, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9605; AVX-NEXT:    vmovaps 224(%r8), %ymm49606; AVX-NEXT:    vmovups %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9607; AVX-NEXT:    vmovaps 224(%rax), %ymm39608; AVX-NEXT:    vmovups %ymm3, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9609; AVX-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm5[2],ymm0[3],ymm5[3],ymm0[6],ymm5[6],ymm0[7],ymm5[7]9610; AVX-NEXT:    vmovaps %ymm1, %ymm59611; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9612; AVX-NEXT:    vunpckhpd {{.*#+}} ymm1 = ymm2[1],ymm1[1],ymm2[3],ymm1[3]9613; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm5[0,1],ymm1[2,0],ymm5[4,5],ymm1[6,4]9614; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm1[2,3],ymm0[2,3]9615; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm4[6,7]9616; AVX-NEXT:    vbroadcastf128 {{.*#+}} ymm1 = mem[0,1,0,1]9617; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]9618; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4,5,6],ymm1[7]9619; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm3[2,3],ymm0[2,3]9620; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm1[1],ymm0[2,3,4],ymm1[5],ymm0[6,7]9621; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9622; AVX-NEXT:    vmovaps (%rax), %xmm29623; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9624; AVX-NEXT:    vmovaps (%r9), %xmm39625; AVX-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9626; AVX-NEXT:    vmovaps (%r8), %xmm49627; AVX-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9628; AVX-NEXT:    vmovaps (%rdi), %xmm69629; AVX-NEXT:    vmovaps (%rsi), %xmm59630; AVX-NEXT:    vmovlhps {{.*#+}} xmm0 = xmm5[0],xmm6[0]9631; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[2,0],xmm6[2,1]9632; AVX-NEXT:    vmovaps %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9633; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm09634; AVX-NEXT:    vmovaps (%rcx), %xmm79635; AVX-NEXT:    vmovaps (%rdx), %xmm89636; AVX-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm8[0],xmm7[0],xmm8[1],xmm7[1]9637; AVX-NEXT:    vmovaps %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9638; AVX-NEXT:    vmovaps %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9639; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,0,1]9640; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3],ymm0[4,5,6,7]9641; AVX-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm4[0],xmm3[0],xmm4[1],xmm3[1]9642; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm19643; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm0, %ymm29644; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[2]9645; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6],ymm0[7]9646; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9647; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm3[1,1],xmm4[1,1]9648; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm09649; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm2[5],ymm0[6,7]9650; AVX-NEXT:    vmovaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9651; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm6[1],xmm5[1]9652; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm5[1,1],xmm1[0,2]9653; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm1, %ymm19654; AVX-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm8[1],xmm7[1],zero9655; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]9656; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]9657; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9658; AVX-NEXT:    vmovaps (%rdi), %ymm19659; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9660; AVX-NEXT:    vmovaps (%rsi), %ymm09661; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9662; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[1,1],ymm1[1,1],ymm0[5,5],ymm1[5,5]9663; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]9664; AVX-NEXT:    vmovaps (%rdx), %ymm29665; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9666; AVX-NEXT:    vmovaps (%rcx), %ymm19667; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9668; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[1,1],ymm1[1,1],ymm2[5,5],ymm1[5,5]9669; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]9670; AVX-NEXT:    vmovaps (%r8), %ymm29671; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9672; AVX-NEXT:    vmovaps (%r9), %ymm89673; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm8[0],ymm2[0],ymm8[2],ymm2[2]9674; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[2,0],ymm2[2,1],ymm1[6,4],ymm2[6,5]9675; AVX-NEXT:    vmovaps (%rax), %ymm29676; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9677; AVX-NEXT:    vperm2f128 {{.*#+}} ymm2 = ymm2[2,3],ymm1[2,3]9678; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm19679; AVX-NEXT:    vshufpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[3]9680; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]9681; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9682; AVX-NEXT:    vmovaps 32(%rdi), %xmm99683; AVX-NEXT:    vmovaps 32(%rsi), %xmm69684; AVX-NEXT:    vmovlhps {{.*#+}} xmm0 = xmm6[0],xmm9[0]9685; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[2,0],xmm9[2,1]9686; AVX-NEXT:    vmovaps %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9687; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm09688; AVX-NEXT:    vmovaps 32(%rcx), %xmm109689; AVX-NEXT:    vmovaps 32(%rdx), %xmm129690; AVX-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm12[0],xmm10[0],xmm12[1],xmm10[1]9691; AVX-NEXT:    vmovaps %xmm10, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9692; AVX-NEXT:    vmovaps %xmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9693; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,0,1]9694; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3],ymm0[4,5,6,7]9695; AVX-NEXT:    vmovaps 32(%r9), %xmm39696; AVX-NEXT:    vmovaps %xmm3, (%rsp) # 16-byte Spill9697; AVX-NEXT:    vmovaps 32(%r8), %xmm49698; AVX-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9699; AVX-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm4[0],xmm3[0],xmm4[1],xmm3[1]9700; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm19701; AVX-NEXT:    vmovaps 32(%rax), %xmm29702; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9703; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm0, %ymm29704; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[2]9705; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6],ymm0[7]9706; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9707; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm3[1,1],xmm4[1,1]9708; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm09709; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm2[5],ymm0[6,7]9710; AVX-NEXT:    vmovaps %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9711; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm9[1],xmm6[1]9712; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm6[1,1],xmm1[0,2]9713; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm1, %ymm19714; AVX-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm12[1],xmm10[1],zero9715; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]9716; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]9717; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9718; AVX-NEXT:    vmovaps 32(%rdi), %ymm09719; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9720; AVX-NEXT:    vmovaps 32(%rsi), %ymm19721; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9722; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm1[1,1],ymm0[1,1],ymm1[5,5],ymm0[5,5]9723; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]9724; AVX-NEXT:    vmovaps 32(%rdx), %ymm19725; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9726; AVX-NEXT:    vmovaps 32(%rcx), %ymm109727; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1],ymm10[1,1],ymm1[5,5],ymm10[5,5]9728; AVX-NEXT:    vmovups %ymm10, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9729; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]9730; AVX-NEXT:    vmovaps 32(%r8), %ymm29731; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9732; AVX-NEXT:    vmovaps 32(%r9), %ymm19733; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9734; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[2]9735; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[2,0],ymm2[2,1],ymm1[6,4],ymm2[6,5]9736; AVX-NEXT:    vmovaps 32(%rax), %ymm29737; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9738; AVX-NEXT:    vperm2f128 {{.*#+}} ymm2 = ymm2[2,3],ymm1[2,3]9739; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm19740; AVX-NEXT:    vshufpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[3]9741; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]9742; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9743; AVX-NEXT:    vmovaps 64(%rdi), %xmm79744; AVX-NEXT:    vmovaps 64(%rsi), %xmm69745; AVX-NEXT:    vmovlhps {{.*#+}} xmm0 = xmm6[0],xmm7[0]9746; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[2,0],xmm7[2,1]9747; AVX-NEXT:    vmovaps %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9748; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm09749; AVX-NEXT:    vmovaps 64(%rcx), %xmm99750; AVX-NEXT:    vmovaps 64(%rdx), %xmm59751; AVX-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm5[0],xmm9[0],xmm5[1],xmm9[1]9752; AVX-NEXT:    vmovaps %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9753; AVX-NEXT:    vmovaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9754; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,0,1]9755; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3],ymm0[4,5,6,7]9756; AVX-NEXT:    vmovaps 64(%r9), %xmm39757; AVX-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9758; AVX-NEXT:    vmovaps 64(%r8), %xmm49759; AVX-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9760; AVX-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm4[0],xmm3[0],xmm4[1],xmm3[1]9761; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm19762; AVX-NEXT:    vmovaps 64(%rax), %xmm29763; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9764; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm0, %ymm29765; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[2]9766; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6],ymm0[7]9767; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9768; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm3[1,1],xmm4[1,1]9769; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm09770; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm2[5],ymm0[6,7]9771; AVX-NEXT:    vmovaps %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9772; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm7[1],xmm6[1]9773; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm6[1,1],xmm1[0,2]9774; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm1, %ymm19775; AVX-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm5[1],xmm9[1],zero9776; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]9777; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]9778; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9779; AVX-NEXT:    vmovaps 64(%rdi), %ymm19780; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9781; AVX-NEXT:    vmovaps 64(%rsi), %ymm09782; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9783; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[1,1],ymm1[1,1],ymm0[5,5],ymm1[5,5]9784; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]9785; AVX-NEXT:    vmovaps 64(%rdx), %ymm29786; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9787; AVX-NEXT:    vmovaps 64(%rcx), %ymm19788; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9789; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[1,1],ymm1[1,1],ymm2[5,5],ymm1[5,5]9790; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]9791; AVX-NEXT:    vmovaps 64(%r8), %ymm29792; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9793; AVX-NEXT:    vmovaps 64(%r9), %ymm19794; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9795; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[2]9796; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[2,0],ymm2[2,1],ymm1[6,4],ymm2[6,5]9797; AVX-NEXT:    vmovaps 64(%rax), %ymm29798; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9799; AVX-NEXT:    vperm2f128 {{.*#+}} ymm2 = ymm2[2,3],ymm1[2,3]9800; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm19801; AVX-NEXT:    vshufpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[3]9802; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]9803; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9804; AVX-NEXT:    vmovaps 96(%rdi), %xmm59805; AVX-NEXT:    vmovaps 96(%rsi), %xmm39806; AVX-NEXT:    vmovlhps {{.*#+}} xmm0 = xmm3[0],xmm5[0]9807; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[2,0],xmm5[2,1]9808; AVX-NEXT:    vmovaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9809; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm09810; AVX-NEXT:    vmovaps 96(%rcx), %xmm79811; AVX-NEXT:    vmovaps 96(%rdx), %xmm99812; AVX-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm9[0],xmm7[0],xmm9[1],xmm7[1]9813; AVX-NEXT:    vmovaps %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9814; AVX-NEXT:    vmovaps %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9815; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,0,1]9816; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3],ymm0[4,5,6,7]9817; AVX-NEXT:    vmovaps 96(%r9), %xmm49818; AVX-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9819; AVX-NEXT:    vmovaps 96(%r8), %xmm69820; AVX-NEXT:    vmovaps %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9821; AVX-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm6[0],xmm4[0],xmm6[1],xmm4[1]9822; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm19823; AVX-NEXT:    vmovaps 96(%rax), %xmm29824; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9825; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm0, %ymm29826; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[2]9827; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6],ymm0[7]9828; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9829; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm4[1,1],xmm6[1,1]9830; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm09831; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm2[5],ymm0[6,7]9832; AVX-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9833; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm5[1],xmm3[1]9834; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm3[1,1],xmm1[0,2]9835; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm1, %ymm19836; AVX-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm9[1],xmm7[1],zero9837; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]9838; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]9839; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9840; AVX-NEXT:    vmovaps 96(%rdi), %ymm09841; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9842; AVX-NEXT:    vmovaps 96(%rsi), %ymm19843; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9844; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm1[1,1],ymm0[1,1],ymm1[5,5],ymm0[5,5]9845; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]9846; AVX-NEXT:    vmovaps 96(%rdx), %ymm29847; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9848; AVX-NEXT:    vmovaps 96(%rcx), %ymm19849; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9850; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[1,1],ymm1[1,1],ymm2[5,5],ymm1[5,5]9851; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]9852; AVX-NEXT:    vmovaps 96(%r8), %ymm29853; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9854; AVX-NEXT:    vmovaps 96(%r9), %ymm149855; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm14[0],ymm2[0],ymm14[2],ymm2[2]9856; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[2,0],ymm2[2,1],ymm1[6,4],ymm2[6,5]9857; AVX-NEXT:    vmovaps 96(%rax), %ymm29858; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9859; AVX-NEXT:    vperm2f128 {{.*#+}} ymm2 = ymm2[2,3],ymm1[2,3]9860; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm19861; AVX-NEXT:    vshufpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[3]9862; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]9863; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9864; AVX-NEXT:    vmovaps 128(%rdi), %xmm59865; AVX-NEXT:    vmovaps 128(%rsi), %xmm49866; AVX-NEXT:    vmovlhps {{.*#+}} xmm0 = xmm4[0],xmm5[0]9867; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[2,0],xmm5[2,1]9868; AVX-NEXT:    vmovaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9869; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm09870; AVX-NEXT:    vmovaps 128(%rcx), %xmm79871; AVX-NEXT:    vmovaps 128(%rdx), %xmm99872; AVX-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm9[0],xmm7[0],xmm9[1],xmm7[1]9873; AVX-NEXT:    vmovaps %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9874; AVX-NEXT:    vmovaps %xmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9875; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,0,1]9876; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3],ymm0[4,5,6,7]9877; AVX-NEXT:    vmovaps 128(%r9), %xmm39878; AVX-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9879; AVX-NEXT:    vmovaps 128(%r8), %xmm69880; AVX-NEXT:    vmovaps %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9881; AVX-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm6[0],xmm3[0],xmm6[1],xmm3[1]9882; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm19883; AVX-NEXT:    vmovaps 128(%rax), %xmm29884; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9885; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm0, %ymm29886; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[2]9887; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6],ymm0[7]9888; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9889; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm3[1,1],xmm6[1,1]9890; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm09891; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm2[5],ymm0[6,7]9892; AVX-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9893; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm5[1],xmm4[1]9894; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm4[1,1],xmm1[0,2]9895; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm1, %ymm19896; AVX-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm9[1],xmm7[1],zero9897; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]9898; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]9899; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9900; AVX-NEXT:    vmovaps 128(%rdi), %ymm19901; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9902; AVX-NEXT:    vmovaps 128(%rsi), %ymm09903; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9904; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[1,1],ymm1[1,1],ymm0[5,5],ymm1[5,5]9905; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]9906; AVX-NEXT:    vmovaps 128(%rdx), %ymm99907; AVX-NEXT:    vmovaps 128(%rcx), %ymm19908; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9909; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm9[1,1],ymm1[1,1],ymm9[5,5],ymm1[5,5]9910; AVX-NEXT:    vmovups %ymm9, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9911; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]9912; AVX-NEXT:    vmovaps 128(%r8), %ymm29913; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9914; AVX-NEXT:    vmovaps 128(%r9), %ymm19915; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9916; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[2]9917; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[2,0],ymm2[2,1],ymm1[6,4],ymm2[6,5]9918; AVX-NEXT:    vmovaps 128(%rax), %ymm29919; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9920; AVX-NEXT:    vperm2f128 {{.*#+}} ymm2 = ymm2[2,3],ymm1[2,3]9921; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm19922; AVX-NEXT:    vshufpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[3]9923; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]9924; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9925; AVX-NEXT:    vmovaps 160(%rdi), %xmm119926; AVX-NEXT:    vmovaps 160(%rsi), %xmm69927; AVX-NEXT:    vmovlhps {{.*#+}} xmm0 = xmm6[0],xmm11[0]9928; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[2,0],xmm11[2,1]9929; AVX-NEXT:    vmovaps %xmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9930; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm09931; AVX-NEXT:    vmovaps 160(%rcx), %xmm79932; AVX-NEXT:    vmovaps 160(%rdx), %xmm39933; AVX-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm3[0],xmm7[0],xmm3[1],xmm7[1]9934; AVX-NEXT:    vmovaps %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9935; AVX-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9936; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,0,1]9937; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3],ymm0[4,5,6,7]9938; AVX-NEXT:    vmovaps 160(%r9), %xmm49939; AVX-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9940; AVX-NEXT:    vmovaps 160(%r8), %xmm59941; AVX-NEXT:    vmovaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9942; AVX-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm5[0],xmm4[0],xmm5[1],xmm4[1]9943; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm19944; AVX-NEXT:    vmovaps 160(%rax), %xmm29945; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9946; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm0, %ymm29947; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[2]9948; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6],ymm0[7]9949; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9950; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm4[1,1],xmm5[1,1]9951; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm09952; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm2[5],ymm0[6,7]9953; AVX-NEXT:    vmovaps %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9954; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm11[1],xmm6[1]9955; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm6[1,1],xmm1[0,2]9956; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm1, %ymm19957; AVX-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm3[1],xmm7[1],zero9958; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]9959; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]9960; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9961; AVX-NEXT:    vmovaps 160(%rdi), %ymm159962; AVX-NEXT:    vmovaps 160(%rsi), %ymm09963; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9964; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[1,1],ymm15[1,1],ymm0[5,5],ymm15[5,5]9965; AVX-NEXT:    vmovups %ymm15, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9966; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]9967; AVX-NEXT:    vmovaps 160(%rdx), %ymm29968; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9969; AVX-NEXT:    vmovaps 160(%rcx), %ymm19970; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9971; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[1,1],ymm1[1,1],ymm2[5,5],ymm1[5,5]9972; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]9973; AVX-NEXT:    vmovaps 160(%r8), %ymm119974; AVX-NEXT:    vmovaps 160(%r9), %ymm139975; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm13[0],ymm11[0],ymm13[2],ymm11[2]9976; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[2,0],ymm11[2,1],ymm1[6,4],ymm11[6,5]9977; AVX-NEXT:    vmovups %ymm11, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9978; AVX-NEXT:    vmovaps 160(%rax), %ymm29979; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9980; AVX-NEXT:    vperm2f128 {{.*#+}} ymm2 = ymm2[2,3],ymm1[2,3]9981; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm19982; AVX-NEXT:    vshufpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[3]9983; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]9984; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill9985; AVX-NEXT:    vmovaps 192(%rdi), %xmm129986; AVX-NEXT:    vmovaps 192(%rsi), %xmm39987; AVX-NEXT:    vmovlhps {{.*#+}} xmm0 = xmm3[0],xmm12[0]9988; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[2,0],xmm12[2,1]9989; AVX-NEXT:    vmovaps %xmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9990; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm09991; AVX-NEXT:    vmovaps 192(%rcx), %xmm79992; AVX-NEXT:    vmovaps 192(%rdx), %xmm69993; AVX-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm6[0],xmm7[0],xmm6[1],xmm7[1]9994; AVX-NEXT:    vmovaps %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9995; AVX-NEXT:    vmovaps %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill9996; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[0,1,0,1]9997; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3],ymm0[4,5,6,7]9998; AVX-NEXT:    vmovaps 192(%r9), %xmm49999; AVX-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10000; AVX-NEXT:    vmovaps 192(%r8), %xmm510001; AVX-NEXT:    vmovaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10002; AVX-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm5[0],xmm4[0],xmm5[1],xmm4[1]10003; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm110004; AVX-NEXT:    vmovaps 192(%rax), %xmm210005; AVX-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10006; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm0, %ymm210007; AVX-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[2]10008; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6],ymm0[7]10009; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10010; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm4[1,1],xmm5[1,1]10011; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm010012; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm2[5],ymm0[6,7]10013; AVX-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10014; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm12[1],xmm3[1]10015; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm3[1,1],xmm1[0,2]10016; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm1, %ymm110017; AVX-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm6[1],xmm7[1],zero10018; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]10019; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]10020; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10021; AVX-NEXT:    vmovaps 192(%rdi), %ymm010022; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10023; AVX-NEXT:    vmovaps 192(%rsi), %ymm710024; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm7[1,1],ymm0[1,1],ymm7[5,5],ymm0[5,5]10025; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]10026; AVX-NEXT:    vmovaps 192(%rdx), %ymm110027; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10028; AVX-NEXT:    vmovaps 192(%rcx), %ymm210029; AVX-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10030; AVX-NEXT:    vshufps {{.*#+}} ymm2 = ymm1[1,1],ymm2[1,1],ymm1[5,5],ymm2[5,5]10031; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm0[0,1,2,3,4],ymm2[5,6],ymm0[7]10032; AVX-NEXT:    vmovaps 192(%r8), %ymm110033; AVX-NEXT:    vmovaps 192(%r9), %ymm210034; AVX-NEXT:    vunpcklpd {{.*#+}} ymm12 = ymm2[0],ymm1[0],ymm2[2],ymm1[2]10035; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm12[2,0],ymm1[2,1],ymm12[6,4],ymm1[6,5]10036; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = mem[2,3],ymm12[2,3]10037; AVX-NEXT:    vextractf128 $1, %ymm12, %xmm1210038; AVX-NEXT:    vshufpd {{.*#+}} ymm0 = ymm12[0],ymm0[0],ymm12[2],ymm0[3]10039; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm4[3,4,5,6],ymm0[7]10040; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10041; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10042; AVX-NEXT:    vunpckhpd {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload10043; AVX-NEXT:    # ymm0 = ymm0[1],mem[1],ymm0[3],mem[3]10044; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[0,1,2,0,4,5,6,4]10045; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload10046; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload10047; AVX-NEXT:    vunpckhps {{.*#+}} ymm4 = ymm3[2],ymm5[2],ymm3[3],ymm5[3],ymm3[6],ymm5[6],ymm3[7],ymm5[7]10048; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3],ymm4[2,3]10049; AVX-NEXT:    vmovups %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10050; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload10051; AVX-NEXT:    vunpckhpd {{.*#+}} ymm4 = ymm4[1],ymm8[1],ymm4[3],ymm8[3]10052; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm8[1,1],ymm4[0,2],ymm8[5,5],ymm4[4,6]10053; AVX-NEXT:    vperm2f128 {{.*#+}} ymm4 = ymm4[2,3,2,3]10054; AVX-NEXT:    vmovaps 16(%rax), %xmm1210055; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0],ymm12[1],ymm4[2,3,4,5,6,7]10056; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm4[0,1],ymm0[2,3,4,5],ymm4[6,7]10057; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10058; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10059; AVX-NEXT:    vunpckhpd {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload10060; AVX-NEXT:    # ymm0 = ymm0[1],mem[1],ymm0[3],mem[3]10061; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[0,1,2,0,4,5,6,4]10062; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload10063; AVX-NEXT:    vunpckhps {{.*#+}} ymm4 = ymm3[2],ymm10[2],ymm3[3],ymm10[3],ymm3[6],ymm10[6],ymm3[7],ymm10[7]10064; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3],ymm4[2,3]10065; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload10066; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload10067; AVX-NEXT:    vunpckhpd {{.*#+}} ymm4 = ymm4[1],ymm3[1],ymm4[3],ymm3[3]10068; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm3[1,1],ymm4[0,2],ymm3[5,5],ymm4[4,6]10069; AVX-NEXT:    vperm2f128 {{.*#+}} ymm4 = ymm4[2,3,2,3]10070; AVX-NEXT:    vmovaps 48(%rax), %xmm1210071; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0],ymm12[1],ymm4[2,3,4,5,6,7]10072; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm4[0,1],ymm0[2,3,4,5],ymm4[6,7]10073; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10074; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10075; AVX-NEXT:    vunpckhpd {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload10076; AVX-NEXT:    # ymm0 = ymm0[1],mem[1],ymm0[3],mem[3]10077; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[0,1,2,0,4,5,6,4]10078; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload10079; AVX-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm4 # 32-byte Folded Reload10080; AVX-NEXT:    # ymm4 = ymm3[2],mem[2],ymm3[3],mem[3],ymm3[6],mem[6],ymm3[7],mem[7]10081; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3],ymm4[2,3]10082; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload10083; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload10084; AVX-NEXT:    vunpckhpd {{.*#+}} ymm4 = ymm4[1],ymm3[1],ymm4[3],ymm3[3]10085; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm3[1,1],ymm4[0,2],ymm3[5,5],ymm4[4,6]10086; AVX-NEXT:    vperm2f128 {{.*#+}} ymm4 = ymm4[2,3,2,3]10087; AVX-NEXT:    vmovaps 80(%rax), %xmm1210088; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0],ymm12[1],ymm4[2,3,4,5,6,7]10089; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm4[0,1],ymm0[2,3,4,5],ymm4[6,7]10090; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10091; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10092; AVX-NEXT:    vunpckhpd {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload10093; AVX-NEXT:    # ymm0 = ymm0[1],mem[1],ymm0[3],mem[3]10094; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[0,1,2,0,4,5,6,4]10095; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload10096; AVX-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm10, %ymm4 # 32-byte Folded Reload10097; AVX-NEXT:    # ymm4 = ymm10[2],mem[2],ymm10[3],mem[3],ymm10[6],mem[6],ymm10[7],mem[7]10098; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3],ymm4[2,3]10099; AVX-NEXT:    vmovups %ymm14, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10100; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload10101; AVX-NEXT:    vunpckhpd {{.*#+}} ymm4 = ymm4[1],ymm14[1],ymm4[3],ymm14[3]10102; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm14[1,1],ymm4[0,2],ymm14[5,5],ymm4[4,6]10103; AVX-NEXT:    vperm2f128 {{.*#+}} ymm4 = ymm4[2,3,2,3]10104; AVX-NEXT:    vmovaps 112(%rax), %xmm1210105; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0],ymm12[1],ymm4[2,3,4,5,6,7]10106; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm4[0,1],ymm0[2,3,4,5],ymm4[6,7]10107; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10108; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10109; AVX-NEXT:    vunpckhpd {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload10110; AVX-NEXT:    # ymm0 = ymm0[1],mem[1],ymm0[3],mem[3]10111; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[0,1,2,0,4,5,6,4]10112; AVX-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm9, %ymm4 # 32-byte Folded Reload10113; AVX-NEXT:    # ymm4 = ymm9[2],mem[2],ymm9[3],mem[3],ymm9[6],mem[6],ymm9[7],mem[7]10114; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3],ymm4[2,3]10115; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload10116; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload10117; AVX-NEXT:    vunpckhpd {{.*#+}} ymm4 = ymm3[1],ymm6[1],ymm3[3],ymm6[3]10118; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm6[1,1],ymm4[0,2],ymm6[5,5],ymm4[4,6]10119; AVX-NEXT:    vperm2f128 {{.*#+}} ymm4 = ymm4[2,3,2,3]10120; AVX-NEXT:    vmovaps 144(%rax), %xmm1210121; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0],ymm12[1],ymm4[2,3,4,5,6,7]10122; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm4[0,1],ymm0[2,3,4,5],ymm4[6,7]10123; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10124; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10125; AVX-NEXT:    vunpckhpd {{.*#+}} ymm0 = ymm0[1],ymm15[1],ymm0[3],ymm15[3]10126; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[0,1,2,0,4,5,6,4]10127; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload10128; AVX-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm9, %ymm4 # 32-byte Folded Reload10129; AVX-NEXT:    # ymm4 = ymm9[2],mem[2],ymm9[3],mem[3],ymm9[6],mem[6],ymm9[7],mem[7]10130; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3],ymm4[2,3]10131; AVX-NEXT:    vmovups %ymm13, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10132; AVX-NEXT:    vunpckhpd {{.*#+}} ymm4 = ymm11[1],ymm13[1],ymm11[3],ymm13[3]10133; AVX-NEXT:    vshufps {{.*#+}} ymm4 = ymm13[1,1],ymm4[0,2],ymm13[5,5],ymm4[4,6]10134; AVX-NEXT:    vperm2f128 {{.*#+}} ymm4 = ymm4[2,3,2,3]10135; AVX-NEXT:    vmovaps 176(%rax), %xmm1210136; AVX-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0],ymm12[1],ymm4[2,3,4,5,6,7]10137; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm4[0,1],ymm0[2,3,4,5],ymm4[6,7]10138; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10139; AVX-NEXT:    vmovups %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10140; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload10141; AVX-NEXT:    vunpckhpd {{.*#+}} ymm0 = ymm7[1],ymm11[1],ymm7[3],ymm11[3]10142; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[0,1,2,0,4,5,6,4]10143; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload10144; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Reload10145; AVX-NEXT:    vunpckhps {{.*#+}} ymm4 = ymm6[2],ymm8[2],ymm6[3],ymm8[3],ymm6[6],ymm8[6],ymm6[7],ymm8[7]10146; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3],ymm4[2,3]10147; AVX-NEXT:    vunpckhpd {{.*#+}} ymm1 = ymm1[1],ymm2[1],ymm1[3],ymm2[3]10148; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[1,1],ymm1[0,2],ymm2[5,5],ymm1[4,6]10149; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm1[2,3,2,3]10150; AVX-NEXT:    vmovaps 208(%rax), %xmm210151; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]10152; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]10153; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10154; AVX-NEXT:    vmovaps 224(%rsi), %xmm310155; AVX-NEXT:    vmovaps 224(%rdi), %xmm210156; AVX-NEXT:    vunpckhpd {{.*#+}} xmm1 = xmm2[1],xmm3[1]10157; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm3[1,1],xmm1[0,2]10158; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm1, %ymm110159; AVX-NEXT:    vmovaps 224(%rcx), %xmm410160; AVX-NEXT:    vmovaps 224(%rdx), %xmm1210161; AVX-NEXT:    vinsertps {{.*#+}} xmm0 = zero,xmm12[1],xmm4[1],zero10162; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm0[1,2],ymm1[3,4,5,6,7]10163; AVX-NEXT:    vbroadcastss 228(%r8), %ymm1410164; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2],ymm14[3],ymm1[4,5,6,7]10165; AVX-NEXT:    vbroadcastss 228(%r9), %ymm1410166; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm14[4,5],ymm1[6,7]10167; AVX-NEXT:    vinsertf128 $1, 224(%rax), %ymm0, %ymm010168; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1],ymm1[2,3,4],ymm0[5],ymm1[6,7]10169; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10170; AVX-NEXT:    vunpckhpd {{.*#+}} xmm0 = xmm4[1],xmm12[1]10171; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[2,0],xmm12[2,3]10172; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm010173; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm2[3,3],xmm3[3,3]10174; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm110175; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]10176; AVX-NEXT:    vblendps $12, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload10177; AVX-NEXT:    # ymm0 = ymm0[0,1],mem[2,3],ymm0[4,5,6,7]10178; AVX-NEXT:    vbroadcastss 232(%r9), %xmm110179; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm1[3],ymm0[4,5,6,7]10180; AVX-NEXT:    vbroadcastss 232(%rax), %ymm110181; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4],ymm0[5,6,7]10182; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10183; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm8[3,3],ymm6[3,3],ymm8[7,7],ymm6[7,7]10184; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]10185; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm11[3,3],ymm7[3,3],ymm11[7,7],ymm7[7,7]10186; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm110187; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]10188; AVX-NEXT:    vbroadcastss 220(%r8), %ymm110189; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]10190; AVX-NEXT:    vbroadcastss 220(%r9), %ymm110191; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm1[6,7]10192; AVX-NEXT:    vbroadcastsd 216(%rax), %ymm110193; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4,5,6],ymm1[7]10194; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10195; AVX-NEXT:    vunpcklps {{.*#+}} xmm0 = xmm12[0],xmm4[0],xmm12[1],xmm4[1]10196; AVX-NEXT:    vmovlhps {{.*#+}} xmm1 = xmm3[0],xmm2[0]10197; AVX-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[2,0],xmm2[2,1]10198; AVX-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[0,1,0,1]10199; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm210200; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm2[0,1],ymm0[2,3],ymm2[4,5,6,7]10201; AVX-NEXT:    vinsertf128 $1, 224(%r8), %ymm1, %ymm110202; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3],ymm1[4,5],ymm0[6,7]10203; AVX-NEXT:    vbroadcastss 224(%r9), %ymm110204; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]10205; AVX-NEXT:    vbroadcastss 224(%rax), %ymm110206; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm1[6],ymm0[7]10207; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10208; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload10209; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Reload10210; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm8[3,3],ymm3[3,3],ymm8[7,7],ymm3[7,7]10211; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]10212; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload10213; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload10214; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm4[3,3],ymm2[3,3],ymm4[7,7],ymm2[7,7]10215; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm110216; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]10217; AVX-NEXT:    vbroadcastss 252(%r8), %ymm110218; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]10219; AVX-NEXT:    vbroadcastss 252(%r9), %ymm110220; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm1[6,7]10221; AVX-NEXT:    vbroadcastsd 248(%rax), %ymm110222; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4,5,6],ymm1[7]10223; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10224; AVX-NEXT:    vunpcklpd {{.*#+}} ymm0 = ymm3[0],ymm8[0],ymm3[2],ymm8[2]10225; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm8[3,1],ymm0[0,2],ymm8[7,5],ymm0[4,6]10226; AVX-NEXT:    vunpcklps {{.*#+}} ymm1 = ymm4[0],ymm2[0],ymm4[1],ymm2[1],ymm4[4],ymm2[4],ymm4[5],ymm2[5]10227; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5],ymm0[6,7]10228; AVX-NEXT:    vbroadcastss 236(%r8), %ymm110229; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm1[1],ymm0[2,3,4,5,6,7]10230; AVX-NEXT:    vbroadcastss 236(%r9), %xmm110231; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3],ymm0[4,5,6,7]10232; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload10233; AVX-NEXT:    # ymm0 = ymm0[0,1,2],mem[3],ymm0[4,5,6,7]10234; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10235; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm3[1,1],ymm8[1,1],ymm3[5,5],ymm8[5,5]10236; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[1,1],ymm4[1,1],ymm2[5,5],ymm4[5,5]10237; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm1[2,3,2,3]10238; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]10239; AVX-NEXT:    vbroadcastsd 240(%r8), %ymm110240; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4,5,6],ymm1[7]10241; AVX-NEXT:    vbroadcastss 240(%r9), %xmm110242; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm1[1],ymm0[2,3,4,5,6,7]10243; AVX-NEXT:    vbroadcastss 240(%rax), %ymm110244; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2],ymm0[3,4,5,6,7]10245; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10246; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload10247; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload10248; AVX-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]10249; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload10250; AVX-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8, %xmm1 # 16-byte Folded Reload10251; AVX-NEXT:    # xmm1 = xmm8[2],mem[2],xmm8[3],mem[3]10252; AVX-NEXT:    vinsertf128 $1, %xmm8, %ymm1, %ymm110253; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm010254; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]10255; AVX-NEXT:    vpermilps $170, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload10256; AVX-NEXT:    # xmm1 = mem[2,2,2,2]10257; AVX-NEXT:    vblendps $7, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload10258; AVX-NEXT:    # xmm1 = mem[0,1,2],xmm1[3]10259; AVX-NEXT:    vbroadcastsd 8(%rax), %ymm210260; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]10261; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3,4],ymm0[5,6,7]10262; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10263; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm5, %ymm0 # 32-byte Folded Reload10264; AVX-NEXT:    # ymm0 = ymm5[3,3],mem[3,3],ymm5[7,7],mem[7,7]10265; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]10266; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload10267; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10268; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[3,3],ymm6[3,3],ymm1[7,7],ymm6[7,7]10269; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm110270; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]10271; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10272; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload10273; AVX-NEXT:    # ymm1 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]10274; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload10275; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[2,3],ymm1[1,2],ymm2[6,7],ymm1[5,6]10276; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm1[2,3,2,3]10277; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[0,2,3,1,4,6,7,5]10278; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]10279; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10280; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload10281; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload10282; AVX-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]10283; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload10284; AVX-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2, %xmm1 # 16-byte Folded Reload10285; AVX-NEXT:    # xmm1 = xmm2[2],mem[2],xmm2[3],mem[3]10286; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm1, %ymm110287; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm010288; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]10289; AVX-NEXT:    vpermilps $170, (%rsp), %xmm1 # 16-byte Folded Reload10290; AVX-NEXT:    # xmm1 = mem[2,2,2,2]10291; AVX-NEXT:    vblendps $7, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload10292; AVX-NEXT:    # xmm1 = mem[0,1,2],xmm1[3]10293; AVX-NEXT:    vbroadcastsd 40(%rax), %ymm210294; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]10295; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3,4],ymm0[5,6,7]10296; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10297; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10298; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload10299; AVX-NEXT:    # ymm0 = ymm0[3,3],mem[3,3],ymm0[7,7],mem[7,7]10300; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]10301; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload10302; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm1 # 32-byte Folded Reload10303; AVX-NEXT:    # ymm1 = ymm4[3,3],mem[3,3],ymm4[7,7],mem[7,7]10304; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm110305; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]10306; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10307; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload10308; AVX-NEXT:    # ymm1 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]10309; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload10310; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[2,3],ymm1[1,2],ymm2[6,7],ymm1[5,6]10311; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm1[2,3,2,3]10312; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[0,2,3,1,4,6,7,5]10313; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]10314; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10315; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload10316; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload10317; AVX-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]10318; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload10319; AVX-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2, %xmm1 # 16-byte Folded Reload10320; AVX-NEXT:    # xmm1 = xmm2[2],mem[2],xmm2[3],mem[3]10321; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm1, %ymm110322; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm010323; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]10324; AVX-NEXT:    vpermilps $170, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload10325; AVX-NEXT:    # xmm1 = mem[2,2,2,2]10326; AVX-NEXT:    vblendps $7, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload10327; AVX-NEXT:    # xmm1 = mem[0,1,2],xmm1[3]10328; AVX-NEXT:    vbroadcastsd 72(%rax), %ymm210329; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]10330; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3,4],ymm0[5,6,7]10331; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10332; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10333; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload10334; AVX-NEXT:    # ymm0 = ymm0[3,3],mem[3,3],ymm0[7,7],mem[7,7]10335; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]10336; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10337; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload10338; AVX-NEXT:    # ymm1 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]10339; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm110340; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]10341; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10342; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload10343; AVX-NEXT:    # ymm1 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]10344; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload10345; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[2,3],ymm1[1,2],ymm2[6,7],ymm1[5,6]10346; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm1[2,3,2,3]10347; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[0,2,3,1,4,6,7,5]10348; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]10349; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10350; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload10351; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload10352; AVX-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]10353; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload10354; AVX-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2, %xmm1 # 16-byte Folded Reload10355; AVX-NEXT:    # xmm1 = xmm2[2],mem[2],xmm2[3],mem[3]10356; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm1, %ymm110357; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm010358; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]10359; AVX-NEXT:    vpermilps $170, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload10360; AVX-NEXT:    # xmm1 = mem[2,2,2,2]10361; AVX-NEXT:    vblendps $7, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload10362; AVX-NEXT:    # xmm1 = mem[0,1,2],xmm1[3]10363; AVX-NEXT:    vbroadcastsd 104(%rax), %ymm210364; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]10365; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3,4],ymm0[5,6,7]10366; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10367; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10368; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[3,3],ymm10[3,3],ymm0[7,7],ymm10[7,7]10369; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]10370; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10371; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload10372; AVX-NEXT:    # ymm1 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]10373; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm110374; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]10375; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10376; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload10377; AVX-NEXT:    # ymm1 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]10378; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload10379; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[2,3],ymm1[1,2],ymm2[6,7],ymm1[5,6]10380; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm1[2,3,2,3]10381; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[0,2,3,1,4,6,7,5]10382; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]10383; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10384; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload10385; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 16-byte Folded Reload10386; AVX-NEXT:    # xmm0 = xmm0[3,3],mem[3,3]10387; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload10388; AVX-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2, %xmm1 # 16-byte Folded Reload10389; AVX-NEXT:    # xmm1 = xmm2[2],mem[2],xmm2[3],mem[3]10390; AVX-NEXT:    vinsertf128 $1, %xmm2, %ymm1, %ymm110391; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm010392; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]10393; AVX-NEXT:    vpermilps $170, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Folded Reload10394; AVX-NEXT:    # xmm1 = mem[2,2,2,2]10395; AVX-NEXT:    vblendps $7, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload10396; AVX-NEXT:    # xmm1 = mem[0,1,2],xmm1[3]10397; AVX-NEXT:    vbroadcastsd 136(%rax), %ymm210398; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]10399; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3,4],ymm0[5,6,7]10400; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10401; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm15 # 32-byte Reload10402; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload10403; AVX-NEXT:    vshufps {{.*#+}} ymm0 = ymm12[3,3],ymm15[3,3],ymm12[7,7],ymm15[7,7]10404; AVX-NEXT:    vperm2f128 {{.*#+}} ymm0 = ymm0[2,3,2,3]10405; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload10406; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload10407; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm2[3,3],ymm11[3,3],ymm2[7,7],ymm11[7,7]10408; AVX-NEXT:    vextractf128 $1, %ymm1, %xmm110409; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]10410; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10411; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload10412; AVX-NEXT:    # ymm1 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]10413; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload10414; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm3[2,3],ymm1[1,2],ymm3[6,7],ymm1[5,6]10415; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm1[2,3,2,3]10416; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[0,2,3,1,4,6,7,5]10417; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]10418; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10419; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload10420; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm1 # 16-byte Folded Reload10421; AVX-NEXT:    # xmm1 = xmm0[3,3],mem[3,3]10422; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload10423; AVX-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm3 # 16-byte Folded Reload10424; AVX-NEXT:    # xmm3 = xmm0[2],mem[2],xmm0[3],mem[3]10425; AVX-NEXT:    vinsertf128 $1, %xmm0, %ymm3, %ymm310426; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm110427; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm3[0,1,2,3,4],ymm1[5,6],ymm3[7]10428; AVX-NEXT:    vpermilps $170, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Folded Reload10429; AVX-NEXT:    # xmm3 = mem[2,2,2,2]10430; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Reload10431; AVX-NEXT:    vblendps {{.*#+}} xmm3 = xmm13[0,1,2],xmm3[3]10432; AVX-NEXT:    vbroadcastsd 168(%rax), %ymm1410433; AVX-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3],ymm14[4,5,6,7]10434; AVX-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm3[2,3,4],ymm1[5,6,7]10435; AVX-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10436; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload10437; AVX-NEXT:    vshufps {{.*#+}} ymm1 = ymm10[3,3],ymm9[3,3],ymm10[7,7],ymm9[7,7]10438; AVX-NEXT:    vperm2f128 {{.*#+}} ymm1 = ymm1[2,3,2,3]10439; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload10440; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10441; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm0[3,3],ymm9[3,3],ymm0[7,7],ymm9[7,7]10442; AVX-NEXT:    vextractf128 $1, %ymm3, %xmm310443; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm3[0,1,2],ymm1[3,4,5,6,7]10444; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload10445; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm3 # 32-byte Folded Reload10446; AVX-NEXT:    # ymm3 = ymm3[3,3],mem[3,3],ymm3[7,7],mem[7,7]10447; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload10448; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm5[2,3],ymm3[1,2],ymm5[6,7],ymm3[5,6]10449; AVX-NEXT:    vperm2f128 {{.*#+}} ymm3 = ymm3[2,3,2,3]10450; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm3[0,2,3,1,4,6,7,5]10451; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm3[0],ymm1[1,2,3,4],ymm3[5,6,7]10452; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10453; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload10454; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload10455; AVX-NEXT:    # xmm1 = xmm1[3,3],mem[3,3]10456; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload10457; AVX-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5, %xmm3 # 16-byte Folded Reload10458; AVX-NEXT:    # xmm3 = xmm5[2],mem[2],xmm5[3],mem[3]10459; AVX-NEXT:    vinsertf128 $1, %xmm5, %ymm3, %ymm310460; AVX-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm110461; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm3[0,1,2,3,4],ymm1[5,6],ymm3[7]10462; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload10463; AVX-NEXT:    vshufps {{.*#+}} xmm3 = xmm8[2,2,2,2]10464; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload10465; AVX-NEXT:    vblendps {{.*#+}} xmm3 = xmm7[0,1,2],xmm3[3]10466; AVX-NEXT:    vbroadcastsd 200(%rax), %ymm510467; AVX-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0,1,2,3],ymm5[4,5,6,7]10468; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm3[2,3,4],ymm1[5,6,7]10469; AVX-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10470; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10471; AVX-NEXT:    vunpcklps {{.*#+}} ymm1 = ymm1[0],ymm6[0],ymm1[1],ymm6[1],ymm1[4],ymm6[4],ymm1[5],ymm6[5]10472; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload10473; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload10474; AVX-NEXT:    vunpcklpd {{.*#+}} ymm3 = ymm3[0],ymm6[0],ymm3[2],ymm6[2]10475; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm6[3,1],ymm3[0,2],ymm6[7,5],ymm3[4,6]10476; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm3[0,1,2,3],ymm1[4,5],ymm3[6,7]10477; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload10478; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload10479; AVX-NEXT:    # xmm3 = xmm3[3,3],mem[3,3]10480; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload10481; AVX-NEXT:    # xmm3 = xmm3[0,1,2],mem[3]10482; AVX-NEXT:    vblendps {{.*#+}} ymm14 = ymm1[0],ymm3[1,2,3],ymm1[4,5,6,7]10483; AVX-NEXT:    vunpcklps {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm1 # 32-byte Folded Reload10484; AVX-NEXT:    # ymm1 = ymm4[0],mem[0],ymm4[1],mem[1],ymm4[4],mem[4],ymm4[5],mem[5]10485; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload10486; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload10487; AVX-NEXT:    vunpcklpd {{.*#+}} ymm3 = ymm3[0],ymm4[0],ymm3[2],ymm4[2]10488; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm4[3,1],ymm3[0,2],ymm4[7,5],ymm3[4,6]10489; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm3[0,1,2,3],ymm1[4,5],ymm3[6,7]10490; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload10491; AVX-NEXT:    vshufps $255, (%rsp), %xmm3, %xmm3 # 16-byte Folded Reload10492; AVX-NEXT:    # xmm3 = xmm3[3,3],mem[3,3]10493; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload10494; AVX-NEXT:    # xmm3 = xmm3[0,1,2],mem[3]10495; AVX-NEXT:    vblendps {{.*#+}} ymm6 = ymm1[0],ymm3[1,2,3],ymm1[4,5,6,7]10496; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10497; AVX-NEXT:    vunpcklps {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload10498; AVX-NEXT:    # ymm1 = ymm1[0],mem[0],ymm1[1],mem[1],ymm1[4],mem[4],ymm1[5],mem[5]10499; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload10500; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload10501; AVX-NEXT:    vunpcklpd {{.*#+}} ymm3 = ymm3[0],ymm4[0],ymm3[2],ymm4[2]10502; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm4[3,1],ymm3[0,2],ymm4[7,5],ymm3[4,6]10503; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm3[0,1,2,3],ymm1[4,5],ymm3[6,7]10504; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload10505; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload10506; AVX-NEXT:    # xmm3 = xmm3[3,3],mem[3,3]10507; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload10508; AVX-NEXT:    # xmm3 = xmm3[0,1,2],mem[3]10509; AVX-NEXT:    vblendps {{.*#+}} ymm5 = ymm1[0],ymm3[1,2,3],ymm1[4,5,6,7]10510; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload10511; AVX-NEXT:    vunpcklps {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload10512; AVX-NEXT:    # ymm1 = ymm1[0],mem[0],ymm1[1],mem[1],ymm1[4],mem[4],ymm1[5],mem[5]10513; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload10514; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload10515; AVX-NEXT:    vunpcklpd {{.*#+}} ymm3 = ymm3[0],ymm4[0],ymm3[2],ymm4[2]10516; AVX-NEXT:    vshufps {{.*#+}} ymm3 = ymm4[3,1],ymm3[0,2],ymm4[7,5],ymm3[4,6]10517; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm3[0,1,2,3],ymm1[4,5],ymm3[6,7]10518; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload10519; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload10520; AVX-NEXT:    # xmm3 = xmm3[3,3],mem[3,3]10521; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm3 # 16-byte Folded Reload10522; AVX-NEXT:    # xmm3 = xmm3[0,1,2],mem[3]10523; AVX-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm3[1,2,3],ymm1[4,5,6,7]10524; AVX-NEXT:    vunpcklps {{.*#+}} ymm3 = ymm2[0],ymm11[0],ymm2[1],ymm11[1],ymm2[4],ymm11[4],ymm2[5],ymm11[5]10525; AVX-NEXT:    vmovaps %ymm12, %ymm210526; AVX-NEXT:    vunpcklpd {{.*#+}} ymm12 = ymm15[0],ymm12[0],ymm15[2],ymm12[2]10527; AVX-NEXT:    vshufps {{.*#+}} ymm12 = ymm2[3,1],ymm12[0,2],ymm2[7,5],ymm12[4,6]10528; AVX-NEXT:    vblendps {{.*#+}} ymm3 = ymm12[0,1,2,3],ymm3[4,5],ymm12[6,7]10529; AVX-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm2 # 16-byte Reload10530; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm2, %xmm12 # 16-byte Folded Reload10531; AVX-NEXT:    # xmm12 = xmm2[3,3],mem[3,3]10532; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm12, %xmm12 # 16-byte Folded Reload10533; AVX-NEXT:    # xmm12 = xmm12[0,1,2],mem[3]10534; AVX-NEXT:    vblendps {{.*#+}} ymm3 = ymm3[0],ymm12[1,2,3],ymm3[4,5,6,7]10535; AVX-NEXT:    vunpcklps {{.*#+}} ymm12 = ymm0[0],ymm9[0],ymm0[1],ymm9[1],ymm0[4],ymm9[4],ymm0[5],ymm9[5]10536; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload10537; AVX-NEXT:    vunpcklpd {{.*#+}} ymm15 = ymm2[0],ymm10[0],ymm2[2],ymm10[2]10538; AVX-NEXT:    vshufps {{.*#+}} ymm11 = ymm10[3,1],ymm15[0,2],ymm10[7,5],ymm15[4,6]10539; AVX-NEXT:    vblendps {{.*#+}} ymm11 = ymm11[0,1,2,3],ymm12[4,5],ymm11[6,7]10540; AVX-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm13, %xmm12 # 16-byte Folded Reload10541; AVX-NEXT:    # xmm12 = xmm13[3,3],mem[3,3]10542; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm12, %xmm12 # 16-byte Folded Reload10543; AVX-NEXT:    # xmm12 = xmm12[0,1,2],mem[3]10544; AVX-NEXT:    vblendps {{.*#+}} ymm11 = ymm11[0],ymm12[1,2,3],ymm11[4,5,6,7]10545; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10546; AVX-NEXT:    vunpcklps {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm12 # 32-byte Folded Reload10547; AVX-NEXT:    # ymm12 = ymm0[0],mem[0],ymm0[1],mem[1],ymm0[4],mem[4],ymm0[5],mem[5]10548; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10549; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload10550; AVX-NEXT:    vunpcklpd {{.*#+}} ymm13 = ymm2[0],ymm0[0],ymm2[2],ymm0[2]10551; AVX-NEXT:    vshufps {{.*#+}} ymm10 = ymm0[3,1],ymm13[0,2],ymm0[7,5],ymm13[4,6]10552; AVX-NEXT:    vblendps {{.*#+}} ymm10 = ymm10[0,1,2,3],ymm12[4,5],ymm10[6,7]10553; AVX-NEXT:    vshufps {{.*#+}} xmm12 = xmm7[3,3],xmm8[3,3]10554; AVX-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm12, %xmm12 # 16-byte Folded Reload10555; AVX-NEXT:    # xmm12 = xmm12[0,1,2],mem[3]10556; AVX-NEXT:    vblendps {{.*#+}} ymm10 = ymm10[0],ymm12[1,2,3],ymm10[4,5,6,7]10557; AVX-NEXT:    movq {{[0-9]+}}(%rsp), %rax10558; AVX-NEXT:    vmovaps %ymm10, 1440(%rax)10559; AVX-NEXT:    vmovaps %ymm11, 1216(%rax)10560; AVX-NEXT:    vmovaps %ymm3, 992(%rax)10561; AVX-NEXT:    vmovaps %ymm1, 768(%rax)10562; AVX-NEXT:    vmovaps %ymm5, 544(%rax)10563; AVX-NEXT:    vmovaps %ymm6, 320(%rax)10564; AVX-NEXT:    vmovaps %ymm14, 96(%rax)10565; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10566; AVX-NEXT:    vmovaps %ymm0, 1504(%rax)10567; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10568; AVX-NEXT:    vmovaps %ymm0, 1408(%rax)10569; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10570; AVX-NEXT:    vmovaps %ymm0, 1312(%rax)10571; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10572; AVX-NEXT:    vmovaps %ymm0, 1280(%rax)10573; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10574; AVX-NEXT:    vmovaps %ymm0, 1184(%rax)10575; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10576; AVX-NEXT:    vmovaps %ymm0, 1088(%rax)10577; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10578; AVX-NEXT:    vmovaps %ymm0, 1056(%rax)10579; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10580; AVX-NEXT:    vmovaps %ymm0, 960(%rax)10581; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10582; AVX-NEXT:    vmovaps %ymm0, 864(%rax)10583; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10584; AVX-NEXT:    vmovaps %ymm0, 832(%rax)10585; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10586; AVX-NEXT:    vmovaps %ymm0, 736(%rax)10587; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10588; AVX-NEXT:    vmovaps %ymm0, 640(%rax)10589; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10590; AVX-NEXT:    vmovaps %ymm0, 608(%rax)10591; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10592; AVX-NEXT:    vmovaps %ymm0, 512(%rax)10593; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10594; AVX-NEXT:    vmovaps %ymm0, 416(%rax)10595; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10596; AVX-NEXT:    vmovaps %ymm0, 384(%rax)10597; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10598; AVX-NEXT:    vmovaps %ymm0, 288(%rax)10599; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10600; AVX-NEXT:    vmovaps %ymm0, 192(%rax)10601; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10602; AVX-NEXT:    vmovaps %ymm0, 160(%rax)10603; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10604; AVX-NEXT:    vmovaps %ymm0, 64(%rax)10605; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10606; AVX-NEXT:    vmovaps %ymm0, 1696(%rax)10607; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10608; AVX-NEXT:    vmovaps %ymm0, 1664(%rax)10609; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10610; AVX-NEXT:    vmovaps %ymm0, 1472(%rax)10611; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10612; AVX-NEXT:    vmovaps %ymm0, 1376(%rax)10613; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10614; AVX-NEXT:    vmovaps %ymm0, 1344(%rax)10615; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10616; AVX-NEXT:    vmovaps %ymm0, 1248(%rax)10617; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10618; AVX-NEXT:    vmovaps %ymm0, 1152(%rax)10619; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10620; AVX-NEXT:    vmovaps %ymm0, 1120(%rax)10621; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10622; AVX-NEXT:    vmovaps %ymm0, 1024(%rax)10623; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10624; AVX-NEXT:    vmovaps %ymm0, 928(%rax)10625; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10626; AVX-NEXT:    vmovaps %ymm0, 896(%rax)10627; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10628; AVX-NEXT:    vmovaps %ymm0, 800(%rax)10629; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10630; AVX-NEXT:    vmovaps %ymm0, 704(%rax)10631; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10632; AVX-NEXT:    vmovaps %ymm0, 672(%rax)10633; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10634; AVX-NEXT:    vmovaps %ymm0, 576(%rax)10635; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10636; AVX-NEXT:    vmovaps %ymm0, 480(%rax)10637; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10638; AVX-NEXT:    vmovaps %ymm0, 448(%rax)10639; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10640; AVX-NEXT:    vmovaps %ymm0, 352(%rax)10641; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10642; AVX-NEXT:    vmovaps %ymm0, 256(%rax)10643; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10644; AVX-NEXT:    vmovaps %ymm0, 224(%rax)10645; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10646; AVX-NEXT:    vmovaps %ymm0, 128(%rax)10647; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10648; AVX-NEXT:    vmovaps %ymm0, 32(%rax)10649; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10650; AVX-NEXT:    vmovaps %ymm0, (%rax)10651; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10652; AVX-NEXT:    vmovaps %ymm0, 1760(%rax)10653; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10654; AVX-NEXT:    vmovaps %ymm0, 1728(%rax)10655; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10656; AVX-NEXT:    vmovaps %ymm0, 1568(%rax)10657; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10658; AVX-NEXT:    vmovaps %ymm0, 1536(%rax)10659; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10660; AVX-NEXT:    vmovaps %ymm0, 1632(%rax)10661; AVX-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload10662; AVX-NEXT:    vmovaps %ymm0, 1600(%rax)10663; AVX-NEXT:    addq $3432, %rsp # imm = 0xD6810664; AVX-NEXT:    vzeroupper10665; AVX-NEXT:    retq10666;10667; AVX2-LABEL: store_i32_stride7_vf64:10668; AVX2:       # %bb.0:10669; AVX2-NEXT:    subq $2968, %rsp # imm = 0xB9810670; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %rax10671; AVX2-NEXT:    vmovaps (%rax), %xmm010672; AVX2-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10673; AVX2-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm010674; AVX2-NEXT:    vmovaps (%r8), %xmm1310675; AVX2-NEXT:    vmovaps 32(%r8), %xmm410676; AVX2-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10677; AVX2-NEXT:    vmovaps (%r9), %xmm110678; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10679; AVX2-NEXT:    vmovaps 32(%r9), %xmm510680; AVX2-NEXT:    vmovaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10681; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,1,1]10682; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0],xmm13[1],xmm1[2,3]10683; AVX2-NEXT:    vbroadcastsd %xmm1, %ymm110684; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5],ymm1[6,7]10685; AVX2-NEXT:    vmovaps (%rcx), %xmm1010686; AVX2-NEXT:    vmovaps 32(%rcx), %xmm310687; AVX2-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10688; AVX2-NEXT:    vmovaps (%rdx), %xmm910689; AVX2-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm9[1],xmm10[1],zero10690; AVX2-NEXT:    vmovaps (%rdi), %xmm710691; AVX2-NEXT:    vmovaps 32(%rdi), %xmm810692; AVX2-NEXT:    vmovaps %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10693; AVX2-NEXT:    vmovaps (%rsi), %xmm610694; AVX2-NEXT:    vmovaps 32(%rsi), %xmm1110695; AVX2-NEXT:    vmovaps %xmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10696; AVX2-NEXT:    vshufps {{.*#+}} xmm2 = xmm6[1,1,2,2]10697; AVX2-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0,1],xmm7[2],xmm2[3]10698; AVX2-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[0,1,2,1]10699; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1,2],ymm2[3,4,5,6,7]10700; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]10701; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10702; AVX2-NEXT:    vmovaps 32(%rax), %xmm010703; AVX2-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10704; AVX2-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm010705; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm5[1,1,1,1]10706; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0],xmm4[1],xmm1[2,3]10707; AVX2-NEXT:    vbroadcastsd %xmm1, %ymm110708; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5],ymm1[6,7]10709; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm11[1,1,2,2]10710; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm8[2],xmm1[3]10711; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]10712; AVX2-NEXT:    vmovaps 32(%rdx), %xmm810713; AVX2-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm8[1],xmm3[1],zero10714; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]10715; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]10716; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10717; AVX2-NEXT:    vmovaps 64(%r8), %xmm110718; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10719; AVX2-NEXT:    vmovaps 64(%r9), %xmm010720; AVX2-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10721; AVX2-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[1,1,1,1]10722; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3]10723; AVX2-NEXT:    vbroadcastsd %xmm0, %ymm010724; AVX2-NEXT:    vmovaps 64(%rax), %xmm110725; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10726; AVX2-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm110727; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]10728; AVX2-NEXT:    vmovaps 64(%rdi), %xmm210729; AVX2-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10730; AVX2-NEXT:    vmovaps 64(%rsi), %xmm110731; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10732; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,2,2]10733; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm2[2],xmm1[3]10734; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]10735; AVX2-NEXT:    vmovaps 64(%rcx), %xmm310736; AVX2-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10737; AVX2-NEXT:    vmovaps 64(%rdx), %xmm210738; AVX2-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10739; AVX2-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm2[1],xmm3[1],zero10740; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]10741; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]10742; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10743; AVX2-NEXT:    vmovaps 96(%r8), %xmm110744; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10745; AVX2-NEXT:    vmovaps 96(%r9), %xmm010746; AVX2-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10747; AVX2-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[1,1,1,1]10748; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3]10749; AVX2-NEXT:    vbroadcastsd %xmm0, %ymm010750; AVX2-NEXT:    vmovaps 96(%rax), %xmm110751; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10752; AVX2-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm110753; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]10754; AVX2-NEXT:    vmovaps 96(%rdi), %xmm210755; AVX2-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10756; AVX2-NEXT:    vmovaps 96(%rsi), %xmm110757; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10758; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,2,2]10759; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm2[2],xmm1[3]10760; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]10761; AVX2-NEXT:    vmovaps 96(%rcx), %xmm310762; AVX2-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10763; AVX2-NEXT:    vmovaps 96(%rdx), %xmm210764; AVX2-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10765; AVX2-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm2[1],xmm3[1],zero10766; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]10767; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]10768; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10769; AVX2-NEXT:    vmovaps 128(%r8), %xmm110770; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10771; AVX2-NEXT:    vmovaps 128(%r9), %xmm010772; AVX2-NEXT:    vmovaps %xmm0, (%rsp) # 16-byte Spill10773; AVX2-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[1,1,1,1]10774; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3]10775; AVX2-NEXT:    vbroadcastsd %xmm0, %ymm010776; AVX2-NEXT:    vmovaps 128(%rax), %xmm110777; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10778; AVX2-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm110779; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]10780; AVX2-NEXT:    vmovaps 128(%rdi), %xmm210781; AVX2-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10782; AVX2-NEXT:    vmovaps 128(%rsi), %xmm110783; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10784; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,2,2]10785; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm2[2],xmm1[3]10786; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]10787; AVX2-NEXT:    vmovaps 128(%rcx), %xmm310788; AVX2-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10789; AVX2-NEXT:    vmovaps 128(%rdx), %xmm210790; AVX2-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10791; AVX2-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm2[1],xmm3[1],zero10792; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]10793; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]10794; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10795; AVX2-NEXT:    vmovaps 160(%r8), %xmm110796; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10797; AVX2-NEXT:    vmovaps 160(%r9), %xmm010798; AVX2-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10799; AVX2-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[1,1,1,1]10800; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3]10801; AVX2-NEXT:    vbroadcastsd %xmm0, %ymm010802; AVX2-NEXT:    vmovaps 160(%rax), %xmm110803; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10804; AVX2-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm110805; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]10806; AVX2-NEXT:    vmovaps 160(%rdi), %xmm210807; AVX2-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10808; AVX2-NEXT:    vmovaps 160(%rsi), %xmm110809; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10810; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,2,2]10811; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm2[2],xmm1[3]10812; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]10813; AVX2-NEXT:    vmovaps 160(%rcx), %xmm310814; AVX2-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10815; AVX2-NEXT:    vmovaps 160(%rdx), %xmm210816; AVX2-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10817; AVX2-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm2[1],xmm3[1],zero10818; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]10819; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]10820; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10821; AVX2-NEXT:    vmovaps 192(%r9), %xmm010822; AVX2-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10823; AVX2-NEXT:    vmovaps 192(%r8), %xmm110824; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10825; AVX2-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[1,1,1,1]10826; AVX2-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3]10827; AVX2-NEXT:    vbroadcastsd %xmm0, %ymm010828; AVX2-NEXT:    vmovaps 192(%rax), %xmm110829; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10830; AVX2-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm110831; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]10832; AVX2-NEXT:    vmovaps 192(%rdi), %xmm210833; AVX2-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10834; AVX2-NEXT:    vmovaps 192(%rsi), %xmm110835; AVX2-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10836; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,2,2]10837; AVX2-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm2[2],xmm1[3]10838; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]10839; AVX2-NEXT:    vmovaps 192(%rcx), %xmm310840; AVX2-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10841; AVX2-NEXT:    vmovaps 192(%rdx), %xmm210842; AVX2-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill10843; AVX2-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm2[1],xmm3[1],zero10844; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]10845; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]10846; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10847; AVX2-NEXT:    vmovaps (%rdi), %ymm010848; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10849; AVX2-NEXT:    vmovaps (%rsi), %ymm110850; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10851; AVX2-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm1[2],ymm0[3],ymm1[3],ymm0[6],ymm1[6],ymm0[7],ymm1[7]10852; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]10853; AVX2-NEXT:    vmovaps (%rdx), %ymm210854; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10855; AVX2-NEXT:    vmovaps (%rcx), %ymm110856; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10857; AVX2-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm2[2],ymm1[2],ymm2[3],ymm1[3],ymm2[6],ymm1[6],ymm2[7],ymm1[7]10858; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]10859; AVX2-NEXT:    vmovaps (%r8), %ymm210860; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10861; AVX2-NEXT:    vmovaps (%r9), %ymm110862; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10863; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]10864; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]10865; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]10866; AVX2-NEXT:    vmovaps 16(%rax), %xmm210867; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]10868; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]10869; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10870; AVX2-NEXT:    vmovaps 32(%rdi), %ymm010871; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10872; AVX2-NEXT:    vmovaps 32(%rsi), %ymm110873; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10874; AVX2-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm1[2],ymm0[3],ymm1[3],ymm0[6],ymm1[6],ymm0[7],ymm1[7]10875; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]10876; AVX2-NEXT:    vmovaps 32(%rdx), %ymm110877; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10878; AVX2-NEXT:    vmovaps 32(%rcx), %ymm210879; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10880; AVX2-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]10881; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]10882; AVX2-NEXT:    vmovaps 32(%r8), %ymm210883; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10884; AVX2-NEXT:    vmovaps 32(%r9), %ymm110885; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10886; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]10887; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]10888; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]10889; AVX2-NEXT:    vmovaps 48(%rax), %xmm210890; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]10891; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]10892; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10893; AVX2-NEXT:    vmovaps 64(%rdi), %ymm110894; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10895; AVX2-NEXT:    vmovaps 64(%rsi), %ymm010896; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10897; AVX2-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[6],ymm0[6],ymm1[7],ymm0[7]10898; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]10899; AVX2-NEXT:    vmovaps 64(%rdx), %ymm110900; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10901; AVX2-NEXT:    vmovaps 64(%rcx), %ymm210902; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10903; AVX2-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]10904; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]10905; AVX2-NEXT:    vmovaps 64(%r8), %ymm210906; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10907; AVX2-NEXT:    vmovaps 64(%r9), %ymm110908; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10909; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]10910; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]10911; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]10912; AVX2-NEXT:    vmovaps 80(%rax), %xmm210913; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]10914; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]10915; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10916; AVX2-NEXT:    vmovaps 96(%rdi), %ymm110917; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10918; AVX2-NEXT:    vmovaps 96(%rsi), %ymm010919; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10920; AVX2-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[6],ymm0[6],ymm1[7],ymm0[7]10921; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]10922; AVX2-NEXT:    vmovaps 96(%rdx), %ymm110923; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10924; AVX2-NEXT:    vmovaps 96(%rcx), %ymm210925; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10926; AVX2-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]10927; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]10928; AVX2-NEXT:    vmovaps 96(%r8), %ymm210929; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10930; AVX2-NEXT:    vmovaps 96(%r9), %ymm110931; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10932; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]10933; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]10934; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]10935; AVX2-NEXT:    vmovaps 112(%rax), %xmm210936; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]10937; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]10938; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10939; AVX2-NEXT:    vmovaps 128(%rdi), %ymm110940; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10941; AVX2-NEXT:    vmovaps 128(%rsi), %ymm010942; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10943; AVX2-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[6],ymm0[6],ymm1[7],ymm0[7]10944; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]10945; AVX2-NEXT:    vmovaps 128(%rdx), %ymm110946; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10947; AVX2-NEXT:    vmovaps 128(%rcx), %ymm210948; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10949; AVX2-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]10950; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]10951; AVX2-NEXT:    vmovaps 128(%r8), %ymm210952; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10953; AVX2-NEXT:    vmovaps 128(%r9), %ymm110954; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10955; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]10956; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]10957; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]10958; AVX2-NEXT:    vmovaps 144(%rax), %xmm210959; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]10960; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]10961; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10962; AVX2-NEXT:    vmovaps 160(%rdi), %ymm110963; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10964; AVX2-NEXT:    vmovaps 160(%rsi), %ymm010965; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10966; AVX2-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[6],ymm0[6],ymm1[7],ymm0[7]10967; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]10968; AVX2-NEXT:    vmovaps 160(%rdx), %ymm110969; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10970; AVX2-NEXT:    vmovaps 160(%rcx), %ymm210971; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10972; AVX2-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]10973; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]10974; AVX2-NEXT:    vmovaps 160(%r8), %ymm210975; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10976; AVX2-NEXT:    vmovaps 160(%r9), %ymm110977; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10978; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]10979; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]10980; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]10981; AVX2-NEXT:    vmovaps 176(%rax), %xmm210982; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]10983; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]10984; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10985; AVX2-NEXT:    vmovaps 192(%rdi), %ymm110986; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10987; AVX2-NEXT:    vmovaps 192(%rsi), %ymm010988; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10989; AVX2-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[6],ymm0[6],ymm1[7],ymm0[7]10990; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]10991; AVX2-NEXT:    vmovaps 192(%rdx), %ymm110992; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10993; AVX2-NEXT:    vmovaps 192(%rcx), %ymm210994; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10995; AVX2-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]10996; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]10997; AVX2-NEXT:    vmovaps 192(%r8), %ymm210998; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill10999; AVX2-NEXT:    vmovaps 192(%r9), %ymm111000; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11001; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]11002; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]11003; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]11004; AVX2-NEXT:    vmovaps 208(%rax), %xmm211005; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]11006; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]11007; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11008; AVX2-NEXT:    vmovaps 224(%rcx), %xmm011009; AVX2-NEXT:    vbroadcastss %xmm0, %xmm211010; AVX2-NEXT:    vmovaps 224(%rdx), %xmm111011; AVX2-NEXT:    vbroadcastss %xmm1, %xmm311012; AVX2-NEXT:    vunpcklps {{.*#+}} xmm2 = xmm3[0],xmm2[0],xmm3[1],xmm2[1]11013; AVX2-NEXT:    vmovaps 224(%rsi), %xmm411014; AVX2-NEXT:    vmovaps 224(%rdi), %xmm511015; AVX2-NEXT:    vunpcklps {{.*#+}} xmm3 = xmm5[0],xmm4[0],xmm5[1],xmm4[1]11016; AVX2-NEXT:    vshufps {{.*#+}} xmm3 = xmm3[0,1,2,2]11017; AVX2-NEXT:    vpermpd {{.*#+}} ymm3 = ymm3[0,1,2,1]11018; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm3[0,1],ymm2[2,3],ymm3[4,5,6,7]11019; AVX2-NEXT:    vbroadcastsd 224(%r8), %ymm311020; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5],ymm2[6,7]11021; AVX2-NEXT:    vmovaps 224(%r9), %xmm311022; AVX2-NEXT:    vbroadcastss %xmm3, %ymm1511023; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm15[5],ymm2[6,7]11024; AVX2-NEXT:    vbroadcastss 224(%rax), %ymm1511025; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5],ymm15[6],ymm2[7]11026; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11027; AVX2-NEXT:    vshufps {{.*#+}} xmm2 = xmm4[1,1,2,2]11028; AVX2-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0,1],xmm5[2],xmm2[3]11029; AVX2-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[0,1,2,1]11030; AVX2-NEXT:    vinsertps {{.*#+}} xmm15 = zero,xmm1[1],xmm0[1],zero11031; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm15[1,2],ymm2[3,4,5,6,7]11032; AVX2-NEXT:    vbroadcastss 228(%r8), %ymm1411033; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2],ymm14[3],ymm2[4,5,6,7]11034; AVX2-NEXT:    vshufps {{.*#+}} xmm14 = xmm3[1,1,1,1]11035; AVX2-NEXT:    vinsertf128 $1, %xmm14, %ymm0, %ymm1411036; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm14[4,5],ymm2[6,7]11037; AVX2-NEXT:    vinsertf128 $1, 224(%rax), %ymm15, %ymm1411038; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm14[1],ymm2[2,3,4],ymm14[5],ymm2[6,7]11039; AVX2-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11040; AVX2-NEXT:    vshufps {{.*#+}} xmm2 = xmm5[3,3],xmm4[3,3]11041; AVX2-NEXT:    vunpckhps {{.*#+}} xmm0 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]11042; AVX2-NEXT:    vinsertf128 $1, %xmm2, %ymm0, %ymm111043; AVX2-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[0,1,2,2]11044; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[0,1,2,1]11045; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]11046; AVX2-NEXT:    vmovaps 224(%r8), %ymm511047; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm5[2,3],ymm0[4,5,6,7]11048; AVX2-NEXT:    vshufps {{.*#+}} xmm1 = xmm3[2,2,2,2]11049; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm1[3],ymm0[4,5,6,7]11050; AVX2-NEXT:    vbroadcastss 232(%rax), %ymm111051; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4],ymm0[5,6,7]11052; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11053; AVX2-NEXT:    vmovaps 224(%rdi), %ymm1111054; AVX2-NEXT:    vmovaps 224(%rsi), %ymm411055; AVX2-NEXT:    vshufps {{.*#+}} ymm0 = ymm4[1,1,1,1,5,5,5,5]11056; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm11[1],ymm0[2,3,4],ymm11[5],ymm0[6,7]11057; AVX2-NEXT:    vpermpd {{.*#+}} ymm14 = ymm0[2,2,2,2]11058; AVX2-NEXT:    vmovaps 224(%rdx), %ymm1211059; AVX2-NEXT:    vmovaps 224(%rcx), %ymm211060; AVX2-NEXT:    vshufps {{.*#+}} ymm15 = ymm12[1,1],ymm2[1,1],ymm12[5,5],ymm2[5,5]11061; AVX2-NEXT:    vblendps {{.*#+}} ymm14 = ymm14[0,1,2,3,4],ymm15[5,6],ymm14[7]11062; AVX2-NEXT:    vbroadcastsd 240(%r8), %ymm1511063; AVX2-NEXT:    vblendps {{.*#+}} ymm14 = ymm15[0],ymm14[1,2,3,4,5,6],ymm15[7]11064; AVX2-NEXT:    vbroadcastss 240(%r9), %xmm1511065; AVX2-NEXT:    vblendps {{.*#+}} ymm14 = ymm14[0],ymm15[1],ymm14[2,3,4,5,6,7]11066; AVX2-NEXT:    vbroadcastss 240(%rax), %ymm1511067; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm14[0,1],ymm15[2],ymm14[3,4,5,6,7]11068; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11069; AVX2-NEXT:    vbroadcastss %xmm10, %xmm1411070; AVX2-NEXT:    vbroadcastss %xmm9, %xmm1511071; AVX2-NEXT:    vunpcklps {{.*#+}} xmm14 = xmm15[0],xmm14[0],xmm15[1],xmm14[1]11072; AVX2-NEXT:    vunpcklps {{.*#+}} xmm15 = xmm7[0],xmm6[0],xmm7[1],xmm6[1]11073; AVX2-NEXT:    vshufps {{.*#+}} xmm15 = xmm15[0,1,2,2]11074; AVX2-NEXT:    vpermpd {{.*#+}} ymm15 = ymm15[0,1,2,1]11075; AVX2-NEXT:    vblendps {{.*#+}} ymm14 = ymm15[0,1],ymm14[2,3],ymm15[4,5,6,7]11076; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload11077; AVX2-NEXT:    vmovaps %xmm13, %xmm111078; AVX2-NEXT:    vmovaps %xmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11079; AVX2-NEXT:    vunpcklps {{.*#+}} xmm15 = xmm13[0],xmm0[0],xmm13[1],xmm0[1]11080; AVX2-NEXT:    vinsertf128 $1, %xmm15, %ymm0, %ymm1511081; AVX2-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 16-byte Folded Reload11082; AVX2-NEXT:    vunpcklpd {{.*#+}} ymm13 = ymm15[0],ymm13[0],ymm15[2],ymm13[2]11083; AVX2-NEXT:    vblendps {{.*#+}} ymm13 = ymm14[0,1,2,3],ymm13[4,5,6],ymm14[7]11084; AVX2-NEXT:    vmovups %ymm13, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11085; AVX2-NEXT:    vshufps {{.*#+}} xmm6 = xmm7[3,3],xmm6[3,3]11086; AVX2-NEXT:    vunpckhps {{.*#+}} xmm7 = xmm9[2],xmm10[2],xmm9[3],xmm10[3]11087; AVX2-NEXT:    vinsertf128 $1, %xmm6, %ymm0, %ymm611088; AVX2-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]11089; AVX2-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]11090; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6],ymm7[7]11091; AVX2-NEXT:    vshufps {{.*#+}} xmm7 = xmm0[2,2,2,2]11092; AVX2-NEXT:    vblendps {{.*#+}} xmm7 = xmm1[0,1,2],xmm7[3]11093; AVX2-NEXT:    vbroadcastsd 8(%rax), %ymm911094; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3],ymm9[4,5,6,7]11095; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1],ymm7[2,3,4],ymm6[5,6,7]11096; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11097; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload11098; AVX2-NEXT:    vbroadcastss %xmm1, %xmm611099; AVX2-NEXT:    vbroadcastss %xmm8, %xmm711100; AVX2-NEXT:    vunpcklps {{.*#+}} xmm6 = xmm7[0],xmm6[0],xmm7[1],xmm6[1]11101; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload11102; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Reload11103; AVX2-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm14[0],xmm15[0],xmm14[1],xmm15[1]11104; AVX2-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]11105; AVX2-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]11106; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1],ymm6[2,3],ymm7[4,5,6,7]11107; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload11108; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Reload11109; AVX2-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm10[0],xmm13[0],xmm10[1],xmm13[1]11110; AVX2-NEXT:    vinsertf128 $1, %xmm7, %ymm0, %ymm711111; AVX2-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 16-byte Folded Reload11112; AVX2-NEXT:    vunpcklpd {{.*#+}} ymm7 = ymm7[0],ymm9[0],ymm7[2],ymm9[2]11113; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1,2,3],ymm7[4,5,6],ymm6[7]11114; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11115; AVX2-NEXT:    vshufps {{.*#+}} xmm6 = xmm14[3,3],xmm15[3,3]11116; AVX2-NEXT:    vunpckhps {{.*#+}} xmm7 = xmm8[2],xmm1[2],xmm8[3],xmm1[3]11117; AVX2-NEXT:    vinsertf128 $1, %xmm6, %ymm0, %ymm611118; AVX2-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]11119; AVX2-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]11120; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6],ymm7[7]11121; AVX2-NEXT:    vshufps {{.*#+}} xmm7 = xmm13[2,2,2,2]11122; AVX2-NEXT:    vblendps {{.*#+}} xmm7 = xmm10[0,1,2],xmm7[3]11123; AVX2-NEXT:    vbroadcastsd 40(%rax), %ymm811124; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3],ymm8[4,5,6,7]11125; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1],ymm7[2,3,4],ymm6[5,6,7]11126; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11127; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Reload11128; AVX2-NEXT:    vbroadcastss %xmm15, %xmm611129; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload11130; AVX2-NEXT:    vbroadcastss %xmm10, %xmm711131; AVX2-NEXT:    vunpcklps {{.*#+}} xmm6 = xmm7[0],xmm6[0],xmm7[1],xmm6[1]11132; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload11133; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload11134; AVX2-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm9[0],xmm1[0],xmm9[1],xmm1[1]11135; AVX2-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]11136; AVX2-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]11137; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1],ymm6[2,3],ymm7[4,5,6,7]11138; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload11139; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Reload11140; AVX2-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm14[0],xmm13[0],xmm14[1],xmm13[1]11141; AVX2-NEXT:    vinsertf128 $1, %xmm7, %ymm0, %ymm711142; AVX2-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 16-byte Folded Reload11143; AVX2-NEXT:    vunpcklpd {{.*#+}} ymm7 = ymm7[0],ymm8[0],ymm7[2],ymm8[2]11144; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1,2,3],ymm7[4,5,6],ymm6[7]11145; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11146; AVX2-NEXT:    vshufps {{.*#+}} xmm6 = xmm9[3,3],xmm1[3,3]11147; AVX2-NEXT:    vunpckhps {{.*#+}} xmm7 = xmm10[2],xmm15[2],xmm10[3],xmm15[3]11148; AVX2-NEXT:    vinsertf128 $1, %xmm6, %ymm0, %ymm611149; AVX2-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]11150; AVX2-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]11151; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6],ymm7[7]11152; AVX2-NEXT:    vshufps {{.*#+}} xmm7 = xmm13[2,2,2,2]11153; AVX2-NEXT:    vblendps {{.*#+}} xmm7 = xmm14[0,1,2],xmm7[3]11154; AVX2-NEXT:    vbroadcastsd 72(%rax), %ymm811155; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3],ymm8[4,5,6,7]11156; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1],ymm7[2,3,4],ymm6[5,6,7]11157; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11158; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Reload11159; AVX2-NEXT:    vbroadcastss %xmm15, %xmm611160; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload11161; AVX2-NEXT:    vbroadcastss %xmm14, %xmm711162; AVX2-NEXT:    vunpcklps {{.*#+}} xmm6 = xmm7[0],xmm6[0],xmm7[1],xmm6[1]11163; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload11164; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload11165; AVX2-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm10[0],xmm9[0],xmm10[1],xmm9[1]11166; AVX2-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]11167; AVX2-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]11168; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1],ymm6[2,3],ymm7[4,5,6,7]11169; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Reload11170; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload11171; AVX2-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm0[0],xmm13[0],xmm0[1],xmm13[1]11172; AVX2-NEXT:    vinsertf128 $1, %xmm7, %ymm0, %ymm711173; AVX2-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 16-byte Folded Reload11174; AVX2-NEXT:    vunpcklpd {{.*#+}} ymm7 = ymm7[0],ymm8[0],ymm7[2],ymm8[2]11175; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm6[0,1,2,3],ymm7[4,5,6],ymm6[7]11176; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11177; AVX2-NEXT:    vshufps {{.*#+}} xmm6 = xmm10[3,3],xmm9[3,3]11178; AVX2-NEXT:    vunpckhps {{.*#+}} xmm7 = xmm14[2],xmm15[2],xmm14[3],xmm15[3]11179; AVX2-NEXT:    vinsertf128 $1, %xmm6, %ymm0, %ymm611180; AVX2-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]11181; AVX2-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]11182; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6],ymm7[7]11183; AVX2-NEXT:    vshufps {{.*#+}} xmm7 = xmm13[2,2,2,2]11184; AVX2-NEXT:    vblendps {{.*#+}} xmm7 = xmm0[0,1,2],xmm7[3]11185; AVX2-NEXT:    vbroadcastsd 104(%rax), %ymm811186; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3],ymm8[4,5,6,7]11187; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1],ymm7[2,3,4],ymm6[5,6,7]11188; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11189; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Reload11190; AVX2-NEXT:    vbroadcastss %xmm15, %xmm611191; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload11192; AVX2-NEXT:    vbroadcastss %xmm14, %xmm711193; AVX2-NEXT:    vunpcklps {{.*#+}} xmm6 = xmm7[0],xmm6[0],xmm7[1],xmm6[1]11194; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload11195; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload11196; AVX2-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm10[0],xmm9[0],xmm10[1],xmm9[1]11197; AVX2-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]11198; AVX2-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]11199; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1],ymm6[2,3],ymm7[4,5,6,7]11200; AVX2-NEXT:    vmovaps (%rsp), %xmm13 # 16-byte Reload11201; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload11202; AVX2-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm0[0],xmm13[0],xmm0[1],xmm13[1]11203; AVX2-NEXT:    vinsertf128 $1, %xmm7, %ymm0, %ymm711204; AVX2-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 16-byte Folded Reload11205; AVX2-NEXT:    vunpcklpd {{.*#+}} ymm7 = ymm7[0],ymm8[0],ymm7[2],ymm8[2]11206; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm6[0,1,2,3],ymm7[4,5,6],ymm6[7]11207; AVX2-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11208; AVX2-NEXT:    vshufps {{.*#+}} xmm6 = xmm10[3,3],xmm9[3,3]11209; AVX2-NEXT:    vunpckhps {{.*#+}} xmm7 = xmm14[2],xmm15[2],xmm14[3],xmm15[3]11210; AVX2-NEXT:    vinsertf128 $1, %xmm6, %ymm0, %ymm611211; AVX2-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]11212; AVX2-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]11213; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6],ymm7[7]11214; AVX2-NEXT:    vshufps {{.*#+}} xmm7 = xmm13[2,2,2,2]11215; AVX2-NEXT:    vblendps {{.*#+}} xmm7 = xmm0[0,1,2],xmm7[3]11216; AVX2-NEXT:    vbroadcastsd 136(%rax), %ymm811217; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3],ymm8[4,5,6,7]11218; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1],ymm7[2,3,4],ymm6[5,6,7]11219; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11220; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload11221; AVX2-NEXT:    vbroadcastss %xmm14, %xmm611222; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload11223; AVX2-NEXT:    vbroadcastss %xmm10, %xmm711224; AVX2-NEXT:    vunpcklps {{.*#+}} xmm6 = xmm7[0],xmm6[0],xmm7[1],xmm6[1]11225; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload11226; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload11227; AVX2-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm9[0],xmm1[0],xmm9[1],xmm1[1]11228; AVX2-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]11229; AVX2-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]11230; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1],ymm6[2,3],ymm7[4,5,6,7]11231; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Reload11232; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload11233; AVX2-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm0[0],xmm13[0],xmm0[1],xmm13[1]11234; AVX2-NEXT:    vinsertf128 $1, %xmm7, %ymm0, %ymm711235; AVX2-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 16-byte Folded Reload11236; AVX2-NEXT:    vunpcklpd {{.*#+}} ymm7 = ymm7[0],ymm8[0],ymm7[2],ymm8[2]11237; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3],ymm7[4,5,6],ymm6[7]11238; AVX2-NEXT:    vmovups %ymm6, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11239; AVX2-NEXT:    vshufps {{.*#+}} xmm6 = xmm9[3,3],xmm1[3,3]11240; AVX2-NEXT:    vunpckhps {{.*#+}} xmm7 = xmm10[2],xmm14[2],xmm10[3],xmm14[3]11241; AVX2-NEXT:    vinsertf128 $1, %xmm6, %ymm0, %ymm611242; AVX2-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]11243; AVX2-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]11244; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6],ymm7[7]11245; AVX2-NEXT:    vshufps {{.*#+}} xmm7 = xmm13[2,2,2,2]11246; AVX2-NEXT:    vblendps {{.*#+}} xmm7 = xmm0[0,1,2],xmm7[3]11247; AVX2-NEXT:    vbroadcastsd 168(%rax), %ymm811248; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3],ymm8[4,5,6,7]11249; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1],ymm7[2,3,4],ymm6[5,6,7]11250; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11251; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload11252; AVX2-NEXT:    vbroadcastss %xmm14, %xmm611253; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Reload11254; AVX2-NEXT:    vbroadcastss %xmm13, %xmm711255; AVX2-NEXT:    vunpcklps {{.*#+}} xmm6 = xmm7[0],xmm6[0],xmm7[1],xmm6[1]11256; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload11257; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload11258; AVX2-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm10[0],xmm9[0],xmm10[1],xmm9[1]11259; AVX2-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]11260; AVX2-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]11261; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1],ymm6[2,3],ymm7[4,5,6,7]11262; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload11263; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload11264; AVX2-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]11265; AVX2-NEXT:    vinsertf128 $1, %xmm7, %ymm0, %ymm711266; AVX2-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 16-byte Folded Reload11267; AVX2-NEXT:    vunpcklpd {{.*#+}} ymm7 = ymm7[0],ymm8[0],ymm7[2],ymm8[2]11268; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3],ymm7[4,5,6],ymm6[7]11269; AVX2-NEXT:    vmovups %ymm6, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11270; AVX2-NEXT:    vshufps {{.*#+}} xmm6 = xmm10[3,3],xmm9[3,3]11271; AVX2-NEXT:    vunpckhps {{.*#+}} xmm7 = xmm13[2],xmm14[2],xmm13[3],xmm14[3]11272; AVX2-NEXT:    vinsertf128 $1, %xmm6, %ymm0, %ymm611273; AVX2-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]11274; AVX2-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]11275; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6],ymm7[7]11276; AVX2-NEXT:    vshufps {{.*#+}} xmm7 = xmm0[2,2,2,2]11277; AVX2-NEXT:    vblendps {{.*#+}} xmm7 = xmm1[0,1,2],xmm7[3]11278; AVX2-NEXT:    vbroadcastsd 200(%rax), %ymm811279; AVX2-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3],ymm8[4,5,6,7]11280; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1],ymm7[2,3,4],ymm6[5,6,7]11281; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11282; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload11283; AVX2-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm10, %ymm6 # 32-byte Folded Reload11284; AVX2-NEXT:    # ymm6 = ymm10[2],mem[2],ymm10[3],mem[3],ymm10[6],mem[6],ymm10[7],mem[7]11285; AVX2-NEXT:    vpermpd {{.*#+}} ymm6 = ymm6[3,3,3,3]11286; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Reload11287; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload11288; AVX2-NEXT:    vunpckhps {{.*#+}} ymm7 = ymm8[2],ymm9[2],ymm8[3],ymm9[3],ymm8[6],ymm9[6],ymm8[7],ymm9[7]11289; AVX2-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[3,3,3,3]11290; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1,2],ymm6[3,4,5,6,7]11291; AVX2-NEXT:    vbroadcastss 220(%r8), %ymm711292; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3,4],ymm7[5],ymm6[6,7]11293; AVX2-NEXT:    vbroadcastss 220(%r9), %ymm711294; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3,4,5],ymm7[6,7]11295; AVX2-NEXT:    vbroadcastsd 216(%rax), %ymm711296; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm7[0],ymm6[1,2,3,4,5,6],ymm7[7]11297; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11298; AVX2-NEXT:    vbroadcastss 240(%rdx), %ymm611299; AVX2-NEXT:    vshufps {{.*#+}} ymm7 = ymm2[3,1,2,0,7,5,6,4]11300; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1,2,3,4,5],ymm6[6],ymm7[7]11301; AVX2-NEXT:    vunpcklps {{.*#+}} ymm7 = ymm11[0],ymm4[0],ymm11[1],ymm4[1],ymm11[4],ymm4[4],ymm11[5],ymm4[5]11302; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3],ymm7[4,5],ymm6[6,7]11303; AVX2-NEXT:    vbroadcastss 236(%r8), %ymm711304; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0],ymm7[1],ymm6[2,3,4,5,6,7]11305; AVX2-NEXT:    vshufps {{.*#+}} xmm3 = xmm3[2,2,3,3]11306; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm6[0,1],ymm3[2,3],ymm6[4,5,6,7]11307; AVX2-NEXT:    vunpckhps {{.*#+}} ymm6 = ymm11[2],ymm4[2],ymm11[3],ymm4[3],ymm11[6],ymm4[6],ymm11[7],ymm4[7]11308; AVX2-NEXT:    vpermpd {{.*#+}} ymm6 = ymm6[2,2,2,2]11309; AVX2-NEXT:    vunpckhps {{.*#+}} ymm7 = ymm12[2],ymm2[2],ymm12[3],ymm2[3],ymm12[6],ymm2[6],ymm12[7],ymm2[7]11310; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3],ymm7[4,5,6,7]11311; AVX2-NEXT:    vblendps {{.*#+}} ymm5 = ymm6[0,1,2,3,4,5],ymm5[6,7]11312; AVX2-NEXT:    vpermilps {{.*#+}} ymm6 = mem[1,2,2,3,5,6,6,7]11313; AVX2-NEXT:    vpermpd {{.*#+}} ymm6 = ymm6[2,2,2,2]11314; AVX2-NEXT:    vblendps {{.*#+}} ymm5 = ymm6[0],ymm5[1,2,3,4,5,6],ymm6[7]11315; AVX2-NEXT:    vmovaps 224(%rax), %ymm611316; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm3[0,1,2],ymm6[3],ymm3[4,5,6,7]11317; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11318; AVX2-NEXT:    vperm2f128 {{.*#+}} ymm3 = ymm6[2,3],ymm7[2,3]11319; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0],ymm3[1],ymm5[2,3,4],ymm3[5],ymm5[6,7]11320; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11321; AVX2-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm2[2],ymm12[2],ymm2[3],ymm12[3],ymm2[6],ymm12[6],ymm2[7],ymm12[7]11322; AVX2-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm4[2],ymm11[2],ymm4[3],ymm11[3],ymm4[6],ymm11[6],ymm4[7],ymm11[7]11323; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]11324; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[3,3,3,3]11325; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]11326; AVX2-NEXT:    vbroadcastss 252(%r8), %ymm111327; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]11328; AVX2-NEXT:    vbroadcastss 252(%r9), %ymm111329; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm1[6,7]11330; AVX2-NEXT:    vbroadcastsd 248(%rax), %ymm111331; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4,5,6],ymm1[7]11332; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11333; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload11334; AVX2-NEXT:    vshufps {{.*#+}} ymm0 = ymm7[1,1,1,1,5,5,5,5]11335; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload11336; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm5[1],ymm0[2,3,4],ymm5[5],ymm0[6,7]11337; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]11338; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11339; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload11340; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm12[1,1],ymm6[1,1],ymm12[5,5],ymm6[5,5]11341; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]11342; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload11343; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm14[0,0,0,0,4,4,4,4]11344; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 32-byte Reload11345; AVX2-NEXT:    vshufps {{.*#+}} ymm2 = ymm13[0,1,0,1,4,5,4,5]11346; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1],ymm2[2,3,4],ymm1[5],ymm2[6,7]11347; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]11348; AVX2-NEXT:    vbroadcastsd 16(%rax), %ymm211349; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]11350; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]11351; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11352; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm15 # 32-byte Reload11353; AVX2-NEXT:    vshufps {{.*#+}} ymm0 = ymm15[1,1,1,1,5,5,5,5]11354; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload11355; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm4[1],ymm0[2,3,4],ymm4[5],ymm0[6,7]11356; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]11357; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload11358; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11359; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1],ymm11[1,1],ymm1[5,5],ymm11[5,5]11360; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]11361; AVX2-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Folded Reload11362; AVX2-NEXT:    # ymm1 = mem[0,0,0,0,4,4,4,4]11363; AVX2-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload11364; AVX2-NEXT:    # ymm2 = mem[0,1,0,1,4,5,4,5]11365; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1],ymm2[2,3,4],ymm1[5],ymm2[6,7]11366; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]11367; AVX2-NEXT:    vbroadcastsd 48(%rax), %ymm211368; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]11369; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]11370; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11371; AVX2-NEXT:    vpermilps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Folded Reload11372; AVX2-NEXT:    # ymm0 = mem[1,1,1,1,5,5,5,5]11373; AVX2-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload11374; AVX2-NEXT:    # ymm0 = ymm0[0],mem[1],ymm0[2,3,4],mem[5],ymm0[6,7]11375; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]11376; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11377; AVX2-NEXT:    vshufps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload11378; AVX2-NEXT:    # ymm1 = ymm1[1,1],mem[1,1],ymm1[5,5],mem[5,5]11379; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]11380; AVX2-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Folded Reload11381; AVX2-NEXT:    # ymm1 = mem[0,0,0,0,4,4,4,4]11382; AVX2-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload11383; AVX2-NEXT:    # ymm2 = mem[0,1,0,1,4,5,4,5]11384; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1],ymm2[2,3,4],ymm1[5],ymm2[6,7]11385; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]11386; AVX2-NEXT:    vbroadcastsd 80(%rax), %ymm211387; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]11388; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]11389; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11390; AVX2-NEXT:    vpermilps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Folded Reload11391; AVX2-NEXT:    # ymm0 = mem[1,1,1,1,5,5,5,5]11392; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload11393; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm3[1],ymm0[2,3,4],ymm3[5],ymm0[6,7]11394; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]11395; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11396; AVX2-NEXT:    vshufps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload11397; AVX2-NEXT:    # ymm1 = ymm1[1,1],mem[1,1],ymm1[5,5],mem[5,5]11398; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]11399; AVX2-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Folded Reload11400; AVX2-NEXT:    # ymm1 = mem[0,0,0,0,4,4,4,4]11401; AVX2-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload11402; AVX2-NEXT:    # ymm2 = mem[0,1,0,1,4,5,4,5]11403; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1],ymm2[2,3,4],ymm1[5],ymm2[6,7]11404; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]11405; AVX2-NEXT:    vbroadcastsd 112(%rax), %ymm211406; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]11407; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]11408; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11409; AVX2-NEXT:    vpermilps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Folded Reload11410; AVX2-NEXT:    # ymm0 = mem[1,1,1,1,5,5,5,5]11411; AVX2-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload11412; AVX2-NEXT:    # ymm0 = ymm0[0],mem[1],ymm0[2,3,4],mem[5],ymm0[6,7]11413; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]11414; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11415; AVX2-NEXT:    vshufps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload11416; AVX2-NEXT:    # ymm1 = ymm1[1,1],mem[1,1],ymm1[5,5],mem[5,5]11417; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]11418; AVX2-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Folded Reload11419; AVX2-NEXT:    # ymm1 = mem[0,0,0,0,4,4,4,4]11420; AVX2-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload11421; AVX2-NEXT:    # ymm2 = mem[0,1,0,1,4,5,4,5]11422; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1],ymm2[2,3,4],ymm1[5],ymm2[6,7]11423; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]11424; AVX2-NEXT:    vbroadcastsd 144(%rax), %ymm211425; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]11426; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]11427; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11428; AVX2-NEXT:    vpermilps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Folded Reload11429; AVX2-NEXT:    # ymm0 = mem[1,1,1,1,5,5,5,5]11430; AVX2-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload11431; AVX2-NEXT:    # ymm0 = ymm0[0],mem[1],ymm0[2,3,4],mem[5],ymm0[6,7]11432; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]11433; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11434; AVX2-NEXT:    vshufps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload11435; AVX2-NEXT:    # ymm1 = ymm1[1,1],mem[1,1],ymm1[5,5],mem[5,5]11436; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]11437; AVX2-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Folded Reload11438; AVX2-NEXT:    # ymm1 = mem[0,0,0,0,4,4,4,4]11439; AVX2-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload11440; AVX2-NEXT:    # ymm2 = mem[0,1,0,1,4,5,4,5]11441; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1],ymm2[2,3,4],ymm1[5],ymm2[6,7]11442; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]11443; AVX2-NEXT:    vbroadcastsd 176(%rax), %ymm211444; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]11445; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]11446; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11447; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11448; AVX2-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[1,1],ymm10[1,1],ymm0[5,5],ymm10[5,5]11449; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm8[1,1,1,1,5,5,5,5]11450; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm9[1],ymm1[2,3,4],ymm9[5],ymm1[6,7]11451; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,2,2,2]11452; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]11453; AVX2-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Folded Reload11454; AVX2-NEXT:    # ymm1 = mem[0,0,0,0,4,4,4,4]11455; AVX2-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload11456; AVX2-NEXT:    # ymm2 = mem[0,1,0,1,4,5,4,5]11457; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1],ymm2[2,3,4],ymm1[5],ymm2[6,7]11458; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]11459; AVX2-NEXT:    vbroadcastsd 208(%rax), %ymm211460; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]11461; AVX2-NEXT:    vblendps {{.*#+}} ymm9 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]11462; AVX2-NEXT:    vbroadcastss 16(%rdx), %ymm011463; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm6[3,1,2,0,7,5,6,4]11464; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4,5],ymm0[6],ymm1[7]11465; AVX2-NEXT:    vunpcklps {{.*#+}} ymm1 = ymm5[0],ymm7[0],ymm5[1],ymm7[1],ymm5[4],ymm7[4],ymm5[5],ymm7[5]11466; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5],ymm0[6,7]11467; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload11468; AVX2-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload11469; AVX2-NEXT:    # xmm1 = xmm1[3,3],mem[3,3]11470; AVX2-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload11471; AVX2-NEXT:    # xmm1 = xmm1[0,1,2],mem[3]11472; AVX2-NEXT:    vblendps {{.*#+}} ymm10 = ymm0[0],ymm1[1,2,3],ymm0[4,5,6,7]11473; AVX2-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm6[2],ymm12[2],ymm6[3],ymm12[3],ymm6[6],ymm12[6],ymm6[7],ymm12[7]11474; AVX2-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm7[2],ymm5[2],ymm7[3],ymm5[3],ymm7[6],ymm5[6],ymm7[7],ymm5[7]11475; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]11476; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[3,3,3,3]11477; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]11478; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm13[3,3],ymm14[3,3],ymm13[7,7],ymm14[7,7]11479; AVX2-NEXT:    vpermilps {{.*#+}} ymm2 = mem[2,3,2,3,6,7,6,7]11480; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1,2],ymm2[3,4],ymm1[5,6],ymm2[7]11481; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]11482; AVX2-NEXT:    vblendps {{.*#+}} ymm12 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]11483; AVX2-NEXT:    vbroadcastss 48(%rdx), %ymm011484; AVX2-NEXT:    vmovaps %ymm11, %ymm611485; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm11[3,1,2,0,7,5,6,4]11486; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4,5],ymm0[6],ymm1[7]11487; AVX2-NEXT:    vunpcklps {{.*#+}} ymm1 = ymm4[0],ymm15[0],ymm4[1],ymm15[1],ymm4[4],ymm15[4],ymm4[5],ymm15[5]11488; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5],ymm0[6,7]11489; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload11490; AVX2-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload11491; AVX2-NEXT:    # xmm1 = xmm1[3,3],mem[3,3]11492; AVX2-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload11493; AVX2-NEXT:    # xmm1 = xmm1[0,1,2],mem[3]11494; AVX2-NEXT:    vblendps {{.*#+}} ymm11 = ymm0[0],ymm1[1,2,3],ymm0[4,5,6,7]11495; AVX2-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm6, %ymm0 # 32-byte Folded Reload11496; AVX2-NEXT:    # ymm0 = ymm6[2],mem[2],ymm6[3],mem[3],ymm6[6],mem[6],ymm6[7],mem[7]11497; AVX2-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm15[2],ymm4[2],ymm15[3],ymm4[3],ymm15[6],ymm4[6],ymm15[7],ymm4[7]11498; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]11499; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[3,3,3,3]11500; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]11501; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11502; AVX2-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload11503; AVX2-NEXT:    # ymm1 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]11504; AVX2-NEXT:    vpermilps {{.*#+}} ymm2 = mem[2,3,2,3,6,7,6,7]11505; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1,2],ymm2[3,4],ymm1[5,6],ymm2[7]11506; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]11507; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]11508; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11509; AVX2-NEXT:    vbroadcastss 80(%rdx), %ymm011510; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload11511; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm6[3,1,2,0,7,5,6,4]11512; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4,5],ymm0[6],ymm1[7]11513; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload11514; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload11515; AVX2-NEXT:    vunpcklps {{.*#+}} ymm1 = ymm4[0],ymm2[0],ymm4[1],ymm2[1],ymm4[4],ymm2[4],ymm4[5],ymm2[5]11516; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5],ymm0[6,7]11517; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload11518; AVX2-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload11519; AVX2-NEXT:    # xmm1 = xmm1[3,3],mem[3,3]11520; AVX2-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload11521; AVX2-NEXT:    # xmm1 = xmm1[0,1,2],mem[3]11522; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm1[1,2,3],ymm0[4,5,6,7]11523; AVX2-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11524; AVX2-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm6, %ymm0 # 32-byte Folded Reload11525; AVX2-NEXT:    # ymm0 = ymm6[2],mem[2],ymm6[3],mem[3],ymm6[6],mem[6],ymm6[7],mem[7]11526; AVX2-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm2[2],ymm4[2],ymm2[3],ymm4[3],ymm2[6],ymm4[6],ymm2[7],ymm4[7]11527; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]11528; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[3,3,3,3]11529; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]11530; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11531; AVX2-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload11532; AVX2-NEXT:    # ymm1 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]11533; AVX2-NEXT:    vpermilps {{.*#+}} ymm2 = mem[2,3,2,3,6,7,6,7]11534; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1,2],ymm2[3,4],ymm1[5,6],ymm2[7]11535; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]11536; AVX2-NEXT:    vblendps {{.*#+}} ymm8 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]11537; AVX2-NEXT:    vbroadcastss 112(%rdx), %ymm011538; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload11539; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm4[3,1,2,0,7,5,6,4]11540; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4,5],ymm0[6],ymm1[7]11541; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload11542; AVX2-NEXT:    vunpcklps {{.*#+}} ymm1 = ymm3[0],ymm2[0],ymm3[1],ymm2[1],ymm3[4],ymm2[4],ymm3[5],ymm2[5]11543; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5],ymm0[6,7]11544; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload11545; AVX2-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload11546; AVX2-NEXT:    # xmm1 = xmm1[3,3],mem[3,3]11547; AVX2-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload11548; AVX2-NEXT:    # xmm1 = xmm1[0,1,2],mem[3]11549; AVX2-NEXT:    vblendps {{.*#+}} ymm6 = ymm0[0],ymm1[1,2,3],ymm0[4,5,6,7]11550; AVX2-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm0 # 32-byte Folded Reload11551; AVX2-NEXT:    # ymm0 = ymm4[2],mem[2],ymm4[3],mem[3],ymm4[6],mem[6],ymm4[7],mem[7]11552; AVX2-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm2[2],ymm3[2],ymm2[3],ymm3[3],ymm2[6],ymm3[6],ymm2[7],ymm3[7]11553; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]11554; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[3,3,3,3]11555; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]11556; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11557; AVX2-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload11558; AVX2-NEXT:    # ymm1 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]11559; AVX2-NEXT:    vpermilps {{.*#+}} ymm2 = mem[2,3,2,3,6,7,6,7]11560; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1,2],ymm2[3,4],ymm1[5,6],ymm2[7]11561; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]11562; AVX2-NEXT:    vblendps {{.*#+}} ymm5 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]11563; AVX2-NEXT:    vbroadcastss 144(%rdx), %ymm011564; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload11565; AVX2-NEXT:    vshufps {{.*#+}} ymm1 = ymm3[3,1,2,0,7,5,6,4]11566; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4,5],ymm0[6],ymm1[7]11567; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload11568; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm15 # 32-byte Reload11569; AVX2-NEXT:    vunpcklps {{.*#+}} ymm1 = ymm15[0],ymm2[0],ymm15[1],ymm2[1],ymm15[4],ymm2[4],ymm15[5],ymm2[5]11570; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5],ymm0[6,7]11571; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload11572; AVX2-NEXT:    vshufps $255, (%rsp), %xmm1, %xmm1 # 16-byte Folded Reload11573; AVX2-NEXT:    # xmm1 = xmm1[3,3],mem[3,3]11574; AVX2-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload11575; AVX2-NEXT:    # xmm1 = xmm1[0,1,2],mem[3]11576; AVX2-NEXT:    vblendps {{.*#+}} ymm4 = ymm0[0],ymm1[1,2,3],ymm0[4,5,6,7]11577; AVX2-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm1 # 32-byte Folded Reload11578; AVX2-NEXT:    # ymm1 = ymm3[2],mem[2],ymm3[3],mem[3],ymm3[6],mem[6],ymm3[7],mem[7]11579; AVX2-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm2[2],ymm15[2],ymm2[3],ymm15[3],ymm2[6],ymm15[6],ymm2[7],ymm15[7]11580; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[3,3,3,3]11581; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]11582; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm1[3,4,5,6,7]11583; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11584; AVX2-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload11585; AVX2-NEXT:    # ymm1 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]11586; AVX2-NEXT:    vpermilps {{.*#+}} ymm15 = mem[2,3,2,3,6,7,6,7]11587; AVX2-NEXT:    vblendps {{.*#+}} ymm1 = ymm15[0],ymm1[1,2],ymm15[3,4],ymm1[5,6],ymm15[7]11588; AVX2-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]11589; AVX2-NEXT:    vblendps {{.*#+}} ymm3 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]11590; AVX2-NEXT:    vbroadcastss 176(%rdx), %ymm011591; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11592; AVX2-NEXT:    vshufps {{.*#+}} ymm15 = ymm1[3,1,2,0,7,5,6,4]11593; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm15[0,1,2,3,4,5],ymm0[6],ymm15[7]11594; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11595; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload11596; AVX2-NEXT:    vunpcklps {{.*#+}} ymm15 = ymm14[0],ymm0[0],ymm14[1],ymm0[1],ymm14[4],ymm0[4],ymm14[5],ymm0[5]11597; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm15[4,5],ymm2[6,7]11598; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload11599; AVX2-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7, %xmm15 # 16-byte Folded Reload11600; AVX2-NEXT:    # xmm15 = xmm7[3,3],mem[3,3]11601; AVX2-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm15, %xmm15 # 16-byte Folded Reload11602; AVX2-NEXT:    # xmm15 = xmm15[0,1,2],mem[3]11603; AVX2-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm15[1,2,3],ymm2[4,5,6,7]11604; AVX2-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm15 # 32-byte Folded Reload11605; AVX2-NEXT:    # ymm15 = ymm1[2],mem[2],ymm1[3],mem[3],ymm1[6],mem[6],ymm1[7],mem[7]11606; AVX2-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm14[2],ymm0[3],ymm14[3],ymm0[6],ymm14[6],ymm0[7],ymm14[7]11607; AVX2-NEXT:    vpermpd {{.*#+}} ymm15 = ymm15[3,3,3,3]11608; AVX2-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]11609; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm15[3,4,5,6,7]11610; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11611; AVX2-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm15 # 32-byte Folded Reload11612; AVX2-NEXT:    # ymm15 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]11613; AVX2-NEXT:    vpermilps {{.*#+}} ymm14 = mem[2,3,2,3,6,7,6,7]11614; AVX2-NEXT:    vblendps {{.*#+}} ymm14 = ymm14[0],ymm15[1,2],ymm14[3,4],ymm15[5,6],ymm14[7]11615; AVX2-NEXT:    vpermpd {{.*#+}} ymm14 = ymm14[2,1,2,3]11616; AVX2-NEXT:    vblendps {{.*#+}} ymm0 = ymm14[0],ymm0[1,2,3,4],ymm14[5,6,7]11617; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload11618; AVX2-NEXT:    vunpcklps {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm14 # 32-byte Folded Reload11619; AVX2-NEXT:    # ymm14 = ymm1[0],mem[0],ymm1[1],mem[1],ymm1[4],mem[4],ymm1[5],mem[5]11620; AVX2-NEXT:    vpermilps $39, {{[-0-9]+}}(%r{{[sb]}}p), %ymm15 # 32-byte Folded Reload11621; AVX2-NEXT:    # ymm15 = mem[3,1,2,0,7,5,6,4]11622; AVX2-NEXT:    vbroadcastss 208(%rdx), %ymm1311623; AVX2-NEXT:    vblendps {{.*#+}} ymm13 = ymm15[0,1,2,3,4,5],ymm13[6],ymm15[7]11624; AVX2-NEXT:    vblendps {{.*#+}} ymm13 = ymm13[0,1,2,3],ymm14[4,5],ymm13[6,7]11625; AVX2-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload11626; AVX2-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm14 # 16-byte Folded Reload11627; AVX2-NEXT:    # xmm14 = xmm1[3,3],mem[3,3]11628; AVX2-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm14, %xmm14 # 16-byte Folded Reload11629; AVX2-NEXT:    # xmm14 = xmm14[0,1,2],mem[3]11630; AVX2-NEXT:    vblendps {{.*#+}} ymm13 = ymm13[0],ymm14[1,2,3],ymm13[4,5,6,7]11631; AVX2-NEXT:    movq {{[0-9]+}}(%rsp), %rax11632; AVX2-NEXT:    vmovaps %ymm13, 1440(%rax)11633; AVX2-NEXT:    vmovaps %ymm0, 1312(%rax)11634; AVX2-NEXT:    vmovaps %ymm2, 1216(%rax)11635; AVX2-NEXT:    vmovaps %ymm3, 1088(%rax)11636; AVX2-NEXT:    vmovaps %ymm4, 992(%rax)11637; AVX2-NEXT:    vmovaps %ymm5, 864(%rax)11638; AVX2-NEXT:    vmovaps %ymm6, 768(%rax)11639; AVX2-NEXT:    vmovaps %ymm8, 640(%rax)11640; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11641; AVX2-NEXT:    vmovaps %ymm0, 544(%rax)11642; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11643; AVX2-NEXT:    vmovaps %ymm0, 416(%rax)11644; AVX2-NEXT:    vmovaps %ymm11, 320(%rax)11645; AVX2-NEXT:    vmovaps %ymm12, 192(%rax)11646; AVX2-NEXT:    vmovaps %ymm10, 96(%rax)11647; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11648; AVX2-NEXT:    vmovaps %ymm0, 1504(%rax)11649; AVX2-NEXT:    vmovaps %ymm9, 1472(%rax)11650; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11651; AVX2-NEXT:    vmovaps %ymm0, 1280(%rax)11652; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11653; AVX2-NEXT:    vmovaps %ymm0, 1248(%rax)11654; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11655; AVX2-NEXT:    vmovaps %ymm0, 1056(%rax)11656; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11657; AVX2-NEXT:    vmovaps %ymm0, 1024(%rax)11658; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11659; AVX2-NEXT:    vmovaps %ymm0, 832(%rax)11660; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11661; AVX2-NEXT:    vmovaps %ymm0, 800(%rax)11662; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11663; AVX2-NEXT:    vmovaps %ymm0, 608(%rax)11664; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11665; AVX2-NEXT:    vmovaps %ymm0, 576(%rax)11666; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11667; AVX2-NEXT:    vmovaps %ymm0, 384(%rax)11668; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11669; AVX2-NEXT:    vmovaps %ymm0, 352(%rax)11670; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11671; AVX2-NEXT:    vmovaps %ymm0, 160(%rax)11672; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11673; AVX2-NEXT:    vmovaps %ymm0, 128(%rax)11674; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11675; AVX2-NEXT:    vmovaps %ymm0, 1760(%rax)11676; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11677; AVX2-NEXT:    vmovaps %ymm0, 1728(%rax)11678; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11679; AVX2-NEXT:    vmovaps %ymm0, 1664(%rax)11680; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11681; AVX2-NEXT:    vmovaps %ymm0, 1536(%rax)11682; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11683; AVX2-NEXT:    vmovaps %ymm0, 1408(%rax)11684; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11685; AVX2-NEXT:    vmovaps %ymm0, 1376(%rax)11686; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11687; AVX2-NEXT:    vmovaps %ymm0, 1344(%rax)11688; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11689; AVX2-NEXT:    vmovaps %ymm0, 1184(%rax)11690; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11691; AVX2-NEXT:    vmovaps %ymm0, 1152(%rax)11692; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11693; AVX2-NEXT:    vmovaps %ymm0, 1120(%rax)11694; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11695; AVX2-NEXT:    vmovaps %ymm0, 960(%rax)11696; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11697; AVX2-NEXT:    vmovaps %ymm0, 928(%rax)11698; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11699; AVX2-NEXT:    vmovaps %ymm0, 896(%rax)11700; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11701; AVX2-NEXT:    vmovaps %ymm0, 736(%rax)11702; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11703; AVX2-NEXT:    vmovaps %ymm0, 704(%rax)11704; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11705; AVX2-NEXT:    vmovaps %ymm0, 672(%rax)11706; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11707; AVX2-NEXT:    vmovaps %ymm0, 512(%rax)11708; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11709; AVX2-NEXT:    vmovaps %ymm0, 480(%rax)11710; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11711; AVX2-NEXT:    vmovaps %ymm0, 448(%rax)11712; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11713; AVX2-NEXT:    vmovaps %ymm0, 288(%rax)11714; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11715; AVX2-NEXT:    vmovaps %ymm0, 256(%rax)11716; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11717; AVX2-NEXT:    vmovaps %ymm0, 224(%rax)11718; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11719; AVX2-NEXT:    vmovaps %ymm0, 64(%rax)11720; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11721; AVX2-NEXT:    vmovaps %ymm0, 32(%rax)11722; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11723; AVX2-NEXT:    vmovaps %ymm0, (%rax)11724; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11725; AVX2-NEXT:    vmovaps %ymm0, 1696(%rax)11726; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11727; AVX2-NEXT:    vmovaps %ymm0, 1632(%rax)11728; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11729; AVX2-NEXT:    vmovaps %ymm0, 1600(%rax)11730; AVX2-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload11731; AVX2-NEXT:    vmovaps %ymm0, 1568(%rax)11732; AVX2-NEXT:    addq $2968, %rsp # imm = 0xB9811733; AVX2-NEXT:    vzeroupper11734; AVX2-NEXT:    retq11735;11736; AVX2-FP-LABEL: store_i32_stride7_vf64:11737; AVX2-FP:       # %bb.0:11738; AVX2-FP-NEXT:    subq $2968, %rsp # imm = 0xB9811739; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %rax11740; AVX2-FP-NEXT:    vmovaps (%rax), %xmm011741; AVX2-FP-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11742; AVX2-FP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm011743; AVX2-FP-NEXT:    vmovaps (%r8), %xmm1311744; AVX2-FP-NEXT:    vmovaps 32(%r8), %xmm411745; AVX2-FP-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11746; AVX2-FP-NEXT:    vmovaps (%r9), %xmm111747; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11748; AVX2-FP-NEXT:    vmovaps 32(%r9), %xmm511749; AVX2-FP-NEXT:    vmovaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11750; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,1,1]11751; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0],xmm13[1],xmm1[2,3]11752; AVX2-FP-NEXT:    vbroadcastsd %xmm1, %ymm111753; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5],ymm1[6,7]11754; AVX2-FP-NEXT:    vmovaps (%rcx), %xmm1011755; AVX2-FP-NEXT:    vmovaps 32(%rcx), %xmm311756; AVX2-FP-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11757; AVX2-FP-NEXT:    vmovaps (%rdx), %xmm911758; AVX2-FP-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm9[1],xmm10[1],zero11759; AVX2-FP-NEXT:    vmovaps (%rdi), %xmm711760; AVX2-FP-NEXT:    vmovaps 32(%rdi), %xmm811761; AVX2-FP-NEXT:    vmovaps %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11762; AVX2-FP-NEXT:    vmovaps (%rsi), %xmm611763; AVX2-FP-NEXT:    vmovaps 32(%rsi), %xmm1111764; AVX2-FP-NEXT:    vmovaps %xmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11765; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm2 = xmm6[1,1,2,2]11766; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0,1],xmm7[2],xmm2[3]11767; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[0,1,2,1]11768; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1,2],ymm2[3,4,5,6,7]11769; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]11770; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11771; AVX2-FP-NEXT:    vmovaps 32(%rax), %xmm011772; AVX2-FP-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11773; AVX2-FP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm011774; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm5[1,1,1,1]11775; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0],xmm4[1],xmm1[2,3]11776; AVX2-FP-NEXT:    vbroadcastsd %xmm1, %ymm111777; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5],ymm1[6,7]11778; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm11[1,1,2,2]11779; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm8[2],xmm1[3]11780; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]11781; AVX2-FP-NEXT:    vmovaps 32(%rdx), %xmm811782; AVX2-FP-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm8[1],xmm3[1],zero11783; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]11784; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]11785; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11786; AVX2-FP-NEXT:    vmovaps 64(%r8), %xmm111787; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11788; AVX2-FP-NEXT:    vmovaps 64(%r9), %xmm011789; AVX2-FP-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11790; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[1,1,1,1]11791; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3]11792; AVX2-FP-NEXT:    vbroadcastsd %xmm0, %ymm011793; AVX2-FP-NEXT:    vmovaps 64(%rax), %xmm111794; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11795; AVX2-FP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm111796; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]11797; AVX2-FP-NEXT:    vmovaps 64(%rdi), %xmm211798; AVX2-FP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11799; AVX2-FP-NEXT:    vmovaps 64(%rsi), %xmm111800; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11801; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,2,2]11802; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm2[2],xmm1[3]11803; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]11804; AVX2-FP-NEXT:    vmovaps 64(%rcx), %xmm311805; AVX2-FP-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11806; AVX2-FP-NEXT:    vmovaps 64(%rdx), %xmm211807; AVX2-FP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11808; AVX2-FP-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm2[1],xmm3[1],zero11809; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]11810; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]11811; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11812; AVX2-FP-NEXT:    vmovaps 96(%r8), %xmm111813; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11814; AVX2-FP-NEXT:    vmovaps 96(%r9), %xmm011815; AVX2-FP-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11816; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[1,1,1,1]11817; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3]11818; AVX2-FP-NEXT:    vbroadcastsd %xmm0, %ymm011819; AVX2-FP-NEXT:    vmovaps 96(%rax), %xmm111820; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11821; AVX2-FP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm111822; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]11823; AVX2-FP-NEXT:    vmovaps 96(%rdi), %xmm211824; AVX2-FP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11825; AVX2-FP-NEXT:    vmovaps 96(%rsi), %xmm111826; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11827; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,2,2]11828; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm2[2],xmm1[3]11829; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]11830; AVX2-FP-NEXT:    vmovaps 96(%rcx), %xmm311831; AVX2-FP-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11832; AVX2-FP-NEXT:    vmovaps 96(%rdx), %xmm211833; AVX2-FP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11834; AVX2-FP-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm2[1],xmm3[1],zero11835; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]11836; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]11837; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11838; AVX2-FP-NEXT:    vmovaps 128(%r8), %xmm111839; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11840; AVX2-FP-NEXT:    vmovaps 128(%r9), %xmm011841; AVX2-FP-NEXT:    vmovaps %xmm0, (%rsp) # 16-byte Spill11842; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[1,1,1,1]11843; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3]11844; AVX2-FP-NEXT:    vbroadcastsd %xmm0, %ymm011845; AVX2-FP-NEXT:    vmovaps 128(%rax), %xmm111846; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11847; AVX2-FP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm111848; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]11849; AVX2-FP-NEXT:    vmovaps 128(%rdi), %xmm211850; AVX2-FP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11851; AVX2-FP-NEXT:    vmovaps 128(%rsi), %xmm111852; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11853; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,2,2]11854; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm2[2],xmm1[3]11855; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]11856; AVX2-FP-NEXT:    vmovaps 128(%rcx), %xmm311857; AVX2-FP-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11858; AVX2-FP-NEXT:    vmovaps 128(%rdx), %xmm211859; AVX2-FP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11860; AVX2-FP-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm2[1],xmm3[1],zero11861; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]11862; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]11863; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11864; AVX2-FP-NEXT:    vmovaps 160(%r8), %xmm111865; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11866; AVX2-FP-NEXT:    vmovaps 160(%r9), %xmm011867; AVX2-FP-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11868; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[1,1,1,1]11869; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3]11870; AVX2-FP-NEXT:    vbroadcastsd %xmm0, %ymm011871; AVX2-FP-NEXT:    vmovaps 160(%rax), %xmm111872; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11873; AVX2-FP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm111874; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]11875; AVX2-FP-NEXT:    vmovaps 160(%rdi), %xmm211876; AVX2-FP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11877; AVX2-FP-NEXT:    vmovaps 160(%rsi), %xmm111878; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11879; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,2,2]11880; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm2[2],xmm1[3]11881; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]11882; AVX2-FP-NEXT:    vmovaps 160(%rcx), %xmm311883; AVX2-FP-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11884; AVX2-FP-NEXT:    vmovaps 160(%rdx), %xmm211885; AVX2-FP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11886; AVX2-FP-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm2[1],xmm3[1],zero11887; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]11888; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]11889; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11890; AVX2-FP-NEXT:    vmovaps 192(%r9), %xmm011891; AVX2-FP-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11892; AVX2-FP-NEXT:    vmovaps 192(%r8), %xmm111893; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11894; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[1,1,1,1]11895; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3]11896; AVX2-FP-NEXT:    vbroadcastsd %xmm0, %ymm011897; AVX2-FP-NEXT:    vmovaps 192(%rax), %xmm111898; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11899; AVX2-FP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm111900; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]11901; AVX2-FP-NEXT:    vmovaps 192(%rdi), %xmm211902; AVX2-FP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11903; AVX2-FP-NEXT:    vmovaps 192(%rsi), %xmm111904; AVX2-FP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11905; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,2,2]11906; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm2[2],xmm1[3]11907; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]11908; AVX2-FP-NEXT:    vmovaps 192(%rcx), %xmm311909; AVX2-FP-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11910; AVX2-FP-NEXT:    vmovaps 192(%rdx), %xmm211911; AVX2-FP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill11912; AVX2-FP-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm2[1],xmm3[1],zero11913; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]11914; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]11915; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11916; AVX2-FP-NEXT:    vmovaps (%rdi), %ymm011917; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11918; AVX2-FP-NEXT:    vmovaps (%rsi), %ymm111919; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11920; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm1[2],ymm0[3],ymm1[3],ymm0[6],ymm1[6],ymm0[7],ymm1[7]11921; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]11922; AVX2-FP-NEXT:    vmovaps (%rdx), %ymm211923; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11924; AVX2-FP-NEXT:    vmovaps (%rcx), %ymm111925; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11926; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm2[2],ymm1[2],ymm2[3],ymm1[3],ymm2[6],ymm1[6],ymm2[7],ymm1[7]11927; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]11928; AVX2-FP-NEXT:    vmovaps (%r8), %ymm211929; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11930; AVX2-FP-NEXT:    vmovaps (%r9), %ymm111931; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11932; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]11933; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]11934; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]11935; AVX2-FP-NEXT:    vmovaps 16(%rax), %xmm211936; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]11937; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]11938; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11939; AVX2-FP-NEXT:    vmovaps 32(%rdi), %ymm011940; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11941; AVX2-FP-NEXT:    vmovaps 32(%rsi), %ymm111942; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11943; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm1[2],ymm0[3],ymm1[3],ymm0[6],ymm1[6],ymm0[7],ymm1[7]11944; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]11945; AVX2-FP-NEXT:    vmovaps 32(%rdx), %ymm111946; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11947; AVX2-FP-NEXT:    vmovaps 32(%rcx), %ymm211948; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11949; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]11950; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]11951; AVX2-FP-NEXT:    vmovaps 32(%r8), %ymm211952; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11953; AVX2-FP-NEXT:    vmovaps 32(%r9), %ymm111954; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11955; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]11956; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]11957; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]11958; AVX2-FP-NEXT:    vmovaps 48(%rax), %xmm211959; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]11960; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]11961; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11962; AVX2-FP-NEXT:    vmovaps 64(%rdi), %ymm111963; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11964; AVX2-FP-NEXT:    vmovaps 64(%rsi), %ymm011965; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11966; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[6],ymm0[6],ymm1[7],ymm0[7]11967; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]11968; AVX2-FP-NEXT:    vmovaps 64(%rdx), %ymm111969; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11970; AVX2-FP-NEXT:    vmovaps 64(%rcx), %ymm211971; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11972; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]11973; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]11974; AVX2-FP-NEXT:    vmovaps 64(%r8), %ymm211975; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11976; AVX2-FP-NEXT:    vmovaps 64(%r9), %ymm111977; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11978; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]11979; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]11980; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]11981; AVX2-FP-NEXT:    vmovaps 80(%rax), %xmm211982; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]11983; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]11984; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11985; AVX2-FP-NEXT:    vmovaps 96(%rdi), %ymm111986; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11987; AVX2-FP-NEXT:    vmovaps 96(%rsi), %ymm011988; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11989; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[6],ymm0[6],ymm1[7],ymm0[7]11990; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]11991; AVX2-FP-NEXT:    vmovaps 96(%rdx), %ymm111992; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11993; AVX2-FP-NEXT:    vmovaps 96(%rcx), %ymm211994; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11995; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]11996; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]11997; AVX2-FP-NEXT:    vmovaps 96(%r8), %ymm211998; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill11999; AVX2-FP-NEXT:    vmovaps 96(%r9), %ymm112000; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12001; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]12002; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]12003; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]12004; AVX2-FP-NEXT:    vmovaps 112(%rax), %xmm212005; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]12006; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]12007; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12008; AVX2-FP-NEXT:    vmovaps 128(%rdi), %ymm112009; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12010; AVX2-FP-NEXT:    vmovaps 128(%rsi), %ymm012011; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12012; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[6],ymm0[6],ymm1[7],ymm0[7]12013; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]12014; AVX2-FP-NEXT:    vmovaps 128(%rdx), %ymm112015; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12016; AVX2-FP-NEXT:    vmovaps 128(%rcx), %ymm212017; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12018; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]12019; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]12020; AVX2-FP-NEXT:    vmovaps 128(%r8), %ymm212021; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12022; AVX2-FP-NEXT:    vmovaps 128(%r9), %ymm112023; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12024; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]12025; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]12026; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]12027; AVX2-FP-NEXT:    vmovaps 144(%rax), %xmm212028; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]12029; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]12030; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12031; AVX2-FP-NEXT:    vmovaps 160(%rdi), %ymm112032; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12033; AVX2-FP-NEXT:    vmovaps 160(%rsi), %ymm012034; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12035; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[6],ymm0[6],ymm1[7],ymm0[7]12036; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]12037; AVX2-FP-NEXT:    vmovaps 160(%rdx), %ymm112038; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12039; AVX2-FP-NEXT:    vmovaps 160(%rcx), %ymm212040; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12041; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]12042; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]12043; AVX2-FP-NEXT:    vmovaps 160(%r8), %ymm212044; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12045; AVX2-FP-NEXT:    vmovaps 160(%r9), %ymm112046; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12047; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]12048; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]12049; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]12050; AVX2-FP-NEXT:    vmovaps 176(%rax), %xmm212051; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]12052; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]12053; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12054; AVX2-FP-NEXT:    vmovaps 192(%rdi), %ymm112055; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12056; AVX2-FP-NEXT:    vmovaps 192(%rsi), %ymm012057; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12058; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[6],ymm0[6],ymm1[7],ymm0[7]12059; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]12060; AVX2-FP-NEXT:    vmovaps 192(%rdx), %ymm112061; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12062; AVX2-FP-NEXT:    vmovaps 192(%rcx), %ymm212063; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12064; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]12065; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]12066; AVX2-FP-NEXT:    vmovaps 192(%r8), %ymm212067; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12068; AVX2-FP-NEXT:    vmovaps 192(%r9), %ymm112069; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12070; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]12071; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]12072; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]12073; AVX2-FP-NEXT:    vmovaps 208(%rax), %xmm212074; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]12075; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]12076; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12077; AVX2-FP-NEXT:    vmovaps 224(%rcx), %xmm012078; AVX2-FP-NEXT:    vbroadcastss %xmm0, %xmm212079; AVX2-FP-NEXT:    vmovaps 224(%rdx), %xmm112080; AVX2-FP-NEXT:    vbroadcastss %xmm1, %xmm312081; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm2 = xmm3[0],xmm2[0],xmm3[1],xmm2[1]12082; AVX2-FP-NEXT:    vmovaps 224(%rsi), %xmm412083; AVX2-FP-NEXT:    vmovaps 224(%rdi), %xmm512084; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm3 = xmm5[0],xmm4[0],xmm5[1],xmm4[1]12085; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm3 = xmm3[0,1,2,2]12086; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm3 = ymm3[0,1,2,1]12087; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm3[0,1],ymm2[2,3],ymm3[4,5,6,7]12088; AVX2-FP-NEXT:    vbroadcastsd 224(%r8), %ymm312089; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm3[4,5],ymm2[6,7]12090; AVX2-FP-NEXT:    vmovaps 224(%r9), %xmm312091; AVX2-FP-NEXT:    vbroadcastss %xmm3, %ymm1512092; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm15[5],ymm2[6,7]12093; AVX2-FP-NEXT:    vbroadcastss 224(%rax), %ymm1512094; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5],ymm15[6],ymm2[7]12095; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12096; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm2 = xmm4[1,1,2,2]12097; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0,1],xmm5[2],xmm2[3]12098; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[0,1,2,1]12099; AVX2-FP-NEXT:    vinsertps {{.*#+}} xmm15 = zero,xmm1[1],xmm0[1],zero12100; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm15[1,2],ymm2[3,4,5,6,7]12101; AVX2-FP-NEXT:    vbroadcastss 228(%r8), %ymm1412102; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2],ymm14[3],ymm2[4,5,6,7]12103; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm14 = xmm3[1,1,1,1]12104; AVX2-FP-NEXT:    vinsertf128 $1, %xmm14, %ymm0, %ymm1412105; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm14[4,5],ymm2[6,7]12106; AVX2-FP-NEXT:    vinsertf128 $1, 224(%rax), %ymm15, %ymm1412107; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm14[1],ymm2[2,3,4],ymm14[5],ymm2[6,7]12108; AVX2-FP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12109; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm2 = xmm5[3,3],xmm4[3,3]12110; AVX2-FP-NEXT:    vunpckhps {{.*#+}} xmm0 = xmm1[2],xmm0[2],xmm1[3],xmm0[3]12111; AVX2-FP-NEXT:    vinsertf128 $1, %xmm2, %ymm0, %ymm112112; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[0,1,2,2]12113; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[0,1,2,1]12114; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]12115; AVX2-FP-NEXT:    vmovaps 224(%r8), %ymm512116; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm5[2,3],ymm0[4,5,6,7]12117; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm1 = xmm3[2,2,2,2]12118; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm1[3],ymm0[4,5,6,7]12119; AVX2-FP-NEXT:    vbroadcastss 232(%rax), %ymm112120; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4],ymm0[5,6,7]12121; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12122; AVX2-FP-NEXT:    vmovaps 224(%rdi), %ymm1112123; AVX2-FP-NEXT:    vmovaps 224(%rsi), %ymm412124; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm0 = ymm4[1,1,1,1,5,5,5,5]12125; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm11[1],ymm0[2,3,4],ymm11[5],ymm0[6,7]12126; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm14 = ymm0[2,2,2,2]12127; AVX2-FP-NEXT:    vmovaps 224(%rdx), %ymm1212128; AVX2-FP-NEXT:    vmovaps 224(%rcx), %ymm212129; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm15 = ymm12[1,1],ymm2[1,1],ymm12[5,5],ymm2[5,5]12130; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm14 = ymm14[0,1,2,3,4],ymm15[5,6],ymm14[7]12131; AVX2-FP-NEXT:    vbroadcastsd 240(%r8), %ymm1512132; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm14 = ymm15[0],ymm14[1,2,3,4,5,6],ymm15[7]12133; AVX2-FP-NEXT:    vbroadcastss 240(%r9), %xmm1512134; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm14 = ymm14[0],ymm15[1],ymm14[2,3,4,5,6,7]12135; AVX2-FP-NEXT:    vbroadcastss 240(%rax), %ymm1512136; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm14[0,1],ymm15[2],ymm14[3,4,5,6,7]12137; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12138; AVX2-FP-NEXT:    vbroadcastss %xmm10, %xmm1412139; AVX2-FP-NEXT:    vbroadcastss %xmm9, %xmm1512140; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm14 = xmm15[0],xmm14[0],xmm15[1],xmm14[1]12141; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm15 = xmm7[0],xmm6[0],xmm7[1],xmm6[1]12142; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm15 = xmm15[0,1,2,2]12143; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm15 = ymm15[0,1,2,1]12144; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm14 = ymm15[0,1],ymm14[2,3],ymm15[4,5,6,7]12145; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload12146; AVX2-FP-NEXT:    vmovaps %xmm13, %xmm112147; AVX2-FP-NEXT:    vmovaps %xmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12148; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm15 = xmm13[0],xmm0[0],xmm13[1],xmm0[1]12149; AVX2-FP-NEXT:    vinsertf128 $1, %xmm15, %ymm0, %ymm1512150; AVX2-FP-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 16-byte Folded Reload12151; AVX2-FP-NEXT:    vunpcklpd {{.*#+}} ymm13 = ymm15[0],ymm13[0],ymm15[2],ymm13[2]12152; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm13 = ymm14[0,1,2,3],ymm13[4,5,6],ymm14[7]12153; AVX2-FP-NEXT:    vmovups %ymm13, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12154; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm6 = xmm7[3,3],xmm6[3,3]12155; AVX2-FP-NEXT:    vunpckhps {{.*#+}} xmm7 = xmm9[2],xmm10[2],xmm9[3],xmm10[3]12156; AVX2-FP-NEXT:    vinsertf128 $1, %xmm6, %ymm0, %ymm612157; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]12158; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]12159; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6],ymm7[7]12160; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm7 = xmm0[2,2,2,2]12161; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm7 = xmm1[0,1,2],xmm7[3]12162; AVX2-FP-NEXT:    vbroadcastsd 8(%rax), %ymm912163; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3],ymm9[4,5,6,7]12164; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1],ymm7[2,3,4],ymm6[5,6,7]12165; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12166; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload12167; AVX2-FP-NEXT:    vbroadcastss %xmm1, %xmm612168; AVX2-FP-NEXT:    vbroadcastss %xmm8, %xmm712169; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm6 = xmm7[0],xmm6[0],xmm7[1],xmm6[1]12170; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload12171; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Reload12172; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm14[0],xmm15[0],xmm14[1],xmm15[1]12173; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]12174; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]12175; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1],ymm6[2,3],ymm7[4,5,6,7]12176; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload12177; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Reload12178; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm10[0],xmm13[0],xmm10[1],xmm13[1]12179; AVX2-FP-NEXT:    vinsertf128 $1, %xmm7, %ymm0, %ymm712180; AVX2-FP-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 16-byte Folded Reload12181; AVX2-FP-NEXT:    vunpcklpd {{.*#+}} ymm7 = ymm7[0],ymm9[0],ymm7[2],ymm9[2]12182; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1,2,3],ymm7[4,5,6],ymm6[7]12183; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12184; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm6 = xmm14[3,3],xmm15[3,3]12185; AVX2-FP-NEXT:    vunpckhps {{.*#+}} xmm7 = xmm8[2],xmm1[2],xmm8[3],xmm1[3]12186; AVX2-FP-NEXT:    vinsertf128 $1, %xmm6, %ymm0, %ymm612187; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]12188; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]12189; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6],ymm7[7]12190; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm7 = xmm13[2,2,2,2]12191; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm7 = xmm10[0,1,2],xmm7[3]12192; AVX2-FP-NEXT:    vbroadcastsd 40(%rax), %ymm812193; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3],ymm8[4,5,6,7]12194; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1],ymm7[2,3,4],ymm6[5,6,7]12195; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12196; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Reload12197; AVX2-FP-NEXT:    vbroadcastss %xmm15, %xmm612198; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload12199; AVX2-FP-NEXT:    vbroadcastss %xmm10, %xmm712200; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm6 = xmm7[0],xmm6[0],xmm7[1],xmm6[1]12201; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload12202; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload12203; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm9[0],xmm1[0],xmm9[1],xmm1[1]12204; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]12205; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]12206; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1],ymm6[2,3],ymm7[4,5,6,7]12207; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload12208; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Reload12209; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm14[0],xmm13[0],xmm14[1],xmm13[1]12210; AVX2-FP-NEXT:    vinsertf128 $1, %xmm7, %ymm0, %ymm712211; AVX2-FP-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 16-byte Folded Reload12212; AVX2-FP-NEXT:    vunpcklpd {{.*#+}} ymm7 = ymm7[0],ymm8[0],ymm7[2],ymm8[2]12213; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1,2,3],ymm7[4,5,6],ymm6[7]12214; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12215; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm6 = xmm9[3,3],xmm1[3,3]12216; AVX2-FP-NEXT:    vunpckhps {{.*#+}} xmm7 = xmm10[2],xmm15[2],xmm10[3],xmm15[3]12217; AVX2-FP-NEXT:    vinsertf128 $1, %xmm6, %ymm0, %ymm612218; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]12219; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]12220; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6],ymm7[7]12221; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm7 = xmm13[2,2,2,2]12222; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm7 = xmm14[0,1,2],xmm7[3]12223; AVX2-FP-NEXT:    vbroadcastsd 72(%rax), %ymm812224; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3],ymm8[4,5,6,7]12225; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1],ymm7[2,3,4],ymm6[5,6,7]12226; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12227; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Reload12228; AVX2-FP-NEXT:    vbroadcastss %xmm15, %xmm612229; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload12230; AVX2-FP-NEXT:    vbroadcastss %xmm14, %xmm712231; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm6 = xmm7[0],xmm6[0],xmm7[1],xmm6[1]12232; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload12233; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload12234; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm10[0],xmm9[0],xmm10[1],xmm9[1]12235; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]12236; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]12237; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1],ymm6[2,3],ymm7[4,5,6,7]12238; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Reload12239; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload12240; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm0[0],xmm13[0],xmm0[1],xmm13[1]12241; AVX2-FP-NEXT:    vinsertf128 $1, %xmm7, %ymm0, %ymm712242; AVX2-FP-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 16-byte Folded Reload12243; AVX2-FP-NEXT:    vunpcklpd {{.*#+}} ymm7 = ymm7[0],ymm8[0],ymm7[2],ymm8[2]12244; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm6[0,1,2,3],ymm7[4,5,6],ymm6[7]12245; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12246; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm6 = xmm10[3,3],xmm9[3,3]12247; AVX2-FP-NEXT:    vunpckhps {{.*#+}} xmm7 = xmm14[2],xmm15[2],xmm14[3],xmm15[3]12248; AVX2-FP-NEXT:    vinsertf128 $1, %xmm6, %ymm0, %ymm612249; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]12250; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]12251; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6],ymm7[7]12252; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm7 = xmm13[2,2,2,2]12253; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm7 = xmm0[0,1,2],xmm7[3]12254; AVX2-FP-NEXT:    vbroadcastsd 104(%rax), %ymm812255; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3],ymm8[4,5,6,7]12256; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1],ymm7[2,3,4],ymm6[5,6,7]12257; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12258; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm15 # 16-byte Reload12259; AVX2-FP-NEXT:    vbroadcastss %xmm15, %xmm612260; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload12261; AVX2-FP-NEXT:    vbroadcastss %xmm14, %xmm712262; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm6 = xmm7[0],xmm6[0],xmm7[1],xmm6[1]12263; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload12264; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload12265; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm10[0],xmm9[0],xmm10[1],xmm9[1]12266; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]12267; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]12268; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1],ymm6[2,3],ymm7[4,5,6,7]12269; AVX2-FP-NEXT:    vmovaps (%rsp), %xmm13 # 16-byte Reload12270; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload12271; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm0[0],xmm13[0],xmm0[1],xmm13[1]12272; AVX2-FP-NEXT:    vinsertf128 $1, %xmm7, %ymm0, %ymm712273; AVX2-FP-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 16-byte Folded Reload12274; AVX2-FP-NEXT:    vunpcklpd {{.*#+}} ymm7 = ymm7[0],ymm8[0],ymm7[2],ymm8[2]12275; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm6[0,1,2,3],ymm7[4,5,6],ymm6[7]12276; AVX2-FP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12277; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm6 = xmm10[3,3],xmm9[3,3]12278; AVX2-FP-NEXT:    vunpckhps {{.*#+}} xmm7 = xmm14[2],xmm15[2],xmm14[3],xmm15[3]12279; AVX2-FP-NEXT:    vinsertf128 $1, %xmm6, %ymm0, %ymm612280; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]12281; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]12282; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6],ymm7[7]12283; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm7 = xmm13[2,2,2,2]12284; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm7 = xmm0[0,1,2],xmm7[3]12285; AVX2-FP-NEXT:    vbroadcastsd 136(%rax), %ymm812286; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3],ymm8[4,5,6,7]12287; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1],ymm7[2,3,4],ymm6[5,6,7]12288; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12289; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload12290; AVX2-FP-NEXT:    vbroadcastss %xmm14, %xmm612291; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload12292; AVX2-FP-NEXT:    vbroadcastss %xmm10, %xmm712293; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm6 = xmm7[0],xmm6[0],xmm7[1],xmm6[1]12294; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload12295; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload12296; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm9[0],xmm1[0],xmm9[1],xmm1[1]12297; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]12298; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]12299; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1],ymm6[2,3],ymm7[4,5,6,7]12300; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Reload12301; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload12302; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm0[0],xmm13[0],xmm0[1],xmm13[1]12303; AVX2-FP-NEXT:    vinsertf128 $1, %xmm7, %ymm0, %ymm712304; AVX2-FP-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 16-byte Folded Reload12305; AVX2-FP-NEXT:    vunpcklpd {{.*#+}} ymm7 = ymm7[0],ymm8[0],ymm7[2],ymm8[2]12306; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3],ymm7[4,5,6],ymm6[7]12307; AVX2-FP-NEXT:    vmovups %ymm6, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12308; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm6 = xmm9[3,3],xmm1[3,3]12309; AVX2-FP-NEXT:    vunpckhps {{.*#+}} xmm7 = xmm10[2],xmm14[2],xmm10[3],xmm14[3]12310; AVX2-FP-NEXT:    vinsertf128 $1, %xmm6, %ymm0, %ymm612311; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]12312; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]12313; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6],ymm7[7]12314; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm7 = xmm13[2,2,2,2]12315; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm7 = xmm0[0,1,2],xmm7[3]12316; AVX2-FP-NEXT:    vbroadcastsd 168(%rax), %ymm812317; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3],ymm8[4,5,6,7]12318; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1],ymm7[2,3,4],ymm6[5,6,7]12319; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12320; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm14 # 16-byte Reload12321; AVX2-FP-NEXT:    vbroadcastss %xmm14, %xmm612322; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm13 # 16-byte Reload12323; AVX2-FP-NEXT:    vbroadcastss %xmm13, %xmm712324; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm6 = xmm7[0],xmm6[0],xmm7[1],xmm6[1]12325; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm9 # 16-byte Reload12326; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm10 # 16-byte Reload12327; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm10[0],xmm9[0],xmm10[1],xmm9[1]12328; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]12329; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]12330; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1],ymm6[2,3],ymm7[4,5,6,7]12331; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload12332; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload12333; AVX2-FP-NEXT:    vunpcklps {{.*#+}} xmm7 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]12334; AVX2-FP-NEXT:    vinsertf128 $1, %xmm7, %ymm0, %ymm712335; AVX2-FP-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 16-byte Folded Reload12336; AVX2-FP-NEXT:    vunpcklpd {{.*#+}} ymm7 = ymm7[0],ymm8[0],ymm7[2],ymm8[2]12337; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3],ymm7[4,5,6],ymm6[7]12338; AVX2-FP-NEXT:    vmovups %ymm6, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12339; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm6 = xmm10[3,3],xmm9[3,3]12340; AVX2-FP-NEXT:    vunpckhps {{.*#+}} xmm7 = xmm13[2],xmm14[2],xmm13[3],xmm14[3]12341; AVX2-FP-NEXT:    vinsertf128 $1, %xmm6, %ymm0, %ymm612342; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm7 = xmm7[0,1,2,2]12343; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[0,1,2,1]12344; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1,2,3,4],ymm6[5,6],ymm7[7]12345; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm7 = xmm0[2,2,2,2]12346; AVX2-FP-NEXT:    vblendps {{.*#+}} xmm7 = xmm1[0,1,2],xmm7[3]12347; AVX2-FP-NEXT:    vbroadcastsd 200(%rax), %ymm812348; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm7 = ymm7[0,1,2,3],ymm8[4,5,6,7]12349; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1],ymm7[2,3,4],ymm6[5,6,7]12350; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12351; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload12352; AVX2-FP-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm10, %ymm6 # 32-byte Folded Reload12353; AVX2-FP-NEXT:    # ymm6 = ymm10[2],mem[2],ymm10[3],mem[3],ymm10[6],mem[6],ymm10[7],mem[7]12354; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm6 = ymm6[3,3,3,3]12355; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm8 # 32-byte Reload12356; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm9 # 32-byte Reload12357; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm7 = ymm8[2],ymm9[2],ymm8[3],ymm9[3],ymm8[6],ymm9[6],ymm8[7],ymm9[7]12358; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm7 = ymm7[3,3,3,3]12359; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1,2],ymm6[3,4,5,6,7]12360; AVX2-FP-NEXT:    vbroadcastss 220(%r8), %ymm712361; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3,4],ymm7[5],ymm6[6,7]12362; AVX2-FP-NEXT:    vbroadcastss 220(%r9), %ymm712363; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3,4,5],ymm7[6,7]12364; AVX2-FP-NEXT:    vbroadcastsd 216(%rax), %ymm712365; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm7[0],ymm6[1,2,3,4,5,6],ymm7[7]12366; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12367; AVX2-FP-NEXT:    vbroadcastss 240(%rdx), %ymm612368; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm7 = ymm2[3,1,2,0,7,5,6,4]12369; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0,1,2,3,4,5],ymm6[6],ymm7[7]12370; AVX2-FP-NEXT:    vunpcklps {{.*#+}} ymm7 = ymm11[0],ymm4[0],ymm11[1],ymm4[1],ymm11[4],ymm4[4],ymm11[5],ymm4[5]12371; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3],ymm7[4,5],ymm6[6,7]12372; AVX2-FP-NEXT:    vbroadcastss 236(%r8), %ymm712373; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0],ymm7[1],ymm6[2,3,4,5,6,7]12374; AVX2-FP-NEXT:    vshufps {{.*#+}} xmm3 = xmm3[2,2,3,3]12375; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm6[0,1],ymm3[2,3],ymm6[4,5,6,7]12376; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm6 = ymm11[2],ymm4[2],ymm11[3],ymm4[3],ymm11[6],ymm4[6],ymm11[7],ymm4[7]12377; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm6 = ymm6[2,2,2,2]12378; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm7 = ymm12[2],ymm2[2],ymm12[3],ymm2[3],ymm12[6],ymm2[6],ymm12[7],ymm2[7]12379; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0,1,2,3],ymm7[4,5,6,7]12380; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm5 = ymm6[0,1,2,3,4,5],ymm5[6,7]12381; AVX2-FP-NEXT:    vpermilps {{.*#+}} ymm6 = mem[1,2,2,3,5,6,6,7]12382; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm6 = ymm6[2,2,2,2]12383; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm5 = ymm6[0],ymm5[1,2,3,4,5,6],ymm6[7]12384; AVX2-FP-NEXT:    vmovaps 224(%rax), %ymm612385; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm3[0,1,2],ymm6[3],ymm3[4,5,6,7]12386; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12387; AVX2-FP-NEXT:    vperm2f128 {{.*#+}} ymm3 = ymm6[2,3],ymm7[2,3]12388; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0],ymm3[1],ymm5[2,3,4],ymm3[5],ymm5[6,7]12389; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12390; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm2[2],ymm12[2],ymm2[3],ymm12[3],ymm2[6],ymm12[6],ymm2[7],ymm12[7]12391; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm4[2],ymm11[2],ymm4[3],ymm11[3],ymm4[6],ymm11[6],ymm4[7],ymm11[7]12392; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]12393; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[3,3,3,3]12394; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]12395; AVX2-FP-NEXT:    vbroadcastss 252(%r8), %ymm112396; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]12397; AVX2-FP-NEXT:    vbroadcastss 252(%r9), %ymm112398; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm1[6,7]12399; AVX2-FP-NEXT:    vbroadcastsd 248(%rax), %ymm112400; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4,5,6],ymm1[7]12401; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12402; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm7 # 32-byte Reload12403; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm0 = ymm7[1,1,1,1,5,5,5,5]12404; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm5 # 32-byte Reload12405; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm5[1],ymm0[2,3,4],ymm5[5],ymm0[6,7]12406; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]12407; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload12408; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload12409; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm12[1,1],ymm6[1,1],ymm12[5,5],ymm6[5,5]12410; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]12411; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload12412; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm14[0,0,0,0,4,4,4,4]12413; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 32-byte Reload12414; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm2 = ymm13[0,1,0,1,4,5,4,5]12415; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1],ymm2[2,3,4],ymm1[5],ymm2[6,7]12416; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]12417; AVX2-FP-NEXT:    vbroadcastsd 16(%rax), %ymm212418; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]12419; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]12420; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12421; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm15 # 32-byte Reload12422; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm0 = ymm15[1,1,1,1,5,5,5,5]12423; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload12424; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm4[1],ymm0[2,3,4],ymm4[5],ymm0[6,7]12425; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]12426; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload12427; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12428; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1],ymm11[1,1],ymm1[5,5],ymm11[5,5]12429; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]12430; AVX2-FP-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Folded Reload12431; AVX2-FP-NEXT:    # ymm1 = mem[0,0,0,0,4,4,4,4]12432; AVX2-FP-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload12433; AVX2-FP-NEXT:    # ymm2 = mem[0,1,0,1,4,5,4,5]12434; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1],ymm2[2,3,4],ymm1[5],ymm2[6,7]12435; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]12436; AVX2-FP-NEXT:    vbroadcastsd 48(%rax), %ymm212437; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]12438; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]12439; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12440; AVX2-FP-NEXT:    vpermilps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Folded Reload12441; AVX2-FP-NEXT:    # ymm0 = mem[1,1,1,1,5,5,5,5]12442; AVX2-FP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload12443; AVX2-FP-NEXT:    # ymm0 = ymm0[0],mem[1],ymm0[2,3,4],mem[5],ymm0[6,7]12444; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]12445; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12446; AVX2-FP-NEXT:    vshufps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload12447; AVX2-FP-NEXT:    # ymm1 = ymm1[1,1],mem[1,1],ymm1[5,5],mem[5,5]12448; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]12449; AVX2-FP-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Folded Reload12450; AVX2-FP-NEXT:    # ymm1 = mem[0,0,0,0,4,4,4,4]12451; AVX2-FP-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload12452; AVX2-FP-NEXT:    # ymm2 = mem[0,1,0,1,4,5,4,5]12453; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1],ymm2[2,3,4],ymm1[5],ymm2[6,7]12454; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]12455; AVX2-FP-NEXT:    vbroadcastsd 80(%rax), %ymm212456; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]12457; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]12458; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12459; AVX2-FP-NEXT:    vpermilps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Folded Reload12460; AVX2-FP-NEXT:    # ymm0 = mem[1,1,1,1,5,5,5,5]12461; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload12462; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm3[1],ymm0[2,3,4],ymm3[5],ymm0[6,7]12463; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]12464; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12465; AVX2-FP-NEXT:    vshufps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload12466; AVX2-FP-NEXT:    # ymm1 = ymm1[1,1],mem[1,1],ymm1[5,5],mem[5,5]12467; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]12468; AVX2-FP-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Folded Reload12469; AVX2-FP-NEXT:    # ymm1 = mem[0,0,0,0,4,4,4,4]12470; AVX2-FP-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload12471; AVX2-FP-NEXT:    # ymm2 = mem[0,1,0,1,4,5,4,5]12472; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1],ymm2[2,3,4],ymm1[5],ymm2[6,7]12473; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]12474; AVX2-FP-NEXT:    vbroadcastsd 112(%rax), %ymm212475; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]12476; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]12477; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12478; AVX2-FP-NEXT:    vpermilps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Folded Reload12479; AVX2-FP-NEXT:    # ymm0 = mem[1,1,1,1,5,5,5,5]12480; AVX2-FP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload12481; AVX2-FP-NEXT:    # ymm0 = ymm0[0],mem[1],ymm0[2,3,4],mem[5],ymm0[6,7]12482; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]12483; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12484; AVX2-FP-NEXT:    vshufps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload12485; AVX2-FP-NEXT:    # ymm1 = ymm1[1,1],mem[1,1],ymm1[5,5],mem[5,5]12486; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]12487; AVX2-FP-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Folded Reload12488; AVX2-FP-NEXT:    # ymm1 = mem[0,0,0,0,4,4,4,4]12489; AVX2-FP-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload12490; AVX2-FP-NEXT:    # ymm2 = mem[0,1,0,1,4,5,4,5]12491; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1],ymm2[2,3,4],ymm1[5],ymm2[6,7]12492; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]12493; AVX2-FP-NEXT:    vbroadcastsd 144(%rax), %ymm212494; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]12495; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]12496; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12497; AVX2-FP-NEXT:    vpermilps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Folded Reload12498; AVX2-FP-NEXT:    # ymm0 = mem[1,1,1,1,5,5,5,5]12499; AVX2-FP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload12500; AVX2-FP-NEXT:    # ymm0 = ymm0[0],mem[1],ymm0[2,3,4],mem[5],ymm0[6,7]12501; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]12502; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12503; AVX2-FP-NEXT:    vshufps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload12504; AVX2-FP-NEXT:    # ymm1 = ymm1[1,1],mem[1,1],ymm1[5,5],mem[5,5]12505; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]12506; AVX2-FP-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Folded Reload12507; AVX2-FP-NEXT:    # ymm1 = mem[0,0,0,0,4,4,4,4]12508; AVX2-FP-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload12509; AVX2-FP-NEXT:    # ymm2 = mem[0,1,0,1,4,5,4,5]12510; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1],ymm2[2,3,4],ymm1[5],ymm2[6,7]12511; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]12512; AVX2-FP-NEXT:    vbroadcastsd 176(%rax), %ymm212513; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]12514; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]12515; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12516; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12517; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[1,1],ymm10[1,1],ymm0[5,5],ymm10[5,5]12518; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm8[1,1,1,1,5,5,5,5]12519; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm9[1],ymm1[2,3,4],ymm9[5],ymm1[6,7]12520; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,2,2,2]12521; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]12522; AVX2-FP-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Folded Reload12523; AVX2-FP-NEXT:    # ymm1 = mem[0,0,0,0,4,4,4,4]12524; AVX2-FP-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload12525; AVX2-FP-NEXT:    # ymm2 = mem[0,1,0,1,4,5,4,5]12526; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1],ymm2[2,3,4],ymm1[5],ymm2[6,7]12527; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]12528; AVX2-FP-NEXT:    vbroadcastsd 208(%rax), %ymm212529; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]12530; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm9 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]12531; AVX2-FP-NEXT:    vbroadcastss 16(%rdx), %ymm012532; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm6[3,1,2,0,7,5,6,4]12533; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4,5],ymm0[6],ymm1[7]12534; AVX2-FP-NEXT:    vunpcklps {{.*#+}} ymm1 = ymm5[0],ymm7[0],ymm5[1],ymm7[1],ymm5[4],ymm7[4],ymm5[5],ymm7[5]12535; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5],ymm0[6,7]12536; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload12537; AVX2-FP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload12538; AVX2-FP-NEXT:    # xmm1 = xmm1[3,3],mem[3,3]12539; AVX2-FP-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload12540; AVX2-FP-NEXT:    # xmm1 = xmm1[0,1,2],mem[3]12541; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm10 = ymm0[0],ymm1[1,2,3],ymm0[4,5,6,7]12542; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm6[2],ymm12[2],ymm6[3],ymm12[3],ymm6[6],ymm12[6],ymm6[7],ymm12[7]12543; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm7[2],ymm5[2],ymm7[3],ymm5[3],ymm7[6],ymm5[6],ymm7[7],ymm5[7]12544; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]12545; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[3,3,3,3]12546; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]12547; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm13[3,3],ymm14[3,3],ymm13[7,7],ymm14[7,7]12548; AVX2-FP-NEXT:    vpermilps {{.*#+}} ymm2 = mem[2,3,2,3,6,7,6,7]12549; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1,2],ymm2[3,4],ymm1[5,6],ymm2[7]12550; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]12551; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm12 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]12552; AVX2-FP-NEXT:    vbroadcastss 48(%rdx), %ymm012553; AVX2-FP-NEXT:    vmovaps %ymm11, %ymm612554; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm11[3,1,2,0,7,5,6,4]12555; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4,5],ymm0[6],ymm1[7]12556; AVX2-FP-NEXT:    vunpcklps {{.*#+}} ymm1 = ymm4[0],ymm15[0],ymm4[1],ymm15[1],ymm4[4],ymm15[4],ymm4[5],ymm15[5]12557; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5],ymm0[6,7]12558; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload12559; AVX2-FP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload12560; AVX2-FP-NEXT:    # xmm1 = xmm1[3,3],mem[3,3]12561; AVX2-FP-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload12562; AVX2-FP-NEXT:    # xmm1 = xmm1[0,1,2],mem[3]12563; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm11 = ymm0[0],ymm1[1,2,3],ymm0[4,5,6,7]12564; AVX2-FP-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm6, %ymm0 # 32-byte Folded Reload12565; AVX2-FP-NEXT:    # ymm0 = ymm6[2],mem[2],ymm6[3],mem[3],ymm6[6],mem[6],ymm6[7],mem[7]12566; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm15[2],ymm4[2],ymm15[3],ymm4[3],ymm15[6],ymm4[6],ymm15[7],ymm4[7]12567; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]12568; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[3,3,3,3]12569; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]12570; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12571; AVX2-FP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload12572; AVX2-FP-NEXT:    # ymm1 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]12573; AVX2-FP-NEXT:    vpermilps {{.*#+}} ymm2 = mem[2,3,2,3,6,7,6,7]12574; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1,2],ymm2[3,4],ymm1[5,6],ymm2[7]12575; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]12576; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]12577; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12578; AVX2-FP-NEXT:    vbroadcastss 80(%rdx), %ymm012579; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm6 # 32-byte Reload12580; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm6[3,1,2,0,7,5,6,4]12581; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4,5],ymm0[6],ymm1[7]12582; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload12583; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload12584; AVX2-FP-NEXT:    vunpcklps {{.*#+}} ymm1 = ymm4[0],ymm2[0],ymm4[1],ymm2[1],ymm4[4],ymm2[4],ymm4[5],ymm2[5]12585; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5],ymm0[6,7]12586; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload12587; AVX2-FP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload12588; AVX2-FP-NEXT:    # xmm1 = xmm1[3,3],mem[3,3]12589; AVX2-FP-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload12590; AVX2-FP-NEXT:    # xmm1 = xmm1[0,1,2],mem[3]12591; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm1[1,2,3],ymm0[4,5,6,7]12592; AVX2-FP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12593; AVX2-FP-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm6, %ymm0 # 32-byte Folded Reload12594; AVX2-FP-NEXT:    # ymm0 = ymm6[2],mem[2],ymm6[3],mem[3],ymm6[6],mem[6],ymm6[7],mem[7]12595; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm2[2],ymm4[2],ymm2[3],ymm4[3],ymm2[6],ymm4[6],ymm2[7],ymm4[7]12596; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]12597; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[3,3,3,3]12598; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]12599; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12600; AVX2-FP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload12601; AVX2-FP-NEXT:    # ymm1 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]12602; AVX2-FP-NEXT:    vpermilps {{.*#+}} ymm2 = mem[2,3,2,3,6,7,6,7]12603; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1,2],ymm2[3,4],ymm1[5,6],ymm2[7]12604; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]12605; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm8 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]12606; AVX2-FP-NEXT:    vbroadcastss 112(%rdx), %ymm012607; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload12608; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm4[3,1,2,0,7,5,6,4]12609; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4,5],ymm0[6],ymm1[7]12610; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload12611; AVX2-FP-NEXT:    vunpcklps {{.*#+}} ymm1 = ymm3[0],ymm2[0],ymm3[1],ymm2[1],ymm3[4],ymm2[4],ymm3[5],ymm2[5]12612; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5],ymm0[6,7]12613; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload12614; AVX2-FP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload12615; AVX2-FP-NEXT:    # xmm1 = xmm1[3,3],mem[3,3]12616; AVX2-FP-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload12617; AVX2-FP-NEXT:    # xmm1 = xmm1[0,1,2],mem[3]12618; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm6 = ymm0[0],ymm1[1,2,3],ymm0[4,5,6,7]12619; AVX2-FP-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm0 # 32-byte Folded Reload12620; AVX2-FP-NEXT:    # ymm0 = ymm4[2],mem[2],ymm4[3],mem[3],ymm4[6],mem[6],ymm4[7],mem[7]12621; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm2[2],ymm3[2],ymm2[3],ymm3[3],ymm2[6],ymm3[6],ymm2[7],ymm3[7]12622; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]12623; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[3,3,3,3]12624; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]12625; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12626; AVX2-FP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload12627; AVX2-FP-NEXT:    # ymm1 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]12628; AVX2-FP-NEXT:    vpermilps {{.*#+}} ymm2 = mem[2,3,2,3,6,7,6,7]12629; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1,2],ymm2[3,4],ymm1[5,6],ymm2[7]12630; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]12631; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm5 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]12632; AVX2-FP-NEXT:    vbroadcastss 144(%rdx), %ymm012633; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload12634; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm1 = ymm3[3,1,2,0,7,5,6,4]12635; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4,5],ymm0[6],ymm1[7]12636; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload12637; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm15 # 32-byte Reload12638; AVX2-FP-NEXT:    vunpcklps {{.*#+}} ymm1 = ymm15[0],ymm2[0],ymm15[1],ymm2[1],ymm15[4],ymm2[4],ymm15[5],ymm2[5]12639; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5],ymm0[6,7]12640; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload12641; AVX2-FP-NEXT:    vshufps $255, (%rsp), %xmm1, %xmm1 # 16-byte Folded Reload12642; AVX2-FP-NEXT:    # xmm1 = xmm1[3,3],mem[3,3]12643; AVX2-FP-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload12644; AVX2-FP-NEXT:    # xmm1 = xmm1[0,1,2],mem[3]12645; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm4 = ymm0[0],ymm1[1,2,3],ymm0[4,5,6,7]12646; AVX2-FP-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm3, %ymm1 # 32-byte Folded Reload12647; AVX2-FP-NEXT:    # ymm1 = ymm3[2],mem[2],ymm3[3],mem[3],ymm3[6],mem[6],ymm3[7],mem[7]12648; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm2[2],ymm15[2],ymm2[3],ymm15[3],ymm2[6],ymm15[6],ymm2[7],ymm15[7]12649; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[3,3,3,3]12650; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]12651; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm1[3,4,5,6,7]12652; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12653; AVX2-FP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload12654; AVX2-FP-NEXT:    # ymm1 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]12655; AVX2-FP-NEXT:    vpermilps {{.*#+}} ymm15 = mem[2,3,2,3,6,7,6,7]12656; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm1 = ymm15[0],ymm1[1,2],ymm15[3,4],ymm1[5,6],ymm15[7]12657; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]12658; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm3 = ymm1[0],ymm0[1,2,3,4],ymm1[5,6,7]12659; AVX2-FP-NEXT:    vbroadcastss 176(%rdx), %ymm012660; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12661; AVX2-FP-NEXT:    vshufps {{.*#+}} ymm15 = ymm1[3,1,2,0,7,5,6,4]12662; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm15[0,1,2,3,4,5],ymm0[6],ymm15[7]12663; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12664; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload12665; AVX2-FP-NEXT:    vunpcklps {{.*#+}} ymm15 = ymm14[0],ymm0[0],ymm14[1],ymm0[1],ymm14[4],ymm0[4],ymm14[5],ymm0[5]12666; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm15[4,5],ymm2[6,7]12667; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload12668; AVX2-FP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm7, %xmm15 # 16-byte Folded Reload12669; AVX2-FP-NEXT:    # xmm15 = xmm7[3,3],mem[3,3]12670; AVX2-FP-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm15, %xmm15 # 16-byte Folded Reload12671; AVX2-FP-NEXT:    # xmm15 = xmm15[0,1,2],mem[3]12672; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm15[1,2,3],ymm2[4,5,6,7]12673; AVX2-FP-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm15 # 32-byte Folded Reload12674; AVX2-FP-NEXT:    # ymm15 = ymm1[2],mem[2],ymm1[3],mem[3],ymm1[6],mem[6],ymm1[7],mem[7]12675; AVX2-FP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm14[2],ymm0[3],ymm14[3],ymm0[6],ymm14[6],ymm0[7],ymm14[7]12676; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm15 = ymm15[3,3,3,3]12677; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]12678; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm15[3,4,5,6,7]12679; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12680; AVX2-FP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm15 # 32-byte Folded Reload12681; AVX2-FP-NEXT:    # ymm15 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]12682; AVX2-FP-NEXT:    vpermilps {{.*#+}} ymm14 = mem[2,3,2,3,6,7,6,7]12683; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm14 = ymm14[0],ymm15[1,2],ymm14[3,4],ymm15[5,6],ymm14[7]12684; AVX2-FP-NEXT:    vpermpd {{.*#+}} ymm14 = ymm14[2,1,2,3]12685; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm0 = ymm14[0],ymm0[1,2,3,4],ymm14[5,6,7]12686; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload12687; AVX2-FP-NEXT:    vunpcklps {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm14 # 32-byte Folded Reload12688; AVX2-FP-NEXT:    # ymm14 = ymm1[0],mem[0],ymm1[1],mem[1],ymm1[4],mem[4],ymm1[5],mem[5]12689; AVX2-FP-NEXT:    vpermilps $39, {{[-0-9]+}}(%r{{[sb]}}p), %ymm15 # 32-byte Folded Reload12690; AVX2-FP-NEXT:    # ymm15 = mem[3,1,2,0,7,5,6,4]12691; AVX2-FP-NEXT:    vbroadcastss 208(%rdx), %ymm1312692; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm13 = ymm15[0,1,2,3,4,5],ymm13[6],ymm15[7]12693; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm13 = ymm13[0,1,2,3],ymm14[4,5],ymm13[6,7]12694; AVX2-FP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload12695; AVX2-FP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm14 # 16-byte Folded Reload12696; AVX2-FP-NEXT:    # xmm14 = xmm1[3,3],mem[3,3]12697; AVX2-FP-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm14, %xmm14 # 16-byte Folded Reload12698; AVX2-FP-NEXT:    # xmm14 = xmm14[0,1,2],mem[3]12699; AVX2-FP-NEXT:    vblendps {{.*#+}} ymm13 = ymm13[0],ymm14[1,2,3],ymm13[4,5,6,7]12700; AVX2-FP-NEXT:    movq {{[0-9]+}}(%rsp), %rax12701; AVX2-FP-NEXT:    vmovaps %ymm13, 1440(%rax)12702; AVX2-FP-NEXT:    vmovaps %ymm0, 1312(%rax)12703; AVX2-FP-NEXT:    vmovaps %ymm2, 1216(%rax)12704; AVX2-FP-NEXT:    vmovaps %ymm3, 1088(%rax)12705; AVX2-FP-NEXT:    vmovaps %ymm4, 992(%rax)12706; AVX2-FP-NEXT:    vmovaps %ymm5, 864(%rax)12707; AVX2-FP-NEXT:    vmovaps %ymm6, 768(%rax)12708; AVX2-FP-NEXT:    vmovaps %ymm8, 640(%rax)12709; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12710; AVX2-FP-NEXT:    vmovaps %ymm0, 544(%rax)12711; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12712; AVX2-FP-NEXT:    vmovaps %ymm0, 416(%rax)12713; AVX2-FP-NEXT:    vmovaps %ymm11, 320(%rax)12714; AVX2-FP-NEXT:    vmovaps %ymm12, 192(%rax)12715; AVX2-FP-NEXT:    vmovaps %ymm10, 96(%rax)12716; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12717; AVX2-FP-NEXT:    vmovaps %ymm0, 1504(%rax)12718; AVX2-FP-NEXT:    vmovaps %ymm9, 1472(%rax)12719; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12720; AVX2-FP-NEXT:    vmovaps %ymm0, 1280(%rax)12721; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12722; AVX2-FP-NEXT:    vmovaps %ymm0, 1248(%rax)12723; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12724; AVX2-FP-NEXT:    vmovaps %ymm0, 1056(%rax)12725; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12726; AVX2-FP-NEXT:    vmovaps %ymm0, 1024(%rax)12727; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12728; AVX2-FP-NEXT:    vmovaps %ymm0, 832(%rax)12729; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12730; AVX2-FP-NEXT:    vmovaps %ymm0, 800(%rax)12731; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12732; AVX2-FP-NEXT:    vmovaps %ymm0, 608(%rax)12733; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12734; AVX2-FP-NEXT:    vmovaps %ymm0, 576(%rax)12735; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12736; AVX2-FP-NEXT:    vmovaps %ymm0, 384(%rax)12737; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12738; AVX2-FP-NEXT:    vmovaps %ymm0, 352(%rax)12739; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12740; AVX2-FP-NEXT:    vmovaps %ymm0, 160(%rax)12741; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12742; AVX2-FP-NEXT:    vmovaps %ymm0, 128(%rax)12743; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12744; AVX2-FP-NEXT:    vmovaps %ymm0, 1760(%rax)12745; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12746; AVX2-FP-NEXT:    vmovaps %ymm0, 1728(%rax)12747; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12748; AVX2-FP-NEXT:    vmovaps %ymm0, 1664(%rax)12749; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12750; AVX2-FP-NEXT:    vmovaps %ymm0, 1536(%rax)12751; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12752; AVX2-FP-NEXT:    vmovaps %ymm0, 1408(%rax)12753; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12754; AVX2-FP-NEXT:    vmovaps %ymm0, 1376(%rax)12755; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12756; AVX2-FP-NEXT:    vmovaps %ymm0, 1344(%rax)12757; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12758; AVX2-FP-NEXT:    vmovaps %ymm0, 1184(%rax)12759; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12760; AVX2-FP-NEXT:    vmovaps %ymm0, 1152(%rax)12761; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12762; AVX2-FP-NEXT:    vmovaps %ymm0, 1120(%rax)12763; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12764; AVX2-FP-NEXT:    vmovaps %ymm0, 960(%rax)12765; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12766; AVX2-FP-NEXT:    vmovaps %ymm0, 928(%rax)12767; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12768; AVX2-FP-NEXT:    vmovaps %ymm0, 896(%rax)12769; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12770; AVX2-FP-NEXT:    vmovaps %ymm0, 736(%rax)12771; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12772; AVX2-FP-NEXT:    vmovaps %ymm0, 704(%rax)12773; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12774; AVX2-FP-NEXT:    vmovaps %ymm0, 672(%rax)12775; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12776; AVX2-FP-NEXT:    vmovaps %ymm0, 512(%rax)12777; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12778; AVX2-FP-NEXT:    vmovaps %ymm0, 480(%rax)12779; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12780; AVX2-FP-NEXT:    vmovaps %ymm0, 448(%rax)12781; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12782; AVX2-FP-NEXT:    vmovaps %ymm0, 288(%rax)12783; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12784; AVX2-FP-NEXT:    vmovaps %ymm0, 256(%rax)12785; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12786; AVX2-FP-NEXT:    vmovaps %ymm0, 224(%rax)12787; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12788; AVX2-FP-NEXT:    vmovaps %ymm0, 64(%rax)12789; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12790; AVX2-FP-NEXT:    vmovaps %ymm0, 32(%rax)12791; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12792; AVX2-FP-NEXT:    vmovaps %ymm0, (%rax)12793; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12794; AVX2-FP-NEXT:    vmovaps %ymm0, 1696(%rax)12795; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12796; AVX2-FP-NEXT:    vmovaps %ymm0, 1632(%rax)12797; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12798; AVX2-FP-NEXT:    vmovaps %ymm0, 1600(%rax)12799; AVX2-FP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload12800; AVX2-FP-NEXT:    vmovaps %ymm0, 1568(%rax)12801; AVX2-FP-NEXT:    addq $2968, %rsp # imm = 0xB9812802; AVX2-FP-NEXT:    vzeroupper12803; AVX2-FP-NEXT:    retq12804;12805; AVX2-FCP-LABEL: store_i32_stride7_vf64:12806; AVX2-FCP:       # %bb.0:12807; AVX2-FCP-NEXT:    subq $3080, %rsp # imm = 0xC0812808; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax12809; AVX2-FCP-NEXT:    vmovaps (%rax), %xmm012810; AVX2-FCP-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12811; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm012812; AVX2-FCP-NEXT:    vmovaps (%r8), %xmm212813; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12814; AVX2-FCP-NEXT:    vmovaps 32(%r8), %xmm312815; AVX2-FCP-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12816; AVX2-FCP-NEXT:    vmovaps (%r9), %xmm112817; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12818; AVX2-FCP-NEXT:    vmovaps 32(%r9), %xmm412819; AVX2-FCP-NEXT:    vmovaps %xmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12820; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,1,1]12821; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0],xmm2[1],xmm1[2,3]12822; AVX2-FCP-NEXT:    vbroadcastsd %xmm1, %ymm112823; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5],ymm1[6,7]12824; AVX2-FCP-NEXT:    vmovaps (%rcx), %xmm212825; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12826; AVX2-FCP-NEXT:    vmovaps 32(%rcx), %xmm512827; AVX2-FCP-NEXT:    vmovaps %xmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12828; AVX2-FCP-NEXT:    vmovaps (%rdx), %xmm112829; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12830; AVX2-FCP-NEXT:    vinsertps {{.*#+}} xmm1 = zero,xmm1[1],xmm2[1],zero12831; AVX2-FCP-NEXT:    vmovaps (%rdi), %xmm812832; AVX2-FCP-NEXT:    vmovaps %xmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12833; AVX2-FCP-NEXT:    vmovaps 32(%rdi), %xmm612834; AVX2-FCP-NEXT:    vmovaps %xmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12835; AVX2-FCP-NEXT:    vmovaps (%rsi), %xmm212836; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12837; AVX2-FCP-NEXT:    vmovaps 32(%rsi), %xmm712838; AVX2-FCP-NEXT:    vmovaps %xmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12839; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm2 = xmm2[1,1,2,2]12840; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0,1],xmm8[2],xmm2[3]12841; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[0,1,2,1]12842; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1,2],ymm2[3,4,5,6,7]12843; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]12844; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12845; AVX2-FCP-NEXT:    vmovaps 32(%rax), %xmm012846; AVX2-FCP-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12847; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm012848; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm4[1,1,1,1]12849; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0],xmm3[1],xmm1[2,3]12850; AVX2-FCP-NEXT:    vbroadcastsd %xmm1, %ymm112851; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5],ymm1[6,7]12852; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm7[1,1,2,2]12853; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm6[2],xmm1[3]12854; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]12855; AVX2-FCP-NEXT:    vmovaps 32(%rdx), %xmm212856; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12857; AVX2-FCP-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm2[1],xmm5[1],zero12858; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]12859; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]12860; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12861; AVX2-FCP-NEXT:    vmovaps 64(%r8), %xmm112862; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12863; AVX2-FCP-NEXT:    vmovaps 64(%r9), %xmm012864; AVX2-FCP-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12865; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[1,1,1,1]12866; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3]12867; AVX2-FCP-NEXT:    vbroadcastsd %xmm0, %ymm012868; AVX2-FCP-NEXT:    vmovaps 64(%rax), %xmm112869; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12870; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm112871; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]12872; AVX2-FCP-NEXT:    vmovaps 64(%rdi), %xmm212873; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12874; AVX2-FCP-NEXT:    vmovaps 64(%rsi), %xmm112875; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12876; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,2,2]12877; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm2[2],xmm1[3]12878; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]12879; AVX2-FCP-NEXT:    vmovaps 64(%rcx), %xmm312880; AVX2-FCP-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12881; AVX2-FCP-NEXT:    vmovaps 64(%rdx), %xmm212882; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12883; AVX2-FCP-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm2[1],xmm3[1],zero12884; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]12885; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]12886; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12887; AVX2-FCP-NEXT:    vmovaps 96(%r8), %xmm112888; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12889; AVX2-FCP-NEXT:    vmovaps 96(%r9), %xmm012890; AVX2-FCP-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12891; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[1,1,1,1]12892; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3]12893; AVX2-FCP-NEXT:    vbroadcastsd %xmm0, %ymm012894; AVX2-FCP-NEXT:    vmovaps 96(%rax), %xmm112895; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12896; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm112897; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]12898; AVX2-FCP-NEXT:    vmovaps 96(%rdi), %xmm212899; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12900; AVX2-FCP-NEXT:    vmovaps 96(%rsi), %xmm112901; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12902; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,2,2]12903; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm2[2],xmm1[3]12904; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]12905; AVX2-FCP-NEXT:    vmovaps 96(%rcx), %xmm312906; AVX2-FCP-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12907; AVX2-FCP-NEXT:    vmovaps 96(%rdx), %xmm212908; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12909; AVX2-FCP-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm2[1],xmm3[1],zero12910; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]12911; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]12912; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12913; AVX2-FCP-NEXT:    vmovaps 128(%r8), %xmm112914; AVX2-FCP-NEXT:    vmovaps %xmm1, (%rsp) # 16-byte Spill12915; AVX2-FCP-NEXT:    vmovaps 128(%r9), %xmm012916; AVX2-FCP-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12917; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[1,1,1,1]12918; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3]12919; AVX2-FCP-NEXT:    vbroadcastsd %xmm0, %ymm012920; AVX2-FCP-NEXT:    vmovaps 128(%rax), %xmm112921; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12922; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm112923; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]12924; AVX2-FCP-NEXT:    vmovaps 128(%rdi), %xmm212925; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12926; AVX2-FCP-NEXT:    vmovaps 128(%rsi), %xmm112927; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12928; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,2,2]12929; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm2[2],xmm1[3]12930; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]12931; AVX2-FCP-NEXT:    vmovaps 128(%rcx), %xmm312932; AVX2-FCP-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12933; AVX2-FCP-NEXT:    vmovaps 128(%rdx), %xmm212934; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12935; AVX2-FCP-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm2[1],xmm3[1],zero12936; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]12937; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]12938; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12939; AVX2-FCP-NEXT:    vmovaps 160(%r8), %xmm112940; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12941; AVX2-FCP-NEXT:    vmovaps 160(%r9), %xmm012942; AVX2-FCP-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12943; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[1,1,1,1]12944; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3]12945; AVX2-FCP-NEXT:    vbroadcastsd %xmm0, %ymm012946; AVX2-FCP-NEXT:    vmovaps 160(%rax), %xmm112947; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12948; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm112949; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]12950; AVX2-FCP-NEXT:    vmovaps 160(%rdi), %xmm212951; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12952; AVX2-FCP-NEXT:    vmovaps 160(%rsi), %xmm112953; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12954; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,2,2]12955; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm2[2],xmm1[3]12956; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]12957; AVX2-FCP-NEXT:    vmovaps 160(%rcx), %xmm312958; AVX2-FCP-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12959; AVX2-FCP-NEXT:    vmovaps 160(%rdx), %xmm212960; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12961; AVX2-FCP-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm2[1],xmm3[1],zero12962; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]12963; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]12964; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12965; AVX2-FCP-NEXT:    vmovaps 192(%r9), %xmm012966; AVX2-FCP-NEXT:    vmovaps %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12967; AVX2-FCP-NEXT:    vmovaps 192(%r8), %xmm112968; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12969; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[1,1,1,1]12970; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3]12971; AVX2-FCP-NEXT:    vbroadcastsd %xmm0, %ymm012972; AVX2-FCP-NEXT:    vmovaps 192(%rax), %xmm112973; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12974; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm112975; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]12976; AVX2-FCP-NEXT:    vmovaps 192(%rdi), %xmm212977; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12978; AVX2-FCP-NEXT:    vmovaps 192(%rsi), %xmm112979; AVX2-FCP-NEXT:    vmovaps %xmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12980; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm1[1,1,2,2]12981; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm1[0,1],xmm2[2],xmm1[3]12982; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,1,2,1]12983; AVX2-FCP-NEXT:    vmovaps 192(%rcx), %xmm312984; AVX2-FCP-NEXT:    vmovaps %xmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12985; AVX2-FCP-NEXT:    vmovaps 192(%rdx), %xmm212986; AVX2-FCP-NEXT:    vmovaps %xmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 16-byte Spill12987; AVX2-FCP-NEXT:    vinsertps {{.*#+}} xmm2 = zero,xmm2[1],xmm3[1],zero12988; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1,2],ymm1[3,4,5,6,7]12989; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5],ymm1[6,7]12990; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12991; AVX2-FCP-NEXT:    vmovaps (%rdi), %ymm012992; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12993; AVX2-FCP-NEXT:    vmovaps (%rsi), %ymm112994; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12995; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm1[2],ymm0[3],ymm1[3],ymm0[6],ymm1[6],ymm0[7],ymm1[7]12996; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]12997; AVX2-FCP-NEXT:    vmovaps (%rdx), %ymm212998; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill12999; AVX2-FCP-NEXT:    vmovaps (%rcx), %ymm113000; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13001; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm2[2],ymm1[2],ymm2[3],ymm1[3],ymm2[6],ymm1[6],ymm2[7],ymm1[7]13002; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]13003; AVX2-FCP-NEXT:    vmovaps (%r8), %ymm1513004; AVX2-FCP-NEXT:    vmovaps (%r9), %ymm1313005; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm13[1,1,2,2,5,5,6,6]13006; AVX2-FCP-NEXT:    vmovups %ymm13, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13007; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm15[2],ymm1[3,4,5],ymm15[6],ymm1[7]13008; AVX2-FCP-NEXT:    vmovups %ymm15, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13009; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]13010; AVX2-FCP-NEXT:    vmovaps 16(%rax), %xmm213011; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]13012; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]13013; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13014; AVX2-FCP-NEXT:    vmovaps 32(%rdi), %ymm013015; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13016; AVX2-FCP-NEXT:    vmovaps 32(%rsi), %ymm113017; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13018; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm1[2],ymm0[3],ymm1[3],ymm0[6],ymm1[6],ymm0[7],ymm1[7]13019; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]13020; AVX2-FCP-NEXT:    vmovaps 32(%rdx), %ymm113021; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13022; AVX2-FCP-NEXT:    vmovaps 32(%rcx), %ymm213023; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13024; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]13025; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]13026; AVX2-FCP-NEXT:    vmovaps 32(%r8), %ymm213027; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13028; AVX2-FCP-NEXT:    vmovaps 32(%r9), %ymm113029; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13030; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]13031; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]13032; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]13033; AVX2-FCP-NEXT:    vmovaps 48(%rax), %xmm213034; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]13035; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]13036; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13037; AVX2-FCP-NEXT:    vmovaps 64(%rdi), %ymm113038; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13039; AVX2-FCP-NEXT:    vmovaps 64(%rsi), %ymm013040; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13041; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm1[2],ymm0[2],ymm1[3],ymm0[3],ymm1[6],ymm0[6],ymm1[7],ymm0[7]13042; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]13043; AVX2-FCP-NEXT:    vmovaps 64(%rdx), %ymm113044; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13045; AVX2-FCP-NEXT:    vmovaps 64(%rcx), %ymm213046; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13047; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]13048; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]13049; AVX2-FCP-NEXT:    vmovaps 64(%r8), %ymm213050; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13051; AVX2-FCP-NEXT:    vmovaps 64(%r9), %ymm113052; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13053; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]13054; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]13055; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]13056; AVX2-FCP-NEXT:    vmovaps 80(%rax), %xmm213057; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]13058; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]13059; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13060; AVX2-FCP-NEXT:    vmovaps 96(%rdi), %ymm013061; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13062; AVX2-FCP-NEXT:    vmovaps 96(%rsi), %ymm113063; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13064; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm1[2],ymm0[3],ymm1[3],ymm0[6],ymm1[6],ymm0[7],ymm1[7]13065; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]13066; AVX2-FCP-NEXT:    vmovaps 96(%rdx), %ymm113067; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13068; AVX2-FCP-NEXT:    vmovaps 96(%rcx), %ymm213069; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13070; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]13071; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]13072; AVX2-FCP-NEXT:    vmovaps 96(%r8), %ymm213073; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13074; AVX2-FCP-NEXT:    vmovaps 96(%r9), %ymm113075; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13076; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]13077; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]13078; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]13079; AVX2-FCP-NEXT:    vmovaps 112(%rax), %xmm213080; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]13081; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]13082; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13083; AVX2-FCP-NEXT:    vmovaps 128(%rdi), %ymm013084; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13085; AVX2-FCP-NEXT:    vmovaps 128(%rsi), %ymm113086; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13087; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm1[2],ymm0[3],ymm1[3],ymm0[6],ymm1[6],ymm0[7],ymm1[7]13088; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]13089; AVX2-FCP-NEXT:    vmovaps 128(%rdx), %ymm113090; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13091; AVX2-FCP-NEXT:    vmovaps 128(%rcx), %ymm213092; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13093; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]13094; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]13095; AVX2-FCP-NEXT:    vmovaps 128(%r8), %ymm213096; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13097; AVX2-FCP-NEXT:    vmovaps 128(%r9), %ymm113098; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13099; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]13100; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]13101; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]13102; AVX2-FCP-NEXT:    vmovaps 144(%rax), %xmm213103; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]13104; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]13105; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13106; AVX2-FCP-NEXT:    vmovaps 160(%rdi), %ymm013107; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13108; AVX2-FCP-NEXT:    vmovaps 160(%rsi), %ymm113109; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13110; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm1[2],ymm0[3],ymm1[3],ymm0[6],ymm1[6],ymm0[7],ymm1[7]13111; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]13112; AVX2-FCP-NEXT:    vmovaps 160(%rdx), %ymm113113; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13114; AVX2-FCP-NEXT:    vmovaps 160(%rcx), %ymm213115; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13116; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]13117; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]13118; AVX2-FCP-NEXT:    vmovaps 160(%r8), %ymm213119; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13120; AVX2-FCP-NEXT:    vmovaps 160(%r9), %ymm113121; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13122; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]13123; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]13124; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]13125; AVX2-FCP-NEXT:    vmovaps 176(%rax), %xmm213126; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]13127; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]13128; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13129; AVX2-FCP-NEXT:    vmovaps 192(%rdi), %ymm1013130; AVX2-FCP-NEXT:    vmovaps 192(%rsi), %ymm1213131; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm10[2],ymm12[2],ymm10[3],ymm12[3],ymm10[6],ymm12[6],ymm10[7],ymm12[7]13132; AVX2-FCP-NEXT:    vmovups %ymm12, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13133; AVX2-FCP-NEXT:    vmovups %ymm10, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13134; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]13135; AVX2-FCP-NEXT:    vmovaps 192(%rdx), %ymm713136; AVX2-FCP-NEXT:    vmovaps 192(%rcx), %ymm813137; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm7[2],ymm8[2],ymm7[3],ymm8[3],ymm7[6],ymm8[6],ymm7[7],ymm8[7]13138; AVX2-FCP-NEXT:    vmovups %ymm7, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13139; AVX2-FCP-NEXT:    vmovups %ymm8, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13140; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6,7]13141; AVX2-FCP-NEXT:    vmovaps 192(%r8), %ymm213142; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13143; AVX2-FCP-NEXT:    vmovaps 192(%r9), %ymm113144; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13145; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm1[1,1,2,2,5,5,6,6]13146; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2],ymm1[3,4,5],ymm2[6],ymm1[7]13147; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]13148; AVX2-FCP-NEXT:    vmovaps 208(%rax), %xmm213149; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm2[1],ymm1[2,3,4,5,6,7]13150; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3,4,5],ymm1[6,7]13151; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13152; AVX2-FCP-NEXT:    vmovaps 224(%rdi), %xmm013153; AVX2-FCP-NEXT:    vmovaps 224(%rsi), %xmm113154; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm2 = xmm1[1,1,2,2]13155; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm2 = xmm2[0,1],xmm0[2],xmm2[3]13156; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm2 = ymm2[0,1,2,1]13157; AVX2-FCP-NEXT:    vmovaps 224(%rcx), %xmm313158; AVX2-FCP-NEXT:    vmovaps 224(%rdx), %xmm613159; AVX2-FCP-NEXT:    vinsertps {{.*#+}} xmm5 = zero,xmm6[1],xmm3[1],zero13160; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm5[1,2],ymm2[3,4,5,6,7]13161; AVX2-FCP-NEXT:    vbroadcastss 228(%r8), %ymm413162; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2],ymm4[3],ymm2[4,5,6,7]13163; AVX2-FCP-NEXT:    vmovaps 224(%r9), %xmm413164; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm11 = xmm4[1,1,1,1]13165; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm11, %ymm0, %ymm1113166; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm11[4,5],ymm2[6,7]13167; AVX2-FCP-NEXT:    vinsertf128 $1, 224(%rax), %ymm5, %ymm513168; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm5[1],ymm2[2,3,4],ymm5[5],ymm2[6,7]13169; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13170; AVX2-FCP-NEXT:    vbroadcastss %xmm3, %xmm213171; AVX2-FCP-NEXT:    vbroadcastss %xmm6, %xmm513172; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm2 = xmm5[0],xmm2[0],xmm5[1],xmm2[1]13173; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm11 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]13174; AVX2-FCP-NEXT:    vbroadcastf128 {{.*#+}} ymm9 = [0,1,2,2,0,1,2,2]13175; AVX2-FCP-NEXT:    # ymm9 = mem[0,1,0,1]13176; AVX2-FCP-NEXT:    vpermps %ymm11, %ymm9, %ymm1113177; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm11[0,1],ymm2[2,3],ymm11[4,5,6,7]13178; AVX2-FCP-NEXT:    vbroadcastsd 224(%r8), %ymm1113179; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm11[4,5],ymm2[6,7]13180; AVX2-FCP-NEXT:    vbroadcastss %xmm4, %ymm1113181; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4],ymm11[5],ymm2[6,7]13182; AVX2-FCP-NEXT:    vbroadcastss 224(%rax), %ymm1113183; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3,4,5],ymm11[6],ymm2[7]13184; AVX2-FCP-NEXT:    vmovups %ymm2, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13185; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[3,3],xmm1[3,3]13186; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} xmm1 = xmm6[2],xmm3[2],xmm6[3],xmm3[3]13187; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm013188; AVX2-FCP-NEXT:    vpermps %ymm1, %ymm9, %ymm113189; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]13190; AVX2-FCP-NEXT:    vmovaps 224(%r8), %ymm613191; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm6[2,3],ymm0[4,5,6,7]13192; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm4[2,2,2,2]13193; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm1[3],ymm0[4,5,6,7]13194; AVX2-FCP-NEXT:    vbroadcastss 232(%rax), %ymm113195; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4],ymm0[5,6,7]13196; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13197; AVX2-FCP-NEXT:    vmovaps 224(%rdi), %ymm213198; AVX2-FCP-NEXT:    vmovaps 224(%rsi), %ymm113199; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm0 = ymm1[1,1,1,1,5,5,5,5]13200; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm2[1],ymm0[2,3,4],ymm2[5],ymm0[6,7]13201; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm11 = ymm0[2,2,2,2]13202; AVX2-FCP-NEXT:    vmovaps 224(%rdx), %ymm313203; AVX2-FCP-NEXT:    vmovaps 224(%rcx), %ymm013204; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm14 = ymm3[1,1],ymm0[1,1],ymm3[5,5],ymm0[5,5]13205; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm11 = ymm11[0,1,2,3,4],ymm14[5,6],ymm11[7]13206; AVX2-FCP-NEXT:    vbroadcastsd 240(%r8), %ymm1413207; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm11 = ymm14[0],ymm11[1,2,3,4,5,6],ymm14[7]13208; AVX2-FCP-NEXT:    vbroadcastss 240(%r9), %xmm1413209; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm11 = ymm11[0],ymm14[1],ymm11[2,3,4,5,6,7]13210; AVX2-FCP-NEXT:    vbroadcastss 240(%rax), %ymm1413211; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm11 = ymm11[0,1],ymm14[2],ymm11[3,4,5,6,7]13212; AVX2-FCP-NEXT:    vmovups %ymm11, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13213; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm11 = ymm8[2],ymm7[2],ymm8[3],ymm7[3],ymm8[6],ymm7[6],ymm8[7],ymm7[7]13214; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm11 = ymm11[3,3,3,3]13215; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm14 = ymm12[2],ymm10[2],ymm12[3],ymm10[3],ymm12[6],ymm10[6],ymm12[7],ymm10[7]13216; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm14 = ymm14[3,3,3,3]13217; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm11 = ymm14[0,1,2],ymm11[3,4,5,6,7]13218; AVX2-FCP-NEXT:    vbroadcastss 220(%r8), %ymm1413219; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm11 = ymm11[0,1,2,3,4],ymm14[5],ymm11[6,7]13220; AVX2-FCP-NEXT:    vbroadcastss 220(%r9), %ymm1413221; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm11 = ymm11[0,1,2,3,4,5],ymm14[6,7]13222; AVX2-FCP-NEXT:    vbroadcastsd 216(%rax), %ymm1413223; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm5 = ymm14[0],ymm11[1,2,3,4,5,6],ymm14[7]13224; AVX2-FCP-NEXT:    vmovups %ymm5, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13225; AVX2-FCP-NEXT:    vbroadcastss 240(%rdx), %ymm1113226; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm14 = ymm0[3,1,2,0,7,5,6,4]13227; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm11 = ymm14[0,1,2,3,4,5],ymm11[6],ymm14[7]13228; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} ymm14 = ymm2[0],ymm1[0],ymm2[1],ymm1[1],ymm2[4],ymm1[4],ymm2[5],ymm1[5]13229; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm11 = ymm11[0,1,2,3],ymm14[4,5],ymm11[6,7]13230; AVX2-FCP-NEXT:    vbroadcastss 236(%r8), %ymm1413231; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm11 = ymm11[0],ymm14[1],ymm11[2,3,4,5,6,7]13232; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm4 = xmm4[2,2,3,3]13233; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm11[0,1],ymm4[2,3],ymm11[4,5,6,7]13234; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm11 = ymm2[2],ymm1[2],ymm2[3],ymm1[3],ymm2[6],ymm1[6],ymm2[7],ymm1[7]13235; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm11 = ymm11[2,2,2,2]13236; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm14 = ymm3[2],ymm0[2],ymm3[3],ymm0[3],ymm3[6],ymm0[6],ymm3[7],ymm0[7]13237; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm11 = ymm11[0,1,2,3],ymm14[4,5,6,7]13238; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm6 = ymm11[0,1,2,3,4,5],ymm6[6,7]13239; AVX2-FCP-NEXT:    vbroadcastsd {{.*#+}} ymm11 = [5,6,5,6,5,6,5,6]13240; AVX2-FCP-NEXT:    vpermps 224(%r9), %ymm11, %ymm1113241; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm6 = ymm11[0],ymm6[1,2,3,4,5,6],ymm11[7]13242; AVX2-FCP-NEXT:    vmovaps 224(%rax), %ymm1113243; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2],ymm11[3],ymm4[4,5,6,7]13244; AVX2-FCP-NEXT:    vmovups %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13245; AVX2-FCP-NEXT:    vperm2f128 {{.*#+}} ymm4 = ymm11[2,3],ymm14[2,3]13246; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm6[0],ymm4[1],ymm6[2,3,4],ymm4[5],ymm6[6,7]13247; AVX2-FCP-NEXT:    vmovups %ymm4, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13248; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm3[2],ymm0[3],ymm3[3],ymm0[6],ymm3[6],ymm0[7],ymm3[7]13249; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm1 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]13250; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]13251; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[3,3,3,3]13252; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6,7]13253; AVX2-FCP-NEXT:    vbroadcastss 252(%r8), %ymm113254; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5],ymm0[6,7]13255; AVX2-FCP-NEXT:    vbroadcastss 252(%r9), %ymm113256; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4,5],ymm1[6,7]13257; AVX2-FCP-NEXT:    vbroadcastsd 248(%rax), %ymm113258; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0],ymm0[1,2,3,4,5,6],ymm1[7]13259; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13260; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload13261; AVX2-FCP-NEXT:    vbroadcastss %xmm5, %xmm013262; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload13263; AVX2-FCP-NEXT:    vbroadcastss %xmm4, %xmm113264; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm0 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]13265; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload13266; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload13267; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm7[0],xmm6[0],xmm7[1],xmm6[1]13268; AVX2-FCP-NEXT:    vpermps %ymm1, %ymm9, %ymm113269; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3],ymm1[4,5,6,7]13270; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload13271; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload13272; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm3[0],xmm8[0],xmm3[1],xmm8[1]13273; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm113274; AVX2-FCP-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 16-byte Folded Reload13275; AVX2-FCP-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[2]13276; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6],ymm0[7]13277; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13278; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm0 = xmm7[3,3],xmm6[3,3]13279; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} xmm1 = xmm4[2],xmm5[2],xmm4[3],xmm5[3]13280; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm013281; AVX2-FCP-NEXT:    vpermps %ymm1, %ymm9, %ymm113282; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]13283; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm8[2,2,2,2]13284; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm3[0,1,2],xmm1[3]13285; AVX2-FCP-NEXT:    vbroadcastsd 8(%rax), %ymm213286; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]13287; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3,4],ymm0[5,6,7]13288; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13289; AVX2-FCP-NEXT:    vpermilps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Folded Reload13290; AVX2-FCP-NEXT:    # ymm0 = mem[1,1,1,1,5,5,5,5]13291; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload13292; AVX2-FCP-NEXT:    # ymm0 = ymm0[0],mem[1],ymm0[2,3,4],mem[5],ymm0[6,7]13293; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]13294; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13295; AVX2-FCP-NEXT:    vshufps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload13296; AVX2-FCP-NEXT:    # ymm1 = ymm1[1,1],mem[1,1],ymm1[5,5],mem[5,5]13297; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]13298; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm13[0,0,0,0,4,4,4,4]13299; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm2 = ymm15[0,1,0,1,4,5,4,5]13300; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1],ymm2[2,3,4],ymm1[5],ymm2[6,7]13301; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]13302; AVX2-FCP-NEXT:    vbroadcastsd 16(%rax), %ymm213303; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]13304; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]13305; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13306; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload13307; AVX2-FCP-NEXT:    vbroadcastss %xmm3, %xmm013308; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload13309; AVX2-FCP-NEXT:    vbroadcastss %xmm7, %xmm113310; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm0 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]13311; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload13312; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload13313; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm5[0],xmm6[0],xmm5[1],xmm6[1]13314; AVX2-FCP-NEXT:    vpermps %ymm1, %ymm9, %ymm113315; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3],ymm1[4,5,6,7]13316; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload13317; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload13318; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm4[0],xmm8[0],xmm4[1],xmm8[1]13319; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm113320; AVX2-FCP-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 16-byte Folded Reload13321; AVX2-FCP-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[2]13322; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6],ymm0[7]13323; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13324; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm0 = xmm5[3,3],xmm6[3,3]13325; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} xmm1 = xmm7[2],xmm3[2],xmm7[3],xmm3[3]13326; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm013327; AVX2-FCP-NEXT:    vpermps %ymm1, %ymm9, %ymm113328; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]13329; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm8[2,2,2,2]13330; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm4[0,1,2],xmm1[3]13331; AVX2-FCP-NEXT:    vbroadcastsd 40(%rax), %ymm213332; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]13333; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3,4],ymm0[5,6,7]13334; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13335; AVX2-FCP-NEXT:    vpermilps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Folded Reload13336; AVX2-FCP-NEXT:    # ymm0 = mem[1,1,1,1,5,5,5,5]13337; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload13338; AVX2-FCP-NEXT:    # ymm0 = ymm0[0],mem[1],ymm0[2,3,4],mem[5],ymm0[6,7]13339; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]13340; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13341; AVX2-FCP-NEXT:    vshufps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload13342; AVX2-FCP-NEXT:    # ymm1 = ymm1[1,1],mem[1,1],ymm1[5,5],mem[5,5]13343; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]13344; AVX2-FCP-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Folded Reload13345; AVX2-FCP-NEXT:    # ymm1 = mem[0,0,0,0,4,4,4,4]13346; AVX2-FCP-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload13347; AVX2-FCP-NEXT:    # ymm2 = mem[0,1,0,1,4,5,4,5]13348; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1],ymm2[2,3,4],ymm1[5],ymm2[6,7]13349; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]13350; AVX2-FCP-NEXT:    vbroadcastsd 48(%rax), %ymm213351; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]13352; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]13353; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13354; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload13355; AVX2-FCP-NEXT:    vbroadcastss %xmm7, %xmm013356; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload13357; AVX2-FCP-NEXT:    vbroadcastss %xmm6, %xmm113358; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm0 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]13359; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload13360; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload13361; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm5[0],xmm3[0],xmm5[1],xmm3[1]13362; AVX2-FCP-NEXT:    vpermps %ymm1, %ymm9, %ymm113363; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3],ymm1[4,5,6,7]13364; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload13365; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload13366; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm8[0],xmm4[0],xmm8[1],xmm4[1]13367; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm113368; AVX2-FCP-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 16-byte Folded Reload13369; AVX2-FCP-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[2]13370; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6],ymm0[7]13371; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13372; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm0 = xmm5[3,3],xmm3[3,3]13373; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} xmm1 = xmm6[2],xmm7[2],xmm6[3],xmm7[3]13374; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm013375; AVX2-FCP-NEXT:    vpermps %ymm1, %ymm9, %ymm113376; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]13377; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm4[2,2,2,2]13378; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm8[0,1,2],xmm1[3]13379; AVX2-FCP-NEXT:    vbroadcastsd 72(%rax), %ymm213380; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]13381; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3,4],ymm0[5,6,7]13382; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13383; AVX2-FCP-NEXT:    vpermilps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Folded Reload13384; AVX2-FCP-NEXT:    # ymm0 = mem[1,1,1,1,5,5,5,5]13385; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload13386; AVX2-FCP-NEXT:    # ymm0 = ymm0[0],mem[1],ymm0[2,3,4],mem[5],ymm0[6,7]13387; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]13388; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13389; AVX2-FCP-NEXT:    vshufps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload13390; AVX2-FCP-NEXT:    # ymm1 = ymm1[1,1],mem[1,1],ymm1[5,5],mem[5,5]13391; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]13392; AVX2-FCP-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Folded Reload13393; AVX2-FCP-NEXT:    # ymm1 = mem[0,0,0,0,4,4,4,4]13394; AVX2-FCP-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload13395; AVX2-FCP-NEXT:    # ymm2 = mem[0,1,0,1,4,5,4,5]13396; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1],ymm2[2,3,4],ymm1[5],ymm2[6,7]13397; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]13398; AVX2-FCP-NEXT:    vbroadcastsd 80(%rax), %ymm213399; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]13400; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]13401; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13402; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload13403; AVX2-FCP-NEXT:    vbroadcastss %xmm8, %xmm013404; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload13405; AVX2-FCP-NEXT:    vbroadcastss %xmm7, %xmm113406; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm0 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]13407; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload13408; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload13409; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm6[0],xmm5[0],xmm6[1],xmm5[1]13410; AVX2-FCP-NEXT:    vpermps %ymm1, %ymm9, %ymm113411; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3],ymm1[4,5,6,7]13412; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload13413; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload13414; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm3[0],xmm4[0],xmm3[1],xmm4[1]13415; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm113416; AVX2-FCP-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 16-byte Folded Reload13417; AVX2-FCP-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[2]13418; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6],ymm0[7]13419; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13420; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm0 = xmm6[3,3],xmm5[3,3]13421; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} xmm1 = xmm7[2],xmm8[2],xmm7[3],xmm8[3]13422; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm013423; AVX2-FCP-NEXT:    vpermps %ymm1, %ymm9, %ymm113424; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]13425; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm4[2,2,2,2]13426; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm3[0,1,2],xmm1[3]13427; AVX2-FCP-NEXT:    vbroadcastsd 104(%rax), %ymm213428; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]13429; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3,4],ymm0[5,6,7]13430; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13431; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm13 # 32-byte Reload13432; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm0 = ymm13[1,1,1,1,5,5,5,5]13433; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm10 # 32-byte Reload13434; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm10[1],ymm0[2,3,4],ymm10[5],ymm0[6,7]13435; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]13436; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13437; AVX2-FCP-NEXT:    vshufps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload13438; AVX2-FCP-NEXT:    # ymm1 = ymm1[1,1],mem[1,1],ymm1[5,5],mem[5,5]13439; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]13440; AVX2-FCP-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Folded Reload13441; AVX2-FCP-NEXT:    # ymm1 = mem[0,0,0,0,4,4,4,4]13442; AVX2-FCP-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload13443; AVX2-FCP-NEXT:    # ymm2 = mem[0,1,0,1,4,5,4,5]13444; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1],ymm2[2,3,4],ymm1[5],ymm2[6,7]13445; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]13446; AVX2-FCP-NEXT:    vbroadcastsd 112(%rax), %ymm213447; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]13448; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]13449; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13450; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload13451; AVX2-FCP-NEXT:    vbroadcastss %xmm8, %xmm013452; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload13453; AVX2-FCP-NEXT:    vbroadcastss %xmm7, %xmm113454; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm0 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]13455; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload13456; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload13457; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm6[0],xmm5[0],xmm6[1],xmm5[1]13458; AVX2-FCP-NEXT:    vpermps %ymm1, %ymm9, %ymm113459; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3],ymm1[4,5,6,7]13460; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload13461; AVX2-FCP-NEXT:    vmovaps (%rsp), %xmm3 # 16-byte Reload13462; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm3[0],xmm4[0],xmm3[1],xmm4[1]13463; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm113464; AVX2-FCP-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 16-byte Folded Reload13465; AVX2-FCP-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[2]13466; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6],ymm0[7]13467; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13468; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm0 = xmm6[3,3],xmm5[3,3]13469; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} xmm1 = xmm7[2],xmm8[2],xmm7[3],xmm8[3]13470; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm013471; AVX2-FCP-NEXT:    vpermps %ymm1, %ymm9, %ymm113472; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]13473; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm4[2,2,2,2]13474; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm3[0,1,2],xmm1[3]13475; AVX2-FCP-NEXT:    vbroadcastsd 136(%rax), %ymm213476; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]13477; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3,4],ymm0[5,6,7]13478; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13479; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm15 # 32-byte Reload13480; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm0 = ymm15[1,1,1,1,5,5,5,5]13481; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm14 # 32-byte Reload13482; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm14[1],ymm0[2,3,4],ymm14[5],ymm0[6,7]13483; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]13484; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13485; AVX2-FCP-NEXT:    vshufps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload13486; AVX2-FCP-NEXT:    # ymm1 = ymm1[1,1],mem[1,1],ymm1[5,5],mem[5,5]13487; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]13488; AVX2-FCP-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Folded Reload13489; AVX2-FCP-NEXT:    # ymm1 = mem[0,0,0,0,4,4,4,4]13490; AVX2-FCP-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload13491; AVX2-FCP-NEXT:    # ymm2 = mem[0,1,0,1,4,5,4,5]13492; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1],ymm2[2,3,4],ymm1[5],ymm2[6,7]13493; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]13494; AVX2-FCP-NEXT:    vbroadcastsd 144(%rax), %ymm213495; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]13496; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]13497; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13498; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload13499; AVX2-FCP-NEXT:    vbroadcastss %xmm8, %xmm013500; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload13501; AVX2-FCP-NEXT:    vbroadcastss %xmm7, %xmm113502; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm0 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]13503; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload13504; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload13505; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm6[0],xmm5[0],xmm6[1],xmm5[1]13506; AVX2-FCP-NEXT:    vpermps %ymm1, %ymm9, %ymm113507; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1],ymm0[2,3],ymm1[4,5,6,7]13508; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload13509; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload13510; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm3[0],xmm4[0],xmm3[1],xmm4[1]13511; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm113512; AVX2-FCP-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 16-byte Folded Reload13513; AVX2-FCP-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[2]13514; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5,6],ymm0[7]13515; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13516; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm0 = xmm6[3,3],xmm5[3,3]13517; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} xmm1 = xmm7[2],xmm8[2],xmm7[3],xmm8[3]13518; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm013519; AVX2-FCP-NEXT:    vpermps %ymm1, %ymm9, %ymm113520; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]13521; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm4[2,2,2,2]13522; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm3[0,1,2],xmm1[3]13523; AVX2-FCP-NEXT:    vbroadcastsd 168(%rax), %ymm213524; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]13525; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3,4],ymm0[5,6,7]13526; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13527; AVX2-FCP-NEXT:    vpermilps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Folded Reload13528; AVX2-FCP-NEXT:    # ymm0 = mem[1,1,1,1,5,5,5,5]13529; AVX2-FCP-NEXT:    vblendps $34, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm0 # 32-byte Folded Reload13530; AVX2-FCP-NEXT:    # ymm0 = ymm0[0],mem[1],ymm0[2,3,4],mem[5],ymm0[6,7]13531; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[2,2,2,2]13532; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13533; AVX2-FCP-NEXT:    vshufps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm1 # 32-byte Folded Reload13534; AVX2-FCP-NEXT:    # ymm1 = ymm1[1,1],mem[1,1],ymm1[5,5],mem[5,5]13535; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3,4],ymm1[5,6],ymm0[7]13536; AVX2-FCP-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Folded Reload13537; AVX2-FCP-NEXT:    # ymm1 = mem[0,0,0,0,4,4,4,4]13538; AVX2-FCP-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload13539; AVX2-FCP-NEXT:    # ymm2 = mem[0,1,0,1,4,5,4,5]13540; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1],ymm2[2,3,4],ymm1[5],ymm2[6,7]13541; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]13542; AVX2-FCP-NEXT:    vbroadcastsd 176(%rax), %ymm213543; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]13544; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]13545; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13546; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm7 # 16-byte Reload13547; AVX2-FCP-NEXT:    vbroadcastss %xmm7, %xmm013548; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm6 # 16-byte Reload13549; AVX2-FCP-NEXT:    vbroadcastss %xmm6, %xmm113550; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm2 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]13551; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm5 # 16-byte Reload13552; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm0 # 16-byte Reload13553; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm0[0],xmm5[0],xmm0[1],xmm5[1]13554; AVX2-FCP-NEXT:    vpermps %ymm1, %ymm9, %ymm113555; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm8 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]13556; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload13557; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm4 # 16-byte Reload13558; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} xmm1 = xmm4[0],xmm3[0],xmm4[1],xmm3[1]13559; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm113560; AVX2-FCP-NEXT:    vbroadcastsd {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 16-byte Folded Reload13561; AVX2-FCP-NEXT:    vunpcklpd {{.*#+}} ymm1 = ymm1[0],ymm2[0],ymm1[2],ymm2[2]13562; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm8[0,1,2,3],ymm1[4,5,6],ymm8[7]13563; AVX2-FCP-NEXT:    vmovups %ymm1, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13564; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm0 = xmm0[3,3],xmm5[3,3]13565; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} xmm1 = xmm6[2],xmm7[2],xmm6[3],xmm7[3]13566; AVX2-FCP-NEXT:    vpermps %ymm1, %ymm9, %ymm113567; AVX2-FCP-NEXT:    vinsertf128 $1, %xmm0, %ymm0, %ymm013568; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]13569; AVX2-FCP-NEXT:    vshufps {{.*#+}} xmm1 = xmm3[2,2,2,2]13570; AVX2-FCP-NEXT:    vblendps {{.*#+}} xmm1 = xmm4[0,1,2],xmm1[3]13571; AVX2-FCP-NEXT:    vbroadcastsd 200(%rax), %ymm213572; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1,2,3],ymm2[4,5,6,7]13573; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1],ymm1[2,3,4],ymm0[5,6,7]13574; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13575; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm12 # 32-byte Reload13576; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13577; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm0 = ymm0[1,1],ymm12[1,1],ymm0[5,5],ymm12[5,5]13578; AVX2-FCP-NEXT:    vpermilps $85, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Folded Reload13579; AVX2-FCP-NEXT:    # ymm1 = mem[1,1,1,1,5,5,5,5]13580; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm11 # 32-byte Reload13581; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0],ymm11[1],ymm1[2,3,4],ymm11[5],ymm1[6,7]13582; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,2,2,2]13583; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4],ymm0[5,6],ymm1[7]13584; AVX2-FCP-NEXT:    vpermilps $0, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Folded Reload13585; AVX2-FCP-NEXT:    # ymm1 = mem[0,0,0,0,4,4,4,4]13586; AVX2-FCP-NEXT:    vpermilps $68, {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Folded Reload13587; AVX2-FCP-NEXT:    # ymm2 = mem[0,1,0,1,4,5,4,5]13588; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm2[0],ymm1[1],ymm2[2,3,4],ymm1[5],ymm2[6,7]13589; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[2,1,2,3]13590; AVX2-FCP-NEXT:    vbroadcastsd 208(%rax), %ymm213591; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm1 = ymm1[0,1],ymm2[2,3],ymm1[4,5,6,7]13592; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2],ymm0[3,4,5,6],ymm1[7]13593; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13594; AVX2-FCP-NEXT:    vbroadcastss 16(%rdx), %ymm013595; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload13596; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm1 = ymm4[3,1,2,0,7,5,6,4]13597; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm1[0,1,2,3,4,5],ymm0[6],ymm1[7]13598; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload13599; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm3 # 32-byte Reload13600; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} ymm1 = ymm3[0],ymm2[0],ymm3[1],ymm2[1],ymm3[4],ymm2[4],ymm3[5],ymm2[5]13601; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm1[4,5],ymm0[6,7]13602; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload13603; AVX2-FCP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload13604; AVX2-FCP-NEXT:    # xmm1 = xmm1[3,3],mem[3,3]13605; AVX2-FCP-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm1 # 16-byte Folded Reload13606; AVX2-FCP-NEXT:    # xmm1 = xmm1[0,1,2],mem[3]13607; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0],ymm1[1,2,3],ymm0[4,5,6,7]13608; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13609; AVX2-FCP-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm0 # 32-byte Folded Reload13610; AVX2-FCP-NEXT:    # ymm0 = ymm4[2],mem[2],ymm4[3],mem[3],ymm4[6],mem[6],ymm4[7],mem[7]13611; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm5 = ymm2[2],ymm3[2],ymm2[3],ymm3[3],ymm2[6],ymm3[6],ymm2[7],ymm3[7]13612; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]13613; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[3,3,3,3]13614; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0,1,2],ymm0[3,4,5,6,7]13615; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13616; AVX2-FCP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm5 # 32-byte Folded Reload13617; AVX2-FCP-NEXT:    # ymm5 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]13618; AVX2-FCP-NEXT:    vpermilps {{.*#+}} ymm6 = mem[2,3,2,3,6,7,6,7]13619; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm5 = ymm6[0],ymm5[1,2],ymm6[3,4],ymm5[5,6],ymm6[7]13620; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm5 = ymm5[2,1,2,3]13621; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm5[0],ymm0[1,2,3,4],ymm5[5,6,7]13622; AVX2-FCP-NEXT:    vmovups %ymm0, {{[-0-9]+}}(%r{{[sb]}}p) # 32-byte Spill13623; AVX2-FCP-NEXT:    vbroadcastss 48(%rdx), %ymm013624; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload13625; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm6 = ymm4[3,1,2,0,7,5,6,4]13626; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1,2,3,4,5],ymm0[6],ymm6[7]13627; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13628; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload13629; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} ymm6 = ymm2[0],ymm1[0],ymm2[1],ymm1[1],ymm2[4],ymm1[4],ymm2[5],ymm1[5]13630; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm6[4,5],ymm0[6,7]13631; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload13632; AVX2-FCP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm6 # 16-byte Folded Reload13633; AVX2-FCP-NEXT:    # xmm6 = xmm3[3,3],mem[3,3]13634; AVX2-FCP-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm6, %xmm6 # 16-byte Folded Reload13635; AVX2-FCP-NEXT:    # xmm6 = xmm6[0,1,2],mem[3]13636; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm5 = ymm0[0],ymm6[1,2,3],ymm0[4,5,6,7]13637; AVX2-FCP-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm0 # 32-byte Folded Reload13638; AVX2-FCP-NEXT:    # ymm0 = ymm4[2],mem[2],ymm4[3],mem[3],ymm4[6],mem[6],ymm4[7],mem[7]13639; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm6 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]13640; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]13641; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm6 = ymm6[3,3,3,3]13642; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1,2],ymm0[3,4,5,6,7]13643; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13644; AVX2-FCP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm6 # 32-byte Folded Reload13645; AVX2-FCP-NEXT:    # ymm6 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]13646; AVX2-FCP-NEXT:    vpermilps {{.*#+}} ymm7 = mem[2,3,2,3,6,7,6,7]13647; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm6 = ymm7[0],ymm6[1,2],ymm7[3,4],ymm6[5,6],ymm7[7]13648; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm6 = ymm6[2,1,2,3]13649; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm7 = ymm6[0],ymm0[1,2,3,4],ymm6[5,6,7]13650; AVX2-FCP-NEXT:    vbroadcastss 80(%rdx), %ymm013651; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload13652; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm6 = ymm4[3,1,2,0,7,5,6,4]13653; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1,2,3,4,5],ymm0[6],ymm6[7]13654; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13655; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm2 # 32-byte Reload13656; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} ymm6 = ymm2[0],ymm1[0],ymm2[1],ymm1[1],ymm2[4],ymm1[4],ymm2[5],ymm1[5]13657; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm6[4,5],ymm0[6,7]13658; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm3 # 16-byte Reload13659; AVX2-FCP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm3, %xmm6 # 16-byte Folded Reload13660; AVX2-FCP-NEXT:    # xmm6 = xmm3[3,3],mem[3,3]13661; AVX2-FCP-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm6, %xmm6 # 16-byte Folded Reload13662; AVX2-FCP-NEXT:    # xmm6 = xmm6[0,1,2],mem[3]13663; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm3 = ymm0[0],ymm6[1,2,3],ymm0[4,5,6,7]13664; AVX2-FCP-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm4, %ymm0 # 32-byte Folded Reload13665; AVX2-FCP-NEXT:    # ymm0 = ymm4[2],mem[2],ymm4[3],mem[3],ymm4[6],mem[6],ymm4[7],mem[7]13666; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm6 = ymm1[2],ymm2[2],ymm1[3],ymm2[3],ymm1[6],ymm2[6],ymm1[7],ymm2[7]13667; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]13668; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm6 = ymm6[3,3,3,3]13669; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm6[0,1,2],ymm0[3,4,5,6,7]13670; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13671; AVX2-FCP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm6 # 32-byte Folded Reload13672; AVX2-FCP-NEXT:    # ymm6 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]13673; AVX2-FCP-NEXT:    vpermilps {{.*#+}} ymm9 = mem[2,3,2,3,6,7,6,7]13674; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm6 = ymm9[0],ymm6[1,2],ymm9[3,4],ymm6[5,6],ymm9[7]13675; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm6 = ymm6[2,1,2,3]13676; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm6 = ymm6[0],ymm0[1,2,3,4],ymm6[5,6,7]13677; AVX2-FCP-NEXT:    vbroadcastss 112(%rdx), %ymm113678; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13679; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm9 = ymm0[3,1,2,0,7,5,6,4]13680; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm9[0,1,2,3,4,5],ymm1[6],ymm9[7]13681; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} ymm9 = ymm10[0],ymm13[0],ymm10[1],ymm13[1],ymm10[4],ymm13[4],ymm10[5],ymm13[5]13682; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0,1,2,3],ymm9[4,5],ymm2[6,7]13683; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload13684; AVX2-FCP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8, %xmm9 # 16-byte Folded Reload13685; AVX2-FCP-NEXT:    # xmm9 = xmm8[3,3],mem[3,3]13686; AVX2-FCP-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm9, %xmm9 # 16-byte Folded Reload13687; AVX2-FCP-NEXT:    # xmm9 = xmm9[0,1,2],mem[3]13688; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm2 = ymm2[0],ymm9[1,2,3],ymm2[4,5,6,7]13689; AVX2-FCP-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm9 # 32-byte Folded Reload13690; AVX2-FCP-NEXT:    # ymm9 = ymm0[2],mem[2],ymm0[3],mem[3],ymm0[6],mem[6],ymm0[7],mem[7]13691; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm10 = ymm13[2],ymm10[2],ymm13[3],ymm10[3],ymm13[6],ymm10[6],ymm13[7],ymm10[7]13692; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm9 = ymm9[3,3,3,3]13693; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm10 = ymm10[3,3,3,3]13694; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm9 = ymm10[0,1,2],ymm9[3,4,5,6,7]13695; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13696; AVX2-FCP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm10 # 32-byte Folded Reload13697; AVX2-FCP-NEXT:    # ymm10 = ymm0[3,3],mem[3,3],ymm0[7,7],mem[7,7]13698; AVX2-FCP-NEXT:    vpermilps {{.*#+}} ymm13 = mem[2,3,2,3,6,7,6,7]13699; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm10 = ymm13[0],ymm10[1,2],ymm13[3,4],ymm10[5,6],ymm13[7]13700; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm10 = ymm10[2,1,2,3]13701; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm9 = ymm10[0],ymm9[1,2,3,4],ymm10[5,6,7]13702; AVX2-FCP-NEXT:    vbroadcastss 144(%rdx), %ymm1013703; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13704; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm13 = ymm1[3,1,2,0,7,5,6,4]13705; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm10 = ymm13[0,1,2,3,4,5],ymm10[6],ymm13[7]13706; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} ymm13 = ymm14[0],ymm15[0],ymm14[1],ymm15[1],ymm14[4],ymm15[4],ymm14[5],ymm15[5]13707; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm10 = ymm10[0,1,2,3],ymm13[4,5],ymm10[6,7]13708; AVX2-FCP-NEXT:    vmovaps (%rsp), %xmm8 # 16-byte Reload13709; AVX2-FCP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8, %xmm13 # 16-byte Folded Reload13710; AVX2-FCP-NEXT:    # xmm13 = xmm8[3,3],mem[3,3]13711; AVX2-FCP-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm13, %xmm13 # 16-byte Folded Reload13712; AVX2-FCP-NEXT:    # xmm13 = xmm13[0,1,2],mem[3]13713; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm10 = ymm10[0],ymm13[1,2,3],ymm10[4,5,6,7]13714; AVX2-FCP-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm13 # 32-byte Folded Reload13715; AVX2-FCP-NEXT:    # ymm13 = ymm1[2],mem[2],ymm1[3],mem[3],ymm1[6],mem[6],ymm1[7],mem[7]13716; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm14 = ymm15[2],ymm14[2],ymm15[3],ymm14[3],ymm15[6],ymm14[6],ymm15[7],ymm14[7]13717; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm13 = ymm13[3,3,3,3]13718; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm14 = ymm14[3,3,3,3]13719; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm13 = ymm14[0,1,2],ymm13[3,4,5,6,7]13720; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13721; AVX2-FCP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm0, %ymm14 # 32-byte Folded Reload13722; AVX2-FCP-NEXT:    # ymm14 = ymm0[3,3],mem[3,3],ymm0[7,7],mem[7,7]13723; AVX2-FCP-NEXT:    vpermilps {{.*#+}} ymm15 = mem[2,3,2,3,6,7,6,7]13724; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm14 = ymm15[0],ymm14[1,2],ymm15[3,4],ymm14[5,6],ymm15[7]13725; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm14 = ymm14[2,1,2,3]13726; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm13 = ymm14[0],ymm13[1,2,3,4],ymm14[5,6,7]13727; AVX2-FCP-NEXT:    vbroadcastss 176(%rdx), %ymm1413728; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13729; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm15 = ymm1[3,1,2,0,7,5,6,4]13730; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm14 = ymm15[0,1,2,3,4,5],ymm14[6],ymm15[7]13731; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13732; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm4 # 32-byte Reload13733; AVX2-FCP-NEXT:    vunpcklps {{.*#+}} ymm15 = ymm4[0],ymm0[0],ymm4[1],ymm0[1],ymm4[4],ymm0[4],ymm4[5],ymm0[5]13734; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm14 = ymm14[0,1,2,3],ymm15[4,5],ymm14[6,7]13735; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm8 # 16-byte Reload13736; AVX2-FCP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8, %xmm15 # 16-byte Folded Reload13737; AVX2-FCP-NEXT:    # xmm15 = xmm8[3,3],mem[3,3]13738; AVX2-FCP-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm15, %xmm15 # 16-byte Folded Reload13739; AVX2-FCP-NEXT:    # xmm15 = xmm15[0,1,2],mem[3]13740; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm14 = ymm14[0],ymm15[1,2,3],ymm14[4,5,6,7]13741; AVX2-FCP-NEXT:    vunpckhps {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm15 # 32-byte Folded Reload13742; AVX2-FCP-NEXT:    # ymm15 = ymm1[2],mem[2],ymm1[3],mem[3],ymm1[6],mem[6],ymm1[7],mem[7]13743; AVX2-FCP-NEXT:    vunpckhps {{.*#+}} ymm0 = ymm0[2],ymm4[2],ymm0[3],ymm4[3],ymm0[6],ymm4[6],ymm0[7],ymm4[7]13744; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm15 = ymm15[3,3,3,3]13745; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[3,3,3,3]13746; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm0[0,1,2],ymm15[3,4,5,6,7]13747; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm1 # 32-byte Reload13748; AVX2-FCP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %ymm1, %ymm15 # 32-byte Folded Reload13749; AVX2-FCP-NEXT:    # ymm15 = ymm1[3,3],mem[3,3],ymm1[7,7],mem[7,7]13750; AVX2-FCP-NEXT:    vpermilps {{.*#+}} ymm8 = mem[2,3,2,3,6,7,6,7]13751; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm8 = ymm8[0],ymm15[1,2],ymm8[3,4],ymm15[5,6],ymm8[7]13752; AVX2-FCP-NEXT:    vpermpd {{.*#+}} ymm8 = ymm8[2,1,2,3]13753; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm0 = ymm8[0],ymm0[1,2,3,4],ymm8[5,6,7]13754; AVX2-FCP-NEXT:    vunpcklps {{[-0-9]+}}(%r{{[sb]}}p), %ymm11, %ymm8 # 32-byte Folded Reload13755; AVX2-FCP-NEXT:    # ymm8 = ymm11[0],mem[0],ymm11[1],mem[1],ymm11[4],mem[4],ymm11[5],mem[5]13756; AVX2-FCP-NEXT:    vshufps {{.*#+}} ymm15 = ymm12[3,1,2,0,7,5,6,4]13757; AVX2-FCP-NEXT:    vbroadcastss 208(%rdx), %ymm413758; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm15[0,1,2,3,4,5],ymm4[6],ymm15[7]13759; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0,1,2,3],ymm8[4,5],ymm4[6,7]13760; AVX2-FCP-NEXT:    vmovaps {{[-0-9]+}}(%r{{[sb]}}p), %xmm1 # 16-byte Reload13761; AVX2-FCP-NEXT:    vshufps $255, {{[-0-9]+}}(%r{{[sb]}}p), %xmm1, %xmm8 # 16-byte Folded Reload13762; AVX2-FCP-NEXT:    # xmm8 = xmm1[3,3],mem[3,3]13763; AVX2-FCP-NEXT:    vblendps $8, {{[-0-9]+}}(%r{{[sb]}}p), %xmm8, %xmm8 # 16-byte Folded Reload13764; AVX2-FCP-NEXT:    # xmm8 = xmm8[0,1,2],mem[3]13765; AVX2-FCP-NEXT:    vblendps {{.*#+}} ymm4 = ymm4[0],ymm8[1,2,3],ymm4[4,5,6,7]13766; AVX2-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax13767; AVX2-FCP-NEXT:    vmovaps %ymm4, 1440(%rax)13768; AVX2-FCP-NEXT:    vmovaps %ymm0, 1312(%rax)13769; AVX2-FCP-NEXT:    vmovaps %ymm14, 1216(%rax)13770; AVX2-FCP-NEXT:    vmovaps %ymm13, 1088(%rax)13771; AVX2-FCP-NEXT:    vmovaps %ymm10, 992(%rax)13772; AVX2-FCP-NEXT:    vmovaps %ymm9, 864(%rax)13773; AVX2-FCP-NEXT:    vmovaps %ymm2, 768(%rax)13774; AVX2-FCP-NEXT:    vmovaps %ymm6, 640(%rax)13775; AVX2-FCP-NEXT:    vmovaps %ymm3, 544(%rax)13776; AVX2-FCP-NEXT:    vmovaps %ymm7, 416(%rax)13777; AVX2-FCP-NEXT:    vmovaps %ymm5, 320(%rax)13778; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13779; AVX2-FCP-NEXT:    vmovaps %ymm0, 192(%rax)13780; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13781; AVX2-FCP-NEXT:    vmovaps %ymm0, 96(%rax)13782; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13783; AVX2-FCP-NEXT:    vmovaps %ymm0, 1504(%rax)13784; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13785; AVX2-FCP-NEXT:    vmovaps %ymm0, 1472(%rax)13786; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13787; AVX2-FCP-NEXT:    vmovaps %ymm0, 1408(%rax)13788; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13789; AVX2-FCP-NEXT:    vmovaps %ymm0, 1344(%rax)13790; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13791; AVX2-FCP-NEXT:    vmovaps %ymm0, 1280(%rax)13792; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13793; AVX2-FCP-NEXT:    vmovaps %ymm0, 1248(%rax)13794; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13795; AVX2-FCP-NEXT:    vmovaps %ymm0, 1184(%rax)13796; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13797; AVX2-FCP-NEXT:    vmovaps %ymm0, 1120(%rax)13798; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13799; AVX2-FCP-NEXT:    vmovaps %ymm0, 1056(%rax)13800; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13801; AVX2-FCP-NEXT:    vmovaps %ymm0, 1024(%rax)13802; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13803; AVX2-FCP-NEXT:    vmovaps %ymm0, 960(%rax)13804; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13805; AVX2-FCP-NEXT:    vmovaps %ymm0, 896(%rax)13806; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13807; AVX2-FCP-NEXT:    vmovaps %ymm0, 832(%rax)13808; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13809; AVX2-FCP-NEXT:    vmovaps %ymm0, 800(%rax)13810; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13811; AVX2-FCP-NEXT:    vmovaps %ymm0, 736(%rax)13812; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13813; AVX2-FCP-NEXT:    vmovaps %ymm0, 672(%rax)13814; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13815; AVX2-FCP-NEXT:    vmovaps %ymm0, 608(%rax)13816; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13817; AVX2-FCP-NEXT:    vmovaps %ymm0, 576(%rax)13818; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13819; AVX2-FCP-NEXT:    vmovaps %ymm0, 512(%rax)13820; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13821; AVX2-FCP-NEXT:    vmovaps %ymm0, 448(%rax)13822; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13823; AVX2-FCP-NEXT:    vmovaps %ymm0, 384(%rax)13824; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13825; AVX2-FCP-NEXT:    vmovaps %ymm0, 352(%rax)13826; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13827; AVX2-FCP-NEXT:    vmovaps %ymm0, 288(%rax)13828; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13829; AVX2-FCP-NEXT:    vmovaps %ymm0, 224(%rax)13830; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13831; AVX2-FCP-NEXT:    vmovaps %ymm0, 160(%rax)13832; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13833; AVX2-FCP-NEXT:    vmovaps %ymm0, 128(%rax)13834; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13835; AVX2-FCP-NEXT:    vmovaps %ymm0, 64(%rax)13836; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13837; AVX2-FCP-NEXT:    vmovaps %ymm0, (%rax)13838; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13839; AVX2-FCP-NEXT:    vmovaps %ymm0, 1760(%rax)13840; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13841; AVX2-FCP-NEXT:    vmovaps %ymm0, 1728(%rax)13842; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13843; AVX2-FCP-NEXT:    vmovaps %ymm0, 1664(%rax)13844; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13845; AVX2-FCP-NEXT:    vmovaps %ymm0, 1536(%rax)13846; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13847; AVX2-FCP-NEXT:    vmovaps %ymm0, 1376(%rax)13848; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13849; AVX2-FCP-NEXT:    vmovaps %ymm0, 1152(%rax)13850; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13851; AVX2-FCP-NEXT:    vmovaps %ymm0, 928(%rax)13852; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13853; AVX2-FCP-NEXT:    vmovaps %ymm0, 704(%rax)13854; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13855; AVX2-FCP-NEXT:    vmovaps %ymm0, 480(%rax)13856; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13857; AVX2-FCP-NEXT:    vmovaps %ymm0, 256(%rax)13858; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13859; AVX2-FCP-NEXT:    vmovaps %ymm0, 32(%rax)13860; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13861; AVX2-FCP-NEXT:    vmovaps %ymm0, 1696(%rax)13862; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13863; AVX2-FCP-NEXT:    vmovaps %ymm0, 1632(%rax)13864; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13865; AVX2-FCP-NEXT:    vmovaps %ymm0, 1568(%rax)13866; AVX2-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %ymm0 # 32-byte Reload13867; AVX2-FCP-NEXT:    vmovaps %ymm0, 1600(%rax)13868; AVX2-FCP-NEXT:    addq $3080, %rsp # imm = 0xC0813869; AVX2-FCP-NEXT:    vzeroupper13870; AVX2-FCP-NEXT:    retq13871;13872; AVX512-LABEL: store_i32_stride7_vf64:13873; AVX512:       # %bb.0:13874; AVX512-NEXT:    subq $3080, %rsp # imm = 0xC0813875; AVX512-NEXT:    vmovdqa64 (%rdx), %zmm313876; AVX512-NEXT:    vmovdqa64 (%rcx), %zmm213877; AVX512-NEXT:    vmovdqa64 (%r8), %zmm013878; AVX512-NEXT:    vmovdqa64 64(%r8), %zmm2513879; AVX512-NEXT:    vmovdqa64 128(%r8), %zmm2213880; AVX512-NEXT:    vmovdqa64 (%r9), %zmm613881; AVX512-NEXT:    vmovdqa64 64(%r9), %zmm513882; AVX512-NEXT:    vmovdqa64 128(%r9), %zmm413883; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,0,0,16,0,0,0,0,0,1,17,0,0,0,0,0]13884; AVX512-NEXT:    vmovdqa64 %zmm3, %zmm713885; AVX512-NEXT:    vpermt2d %zmm2, %zmm8, %zmm713886; AVX512-NEXT:    vmovdqu64 %zmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13887; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]13888; AVX512-NEXT:    vmovdqa64 %zmm0, %zmm713889; AVX512-NEXT:    vpermt2d %zmm6, %zmm10, %zmm713890; AVX512-NEXT:    vmovdqu64 %zmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13891; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [2,18,0,0,0,0,0,3,19,0,0,0,0,0,4,20]13892; AVX512-NEXT:    vmovdqa64 %zmm3, %zmm113893; AVX512-NEXT:    vpermt2d %zmm2, %zmm9, %zmm113894; AVX512-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13895; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]13896; AVX512-NEXT:    vmovdqa64 %zmm0, %zmm713897; AVX512-NEXT:    vpermt2d %zmm6, %zmm11, %zmm713898; AVX512-NEXT:    vmovdqu64 %zmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13899; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]13900; AVX512-NEXT:    vmovdqa64 %zmm0, %zmm713901; AVX512-NEXT:    vpermt2d %zmm6, %zmm1, %zmm713902; AVX512-NEXT:    vmovdqu64 %zmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13903; AVX512-NEXT:    vmovdqa64 %zmm1, %zmm713904; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,0,0,0,0,7,23,0,0,0,0,0,8,24,0,0]13905; AVX512-NEXT:    vmovdqa64 %zmm0, %zmm1213906; AVX512-NEXT:    vpermt2d %zmm6, %zmm1, %zmm1213907; AVX512-NEXT:    vmovdqu64 %zmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13908; AVX512-NEXT:    vmovdqa64 %zmm1, %zmm1213909; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,0,0,9,25,0,0,0,0,0,10,26,0,0,0,0]13910; AVX512-NEXT:    vmovdqa64 %zmm0, %zmm1313911; AVX512-NEXT:    vpermt2d %zmm6, %zmm1, %zmm1313912; AVX512-NEXT:    vmovdqu64 %zmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13913; AVX512-NEXT:    vmovdqa64 %zmm1, %zmm1313914; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,11,27,0,0,0,0,0,12,28,0,0,0,0,0,13]13915; AVX512-NEXT:    vmovdqa64 %zmm0, %zmm1413916; AVX512-NEXT:    vpermt2d %zmm6, %zmm1, %zmm1413917; AVX512-NEXT:    vmovdqu64 %zmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13918; AVX512-NEXT:    vmovdqa64 %zmm1, %zmm1413919; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [13,0,0,0,0,0,30,14,0,0,0,0,0,31,15,0]13920; AVX512-NEXT:    vpermt2d %zmm0, %zmm1, %zmm613921; AVX512-NEXT:    vmovdqu64 %zmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13922; AVX512-NEXT:    vmovdqa64 %zmm25, %zmm013923; AVX512-NEXT:    vpermt2d %zmm5, %zmm10, %zmm013924; AVX512-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13925; AVX512-NEXT:    vmovdqa64 %zmm25, %zmm013926; AVX512-NEXT:    vpermt2d %zmm5, %zmm11, %zmm013927; AVX512-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13928; AVX512-NEXT:    vmovdqa64 %zmm25, %zmm013929; AVX512-NEXT:    vpermt2d %zmm5, %zmm7, %zmm013930; AVX512-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13931; AVX512-NEXT:    vmovdqa64 %zmm25, %zmm013932; AVX512-NEXT:    vpermt2d %zmm5, %zmm12, %zmm013933; AVX512-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13934; AVX512-NEXT:    vmovdqa64 %zmm25, %zmm013935; AVX512-NEXT:    vpermt2d %zmm5, %zmm13, %zmm013936; AVX512-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13937; AVX512-NEXT:    vmovdqa64 %zmm25, %zmm013938; AVX512-NEXT:    vpermt2d %zmm5, %zmm14, %zmm013939; AVX512-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13940; AVX512-NEXT:    vpermt2d %zmm25, %zmm1, %zmm513941; AVX512-NEXT:    vmovdqu64 %zmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13942; AVX512-NEXT:    vmovdqa64 %zmm22, %zmm013943; AVX512-NEXT:    vpermt2d %zmm4, %zmm10, %zmm013944; AVX512-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13945; AVX512-NEXT:    vmovdqa64 %zmm22, %zmm013946; AVX512-NEXT:    vpermt2d %zmm4, %zmm11, %zmm013947; AVX512-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13948; AVX512-NEXT:    vmovdqa64 %zmm22, %zmm013949; AVX512-NEXT:    vpermt2d %zmm4, %zmm7, %zmm013950; AVX512-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13951; AVX512-NEXT:    vpermi2d %zmm4, %zmm22, %zmm1213952; AVX512-NEXT:    vmovdqu64 %zmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13953; AVX512-NEXT:    vpermi2d %zmm4, %zmm22, %zmm1313954; AVX512-NEXT:    vmovdqu64 %zmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13955; AVX512-NEXT:    vpermi2d %zmm4, %zmm22, %zmm1413956; AVX512-NEXT:    vmovdqu64 %zmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13957; AVX512-NEXT:    vpermt2d %zmm22, %zmm1, %zmm413958; AVX512-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13959; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,5,21,0,0,0,0,0,6,22,0,0]13960; AVX512-NEXT:    vmovdqa64 %zmm3, %zmm113961; AVX512-NEXT:    vpermt2d %zmm2, %zmm0, %zmm113962; AVX512-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13963; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,7,23,0,0,0,0,0,8,24,0,0,0,0]13964; AVX512-NEXT:    vmovdqa64 %zmm3, %zmm113965; AVX512-NEXT:    vpermt2d %zmm2, %zmm11, %zmm113966; AVX512-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13967; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm30 = [0,9,25,0,0,0,0,0,10,26,0,0,0,0,0,11]13968; AVX512-NEXT:    vmovdqa64 %zmm3, %zmm113969; AVX512-NEXT:    vpermt2d %zmm2, %zmm30, %zmm113970; AVX512-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13971; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [11,0,0,0,0,0,28,12,0,0,0,0,0,29,13,0]13972; AVX512-NEXT:    vmovdqa64 %zmm2, %zmm113973; AVX512-NEXT:    vpermt2d %zmm3, %zmm4, %zmm113974; AVX512-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13975; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,0,0,0,14,30,0,0,0,0,0,15,31,0,0,0]13976; AVX512-NEXT:    vpermt2d %zmm2, %zmm1, %zmm313977; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13978; AVX512-NEXT:    vmovdqa64 64(%rdx), %zmm2413979; AVX512-NEXT:    vmovdqa64 64(%rcx), %zmm213980; AVX512-NEXT:    vmovdqa64 %zmm24, %zmm313981; AVX512-NEXT:    vpermt2d %zmm2, %zmm8, %zmm313982; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13983; AVX512-NEXT:    vmovdqa64 %zmm24, %zmm313984; AVX512-NEXT:    vpermt2d %zmm2, %zmm9, %zmm313985; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13986; AVX512-NEXT:    vmovdqa64 %zmm24, %zmm313987; AVX512-NEXT:    vpermt2d %zmm2, %zmm0, %zmm313988; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13989; AVX512-NEXT:    vmovdqa64 %zmm24, %zmm313990; AVX512-NEXT:    vpermt2d %zmm2, %zmm11, %zmm313991; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13992; AVX512-NEXT:    vmovdqa64 %zmm24, %zmm313993; AVX512-NEXT:    vpermt2d %zmm2, %zmm30, %zmm313994; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13995; AVX512-NEXT:    vmovdqa64 %zmm2, %zmm313996; AVX512-NEXT:    vpermt2d %zmm24, %zmm4, %zmm313997; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill13998; AVX512-NEXT:    vpermt2d %zmm2, %zmm1, %zmm2413999; AVX512-NEXT:    vmovdqa64 192(%rdx), %zmm2914000; AVX512-NEXT:    vmovdqa64 192(%rcx), %zmm214001; AVX512-NEXT:    vmovdqa64 %zmm29, %zmm2814002; AVX512-NEXT:    vpermt2d %zmm2, %zmm11, %zmm2814003; AVX512-NEXT:    vmovdqa64 %zmm29, %zmm314004; AVX512-NEXT:    vpermt2d %zmm2, %zmm30, %zmm314005; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14006; AVX512-NEXT:    vmovdqa64 %zmm2, %zmm314007; AVX512-NEXT:    vpermt2d %zmm29, %zmm4, %zmm314008; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14009; AVX512-NEXT:    vmovdqa64 %zmm29, %zmm314010; AVX512-NEXT:    vpermt2d %zmm2, %zmm1, %zmm314011; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14012; AVX512-NEXT:    vmovdqa64 128(%rdx), %zmm2114013; AVX512-NEXT:    vmovdqa64 128(%rcx), %zmm314014; AVX512-NEXT:    vpermi2d %zmm3, %zmm21, %zmm1114015; AVX512-NEXT:    vpermi2d %zmm3, %zmm21, %zmm3014016; AVX512-NEXT:    vpermi2d %zmm21, %zmm3, %zmm414017; AVX512-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14018; AVX512-NEXT:    vmovdqa64 %zmm21, %zmm614019; AVX512-NEXT:    vmovdqa64 %zmm21, %zmm514020; AVX512-NEXT:    vmovdqa64 %zmm21, %zmm414021; AVX512-NEXT:    vpermt2d %zmm3, %zmm1, %zmm2114022; AVX512-NEXT:    vpermt2d %zmm3, %zmm8, %zmm614023; AVX512-NEXT:    vmovdqu64 %zmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14024; AVX512-NEXT:    vpermt2d %zmm3, %zmm9, %zmm514025; AVX512-NEXT:    vmovdqu64 %zmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14026; AVX512-NEXT:    vpermt2d %zmm3, %zmm0, %zmm414027; AVX512-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14028; AVX512-NEXT:    vpermi2d %zmm2, %zmm29, %zmm814029; AVX512-NEXT:    vmovdqu64 %zmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14030; AVX512-NEXT:    vpermi2d %zmm2, %zmm29, %zmm914031; AVX512-NEXT:    vmovdqu64 %zmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14032; AVX512-NEXT:    vpermt2d %zmm2, %zmm0, %zmm2914033; AVX512-NEXT:    vmovdqa64 (%rdi), %zmm2214034; AVX512-NEXT:    vmovdqa64 (%rsi), %zmm014035; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [0,16,0,0,0,0,0,1,17,0,0,0,0,0,2,18]14036; AVX512-NEXT:    vmovdqa64 %zmm22, %zmm114037; AVX512-NEXT:    vpermt2d %zmm0, %zmm9, %zmm114038; AVX512-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14039; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,0,0,0,0,3,19,0,0,0,0,0,4,20,0,0]14040; AVX512-NEXT:    vmovdqa64 %zmm22, %zmm114041; AVX512-NEXT:    vpermt2d %zmm0, %zmm20, %zmm114042; AVX512-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14043; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm27 = [0,0,0,5,21,0,0,0,0,0,6,22,0,0,0,0]14044; AVX512-NEXT:    vmovdqa64 %zmm22, %zmm114045; AVX512-NEXT:    vpermt2d %zmm0, %zmm27, %zmm114046; AVX512-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14047; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,7,23,0,0,0,0,0,8,24,0,0,0,0,0,9]14048; AVX512-NEXT:    vmovdqa64 %zmm22, %zmm114049; AVX512-NEXT:    vpermt2d %zmm0, %zmm7, %zmm114050; AVX512-NEXT:    vmovdqu64 %zmm1, (%rsp) # 64-byte Spill14051; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [9,0,0,0,0,0,26,10,0,0,0,0,0,27,11,0]14052; AVX512-NEXT:    vmovdqa64 %zmm0, %zmm314053; AVX512-NEXT:    vpermt2d %zmm22, %zmm6, %zmm314054; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,0,0,0,12,28,0,0,0,0,0,13,29,0,0,0]14055; AVX512-NEXT:    vmovdqa64 %zmm22, %zmm1814056; AVX512-NEXT:    vpermt2d %zmm0, %zmm1, %zmm1814057; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,0,14,30,0,0,0,0,0,15,31,0,0,0,0,0]14058; AVX512-NEXT:    vpermt2d %zmm0, %zmm8, %zmm2214059; AVX512-NEXT:    vmovdqa64 64(%rdi), %zmm514060; AVX512-NEXT:    vmovdqa64 64(%rsi), %zmm014061; AVX512-NEXT:    vmovdqa64 %zmm5, %zmm3114062; AVX512-NEXT:    vpermt2d %zmm0, %zmm9, %zmm3114063; AVX512-NEXT:    vmovdqa64 %zmm5, %zmm214064; AVX512-NEXT:    vpermt2d %zmm0, %zmm20, %zmm214065; AVX512-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14066; AVX512-NEXT:    vmovdqa64 %zmm5, %zmm214067; AVX512-NEXT:    vpermt2d %zmm0, %zmm27, %zmm214068; AVX512-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14069; AVX512-NEXT:    vmovdqa64 %zmm5, %zmm2614070; AVX512-NEXT:    vpermt2d %zmm0, %zmm7, %zmm2614071; AVX512-NEXT:    vmovdqa64 %zmm0, %zmm2514072; AVX512-NEXT:    vpermt2d %zmm5, %zmm6, %zmm2514073; AVX512-NEXT:    vmovdqa64 %zmm5, %zmm1014074; AVX512-NEXT:    vpermt2d %zmm0, %zmm1, %zmm1014075; AVX512-NEXT:    vpermt2d %zmm0, %zmm8, %zmm514076; AVX512-NEXT:    vmovdqa64 192(%rdi), %zmm1214077; AVX512-NEXT:    vmovdqa64 192(%rsi), %zmm1314078; AVX512-NEXT:    vmovdqa64 %zmm12, %zmm1614079; AVX512-NEXT:    vpermt2d %zmm13, %zmm7, %zmm1614080; AVX512-NEXT:    vmovdqa64 %zmm13, %zmm1414081; AVX512-NEXT:    vpermt2d %zmm12, %zmm6, %zmm1414082; AVX512-NEXT:    vmovdqa64 %zmm12, %zmm214083; AVX512-NEXT:    vpermt2d %zmm13, %zmm1, %zmm214084; AVX512-NEXT:    vmovdqa64 %zmm12, %zmm1514085; AVX512-NEXT:    vpermt2d %zmm13, %zmm8, %zmm1514086; AVX512-NEXT:    vmovdqa64 128(%rdi), %zmm1714087; AVX512-NEXT:    vmovdqa64 128(%rsi), %zmm014088; AVX512-NEXT:    vpermi2d %zmm0, %zmm17, %zmm714089; AVX512-NEXT:    vpermi2d %zmm17, %zmm0, %zmm614090; AVX512-NEXT:    vpermi2d %zmm0, %zmm17, %zmm114091; AVX512-NEXT:    vmovdqa64 %zmm17, %zmm1914092; AVX512-NEXT:    vmovdqa64 %zmm17, %zmm414093; AVX512-NEXT:    vmovdqa64 %zmm17, %zmm2314094; AVX512-NEXT:    vpermt2d %zmm0, %zmm8, %zmm1714095; AVX512-NEXT:    vpermt2d %zmm0, %zmm9, %zmm1914096; AVX512-NEXT:    vpermt2d %zmm0, %zmm20, %zmm414097; AVX512-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14098; AVX512-NEXT:    vpermt2d %zmm0, %zmm27, %zmm2314099; AVX512-NEXT:    vpermi2d %zmm13, %zmm12, %zmm914100; AVX512-NEXT:    vpermi2d %zmm13, %zmm12, %zmm2014101; AVX512-NEXT:    vpermt2d %zmm13, %zmm27, %zmm1214102; AVX512-NEXT:    movw $3096, %ax # imm = 0xC1814103; AVX512-NEXT:    kmovw %eax, %k114104; AVX512-NEXT:    vmovdqa32 %zmm28, %zmm16 {%k1}14105; AVX512-NEXT:    movw $-31994, %ax # imm = 0x830614106; AVX512-NEXT:    kmovw %eax, %k214107; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14108; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm14 {%k2}14109; AVX512-NEXT:    vmovdqu64 (%rsp), %zmm13 # 64-byte Reload14110; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14111; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm13 {%k1}14112; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14113; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm26 {%k1}14114; AVX512-NEXT:    vmovdqa32 %zmm11, %zmm7 {%k1}14115; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %rax14116; AVX512-NEXT:    vmovdqa64 (%rax), %zmm2814117; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [22,0,0,0,0,5,6,23,0,0,0,0,12,13,24,0]14118; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm8 # 64-byte Reload14119; AVX512-NEXT:    vpermt2d %zmm28, %zmm0, %zmm814120; AVX512-NEXT:    movw $28897, %cx # imm = 0x70E114121; AVX512-NEXT:    kmovw %ecx, %k114122; AVX512-NEXT:    vmovdqa32 %zmm8, %zmm13 {%k1}14123; AVX512-NEXT:    vmovdqu64 %zmm13, (%rsp) # 64-byte Spill14124; AVX512-NEXT:    vmovdqa64 64(%rax), %zmm814125; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload14126; AVX512-NEXT:    vpermt2d %zmm8, %zmm0, %zmm1114127; AVX512-NEXT:    vmovdqa32 %zmm11, %zmm26 {%k1}14128; AVX512-NEXT:    vmovdqa64 128(%rax), %zmm2714129; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload14130; AVX512-NEXT:    vpermt2d %zmm27, %zmm0, %zmm1114131; AVX512-NEXT:    vmovdqa32 %zmm11, %zmm7 {%k1}14132; AVX512-NEXT:    movw $6192, %cx # imm = 0x183014133; AVX512-NEXT:    kmovw %ecx, %k114134; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14135; AVX512-NEXT:    vmovdqa32 %zmm2, %zmm0 {%k1}14136; AVX512-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14137; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14138; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm15 {%k1}14139; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14140; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k2}14141; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14142; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm25 {%k2}14143; AVX512-NEXT:    vmovdqa32 %zmm30, %zmm6 {%k2}14144; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,3,4,25,0,0,0,0,10,11,26,0,0,0]14145; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload14146; AVX512-NEXT:    vpermt2d %zmm28, %zmm0, %zmm214147; AVX512-NEXT:    movw $7224, %cx # imm = 0x1C3814148; AVX512-NEXT:    kmovw %ecx, %k214149; AVX512-NEXT:    vmovdqa32 %zmm2, %zmm3 {%k2}14150; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14151; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload14152; AVX512-NEXT:    vmovdqa32 %zmm18, %zmm11 {%k1}14153; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload14154; AVX512-NEXT:    vpermt2d %zmm8, %zmm0, %zmm214155; AVX512-NEXT:    vmovdqa32 %zmm2, %zmm25 {%k2}14156; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload14157; AVX512-NEXT:    vpermt2d %zmm27, %zmm0, %zmm214158; AVX512-NEXT:    vmovdqa32 %zmm2, %zmm6 {%k2}14159; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,1,2,27,0,0,0,0,8,9,28,0,0,0,0,15]14160; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload14161; AVX512-NEXT:    vpermt2d %zmm28, %zmm0, %zmm214162; AVX512-NEXT:    movw $-30962, %cx # imm = 0x870E14163; AVX512-NEXT:    kmovw %ecx, %k214164; AVX512-NEXT:    vmovdqa32 %zmm2, %zmm11 {%k2}14165; AVX512-NEXT:    vmovdqu64 %zmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14166; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload14167; AVX512-NEXT:    vmovdqa32 %zmm10, %zmm11 {%k1}14168; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload14169; AVX512-NEXT:    vpermt2d %zmm8, %zmm0, %zmm214170; AVX512-NEXT:    vmovdqa32 %zmm2, %zmm11 {%k2}14171; AVX512-NEXT:    vmovdqu64 %zmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14172; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm30 # 64-byte Reload14173; AVX512-NEXT:    vmovdqa32 %zmm1, %zmm30 {%k1}14174; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14175; AVX512-NEXT:    vpermt2d %zmm27, %zmm0, %zmm114176; AVX512-NEXT:    vmovdqa32 %zmm1, %zmm30 {%k2}14177; AVX512-NEXT:    movw $1548, %cx # imm = 0x60C14178; AVX512-NEXT:    kmovw %ecx, %k214179; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14180; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload14181; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm2 {%k2}14182; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14183; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm22 {%k1}14184; AVX512-NEXT:    vmovdqa32 %zmm24, %zmm5 {%k1}14185; AVX512-NEXT:    vmovdqa32 %zmm21, %zmm17 {%k1}14186; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,29,0,0,0,0,6,7,30,0,0,0,0,13,14,31]14187; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14188; AVX512-NEXT:    vpermt2d %zmm28, %zmm0, %zmm114189; AVX512-NEXT:    movw $-7741, %cx # imm = 0xE1C314190; AVX512-NEXT:    kmovw %ecx, %k114191; AVX512-NEXT:    vmovdqa32 %zmm1, %zmm22 {%k1}14192; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14193; AVX512-NEXT:    vpermt2d %zmm8, %zmm0, %zmm114194; AVX512-NEXT:    vmovdqa32 %zmm1, %zmm5 {%k1}14195; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14196; AVX512-NEXT:    vpermt2d %zmm27, %zmm0, %zmm114197; AVX512-NEXT:    vmovdqa32 %zmm1, %zmm17 {%k1}14198; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,4,5,16,0,0,0,0,11,12,17,0,0]14199; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14200; AVX512-NEXT:    vpermt2d %zmm28, %zmm0, %zmm114201; AVX512-NEXT:    movw $14448, %cx # imm = 0x387014202; AVX512-NEXT:    kmovw %ecx, %k314203; AVX512-NEXT:    vmovdqa32 %zmm1, %zmm2 {%k3}14204; AVX512-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14205; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14206; AVX512-NEXT:    vmovdqa32 %zmm1, %zmm31 {%k2}14207; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14208; AVX512-NEXT:    vmovdqa32 %zmm1, %zmm19 {%k2}14209; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14210; AVX512-NEXT:    vmovdqa32 %zmm1, %zmm9 {%k2}14211; AVX512-NEXT:    movw $12384, %cx # imm = 0x306014212; AVX512-NEXT:    kmovw %ecx, %k114213; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm3 # 64-byte Reload14214; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14215; AVX512-NEXT:    vmovdqa32 %zmm1, %zmm3 {%k1}14216; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14217; AVX512-NEXT:    vpermt2d %zmm8, %zmm0, %zmm114218; AVX512-NEXT:    vmovdqa32 %zmm1, %zmm31 {%k3}14219; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14220; AVX512-NEXT:    vpermt2d %zmm27, %zmm0, %zmm114221; AVX512-NEXT:    vmovdqa32 %zmm1, %zmm19 {%k3}14222; AVX512-NEXT:    vmovdqa64 192(%r8), %zmm114223; AVX512-NEXT:    vmovdqa64 192(%r9), %zmm214224; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]14225; AVX512-NEXT:    vpermi2d %zmm2, %zmm1, %zmm1114226; AVX512-NEXT:    vmovdqa64 192(%rax), %zmm1014227; AVX512-NEXT:    vpermt2d %zmm10, %zmm0, %zmm1114228; AVX512-NEXT:    vmovdqa32 %zmm11, %zmm9 {%k3}14229; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,3,18,0,0,0,0,9,10,19,0,0,0,0]14230; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload14231; AVX512-NEXT:    vpermt2d %zmm28, %zmm0, %zmm1114232; AVX512-NEXT:    movw $3612, %ax # imm = 0xE1C14233; AVX512-NEXT:    kmovw %eax, %k214234; AVX512-NEXT:    vmovdqa32 %zmm11, %zmm3 {%k2}14235; AVX512-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14236; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm4 # 64-byte Reload14237; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload14238; AVX512-NEXT:    vmovdqa32 %zmm11, %zmm4 {%k1}14239; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload14240; AVX512-NEXT:    vpermt2d %zmm8, %zmm0, %zmm1114241; AVX512-NEXT:    vmovdqa32 %zmm11, %zmm4 {%k2}14242; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm24 # 64-byte Reload14243; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm3 # 64-byte Reload14244; AVX512-NEXT:    vmovdqa32 %zmm3, %zmm24 {%k1}14245; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload14246; AVX512-NEXT:    vpermt2d %zmm27, %zmm0, %zmm1114247; AVX512-NEXT:    vmovdqa32 %zmm11, %zmm24 {%k2}14248; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm18 # 64-byte Reload14249; AVX512-NEXT:    vmovdqa32 %zmm20, %zmm18 {%k1}14250; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]14251; AVX512-NEXT:    vpermi2d %zmm2, %zmm1, %zmm1314252; AVX512-NEXT:    vpermt2d %zmm10, %zmm0, %zmm1314253; AVX512-NEXT:    vmovdqa32 %zmm13, %zmm18 {%k2}14254; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm3 = [0,1,2,3,4,23,0,0,8,9,10,11,24,0,0,15]14255; AVX512-NEXT:    vpermi2d %zmm1, %zmm16, %zmm314256; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,1,2,25,0,0,6,7,8,9,26,0,0,13,14,15]14257; AVX512-NEXT:    vpermi2d %zmm1, %zmm14, %zmm1114258; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [0,27,0,0,4,5,6,7,28,0,0,11,12,13,14,29]14259; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm14 # 64-byte Reload14260; AVX512-NEXT:    vpermi2d %zmm1, %zmm14, %zmm1314261; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm14 = [0,0,2,3,4,5,30,0,0,9,10,11,12,31,0,0]14262; AVX512-NEXT:    vpermi2d %zmm1, %zmm15, %zmm1414263; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm15 # 64-byte Reload14264; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14265; AVX512-NEXT:    vmovdqa32 %zmm15, %zmm0 {%k1}14266; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm15 = [0,1,20,0,0,0,0,7,8,21,0,0,0,0,14,15]14267; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm16 # 64-byte Reload14268; AVX512-NEXT:    vpermt2d %zmm28, %zmm15, %zmm1614269; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm21 # 64-byte Reload14270; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload14271; AVX512-NEXT:    vmovdqa32 %zmm21, %zmm28 {%k1}14272; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm21 # 64-byte Reload14273; AVX512-NEXT:    vmovdqa32 %zmm21, %zmm23 {%k1}14274; AVX512-NEXT:    vmovdqa32 %zmm29, %zmm12 {%k1}14275; AVX512-NEXT:    movw $15480, %ax # imm = 0x3C7814276; AVX512-NEXT:    kmovw %eax, %k114277; AVX512-NEXT:    vmovdqa32 %zmm0, %zmm16 {%k1}14278; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm21 # 64-byte Reload14279; AVX512-NEXT:    vpermt2d %zmm8, %zmm15, %zmm2114280; AVX512-NEXT:    vmovdqa32 %zmm28, %zmm21 {%k1}14281; AVX512-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm8 # 64-byte Reload14282; AVX512-NEXT:    vpermt2d %zmm27, %zmm15, %zmm814283; AVX512-NEXT:    vmovdqa32 %zmm23, %zmm8 {%k1}14284; AVX512-NEXT:    vmovdqa64 %zmm8, %zmm2014285; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]14286; AVX512-NEXT:    vpermt2d %zmm2, %zmm8, %zmm114287; AVX512-NEXT:    vpermt2d %zmm10, %zmm15, %zmm114288; AVX512-NEXT:    vmovdqa32 %zmm12, %zmm1 {%k1}14289; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,1,2,3,4,5,23,0,8,9,10,11,12,24,0,15]14290; AVX512-NEXT:    vpermi2d %zmm2, %zmm3, %zmm814291; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,1,2,3,25,0,6,7,8,9,10,26,0,13,14,15]14292; AVX512-NEXT:    vpermi2d %zmm2, %zmm11, %zmm014293; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,1,27,0,4,5,6,7,8,28,0,11,12,13,14,15]14294; AVX512-NEXT:    vpermi2d %zmm2, %zmm13, %zmm1114295; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm12 = [29,0,2,3,4,5,6,30,0,9,10,11,12,13,31,0]14296; AVX512-NEXT:    vpermi2d %zmm2, %zmm14, %zmm1214297; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [22,1,2,3,4,5,6,23,8,9,10,11,12,13,24,15]14298; AVX512-NEXT:    vpermi2d %zmm10, %zmm8, %zmm214299; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,1,2,3,4,25,6,7,8,9,10,11,26,13,14,15]14300; AVX512-NEXT:    vpermi2d %zmm10, %zmm0, %zmm814301; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,1,2,27,4,5,6,7,8,9,28,11,12,13,14,15]14302; AVX512-NEXT:    vpermi2d %zmm10, %zmm11, %zmm014303; AVX512-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,29,2,3,4,5,6,7,30,9,10,11,12,13,14,31]14304; AVX512-NEXT:    vpermi2d %zmm10, %zmm12, %zmm1114305; AVX512-NEXT:    movq {{[0-9]+}}(%rsp), %rax14306; AVX512-NEXT:    vmovdqa64 %zmm1, 1472(%rax)14307; AVX512-NEXT:    vmovdqa64 %zmm18, 1408(%rax)14308; AVX512-NEXT:    vmovdqa64 %zmm9, 1344(%rax)14309; AVX512-NEXT:    vmovdqa64 %zmm17, 1280(%rax)14310; AVX512-NEXT:    vmovdqa64 %zmm30, 1216(%rax)14311; AVX512-NEXT:    vmovdqa64 %zmm6, 1152(%rax)14312; AVX512-NEXT:    vmovdqa64 %zmm7, 1088(%rax)14313; AVX512-NEXT:    vmovdqa64 %zmm20, 1024(%rax)14314; AVX512-NEXT:    vmovdqa64 %zmm24, 960(%rax)14315; AVX512-NEXT:    vmovdqa64 %zmm19, 896(%rax)14316; AVX512-NEXT:    vmovdqa64 %zmm5, 832(%rax)14317; AVX512-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14318; AVX512-NEXT:    vmovaps %zmm1, 768(%rax)14319; AVX512-NEXT:    vmovdqa64 %zmm25, 704(%rax)14320; AVX512-NEXT:    vmovdqa64 %zmm26, 640(%rax)14321; AVX512-NEXT:    vmovdqa64 %zmm21, 576(%rax)14322; AVX512-NEXT:    vmovdqa64 %zmm4, 512(%rax)14323; AVX512-NEXT:    vmovdqa64 %zmm31, 448(%rax)14324; AVX512-NEXT:    vmovdqa64 %zmm22, 384(%rax)14325; AVX512-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14326; AVX512-NEXT:    vmovaps %zmm1, 320(%rax)14327; AVX512-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14328; AVX512-NEXT:    vmovaps %zmm1, 256(%rax)14329; AVX512-NEXT:    vmovups (%rsp), %zmm1 # 64-byte Reload14330; AVX512-NEXT:    vmovaps %zmm1, 192(%rax)14331; AVX512-NEXT:    vmovdqa64 %zmm16, 128(%rax)14332; AVX512-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14333; AVX512-NEXT:    vmovaps %zmm1, 64(%rax)14334; AVX512-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14335; AVX512-NEXT:    vmovaps %zmm1, (%rax)14336; AVX512-NEXT:    vmovdqa64 %zmm11, 1728(%rax)14337; AVX512-NEXT:    vmovdqa64 %zmm0, 1664(%rax)14338; AVX512-NEXT:    vmovdqa64 %zmm8, 1600(%rax)14339; AVX512-NEXT:    vmovdqa64 %zmm2, 1536(%rax)14340; AVX512-NEXT:    addq $3080, %rsp # imm = 0xC0814341; AVX512-NEXT:    vzeroupper14342; AVX512-NEXT:    retq14343;14344; AVX512-FCP-LABEL: store_i32_stride7_vf64:14345; AVX512-FCP:       # %bb.0:14346; AVX512-FCP-NEXT:    subq $3080, %rsp # imm = 0xC0814347; AVX512-FCP-NEXT:    vmovdqa64 (%rdx), %zmm314348; AVX512-FCP-NEXT:    vmovdqa64 (%rcx), %zmm214349; AVX512-FCP-NEXT:    vmovdqa64 (%r8), %zmm014350; AVX512-FCP-NEXT:    vmovdqa64 64(%r8), %zmm2514351; AVX512-FCP-NEXT:    vmovdqa64 128(%r8), %zmm2214352; AVX512-FCP-NEXT:    vmovdqa64 (%r9), %zmm614353; AVX512-FCP-NEXT:    vmovdqa64 64(%r9), %zmm514354; AVX512-FCP-NEXT:    vmovdqa64 128(%r9), %zmm414355; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,0,0,16,0,0,0,0,0,1,17,0,0,0,0,0]14356; AVX512-FCP-NEXT:    vmovdqa64 %zmm3, %zmm714357; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm8, %zmm714358; AVX512-FCP-NEXT:    vmovdqu64 %zmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14359; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]14360; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, %zmm714361; AVX512-FCP-NEXT:    vpermt2d %zmm6, %zmm10, %zmm714362; AVX512-FCP-NEXT:    vmovdqu64 %zmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14363; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [2,18,0,0,0,0,0,3,19,0,0,0,0,0,4,20]14364; AVX512-FCP-NEXT:    vmovdqa64 %zmm3, %zmm114365; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm9, %zmm114366; AVX512-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14367; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]14368; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, %zmm714369; AVX512-FCP-NEXT:    vpermt2d %zmm6, %zmm11, %zmm714370; AVX512-FCP-NEXT:    vmovdqu64 %zmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14371; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]14372; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, %zmm714373; AVX512-FCP-NEXT:    vpermt2d %zmm6, %zmm1, %zmm714374; AVX512-FCP-NEXT:    vmovdqu64 %zmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14375; AVX512-FCP-NEXT:    vmovdqa64 %zmm1, %zmm714376; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,0,0,0,0,7,23,0,0,0,0,0,8,24,0,0]14377; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, %zmm1214378; AVX512-FCP-NEXT:    vpermt2d %zmm6, %zmm1, %zmm1214379; AVX512-FCP-NEXT:    vmovdqu64 %zmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14380; AVX512-FCP-NEXT:    vmovdqa64 %zmm1, %zmm1214381; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,0,0,9,25,0,0,0,0,0,10,26,0,0,0,0]14382; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, %zmm1314383; AVX512-FCP-NEXT:    vpermt2d %zmm6, %zmm1, %zmm1314384; AVX512-FCP-NEXT:    vmovdqu64 %zmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14385; AVX512-FCP-NEXT:    vmovdqa64 %zmm1, %zmm1314386; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,11,27,0,0,0,0,0,12,28,0,0,0,0,0,13]14387; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, %zmm1414388; AVX512-FCP-NEXT:    vpermt2d %zmm6, %zmm1, %zmm1414389; AVX512-FCP-NEXT:    vmovdqu64 %zmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14390; AVX512-FCP-NEXT:    vmovdqa64 %zmm1, %zmm1414391; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [13,0,0,0,0,0,30,14,0,0,0,0,0,31,15,0]14392; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm1, %zmm614393; AVX512-FCP-NEXT:    vmovdqu64 %zmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14394; AVX512-FCP-NEXT:    vmovdqa64 %zmm25, %zmm014395; AVX512-FCP-NEXT:    vpermt2d %zmm5, %zmm10, %zmm014396; AVX512-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14397; AVX512-FCP-NEXT:    vmovdqa64 %zmm25, %zmm014398; AVX512-FCP-NEXT:    vpermt2d %zmm5, %zmm11, %zmm014399; AVX512-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14400; AVX512-FCP-NEXT:    vmovdqa64 %zmm25, %zmm014401; AVX512-FCP-NEXT:    vpermt2d %zmm5, %zmm7, %zmm014402; AVX512-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14403; AVX512-FCP-NEXT:    vmovdqa64 %zmm25, %zmm014404; AVX512-FCP-NEXT:    vpermt2d %zmm5, %zmm12, %zmm014405; AVX512-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14406; AVX512-FCP-NEXT:    vmovdqa64 %zmm25, %zmm014407; AVX512-FCP-NEXT:    vpermt2d %zmm5, %zmm13, %zmm014408; AVX512-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14409; AVX512-FCP-NEXT:    vmovdqa64 %zmm25, %zmm014410; AVX512-FCP-NEXT:    vpermt2d %zmm5, %zmm14, %zmm014411; AVX512-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14412; AVX512-FCP-NEXT:    vpermt2d %zmm25, %zmm1, %zmm514413; AVX512-FCP-NEXT:    vmovdqu64 %zmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14414; AVX512-FCP-NEXT:    vmovdqa64 %zmm22, %zmm014415; AVX512-FCP-NEXT:    vpermt2d %zmm4, %zmm10, %zmm014416; AVX512-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14417; AVX512-FCP-NEXT:    vmovdqa64 %zmm22, %zmm014418; AVX512-FCP-NEXT:    vpermt2d %zmm4, %zmm11, %zmm014419; AVX512-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14420; AVX512-FCP-NEXT:    vmovdqa64 %zmm22, %zmm014421; AVX512-FCP-NEXT:    vpermt2d %zmm4, %zmm7, %zmm014422; AVX512-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14423; AVX512-FCP-NEXT:    vpermi2d %zmm4, %zmm22, %zmm1214424; AVX512-FCP-NEXT:    vmovdqu64 %zmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14425; AVX512-FCP-NEXT:    vpermi2d %zmm4, %zmm22, %zmm1314426; AVX512-FCP-NEXT:    vmovdqu64 %zmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14427; AVX512-FCP-NEXT:    vpermi2d %zmm4, %zmm22, %zmm1414428; AVX512-FCP-NEXT:    vmovdqu64 %zmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14429; AVX512-FCP-NEXT:    vpermt2d %zmm22, %zmm1, %zmm414430; AVX512-FCP-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14431; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,5,21,0,0,0,0,0,6,22,0,0]14432; AVX512-FCP-NEXT:    vmovdqa64 %zmm3, %zmm114433; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm0, %zmm114434; AVX512-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14435; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,7,23,0,0,0,0,0,8,24,0,0,0,0]14436; AVX512-FCP-NEXT:    vmovdqa64 %zmm3, %zmm114437; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm11, %zmm114438; AVX512-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14439; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm30 = [0,9,25,0,0,0,0,0,10,26,0,0,0,0,0,11]14440; AVX512-FCP-NEXT:    vmovdqa64 %zmm3, %zmm114441; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm30, %zmm114442; AVX512-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14443; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [11,0,0,0,0,0,28,12,0,0,0,0,0,29,13,0]14444; AVX512-FCP-NEXT:    vmovdqa64 %zmm2, %zmm114445; AVX512-FCP-NEXT:    vpermt2d %zmm3, %zmm4, %zmm114446; AVX512-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14447; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,0,0,0,14,30,0,0,0,0,0,15,31,0,0,0]14448; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm1, %zmm314449; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14450; AVX512-FCP-NEXT:    vmovdqa64 64(%rdx), %zmm2414451; AVX512-FCP-NEXT:    vmovdqa64 64(%rcx), %zmm214452; AVX512-FCP-NEXT:    vmovdqa64 %zmm24, %zmm314453; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm8, %zmm314454; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14455; AVX512-FCP-NEXT:    vmovdqa64 %zmm24, %zmm314456; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm9, %zmm314457; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14458; AVX512-FCP-NEXT:    vmovdqa64 %zmm24, %zmm314459; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm0, %zmm314460; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14461; AVX512-FCP-NEXT:    vmovdqa64 %zmm24, %zmm314462; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm11, %zmm314463; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14464; AVX512-FCP-NEXT:    vmovdqa64 %zmm24, %zmm314465; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm30, %zmm314466; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14467; AVX512-FCP-NEXT:    vmovdqa64 %zmm2, %zmm314468; AVX512-FCP-NEXT:    vpermt2d %zmm24, %zmm4, %zmm314469; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14470; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm1, %zmm2414471; AVX512-FCP-NEXT:    vmovdqa64 192(%rdx), %zmm2914472; AVX512-FCP-NEXT:    vmovdqa64 192(%rcx), %zmm214473; AVX512-FCP-NEXT:    vmovdqa64 %zmm29, %zmm2814474; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm11, %zmm2814475; AVX512-FCP-NEXT:    vmovdqa64 %zmm29, %zmm314476; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm30, %zmm314477; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14478; AVX512-FCP-NEXT:    vmovdqa64 %zmm2, %zmm314479; AVX512-FCP-NEXT:    vpermt2d %zmm29, %zmm4, %zmm314480; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14481; AVX512-FCP-NEXT:    vmovdqa64 %zmm29, %zmm314482; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm1, %zmm314483; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14484; AVX512-FCP-NEXT:    vmovdqa64 128(%rdx), %zmm2114485; AVX512-FCP-NEXT:    vmovdqa64 128(%rcx), %zmm314486; AVX512-FCP-NEXT:    vpermi2d %zmm3, %zmm21, %zmm1114487; AVX512-FCP-NEXT:    vpermi2d %zmm3, %zmm21, %zmm3014488; AVX512-FCP-NEXT:    vpermi2d %zmm21, %zmm3, %zmm414489; AVX512-FCP-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14490; AVX512-FCP-NEXT:    vmovdqa64 %zmm21, %zmm614491; AVX512-FCP-NEXT:    vmovdqa64 %zmm21, %zmm514492; AVX512-FCP-NEXT:    vmovdqa64 %zmm21, %zmm414493; AVX512-FCP-NEXT:    vpermt2d %zmm3, %zmm1, %zmm2114494; AVX512-FCP-NEXT:    vpermt2d %zmm3, %zmm8, %zmm614495; AVX512-FCP-NEXT:    vmovdqu64 %zmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14496; AVX512-FCP-NEXT:    vpermt2d %zmm3, %zmm9, %zmm514497; AVX512-FCP-NEXT:    vmovdqu64 %zmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14498; AVX512-FCP-NEXT:    vpermt2d %zmm3, %zmm0, %zmm414499; AVX512-FCP-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14500; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm29, %zmm814501; AVX512-FCP-NEXT:    vmovdqu64 %zmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14502; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm29, %zmm914503; AVX512-FCP-NEXT:    vmovdqu64 %zmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14504; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm0, %zmm2914505; AVX512-FCP-NEXT:    vmovdqa64 (%rdi), %zmm2214506; AVX512-FCP-NEXT:    vmovdqa64 (%rsi), %zmm014507; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [0,16,0,0,0,0,0,1,17,0,0,0,0,0,2,18]14508; AVX512-FCP-NEXT:    vmovdqa64 %zmm22, %zmm114509; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm9, %zmm114510; AVX512-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14511; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,0,0,0,0,3,19,0,0,0,0,0,4,20,0,0]14512; AVX512-FCP-NEXT:    vmovdqa64 %zmm22, %zmm114513; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm20, %zmm114514; AVX512-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14515; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm27 = [0,0,0,5,21,0,0,0,0,0,6,22,0,0,0,0]14516; AVX512-FCP-NEXT:    vmovdqa64 %zmm22, %zmm114517; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm27, %zmm114518; AVX512-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14519; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,7,23,0,0,0,0,0,8,24,0,0,0,0,0,9]14520; AVX512-FCP-NEXT:    vmovdqa64 %zmm22, %zmm114521; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm7, %zmm114522; AVX512-FCP-NEXT:    vmovdqu64 %zmm1, (%rsp) # 64-byte Spill14523; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [9,0,0,0,0,0,26,10,0,0,0,0,0,27,11,0]14524; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, %zmm314525; AVX512-FCP-NEXT:    vpermt2d %zmm22, %zmm6, %zmm314526; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,0,0,0,12,28,0,0,0,0,0,13,29,0,0,0]14527; AVX512-FCP-NEXT:    vmovdqa64 %zmm22, %zmm1814528; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm1, %zmm1814529; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,0,14,30,0,0,0,0,0,15,31,0,0,0,0,0]14530; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm8, %zmm2214531; AVX512-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm514532; AVX512-FCP-NEXT:    vmovdqa64 64(%rsi), %zmm014533; AVX512-FCP-NEXT:    vmovdqa64 %zmm5, %zmm3114534; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm9, %zmm3114535; AVX512-FCP-NEXT:    vmovdqa64 %zmm5, %zmm214536; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm20, %zmm214537; AVX512-FCP-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14538; AVX512-FCP-NEXT:    vmovdqa64 %zmm5, %zmm214539; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm27, %zmm214540; AVX512-FCP-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14541; AVX512-FCP-NEXT:    vmovdqa64 %zmm5, %zmm2614542; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm7, %zmm2614543; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, %zmm2514544; AVX512-FCP-NEXT:    vpermt2d %zmm5, %zmm6, %zmm2514545; AVX512-FCP-NEXT:    vmovdqa64 %zmm5, %zmm1014546; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm1, %zmm1014547; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm8, %zmm514548; AVX512-FCP-NEXT:    vmovdqa64 192(%rdi), %zmm1214549; AVX512-FCP-NEXT:    vmovdqa64 192(%rsi), %zmm1314550; AVX512-FCP-NEXT:    vmovdqa64 %zmm12, %zmm1614551; AVX512-FCP-NEXT:    vpermt2d %zmm13, %zmm7, %zmm1614552; AVX512-FCP-NEXT:    vmovdqa64 %zmm13, %zmm1414553; AVX512-FCP-NEXT:    vpermt2d %zmm12, %zmm6, %zmm1414554; AVX512-FCP-NEXT:    vmovdqa64 %zmm12, %zmm214555; AVX512-FCP-NEXT:    vpermt2d %zmm13, %zmm1, %zmm214556; AVX512-FCP-NEXT:    vmovdqa64 %zmm12, %zmm1514557; AVX512-FCP-NEXT:    vpermt2d %zmm13, %zmm8, %zmm1514558; AVX512-FCP-NEXT:    vmovdqa64 128(%rdi), %zmm1714559; AVX512-FCP-NEXT:    vmovdqa64 128(%rsi), %zmm014560; AVX512-FCP-NEXT:    vpermi2d %zmm0, %zmm17, %zmm714561; AVX512-FCP-NEXT:    vpermi2d %zmm17, %zmm0, %zmm614562; AVX512-FCP-NEXT:    vpermi2d %zmm0, %zmm17, %zmm114563; AVX512-FCP-NEXT:    vmovdqa64 %zmm17, %zmm1914564; AVX512-FCP-NEXT:    vmovdqa64 %zmm17, %zmm414565; AVX512-FCP-NEXT:    vmovdqa64 %zmm17, %zmm2314566; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm8, %zmm1714567; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm9, %zmm1914568; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm20, %zmm414569; AVX512-FCP-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14570; AVX512-FCP-NEXT:    vpermt2d %zmm0, %zmm27, %zmm2314571; AVX512-FCP-NEXT:    vpermi2d %zmm13, %zmm12, %zmm914572; AVX512-FCP-NEXT:    vpermi2d %zmm13, %zmm12, %zmm2014573; AVX512-FCP-NEXT:    vpermt2d %zmm13, %zmm27, %zmm1214574; AVX512-FCP-NEXT:    movw $3096, %ax # imm = 0xC1814575; AVX512-FCP-NEXT:    kmovw %eax, %k114576; AVX512-FCP-NEXT:    vmovdqa32 %zmm28, %zmm16 {%k1}14577; AVX512-FCP-NEXT:    movw $-31994, %ax # imm = 0x830614578; AVX512-FCP-NEXT:    kmovw %eax, %k214579; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14580; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm14 {%k2}14581; AVX512-FCP-NEXT:    vmovdqu64 (%rsp), %zmm13 # 64-byte Reload14582; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14583; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm13 {%k1}14584; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14585; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm26 {%k1}14586; AVX512-FCP-NEXT:    vmovdqa32 %zmm11, %zmm7 {%k1}14587; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax14588; AVX512-FCP-NEXT:    vmovdqa64 (%rax), %zmm2814589; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [22,0,0,0,0,5,6,23,0,0,0,0,12,13,24,0]14590; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm8 # 64-byte Reload14591; AVX512-FCP-NEXT:    vpermt2d %zmm28, %zmm0, %zmm814592; AVX512-FCP-NEXT:    movw $28897, %cx # imm = 0x70E114593; AVX512-FCP-NEXT:    kmovw %ecx, %k114594; AVX512-FCP-NEXT:    vmovdqa32 %zmm8, %zmm13 {%k1}14595; AVX512-FCP-NEXT:    vmovdqu64 %zmm13, (%rsp) # 64-byte Spill14596; AVX512-FCP-NEXT:    vmovdqa64 64(%rax), %zmm814597; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload14598; AVX512-FCP-NEXT:    vpermt2d %zmm8, %zmm0, %zmm1114599; AVX512-FCP-NEXT:    vmovdqa32 %zmm11, %zmm26 {%k1}14600; AVX512-FCP-NEXT:    vmovdqa64 128(%rax), %zmm2714601; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload14602; AVX512-FCP-NEXT:    vpermt2d %zmm27, %zmm0, %zmm1114603; AVX512-FCP-NEXT:    vmovdqa32 %zmm11, %zmm7 {%k1}14604; AVX512-FCP-NEXT:    movw $6192, %cx # imm = 0x183014605; AVX512-FCP-NEXT:    kmovw %ecx, %k114606; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14607; AVX512-FCP-NEXT:    vmovdqa32 %zmm2, %zmm0 {%k1}14608; AVX512-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14609; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14610; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm15 {%k1}14611; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14612; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k2}14613; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14614; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm25 {%k2}14615; AVX512-FCP-NEXT:    vmovdqa32 %zmm30, %zmm6 {%k2}14616; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,3,4,25,0,0,0,0,10,11,26,0,0,0]14617; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload14618; AVX512-FCP-NEXT:    vpermt2d %zmm28, %zmm0, %zmm214619; AVX512-FCP-NEXT:    movw $7224, %cx # imm = 0x1C3814620; AVX512-FCP-NEXT:    kmovw %ecx, %k214621; AVX512-FCP-NEXT:    vmovdqa32 %zmm2, %zmm3 {%k2}14622; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14623; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload14624; AVX512-FCP-NEXT:    vmovdqa32 %zmm18, %zmm11 {%k1}14625; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload14626; AVX512-FCP-NEXT:    vpermt2d %zmm8, %zmm0, %zmm214627; AVX512-FCP-NEXT:    vmovdqa32 %zmm2, %zmm25 {%k2}14628; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload14629; AVX512-FCP-NEXT:    vpermt2d %zmm27, %zmm0, %zmm214630; AVX512-FCP-NEXT:    vmovdqa32 %zmm2, %zmm6 {%k2}14631; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,1,2,27,0,0,0,0,8,9,28,0,0,0,0,15]14632; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload14633; AVX512-FCP-NEXT:    vpermt2d %zmm28, %zmm0, %zmm214634; AVX512-FCP-NEXT:    movw $-30962, %cx # imm = 0x870E14635; AVX512-FCP-NEXT:    kmovw %ecx, %k214636; AVX512-FCP-NEXT:    vmovdqa32 %zmm2, %zmm11 {%k2}14637; AVX512-FCP-NEXT:    vmovdqu64 %zmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14638; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload14639; AVX512-FCP-NEXT:    vmovdqa32 %zmm10, %zmm11 {%k1}14640; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload14641; AVX512-FCP-NEXT:    vpermt2d %zmm8, %zmm0, %zmm214642; AVX512-FCP-NEXT:    vmovdqa32 %zmm2, %zmm11 {%k2}14643; AVX512-FCP-NEXT:    vmovdqu64 %zmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14644; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm30 # 64-byte Reload14645; AVX512-FCP-NEXT:    vmovdqa32 %zmm1, %zmm30 {%k1}14646; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14647; AVX512-FCP-NEXT:    vpermt2d %zmm27, %zmm0, %zmm114648; AVX512-FCP-NEXT:    vmovdqa32 %zmm1, %zmm30 {%k2}14649; AVX512-FCP-NEXT:    movw $1548, %cx # imm = 0x60C14650; AVX512-FCP-NEXT:    kmovw %ecx, %k214651; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14652; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload14653; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm2 {%k2}14654; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14655; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm22 {%k1}14656; AVX512-FCP-NEXT:    vmovdqa32 %zmm24, %zmm5 {%k1}14657; AVX512-FCP-NEXT:    vmovdqa32 %zmm21, %zmm17 {%k1}14658; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,29,0,0,0,0,6,7,30,0,0,0,0,13,14,31]14659; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14660; AVX512-FCP-NEXT:    vpermt2d %zmm28, %zmm0, %zmm114661; AVX512-FCP-NEXT:    movw $-7741, %cx # imm = 0xE1C314662; AVX512-FCP-NEXT:    kmovw %ecx, %k114663; AVX512-FCP-NEXT:    vmovdqa32 %zmm1, %zmm22 {%k1}14664; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14665; AVX512-FCP-NEXT:    vpermt2d %zmm8, %zmm0, %zmm114666; AVX512-FCP-NEXT:    vmovdqa32 %zmm1, %zmm5 {%k1}14667; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14668; AVX512-FCP-NEXT:    vpermt2d %zmm27, %zmm0, %zmm114669; AVX512-FCP-NEXT:    vmovdqa32 %zmm1, %zmm17 {%k1}14670; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,4,5,16,0,0,0,0,11,12,17,0,0]14671; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14672; AVX512-FCP-NEXT:    vpermt2d %zmm28, %zmm0, %zmm114673; AVX512-FCP-NEXT:    movw $14448, %cx # imm = 0x387014674; AVX512-FCP-NEXT:    kmovw %ecx, %k314675; AVX512-FCP-NEXT:    vmovdqa32 %zmm1, %zmm2 {%k3}14676; AVX512-FCP-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14677; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14678; AVX512-FCP-NEXT:    vmovdqa32 %zmm1, %zmm31 {%k2}14679; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14680; AVX512-FCP-NEXT:    vmovdqa32 %zmm1, %zmm19 {%k2}14681; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14682; AVX512-FCP-NEXT:    vmovdqa32 %zmm1, %zmm9 {%k2}14683; AVX512-FCP-NEXT:    movw $12384, %cx # imm = 0x306014684; AVX512-FCP-NEXT:    kmovw %ecx, %k114685; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm3 # 64-byte Reload14686; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14687; AVX512-FCP-NEXT:    vmovdqa32 %zmm1, %zmm3 {%k1}14688; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14689; AVX512-FCP-NEXT:    vpermt2d %zmm8, %zmm0, %zmm114690; AVX512-FCP-NEXT:    vmovdqa32 %zmm1, %zmm31 {%k3}14691; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14692; AVX512-FCP-NEXT:    vpermt2d %zmm27, %zmm0, %zmm114693; AVX512-FCP-NEXT:    vmovdqa32 %zmm1, %zmm19 {%k3}14694; AVX512-FCP-NEXT:    vmovdqa64 192(%r8), %zmm114695; AVX512-FCP-NEXT:    vmovdqa64 192(%r9), %zmm214696; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]14697; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm1114698; AVX512-FCP-NEXT:    vmovdqa64 192(%rax), %zmm1014699; AVX512-FCP-NEXT:    vpermt2d %zmm10, %zmm0, %zmm1114700; AVX512-FCP-NEXT:    vmovdqa32 %zmm11, %zmm9 {%k3}14701; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,3,18,0,0,0,0,9,10,19,0,0,0,0]14702; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload14703; AVX512-FCP-NEXT:    vpermt2d %zmm28, %zmm0, %zmm1114704; AVX512-FCP-NEXT:    movw $3612, %ax # imm = 0xE1C14705; AVX512-FCP-NEXT:    kmovw %eax, %k214706; AVX512-FCP-NEXT:    vmovdqa32 %zmm11, %zmm3 {%k2}14707; AVX512-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14708; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm4 # 64-byte Reload14709; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload14710; AVX512-FCP-NEXT:    vmovdqa32 %zmm11, %zmm4 {%k1}14711; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload14712; AVX512-FCP-NEXT:    vpermt2d %zmm8, %zmm0, %zmm1114713; AVX512-FCP-NEXT:    vmovdqa32 %zmm11, %zmm4 {%k2}14714; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm24 # 64-byte Reload14715; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm3 # 64-byte Reload14716; AVX512-FCP-NEXT:    vmovdqa32 %zmm3, %zmm24 {%k1}14717; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload14718; AVX512-FCP-NEXT:    vpermt2d %zmm27, %zmm0, %zmm1114719; AVX512-FCP-NEXT:    vmovdqa32 %zmm11, %zmm24 {%k2}14720; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm18 # 64-byte Reload14721; AVX512-FCP-NEXT:    vmovdqa32 %zmm20, %zmm18 {%k1}14722; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]14723; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm1314724; AVX512-FCP-NEXT:    vpermt2d %zmm10, %zmm0, %zmm1314725; AVX512-FCP-NEXT:    vmovdqa32 %zmm13, %zmm18 {%k2}14726; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm3 = [0,1,2,3,4,23,0,0,8,9,10,11,24,0,0,15]14727; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm16, %zmm314728; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,1,2,25,0,0,6,7,8,9,26,0,0,13,14,15]14729; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm14, %zmm1114730; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [0,27,0,0,4,5,6,7,28,0,0,11,12,13,14,29]14731; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm14 # 64-byte Reload14732; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm14, %zmm1314733; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm14 = [0,0,2,3,4,5,30,0,0,9,10,11,12,31,0,0]14734; AVX512-FCP-NEXT:    vpermi2d %zmm1, %zmm15, %zmm1414735; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm15 # 64-byte Reload14736; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload14737; AVX512-FCP-NEXT:    vmovdqa32 %zmm15, %zmm0 {%k1}14738; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm15 = [0,1,20,0,0,0,0,7,8,21,0,0,0,0,14,15]14739; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm16 # 64-byte Reload14740; AVX512-FCP-NEXT:    vpermt2d %zmm28, %zmm15, %zmm1614741; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm21 # 64-byte Reload14742; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload14743; AVX512-FCP-NEXT:    vmovdqa32 %zmm21, %zmm28 {%k1}14744; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm21 # 64-byte Reload14745; AVX512-FCP-NEXT:    vmovdqa32 %zmm21, %zmm23 {%k1}14746; AVX512-FCP-NEXT:    vmovdqa32 %zmm29, %zmm12 {%k1}14747; AVX512-FCP-NEXT:    movw $15480, %ax # imm = 0x3C7814748; AVX512-FCP-NEXT:    kmovw %eax, %k114749; AVX512-FCP-NEXT:    vmovdqa32 %zmm0, %zmm16 {%k1}14750; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm21 # 64-byte Reload14751; AVX512-FCP-NEXT:    vpermt2d %zmm8, %zmm15, %zmm2114752; AVX512-FCP-NEXT:    vmovdqa32 %zmm28, %zmm21 {%k1}14753; AVX512-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm8 # 64-byte Reload14754; AVX512-FCP-NEXT:    vpermt2d %zmm27, %zmm15, %zmm814755; AVX512-FCP-NEXT:    vmovdqa32 %zmm23, %zmm8 {%k1}14756; AVX512-FCP-NEXT:    vmovdqa64 %zmm8, %zmm2014757; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]14758; AVX512-FCP-NEXT:    vpermt2d %zmm2, %zmm8, %zmm114759; AVX512-FCP-NEXT:    vpermt2d %zmm10, %zmm15, %zmm114760; AVX512-FCP-NEXT:    vmovdqa32 %zmm12, %zmm1 {%k1}14761; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,1,2,3,4,5,23,0,8,9,10,11,12,24,0,15]14762; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm3, %zmm814763; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,1,2,3,25,0,6,7,8,9,10,26,0,13,14,15]14764; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm11, %zmm014765; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,1,27,0,4,5,6,7,8,28,0,11,12,13,14,15]14766; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm13, %zmm1114767; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm12 = [29,0,2,3,4,5,6,30,0,9,10,11,12,13,31,0]14768; AVX512-FCP-NEXT:    vpermi2d %zmm2, %zmm14, %zmm1214769; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [22,1,2,3,4,5,6,23,8,9,10,11,12,13,24,15]14770; AVX512-FCP-NEXT:    vpermi2d %zmm10, %zmm8, %zmm214771; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,1,2,3,4,25,6,7,8,9,10,11,26,13,14,15]14772; AVX512-FCP-NEXT:    vpermi2d %zmm10, %zmm0, %zmm814773; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,1,2,27,4,5,6,7,8,9,28,11,12,13,14,15]14774; AVX512-FCP-NEXT:    vpermi2d %zmm10, %zmm11, %zmm014775; AVX512-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,29,2,3,4,5,6,7,30,9,10,11,12,13,14,31]14776; AVX512-FCP-NEXT:    vpermi2d %zmm10, %zmm12, %zmm1114777; AVX512-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax14778; AVX512-FCP-NEXT:    vmovdqa64 %zmm1, 1472(%rax)14779; AVX512-FCP-NEXT:    vmovdqa64 %zmm18, 1408(%rax)14780; AVX512-FCP-NEXT:    vmovdqa64 %zmm9, 1344(%rax)14781; AVX512-FCP-NEXT:    vmovdqa64 %zmm17, 1280(%rax)14782; AVX512-FCP-NEXT:    vmovdqa64 %zmm30, 1216(%rax)14783; AVX512-FCP-NEXT:    vmovdqa64 %zmm6, 1152(%rax)14784; AVX512-FCP-NEXT:    vmovdqa64 %zmm7, 1088(%rax)14785; AVX512-FCP-NEXT:    vmovdqa64 %zmm20, 1024(%rax)14786; AVX512-FCP-NEXT:    vmovdqa64 %zmm24, 960(%rax)14787; AVX512-FCP-NEXT:    vmovdqa64 %zmm19, 896(%rax)14788; AVX512-FCP-NEXT:    vmovdqa64 %zmm5, 832(%rax)14789; AVX512-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14790; AVX512-FCP-NEXT:    vmovaps %zmm1, 768(%rax)14791; AVX512-FCP-NEXT:    vmovdqa64 %zmm25, 704(%rax)14792; AVX512-FCP-NEXT:    vmovdqa64 %zmm26, 640(%rax)14793; AVX512-FCP-NEXT:    vmovdqa64 %zmm21, 576(%rax)14794; AVX512-FCP-NEXT:    vmovdqa64 %zmm4, 512(%rax)14795; AVX512-FCP-NEXT:    vmovdqa64 %zmm31, 448(%rax)14796; AVX512-FCP-NEXT:    vmovdqa64 %zmm22, 384(%rax)14797; AVX512-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14798; AVX512-FCP-NEXT:    vmovaps %zmm1, 320(%rax)14799; AVX512-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14800; AVX512-FCP-NEXT:    vmovaps %zmm1, 256(%rax)14801; AVX512-FCP-NEXT:    vmovups (%rsp), %zmm1 # 64-byte Reload14802; AVX512-FCP-NEXT:    vmovaps %zmm1, 192(%rax)14803; AVX512-FCP-NEXT:    vmovdqa64 %zmm16, 128(%rax)14804; AVX512-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14805; AVX512-FCP-NEXT:    vmovaps %zmm1, 64(%rax)14806; AVX512-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload14807; AVX512-FCP-NEXT:    vmovaps %zmm1, (%rax)14808; AVX512-FCP-NEXT:    vmovdqa64 %zmm11, 1728(%rax)14809; AVX512-FCP-NEXT:    vmovdqa64 %zmm0, 1664(%rax)14810; AVX512-FCP-NEXT:    vmovdqa64 %zmm8, 1600(%rax)14811; AVX512-FCP-NEXT:    vmovdqa64 %zmm2, 1536(%rax)14812; AVX512-FCP-NEXT:    addq $3080, %rsp # imm = 0xC0814813; AVX512-FCP-NEXT:    vzeroupper14814; AVX512-FCP-NEXT:    retq14815;14816; AVX512DQ-LABEL: store_i32_stride7_vf64:14817; AVX512DQ:       # %bb.0:14818; AVX512DQ-NEXT:    subq $3080, %rsp # imm = 0xC0814819; AVX512DQ-NEXT:    vmovdqa64 (%rdx), %zmm314820; AVX512DQ-NEXT:    vmovdqa64 (%rcx), %zmm214821; AVX512DQ-NEXT:    vmovdqa64 (%r8), %zmm014822; AVX512DQ-NEXT:    vmovdqa64 64(%r8), %zmm2514823; AVX512DQ-NEXT:    vmovdqa64 128(%r8), %zmm2214824; AVX512DQ-NEXT:    vmovdqa64 (%r9), %zmm614825; AVX512DQ-NEXT:    vmovdqa64 64(%r9), %zmm514826; AVX512DQ-NEXT:    vmovdqa64 128(%r9), %zmm414827; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,0,0,16,0,0,0,0,0,1,17,0,0,0,0,0]14828; AVX512DQ-NEXT:    vmovdqa64 %zmm3, %zmm714829; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm8, %zmm714830; AVX512DQ-NEXT:    vmovdqu64 %zmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14831; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]14832; AVX512DQ-NEXT:    vmovdqa64 %zmm0, %zmm714833; AVX512DQ-NEXT:    vpermt2d %zmm6, %zmm10, %zmm714834; AVX512DQ-NEXT:    vmovdqu64 %zmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14835; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [2,18,0,0,0,0,0,3,19,0,0,0,0,0,4,20]14836; AVX512DQ-NEXT:    vmovdqa64 %zmm3, %zmm114837; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm9, %zmm114838; AVX512DQ-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14839; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]14840; AVX512DQ-NEXT:    vmovdqa64 %zmm0, %zmm714841; AVX512DQ-NEXT:    vpermt2d %zmm6, %zmm11, %zmm714842; AVX512DQ-NEXT:    vmovdqu64 %zmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14843; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]14844; AVX512DQ-NEXT:    vmovdqa64 %zmm0, %zmm714845; AVX512DQ-NEXT:    vpermt2d %zmm6, %zmm1, %zmm714846; AVX512DQ-NEXT:    vmovdqu64 %zmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14847; AVX512DQ-NEXT:    vmovdqa64 %zmm1, %zmm714848; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,0,0,0,0,7,23,0,0,0,0,0,8,24,0,0]14849; AVX512DQ-NEXT:    vmovdqa64 %zmm0, %zmm1214850; AVX512DQ-NEXT:    vpermt2d %zmm6, %zmm1, %zmm1214851; AVX512DQ-NEXT:    vmovdqu64 %zmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14852; AVX512DQ-NEXT:    vmovdqa64 %zmm1, %zmm1214853; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,0,0,9,25,0,0,0,0,0,10,26,0,0,0,0]14854; AVX512DQ-NEXT:    vmovdqa64 %zmm0, %zmm1314855; AVX512DQ-NEXT:    vpermt2d %zmm6, %zmm1, %zmm1314856; AVX512DQ-NEXT:    vmovdqu64 %zmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14857; AVX512DQ-NEXT:    vmovdqa64 %zmm1, %zmm1314858; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,11,27,0,0,0,0,0,12,28,0,0,0,0,0,13]14859; AVX512DQ-NEXT:    vmovdqa64 %zmm0, %zmm1414860; AVX512DQ-NEXT:    vpermt2d %zmm6, %zmm1, %zmm1414861; AVX512DQ-NEXT:    vmovdqu64 %zmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14862; AVX512DQ-NEXT:    vmovdqa64 %zmm1, %zmm1414863; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [13,0,0,0,0,0,30,14,0,0,0,0,0,31,15,0]14864; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm1, %zmm614865; AVX512DQ-NEXT:    vmovdqu64 %zmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14866; AVX512DQ-NEXT:    vmovdqa64 %zmm25, %zmm014867; AVX512DQ-NEXT:    vpermt2d %zmm5, %zmm10, %zmm014868; AVX512DQ-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14869; AVX512DQ-NEXT:    vmovdqa64 %zmm25, %zmm014870; AVX512DQ-NEXT:    vpermt2d %zmm5, %zmm11, %zmm014871; AVX512DQ-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14872; AVX512DQ-NEXT:    vmovdqa64 %zmm25, %zmm014873; AVX512DQ-NEXT:    vpermt2d %zmm5, %zmm7, %zmm014874; AVX512DQ-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14875; AVX512DQ-NEXT:    vmovdqa64 %zmm25, %zmm014876; AVX512DQ-NEXT:    vpermt2d %zmm5, %zmm12, %zmm014877; AVX512DQ-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14878; AVX512DQ-NEXT:    vmovdqa64 %zmm25, %zmm014879; AVX512DQ-NEXT:    vpermt2d %zmm5, %zmm13, %zmm014880; AVX512DQ-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14881; AVX512DQ-NEXT:    vmovdqa64 %zmm25, %zmm014882; AVX512DQ-NEXT:    vpermt2d %zmm5, %zmm14, %zmm014883; AVX512DQ-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14884; AVX512DQ-NEXT:    vpermt2d %zmm25, %zmm1, %zmm514885; AVX512DQ-NEXT:    vmovdqu64 %zmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14886; AVX512DQ-NEXT:    vmovdqa64 %zmm22, %zmm014887; AVX512DQ-NEXT:    vpermt2d %zmm4, %zmm10, %zmm014888; AVX512DQ-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14889; AVX512DQ-NEXT:    vmovdqa64 %zmm22, %zmm014890; AVX512DQ-NEXT:    vpermt2d %zmm4, %zmm11, %zmm014891; AVX512DQ-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14892; AVX512DQ-NEXT:    vmovdqa64 %zmm22, %zmm014893; AVX512DQ-NEXT:    vpermt2d %zmm4, %zmm7, %zmm014894; AVX512DQ-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14895; AVX512DQ-NEXT:    vpermi2d %zmm4, %zmm22, %zmm1214896; AVX512DQ-NEXT:    vmovdqu64 %zmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14897; AVX512DQ-NEXT:    vpermi2d %zmm4, %zmm22, %zmm1314898; AVX512DQ-NEXT:    vmovdqu64 %zmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14899; AVX512DQ-NEXT:    vpermi2d %zmm4, %zmm22, %zmm1414900; AVX512DQ-NEXT:    vmovdqu64 %zmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14901; AVX512DQ-NEXT:    vpermt2d %zmm22, %zmm1, %zmm414902; AVX512DQ-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14903; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,5,21,0,0,0,0,0,6,22,0,0]14904; AVX512DQ-NEXT:    vmovdqa64 %zmm3, %zmm114905; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm0, %zmm114906; AVX512DQ-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14907; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,7,23,0,0,0,0,0,8,24,0,0,0,0]14908; AVX512DQ-NEXT:    vmovdqa64 %zmm3, %zmm114909; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm11, %zmm114910; AVX512DQ-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14911; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm30 = [0,9,25,0,0,0,0,0,10,26,0,0,0,0,0,11]14912; AVX512DQ-NEXT:    vmovdqa64 %zmm3, %zmm114913; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm30, %zmm114914; AVX512DQ-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14915; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [11,0,0,0,0,0,28,12,0,0,0,0,0,29,13,0]14916; AVX512DQ-NEXT:    vmovdqa64 %zmm2, %zmm114917; AVX512DQ-NEXT:    vpermt2d %zmm3, %zmm4, %zmm114918; AVX512DQ-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14919; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,0,0,0,14,30,0,0,0,0,0,15,31,0,0,0]14920; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm1, %zmm314921; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14922; AVX512DQ-NEXT:    vmovdqa64 64(%rdx), %zmm2414923; AVX512DQ-NEXT:    vmovdqa64 64(%rcx), %zmm214924; AVX512DQ-NEXT:    vmovdqa64 %zmm24, %zmm314925; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm8, %zmm314926; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14927; AVX512DQ-NEXT:    vmovdqa64 %zmm24, %zmm314928; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm9, %zmm314929; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14930; AVX512DQ-NEXT:    vmovdqa64 %zmm24, %zmm314931; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm0, %zmm314932; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14933; AVX512DQ-NEXT:    vmovdqa64 %zmm24, %zmm314934; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm11, %zmm314935; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14936; AVX512DQ-NEXT:    vmovdqa64 %zmm24, %zmm314937; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm30, %zmm314938; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14939; AVX512DQ-NEXT:    vmovdqa64 %zmm2, %zmm314940; AVX512DQ-NEXT:    vpermt2d %zmm24, %zmm4, %zmm314941; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14942; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm1, %zmm2414943; AVX512DQ-NEXT:    vmovdqa64 192(%rdx), %zmm2914944; AVX512DQ-NEXT:    vmovdqa64 192(%rcx), %zmm214945; AVX512DQ-NEXT:    vmovdqa64 %zmm29, %zmm2814946; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm11, %zmm2814947; AVX512DQ-NEXT:    vmovdqa64 %zmm29, %zmm314948; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm30, %zmm314949; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14950; AVX512DQ-NEXT:    vmovdqa64 %zmm2, %zmm314951; AVX512DQ-NEXT:    vpermt2d %zmm29, %zmm4, %zmm314952; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14953; AVX512DQ-NEXT:    vmovdqa64 %zmm29, %zmm314954; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm1, %zmm314955; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14956; AVX512DQ-NEXT:    vmovdqa64 128(%rdx), %zmm2114957; AVX512DQ-NEXT:    vmovdqa64 128(%rcx), %zmm314958; AVX512DQ-NEXT:    vpermi2d %zmm3, %zmm21, %zmm1114959; AVX512DQ-NEXT:    vpermi2d %zmm3, %zmm21, %zmm3014960; AVX512DQ-NEXT:    vpermi2d %zmm21, %zmm3, %zmm414961; AVX512DQ-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14962; AVX512DQ-NEXT:    vmovdqa64 %zmm21, %zmm614963; AVX512DQ-NEXT:    vmovdqa64 %zmm21, %zmm514964; AVX512DQ-NEXT:    vmovdqa64 %zmm21, %zmm414965; AVX512DQ-NEXT:    vpermt2d %zmm3, %zmm1, %zmm2114966; AVX512DQ-NEXT:    vpermt2d %zmm3, %zmm8, %zmm614967; AVX512DQ-NEXT:    vmovdqu64 %zmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14968; AVX512DQ-NEXT:    vpermt2d %zmm3, %zmm9, %zmm514969; AVX512DQ-NEXT:    vmovdqu64 %zmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14970; AVX512DQ-NEXT:    vpermt2d %zmm3, %zmm0, %zmm414971; AVX512DQ-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14972; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm29, %zmm814973; AVX512DQ-NEXT:    vmovdqu64 %zmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14974; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm29, %zmm914975; AVX512DQ-NEXT:    vmovdqu64 %zmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14976; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm0, %zmm2914977; AVX512DQ-NEXT:    vmovdqa64 (%rdi), %zmm2214978; AVX512DQ-NEXT:    vmovdqa64 (%rsi), %zmm014979; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [0,16,0,0,0,0,0,1,17,0,0,0,0,0,2,18]14980; AVX512DQ-NEXT:    vmovdqa64 %zmm22, %zmm114981; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm9, %zmm114982; AVX512DQ-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14983; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,0,0,0,0,3,19,0,0,0,0,0,4,20,0,0]14984; AVX512DQ-NEXT:    vmovdqa64 %zmm22, %zmm114985; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm20, %zmm114986; AVX512DQ-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14987; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm27 = [0,0,0,5,21,0,0,0,0,0,6,22,0,0,0,0]14988; AVX512DQ-NEXT:    vmovdqa64 %zmm22, %zmm114989; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm27, %zmm114990; AVX512DQ-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill14991; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,7,23,0,0,0,0,0,8,24,0,0,0,0,0,9]14992; AVX512DQ-NEXT:    vmovdqa64 %zmm22, %zmm114993; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm7, %zmm114994; AVX512DQ-NEXT:    vmovdqu64 %zmm1, (%rsp) # 64-byte Spill14995; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [9,0,0,0,0,0,26,10,0,0,0,0,0,27,11,0]14996; AVX512DQ-NEXT:    vmovdqa64 %zmm0, %zmm314997; AVX512DQ-NEXT:    vpermt2d %zmm22, %zmm6, %zmm314998; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,0,0,0,12,28,0,0,0,0,0,13,29,0,0,0]14999; AVX512DQ-NEXT:    vmovdqa64 %zmm22, %zmm1815000; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm1, %zmm1815001; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,0,14,30,0,0,0,0,0,15,31,0,0,0,0,0]15002; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm8, %zmm2215003; AVX512DQ-NEXT:    vmovdqa64 64(%rdi), %zmm515004; AVX512DQ-NEXT:    vmovdqa64 64(%rsi), %zmm015005; AVX512DQ-NEXT:    vmovdqa64 %zmm5, %zmm3115006; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm9, %zmm3115007; AVX512DQ-NEXT:    vmovdqa64 %zmm5, %zmm215008; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm20, %zmm215009; AVX512DQ-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15010; AVX512DQ-NEXT:    vmovdqa64 %zmm5, %zmm215011; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm27, %zmm215012; AVX512DQ-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15013; AVX512DQ-NEXT:    vmovdqa64 %zmm5, %zmm2615014; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm7, %zmm2615015; AVX512DQ-NEXT:    vmovdqa64 %zmm0, %zmm2515016; AVX512DQ-NEXT:    vpermt2d %zmm5, %zmm6, %zmm2515017; AVX512DQ-NEXT:    vmovdqa64 %zmm5, %zmm1015018; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm1, %zmm1015019; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm8, %zmm515020; AVX512DQ-NEXT:    vmovdqa64 192(%rdi), %zmm1215021; AVX512DQ-NEXT:    vmovdqa64 192(%rsi), %zmm1315022; AVX512DQ-NEXT:    vmovdqa64 %zmm12, %zmm1615023; AVX512DQ-NEXT:    vpermt2d %zmm13, %zmm7, %zmm1615024; AVX512DQ-NEXT:    vmovdqa64 %zmm13, %zmm1415025; AVX512DQ-NEXT:    vpermt2d %zmm12, %zmm6, %zmm1415026; AVX512DQ-NEXT:    vmovdqa64 %zmm12, %zmm215027; AVX512DQ-NEXT:    vpermt2d %zmm13, %zmm1, %zmm215028; AVX512DQ-NEXT:    vmovdqa64 %zmm12, %zmm1515029; AVX512DQ-NEXT:    vpermt2d %zmm13, %zmm8, %zmm1515030; AVX512DQ-NEXT:    vmovdqa64 128(%rdi), %zmm1715031; AVX512DQ-NEXT:    vmovdqa64 128(%rsi), %zmm015032; AVX512DQ-NEXT:    vpermi2d %zmm0, %zmm17, %zmm715033; AVX512DQ-NEXT:    vpermi2d %zmm17, %zmm0, %zmm615034; AVX512DQ-NEXT:    vpermi2d %zmm0, %zmm17, %zmm115035; AVX512DQ-NEXT:    vmovdqa64 %zmm17, %zmm1915036; AVX512DQ-NEXT:    vmovdqa64 %zmm17, %zmm415037; AVX512DQ-NEXT:    vmovdqa64 %zmm17, %zmm2315038; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm8, %zmm1715039; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm9, %zmm1915040; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm20, %zmm415041; AVX512DQ-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15042; AVX512DQ-NEXT:    vpermt2d %zmm0, %zmm27, %zmm2315043; AVX512DQ-NEXT:    vpermi2d %zmm13, %zmm12, %zmm915044; AVX512DQ-NEXT:    vpermi2d %zmm13, %zmm12, %zmm2015045; AVX512DQ-NEXT:    vpermt2d %zmm13, %zmm27, %zmm1215046; AVX512DQ-NEXT:    movw $3096, %ax # imm = 0xC1815047; AVX512DQ-NEXT:    kmovw %eax, %k115048; AVX512DQ-NEXT:    vmovdqa32 %zmm28, %zmm16 {%k1}15049; AVX512DQ-NEXT:    movw $-31994, %ax # imm = 0x830615050; AVX512DQ-NEXT:    kmovw %eax, %k215051; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15052; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm14 {%k2}15053; AVX512DQ-NEXT:    vmovdqu64 (%rsp), %zmm13 # 64-byte Reload15054; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15055; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm13 {%k1}15056; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15057; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm26 {%k1}15058; AVX512DQ-NEXT:    vmovdqa32 %zmm11, %zmm7 {%k1}15059; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %rax15060; AVX512DQ-NEXT:    vmovdqa64 (%rax), %zmm2815061; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [22,0,0,0,0,5,6,23,0,0,0,0,12,13,24,0]15062; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm8 # 64-byte Reload15063; AVX512DQ-NEXT:    vpermt2d %zmm28, %zmm0, %zmm815064; AVX512DQ-NEXT:    movw $28897, %cx # imm = 0x70E115065; AVX512DQ-NEXT:    kmovw %ecx, %k115066; AVX512DQ-NEXT:    vmovdqa32 %zmm8, %zmm13 {%k1}15067; AVX512DQ-NEXT:    vmovdqu64 %zmm13, (%rsp) # 64-byte Spill15068; AVX512DQ-NEXT:    vmovdqa64 64(%rax), %zmm815069; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload15070; AVX512DQ-NEXT:    vpermt2d %zmm8, %zmm0, %zmm1115071; AVX512DQ-NEXT:    vmovdqa32 %zmm11, %zmm26 {%k1}15072; AVX512DQ-NEXT:    vmovdqa64 128(%rax), %zmm2715073; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload15074; AVX512DQ-NEXT:    vpermt2d %zmm27, %zmm0, %zmm1115075; AVX512DQ-NEXT:    vmovdqa32 %zmm11, %zmm7 {%k1}15076; AVX512DQ-NEXT:    movw $6192, %cx # imm = 0x183015077; AVX512DQ-NEXT:    kmovw %ecx, %k115078; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15079; AVX512DQ-NEXT:    vmovdqa32 %zmm2, %zmm0 {%k1}15080; AVX512DQ-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15081; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15082; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm15 {%k1}15083; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15084; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k2}15085; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15086; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm25 {%k2}15087; AVX512DQ-NEXT:    vmovdqa32 %zmm30, %zmm6 {%k2}15088; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,3,4,25,0,0,0,0,10,11,26,0,0,0]15089; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload15090; AVX512DQ-NEXT:    vpermt2d %zmm28, %zmm0, %zmm215091; AVX512DQ-NEXT:    movw $7224, %cx # imm = 0x1C3815092; AVX512DQ-NEXT:    kmovw %ecx, %k215093; AVX512DQ-NEXT:    vmovdqa32 %zmm2, %zmm3 {%k2}15094; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15095; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload15096; AVX512DQ-NEXT:    vmovdqa32 %zmm18, %zmm11 {%k1}15097; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload15098; AVX512DQ-NEXT:    vpermt2d %zmm8, %zmm0, %zmm215099; AVX512DQ-NEXT:    vmovdqa32 %zmm2, %zmm25 {%k2}15100; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload15101; AVX512DQ-NEXT:    vpermt2d %zmm27, %zmm0, %zmm215102; AVX512DQ-NEXT:    vmovdqa32 %zmm2, %zmm6 {%k2}15103; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,1,2,27,0,0,0,0,8,9,28,0,0,0,0,15]15104; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload15105; AVX512DQ-NEXT:    vpermt2d %zmm28, %zmm0, %zmm215106; AVX512DQ-NEXT:    movw $-30962, %cx # imm = 0x870E15107; AVX512DQ-NEXT:    kmovw %ecx, %k215108; AVX512DQ-NEXT:    vmovdqa32 %zmm2, %zmm11 {%k2}15109; AVX512DQ-NEXT:    vmovdqu64 %zmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15110; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload15111; AVX512DQ-NEXT:    vmovdqa32 %zmm10, %zmm11 {%k1}15112; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload15113; AVX512DQ-NEXT:    vpermt2d %zmm8, %zmm0, %zmm215114; AVX512DQ-NEXT:    vmovdqa32 %zmm2, %zmm11 {%k2}15115; AVX512DQ-NEXT:    vmovdqu64 %zmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15116; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm30 # 64-byte Reload15117; AVX512DQ-NEXT:    vmovdqa32 %zmm1, %zmm30 {%k1}15118; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15119; AVX512DQ-NEXT:    vpermt2d %zmm27, %zmm0, %zmm115120; AVX512DQ-NEXT:    vmovdqa32 %zmm1, %zmm30 {%k2}15121; AVX512DQ-NEXT:    movw $1548, %cx # imm = 0x60C15122; AVX512DQ-NEXT:    kmovw %ecx, %k215123; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15124; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload15125; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm2 {%k2}15126; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15127; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm22 {%k1}15128; AVX512DQ-NEXT:    vmovdqa32 %zmm24, %zmm5 {%k1}15129; AVX512DQ-NEXT:    vmovdqa32 %zmm21, %zmm17 {%k1}15130; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,29,0,0,0,0,6,7,30,0,0,0,0,13,14,31]15131; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15132; AVX512DQ-NEXT:    vpermt2d %zmm28, %zmm0, %zmm115133; AVX512DQ-NEXT:    movw $-7741, %cx # imm = 0xE1C315134; AVX512DQ-NEXT:    kmovw %ecx, %k115135; AVX512DQ-NEXT:    vmovdqa32 %zmm1, %zmm22 {%k1}15136; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15137; AVX512DQ-NEXT:    vpermt2d %zmm8, %zmm0, %zmm115138; AVX512DQ-NEXT:    vmovdqa32 %zmm1, %zmm5 {%k1}15139; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15140; AVX512DQ-NEXT:    vpermt2d %zmm27, %zmm0, %zmm115141; AVX512DQ-NEXT:    vmovdqa32 %zmm1, %zmm17 {%k1}15142; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,4,5,16,0,0,0,0,11,12,17,0,0]15143; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15144; AVX512DQ-NEXT:    vpermt2d %zmm28, %zmm0, %zmm115145; AVX512DQ-NEXT:    movw $14448, %cx # imm = 0x387015146; AVX512DQ-NEXT:    kmovw %ecx, %k315147; AVX512DQ-NEXT:    vmovdqa32 %zmm1, %zmm2 {%k3}15148; AVX512DQ-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15149; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15150; AVX512DQ-NEXT:    vmovdqa32 %zmm1, %zmm31 {%k2}15151; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15152; AVX512DQ-NEXT:    vmovdqa32 %zmm1, %zmm19 {%k2}15153; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15154; AVX512DQ-NEXT:    vmovdqa32 %zmm1, %zmm9 {%k2}15155; AVX512DQ-NEXT:    movw $12384, %cx # imm = 0x306015156; AVX512DQ-NEXT:    kmovw %ecx, %k115157; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm3 # 64-byte Reload15158; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15159; AVX512DQ-NEXT:    vmovdqa32 %zmm1, %zmm3 {%k1}15160; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15161; AVX512DQ-NEXT:    vpermt2d %zmm8, %zmm0, %zmm115162; AVX512DQ-NEXT:    vmovdqa32 %zmm1, %zmm31 {%k3}15163; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15164; AVX512DQ-NEXT:    vpermt2d %zmm27, %zmm0, %zmm115165; AVX512DQ-NEXT:    vmovdqa32 %zmm1, %zmm19 {%k3}15166; AVX512DQ-NEXT:    vmovdqa64 192(%r8), %zmm115167; AVX512DQ-NEXT:    vmovdqa64 192(%r9), %zmm215168; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]15169; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm1, %zmm1115170; AVX512DQ-NEXT:    vmovdqa64 192(%rax), %zmm1015171; AVX512DQ-NEXT:    vpermt2d %zmm10, %zmm0, %zmm1115172; AVX512DQ-NEXT:    vmovdqa32 %zmm11, %zmm9 {%k3}15173; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,3,18,0,0,0,0,9,10,19,0,0,0,0]15174; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload15175; AVX512DQ-NEXT:    vpermt2d %zmm28, %zmm0, %zmm1115176; AVX512DQ-NEXT:    movw $3612, %ax # imm = 0xE1C15177; AVX512DQ-NEXT:    kmovw %eax, %k215178; AVX512DQ-NEXT:    vmovdqa32 %zmm11, %zmm3 {%k2}15179; AVX512DQ-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15180; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm4 # 64-byte Reload15181; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload15182; AVX512DQ-NEXT:    vmovdqa32 %zmm11, %zmm4 {%k1}15183; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload15184; AVX512DQ-NEXT:    vpermt2d %zmm8, %zmm0, %zmm1115185; AVX512DQ-NEXT:    vmovdqa32 %zmm11, %zmm4 {%k2}15186; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm24 # 64-byte Reload15187; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm3 # 64-byte Reload15188; AVX512DQ-NEXT:    vmovdqa32 %zmm3, %zmm24 {%k1}15189; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload15190; AVX512DQ-NEXT:    vpermt2d %zmm27, %zmm0, %zmm1115191; AVX512DQ-NEXT:    vmovdqa32 %zmm11, %zmm24 {%k2}15192; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm18 # 64-byte Reload15193; AVX512DQ-NEXT:    vmovdqa32 %zmm20, %zmm18 {%k1}15194; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]15195; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm1, %zmm1315196; AVX512DQ-NEXT:    vpermt2d %zmm10, %zmm0, %zmm1315197; AVX512DQ-NEXT:    vmovdqa32 %zmm13, %zmm18 {%k2}15198; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm3 = [0,1,2,3,4,23,0,0,8,9,10,11,24,0,0,15]15199; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm16, %zmm315200; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,1,2,25,0,0,6,7,8,9,26,0,0,13,14,15]15201; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm14, %zmm1115202; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [0,27,0,0,4,5,6,7,28,0,0,11,12,13,14,29]15203; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm14 # 64-byte Reload15204; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm14, %zmm1315205; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm14 = [0,0,2,3,4,5,30,0,0,9,10,11,12,31,0,0]15206; AVX512DQ-NEXT:    vpermi2d %zmm1, %zmm15, %zmm1415207; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm15 # 64-byte Reload15208; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15209; AVX512DQ-NEXT:    vmovdqa32 %zmm15, %zmm0 {%k1}15210; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm15 = [0,1,20,0,0,0,0,7,8,21,0,0,0,0,14,15]15211; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm16 # 64-byte Reload15212; AVX512DQ-NEXT:    vpermt2d %zmm28, %zmm15, %zmm1615213; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm21 # 64-byte Reload15214; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15215; AVX512DQ-NEXT:    vmovdqa32 %zmm21, %zmm28 {%k1}15216; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm21 # 64-byte Reload15217; AVX512DQ-NEXT:    vmovdqa32 %zmm21, %zmm23 {%k1}15218; AVX512DQ-NEXT:    vmovdqa32 %zmm29, %zmm12 {%k1}15219; AVX512DQ-NEXT:    movw $15480, %ax # imm = 0x3C7815220; AVX512DQ-NEXT:    kmovw %eax, %k115221; AVX512DQ-NEXT:    vmovdqa32 %zmm0, %zmm16 {%k1}15222; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm21 # 64-byte Reload15223; AVX512DQ-NEXT:    vpermt2d %zmm8, %zmm15, %zmm2115224; AVX512DQ-NEXT:    vmovdqa32 %zmm28, %zmm21 {%k1}15225; AVX512DQ-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm8 # 64-byte Reload15226; AVX512DQ-NEXT:    vpermt2d %zmm27, %zmm15, %zmm815227; AVX512DQ-NEXT:    vmovdqa32 %zmm23, %zmm8 {%k1}15228; AVX512DQ-NEXT:    vmovdqa64 %zmm8, %zmm2015229; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]15230; AVX512DQ-NEXT:    vpermt2d %zmm2, %zmm8, %zmm115231; AVX512DQ-NEXT:    vpermt2d %zmm10, %zmm15, %zmm115232; AVX512DQ-NEXT:    vmovdqa32 %zmm12, %zmm1 {%k1}15233; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,1,2,3,4,5,23,0,8,9,10,11,12,24,0,15]15234; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm3, %zmm815235; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,1,2,3,25,0,6,7,8,9,10,26,0,13,14,15]15236; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm11, %zmm015237; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,1,27,0,4,5,6,7,8,28,0,11,12,13,14,15]15238; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm13, %zmm1115239; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm12 = [29,0,2,3,4,5,6,30,0,9,10,11,12,13,31,0]15240; AVX512DQ-NEXT:    vpermi2d %zmm2, %zmm14, %zmm1215241; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [22,1,2,3,4,5,6,23,8,9,10,11,12,13,24,15]15242; AVX512DQ-NEXT:    vpermi2d %zmm10, %zmm8, %zmm215243; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,1,2,3,4,25,6,7,8,9,10,11,26,13,14,15]15244; AVX512DQ-NEXT:    vpermi2d %zmm10, %zmm0, %zmm815245; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,1,2,27,4,5,6,7,8,9,28,11,12,13,14,15]15246; AVX512DQ-NEXT:    vpermi2d %zmm10, %zmm11, %zmm015247; AVX512DQ-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,29,2,3,4,5,6,7,30,9,10,11,12,13,14,31]15248; AVX512DQ-NEXT:    vpermi2d %zmm10, %zmm12, %zmm1115249; AVX512DQ-NEXT:    movq {{[0-9]+}}(%rsp), %rax15250; AVX512DQ-NEXT:    vmovdqa64 %zmm1, 1472(%rax)15251; AVX512DQ-NEXT:    vmovdqa64 %zmm18, 1408(%rax)15252; AVX512DQ-NEXT:    vmovdqa64 %zmm9, 1344(%rax)15253; AVX512DQ-NEXT:    vmovdqa64 %zmm17, 1280(%rax)15254; AVX512DQ-NEXT:    vmovdqa64 %zmm30, 1216(%rax)15255; AVX512DQ-NEXT:    vmovdqa64 %zmm6, 1152(%rax)15256; AVX512DQ-NEXT:    vmovdqa64 %zmm7, 1088(%rax)15257; AVX512DQ-NEXT:    vmovdqa64 %zmm20, 1024(%rax)15258; AVX512DQ-NEXT:    vmovdqa64 %zmm24, 960(%rax)15259; AVX512DQ-NEXT:    vmovdqa64 %zmm19, 896(%rax)15260; AVX512DQ-NEXT:    vmovdqa64 %zmm5, 832(%rax)15261; AVX512DQ-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15262; AVX512DQ-NEXT:    vmovaps %zmm1, 768(%rax)15263; AVX512DQ-NEXT:    vmovdqa64 %zmm25, 704(%rax)15264; AVX512DQ-NEXT:    vmovdqa64 %zmm26, 640(%rax)15265; AVX512DQ-NEXT:    vmovdqa64 %zmm21, 576(%rax)15266; AVX512DQ-NEXT:    vmovdqa64 %zmm4, 512(%rax)15267; AVX512DQ-NEXT:    vmovdqa64 %zmm31, 448(%rax)15268; AVX512DQ-NEXT:    vmovdqa64 %zmm22, 384(%rax)15269; AVX512DQ-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15270; AVX512DQ-NEXT:    vmovaps %zmm1, 320(%rax)15271; AVX512DQ-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15272; AVX512DQ-NEXT:    vmovaps %zmm1, 256(%rax)15273; AVX512DQ-NEXT:    vmovups (%rsp), %zmm1 # 64-byte Reload15274; AVX512DQ-NEXT:    vmovaps %zmm1, 192(%rax)15275; AVX512DQ-NEXT:    vmovdqa64 %zmm16, 128(%rax)15276; AVX512DQ-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15277; AVX512DQ-NEXT:    vmovaps %zmm1, 64(%rax)15278; AVX512DQ-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15279; AVX512DQ-NEXT:    vmovaps %zmm1, (%rax)15280; AVX512DQ-NEXT:    vmovdqa64 %zmm11, 1728(%rax)15281; AVX512DQ-NEXT:    vmovdqa64 %zmm0, 1664(%rax)15282; AVX512DQ-NEXT:    vmovdqa64 %zmm8, 1600(%rax)15283; AVX512DQ-NEXT:    vmovdqa64 %zmm2, 1536(%rax)15284; AVX512DQ-NEXT:    addq $3080, %rsp # imm = 0xC0815285; AVX512DQ-NEXT:    vzeroupper15286; AVX512DQ-NEXT:    retq15287;15288; AVX512DQ-FCP-LABEL: store_i32_stride7_vf64:15289; AVX512DQ-FCP:       # %bb.0:15290; AVX512DQ-FCP-NEXT:    subq $3080, %rsp # imm = 0xC0815291; AVX512DQ-FCP-NEXT:    vmovdqa64 (%rdx), %zmm315292; AVX512DQ-FCP-NEXT:    vmovdqa64 (%rcx), %zmm215293; AVX512DQ-FCP-NEXT:    vmovdqa64 (%r8), %zmm015294; AVX512DQ-FCP-NEXT:    vmovdqa64 64(%r8), %zmm2515295; AVX512DQ-FCP-NEXT:    vmovdqa64 128(%r8), %zmm2215296; AVX512DQ-FCP-NEXT:    vmovdqa64 (%r9), %zmm615297; AVX512DQ-FCP-NEXT:    vmovdqa64 64(%r9), %zmm515298; AVX512DQ-FCP-NEXT:    vmovdqa64 128(%r9), %zmm415299; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,0,0,16,0,0,0,0,0,1,17,0,0,0,0,0]15300; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm3, %zmm715301; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm8, %zmm715302; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15303; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]15304; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, %zmm715305; AVX512DQ-FCP-NEXT:    vpermt2d %zmm6, %zmm10, %zmm715306; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15307; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [2,18,0,0,0,0,0,3,19,0,0,0,0,0,4,20]15308; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm3, %zmm115309; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm9, %zmm115310; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15311; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]15312; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, %zmm715313; AVX512DQ-FCP-NEXT:    vpermt2d %zmm6, %zmm11, %zmm715314; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15315; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]15316; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, %zmm715317; AVX512DQ-FCP-NEXT:    vpermt2d %zmm6, %zmm1, %zmm715318; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15319; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm1, %zmm715320; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,0,0,0,0,7,23,0,0,0,0,0,8,24,0,0]15321; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, %zmm1215322; AVX512DQ-FCP-NEXT:    vpermt2d %zmm6, %zmm1, %zmm1215323; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15324; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm1, %zmm1215325; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,0,0,9,25,0,0,0,0,0,10,26,0,0,0,0]15326; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, %zmm1315327; AVX512DQ-FCP-NEXT:    vpermt2d %zmm6, %zmm1, %zmm1315328; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15329; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm1, %zmm1315330; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,11,27,0,0,0,0,0,12,28,0,0,0,0,0,13]15331; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, %zmm1415332; AVX512DQ-FCP-NEXT:    vpermt2d %zmm6, %zmm1, %zmm1415333; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15334; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm1, %zmm1415335; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [13,0,0,0,0,0,30,14,0,0,0,0,0,31,15,0]15336; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm1, %zmm615337; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15338; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm25, %zmm015339; AVX512DQ-FCP-NEXT:    vpermt2d %zmm5, %zmm10, %zmm015340; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15341; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm25, %zmm015342; AVX512DQ-FCP-NEXT:    vpermt2d %zmm5, %zmm11, %zmm015343; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15344; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm25, %zmm015345; AVX512DQ-FCP-NEXT:    vpermt2d %zmm5, %zmm7, %zmm015346; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15347; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm25, %zmm015348; AVX512DQ-FCP-NEXT:    vpermt2d %zmm5, %zmm12, %zmm015349; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15350; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm25, %zmm015351; AVX512DQ-FCP-NEXT:    vpermt2d %zmm5, %zmm13, %zmm015352; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15353; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm25, %zmm015354; AVX512DQ-FCP-NEXT:    vpermt2d %zmm5, %zmm14, %zmm015355; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15356; AVX512DQ-FCP-NEXT:    vpermt2d %zmm25, %zmm1, %zmm515357; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15358; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm22, %zmm015359; AVX512DQ-FCP-NEXT:    vpermt2d %zmm4, %zmm10, %zmm015360; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15361; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm22, %zmm015362; AVX512DQ-FCP-NEXT:    vpermt2d %zmm4, %zmm11, %zmm015363; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15364; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm22, %zmm015365; AVX512DQ-FCP-NEXT:    vpermt2d %zmm4, %zmm7, %zmm015366; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15367; AVX512DQ-FCP-NEXT:    vpermi2d %zmm4, %zmm22, %zmm1215368; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15369; AVX512DQ-FCP-NEXT:    vpermi2d %zmm4, %zmm22, %zmm1315370; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15371; AVX512DQ-FCP-NEXT:    vpermi2d %zmm4, %zmm22, %zmm1415372; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15373; AVX512DQ-FCP-NEXT:    vpermt2d %zmm22, %zmm1, %zmm415374; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15375; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,5,21,0,0,0,0,0,6,22,0,0]15376; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm3, %zmm115377; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm0, %zmm115378; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15379; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,7,23,0,0,0,0,0,8,24,0,0,0,0]15380; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm3, %zmm115381; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm11, %zmm115382; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15383; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm30 = [0,9,25,0,0,0,0,0,10,26,0,0,0,0,0,11]15384; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm3, %zmm115385; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm30, %zmm115386; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15387; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [11,0,0,0,0,0,28,12,0,0,0,0,0,29,13,0]15388; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm2, %zmm115389; AVX512DQ-FCP-NEXT:    vpermt2d %zmm3, %zmm4, %zmm115390; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15391; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,0,0,0,14,30,0,0,0,0,0,15,31,0,0,0]15392; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm1, %zmm315393; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15394; AVX512DQ-FCP-NEXT:    vmovdqa64 64(%rdx), %zmm2415395; AVX512DQ-FCP-NEXT:    vmovdqa64 64(%rcx), %zmm215396; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm24, %zmm315397; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm8, %zmm315398; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15399; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm24, %zmm315400; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm9, %zmm315401; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15402; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm24, %zmm315403; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm0, %zmm315404; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15405; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm24, %zmm315406; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm11, %zmm315407; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15408; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm24, %zmm315409; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm30, %zmm315410; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15411; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm2, %zmm315412; AVX512DQ-FCP-NEXT:    vpermt2d %zmm24, %zmm4, %zmm315413; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15414; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm1, %zmm2415415; AVX512DQ-FCP-NEXT:    vmovdqa64 192(%rdx), %zmm2915416; AVX512DQ-FCP-NEXT:    vmovdqa64 192(%rcx), %zmm215417; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm29, %zmm2815418; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm11, %zmm2815419; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm29, %zmm315420; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm30, %zmm315421; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15422; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm2, %zmm315423; AVX512DQ-FCP-NEXT:    vpermt2d %zmm29, %zmm4, %zmm315424; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15425; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm29, %zmm315426; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm1, %zmm315427; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15428; AVX512DQ-FCP-NEXT:    vmovdqa64 128(%rdx), %zmm2115429; AVX512DQ-FCP-NEXT:    vmovdqa64 128(%rcx), %zmm315430; AVX512DQ-FCP-NEXT:    vpermi2d %zmm3, %zmm21, %zmm1115431; AVX512DQ-FCP-NEXT:    vpermi2d %zmm3, %zmm21, %zmm3015432; AVX512DQ-FCP-NEXT:    vpermi2d %zmm21, %zmm3, %zmm415433; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15434; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm21, %zmm615435; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm21, %zmm515436; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm21, %zmm415437; AVX512DQ-FCP-NEXT:    vpermt2d %zmm3, %zmm1, %zmm2115438; AVX512DQ-FCP-NEXT:    vpermt2d %zmm3, %zmm8, %zmm615439; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15440; AVX512DQ-FCP-NEXT:    vpermt2d %zmm3, %zmm9, %zmm515441; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15442; AVX512DQ-FCP-NEXT:    vpermt2d %zmm3, %zmm0, %zmm415443; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15444; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm29, %zmm815445; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15446; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm29, %zmm915447; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15448; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm0, %zmm2915449; AVX512DQ-FCP-NEXT:    vmovdqa64 (%rdi), %zmm2215450; AVX512DQ-FCP-NEXT:    vmovdqa64 (%rsi), %zmm015451; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [0,16,0,0,0,0,0,1,17,0,0,0,0,0,2,18]15452; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm22, %zmm115453; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm9, %zmm115454; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15455; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,0,0,0,0,3,19,0,0,0,0,0,4,20,0,0]15456; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm22, %zmm115457; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm20, %zmm115458; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15459; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm27 = [0,0,0,5,21,0,0,0,0,0,6,22,0,0,0,0]15460; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm22, %zmm115461; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm27, %zmm115462; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15463; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,7,23,0,0,0,0,0,8,24,0,0,0,0,0,9]15464; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm22, %zmm115465; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm7, %zmm115466; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm1, (%rsp) # 64-byte Spill15467; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [9,0,0,0,0,0,26,10,0,0,0,0,0,27,11,0]15468; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, %zmm315469; AVX512DQ-FCP-NEXT:    vpermt2d %zmm22, %zmm6, %zmm315470; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,0,0,0,12,28,0,0,0,0,0,13,29,0,0,0]15471; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm22, %zmm1815472; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm1, %zmm1815473; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,0,14,30,0,0,0,0,0,15,31,0,0,0,0,0]15474; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm8, %zmm2215475; AVX512DQ-FCP-NEXT:    vmovdqa64 64(%rdi), %zmm515476; AVX512DQ-FCP-NEXT:    vmovdqa64 64(%rsi), %zmm015477; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm5, %zmm3115478; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm9, %zmm3115479; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm5, %zmm215480; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm20, %zmm215481; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15482; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm5, %zmm215483; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm27, %zmm215484; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15485; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm5, %zmm2615486; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm7, %zmm2615487; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, %zmm2515488; AVX512DQ-FCP-NEXT:    vpermt2d %zmm5, %zmm6, %zmm2515489; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm5, %zmm1015490; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm1, %zmm1015491; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm8, %zmm515492; AVX512DQ-FCP-NEXT:    vmovdqa64 192(%rdi), %zmm1215493; AVX512DQ-FCP-NEXT:    vmovdqa64 192(%rsi), %zmm1315494; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm12, %zmm1615495; AVX512DQ-FCP-NEXT:    vpermt2d %zmm13, %zmm7, %zmm1615496; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm13, %zmm1415497; AVX512DQ-FCP-NEXT:    vpermt2d %zmm12, %zmm6, %zmm1415498; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm12, %zmm215499; AVX512DQ-FCP-NEXT:    vpermt2d %zmm13, %zmm1, %zmm215500; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm12, %zmm1515501; AVX512DQ-FCP-NEXT:    vpermt2d %zmm13, %zmm8, %zmm1515502; AVX512DQ-FCP-NEXT:    vmovdqa64 128(%rdi), %zmm1715503; AVX512DQ-FCP-NEXT:    vmovdqa64 128(%rsi), %zmm015504; AVX512DQ-FCP-NEXT:    vpermi2d %zmm0, %zmm17, %zmm715505; AVX512DQ-FCP-NEXT:    vpermi2d %zmm17, %zmm0, %zmm615506; AVX512DQ-FCP-NEXT:    vpermi2d %zmm0, %zmm17, %zmm115507; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm17, %zmm1915508; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm17, %zmm415509; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm17, %zmm2315510; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm8, %zmm1715511; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm9, %zmm1915512; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm20, %zmm415513; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15514; AVX512DQ-FCP-NEXT:    vpermt2d %zmm0, %zmm27, %zmm2315515; AVX512DQ-FCP-NEXT:    vpermi2d %zmm13, %zmm12, %zmm915516; AVX512DQ-FCP-NEXT:    vpermi2d %zmm13, %zmm12, %zmm2015517; AVX512DQ-FCP-NEXT:    vpermt2d %zmm13, %zmm27, %zmm1215518; AVX512DQ-FCP-NEXT:    movw $3096, %ax # imm = 0xC1815519; AVX512DQ-FCP-NEXT:    kmovw %eax, %k115520; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm28, %zmm16 {%k1}15521; AVX512DQ-FCP-NEXT:    movw $-31994, %ax # imm = 0x830615522; AVX512DQ-FCP-NEXT:    kmovw %eax, %k215523; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15524; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm14 {%k2}15525; AVX512DQ-FCP-NEXT:    vmovdqu64 (%rsp), %zmm13 # 64-byte Reload15526; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15527; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm13 {%k1}15528; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15529; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm26 {%k1}15530; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm11, %zmm7 {%k1}15531; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax15532; AVX512DQ-FCP-NEXT:    vmovdqa64 (%rax), %zmm2815533; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [22,0,0,0,0,5,6,23,0,0,0,0,12,13,24,0]15534; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm8 # 64-byte Reload15535; AVX512DQ-FCP-NEXT:    vpermt2d %zmm28, %zmm0, %zmm815536; AVX512DQ-FCP-NEXT:    movw $28897, %cx # imm = 0x70E115537; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k115538; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm8, %zmm13 {%k1}15539; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm13, (%rsp) # 64-byte Spill15540; AVX512DQ-FCP-NEXT:    vmovdqa64 64(%rax), %zmm815541; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload15542; AVX512DQ-FCP-NEXT:    vpermt2d %zmm8, %zmm0, %zmm1115543; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm11, %zmm26 {%k1}15544; AVX512DQ-FCP-NEXT:    vmovdqa64 128(%rax), %zmm2715545; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload15546; AVX512DQ-FCP-NEXT:    vpermt2d %zmm27, %zmm0, %zmm1115547; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm11, %zmm7 {%k1}15548; AVX512DQ-FCP-NEXT:    movw $6192, %cx # imm = 0x183015549; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k115550; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15551; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm2, %zmm0 {%k1}15552; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15553; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15554; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm15 {%k1}15555; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15556; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k2}15557; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15558; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm25 {%k2}15559; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm30, %zmm6 {%k2}15560; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,3,4,25,0,0,0,0,10,11,26,0,0,0]15561; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload15562; AVX512DQ-FCP-NEXT:    vpermt2d %zmm28, %zmm0, %zmm215563; AVX512DQ-FCP-NEXT:    movw $7224, %cx # imm = 0x1C3815564; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k215565; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm2, %zmm3 {%k2}15566; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15567; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload15568; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm18, %zmm11 {%k1}15569; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload15570; AVX512DQ-FCP-NEXT:    vpermt2d %zmm8, %zmm0, %zmm215571; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm2, %zmm25 {%k2}15572; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload15573; AVX512DQ-FCP-NEXT:    vpermt2d %zmm27, %zmm0, %zmm215574; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm2, %zmm6 {%k2}15575; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,1,2,27,0,0,0,0,8,9,28,0,0,0,0,15]15576; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload15577; AVX512DQ-FCP-NEXT:    vpermt2d %zmm28, %zmm0, %zmm215578; AVX512DQ-FCP-NEXT:    movw $-30962, %cx # imm = 0x870E15579; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k215580; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm2, %zmm11 {%k2}15581; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15582; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload15583; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm10, %zmm11 {%k1}15584; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload15585; AVX512DQ-FCP-NEXT:    vpermt2d %zmm8, %zmm0, %zmm215586; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm2, %zmm11 {%k2}15587; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15588; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm30 # 64-byte Reload15589; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm1, %zmm30 {%k1}15590; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15591; AVX512DQ-FCP-NEXT:    vpermt2d %zmm27, %zmm0, %zmm115592; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm1, %zmm30 {%k2}15593; AVX512DQ-FCP-NEXT:    movw $1548, %cx # imm = 0x60C15594; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k215595; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15596; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload15597; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm2 {%k2}15598; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15599; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm22 {%k1}15600; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm24, %zmm5 {%k1}15601; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm21, %zmm17 {%k1}15602; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,29,0,0,0,0,6,7,30,0,0,0,0,13,14,31]15603; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15604; AVX512DQ-FCP-NEXT:    vpermt2d %zmm28, %zmm0, %zmm115605; AVX512DQ-FCP-NEXT:    movw $-7741, %cx # imm = 0xE1C315606; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k115607; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm1, %zmm22 {%k1}15608; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15609; AVX512DQ-FCP-NEXT:    vpermt2d %zmm8, %zmm0, %zmm115610; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm1, %zmm5 {%k1}15611; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15612; AVX512DQ-FCP-NEXT:    vpermt2d %zmm27, %zmm0, %zmm115613; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm1, %zmm17 {%k1}15614; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,4,5,16,0,0,0,0,11,12,17,0,0]15615; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15616; AVX512DQ-FCP-NEXT:    vpermt2d %zmm28, %zmm0, %zmm115617; AVX512DQ-FCP-NEXT:    movw $14448, %cx # imm = 0x387015618; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k315619; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm1, %zmm2 {%k3}15620; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15621; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15622; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm1, %zmm31 {%k2}15623; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15624; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm1, %zmm19 {%k2}15625; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15626; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm1, %zmm9 {%k2}15627; AVX512DQ-FCP-NEXT:    movw $12384, %cx # imm = 0x306015628; AVX512DQ-FCP-NEXT:    kmovw %ecx, %k115629; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm3 # 64-byte Reload15630; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15631; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm1, %zmm3 {%k1}15632; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15633; AVX512DQ-FCP-NEXT:    vpermt2d %zmm8, %zmm0, %zmm115634; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm1, %zmm31 {%k3}15635; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15636; AVX512DQ-FCP-NEXT:    vpermt2d %zmm27, %zmm0, %zmm115637; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm1, %zmm19 {%k3}15638; AVX512DQ-FCP-NEXT:    vmovdqa64 192(%r8), %zmm115639; AVX512DQ-FCP-NEXT:    vmovdqa64 192(%r9), %zmm215640; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]15641; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm1115642; AVX512DQ-FCP-NEXT:    vmovdqa64 192(%rax), %zmm1015643; AVX512DQ-FCP-NEXT:    vpermt2d %zmm10, %zmm0, %zmm1115644; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm11, %zmm9 {%k3}15645; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,2,3,18,0,0,0,0,9,10,19,0,0,0,0]15646; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload15647; AVX512DQ-FCP-NEXT:    vpermt2d %zmm28, %zmm0, %zmm1115648; AVX512DQ-FCP-NEXT:    movw $3612, %ax # imm = 0xE1C15649; AVX512DQ-FCP-NEXT:    kmovw %eax, %k215650; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm11, %zmm3 {%k2}15651; AVX512DQ-FCP-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15652; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm4 # 64-byte Reload15653; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload15654; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm11, %zmm4 {%k1}15655; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload15656; AVX512DQ-FCP-NEXT:    vpermt2d %zmm8, %zmm0, %zmm1115657; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm11, %zmm4 {%k2}15658; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm24 # 64-byte Reload15659; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm3 # 64-byte Reload15660; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm3, %zmm24 {%k1}15661; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload15662; AVX512DQ-FCP-NEXT:    vpermt2d %zmm27, %zmm0, %zmm1115663; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm11, %zmm24 {%k2}15664; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm18 # 64-byte Reload15665; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm20, %zmm18 {%k1}15666; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]15667; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm1, %zmm1315668; AVX512DQ-FCP-NEXT:    vpermt2d %zmm10, %zmm0, %zmm1315669; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm13, %zmm18 {%k2}15670; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm3 = [0,1,2,3,4,23,0,0,8,9,10,11,24,0,0,15]15671; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm16, %zmm315672; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,1,2,25,0,0,6,7,8,9,26,0,0,13,14,15]15673; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm14, %zmm1115674; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm13 = [0,27,0,0,4,5,6,7,28,0,0,11,12,13,14,29]15675; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm14 # 64-byte Reload15676; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm14, %zmm1315677; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm14 = [0,0,2,3,4,5,30,0,0,9,10,11,12,31,0,0]15678; AVX512DQ-FCP-NEXT:    vpermi2d %zmm1, %zmm15, %zmm1415679; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm15 # 64-byte Reload15680; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15681; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm15, %zmm0 {%k1}15682; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm15 = [0,1,20,0,0,0,0,7,8,21,0,0,0,0,14,15]15683; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm16 # 64-byte Reload15684; AVX512DQ-FCP-NEXT:    vpermt2d %zmm28, %zmm15, %zmm1615685; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm21 # 64-byte Reload15686; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm28 # 64-byte Reload15687; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm21, %zmm28 {%k1}15688; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm21 # 64-byte Reload15689; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm21, %zmm23 {%k1}15690; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm29, %zmm12 {%k1}15691; AVX512DQ-FCP-NEXT:    movw $15480, %ax # imm = 0x3C7815692; AVX512DQ-FCP-NEXT:    kmovw %eax, %k115693; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm0, %zmm16 {%k1}15694; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm21 # 64-byte Reload15695; AVX512DQ-FCP-NEXT:    vpermt2d %zmm8, %zmm15, %zmm2115696; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm28, %zmm21 {%k1}15697; AVX512DQ-FCP-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm8 # 64-byte Reload15698; AVX512DQ-FCP-NEXT:    vpermt2d %zmm27, %zmm15, %zmm815699; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm23, %zmm8 {%k1}15700; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm8, %zmm2015701; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]15702; AVX512DQ-FCP-NEXT:    vpermt2d %zmm2, %zmm8, %zmm115703; AVX512DQ-FCP-NEXT:    vpermt2d %zmm10, %zmm15, %zmm115704; AVX512DQ-FCP-NEXT:    vmovdqa32 %zmm12, %zmm1 {%k1}15705; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,1,2,3,4,5,23,0,8,9,10,11,12,24,0,15]15706; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm3, %zmm815707; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,1,2,3,25,0,6,7,8,9,10,26,0,13,14,15]15708; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm11, %zmm015709; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,1,27,0,4,5,6,7,8,28,0,11,12,13,14,15]15710; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm13, %zmm1115711; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm12 = [29,0,2,3,4,5,6,30,0,9,10,11,12,13,31,0]15712; AVX512DQ-FCP-NEXT:    vpermi2d %zmm2, %zmm14, %zmm1215713; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm2 = [22,1,2,3,4,5,6,23,8,9,10,11,12,13,24,15]15714; AVX512DQ-FCP-NEXT:    vpermi2d %zmm10, %zmm8, %zmm215715; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,1,2,3,4,25,6,7,8,9,10,11,26,13,14,15]15716; AVX512DQ-FCP-NEXT:    vpermi2d %zmm10, %zmm0, %zmm815717; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,1,2,27,4,5,6,7,8,9,28,11,12,13,14,15]15718; AVX512DQ-FCP-NEXT:    vpermi2d %zmm10, %zmm11, %zmm015719; AVX512DQ-FCP-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,29,2,3,4,5,6,7,30,9,10,11,12,13,14,31]15720; AVX512DQ-FCP-NEXT:    vpermi2d %zmm10, %zmm12, %zmm1115721; AVX512DQ-FCP-NEXT:    movq {{[0-9]+}}(%rsp), %rax15722; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm1, 1472(%rax)15723; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm18, 1408(%rax)15724; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm9, 1344(%rax)15725; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm17, 1280(%rax)15726; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm30, 1216(%rax)15727; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm6, 1152(%rax)15728; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm7, 1088(%rax)15729; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm20, 1024(%rax)15730; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm24, 960(%rax)15731; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm19, 896(%rax)15732; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm5, 832(%rax)15733; AVX512DQ-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15734; AVX512DQ-FCP-NEXT:    vmovaps %zmm1, 768(%rax)15735; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm25, 704(%rax)15736; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm26, 640(%rax)15737; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm21, 576(%rax)15738; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm4, 512(%rax)15739; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm31, 448(%rax)15740; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm22, 384(%rax)15741; AVX512DQ-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15742; AVX512DQ-FCP-NEXT:    vmovaps %zmm1, 320(%rax)15743; AVX512DQ-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15744; AVX512DQ-FCP-NEXT:    vmovaps %zmm1, 256(%rax)15745; AVX512DQ-FCP-NEXT:    vmovups (%rsp), %zmm1 # 64-byte Reload15746; AVX512DQ-FCP-NEXT:    vmovaps %zmm1, 192(%rax)15747; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm16, 128(%rax)15748; AVX512DQ-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15749; AVX512DQ-FCP-NEXT:    vmovaps %zmm1, 64(%rax)15750; AVX512DQ-FCP-NEXT:    vmovups {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload15751; AVX512DQ-FCP-NEXT:    vmovaps %zmm1, (%rax)15752; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm11, 1728(%rax)15753; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm0, 1664(%rax)15754; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm8, 1600(%rax)15755; AVX512DQ-FCP-NEXT:    vmovdqa64 %zmm2, 1536(%rax)15756; AVX512DQ-FCP-NEXT:    addq $3080, %rsp # imm = 0xC0815757; AVX512DQ-FCP-NEXT:    vzeroupper15758; AVX512DQ-FCP-NEXT:    retq15759;15760; AVX512BW-LABEL: store_i32_stride7_vf64:15761; AVX512BW:       # %bb.0:15762; AVX512BW-NEXT:    subq $3080, %rsp # imm = 0xC0815763; AVX512BW-NEXT:    vmovdqa64 (%rdx), %zmm315764; AVX512BW-NEXT:    vmovdqa64 (%rcx), %zmm215765; AVX512BW-NEXT:    vmovdqa64 (%r8), %zmm015766; AVX512BW-NEXT:    vmovdqa64 64(%r8), %zmm2515767; AVX512BW-NEXT:    vmovdqa64 128(%r8), %zmm2215768; AVX512BW-NEXT:    vmovdqa64 (%r9), %zmm615769; AVX512BW-NEXT:    vmovdqa64 64(%r9), %zmm515770; AVX512BW-NEXT:    vmovdqa64 128(%r9), %zmm415771; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,0,0,16,0,0,0,0,0,1,17,0,0,0,0,0]15772; AVX512BW-NEXT:    vmovdqa64 %zmm3, %zmm715773; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm8, %zmm715774; AVX512BW-NEXT:    vmovdqu64 %zmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15775; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm10 = [0,0,0,0,0,16,0,0,0,0,0,1,17,0,0,0]15776; AVX512BW-NEXT:    vmovdqa64 %zmm0, %zmm715777; AVX512BW-NEXT:    vpermt2d %zmm6, %zmm10, %zmm715778; AVX512BW-NEXT:    vmovdqu64 %zmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15779; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [2,18,0,0,0,0,0,3,19,0,0,0,0,0,4,20]15780; AVX512BW-NEXT:    vmovdqa64 %zmm3, %zmm115781; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm9, %zmm115782; AVX512BW-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15783; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,2,18,0,0,0,0,0,3,19,0,0,0,0,0]15784; AVX512BW-NEXT:    vmovdqa64 %zmm0, %zmm715785; AVX512BW-NEXT:    vpermt2d %zmm6, %zmm11, %zmm715786; AVX512BW-NEXT:    vmovdqu64 %zmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15787; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [4,20,0,0,0,0,0,5,21,0,0,0,0,0,6,22]15788; AVX512BW-NEXT:    vmovdqa64 %zmm0, %zmm715789; AVX512BW-NEXT:    vpermt2d %zmm6, %zmm1, %zmm715790; AVX512BW-NEXT:    vmovdqu64 %zmm7, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15791; AVX512BW-NEXT:    vmovdqa64 %zmm1, %zmm715792; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,0,0,0,0,7,23,0,0,0,0,0,8,24,0,0]15793; AVX512BW-NEXT:    vmovdqa64 %zmm0, %zmm1215794; AVX512BW-NEXT:    vpermt2d %zmm6, %zmm1, %zmm1215795; AVX512BW-NEXT:    vmovdqu64 %zmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15796; AVX512BW-NEXT:    vmovdqa64 %zmm1, %zmm1215797; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,0,0,9,25,0,0,0,0,0,10,26,0,0,0,0]15798; AVX512BW-NEXT:    vmovdqa64 %zmm0, %zmm1315799; AVX512BW-NEXT:    vpermt2d %zmm6, %zmm1, %zmm1315800; AVX512BW-NEXT:    vmovdqu64 %zmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15801; AVX512BW-NEXT:    vmovdqa64 %zmm1, %zmm1315802; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,11,27,0,0,0,0,0,12,28,0,0,0,0,0,13]15803; AVX512BW-NEXT:    vmovdqa64 %zmm0, %zmm1415804; AVX512BW-NEXT:    vpermt2d %zmm6, %zmm1, %zmm1415805; AVX512BW-NEXT:    vmovdqu64 %zmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15806; AVX512BW-NEXT:    vmovdqa64 %zmm1, %zmm1415807; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [13,0,0,0,0,0,30,14,0,0,0,0,0,31,15,0]15808; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm1, %zmm615809; AVX512BW-NEXT:    vmovdqu64 %zmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15810; AVX512BW-NEXT:    vmovdqa64 %zmm25, %zmm015811; AVX512BW-NEXT:    vpermt2d %zmm5, %zmm10, %zmm015812; AVX512BW-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15813; AVX512BW-NEXT:    vmovdqa64 %zmm25, %zmm015814; AVX512BW-NEXT:    vpermt2d %zmm5, %zmm11, %zmm015815; AVX512BW-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15816; AVX512BW-NEXT:    vmovdqa64 %zmm25, %zmm015817; AVX512BW-NEXT:    vpermt2d %zmm5, %zmm7, %zmm015818; AVX512BW-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15819; AVX512BW-NEXT:    vmovdqa64 %zmm25, %zmm015820; AVX512BW-NEXT:    vpermt2d %zmm5, %zmm12, %zmm015821; AVX512BW-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15822; AVX512BW-NEXT:    vmovdqa64 %zmm25, %zmm015823; AVX512BW-NEXT:    vpermt2d %zmm5, %zmm13, %zmm015824; AVX512BW-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15825; AVX512BW-NEXT:    vmovdqa64 %zmm25, %zmm015826; AVX512BW-NEXT:    vpermt2d %zmm5, %zmm14, %zmm015827; AVX512BW-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15828; AVX512BW-NEXT:    vpermt2d %zmm25, %zmm1, %zmm515829; AVX512BW-NEXT:    vmovdqu64 %zmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15830; AVX512BW-NEXT:    vmovdqa64 %zmm22, %zmm015831; AVX512BW-NEXT:    vpermt2d %zmm4, %zmm10, %zmm015832; AVX512BW-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15833; AVX512BW-NEXT:    vmovdqa64 %zmm22, %zmm015834; AVX512BW-NEXT:    vpermt2d %zmm4, %zmm11, %zmm015835; AVX512BW-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15836; AVX512BW-NEXT:    vmovdqa64 %zmm22, %zmm015837; AVX512BW-NEXT:    vpermt2d %zmm4, %zmm7, %zmm015838; AVX512BW-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15839; AVX512BW-NEXT:    vpermi2d %zmm4, %zmm22, %zmm1215840; AVX512BW-NEXT:    vmovdqu64 %zmm12, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15841; AVX512BW-NEXT:    vpermi2d %zmm4, %zmm22, %zmm1315842; AVX512BW-NEXT:    vmovdqu64 %zmm13, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15843; AVX512BW-NEXT:    vpermi2d %zmm4, %zmm22, %zmm1415844; AVX512BW-NEXT:    vmovdqu64 %zmm14, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15845; AVX512BW-NEXT:    vpermt2d %zmm22, %zmm1, %zmm415846; AVX512BW-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15847; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,0,5,21,0,0,0,0,0,6,22,0,0]15848; AVX512BW-NEXT:    vmovdqa64 %zmm3, %zmm115849; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm0, %zmm115850; AVX512BW-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15851; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm11 = [0,0,0,7,23,0,0,0,0,0,8,24,0,0,0,0]15852; AVX512BW-NEXT:    vmovdqa64 %zmm3, %zmm115853; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm11, %zmm115854; AVX512BW-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15855; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm30 = [0,9,25,0,0,0,0,0,10,26,0,0,0,0,0,11]15856; AVX512BW-NEXT:    vmovdqa64 %zmm3, %zmm115857; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm30, %zmm115858; AVX512BW-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15859; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm4 = [11,0,0,0,0,0,28,12,0,0,0,0,0,29,13,0]15860; AVX512BW-NEXT:    vmovdqa64 %zmm2, %zmm115861; AVX512BW-NEXT:    vpermt2d %zmm3, %zmm4, %zmm115862; AVX512BW-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15863; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,0,0,0,14,30,0,0,0,0,0,15,31,0,0,0]15864; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm1, %zmm315865; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15866; AVX512BW-NEXT:    vmovdqa64 64(%rdx), %zmm2415867; AVX512BW-NEXT:    vmovdqa64 64(%rcx), %zmm215868; AVX512BW-NEXT:    vmovdqa64 %zmm24, %zmm315869; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm8, %zmm315870; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15871; AVX512BW-NEXT:    vmovdqa64 %zmm24, %zmm315872; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm9, %zmm315873; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15874; AVX512BW-NEXT:    vmovdqa64 %zmm24, %zmm315875; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm0, %zmm315876; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15877; AVX512BW-NEXT:    vmovdqa64 %zmm24, %zmm315878; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm11, %zmm315879; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15880; AVX512BW-NEXT:    vmovdqa64 %zmm24, %zmm315881; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm30, %zmm315882; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15883; AVX512BW-NEXT:    vmovdqa64 %zmm2, %zmm315884; AVX512BW-NEXT:    vpermt2d %zmm24, %zmm4, %zmm315885; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15886; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm1, %zmm2415887; AVX512BW-NEXT:    vmovdqa64 192(%rdx), %zmm2915888; AVX512BW-NEXT:    vmovdqa64 192(%rcx), %zmm215889; AVX512BW-NEXT:    vmovdqa64 %zmm29, %zmm2815890; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm11, %zmm2815891; AVX512BW-NEXT:    vmovdqa64 %zmm29, %zmm315892; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm30, %zmm315893; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15894; AVX512BW-NEXT:    vmovdqa64 %zmm2, %zmm315895; AVX512BW-NEXT:    vpermt2d %zmm29, %zmm4, %zmm315896; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15897; AVX512BW-NEXT:    vmovdqa64 %zmm29, %zmm315898; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm1, %zmm315899; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15900; AVX512BW-NEXT:    vmovdqa64 128(%rdx), %zmm2115901; AVX512BW-NEXT:    vmovdqa64 128(%rcx), %zmm315902; AVX512BW-NEXT:    vpermi2d %zmm3, %zmm21, %zmm1115903; AVX512BW-NEXT:    vpermi2d %zmm3, %zmm21, %zmm3015904; AVX512BW-NEXT:    vpermi2d %zmm21, %zmm3, %zmm415905; AVX512BW-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15906; AVX512BW-NEXT:    vmovdqa64 %zmm21, %zmm615907; AVX512BW-NEXT:    vmovdqa64 %zmm21, %zmm515908; AVX512BW-NEXT:    vmovdqa64 %zmm21, %zmm415909; AVX512BW-NEXT:    vpermt2d %zmm3, %zmm1, %zmm2115910; AVX512BW-NEXT:    vpermt2d %zmm3, %zmm8, %zmm615911; AVX512BW-NEXT:    vmovdqu64 %zmm6, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15912; AVX512BW-NEXT:    vpermt2d %zmm3, %zmm9, %zmm515913; AVX512BW-NEXT:    vmovdqu64 %zmm5, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15914; AVX512BW-NEXT:    vpermt2d %zmm3, %zmm0, %zmm415915; AVX512BW-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15916; AVX512BW-NEXT:    vpermi2d %zmm2, %zmm29, %zmm815917; AVX512BW-NEXT:    vmovdqu64 %zmm8, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15918; AVX512BW-NEXT:    vpermi2d %zmm2, %zmm29, %zmm915919; AVX512BW-NEXT:    vmovdqu64 %zmm9, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15920; AVX512BW-NEXT:    vpermt2d %zmm2, %zmm0, %zmm2915921; AVX512BW-NEXT:    vmovdqa64 (%rdi), %zmm2215922; AVX512BW-NEXT:    vmovdqa64 (%rsi), %zmm015923; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm9 = [0,16,0,0,0,0,0,1,17,0,0,0,0,0,2,18]15924; AVX512BW-NEXT:    vmovdqa64 %zmm22, %zmm115925; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm9, %zmm115926; AVX512BW-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15927; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm20 = [0,0,0,0,0,3,19,0,0,0,0,0,4,20,0,0]15928; AVX512BW-NEXT:    vmovdqa64 %zmm22, %zmm115929; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm20, %zmm115930; AVX512BW-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15931; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm27 = [0,0,0,5,21,0,0,0,0,0,6,22,0,0,0,0]15932; AVX512BW-NEXT:    vmovdqa64 %zmm22, %zmm115933; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm27, %zmm115934; AVX512BW-NEXT:    vmovdqu64 %zmm1, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15935; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm7 = [0,7,23,0,0,0,0,0,8,24,0,0,0,0,0,9]15936; AVX512BW-NEXT:    vmovdqa64 %zmm22, %zmm115937; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm7, %zmm115938; AVX512BW-NEXT:    vmovdqu64 %zmm1, (%rsp) # 64-byte Spill15939; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm6 = [9,0,0,0,0,0,26,10,0,0,0,0,0,27,11,0]15940; AVX512BW-NEXT:    vmovdqa64 %zmm0, %zmm315941; AVX512BW-NEXT:    vpermt2d %zmm22, %zmm6, %zmm315942; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm1 = [0,0,0,0,12,28,0,0,0,0,0,13,29,0,0,0]15943; AVX512BW-NEXT:    vmovdqa64 %zmm22, %zmm1815944; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm1, %zmm1815945; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm8 = [0,0,14,30,0,0,0,0,0,15,31,0,0,0,0,0]15946; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm8, %zmm2215947; AVX512BW-NEXT:    vmovdqa64 64(%rdi), %zmm515948; AVX512BW-NEXT:    vmovdqa64 64(%rsi), %zmm015949; AVX512BW-NEXT:    vmovdqa64 %zmm5, %zmm3115950; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm9, %zmm3115951; AVX512BW-NEXT:    vmovdqa64 %zmm5, %zmm215952; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm20, %zmm215953; AVX512BW-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15954; AVX512BW-NEXT:    vmovdqa64 %zmm5, %zmm215955; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm27, %zmm215956; AVX512BW-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15957; AVX512BW-NEXT:    vmovdqa64 %zmm5, %zmm2615958; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm7, %zmm2615959; AVX512BW-NEXT:    vmovdqa64 %zmm0, %zmm2515960; AVX512BW-NEXT:    vpermt2d %zmm5, %zmm6, %zmm2515961; AVX512BW-NEXT:    vmovdqa64 %zmm5, %zmm1015962; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm1, %zmm1015963; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm8, %zmm515964; AVX512BW-NEXT:    vmovdqa64 192(%rdi), %zmm1215965; AVX512BW-NEXT:    vmovdqa64 192(%rsi), %zmm1315966; AVX512BW-NEXT:    vmovdqa64 %zmm12, %zmm1615967; AVX512BW-NEXT:    vpermt2d %zmm13, %zmm7, %zmm1615968; AVX512BW-NEXT:    vmovdqa64 %zmm13, %zmm1415969; AVX512BW-NEXT:    vpermt2d %zmm12, %zmm6, %zmm1415970; AVX512BW-NEXT:    vmovdqa64 %zmm12, %zmm215971; AVX512BW-NEXT:    vpermt2d %zmm13, %zmm1, %zmm215972; AVX512BW-NEXT:    vmovdqa64 %zmm12, %zmm1515973; AVX512BW-NEXT:    vpermt2d %zmm13, %zmm8, %zmm1515974; AVX512BW-NEXT:    vmovdqa64 128(%rdi), %zmm1715975; AVX512BW-NEXT:    vmovdqa64 128(%rsi), %zmm015976; AVX512BW-NEXT:    vpermi2d %zmm0, %zmm17, %zmm715977; AVX512BW-NEXT:    vpermi2d %zmm17, %zmm0, %zmm615978; AVX512BW-NEXT:    vpermi2d %zmm0, %zmm17, %zmm115979; AVX512BW-NEXT:    vmovdqa64 %zmm17, %zmm1915980; AVX512BW-NEXT:    vmovdqa64 %zmm17, %zmm415981; AVX512BW-NEXT:    vmovdqa64 %zmm17, %zmm2315982; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm8, %zmm1715983; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm9, %zmm1915984; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm20, %zmm415985; AVX512BW-NEXT:    vmovdqu64 %zmm4, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill15986; AVX512BW-NEXT:    vpermt2d %zmm0, %zmm27, %zmm2315987; AVX512BW-NEXT:    vpermi2d %zmm13, %zmm12, %zmm915988; AVX512BW-NEXT:    vpermi2d %zmm13, %zmm12, %zmm2015989; AVX512BW-NEXT:    vpermt2d %zmm13, %zmm27, %zmm1215990; AVX512BW-NEXT:    movw $3096, %ax # imm = 0xC1815991; AVX512BW-NEXT:    kmovd %eax, %k115992; AVX512BW-NEXT:    vmovdqa32 %zmm28, %zmm16 {%k1}15993; AVX512BW-NEXT:    movw $-31994, %ax # imm = 0x830615994; AVX512BW-NEXT:    kmovd %eax, %k215995; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15996; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm14 {%k2}15997; AVX512BW-NEXT:    vmovdqu64 (%rsp), %zmm13 # 64-byte Reload15998; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload15999; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm13 {%k1}16000; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16001; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm26 {%k1}16002; AVX512BW-NEXT:    vmovdqa32 %zmm11, %zmm7 {%k1}16003; AVX512BW-NEXT:    movq {{[0-9]+}}(%rsp), %rax16004; AVX512BW-NEXT:    vmovdqa64 (%rax), %zmm2816005; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [22,0,0,0,0,5,6,23,0,0,0,0,12,13,24,0]16006; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm8 # 64-byte Reload16007; AVX512BW-NEXT:    vpermt2d %zmm28, %zmm0, %zmm816008; AVX512BW-NEXT:    movw $28897, %cx # imm = 0x70E116009; AVX512BW-NEXT:    kmovd %ecx, %k116010; AVX512BW-NEXT:    vmovdqa32 %zmm8, %zmm13 {%k1}16011; AVX512BW-NEXT:    vmovdqu64 %zmm13, (%rsp) # 64-byte Spill16012; AVX512BW-NEXT:    vmovdqa64 64(%rax), %zmm816013; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload16014; AVX512BW-NEXT:    vpermt2d %zmm8, %zmm0, %zmm1116015; AVX512BW-NEXT:    vmovdqa32 %zmm11, %zmm26 {%k1}16016; AVX512BW-NEXT:    vmovdqa64 128(%rax), %zmm2716017; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload16018; AVX512BW-NEXT:    vpermt2d %zmm27, %zmm0, %zmm1116019; AVX512BW-NEXT:    vmovdqa32 %zmm11, %zmm7 {%k1}16020; AVX512BW-NEXT:    movw $6192, %cx # imm = 0x183016021; AVX512BW-NEXT:    kmovd %ecx, %k116022; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16023; AVX512BW-NEXT:    vmovdqa32 %zmm2, %zmm0 {%k1}16024; AVX512BW-NEXT:    vmovdqu64 %zmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16025; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16026; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm15 {%k1}16027; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16028; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm3 {%k2}16029; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16030; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm25 {%k2}16031; AVX512BW-NEXT:    vmovdqa32 %zmm30, %zmm6 {%k2}16032; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,3,4,25,0,0,0,0,10,11,26,0,0,0]16033; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload16034; AVX512BW-NEXT:    vpermt2d %zmm28, %zmm0, %zmm216035; AVX512BW-NEXT:    movw $7224, %cx # imm = 0x1C3816036; AVX512BW-NEXT:    kmovd %ecx, %k216037; AVX512BW-NEXT:    vmovdqa32 %zmm2, %zmm3 {%k2}16038; AVX512BW-NEXT:    vmovdqu64 %zmm3, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16039; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload16040; AVX512BW-NEXT:    vmovdqa32 %zmm18, %zmm11 {%k1}16041; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload16042; AVX512BW-NEXT:    vpermt2d %zmm8, %zmm0, %zmm216043; AVX512BW-NEXT:    vmovdqa32 %zmm2, %zmm25 {%k2}16044; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload16045; AVX512BW-NEXT:    vpermt2d %zmm27, %zmm0, %zmm216046; AVX512BW-NEXT:    vmovdqa32 %zmm2, %zmm6 {%k2}16047; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,1,2,27,0,0,0,0,8,9,28,0,0,0,0,15]16048; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload16049; AVX512BW-NEXT:    vpermt2d %zmm28, %zmm0, %zmm216050; AVX512BW-NEXT:    movw $-30962, %cx # imm = 0x870E16051; AVX512BW-NEXT:    kmovd %ecx, %k216052; AVX512BW-NEXT:    vmovdqa32 %zmm2, %zmm11 {%k2}16053; AVX512BW-NEXT:    vmovdqu64 %zmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16054; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm11 # 64-byte Reload16055; AVX512BW-NEXT:    vmovdqa32 %zmm10, %zmm11 {%k1}16056; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload16057; AVX512BW-NEXT:    vpermt2d %zmm8, %zmm0, %zmm216058; AVX512BW-NEXT:    vmovdqa32 %zmm2, %zmm11 {%k2}16059; AVX512BW-NEXT:    vmovdqu64 %zmm11, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16060; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm30 # 64-byte Reload16061; AVX512BW-NEXT:    vmovdqa32 %zmm1, %zmm30 {%k1}16062; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload16063; AVX512BW-NEXT:    vpermt2d %zmm27, %zmm0, %zmm116064; AVX512BW-NEXT:    vmovdqa32 %zmm1, %zmm30 {%k2}16065; AVX512BW-NEXT:    movw $1548, %cx # imm = 0x60C16066; AVX512BW-NEXT:    kmovd %ecx, %k216067; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16068; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm2 # 64-byte Reload16069; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm2 {%k2}16070; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm0 # 64-byte Reload16071; AVX512BW-NEXT:    vmovdqa32 %zmm0, %zmm22 {%k1}16072; AVX512BW-NEXT:    vmovdqa32 %zmm24, %zmm5 {%k1}16073; AVX512BW-NEXT:    vmovdqa32 %zmm21, %zmm17 {%k1}16074; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,29,0,0,0,0,6,7,30,0,0,0,0,13,14,31]16075; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload16076; AVX512BW-NEXT:    vpermt2d %zmm28, %zmm0, %zmm116077; AVX512BW-NEXT:    movw $-7741, %cx # imm = 0xE1C316078; AVX512BW-NEXT:    kmovd %ecx, %k116079; AVX512BW-NEXT:    vmovdqa32 %zmm1, %zmm22 {%k1}16080; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload16081; AVX512BW-NEXT:    vpermt2d %zmm8, %zmm0, %zmm116082; AVX512BW-NEXT:    vmovdqa32 %zmm1, %zmm5 {%k1}16083; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload16084; AVX512BW-NEXT:    vpermt2d %zmm27, %zmm0, %zmm116085; AVX512BW-NEXT:    vmovdqa32 %zmm1, %zmm17 {%k1}16086; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm0 = [0,0,0,0,4,5,16,0,0,0,0,11,12,17,0,0]16087; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload16088; AVX512BW-NEXT:    vpermt2d %zmm28, %zmm0, %zmm116089; AVX512BW-NEXT:    movw $14448, %cx # imm = 0x387016090; AVX512BW-NEXT:    kmovd %ecx, %k316091; AVX512BW-NEXT:    vmovdqa32 %zmm1, %zmm2 {%k3}16092; AVX512BW-NEXT:    vmovdqu64 %zmm2, {{[-0-9]+}}(%r{{[sb]}}p) # 64-byte Spill16093; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload16094; AVX512BW-NEXT:    vmovdqa32 %zmm1, %zmm31 {%k2}16095; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload16096; AVX512BW-NEXT:    vmovdqa32 %zmm1, %zmm19 {%k2}16097; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload16098; AVX512BW-NEXT:    vmovdqa32 %zmm1, %zmm9 {%k2}16099; AVX512BW-NEXT:    movw $12384, %cx # imm = 0x306016100; AVX512BW-NEXT:    kmovd %ecx, %k116101; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm3 # 64-byte Reload16102; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload16103; AVX512BW-NEXT:    vmovdqa32 %zmm1, %zmm3 {%k1}16104; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload16105; AVX512BW-NEXT:    vpermt2d %zmm8, %zmm0, %zmm116106; AVX512BW-NEXT:    vmovdqa32 %zmm1, %zmm31 {%k3}16107; AVX512BW-NEXT:    vmovdqu64 {{[-0-9]+}}(%r{{[sb]}}p), %zmm1 # 64-byte Reload16108; AVX512BW-NEXT:    vpermt2d %zmm27, %zmm0, %zmm116109; AVX512BW-NEXT:    vmovdqa32 %zmm1, %zmm19 {%k3}16110; AVX512BW-NEXT:    vmovdqa64 192(%r8), %zmm116111; AVX512BW-NEXT:    vmovdqa64 192(%r9), %zmm216112; AVX512BW-NEXT:    vpmovsxbd {{.*#+}} zmm11 

File truncated to the first 1 MiB.