2559 lines · plain
1; RUN: llc -mtriple=hexagon -mcpu=hexagonv60 -O2 -disable-post-ra < %s | FileCheck %s2 3; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})4; CHECK: q{{[0-3]}} |= vand(v{{[0-9]*}},r{{[0-9]*}})5; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})6; CHECK: q{{[0-3]}} = vcmp.eq(v{{[0-9]*}}.b,v{{[0-9]*}}.b)7; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})8; CHECK: q{{[0-3]}} = vcmp.eq(v{{[0-9]*}}.h,v{{[0-9]*}}.h)9; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})10; CHECK: q{{[0-3]}} = vcmp.eq(v{{[0-9]*}}.w,v{{[0-9]*}}.w)11; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})12; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})13; CHECK: q{{[0-3]}} &= vcmp.eq(v{{[0-9]*}}.b,v{{[0-9]*}}.b)14; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})15; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})16; CHECK: q{{[0-3]}} &= vcmp.eq(v{{[0-9]*}}.h,v{{[0-9]*}}.h)17; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})18; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})19; CHECK: q{{[0-3]}} &= vcmp.eq(v{{[0-9]*}}.w,v{{[0-9]*}}.w)20; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})21; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})22; CHECK: q{{[0-3]}} |= vcmp.eq(v{{[0-9]*}}.b,v{{[0-9]*}}.b)23; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})24; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})25; CHECK: q{{[0-3]}} |= vcmp.eq(v{{[0-9]*}}.h,v{{[0-9]*}}.h)26; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})27; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})28; CHECK: q{{[0-3]}} |= vcmp.eq(v{{[0-9]*}}.w,v{{[0-9]*}}.w)29; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})30; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})31; CHECK: q{{[0-3]}} ^= vcmp.eq(v{{[0-9]*}}.b,v{{[0-9]*}}.b)32; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})33; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})34; CHECK: q{{[0-3]}} ^= vcmp.eq(v{{[0-9]*}}.h,v{{[0-9]*}}.h)35; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})36; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})37; CHECK: q{{[0-3]}} ^= vcmp.eq(v{{[0-9]*}}.w,v{{[0-9]*}}.w)38; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})39; CHECK: q{{[0-3]}} = vcmp.gt(v{{[0-9]*}}.b,v{{[0-9]*}}.b)40; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})41; CHECK: q{{[0-3]}} = vcmp.gt(v{{[0-9]*}}.h,v{{[0-9]*}}.h)42; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})43; CHECK: q{{[0-3]}} = vcmp.gt(v{{[0-9]*}}.ub,v{{[0-9]*}}.ub)44; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})45; CHECK: q{{[0-3]}} = vcmp.gt(v{{[0-9]*}}.uh,v{{[0-9]*}}.uh)46; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})47; CHECK: q{{[0-3]}} = vcmp.gt(v{{[0-9]*}}.uw,v{{[0-9]*}}.uw)48; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})49; CHECK: q{{[0-3]}} = vcmp.gt(v{{[0-9]*}}.w,v{{[0-9]*}}.w)50; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})51; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})52; CHECK: q{{[0-3]}} &= vcmp.gt(v{{[0-9]*}}.b,v{{[0-9]*}}.b)53; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})54; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})55; CHECK: q{{[0-3]}} &= vcmp.gt(v{{[0-9]*}}.h,v{{[0-9]*}}.h)56; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})57; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})58; CHECK: q{{[0-3]}} &= vcmp.gt(v{{[0-9]*}}.ub,v{{[0-9]*}}.ub)59; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})60; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})61; CHECK: q{{[0-3]}} &= vcmp.gt(v{{[0-9]*}}.uh,v{{[0-9]*}}.uh)62; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})63; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})64; CHECK: q{{[0-3]}} &= vcmp.gt(v{{[0-9]*}}.uw,v{{[0-9]*}}.uw)65; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})66; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})67; CHECK: q{{[0-3]}} &= vcmp.gt(v{{[0-9]*}}.w,v{{[0-9]*}}.w)68; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})69; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})70; CHECK: q{{[0-3]}} |= vcmp.gt(v{{[0-9]*}}.b,v{{[0-9]*}}.b)71; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})72; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})73; CHECK: q{{[0-3]}} |= vcmp.gt(v{{[0-9]*}}.h,v{{[0-9]*}}.h)74; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})75; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})76; CHECK: q{{[0-3]}} |= vcmp.gt(v{{[0-9]*}}.ub,v{{[0-9]*}}.ub)77; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})78; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})79; CHECK: q{{[0-3]}} |= vcmp.gt(v{{[0-9]*}}.uh,v{{[0-9]*}}.uh)80; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})81; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})82; CHECK: q{{[0-3]}} |= vcmp.gt(v{{[0-9]*}}.uw,v{{[0-9]*}}.uw)83; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})84; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})85; CHECK: q{{[0-3]}} |= vcmp.gt(v{{[0-9]*}}.w,v{{[0-9]*}}.w)86; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})87; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})88; CHECK: q{{[0-3]}} ^= vcmp.gt(v{{[0-9]*}}.b,v{{[0-9]*}}.b)89; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})90; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})91; CHECK: q{{[0-3]}} ^= vcmp.gt(v{{[0-9]*}}.h,v{{[0-9]*}}.h)92; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})93; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})94; CHECK: q{{[0-3]}} ^= vcmp.gt(v{{[0-9]*}}.ub,v{{[0-9]*}}.ub)95; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})96; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})97; CHECK: q{{[0-3]}} ^= vcmp.gt(v{{[0-9]*}}.uh,v{{[0-9]*}}.uh)98; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})99; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})100; CHECK: q{{[0-3]}} ^= vcmp.gt(v{{[0-9]*}}.uw,v{{[0-9]*}}.uw)101; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})102; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})103; CHECK: q{{[0-3]}} ^= vcmp.gt(v{{[0-9]*}}.w,v{{[0-9]*}}.w)104; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})105; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})106; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})107; CHECK: q{{[0-3]}} = xor{{[0-9]*}}(q{{[0-3]}},q{{[0-3]}})108; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})109; CHECK: v{{[0-9]*}} = v110; CHECK: v{{[0-9]*}} = valign(v{{[0-9]*}},v{{[0-9]*}},#1)111; CHECK: v{{[0-9]*}} = valign(v{{[0-9]*}},v{{[0-9]*}},r{{[0-9]*}})112; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})113; CHECK: v{{[0-9]*}} = vand(q{{[0-3]}},r{{[0-9]*}})114; CHECK: v{{[0-9]*}} = vand(v{{[0-9]*}},v{{[0-9]*}})115; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})116; CHECK: v{{[0-9]*}} |= vand(q{{[0-3]}},r{{[0-9]*}})117; CHECK: v{{[0-9]*}} = vdelta(v{{[0-9]*}},v{{[0-9]*}})118; CHECK: v{{[0-9]*}} = vlalign(v{{[0-9]*}},v{{[0-9]*}},#1)119; CHECK: v{{[0-9]*}} = vlalign(v{{[0-9]*}},v{{[0-9]*}},r{{[0-9]*}})120; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})121; CHECK: v{{[0-9]*}} = vmux(q{{[0-3]}},v{{[0-9]*}},v{{[0-9]*}})122; CHECK: v{{[0-9]*}} = vnot(v{{[0-9]*}})123; CHECK: v{{[0-9]*}} = vor{{[0-9]*}}(v{{[0-9]*}},v{{[0-9]*}})124; CHECK: v{{[0-9]*}} = vr{{[0-9]*}}delta(v{{[0-9]*}},v{{[0-9]*}})125; CHECK: v{{[0-9]*}} = vr{{[0-9]*}}or{{[0-9]*}}(v{{[0-9]*}},r{{[0-9]*}})126; CHECK: v{{[0-9]*}} = vxor{{[0-9]*}}(v{{[0-9]*}},v{{[0-9]*}})127; CHECK: v{{[0-9]*}}.b = vadd(v{{[0-9]*}}.b,v{{[0-9]*}}.b)128; CHECK: v{{[0-9]*}}.b = vasr{{[0-9]*}}(v{{[0-9]*}}.h,v{{[0-9]*}}.h,r{{[0-9]*}}):{{[0-9]*}}r{{[0-9]*}}nd:{{[0-9]*}}sat129; CHECK: v{{[0-9]*}}.b = vdeal(v{{[0-9]*}}.b)130; CHECK: v{{[0-9]*}}.b = vdeale(v{{[0-9]*}}.b,v{{[0-9]*}}.b)131; CHECK: v{{[0-9]*}}.b = vlut32(v{{[0-9]*}}.b,v{{[0-9]*}}.b,r{{[0-9]*}})132; CHECK: v{{[0-9]*}}.b |= vlut32(v{{[0-9]*}}.b,v{{[0-9]*}}.b,r{{[0-9]*}})133; CHECK: v{{[0-9]*}}.b = vnav{{[0-9]*}}g(v{{[0-9]*}}.ub,v{{[0-9]*}}.ub)134; CHECK: v{{[0-9]*}}.b = vpack(v{{[0-9]*}}.h,v{{[0-9]*}}.h):{{[0-9]*}}sat135; CHECK: v{{[0-9]*}}.b = vpacke(v{{[0-9]*}}.h,v{{[0-9]*}}.h)136; CHECK: v{{[0-9]*}}.b = vpacko(v{{[0-9]*}}.h,v{{[0-9]*}}.h)137; CHECK: v{{[0-9]*}}.b = vr{{[0-9]*}}ound(v{{[0-9]*}}.h,v{{[0-9]*}}.h):{{[0-9]*}}sat138; CHECK: v{{[0-9]*}}.b = vshuff(v{{[0-9]*}}.b)139; CHECK: v{{[0-9]*}}.b = vshuffe(v{{[0-9]*}}.b,v{{[0-9]*}}.b)140; CHECK: v{{[0-9]*}}.b = vshuffo(v{{[0-9]*}}.b,v{{[0-9]*}}.b)141; CHECK: v{{[0-9]*}}.b = vsub(v{{[0-9]*}}.b,v{{[0-9]*}}.b)142; CHECK: v{{[0-9]*}}.h = vabs(v{{[0-9]*}}.h)143; CHECK: v{{[0-9]*}}.h = vabs(v{{[0-9]*}}.h):{{[0-9]*}}sat144; CHECK: v{{[0-9]*}}.h = vadd(v{{[0-9]*}}.h,v{{[0-9]*}}.h)145; CHECK: v{{[0-9]*}}.h = vadd(v{{[0-9]*}}.h,v{{[0-9]*}}.h):{{[0-9]*}}sat146; CHECK: v{{[0-9]*}}.h = vasl(v{{[0-9]*}}.h,r{{[0-9]*}})147; CHECK: v{{[0-9]*}}.h = vasl(v{{[0-9]*}}.h,v{{[0-9]*}}.h)148; CHECK: v{{[0-9]*}}.h = vasr{{[0-9]*}}(v{{[0-9]*}}.h,r{{[0-9]*}})149; CHECK: v{{[0-9]*}}.h = vasr{{[0-9]*}}(v{{[0-9]*}}.h,v{{[0-9]*}}.h)150; CHECK: v{{[0-9]*}}.h = vasr{{[0-9]*}}(v{{[0-9]*}}.w,v{{[0-9]*}}.w,r{{[0-9]*}})151; CHECK: v{{[0-9]*}}.h = vasr{{[0-9]*}}(v{{[0-9]*}}.w,v{{[0-9]*}}.w,r{{[0-9]*}}):{{[0-9]*}}r{{[0-9]*}}nd:{{[0-9]*}}sat152; CHECK: v{{[0-9]*}}.h = vasr{{[0-9]*}}(v{{[0-9]*}}.w,v{{[0-9]*}}.w,r{{[0-9]*}}):{{[0-9]*}}sat153; CHECK: v{{[0-9]*}}.h = vav{{[0-9]*}}g(v{{[0-9]*}}.h,v{{[0-9]*}}.h)154; CHECK: v{{[0-9]*}}.h = vav{{[0-9]*}}g(v{{[0-9]*}}.h,v{{[0-9]*}}.h):{{[0-9]*}}r{{[0-9]*}}nd155; CHECK: v{{[0-9]*}}.h = vdeal(v{{[0-9]*}}.h)156; CHECK: v{{[0-9]*}}.h = vdmpy(v{{[0-9]*}}.ub,r{{[0-9]*}}.b)157; CHECK: v{{[0-9]*}}.h += vdmpy(v{{[0-9]*}}.ub,r{{[0-9]*}}.b)158; CHECK: v{{[0-9]*}}.h = vlsr{{[0-9]*}}(v{{[0-9]*}}.h,v{{[0-9]*}}.h)159; CHECK: v{{[0-9]*}}.h = vmax(v{{[0-9]*}}.h,v{{[0-9]*}}.h)160; CHECK: v{{[0-9]*}}.h = vmin(v{{[0-9]*}}.h,v{{[0-9]*}}.h)161; CHECK: v{{[0-9]*}}.h = vmpy(v{{[0-9]*}}.h,r{{[0-9]*}}.h):{{[0-9]*}}<<1:{{[0-9]*}}r{{[0-9]*}}nd:{{[0-9]*}}sat162; CHECK: v{{[0-9]*}}.h = vmpy(v{{[0-9]*}}.h,r{{[0-9]*}}.h):{{[0-9]*}}<<1:{{[0-9]*}}sat163; CHECK: v{{[0-9]*}}.h = vmpy(v{{[0-9]*}}.h,v{{[0-9]*}}.h):{{[0-9]*}}<<1:{{[0-9]*}}r{{[0-9]*}}nd:{{[0-9]*}}sat164; CHECK: v{{[0-9]*}}.h = vmpyi(v{{[0-9]*}}.h,r{{[0-9]*}}.b)165; CHECK: v{{[0-9]*}}.h = vmpyi(v{{[0-9]*}}.h,v{{[0-9]*}}.h)166; CHECK: v{{[0-9]*}}.h += vmpyi(v{{[0-9]*}}.h,r{{[0-9]*}}.b)167; CHECK: v{{[0-9]*}}.h += vmpyi(v{{[0-9]*}}.h,v{{[0-9]*}}.h)168; CHECK: v{{[0-9]*}}.h = vnav{{[0-9]*}}g(v{{[0-9]*}}.h,v{{[0-9]*}}.h)169; CHECK: v{{[0-9]*}}.h = vnor{{[0-9]*}}mamt(v{{[0-9]*}}.h)170; CHECK: v{{[0-9]*}}.h = vpack(v{{[0-9]*}}.w,v{{[0-9]*}}.w):{{[0-9]*}}sat171; CHECK: v{{[0-9]*}}.h = vpacke(v{{[0-9]*}}.w,v{{[0-9]*}}.w)172; CHECK: v{{[0-9]*}}.h = vpacko(v{{[0-9]*}}.w,v{{[0-9]*}}.w)173; CHECK: v{{[0-9]*}}.h = vpopcount(v{{[0-9]*}}.h)174; CHECK: v{{[0-9]*}}.h = vr{{[0-9]*}}ound(v{{[0-9]*}}.w,v{{[0-9]*}}.w):{{[0-9]*}}sat175; CHECK: v{{[0-9]*}}.h = vsat(v{{[0-9]*}}.w,v{{[0-9]*}}.w)176; CHECK: v{{[0-9]*}}.h = vshuff(v{{[0-9]*}}.h)177; CHECK: v{{[0-9]*}}.h = vshuffe(v{{[0-9]*}}.h,v{{[0-9]*}}.h)178; CHECK: v{{[0-9]*}}.h = vshuffo(v{{[0-9]*}}.h,v{{[0-9]*}}.h)179; CHECK: v{{[0-9]*}}.h = vsub(v{{[0-9]*}}.h,v{{[0-9]*}}.h)180; CHECK: v{{[0-9]*}}.h = vsub(v{{[0-9]*}}.h,v{{[0-9]*}}.h):{{[0-9]*}}sat181; CHECK: v{{[0-9]*}}.ub = vabsdiff(v{{[0-9]*}}.ub,v{{[0-9]*}}.ub)182; CHECK: v{{[0-9]*}}.ub = vadd(v{{[0-9]*}}.ub,v{{[0-9]*}}.ub):{{[0-9]*}}sat183; CHECK: v{{[0-9]*}}.ub = vasr{{[0-9]*}}(v{{[0-9]*}}.h,v{{[0-9]*}}.h,r{{[0-9]*}}):{{[0-9]*}}r{{[0-9]*}}nd:{{[0-9]*}}sat184; CHECK: v{{[0-9]*}}.ub = vasr{{[0-9]*}}(v{{[0-9]*}}.h,v{{[0-9]*}}.h,r{{[0-9]*}}):{{[0-9]*}}sat185; CHECK: v{{[0-9]*}}.ub = vav{{[0-9]*}}g(v{{[0-9]*}}.ub,v{{[0-9]*}}.ub)186; CHECK: v{{[0-9]*}}.ub = vav{{[0-9]*}}g(v{{[0-9]*}}.ub,v{{[0-9]*}}.ub):{{[0-9]*}}r{{[0-9]*}}nd187; CHECK: v{{[0-9]*}}.ub = vmax(v{{[0-9]*}}.ub,v{{[0-9]*}}.ub)188; CHECK: v{{[0-9]*}}.ub = vmin(v{{[0-9]*}}.ub,v{{[0-9]*}}.ub)189; CHECK: v{{[0-9]*}}.ub = vpack(v{{[0-9]*}}.h,v{{[0-9]*}}.h):{{[0-9]*}}sat190; CHECK: v{{[0-9]*}}.ub = vr{{[0-9]*}}ound(v{{[0-9]*}}.h,v{{[0-9]*}}.h):{{[0-9]*}}sat191; CHECK: v{{[0-9]*}}.ub = vsat(v{{[0-9]*}}.h,v{{[0-9]*}}.h)192; CHECK: v{{[0-9]*}}.ub = vsub(v{{[0-9]*}}.ub,v{{[0-9]*}}.ub):{{[0-9]*}}sat193; CHECK: v{{[0-9]*}}.uh = vabsdiff(v{{[0-9]*}}.h,v{{[0-9]*}}.h)194; CHECK: v{{[0-9]*}}.uh = vabsdiff(v{{[0-9]*}}.uh,v{{[0-9]*}}.uh)195; CHECK: v{{[0-9]*}}.uh = vadd(v{{[0-9]*}}.uh,v{{[0-9]*}}.uh):{{[0-9]*}}sat196; CHECK: v{{[0-9]*}}.uh = vasr{{[0-9]*}}(v{{[0-9]*}}.w,v{{[0-9]*}}.w,r{{[0-9]*}}):{{[0-9]*}}sat197; CHECK: v{{[0-9]*}}.uh = vav{{[0-9]*}}g(v{{[0-9]*}}.uh,v{{[0-9]*}}.uh)198; CHECK: v{{[0-9]*}}.uh = vav{{[0-9]*}}g(v{{[0-9]*}}.uh,v{{[0-9]*}}.uh):{{[0-9]*}}r{{[0-9]*}}nd199; CHECK: v{{[0-9]*}}.uh = vcl0(v{{[0-9]*}}.uh)200; CHECK: v{{[0-9]*}}.uh = vlsr{{[0-9]*}}(v{{[0-9]*}}.uh,r{{[0-9]*}})201; CHECK: v{{[0-9]*}}.uh = vmax(v{{[0-9]*}}.uh,v{{[0-9]*}}.uh)202; CHECK: v{{[0-9]*}}.uh = vmin(v{{[0-9]*}}.uh,v{{[0-9]*}}.uh)203; CHECK: v{{[0-9]*}}.uh = vpack(v{{[0-9]*}}.w,v{{[0-9]*}}.w):{{[0-9]*}}sat204; CHECK: v{{[0-9]*}}.uh = vr{{[0-9]*}}ound(v{{[0-9]*}}.w,v{{[0-9]*}}.w):{{[0-9]*}}sat205; CHECK: v{{[0-9]*}}.uh = vsub(v{{[0-9]*}}.uh,v{{[0-9]*}}.uh):{{[0-9]*}}sat206; CHECK: v{{[0-9]*}}.uw = vabsdiff(v{{[0-9]*}}.w,v{{[0-9]*}}.w)207; CHECK: v{{[0-9]*}}.uw = vcl0(v{{[0-9]*}}.uw)208; CHECK: v{{[0-9]*}}.uw = vlsr{{[0-9]*}}(v{{[0-9]*}}.uw,r{{[0-9]*}})209; CHECK: v{{[0-9]*}}.uw = vr{{[0-9]*}}mpy(v{{[0-9]*}}.ub,r{{[0-9]*}}.ub)210; CHECK: v{{[0-9]*}}.uw = vr{{[0-9]*}}mpy(v{{[0-9]*}}.ub,v{{[0-9]*}}.ub)211; CHECK: v{{[0-9]*}}.uw += vr{{[0-9]*}}mpy(v{{[0-9]*}}.ub,r{{[0-9]*}}.ub)212; CHECK: v{{[0-9]*}}.uw += vr{{[0-9]*}}mpy(v{{[0-9]*}}.ub,v{{[0-9]*}}.ub)213; CHECK: v{{[0-9]*}}.w = vabs(v{{[0-9]*}}.w)214; CHECK: v{{[0-9]*}}.w = vabs(v{{[0-9]*}}.w):{{[0-9]*}}sat215; CHECK: v{{[0-9]*}}.w = vadd(v{{[0-9]*}}.w,v{{[0-9]*}}.w)216; CHECK: v{{[0-9]*}}.w = vadd(v{{[0-9]*}}.w,v{{[0-9]*}}.w):{{[0-9]*}}sat217; CHECK: v{{[0-9]*}}.w = vasl(v{{[0-9]*}}.w,r{{[0-9]*}})218; CHECK: v{{[0-9]*}}.w = vasl(v{{[0-9]*}}.w,v{{[0-9]*}}.w)219; CHECK: v{{[0-9]*}}.w += vasl(v{{[0-9]*}}.w,r{{[0-9]*}})220; CHECK: v{{[0-9]*}}.w = vasr{{[0-9]*}}(v{{[0-9]*}}.w,r{{[0-9]*}})221; CHECK: v{{[0-9]*}}.w = vasr{{[0-9]*}}(v{{[0-9]*}}.w,v{{[0-9]*}}.w)222; CHECK: v{{[0-9]*}}.w += vasr{{[0-9]*}}(v{{[0-9]*}}.w,r{{[0-9]*}})223; CHECK: v{{[0-9]*}}.w = vav{{[0-9]*}}g(v{{[0-9]*}}.w,v{{[0-9]*}}.w)224; CHECK: v{{[0-9]*}}.w = vav{{[0-9]*}}g(v{{[0-9]*}}.w,v{{[0-9]*}}.w):{{[0-9]*}}r{{[0-9]*}}nd225; CHECK: v{{[0-9]*}}.w = vdmpy(v{{[0-9]*}}.h,r{{[0-9]*}}.b)226; CHECK: v{{[0-9]*}}.w = vdmpy(v{{[0-9]*}}.h,r{{[0-9]*}}.h):{{[0-9]*}}sat227; CHECK: v{{[0-9]*}}.w = vdmpy(v{{[0-9]*}}.h,r{{[0-9]*}}.uh):{{[0-9]*}}sat228; CHECK: v{{[0-9]*}}.w = vdmpy(v{{[0-9]*}}.h,v{{[0-9]*}}.h):{{[0-9]*}}sat229; CHECK: v{{[0-9]*}}.w = vdmpy(v{{[0-9]*}}:{{[0-9]*}}.h,r{{[0-9]*}}.h):{{[0-9]*}}sat230; CHECK: v{{[0-9]*}}.w = vdmpy(v{{[0-9]*}}:{{[0-9]*}}.h,r{{[0-9]*}}.uh,#1):{{[0-9]*}}sat231; CHECK: v{{[0-9]*}}.w += vdmpy(v{{[0-9]*}}.h,r{{[0-9]*}}.b)232; CHECK: v{{[0-9]*}}.w += vdmpy(v{{[0-9]*}}.h,r{{[0-9]*}}.h):{{[0-9]*}}sat233; CHECK: v{{[0-9]*}}.w += vdmpy(v{{[0-9]*}}.h,r{{[0-9]*}}.uh):{{[0-9]*}}sat234; CHECK: v{{[0-9]*}}.w += vdmpy(v{{[0-9]*}}.h,v{{[0-9]*}}.h):{{[0-9]*}}sat235; CHECK: v{{[0-9]*}}.w += vdmpy(v{{[0-9]*}}:{{[0-9]*}}.h,r{{[0-9]*}}.h):{{[0-9]*}}sat236; CHECK: v{{[0-9]*}}.w += vdmpy(v{{[0-9]*}}:{{[0-9]*}}.h,r{{[0-9]*}}.uh,#1):{{[0-9]*}}sat237; CHECK: v{{[0-9]*}}.w = vinser{{[0-9]*}}t(r{{[0-9]*}})238; CHECK: v{{[0-9]*}}.w = vinser{{[0-9]*}}t(r{{[0-9]*}})239; CHECK: v{{[0-9]*}}.w = vinser{{[0-9]*}}t(r{{[0-9]*}})240; CHECK: v{{[0-9]*}}.w = vlsr{{[0-9]*}}(v{{[0-9]*}}.w,v{{[0-9]*}}.w)241; CHECK: v{{[0-9]*}}.w = vmax(v{{[0-9]*}}.w,v{{[0-9]*}}.w)242; CHECK: v{{[0-9]*}}.w = vmin(v{{[0-9]*}}.w,v{{[0-9]*}}.w)243; CHECK: v{{[0-9]*}}.w = vmpye(v{{[0-9]*}}.w,v{{[0-9]*}}.uh)244; CHECK: v{{[0-9]*}}.w = vmpyi(v{{[0-9]*}}.w,r{{[0-9]*}}.b)245; CHECK: v{{[0-9]*}}.w = vmpyi(v{{[0-9]*}}.w,r{{[0-9]*}}.h)246; CHECK: v{{[0-9]*}}.w += vmpyi(v{{[0-9]*}}.w,r{{[0-9]*}}.b)247; CHECK: v{{[0-9]*}}.w += vmpyi(v{{[0-9]*}}.w,r{{[0-9]*}}.h)248; CHECK: v{{[0-9]*}}.w = vmpyie(v{{[0-9]*}}.w,v{{[0-9]*}}.uh)249; CHECK: v{{[0-9]*}}.w += vmpyie(v{{[0-9]*}}.w,v{{[0-9]*}}.h)250; CHECK: v{{[0-9]*}}.w += vmpyie(v{{[0-9]*}}.w,v{{[0-9]*}}.uh)251; CHECK: v{{[0-9]*}}.w = vmpyieo(v{{[0-9]*}}.h,v{{[0-9]*}}.h)252; CHECK: v{{[0-9]*}}.w = vmpyio(v{{[0-9]*}}.w,v{{[0-9]*}}.h)253; CHECK: v{{[0-9]*}}.w = vmpyo(v{{[0-9]*}}.w,v{{[0-9]*}}.h):{{[0-9]*}}<<1:{{[0-9]*}}r{{[0-9]*}}nd:{{[0-9]*}}sat254; CHECK: v{{[0-9]*}}.w = vmpyo(v{{[0-9]*}}.w,v{{[0-9]*}}.h):{{[0-9]*}}<<1:{{[0-9]*}}sat255; CHECK: v{{[0-9]*}}.w += vmpyo(v{{[0-9]*}}.w,v{{[0-9]*}}.h):{{[0-9]*}}<<1:{{[0-9]*}}r{{[0-9]*}}nd:{{[0-9]*}}sat:{{[0-9]*}}shift256; CHECK: v{{[0-9]*}}.w += vmpyo(v{{[0-9]*}}.w,v{{[0-9]*}}.h):{{[0-9]*}}<<1:{{[0-9]*}}sat:{{[0-9]*}}shift257; CHECK: v{{[0-9]*}}.w = vnav{{[0-9]*}}g(v{{[0-9]*}}.w,v{{[0-9]*}}.w)258; CHECK: v{{[0-9]*}}.w = vnor{{[0-9]*}}mamt(v{{[0-9]*}}.w)259; CHECK: v{{[0-9]*}}.w = vr{{[0-9]*}}mpy(v{{[0-9]*}}.b,v{{[0-9]*}}.b)260; CHECK: v{{[0-9]*}}.w = vr{{[0-9]*}}mpy(v{{[0-9]*}}.ub,r{{[0-9]*}}.b)261; CHECK: v{{[0-9]*}}.w = vr{{[0-9]*}}mpy(v{{[0-9]*}}.ub,v{{[0-9]*}}.b)262; CHECK: v{{[0-9]*}}.w += vr{{[0-9]*}}mpy(v{{[0-9]*}}.b,v{{[0-9]*}}.b)263; CHECK: v{{[0-9]*}}.w += vr{{[0-9]*}}mpy(v{{[0-9]*}}.ub,r{{[0-9]*}}.b)264; CHECK: v{{[0-9]*}}.w += vr{{[0-9]*}}mpy(v{{[0-9]*}}.ub,v{{[0-9]*}}.b)265; CHECK: v{{[0-9]*}}.w = vsub(v{{[0-9]*}}.w,v{{[0-9]*}}.w)266; CHECK: v{{[0-9]*}}.w = vsub(v{{[0-9]*}}.w,v{{[0-9]*}}.w):{{[0-9]*}}sat267; CHECK: v{{[0-9]*}}:{{[0-9]*}} = vcombine(v{{[0-9]*}},v{{[0-9]*}})268; CHECK: v{{[0-9]*}}:{{[0-9]*}} = vdeal(v{{[0-9]*}},v{{[0-9]*}},r{{[0-9]*}})269; CHECK: v{{[0-9]*}}:{{[0-9]*}} = vshuff(v{{[0-9]*}},v{{[0-9]*}},r{{[0-9]*}})270; CHECK: v{{[0-9]*}}:{{[0-9]*}} = vshuff(v{{[0-9]*}},v{{[0-9]*}},r{{[0-9]*}})271; CHECK: v{{[0-9]*}}:{{[0-9]*}} = vshuff(v{{[0-9]*}},v{{[0-9]*}},r{{[0-9]*}})272; CHECK: q{{[0-3]}} = vand(v{{[0-9]*}},r{{[0-9]*}})273; CHECK: v{{[0-9]*}}:{{[0-9]*}} = vswap(q{{[0-3]}},v{{[0-9]*}},v{{[0-9]*}})274; CHECK: v{{[0-9]*}}:{{[0-9]*}}.b = vadd(v{{[0-9]*}}:{{[0-9]*}}.b,v{{[0-9]*}}:{{[0-9]*}}.b)275; CHECK: v{{[0-9]*}}:{{[0-9]*}}.b = vshuffoe(v{{[0-9]*}}.b,v{{[0-9]*}}.b)276; CHECK: v{{[0-9]*}}:{{[0-9]*}}.b = vsub(v{{[0-9]*}}:{{[0-9]*}}.b,v{{[0-9]*}}:{{[0-9]*}}.b)277; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h = vadd(v{{[0-9]*}}.ub,v{{[0-9]*}}.ub)278; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h = vadd(v{{[0-9]*}}:{{[0-9]*}}.h,v{{[0-9]*}}:{{[0-9]*}}.h)279; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h = vadd(v{{[0-9]*}}:{{[0-9]*}}.h,v{{[0-9]*}}:{{[0-9]*}}.h):{{[0-9]*}}sat280; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h = vdmpy(v{{[0-9]*}}:{{[0-9]*}}.ub,r{{[0-9]*}}.b)281; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h += vdmpy(v{{[0-9]*}}:{{[0-9]*}}.ub,r{{[0-9]*}}.b)282; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h = vlut16(v{{[0-9]*}}.b,v{{[0-9]*}}.h,r{{[0-9]*}})283; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h |= vlut16(v{{[0-9]*}}.b,v{{[0-9]*}}.h,r{{[0-9]*}})284; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h = vmpa(v{{[0-9]*}}:{{[0-9]*}}.ub,r{{[0-9]*}}.b)285; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h = vmpa(v{{[0-9]*}}:{{[0-9]*}}.ub,v{{[0-9]*}}:{{[0-9]*}}.b)286; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h = vmpa(v{{[0-9]*}}:{{[0-9]*}}.ub,v{{[0-9]*}}:{{[0-9]*}}.ub)287; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h += vmpa(v{{[0-9]*}}:{{[0-9]*}}.ub,r{{[0-9]*}}.b)288; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h = vmpy(v{{[0-9]*}}.b,v{{[0-9]*}}.b)289; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h = vmpy(v{{[0-9]*}}.ub,r{{[0-9]*}}.b)290; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h = vmpy(v{{[0-9]*}}.ub,v{{[0-9]*}}.b)291; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h += vmpy(v{{[0-9]*}}.b,v{{[0-9]*}}.b)292; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h += vmpy(v{{[0-9]*}}.ub,r{{[0-9]*}}.b)293; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h += vmpy(v{{[0-9]*}}.ub,v{{[0-9]*}}.b)294; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h = vshuffoe(v{{[0-9]*}}.h,v{{[0-9]*}}.h)295; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h = vsub(v{{[0-9]*}}.ub,v{{[0-9]*}}.ub)296; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h = vsub(v{{[0-9]*}}:{{[0-9]*}}.h,v{{[0-9]*}}:{{[0-9]*}}.h)297; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h = vsub(v{{[0-9]*}}:{{[0-9]*}}.h,v{{[0-9]*}}:{{[0-9]*}}.h):{{[0-9]*}}sat298; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h = vsxt(v{{[0-9]*}}.b)299; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h = vtmpy(v{{[0-9]*}}:{{[0-9]*}}.b,r{{[0-9]*}}.b)300; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h = vtmpy(v{{[0-9]*}}:{{[0-9]*}}.ub,r{{[0-9]*}}.b)301; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h += vtmpy(v{{[0-9]*}}:{{[0-9]*}}.b,r{{[0-9]*}}.b)302; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h += vtmpy(v{{[0-9]*}}:{{[0-9]*}}.ub,r{{[0-9]*}}.b)303; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h = vunpack(v{{[0-9]*}}.b)304; CHECK: v{{[0-9]*}}:{{[0-9]*}}.h |= vunpacko(v{{[0-9]*}}.b)305; CHECK: v{{[0-9]*}}:{{[0-9]*}}.ub = vadd(v{{[0-9]*}}:{{[0-9]*}}.ub,v{{[0-9]*}}:{{[0-9]*}}.ub):{{[0-9]*}}sat306; CHECK: v{{[0-9]*}}:{{[0-9]*}}.ub = vsub(v{{[0-9]*}}:{{[0-9]*}}.ub,v{{[0-9]*}}:{{[0-9]*}}.ub):{{[0-9]*}}sat307; CHECK: v{{[0-9]*}}:{{[0-9]*}}.uh = vadd(v{{[0-9]*}}:{{[0-9]*}}.uh,v{{[0-9]*}}:{{[0-9]*}}.uh):{{[0-9]*}}sat308; CHECK: v{{[0-9]*}}:{{[0-9]*}}.uh = vmpy(v{{[0-9]*}}.ub,r{{[0-9]*}}.ub)309; CHECK: v{{[0-9]*}}:{{[0-9]*}}.uh = vmpy(v{{[0-9]*}}.ub,v{{[0-9]*}}.ub)310; CHECK: v{{[0-9]*}}:{{[0-9]*}}.uh += vmpy(v{{[0-9]*}}.ub,r{{[0-9]*}}.ub)311; CHECK: v{{[0-9]*}}:{{[0-9]*}}.uh += vmpy(v{{[0-9]*}}.ub,v{{[0-9]*}}.ub)312; CHECK: v{{[0-9]*}}:{{[0-9]*}}.uh = vsub(v{{[0-9]*}}:{{[0-9]*}}.uh,v{{[0-9]*}}:{{[0-9]*}}.uh):{{[0-9]*}}sat313; CHECK: v{{[0-9]*}}:{{[0-9]*}}.uh = vunpack(v{{[0-9]*}}.ub)314; CHECK: v{{[0-9]*}}:{{[0-9]*}}.uh = vzxt(v{{[0-9]*}}.ub)315; CHECK: v{{[0-9]*}}:{{[0-9]*}}.uw = vdsad(v{{[0-9]*}}:{{[0-9]*}}.uh,r{{[0-9]*}}.uh)316; CHECK: v{{[0-9]*}}:{{[0-9]*}}.uw += vdsad(v{{[0-9]*}}:{{[0-9]*}}.uh,r{{[0-9]*}}.uh)317; CHECK: v{{[0-9]*}}:{{[0-9]*}}.uw = vmpy(v{{[0-9]*}}.uh,r{{[0-9]*}}.uh)318; CHECK: v{{[0-9]*}}:{{[0-9]*}}.uw = vmpy(v{{[0-9]*}}.uh,v{{[0-9]*}}.uh)319; CHECK: v{{[0-9]*}}:{{[0-9]*}}.uw += vmpy(v{{[0-9]*}}.uh,r{{[0-9]*}}.uh)320; CHECK: v{{[0-9]*}}:{{[0-9]*}}.uw += vmpy(v{{[0-9]*}}.uh,v{{[0-9]*}}.uh)321; CHECK: v{{[0-9]*}}:{{[0-9]*}}.uw = vr{{[0-9]*}}mpy(v{{[0-9]*}}:{{[0-9]*}}.ub,r{{[0-9]*}}.ub,#0)322; CHECK: v{{[0-9]*}}:{{[0-9]*}}.uw += vr{{[0-9]*}}mpy(v{{[0-9]*}}:{{[0-9]*}}.ub,r{{[0-9]*}}.ub,#0)323; CHECK: v{{[0-9]*}}:{{[0-9]*}}.uw = vr{{[0-9]*}}sad(v{{[0-9]*}}:{{[0-9]*}}.ub,r{{[0-9]*}}.ub,#0)324; CHECK: v{{[0-9]*}}:{{[0-9]*}}.uw += vr{{[0-9]*}}sad(v{{[0-9]*}}:{{[0-9]*}}.ub,r{{[0-9]*}}.ub,#0)325; CHECK: v{{[0-9]*}}:{{[0-9]*}}.uw = vunpack(v{{[0-9]*}}.uh)326; CHECK: v{{[0-9]*}}:{{[0-9]*}}.uw = vzxt(v{{[0-9]*}}.uh)327; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w = vadd(v{{[0-9]*}}.h,v{{[0-9]*}}.h)328; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w = vadd(v{{[0-9]*}}.uh,v{{[0-9]*}}.uh)329; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w = vadd(v{{[0-9]*}}:{{[0-9]*}}.w,v{{[0-9]*}}:{{[0-9]*}}.w)330; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w = vadd(v{{[0-9]*}}:{{[0-9]*}}.w,v{{[0-9]*}}:{{[0-9]*}}.w):{{[0-9]*}}sat331; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w = vdmpy(v{{[0-9]*}}:{{[0-9]*}}.h,r{{[0-9]*}}.b)332; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w += vdmpy(v{{[0-9]*}}:{{[0-9]*}}.h,r{{[0-9]*}}.b)333; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w = vmpa(v{{[0-9]*}}:{{[0-9]*}}.h,r{{[0-9]*}}.b)334; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w += vmpa(v{{[0-9]*}}:{{[0-9]*}}.h,r{{[0-9]*}}.b)335; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w = vmpy(v{{[0-9]*}}.h,r{{[0-9]*}}.h)336; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w = vmpy(v{{[0-9]*}}.h,v{{[0-9]*}}.h)337; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w = vmpy(v{{[0-9]*}}.h,v{{[0-9]*}}.uh)338; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w += vmpy(v{{[0-9]*}}.h,r{{[0-9]*}}.h):{{[0-9]*}}sat339; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w += vmpy(v{{[0-9]*}}.h,v{{[0-9]*}}.h)340; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w += vmpy(v{{[0-9]*}}.h,v{{[0-9]*}}.uh)341; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w = vr{{[0-9]*}}mpy(v{{[0-9]*}}:{{[0-9]*}}.ub,r{{[0-9]*}}.b,#0)342; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w += vr{{[0-9]*}}mpy(v{{[0-9]*}}:{{[0-9]*}}.ub,r{{[0-9]*}}.b,#0)343; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w = vsub(v{{[0-9]*}}.h,v{{[0-9]*}}.h)344; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w = vsub(v{{[0-9]*}}.uh,v{{[0-9]*}}.uh)345; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w = vsub(v{{[0-9]*}}:{{[0-9]*}}.w,v{{[0-9]*}}:{{[0-9]*}}.w)346; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w = vsub(v{{[0-9]*}}:{{[0-9]*}}.w,v{{[0-9]*}}:{{[0-9]*}}.w):{{[0-9]*}}sat347; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w = vsxt(v{{[0-9]*}}.h)348; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w = vtmpy(v{{[0-9]*}}:{{[0-9]*}}.h,r{{[0-9]*}}.b)349; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w += vtmpy(v{{[0-9]*}}:{{[0-9]*}}.h,r{{[0-9]*}}.b)350; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w = vunpack(v{{[0-9]*}}.h)351; CHECK: v{{[0-9]*}}:{{[0-9]*}}.w |= vunpacko(v{{[0-9]*}}.h)352target datalayout = "e-m:e-p:32:32:32-i64:64:64-i32:32:32-i16:16:16-i1:8:8-f64:64:64-f32:32:32-v64:64:64-v32:32:32-a:0-n16:32"353target triple = "hexagon"354 355@K = global i64 0, align 8356@src = global i8 -1, align 1357@vecpreds = common global [15 x <16 x i32>] zeroinitializer, align 64358@Q6VecPredResult = common global <16 x i32> zeroinitializer, align 64359@vectors = common global [15 x <16 x i32>] zeroinitializer, align 64360@VectorResult = common global <16 x i32> zeroinitializer, align 64361@vector_pairs = common global [15 x <32 x i32>] zeroinitializer, align 128362@VectorPairResult = common global <32 x i32> zeroinitializer, align 128363@dst_addresses = common global [15 x i8] zeroinitializer, align 8364@ptr_addresses = common global [15 x ptr] zeroinitializer, align 8365@src_addresses = common global [15 x ptr] zeroinitializer, align 8366@dst = common global i8 0, align 1367@ptr = common global [32768 x i8] zeroinitializer, align 8368 369; Function Attrs: nounwind370define i32 @main() #0 {371entry:372 %retval = alloca i32, align 4373 store i32 0, ptr %retval, align 4374 %0 = load volatile <16 x i32>, ptr @vecpreds, align 64375 %1 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %0, i32 -1)376 %2 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vecpreds, i32 0, i32 1), align 64377 %3 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %2, i32 -1)378 %4 = call <64 x i1> @llvm.hexagon.V6.pred.and(<64 x i1> %1, <64 x i1> %3)379 %5 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %4, i32 -1)380 store volatile <16 x i32> %5, ptr @Q6VecPredResult, align 64381 %6 = load volatile <16 x i32>, ptr @vecpreds, align 64382 %7 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %6, i32 -1)383 %8 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vecpreds, i32 0, i32 1), align 64384 %9 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %8, i32 -1)385 %10 = call <64 x i1> @llvm.hexagon.V6.pred.and.n(<64 x i1> %7, <64 x i1> %9)386 %11 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %10, i32 -1)387 store volatile <16 x i32> %11, ptr @Q6VecPredResult, align 64388 %12 = load volatile <16 x i32>, ptr @vecpreds, align 64389 %13 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %12, i32 -1)390 %14 = call <64 x i1> @llvm.hexagon.V6.pred.not(<64 x i1> %13)391 %15 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %14, i32 -1)392 store volatile <16 x i32> %15, ptr @Q6VecPredResult, align 64393 %16 = load volatile <16 x i32>, ptr @vecpreds, align 64394 %17 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %16, i32 -1)395 %18 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vecpreds, i32 0, i32 1), align 64396 %19 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %18, i32 -1)397 %20 = call <64 x i1> @llvm.hexagon.V6.pred.or(<64 x i1> %17, <64 x i1> %19)398 %21 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %20, i32 -1)399 store volatile <16 x i32> %21, ptr @Q6VecPredResult, align 64400 %22 = load volatile <16 x i32>, ptr @vecpreds, align 64401 %23 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %22, i32 -1)402 %24 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vecpreds, i32 0, i32 1), align 64403 %25 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %24, i32 -1)404 %26 = call <64 x i1> @llvm.hexagon.V6.pred.or.n(<64 x i1> %23, <64 x i1> %25)405 %27 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %26, i32 -1)406 store volatile <16 x i32> %27, ptr @Q6VecPredResult, align 64407 %28 = load volatile <16 x i32>, ptr @vectors, align 64408 %29 = call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %28, i32 -1)409 %30 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %29, i32 -1)410 store volatile <16 x i32> %30, ptr @Q6VecPredResult, align 64411 %31 = load volatile <16 x i32>, ptr @vecpreds, align 64412 %32 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %31, i32 -1)413 %33 = load volatile <16 x i32>, ptr @vectors, align 64414 %34 = call <64 x i1> @llvm.hexagon.V6.vandvrt.acc(<64 x i1> %32, <16 x i32> %33, i32 -1)415 %35 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %34, i32 -1)416 store volatile <16 x i32> %35, ptr @Q6VecPredResult, align 64417 %36 = load volatile <16 x i32>, ptr @vectors, align 64418 %37 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64419 %38 = call <64 x i1> @llvm.hexagon.V6.veqb(<16 x i32> %36, <16 x i32> %37)420 %39 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %38, i32 -1)421 store volatile <16 x i32> %39, ptr @Q6VecPredResult, align 64422 %40 = load volatile <16 x i32>, ptr @vectors, align 64423 %41 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64424 %42 = call <64 x i1> @llvm.hexagon.V6.veqh(<16 x i32> %40, <16 x i32> %41)425 %43 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %42, i32 -1)426 store volatile <16 x i32> %43, ptr @Q6VecPredResult, align 64427 %44 = load volatile <16 x i32>, ptr @vectors, align 64428 %45 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64429 %46 = call <64 x i1> @llvm.hexagon.V6.veqw(<16 x i32> %44, <16 x i32> %45)430 %47 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %46, i32 -1)431 store volatile <16 x i32> %47, ptr @Q6VecPredResult, align 64432 %48 = load volatile <16 x i32>, ptr @vecpreds, align 64433 %49 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %48, i32 -1)434 %50 = load volatile <16 x i32>, ptr @vectors, align 64435 %51 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64436 %52 = call <64 x i1> @llvm.hexagon.V6.veqb.and(<64 x i1> %49, <16 x i32> %50, <16 x i32> %51)437 %53 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %52, i32 -1)438 store volatile <16 x i32> %53, ptr @Q6VecPredResult, align 64439 %54 = load volatile <16 x i32>, ptr @vecpreds, align 64440 %55 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %54, i32 -1)441 %56 = load volatile <16 x i32>, ptr @vectors, align 64442 %57 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64443 %58 = call <64 x i1> @llvm.hexagon.V6.veqh.and(<64 x i1> %55, <16 x i32> %56, <16 x i32> %57)444 %59 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %58, i32 -1)445 store volatile <16 x i32> %59, ptr @Q6VecPredResult, align 64446 %60 = load volatile <16 x i32>, ptr @vecpreds, align 64447 %61 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %60, i32 -1)448 %62 = load volatile <16 x i32>, ptr @vectors, align 64449 %63 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64450 %64 = call <64 x i1> @llvm.hexagon.V6.veqw.and(<64 x i1> %61, <16 x i32> %62, <16 x i32> %63)451 %65 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %64, i32 -1)452 store volatile <16 x i32> %65, ptr @Q6VecPredResult, align 64453 %66 = load volatile <16 x i32>, ptr @vecpreds, align 64454 %67 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %66, i32 -1)455 %68 = load volatile <16 x i32>, ptr @vectors, align 64456 %69 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64457 %70 = call <64 x i1> @llvm.hexagon.V6.veqb.or(<64 x i1> %67, <16 x i32> %68, <16 x i32> %69)458 %71 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %70, i32 -1)459 store volatile <16 x i32> %71, ptr @Q6VecPredResult, align 64460 %72 = load volatile <16 x i32>, ptr @vecpreds, align 64461 %73 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %72, i32 -1)462 %74 = load volatile <16 x i32>, ptr @vectors, align 64463 %75 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64464 %76 = call <64 x i1> @llvm.hexagon.V6.veqh.or(<64 x i1> %73, <16 x i32> %74, <16 x i32> %75)465 %77 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %76, i32 -1)466 store volatile <16 x i32> %77, ptr @Q6VecPredResult, align 64467 %78 = load volatile <16 x i32>, ptr @vecpreds, align 64468 %79 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %78, i32 -1)469 %80 = load volatile <16 x i32>, ptr @vectors, align 64470 %81 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64471 %82 = call <64 x i1> @llvm.hexagon.V6.veqw.or(<64 x i1> %79, <16 x i32> %80, <16 x i32> %81)472 %83 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %82, i32 -1)473 store volatile <16 x i32> %83, ptr @Q6VecPredResult, align 64474 %84 = load volatile <16 x i32>, ptr @vecpreds, align 64475 %85 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %84, i32 -1)476 %86 = load volatile <16 x i32>, ptr @vectors, align 64477 %87 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64478 %88 = call <64 x i1> @llvm.hexagon.V6.veqb.xor(<64 x i1> %85, <16 x i32> %86, <16 x i32> %87)479 %89 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %88, i32 -1)480 store volatile <16 x i32> %89, ptr @Q6VecPredResult, align 64481 %90 = load volatile <16 x i32>, ptr @vecpreds, align 64482 %91 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %90, i32 -1)483 %92 = load volatile <16 x i32>, ptr @vectors, align 64484 %93 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64485 %94 = call <64 x i1> @llvm.hexagon.V6.veqh.xor(<64 x i1> %91, <16 x i32> %92, <16 x i32> %93)486 %95 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %94, i32 -1)487 store volatile <16 x i32> %95, ptr @Q6VecPredResult, align 64488 %96 = load volatile <16 x i32>, ptr @vecpreds, align 64489 %97 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %96, i32 -1)490 %98 = load volatile <16 x i32>, ptr @vectors, align 64491 %99 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64492 %100 = call <64 x i1> @llvm.hexagon.V6.veqw.xor(<64 x i1> %97, <16 x i32> %98, <16 x i32> %99)493 %101 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %100, i32 -1)494 store volatile <16 x i32> %101, ptr @Q6VecPredResult, align 64495 %102 = load volatile <16 x i32>, ptr @vectors, align 64496 %103 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64497 %104 = call <64 x i1> @llvm.hexagon.V6.vgtb(<16 x i32> %102, <16 x i32> %103)498 %105 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %104, i32 -1)499 store volatile <16 x i32> %105, ptr @Q6VecPredResult, align 64500 %106 = load volatile <16 x i32>, ptr @vectors, align 64501 %107 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64502 %108 = call <64 x i1> @llvm.hexagon.V6.vgth(<16 x i32> %106, <16 x i32> %107)503 %109 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %108, i32 -1)504 store volatile <16 x i32> %109, ptr @Q6VecPredResult, align 64505 %110 = load volatile <16 x i32>, ptr @vectors, align 64506 %111 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64507 %112 = call <64 x i1> @llvm.hexagon.V6.vgtub(<16 x i32> %110, <16 x i32> %111)508 %113 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %112, i32 -1)509 store volatile <16 x i32> %113, ptr @Q6VecPredResult, align 64510 %114 = load volatile <16 x i32>, ptr @vectors, align 64511 %115 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64512 %116 = call <64 x i1> @llvm.hexagon.V6.vgtuh(<16 x i32> %114, <16 x i32> %115)513 %117 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %116, i32 -1)514 store volatile <16 x i32> %117, ptr @Q6VecPredResult, align 64515 %118 = load volatile <16 x i32>, ptr @vectors, align 64516 %119 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64517 %120 = call <64 x i1> @llvm.hexagon.V6.vgtuw(<16 x i32> %118, <16 x i32> %119)518 %121 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %120, i32 -1)519 store volatile <16 x i32> %121, ptr @Q6VecPredResult, align 64520 %122 = load volatile <16 x i32>, ptr @vectors, align 64521 %123 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64522 %124 = call <64 x i1> @llvm.hexagon.V6.vgtw(<16 x i32> %122, <16 x i32> %123)523 %125 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %124, i32 -1)524 store volatile <16 x i32> %125, ptr @Q6VecPredResult, align 64525 %126 = load volatile <16 x i32>, ptr @vecpreds, align 64526 %127 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %126, i32 -1)527 %128 = load volatile <16 x i32>, ptr @vectors, align 64528 %129 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64529 %130 = call <64 x i1> @llvm.hexagon.V6.vgtb.and(<64 x i1> %127, <16 x i32> %128, <16 x i32> %129)530 %131 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %130, i32 -1)531 store volatile <16 x i32> %131, ptr @Q6VecPredResult, align 64532 %132 = load volatile <16 x i32>, ptr @vecpreds, align 64533 %133 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %132, i32 -1)534 %134 = load volatile <16 x i32>, ptr @vectors, align 64535 %135 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64536 %136 = call <64 x i1> @llvm.hexagon.V6.vgth.and(<64 x i1> %133, <16 x i32> %134, <16 x i32> %135)537 %137 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %136, i32 -1)538 store volatile <16 x i32> %137, ptr @Q6VecPredResult, align 64539 %138 = load volatile <16 x i32>, ptr @vecpreds, align 64540 %139 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %138, i32 -1)541 %140 = load volatile <16 x i32>, ptr @vectors, align 64542 %141 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64543 %142 = call <64 x i1> @llvm.hexagon.V6.vgtub.and(<64 x i1> %139, <16 x i32> %140, <16 x i32> %141)544 %143 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %142, i32 -1)545 store volatile <16 x i32> %143, ptr @Q6VecPredResult, align 64546 %144 = load volatile <16 x i32>, ptr @vecpreds, align 64547 %145 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %144, i32 -1)548 %146 = load volatile <16 x i32>, ptr @vectors, align 64549 %147 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64550 %148 = call <64 x i1> @llvm.hexagon.V6.vgtuh.and(<64 x i1> %145, <16 x i32> %146, <16 x i32> %147)551 %149 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %148, i32 -1)552 store volatile <16 x i32> %149, ptr @Q6VecPredResult, align 64553 %150 = load volatile <16 x i32>, ptr @vecpreds, align 64554 %151 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %150, i32 -1)555 %152 = load volatile <16 x i32>, ptr @vectors, align 64556 %153 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64557 %154 = call <64 x i1> @llvm.hexagon.V6.vgtuw.and(<64 x i1> %151, <16 x i32> %152, <16 x i32> %153)558 %155 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %154, i32 -1)559 store volatile <16 x i32> %155, ptr @Q6VecPredResult, align 64560 %156 = load volatile <16 x i32>, ptr @vecpreds, align 64561 %157 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %156, i32 -1)562 %158 = load volatile <16 x i32>, ptr @vectors, align 64563 %159 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64564 %160 = call <64 x i1> @llvm.hexagon.V6.vgtw.and(<64 x i1> %157, <16 x i32> %158, <16 x i32> %159)565 %161 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %160, i32 -1)566 store volatile <16 x i32> %161, ptr @Q6VecPredResult, align 64567 %162 = load volatile <16 x i32>, ptr @vecpreds, align 64568 %163 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %162, i32 -1)569 %164 = load volatile <16 x i32>, ptr @vectors, align 64570 %165 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64571 %166 = call <64 x i1> @llvm.hexagon.V6.vgtb.or(<64 x i1> %163, <16 x i32> %164, <16 x i32> %165)572 %167 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %166, i32 -1)573 store volatile <16 x i32> %167, ptr @Q6VecPredResult, align 64574 %168 = load volatile <16 x i32>, ptr @vecpreds, align 64575 %169 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %168, i32 -1)576 %170 = load volatile <16 x i32>, ptr @vectors, align 64577 %171 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64578 %172 = call <64 x i1> @llvm.hexagon.V6.vgth.or(<64 x i1> %169, <16 x i32> %170, <16 x i32> %171)579 %173 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %172, i32 -1)580 store volatile <16 x i32> %173, ptr @Q6VecPredResult, align 64581 %174 = load volatile <16 x i32>, ptr @vecpreds, align 64582 %175 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %174, i32 -1)583 %176 = load volatile <16 x i32>, ptr @vectors, align 64584 %177 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64585 %178 = call <64 x i1> @llvm.hexagon.V6.vgtub.or(<64 x i1> %175, <16 x i32> %176, <16 x i32> %177)586 %179 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %178, i32 -1)587 store volatile <16 x i32> %179, ptr @Q6VecPredResult, align 64588 %180 = load volatile <16 x i32>, ptr @vecpreds, align 64589 %181 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %180, i32 -1)590 %182 = load volatile <16 x i32>, ptr @vectors, align 64591 %183 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64592 %184 = call <64 x i1> @llvm.hexagon.V6.vgtuh.or(<64 x i1> %181, <16 x i32> %182, <16 x i32> %183)593 %185 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %184, i32 -1)594 store volatile <16 x i32> %185, ptr @Q6VecPredResult, align 64595 %186 = load volatile <16 x i32>, ptr @vecpreds, align 64596 %187 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %186, i32 -1)597 %188 = load volatile <16 x i32>, ptr @vectors, align 64598 %189 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64599 %190 = call <64 x i1> @llvm.hexagon.V6.vgtuw.or(<64 x i1> %187, <16 x i32> %188, <16 x i32> %189)600 %191 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %190, i32 -1)601 store volatile <16 x i32> %191, ptr @Q6VecPredResult, align 64602 %192 = load volatile <16 x i32>, ptr @vecpreds, align 64603 %193 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %192, i32 -1)604 %194 = load volatile <16 x i32>, ptr @vectors, align 64605 %195 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64606 %196 = call <64 x i1> @llvm.hexagon.V6.vgtw.or(<64 x i1> %193, <16 x i32> %194, <16 x i32> %195)607 %197 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %196, i32 -1)608 store volatile <16 x i32> %197, ptr @Q6VecPredResult, align 64609 %198 = load volatile <16 x i32>, ptr @vecpreds, align 64610 %199 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %198, i32 -1)611 %200 = load volatile <16 x i32>, ptr @vectors, align 64612 %201 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64613 %202 = call <64 x i1> @llvm.hexagon.V6.vgtb.xor(<64 x i1> %199, <16 x i32> %200, <16 x i32> %201)614 %203 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %202, i32 -1)615 store volatile <16 x i32> %203, ptr @Q6VecPredResult, align 64616 %204 = load volatile <16 x i32>, ptr @vecpreds, align 64617 %205 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %204, i32 -1)618 %206 = load volatile <16 x i32>, ptr @vectors, align 64619 %207 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64620 %208 = call <64 x i1> @llvm.hexagon.V6.vgth.xor(<64 x i1> %205, <16 x i32> %206, <16 x i32> %207)621 %209 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %208, i32 -1)622 store volatile <16 x i32> %209, ptr @Q6VecPredResult, align 64623 %210 = load volatile <16 x i32>, ptr @vecpreds, align 64624 %211 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %210, i32 -1)625 %212 = load volatile <16 x i32>, ptr @vectors, align 64626 %213 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64627 %214 = call <64 x i1> @llvm.hexagon.V6.vgtub.xor(<64 x i1> %211, <16 x i32> %212, <16 x i32> %213)628 %215 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %214, i32 -1)629 store volatile <16 x i32> %215, ptr @Q6VecPredResult, align 64630 %216 = load volatile <16 x i32>, ptr @vecpreds, align 64631 %217 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %216, i32 -1)632 %218 = load volatile <16 x i32>, ptr @vectors, align 64633 %219 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64634 %220 = call <64 x i1> @llvm.hexagon.V6.vgtuh.xor(<64 x i1> %217, <16 x i32> %218, <16 x i32> %219)635 %221 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %220, i32 -1)636 store volatile <16 x i32> %221, ptr @Q6VecPredResult, align 64637 %222 = load volatile <16 x i32>, ptr @vecpreds, align 64638 %223 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %222, i32 -1)639 %224 = load volatile <16 x i32>, ptr @vectors, align 64640 %225 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64641 %226 = call <64 x i1> @llvm.hexagon.V6.vgtuw.xor(<64 x i1> %223, <16 x i32> %224, <16 x i32> %225)642 %227 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %226, i32 -1)643 store volatile <16 x i32> %227, ptr @Q6VecPredResult, align 64644 %228 = load volatile <16 x i32>, ptr @vecpreds, align 64645 %229 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %228, i32 -1)646 %230 = load volatile <16 x i32>, ptr @vectors, align 64647 %231 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64648 %232 = call <64 x i1> @llvm.hexagon.V6.vgtw.xor(<64 x i1> %229, <16 x i32> %230, <16 x i32> %231)649 %233 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %232, i32 -1)650 store volatile <16 x i32> %233, ptr @Q6VecPredResult, align 64651 %234 = call <64 x i1> @llvm.hexagon.V6.pred.scalar2(i32 1)652 %235 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %234, i32 -1)653 store volatile <16 x i32> %235, ptr @Q6VecPredResult, align 64654 %236 = load volatile <16 x i32>, ptr @vecpreds, align 64655 %237 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %236, i32 -1)656 %238 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vecpreds, i32 0, i32 1), align 64657 %239 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %238, i32 -1)658 %240 = call <64 x i1> @llvm.hexagon.V6.pred.xor(<64 x i1> %237, <64 x i1> %239)659 %241 = tail call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %240, i32 -1)660 store volatile <16 x i32> %241, ptr @Q6VecPredResult, align 64661 %242 = load volatile <16 x i32>, ptr @vectors, align 64662 %243 = call <16 x i32> @llvm.hexagon.V6.vassign(<16 x i32> %242)663 store volatile <16 x i32> %243, ptr @VectorResult, align 64664 %244 = load volatile <32 x i32>, ptr @vector_pairs, align 128665 %245 = call <16 x i32> @llvm.hexagon.V6.hi(<32 x i32> %244)666 store volatile <16 x i32> %245, ptr @VectorResult, align 64667 %246 = load volatile <32 x i32>, ptr @vector_pairs, align 128668 %247 = call <16 x i32> @llvm.hexagon.V6.lo(<32 x i32> %246)669 store volatile <16 x i32> %247, ptr @VectorResult, align 64670 %248 = load volatile <16 x i32>, ptr @vectors, align 64671 %249 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64672 %250 = call <16 x i32> @llvm.hexagon.V6.valignbi(<16 x i32> %248, <16 x i32> %249, i32 1)673 store volatile <16 x i32> %250, ptr @VectorResult, align 64674 %251 = load volatile <16 x i32>, ptr @vectors, align 64675 %252 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64676 %253 = call <16 x i32> @llvm.hexagon.V6.valignb(<16 x i32> %251, <16 x i32> %252, i32 -1)677 store volatile <16 x i32> %253, ptr @VectorResult, align 64678 %254 = load volatile <16 x i32>, ptr @vecpreds, align 64679 %255 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %254, i32 -1)680 %256 = call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %255, i32 -1)681 store volatile <16 x i32> %256, ptr @VectorResult, align 64682 %257 = load volatile <16 x i32>, ptr @vectors, align 64683 %258 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64684 %259 = call <16 x i32> @llvm.hexagon.V6.vand(<16 x i32> %257, <16 x i32> %258)685 store volatile <16 x i32> %259, ptr @VectorResult, align 64686 %260 = load volatile <16 x i32>, ptr @vectors, align 64687 %261 = load volatile <16 x i32>, ptr @vecpreds, align 64688 %262 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %261, i32 -1)689 %263 = call <16 x i32> @llvm.hexagon.V6.vandqrt.acc(<16 x i32> %260, <64 x i1> %262, i32 -1)690 store volatile <16 x i32> %263, ptr @VectorResult, align 64691 %264 = load volatile <16 x i32>, ptr @vectors, align 64692 %265 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64693 %266 = call <16 x i32> @llvm.hexagon.V6.vdelta(<16 x i32> %264, <16 x i32> %265)694 store volatile <16 x i32> %266, ptr @VectorResult, align 64695 %267 = load volatile <16 x i32>, ptr @vectors, align 64696 %268 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64697 %269 = call <16 x i32> @llvm.hexagon.V6.vlalignbi(<16 x i32> %267, <16 x i32> %268, i32 1)698 store volatile <16 x i32> %269, ptr @VectorResult, align 64699 %270 = load volatile <16 x i32>, ptr @vectors, align 64700 %271 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64701 %272 = call <16 x i32> @llvm.hexagon.V6.vlalignb(<16 x i32> %270, <16 x i32> %271, i32 -1)702 store volatile <16 x i32> %272, ptr @VectorResult, align 64703 %273 = load volatile <16 x i32>, ptr @vecpreds, align 64704 %274 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %273, i32 -1)705 %275 = load volatile <16 x i32>, ptr @vectors, align 64706 %276 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64707 %277 = call <16 x i32> @llvm.hexagon.V6.vmux(<64 x i1> %274, <16 x i32> %275, <16 x i32> %276)708 store volatile <16 x i32> %277, ptr @VectorResult, align 64709 %278 = load volatile <16 x i32>, ptr @vectors, align 64710 %279 = call <16 x i32> @llvm.hexagon.V6.vnot(<16 x i32> %278)711 store volatile <16 x i32> %279, ptr @VectorResult, align 64712 %280 = load volatile <16 x i32>, ptr @vectors, align 64713 %281 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64714 %282 = call <16 x i32> @llvm.hexagon.V6.vor(<16 x i32> %280, <16 x i32> %281)715 store volatile <16 x i32> %282, ptr @VectorResult, align 64716 %283 = load volatile <16 x i32>, ptr @vectors, align 64717 %284 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64718 %285 = call <16 x i32> @llvm.hexagon.V6.vrdelta(<16 x i32> %283, <16 x i32> %284)719 store volatile <16 x i32> %285, ptr @VectorResult, align 64720 %286 = load volatile <16 x i32>, ptr @vectors, align 64721 %287 = call <16 x i32> @llvm.hexagon.V6.vror(<16 x i32> %286, i32 -1)722 store volatile <16 x i32> %287, ptr @VectorResult, align 64723 %288 = call <16 x i32> @llvm.hexagon.V6.lvsplatw(i32 -1)724 store volatile <16 x i32> %288, ptr @VectorResult, align 64725 %289 = load volatile <16 x i32>, ptr @vectors, align 64726 %290 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64727 %291 = call <16 x i32> @llvm.hexagon.V6.vxor(<16 x i32> %289, <16 x i32> %290)728 store volatile <16 x i32> %291, ptr @VectorResult, align 64729 %292 = call <16 x i32> @llvm.hexagon.V6.vd0()730 store volatile <16 x i32> %292, ptr @VectorResult, align 64731 %293 = load volatile <16 x i32>, ptr @vecpreds, align 64732 %294 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %293, i32 -1)733 %295 = load volatile <16 x i32>, ptr @vectors, align 64734 %296 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64735 %297 = call <16 x i32> @llvm.hexagon.V6.vaddbq(<64 x i1> %294, <16 x i32> %295, <16 x i32> %296)736 store volatile <16 x i32> %297, ptr @VectorResult, align 64737 %298 = load volatile <16 x i32>, ptr @vecpreds, align 64738 %299 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %298, i32 -1)739 %300 = load volatile <16 x i32>, ptr @vectors, align 64740 %301 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64741 %302 = call <16 x i32> @llvm.hexagon.V6.vaddbnq(<64 x i1> %299, <16 x i32> %300, <16 x i32> %301)742 store volatile <16 x i32> %302, ptr @VectorResult, align 64743 %303 = load volatile <16 x i32>, ptr @vecpreds, align 64744 %304 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %303, i32 -1)745 %305 = load volatile <16 x i32>, ptr @vectors, align 64746 %306 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64747 %307 = call <16 x i32> @llvm.hexagon.V6.vsubbq(<64 x i1> %304, <16 x i32> %305, <16 x i32> %306)748 store volatile <16 x i32> %307, ptr @VectorResult, align 64749 %308 = load volatile <16 x i32>, ptr @vecpreds, align 64750 %309 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %308, i32 -1)751 %310 = load volatile <16 x i32>, ptr @vectors, align 64752 %311 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64753 %312 = call <16 x i32> @llvm.hexagon.V6.vsubbnq(<64 x i1> %309, <16 x i32> %310, <16 x i32> %311)754 store volatile <16 x i32> %312, ptr @VectorResult, align 64755 %313 = load volatile <16 x i32>, ptr @vectors, align 64756 %314 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64757 %315 = call <16 x i32> @llvm.hexagon.V6.vaddb(<16 x i32> %313, <16 x i32> %314)758 store volatile <16 x i32> %315, ptr @VectorResult, align 64759 %316 = load volatile <16 x i32>, ptr @vectors, align 64760 %317 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64761 %318 = call <16 x i32> @llvm.hexagon.V6.vasrhbrndsat(<16 x i32> %316, <16 x i32> %317, i32 -1)762 store volatile <16 x i32> %318, ptr @VectorResult, align 64763 %319 = load volatile <16 x i32>, ptr @vectors, align 64764 %320 = call <16 x i32> @llvm.hexagon.V6.vdealb(<16 x i32> %319)765 store volatile <16 x i32> %320, ptr @VectorResult, align 64766 %321 = load volatile <16 x i32>, ptr @vectors, align 64767 %322 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64768 %323 = call <16 x i32> @llvm.hexagon.V6.vdealb4w(<16 x i32> %321, <16 x i32> %322)769 store volatile <16 x i32> %323, ptr @VectorResult, align 64770 %324 = load volatile <16 x i32>, ptr @vectors, align 64771 %325 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64772 %326 = call <16 x i32> @llvm.hexagon.V6.vlutvvb(<16 x i32> %324, <16 x i32> %325, i32 -1)773 store volatile <16 x i32> %326, ptr @VectorResult, align 64774 %327 = load volatile <16 x i32>, ptr @vectors, align 64775 %328 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64776 %329 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 2), align 64777 %330 = call <16 x i32> @llvm.hexagon.V6.vlutvvb.oracc(<16 x i32> %327, <16 x i32> %328, <16 x i32> %329, i32 -1)778 store volatile <16 x i32> %330, ptr @VectorResult, align 64779 %331 = load volatile <16 x i32>, ptr @vectors, align 64780 %332 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64781 %333 = call <16 x i32> @llvm.hexagon.V6.vnavgub(<16 x i32> %331, <16 x i32> %332)782 store volatile <16 x i32> %333, ptr @VectorResult, align 64783 %334 = load volatile <16 x i32>, ptr @vectors, align 64784 %335 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64785 %336 = call <16 x i32> @llvm.hexagon.V6.vpackhb.sat(<16 x i32> %334, <16 x i32> %335)786 store volatile <16 x i32> %336, ptr @VectorResult, align 64787 %337 = load volatile <16 x i32>, ptr @vectors, align 64788 %338 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64789 %339 = call <16 x i32> @llvm.hexagon.V6.vpackeb(<16 x i32> %337, <16 x i32> %338)790 store volatile <16 x i32> %339, ptr @VectorResult, align 64791 %340 = load volatile <16 x i32>, ptr @vectors, align 64792 %341 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64793 %342 = call <16 x i32> @llvm.hexagon.V6.vpackob(<16 x i32> %340, <16 x i32> %341)794 store volatile <16 x i32> %342, ptr @VectorResult, align 64795 %343 = load volatile <16 x i32>, ptr @vectors, align 64796 %344 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64797 %345 = call <16 x i32> @llvm.hexagon.V6.vroundhb(<16 x i32> %343, <16 x i32> %344)798 store volatile <16 x i32> %345, ptr @VectorResult, align 64799 %346 = load volatile <16 x i32>, ptr @vectors, align 64800 %347 = call <16 x i32> @llvm.hexagon.V6.vshuffb(<16 x i32> %346)801 store volatile <16 x i32> %347, ptr @VectorResult, align 64802 %348 = load volatile <16 x i32>, ptr @vectors, align 64803 %349 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64804 %350 = call <16 x i32> @llvm.hexagon.V6.vshuffeb(<16 x i32> %348, <16 x i32> %349)805 store volatile <16 x i32> %350, ptr @VectorResult, align 64806 %351 = load volatile <16 x i32>, ptr @vectors, align 64807 %352 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64808 %353 = call <16 x i32> @llvm.hexagon.V6.vshuffob(<16 x i32> %351, <16 x i32> %352)809 store volatile <16 x i32> %353, ptr @VectorResult, align 64810 %354 = load volatile <16 x i32>, ptr @vectors, align 64811 %355 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64812 %356 = call <16 x i32> @llvm.hexagon.V6.vsubb(<16 x i32> %354, <16 x i32> %355)813 store volatile <16 x i32> %356, ptr @VectorResult, align 64814 %357 = load volatile <16 x i32>, ptr @vecpreds, align 64815 %358 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %357, i32 -1)816 %359 = load volatile <16 x i32>, ptr @vectors, align 64817 %360 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64818 %361 = call <16 x i32> @llvm.hexagon.V6.vaddhq(<64 x i1> %358, <16 x i32> %359, <16 x i32> %360)819 store volatile <16 x i32> %361, ptr @VectorResult, align 64820 %362 = load volatile <16 x i32>, ptr @vecpreds, align 64821 %363 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %362, i32 -1)822 %364 = load volatile <16 x i32>, ptr @vectors, align 64823 %365 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64824 %366 = call <16 x i32> @llvm.hexagon.V6.vaddhnq(<64 x i1> %363, <16 x i32> %364, <16 x i32> %365)825 store volatile <16 x i32> %366, ptr @VectorResult, align 64826 %367 = load volatile <16 x i32>, ptr @vecpreds, align 64827 %368 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %367, i32 -1)828 %369 = load volatile <16 x i32>, ptr @vectors, align 64829 %370 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64830 %371 = call <16 x i32> @llvm.hexagon.V6.vsubhq(<64 x i1> %368, <16 x i32> %369, <16 x i32> %370)831 store volatile <16 x i32> %371, ptr @VectorResult, align 64832 %372 = load volatile <16 x i32>, ptr @vecpreds, align 64833 %373 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %372, i32 -1)834 %374 = load volatile <16 x i32>, ptr @vectors, align 64835 %375 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64836 %376 = call <16 x i32> @llvm.hexagon.V6.vsubhnq(<64 x i1> %373, <16 x i32> %374, <16 x i32> %375)837 store volatile <16 x i32> %376, ptr @VectorResult, align 64838 %377 = load volatile <16 x i32>, ptr @vectors, align 64839 %378 = call <16 x i32> @llvm.hexagon.V6.vabsh(<16 x i32> %377)840 store volatile <16 x i32> %378, ptr @VectorResult, align 64841 %379 = load volatile <16 x i32>, ptr @vectors, align 64842 %380 = call <16 x i32> @llvm.hexagon.V6.vabsh.sat(<16 x i32> %379)843 store volatile <16 x i32> %380, ptr @VectorResult, align 64844 %381 = load volatile <16 x i32>, ptr @vectors, align 64845 %382 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64846 %383 = call <16 x i32> @llvm.hexagon.V6.vaddh(<16 x i32> %381, <16 x i32> %382)847 store volatile <16 x i32> %383, ptr @VectorResult, align 64848 %384 = load volatile <16 x i32>, ptr @vectors, align 64849 %385 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64850 %386 = call <16 x i32> @llvm.hexagon.V6.vaddhsat(<16 x i32> %384, <16 x i32> %385)851 store volatile <16 x i32> %386, ptr @VectorResult, align 64852 %387 = load volatile <16 x i32>, ptr @vectors, align 64853 %388 = call <16 x i32> @llvm.hexagon.V6.vaslh(<16 x i32> %387, i32 -1)854 store volatile <16 x i32> %388, ptr @VectorResult, align 64855 %389 = load volatile <16 x i32>, ptr @vectors, align 64856 %390 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64857 %391 = call <16 x i32> @llvm.hexagon.V6.vaslhv(<16 x i32> %389, <16 x i32> %390)858 store volatile <16 x i32> %391, ptr @VectorResult, align 64859 %392 = load volatile <16 x i32>, ptr @vectors, align 64860 %393 = call <16 x i32> @llvm.hexagon.V6.vasrh(<16 x i32> %392, i32 -1)861 store volatile <16 x i32> %393, ptr @VectorResult, align 64862 %394 = load volatile <16 x i32>, ptr @vectors, align 64863 %395 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64864 %396 = call <16 x i32> @llvm.hexagon.V6.vasrhv(<16 x i32> %394, <16 x i32> %395)865 store volatile <16 x i32> %396, ptr @VectorResult, align 64866 %397 = load volatile <16 x i32>, ptr @vectors, align 64867 %398 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64868 %399 = call <16 x i32> @llvm.hexagon.V6.vasrwh(<16 x i32> %397, <16 x i32> %398, i32 -1)869 store volatile <16 x i32> %399, ptr @VectorResult, align 64870 %400 = load volatile <16 x i32>, ptr @vectors, align 64871 %401 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64872 %402 = call <16 x i32> @llvm.hexagon.V6.vasrwhrndsat(<16 x i32> %400, <16 x i32> %401, i32 -1)873 store volatile <16 x i32> %402, ptr @VectorResult, align 64874 %403 = load volatile <16 x i32>, ptr @vectors, align 64875 %404 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64876 %405 = call <16 x i32> @llvm.hexagon.V6.vasrwhsat(<16 x i32> %403, <16 x i32> %404, i32 -1)877 store volatile <16 x i32> %405, ptr @VectorResult, align 64878 %406 = load volatile <16 x i32>, ptr @vectors, align 64879 %407 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64880 %408 = call <16 x i32> @llvm.hexagon.V6.vavgh(<16 x i32> %406, <16 x i32> %407)881 store volatile <16 x i32> %408, ptr @VectorResult, align 64882 %409 = load volatile <16 x i32>, ptr @vectors, align 64883 %410 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64884 %411 = call <16 x i32> @llvm.hexagon.V6.vavghrnd(<16 x i32> %409, <16 x i32> %410)885 store volatile <16 x i32> %411, ptr @VectorResult, align 64886 %412 = load volatile <16 x i32>, ptr @vectors, align 64887 %413 = call <16 x i32> @llvm.hexagon.V6.vdealh(<16 x i32> %412)888 store volatile <16 x i32> %413, ptr @VectorResult, align 64889 %414 = load volatile <16 x i32>, ptr @vectors, align 64890 %415 = call <16 x i32> @llvm.hexagon.V6.vdmpybus(<16 x i32> %414, i32 -1)891 store volatile <16 x i32> %415, ptr @VectorResult, align 64892 %416 = load volatile <16 x i32>, ptr @vectors, align 64893 %417 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64894 %418 = call <16 x i32> @llvm.hexagon.V6.vdmpybus.acc(<16 x i32> %416, <16 x i32> %417, i32 -1)895 store volatile <16 x i32> %418, ptr @VectorResult, align 64896 %419 = load volatile <16 x i32>, ptr @vectors, align 64897 %420 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64898 %421 = call <16 x i32> @llvm.hexagon.V6.vlsrhv(<16 x i32> %419, <16 x i32> %420)899 store volatile <16 x i32> %421, ptr @VectorResult, align 64900 %422 = load volatile <16 x i32>, ptr @vectors, align 64901 %423 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64902 %424 = call <16 x i32> @llvm.hexagon.V6.vmaxh(<16 x i32> %422, <16 x i32> %423)903 store volatile <16 x i32> %424, ptr @VectorResult, align 64904 %425 = load volatile <16 x i32>, ptr @vectors, align 64905 %426 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64906 %427 = call <16 x i32> @llvm.hexagon.V6.vminh(<16 x i32> %425, <16 x i32> %426)907 store volatile <16 x i32> %427, ptr @VectorResult, align 64908 %428 = load volatile <16 x i32>, ptr @vectors, align 64909 %429 = call <16 x i32> @llvm.hexagon.V6.vmpyhsrs(<16 x i32> %428, i32 -1)910 store volatile <16 x i32> %429, ptr @VectorResult, align 64911 %430 = load volatile <16 x i32>, ptr @vectors, align 64912 %431 = call <16 x i32> @llvm.hexagon.V6.vmpyhss(<16 x i32> %430, i32 -1)913 store volatile <16 x i32> %431, ptr @VectorResult, align 64914 %432 = load volatile <16 x i32>, ptr @vectors, align 64915 %433 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64916 %434 = call <16 x i32> @llvm.hexagon.V6.vmpyhvsrs(<16 x i32> %432, <16 x i32> %433)917 store volatile <16 x i32> %434, ptr @VectorResult, align 64918 %435 = load volatile <16 x i32>, ptr @vectors, align 64919 %436 = call <16 x i32> @llvm.hexagon.V6.vmpyihb(<16 x i32> %435, i32 -1)920 store volatile <16 x i32> %436, ptr @VectorResult, align 64921 %437 = load volatile <16 x i32>, ptr @vectors, align 64922 %438 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64923 %439 = call <16 x i32> @llvm.hexagon.V6.vmpyih(<16 x i32> %437, <16 x i32> %438)924 store volatile <16 x i32> %439, ptr @VectorResult, align 64925 %440 = load volatile <16 x i32>, ptr @vectors, align 64926 %441 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64927 %442 = call <16 x i32> @llvm.hexagon.V6.vmpyihb.acc(<16 x i32> %440, <16 x i32> %441, i32 -1)928 store volatile <16 x i32> %442, ptr @VectorResult, align 64929 %443 = load volatile <16 x i32>, ptr @vectors, align 64930 %444 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64931 %445 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 2), align 64932 %446 = call <16 x i32> @llvm.hexagon.V6.vmpyih.acc(<16 x i32> %443, <16 x i32> %444, <16 x i32> %445)933 store volatile <16 x i32> %446, ptr @VectorResult, align 64934 %447 = load volatile <16 x i32>, ptr @vectors, align 64935 %448 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64936 %449 = call <16 x i32> @llvm.hexagon.V6.vnavgh(<16 x i32> %447, <16 x i32> %448)937 store volatile <16 x i32> %449, ptr @VectorResult, align 64938 %450 = load volatile <16 x i32>, ptr @vectors, align 64939 %451 = call <16 x i32> @llvm.hexagon.V6.vnormamth(<16 x i32> %450)940 store volatile <16 x i32> %451, ptr @VectorResult, align 64941 %452 = load volatile <16 x i32>, ptr @vectors, align 64942 %453 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64943 %454 = call <16 x i32> @llvm.hexagon.V6.vpackwh.sat(<16 x i32> %452, <16 x i32> %453)944 store volatile <16 x i32> %454, ptr @VectorResult, align 64945 %455 = load volatile <16 x i32>, ptr @vectors, align 64946 %456 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64947 %457 = call <16 x i32> @llvm.hexagon.V6.vpackeh(<16 x i32> %455, <16 x i32> %456)948 store volatile <16 x i32> %457, ptr @VectorResult, align 64949 %458 = load volatile <16 x i32>, ptr @vectors, align 64950 %459 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64951 %460 = call <16 x i32> @llvm.hexagon.V6.vpackoh(<16 x i32> %458, <16 x i32> %459)952 store volatile <16 x i32> %460, ptr @VectorResult, align 64953 %461 = load volatile <16 x i32>, ptr @vectors, align 64954 %462 = call <16 x i32> @llvm.hexagon.V6.vpopcounth(<16 x i32> %461)955 store volatile <16 x i32> %462, ptr @VectorResult, align 64956 %463 = load volatile <16 x i32>, ptr @vectors, align 64957 %464 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64958 %465 = call <16 x i32> @llvm.hexagon.V6.vroundwh(<16 x i32> %463, <16 x i32> %464)959 store volatile <16 x i32> %465, ptr @VectorResult, align 64960 %466 = load volatile <16 x i32>, ptr @vectors, align 64961 %467 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64962 %468 = call <16 x i32> @llvm.hexagon.V6.vsatwh(<16 x i32> %466, <16 x i32> %467)963 store volatile <16 x i32> %468, ptr @VectorResult, align 64964 %469 = load volatile <16 x i32>, ptr @vectors, align 64965 %470 = call <16 x i32> @llvm.hexagon.V6.vshuffh(<16 x i32> %469)966 store volatile <16 x i32> %470, ptr @VectorResult, align 64967 %471 = load volatile <16 x i32>, ptr @vectors, align 64968 %472 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64969 %473 = call <16 x i32> @llvm.hexagon.V6.vshufeh(<16 x i32> %471, <16 x i32> %472)970 store volatile <16 x i32> %473, ptr @VectorResult, align 64971 %474 = load volatile <16 x i32>, ptr @vectors, align 64972 %475 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64973 %476 = call <16 x i32> @llvm.hexagon.V6.vshufoh(<16 x i32> %474, <16 x i32> %475)974 store volatile <16 x i32> %476, ptr @VectorResult, align 64975 %477 = load volatile <16 x i32>, ptr @vectors, align 64976 %478 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64977 %479 = call <16 x i32> @llvm.hexagon.V6.vsubh(<16 x i32> %477, <16 x i32> %478)978 store volatile <16 x i32> %479, ptr @VectorResult, align 64979 %480 = load volatile <16 x i32>, ptr @vectors, align 64980 %481 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64981 %482 = call <16 x i32> @llvm.hexagon.V6.vsubhsat(<16 x i32> %480, <16 x i32> %481)982 store volatile <16 x i32> %482, ptr @VectorResult, align 64983 %483 = load volatile <16 x i32>, ptr @vectors, align 64984 %484 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64985 %485 = call <16 x i32> @llvm.hexagon.V6.vabsdiffub(<16 x i32> %483, <16 x i32> %484)986 store volatile <16 x i32> %485, ptr @VectorResult, align 64987 %486 = load volatile <16 x i32>, ptr @vectors, align 64988 %487 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64989 %488 = call <16 x i32> @llvm.hexagon.V6.vaddubsat(<16 x i32> %486, <16 x i32> %487)990 store volatile <16 x i32> %488, ptr @VectorResult, align 64991 %489 = load volatile <16 x i32>, ptr @vectors, align 64992 %490 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64993 %491 = call <16 x i32> @llvm.hexagon.V6.vasrhubrndsat(<16 x i32> %489, <16 x i32> %490, i32 -1)994 store volatile <16 x i32> %491, ptr @VectorResult, align 64995 %492 = load volatile <16 x i32>, ptr @vectors, align 64996 %493 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 64997 %494 = call <16 x i32> @llvm.hexagon.V6.vasrhubsat(<16 x i32> %492, <16 x i32> %493, i32 -1)998 store volatile <16 x i32> %494, ptr @VectorResult, align 64999 %495 = load volatile <16 x i32>, ptr @vectors, align 641000 %496 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641001 %497 = call <16 x i32> @llvm.hexagon.V6.vavgub(<16 x i32> %495, <16 x i32> %496)1002 store volatile <16 x i32> %497, ptr @VectorResult, align 641003 %498 = load volatile <16 x i32>, ptr @vectors, align 641004 %499 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641005 %500 = call <16 x i32> @llvm.hexagon.V6.vavgubrnd(<16 x i32> %498, <16 x i32> %499)1006 store volatile <16 x i32> %500, ptr @VectorResult, align 641007 %501 = load volatile <16 x i32>, ptr @vectors, align 641008 %502 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641009 %503 = call <16 x i32> @llvm.hexagon.V6.vmaxub(<16 x i32> %501, <16 x i32> %502)1010 store volatile <16 x i32> %503, ptr @VectorResult, align 641011 %504 = load volatile <16 x i32>, ptr @vectors, align 641012 %505 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641013 %506 = call <16 x i32> @llvm.hexagon.V6.vminub(<16 x i32> %504, <16 x i32> %505)1014 store volatile <16 x i32> %506, ptr @VectorResult, align 641015 %507 = load volatile <16 x i32>, ptr @vectors, align 641016 %508 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641017 %509 = call <16 x i32> @llvm.hexagon.V6.vpackhub.sat(<16 x i32> %507, <16 x i32> %508)1018 store volatile <16 x i32> %509, ptr @VectorResult, align 641019 %510 = load volatile <16 x i32>, ptr @vectors, align 641020 %511 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641021 %512 = call <16 x i32> @llvm.hexagon.V6.vroundhub(<16 x i32> %510, <16 x i32> %511)1022 store volatile <16 x i32> %512, ptr @VectorResult, align 641023 %513 = load volatile <16 x i32>, ptr @vectors, align 641024 %514 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641025 %515 = call <16 x i32> @llvm.hexagon.V6.vsathub(<16 x i32> %513, <16 x i32> %514)1026 store volatile <16 x i32> %515, ptr @VectorResult, align 641027 %516 = load volatile <16 x i32>, ptr @vectors, align 641028 %517 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641029 %518 = call <16 x i32> @llvm.hexagon.V6.vsububsat(<16 x i32> %516, <16 x i32> %517)1030 store volatile <16 x i32> %518, ptr @VectorResult, align 641031 %519 = load volatile <16 x i32>, ptr @vectors, align 641032 %520 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641033 %521 = call <16 x i32> @llvm.hexagon.V6.vabsdiffh(<16 x i32> %519, <16 x i32> %520)1034 store volatile <16 x i32> %521, ptr @VectorResult, align 641035 %522 = load volatile <16 x i32>, ptr @vectors, align 641036 %523 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641037 %524 = call <16 x i32> @llvm.hexagon.V6.vabsdiffuh(<16 x i32> %522, <16 x i32> %523)1038 store volatile <16 x i32> %524, ptr @VectorResult, align 641039 %525 = load volatile <16 x i32>, ptr @vectors, align 641040 %526 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641041 %527 = call <16 x i32> @llvm.hexagon.V6.vadduhsat(<16 x i32> %525, <16 x i32> %526)1042 store volatile <16 x i32> %527, ptr @VectorResult, align 641043 %528 = load volatile <16 x i32>, ptr @vectors, align 641044 %529 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641045 %530 = call <16 x i32> @llvm.hexagon.V6.vasrwuhsat(<16 x i32> %528, <16 x i32> %529, i32 -1)1046 store volatile <16 x i32> %530, ptr @VectorResult, align 641047 %531 = load volatile <16 x i32>, ptr @vectors, align 641048 %532 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641049 %533 = call <16 x i32> @llvm.hexagon.V6.vavguh(<16 x i32> %531, <16 x i32> %532)1050 store volatile <16 x i32> %533, ptr @VectorResult, align 641051 %534 = load volatile <16 x i32>, ptr @vectors, align 641052 %535 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641053 %536 = call <16 x i32> @llvm.hexagon.V6.vavguhrnd(<16 x i32> %534, <16 x i32> %535)1054 store volatile <16 x i32> %536, ptr @VectorResult, align 641055 %537 = load volatile <16 x i32>, ptr @vectors, align 641056 %538 = call <16 x i32> @llvm.hexagon.V6.vcl0h(<16 x i32> %537)1057 store volatile <16 x i32> %538, ptr @VectorResult, align 641058 %539 = load volatile <16 x i32>, ptr @vectors, align 641059 %540 = call <16 x i32> @llvm.hexagon.V6.vlsrh(<16 x i32> %539, i32 -1)1060 store volatile <16 x i32> %540, ptr @VectorResult, align 641061 %541 = load volatile <16 x i32>, ptr @vectors, align 641062 %542 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641063 %543 = call <16 x i32> @llvm.hexagon.V6.vmaxuh(<16 x i32> %541, <16 x i32> %542)1064 store volatile <16 x i32> %543, ptr @VectorResult, align 641065 %544 = load volatile <16 x i32>, ptr @vectors, align 641066 %545 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641067 %546 = call <16 x i32> @llvm.hexagon.V6.vminuh(<16 x i32> %544, <16 x i32> %545)1068 store volatile <16 x i32> %546, ptr @VectorResult, align 641069 %547 = load volatile <16 x i32>, ptr @vectors, align 641070 %548 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641071 %549 = call <16 x i32> @llvm.hexagon.V6.vpackwuh.sat(<16 x i32> %547, <16 x i32> %548)1072 store volatile <16 x i32> %549, ptr @VectorResult, align 641073 %550 = load volatile <16 x i32>, ptr @vectors, align 641074 %551 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641075 %552 = call <16 x i32> @llvm.hexagon.V6.vroundwuh(<16 x i32> %550, <16 x i32> %551)1076 store volatile <16 x i32> %552, ptr @VectorResult, align 641077 %553 = load volatile <16 x i32>, ptr @vectors, align 641078 %554 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641079 %555 = call <16 x i32> @llvm.hexagon.V6.vsubuhsat(<16 x i32> %553, <16 x i32> %554)1080 store volatile <16 x i32> %555, ptr @VectorResult, align 641081 %556 = load volatile <16 x i32>, ptr @vectors, align 641082 %557 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641083 %558 = call <16 x i32> @llvm.hexagon.V6.vabsdiffw(<16 x i32> %556, <16 x i32> %557)1084 store volatile <16 x i32> %558, ptr @VectorResult, align 641085 %559 = load volatile <16 x i32>, ptr @vectors, align 641086 %560 = call <16 x i32> @llvm.hexagon.V6.vcl0w(<16 x i32> %559)1087 store volatile <16 x i32> %560, ptr @VectorResult, align 641088 %561 = load volatile <16 x i32>, ptr @vectors, align 641089 %562 = call <16 x i32> @llvm.hexagon.V6.vlsrw(<16 x i32> %561, i32 -1)1090 store volatile <16 x i32> %562, ptr @VectorResult, align 641091 %563 = load volatile <16 x i32>, ptr @vectors, align 641092 %564 = call <16 x i32> @llvm.hexagon.V6.vrmpyub(<16 x i32> %563, i32 -1)1093 store volatile <16 x i32> %564, ptr @VectorResult, align 641094 %565 = load volatile <16 x i32>, ptr @vectors, align 641095 %566 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641096 %567 = call <16 x i32> @llvm.hexagon.V6.vrmpyubv(<16 x i32> %565, <16 x i32> %566)1097 store volatile <16 x i32> %567, ptr @VectorResult, align 641098 %568 = load volatile <16 x i32>, ptr @vectors, align 641099 %569 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641100 %570 = call <16 x i32> @llvm.hexagon.V6.vrmpyub.acc(<16 x i32> %568, <16 x i32> %569, i32 -1)1101 store volatile <16 x i32> %570, ptr @VectorResult, align 641102 %571 = load volatile <16 x i32>, ptr @vectors, align 641103 %572 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641104 %573 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 2), align 641105 %574 = call <16 x i32> @llvm.hexagon.V6.vrmpyubv.acc(<16 x i32> %571, <16 x i32> %572, <16 x i32> %573)1106 store volatile <16 x i32> %574, ptr @VectorResult, align 641107 %575 = load volatile <16 x i32>, ptr @vecpreds, align 641108 %576 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %575, i32 -1)1109 %577 = load volatile <16 x i32>, ptr @vectors, align 641110 %578 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641111 %579 = call <16 x i32> @llvm.hexagon.V6.vaddwq(<64 x i1> %576, <16 x i32> %577, <16 x i32> %578)1112 store volatile <16 x i32> %579, ptr @VectorResult, align 641113 %580 = load volatile <16 x i32>, ptr @vecpreds, align 641114 %581 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %580, i32 -1)1115 %582 = load volatile <16 x i32>, ptr @vectors, align 641116 %583 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641117 %584 = call <16 x i32> @llvm.hexagon.V6.vaddwnq(<64 x i1> %581, <16 x i32> %582, <16 x i32> %583)1118 store volatile <16 x i32> %584, ptr @VectorResult, align 641119 %585 = load volatile <16 x i32>, ptr @vecpreds, align 641120 %586 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %585, i32 -1)1121 %587 = load volatile <16 x i32>, ptr @vectors, align 641122 %588 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641123 %589 = call <16 x i32> @llvm.hexagon.V6.vsubwq(<64 x i1> %586, <16 x i32> %587, <16 x i32> %588)1124 store volatile <16 x i32> %589, ptr @VectorResult, align 641125 %590 = load volatile <16 x i32>, ptr @vecpreds, align 641126 %591 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %590, i32 -1)1127 %592 = load volatile <16 x i32>, ptr @vectors, align 641128 %593 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641129 %594 = call <16 x i32> @llvm.hexagon.V6.vsubwnq(<64 x i1> %591, <16 x i32> %592, <16 x i32> %593)1130 store volatile <16 x i32> %594, ptr @VectorResult, align 641131 %595 = load volatile <16 x i32>, ptr @vectors, align 641132 %596 = call <16 x i32> @llvm.hexagon.V6.vabsw(<16 x i32> %595)1133 store volatile <16 x i32> %596, ptr @VectorResult, align 641134 %597 = load volatile <16 x i32>, ptr @vectors, align 641135 %598 = call <16 x i32> @llvm.hexagon.V6.vabsw.sat(<16 x i32> %597)1136 store volatile <16 x i32> %598, ptr @VectorResult, align 641137 %599 = load volatile <16 x i32>, ptr @vectors, align 641138 %600 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641139 %601 = call <16 x i32> @llvm.hexagon.V6.vaddw(<16 x i32> %599, <16 x i32> %600)1140 store volatile <16 x i32> %601, ptr @VectorResult, align 641141 %602 = load volatile <16 x i32>, ptr @vectors, align 641142 %603 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641143 %604 = call <16 x i32> @llvm.hexagon.V6.vaddwsat(<16 x i32> %602, <16 x i32> %603)1144 store volatile <16 x i32> %604, ptr @VectorResult, align 641145 %605 = load volatile <16 x i32>, ptr @vectors, align 641146 %606 = call <16 x i32> @llvm.hexagon.V6.vaslw(<16 x i32> %605, i32 -1)1147 store volatile <16 x i32> %606, ptr @VectorResult, align 641148 %607 = load volatile <16 x i32>, ptr @vectors, align 641149 %608 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641150 %609 = call <16 x i32> @llvm.hexagon.V6.vaslwv(<16 x i32> %607, <16 x i32> %608)1151 store volatile <16 x i32> %609, ptr @VectorResult, align 641152 %610 = load volatile <16 x i32>, ptr @vectors, align 641153 %611 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641154 %612 = call <16 x i32> @llvm.hexagon.V6.vaslw.acc(<16 x i32> %610, <16 x i32> %611, i32 -1)1155 store volatile <16 x i32> %612, ptr @VectorResult, align 641156 %613 = load volatile <16 x i32>, ptr @vectors, align 641157 %614 = call <16 x i32> @llvm.hexagon.V6.vasrw(<16 x i32> %613, i32 -1)1158 store volatile <16 x i32> %614, ptr @VectorResult, align 641159 %615 = load volatile <16 x i32>, ptr @vectors, align 641160 %616 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641161 %617 = call <16 x i32> @llvm.hexagon.V6.vasrwv(<16 x i32> %615, <16 x i32> %616)1162 store volatile <16 x i32> %617, ptr @VectorResult, align 641163 %618 = load volatile <16 x i32>, ptr @vectors, align 641164 %619 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641165 %620 = call <16 x i32> @llvm.hexagon.V6.vasrw.acc(<16 x i32> %618, <16 x i32> %619, i32 -1)1166 store volatile <16 x i32> %620, ptr @VectorResult, align 641167 %621 = load volatile <16 x i32>, ptr @vectors, align 641168 %622 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641169 %623 = call <16 x i32> @llvm.hexagon.V6.vavgw(<16 x i32> %621, <16 x i32> %622)1170 store volatile <16 x i32> %623, ptr @VectorResult, align 641171 %624 = load volatile <16 x i32>, ptr @vectors, align 641172 %625 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641173 %626 = call <16 x i32> @llvm.hexagon.V6.vavgwrnd(<16 x i32> %624, <16 x i32> %625)1174 store volatile <16 x i32> %626, ptr @VectorResult, align 641175 %627 = load volatile <16 x i32>, ptr @vectors, align 641176 %628 = call <16 x i32> @llvm.hexagon.V6.vdmpyhb(<16 x i32> %627, i32 -1)1177 store volatile <16 x i32> %628, ptr @VectorResult, align 641178 %629 = load volatile <16 x i32>, ptr @vectors, align 641179 %630 = call <16 x i32> @llvm.hexagon.V6.vdmpyhsat(<16 x i32> %629, i32 -1)1180 store volatile <16 x i32> %630, ptr @VectorResult, align 641181 %631 = load volatile <16 x i32>, ptr @vectors, align 641182 %632 = call <16 x i32> @llvm.hexagon.V6.vdmpyhsusat(<16 x i32> %631, i32 -1)1183 store volatile <16 x i32> %632, ptr @VectorResult, align 641184 %633 = load volatile <16 x i32>, ptr @vectors, align 641185 %634 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641186 %635 = call <16 x i32> @llvm.hexagon.V6.vdmpyhvsat(<16 x i32> %633, <16 x i32> %634)1187 store volatile <16 x i32> %635, ptr @VectorResult, align 641188 %636 = load volatile <32 x i32>, ptr @vector_pairs, align 1281189 %637 = call <16 x i32> @llvm.hexagon.V6.vdmpyhisat(<32 x i32> %636, i32 -1)1190 store volatile <16 x i32> %637, ptr @VectorResult, align 641191 %638 = load volatile <32 x i32>, ptr @vector_pairs, align 1281192 %639 = call <16 x i32> @llvm.hexagon.V6.vdmpyhsuisat(<32 x i32> %638, i32 -1)1193 store volatile <16 x i32> %639, ptr @VectorResult, align 641194 %640 = load volatile <16 x i32>, ptr @vectors, align 641195 %641 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641196 %642 = call <16 x i32> @llvm.hexagon.V6.vdmpyhb.acc(<16 x i32> %640, <16 x i32> %641, i32 -1)1197 store volatile <16 x i32> %642, ptr @VectorResult, align 641198 %643 = load volatile <16 x i32>, ptr @vectors, align 641199 %644 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641200 %645 = call <16 x i32> @llvm.hexagon.V6.vdmpyhsat.acc(<16 x i32> %643, <16 x i32> %644, i32 -1)1201 store volatile <16 x i32> %645, ptr @VectorResult, align 641202 %646 = load volatile <16 x i32>, ptr @vectors, align 641203 %647 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641204 %648 = call <16 x i32> @llvm.hexagon.V6.vdmpyhsusat.acc(<16 x i32> %646, <16 x i32> %647, i32 -1)1205 store volatile <16 x i32> %648, ptr @VectorResult, align 641206 %649 = load volatile <16 x i32>, ptr @vectors, align 641207 %650 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641208 %651 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 2), align 641209 %652 = call <16 x i32> @llvm.hexagon.V6.vdmpyhvsat.acc(<16 x i32> %649, <16 x i32> %650, <16 x i32> %651)1210 store volatile <16 x i32> %652, ptr @VectorResult, align 641211 %653 = load volatile <16 x i32>, ptr @vectors, align 641212 %654 = load volatile <32 x i32>, ptr @vector_pairs, align 1281213 %655 = call <16 x i32> @llvm.hexagon.V6.vdmpyhisat.acc(<16 x i32> %653, <32 x i32> %654, i32 -1)1214 store volatile <16 x i32> %655, ptr @VectorResult, align 641215 %656 = load volatile <16 x i32>, ptr @vectors, align 641216 %657 = load volatile <32 x i32>, ptr @vector_pairs, align 1281217 %658 = call <16 x i32> @llvm.hexagon.V6.vdmpyhsuisat.acc(<16 x i32> %656, <32 x i32> %657, i32 -1)1218 store volatile <16 x i32> %658, ptr @VectorResult, align 641219 %659 = load volatile <16 x i32>, ptr @vectors, align 641220 %660 = call <16 x i32> @llvm.hexagon.V6.vinsertwr(<16 x i32> %659, i32 -1)1221 store volatile <16 x i32> %660, ptr @VectorResult, align 641222 %661 = load volatile <16 x i32>, ptr @vectors, align 641223 %662 = call <16 x i32> @llvm.hexagon.V6.vinsertwr(<16 x i32> %661, i32 0)1224 store volatile <16 x i32> %662, ptr @VectorResult, align 641225 %663 = load volatile <16 x i32>, ptr @vectors, align 641226 %664 = call <16 x i32> @llvm.hexagon.V6.vinsertwr(<16 x i32> %663, i32 1)1227 store volatile <16 x i32> %664, ptr @VectorResult, align 641228 %665 = load volatile <16 x i32>, ptr @vectors, align 641229 %666 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641230 %667 = call <16 x i32> @llvm.hexagon.V6.vlsrwv(<16 x i32> %665, <16 x i32> %666)1231 store volatile <16 x i32> %667, ptr @VectorResult, align 641232 %668 = load volatile <16 x i32>, ptr @vectors, align 641233 %669 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641234 %670 = call <16 x i32> @llvm.hexagon.V6.vmaxw(<16 x i32> %668, <16 x i32> %669)1235 store volatile <16 x i32> %670, ptr @VectorResult, align 641236 %671 = load volatile <16 x i32>, ptr @vectors, align 641237 %672 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641238 %673 = call <16 x i32> @llvm.hexagon.V6.vminw(<16 x i32> %671, <16 x i32> %672)1239 store volatile <16 x i32> %673, ptr @VectorResult, align 641240 %674 = load volatile <16 x i32>, ptr @vectors, align 641241 %675 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641242 %676 = call <16 x i32> @llvm.hexagon.V6.vmpyewuh(<16 x i32> %674, <16 x i32> %675)1243 store volatile <16 x i32> %676, ptr @VectorResult, align 641244 %677 = load volatile <16 x i32>, ptr @vectors, align 641245 %678 = call <16 x i32> @llvm.hexagon.V6.vmpyiwb(<16 x i32> %677, i32 -1)1246 store volatile <16 x i32> %678, ptr @VectorResult, align 641247 %679 = load volatile <16 x i32>, ptr @vectors, align 641248 %680 = call <16 x i32> @llvm.hexagon.V6.vmpyiwh(<16 x i32> %679, i32 -1)1249 store volatile <16 x i32> %680, ptr @VectorResult, align 641250 %681 = load volatile <16 x i32>, ptr @vectors, align 641251 %682 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641252 %683 = call <16 x i32> @llvm.hexagon.V6.vmpyiwb.acc(<16 x i32> %681, <16 x i32> %682, i32 -1)1253 store volatile <16 x i32> %683, ptr @VectorResult, align 641254 %684 = load volatile <16 x i32>, ptr @vectors, align 641255 %685 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641256 %686 = call <16 x i32> @llvm.hexagon.V6.vmpyiwh.acc(<16 x i32> %684, <16 x i32> %685, i32 -1)1257 store volatile <16 x i32> %686, ptr @VectorResult, align 641258 %687 = load volatile <16 x i32>, ptr @vectors, align 641259 %688 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641260 %689 = call <16 x i32> @llvm.hexagon.V6.vmpyiewuh(<16 x i32> %687, <16 x i32> %688)1261 store volatile <16 x i32> %689, ptr @VectorResult, align 641262 %690 = load volatile <16 x i32>, ptr @vectors, align 641263 %691 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641264 %692 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 2), align 641265 %693 = call <16 x i32> @llvm.hexagon.V6.vmpyiewh.acc(<16 x i32> %690, <16 x i32> %691, <16 x i32> %692)1266 store volatile <16 x i32> %693, ptr @VectorResult, align 641267 %694 = load volatile <16 x i32>, ptr @vectors, align 641268 %695 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641269 %696 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 2), align 641270 %697 = call <16 x i32> @llvm.hexagon.V6.vmpyiewuh.acc(<16 x i32> %694, <16 x i32> %695, <16 x i32> %696)1271 store volatile <16 x i32> %697, ptr @VectorResult, align 641272 %698 = load volatile <16 x i32>, ptr @vectors, align 641273 %699 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641274 %700 = call <16 x i32> @llvm.hexagon.V6.vmpyieoh(<16 x i32> %698, <16 x i32> %699)1275 store volatile <16 x i32> %700, ptr @VectorResult, align 641276 %701 = load volatile <16 x i32>, ptr @vectors, align 641277 %702 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641278 %703 = call <16 x i32> @llvm.hexagon.V6.vmpyiowh(<16 x i32> %701, <16 x i32> %702)1279 store volatile <16 x i32> %703, ptr @VectorResult, align 641280 %704 = load volatile <16 x i32>, ptr @vectors, align 641281 %705 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641282 %706 = call <16 x i32> @llvm.hexagon.V6.vmpyowh.rnd(<16 x i32> %704, <16 x i32> %705)1283 store volatile <16 x i32> %706, ptr @VectorResult, align 641284 %707 = load volatile <16 x i32>, ptr @vectors, align 641285 %708 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641286 %709 = call <16 x i32> @llvm.hexagon.V6.vmpyowh(<16 x i32> %707, <16 x i32> %708)1287 store volatile <16 x i32> %709, ptr @VectorResult, align 641288 %710 = load volatile <16 x i32>, ptr @vectors, align 641289 %711 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641290 %712 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 2), align 641291 %713 = call <16 x i32> @llvm.hexagon.V6.vmpyowh.rnd.sacc(<16 x i32> %710, <16 x i32> %711, <16 x i32> %712)1292 store volatile <16 x i32> %713, ptr @VectorResult, align 641293 %714 = load volatile <16 x i32>, ptr @vectors, align 641294 %715 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641295 %716 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 2), align 641296 %717 = call <16 x i32> @llvm.hexagon.V6.vmpyowh.sacc(<16 x i32> %714, <16 x i32> %715, <16 x i32> %716)1297 store volatile <16 x i32> %717, ptr @VectorResult, align 641298 %718 = load volatile <16 x i32>, ptr @vectors, align 641299 %719 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641300 %720 = call <16 x i32> @llvm.hexagon.V6.vnavgw(<16 x i32> %718, <16 x i32> %719)1301 store volatile <16 x i32> %720, ptr @VectorResult, align 641302 %721 = load volatile <16 x i32>, ptr @vectors, align 641303 %722 = call <16 x i32> @llvm.hexagon.V6.vnormamtw(<16 x i32> %721)1304 store volatile <16 x i32> %722, ptr @VectorResult, align 641305 %723 = load volatile <16 x i32>, ptr @vectors, align 641306 %724 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641307 %725 = call <16 x i32> @llvm.hexagon.V6.vrmpybv(<16 x i32> %723, <16 x i32> %724)1308 store volatile <16 x i32> %725, ptr @VectorResult, align 641309 %726 = load volatile <16 x i32>, ptr @vectors, align 641310 %727 = call <16 x i32> @llvm.hexagon.V6.vrmpybus(<16 x i32> %726, i32 -1)1311 store volatile <16 x i32> %727, ptr @VectorResult, align 641312 %728 = load volatile <16 x i32>, ptr @vectors, align 641313 %729 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641314 %730 = call <16 x i32> @llvm.hexagon.V6.vrmpybusv(<16 x i32> %728, <16 x i32> %729)1315 store volatile <16 x i32> %730, ptr @VectorResult, align 641316 %731 = load volatile <16 x i32>, ptr @vectors, align 641317 %732 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641318 %733 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 2), align 641319 %734 = call <16 x i32> @llvm.hexagon.V6.vrmpybv.acc(<16 x i32> %731, <16 x i32> %732, <16 x i32> %733)1320 store volatile <16 x i32> %734, ptr @VectorResult, align 641321 %735 = load volatile <16 x i32>, ptr @vectors, align 641322 %736 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641323 %737 = call <16 x i32> @llvm.hexagon.V6.vrmpybus.acc(<16 x i32> %735, <16 x i32> %736, i32 -1)1324 store volatile <16 x i32> %737, ptr @VectorResult, align 641325 %738 = load volatile <16 x i32>, ptr @vectors, align 641326 %739 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641327 %740 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 2), align 641328 %741 = call <16 x i32> @llvm.hexagon.V6.vrmpybusv.acc(<16 x i32> %738, <16 x i32> %739, <16 x i32> %740)1329 store volatile <16 x i32> %741, ptr @VectorResult, align 641330 %742 = load volatile <16 x i32>, ptr @vectors, align 641331 %743 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641332 %744 = call <16 x i32> @llvm.hexagon.V6.vsubw(<16 x i32> %742, <16 x i32> %743)1333 store volatile <16 x i32> %744, ptr @VectorResult, align 641334 %745 = load volatile <16 x i32>, ptr @vectors, align 641335 %746 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641336 %747 = call <16 x i32> @llvm.hexagon.V6.vsubwsat(<16 x i32> %745, <16 x i32> %746)1337 store volatile <16 x i32> %747, ptr @VectorResult, align 641338 %748 = load volatile <32 x i32>, ptr @vector_pairs, align 1281339 %749 = call <32 x i32> @llvm.hexagon.V6.vassignp(<32 x i32> %748)1340 store volatile <32 x i32> %749, ptr @VectorPairResult, align 1281341 %750 = load volatile <16 x i32>, ptr @vectors, align 641342 %751 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641343 %752 = call <32 x i32> @llvm.hexagon.V6.vcombine(<16 x i32> %750, <16 x i32> %751)1344 store volatile <32 x i32> %752, ptr @VectorPairResult, align 1281345 %753 = load volatile <16 x i32>, ptr @vectors, align 641346 %754 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641347 %755 = call <32 x i32> @llvm.hexagon.V6.vdealvdd(<16 x i32> %753, <16 x i32> %754, i32 -1)1348 store volatile <32 x i32> %755, ptr @VectorPairResult, align 1281349 %756 = load volatile <16 x i32>, ptr @vectors, align 641350 %757 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641351 %758 = call <32 x i32> @llvm.hexagon.V6.vshuffvdd(<16 x i32> %756, <16 x i32> %757, i32 -1)1352 store volatile <32 x i32> %758, ptr @VectorPairResult, align 1281353 %759 = load volatile <16 x i32>, ptr @vectors, align 641354 %760 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641355 %761 = call <32 x i32> @llvm.hexagon.V6.vshuffvdd(<16 x i32> %759, <16 x i32> %760, i32 0)1356 store volatile <32 x i32> %761, ptr @VectorPairResult, align 1281357 %762 = load volatile <16 x i32>, ptr @vectors, align 641358 %763 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641359 %764 = call <32 x i32> @llvm.hexagon.V6.vshuffvdd(<16 x i32> %762, <16 x i32> %763, i32 1)1360 store volatile <32 x i32> %764, ptr @VectorPairResult, align 1281361 %765 = load volatile <16 x i32>, ptr @vecpreds, align 641362 %766 = tail call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %765, i32 -1)1363 %767 = load volatile <16 x i32>, ptr @vectors, align 641364 %768 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641365 %769 = call <32 x i32> @llvm.hexagon.V6.vswap(<64 x i1> %766, <16 x i32> %767, <16 x i32> %768)1366 store volatile <32 x i32> %769, ptr @VectorPairResult, align 1281367 %770 = load volatile <32 x i32>, ptr @vector_pairs, align 1281368 %771 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281369 %772 = call <32 x i32> @llvm.hexagon.V6.vaddb.dv(<32 x i32> %770, <32 x i32> %771)1370 store volatile <32 x i32> %772, ptr @VectorPairResult, align 1281371 %773 = load volatile <16 x i32>, ptr @vectors, align 641372 %774 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641373 %775 = call <32 x i32> @llvm.hexagon.V6.vshufoeb(<16 x i32> %773, <16 x i32> %774)1374 store volatile <32 x i32> %775, ptr @VectorPairResult, align 1281375 %776 = load volatile <32 x i32>, ptr @vector_pairs, align 1281376 %777 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281377 %778 = call <32 x i32> @llvm.hexagon.V6.vsubb.dv(<32 x i32> %776, <32 x i32> %777)1378 store volatile <32 x i32> %778, ptr @VectorPairResult, align 1281379 %779 = load volatile <16 x i32>, ptr @vectors, align 641380 %780 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641381 %781 = call <32 x i32> @llvm.hexagon.V6.vaddubh(<16 x i32> %779, <16 x i32> %780)1382 store volatile <32 x i32> %781, ptr @VectorPairResult, align 1281383 %782 = load volatile <32 x i32>, ptr @vector_pairs, align 1281384 %783 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281385 %784 = call <32 x i32> @llvm.hexagon.V6.vaddh.dv(<32 x i32> %782, <32 x i32> %783)1386 store volatile <32 x i32> %784, ptr @VectorPairResult, align 1281387 %785 = load volatile <32 x i32>, ptr @vector_pairs, align 1281388 %786 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281389 %787 = call <32 x i32> @llvm.hexagon.V6.vaddhsat.dv(<32 x i32> %785, <32 x i32> %786)1390 store volatile <32 x i32> %787, ptr @VectorPairResult, align 1281391 %788 = load volatile <32 x i32>, ptr @vector_pairs, align 1281392 %789 = call <32 x i32> @llvm.hexagon.V6.vdmpybus.dv(<32 x i32> %788, i32 -1)1393 store volatile <32 x i32> %789, ptr @VectorPairResult, align 1281394 %790 = load volatile <32 x i32>, ptr @vector_pairs, align 1281395 %791 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281396 %792 = call <32 x i32> @llvm.hexagon.V6.vdmpybus.dv.acc(<32 x i32> %790, <32 x i32> %791, i32 -1)1397 store volatile <32 x i32> %792, ptr @VectorPairResult, align 1281398 %793 = load volatile <16 x i32>, ptr @vectors, align 641399 %794 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641400 %795 = call <32 x i32> @llvm.hexagon.V6.vlutvwh(<16 x i32> %793, <16 x i32> %794, i32 -1)1401 store volatile <32 x i32> %795, ptr @VectorPairResult, align 1281402 %796 = load volatile <32 x i32>, ptr @vector_pairs, align 1281403 %797 = load volatile <16 x i32>, ptr @vectors, align 641404 %798 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641405 %799 = call <32 x i32> @llvm.hexagon.V6.vlutvwh.oracc(<32 x i32> %796, <16 x i32> %797, <16 x i32> %798, i32 -1)1406 store volatile <32 x i32> %799, ptr @VectorPairResult, align 1281407 %800 = load volatile <32 x i32>, ptr @vector_pairs, align 1281408 %801 = call <32 x i32> @llvm.hexagon.V6.vmpabus(<32 x i32> %800, i32 -1)1409 store volatile <32 x i32> %801, ptr @VectorPairResult, align 1281410 %802 = load volatile <32 x i32>, ptr @vector_pairs, align 1281411 %803 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281412 %804 = call <32 x i32> @llvm.hexagon.V6.vmpabusv(<32 x i32> %802, <32 x i32> %803)1413 store volatile <32 x i32> %804, ptr @VectorPairResult, align 1281414 %805 = load volatile <32 x i32>, ptr @vector_pairs, align 1281415 %806 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281416 %807 = call <32 x i32> @llvm.hexagon.V6.vmpabuuv(<32 x i32> %805, <32 x i32> %806)1417 store volatile <32 x i32> %807, ptr @VectorPairResult, align 1281418 %808 = load volatile <32 x i32>, ptr @vector_pairs, align 1281419 %809 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281420 %810 = call <32 x i32> @llvm.hexagon.V6.vmpabus.acc(<32 x i32> %808, <32 x i32> %809, i32 -1)1421 store volatile <32 x i32> %810, ptr @VectorPairResult, align 1281422 %811 = load volatile <16 x i32>, ptr @vectors, align 641423 %812 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641424 %813 = call <32 x i32> @llvm.hexagon.V6.vmpybv(<16 x i32> %811, <16 x i32> %812)1425 store volatile <32 x i32> %813, ptr @VectorPairResult, align 1281426 %814 = load volatile <16 x i32>, ptr @vectors, align 641427 %815 = call <32 x i32> @llvm.hexagon.V6.vmpybus(<16 x i32> %814, i32 -1)1428 store volatile <32 x i32> %815, ptr @VectorPairResult, align 1281429 %816 = load volatile <16 x i32>, ptr @vectors, align 641430 %817 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641431 %818 = call <32 x i32> @llvm.hexagon.V6.vmpybusv(<16 x i32> %816, <16 x i32> %817)1432 store volatile <32 x i32> %818, ptr @VectorPairResult, align 1281433 %819 = load volatile <32 x i32>, ptr @vector_pairs, align 1281434 %820 = load volatile <16 x i32>, ptr @vectors, align 641435 %821 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641436 %822 = call <32 x i32> @llvm.hexagon.V6.vmpybv.acc(<32 x i32> %819, <16 x i32> %820, <16 x i32> %821)1437 store volatile <32 x i32> %822, ptr @VectorPairResult, align 1281438 %823 = load volatile <32 x i32>, ptr @vector_pairs, align 1281439 %824 = load volatile <16 x i32>, ptr @vectors, align 641440 %825 = call <32 x i32> @llvm.hexagon.V6.vmpybus.acc(<32 x i32> %823, <16 x i32> %824, i32 -1)1441 store volatile <32 x i32> %825, ptr @VectorPairResult, align 1281442 %826 = load volatile <32 x i32>, ptr @vector_pairs, align 1281443 %827 = load volatile <16 x i32>, ptr @vectors, align 641444 %828 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641445 %829 = call <32 x i32> @llvm.hexagon.V6.vmpybusv.acc(<32 x i32> %826, <16 x i32> %827, <16 x i32> %828)1446 store volatile <32 x i32> %829, ptr @VectorPairResult, align 1281447 %830 = load volatile <16 x i32>, ptr @vectors, align 641448 %831 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641449 %832 = call <32 x i32> @llvm.hexagon.V6.vshufoeh(<16 x i32> %830, <16 x i32> %831)1450 store volatile <32 x i32> %832, ptr @VectorPairResult, align 1281451 %833 = load volatile <16 x i32>, ptr @vectors, align 641452 %834 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641453 %835 = call <32 x i32> @llvm.hexagon.V6.vsububh(<16 x i32> %833, <16 x i32> %834)1454 store volatile <32 x i32> %835, ptr @VectorPairResult, align 1281455 %836 = load volatile <32 x i32>, ptr @vector_pairs, align 1281456 %837 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281457 %838 = call <32 x i32> @llvm.hexagon.V6.vsubh.dv(<32 x i32> %836, <32 x i32> %837)1458 store volatile <32 x i32> %838, ptr @VectorPairResult, align 1281459 %839 = load volatile <32 x i32>, ptr @vector_pairs, align 1281460 %840 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281461 %841 = call <32 x i32> @llvm.hexagon.V6.vsubhsat.dv(<32 x i32> %839, <32 x i32> %840)1462 store volatile <32 x i32> %841, ptr @VectorPairResult, align 1281463 %842 = load volatile <16 x i32>, ptr @vectors, align 641464 %843 = call <32 x i32> @llvm.hexagon.V6.vsb(<16 x i32> %842)1465 store volatile <32 x i32> %843, ptr @VectorPairResult, align 1281466 %844 = load volatile <32 x i32>, ptr @vector_pairs, align 1281467 %845 = call <32 x i32> @llvm.hexagon.V6.vtmpyb(<32 x i32> %844, i32 -1)1468 store volatile <32 x i32> %845, ptr @VectorPairResult, align 1281469 %846 = load volatile <32 x i32>, ptr @vector_pairs, align 1281470 %847 = call <32 x i32> @llvm.hexagon.V6.vtmpybus(<32 x i32> %846, i32 -1)1471 store volatile <32 x i32> %847, ptr @VectorPairResult, align 1281472 %848 = load volatile <32 x i32>, ptr @vector_pairs, align 1281473 %849 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281474 %850 = call <32 x i32> @llvm.hexagon.V6.vtmpyb.acc(<32 x i32> %848, <32 x i32> %849, i32 -1)1475 store volatile <32 x i32> %850, ptr @VectorPairResult, align 1281476 %851 = load volatile <32 x i32>, ptr @vector_pairs, align 1281477 %852 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281478 %853 = call <32 x i32> @llvm.hexagon.V6.vtmpybus.acc(<32 x i32> %851, <32 x i32> %852, i32 -1)1479 store volatile <32 x i32> %853, ptr @VectorPairResult, align 1281480 %854 = load volatile <16 x i32>, ptr @vectors, align 641481 %855 = call <32 x i32> @llvm.hexagon.V6.vunpackb(<16 x i32> %854)1482 store volatile <32 x i32> %855, ptr @VectorPairResult, align 1281483 %856 = load volatile <32 x i32>, ptr @vector_pairs, align 1281484 %857 = load volatile <16 x i32>, ptr @vectors, align 641485 %858 = call <32 x i32> @llvm.hexagon.V6.vunpackob(<32 x i32> %856, <16 x i32> %857)1486 store volatile <32 x i32> %858, ptr @VectorPairResult, align 1281487 %859 = load volatile <32 x i32>, ptr @vector_pairs, align 1281488 %860 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281489 %861 = call <32 x i32> @llvm.hexagon.V6.vaddubsat.dv(<32 x i32> %859, <32 x i32> %860)1490 store volatile <32 x i32> %861, ptr @VectorPairResult, align 1281491 %862 = load volatile <32 x i32>, ptr @vector_pairs, align 1281492 %863 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281493 %864 = call <32 x i32> @llvm.hexagon.V6.vsububsat.dv(<32 x i32> %862, <32 x i32> %863)1494 store volatile <32 x i32> %864, ptr @VectorPairResult, align 1281495 %865 = load volatile <32 x i32>, ptr @vector_pairs, align 1281496 %866 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281497 %867 = call <32 x i32> @llvm.hexagon.V6.vadduhsat.dv(<32 x i32> %865, <32 x i32> %866)1498 store volatile <32 x i32> %867, ptr @VectorPairResult, align 1281499 %868 = load volatile <16 x i32>, ptr @vectors, align 641500 %869 = call <32 x i32> @llvm.hexagon.V6.vmpyub(<16 x i32> %868, i32 -1)1501 store volatile <32 x i32> %869, ptr @VectorPairResult, align 1281502 %870 = load volatile <16 x i32>, ptr @vectors, align 641503 %871 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641504 %872 = call <32 x i32> @llvm.hexagon.V6.vmpyubv(<16 x i32> %870, <16 x i32> %871)1505 store volatile <32 x i32> %872, ptr @VectorPairResult, align 1281506 %873 = load volatile <32 x i32>, ptr @vector_pairs, align 1281507 %874 = load volatile <16 x i32>, ptr @vectors, align 641508 %875 = call <32 x i32> @llvm.hexagon.V6.vmpyub.acc(<32 x i32> %873, <16 x i32> %874, i32 -1)1509 store volatile <32 x i32> %875, ptr @VectorPairResult, align 1281510 %876 = load volatile <32 x i32>, ptr @vector_pairs, align 1281511 %877 = load volatile <16 x i32>, ptr @vectors, align 641512 %878 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641513 %879 = call <32 x i32> @llvm.hexagon.V6.vmpyubv.acc(<32 x i32> %876, <16 x i32> %877, <16 x i32> %878)1514 store volatile <32 x i32> %879, ptr @VectorPairResult, align 1281515 %880 = load volatile <32 x i32>, ptr @vector_pairs, align 1281516 %881 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281517 %882 = call <32 x i32> @llvm.hexagon.V6.vsubuhsat.dv(<32 x i32> %880, <32 x i32> %881)1518 store volatile <32 x i32> %882, ptr @VectorPairResult, align 1281519 %883 = load volatile <16 x i32>, ptr @vectors, align 641520 %884 = call <32 x i32> @llvm.hexagon.V6.vunpackub(<16 x i32> %883)1521 store volatile <32 x i32> %884, ptr @VectorPairResult, align 1281522 %885 = load volatile <16 x i32>, ptr @vectors, align 641523 %886 = call <32 x i32> @llvm.hexagon.V6.vzb(<16 x i32> %885)1524 store volatile <32 x i32> %886, ptr @VectorPairResult, align 1281525 %887 = load volatile <32 x i32>, ptr @vector_pairs, align 1281526 %888 = call <32 x i32> @llvm.hexagon.V6.vdsaduh(<32 x i32> %887, i32 -1)1527 store volatile <32 x i32> %888, ptr @VectorPairResult, align 1281528 %889 = load volatile <32 x i32>, ptr @vector_pairs, align 1281529 %890 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281530 %891 = call <32 x i32> @llvm.hexagon.V6.vdsaduh.acc(<32 x i32> %889, <32 x i32> %890, i32 -1)1531 store volatile <32 x i32> %891, ptr @VectorPairResult, align 1281532 %892 = load volatile <16 x i32>, ptr @vectors, align 641533 %893 = call <32 x i32> @llvm.hexagon.V6.vmpyuh(<16 x i32> %892, i32 -1)1534 store volatile <32 x i32> %893, ptr @VectorPairResult, align 1281535 %894 = load volatile <16 x i32>, ptr @vectors, align 641536 %895 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641537 %896 = call <32 x i32> @llvm.hexagon.V6.vmpyuhv(<16 x i32> %894, <16 x i32> %895)1538 store volatile <32 x i32> %896, ptr @VectorPairResult, align 1281539 %897 = load volatile <32 x i32>, ptr @vector_pairs, align 1281540 %898 = load volatile <16 x i32>, ptr @vectors, align 641541 %899 = call <32 x i32> @llvm.hexagon.V6.vmpyuh.acc(<32 x i32> %897, <16 x i32> %898, i32 -1)1542 store volatile <32 x i32> %899, ptr @VectorPairResult, align 1281543 %900 = load volatile <32 x i32>, ptr @vector_pairs, align 1281544 %901 = load volatile <16 x i32>, ptr @vectors, align 641545 %902 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641546 %903 = call <32 x i32> @llvm.hexagon.V6.vmpyuhv.acc(<32 x i32> %900, <16 x i32> %901, <16 x i32> %902)1547 store volatile <32 x i32> %903, ptr @VectorPairResult, align 1281548 %904 = load volatile <32 x i32>, ptr @vector_pairs, align 1281549 %905 = call <32 x i32> @llvm.hexagon.V6.vrmpyubi(<32 x i32> %904, i32 -1, i32 0)1550 store volatile <32 x i32> %905, ptr @VectorPairResult, align 1281551 %906 = load volatile <32 x i32>, ptr @vector_pairs, align 1281552 %907 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281553 %908 = call <32 x i32> @llvm.hexagon.V6.vrmpyubi.acc(<32 x i32> %906, <32 x i32> %907, i32 -1, i32 0)1554 store volatile <32 x i32> %908, ptr @VectorPairResult, align 1281555 %909 = load volatile <32 x i32>, ptr @vector_pairs, align 1281556 %910 = call <32 x i32> @llvm.hexagon.V6.vrsadubi(<32 x i32> %909, i32 -1, i32 0)1557 store volatile <32 x i32> %910, ptr @VectorPairResult, align 1281558 %911 = load volatile <32 x i32>, ptr @vector_pairs, align 1281559 %912 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281560 %913 = call <32 x i32> @llvm.hexagon.V6.vrsadubi.acc(<32 x i32> %911, <32 x i32> %912, i32 -1, i32 0)1561 store volatile <32 x i32> %913, ptr @VectorPairResult, align 1281562 %914 = load volatile <16 x i32>, ptr @vectors, align 641563 %915 = call <32 x i32> @llvm.hexagon.V6.vunpackuh(<16 x i32> %914)1564 store volatile <32 x i32> %915, ptr @VectorPairResult, align 1281565 %916 = load volatile <16 x i32>, ptr @vectors, align 641566 %917 = call <32 x i32> @llvm.hexagon.V6.vzh(<16 x i32> %916)1567 store volatile <32 x i32> %917, ptr @VectorPairResult, align 1281568 %918 = load volatile <16 x i32>, ptr @vectors, align 641569 %919 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641570 %920 = call <32 x i32> @llvm.hexagon.V6.vaddhw(<16 x i32> %918, <16 x i32> %919)1571 store volatile <32 x i32> %920, ptr @VectorPairResult, align 1281572 %921 = load volatile <16 x i32>, ptr @vectors, align 641573 %922 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641574 %923 = call <32 x i32> @llvm.hexagon.V6.vadduhw(<16 x i32> %921, <16 x i32> %922)1575 store volatile <32 x i32> %923, ptr @VectorPairResult, align 1281576 %924 = load volatile <32 x i32>, ptr @vector_pairs, align 1281577 %925 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281578 %926 = call <32 x i32> @llvm.hexagon.V6.vaddw.dv(<32 x i32> %924, <32 x i32> %925)1579 store volatile <32 x i32> %926, ptr @VectorPairResult, align 1281580 %927 = load volatile <32 x i32>, ptr @vector_pairs, align 1281581 %928 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281582 %929 = call <32 x i32> @llvm.hexagon.V6.vaddwsat.dv(<32 x i32> %927, <32 x i32> %928)1583 store volatile <32 x i32> %929, ptr @VectorPairResult, align 1281584 %930 = load volatile <32 x i32>, ptr @vector_pairs, align 1281585 %931 = call <32 x i32> @llvm.hexagon.V6.vdmpyhb.dv(<32 x i32> %930, i32 -1)1586 store volatile <32 x i32> %931, ptr @VectorPairResult, align 1281587 %932 = load volatile <32 x i32>, ptr @vector_pairs, align 1281588 %933 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281589 %934 = call <32 x i32> @llvm.hexagon.V6.vdmpyhb.dv.acc(<32 x i32> %932, <32 x i32> %933, i32 -1)1590 store volatile <32 x i32> %934, ptr @VectorPairResult, align 1281591 %935 = load volatile <32 x i32>, ptr @vector_pairs, align 1281592 %936 = call <32 x i32> @llvm.hexagon.V6.vmpahb(<32 x i32> %935, i32 -1)1593 store volatile <32 x i32> %936, ptr @VectorPairResult, align 1281594 %937 = load volatile <32 x i32>, ptr @vector_pairs, align 1281595 %938 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281596 %939 = call <32 x i32> @llvm.hexagon.V6.vmpahb.acc(<32 x i32> %937, <32 x i32> %938, i32 -1)1597 store volatile <32 x i32> %939, ptr @VectorPairResult, align 1281598 %940 = load volatile <16 x i32>, ptr @vectors, align 641599 %941 = call <32 x i32> @llvm.hexagon.V6.vmpyh(<16 x i32> %940, i32 -1)1600 store volatile <32 x i32> %941, ptr @VectorPairResult, align 1281601 %942 = load volatile <16 x i32>, ptr @vectors, align 641602 %943 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641603 %944 = call <32 x i32> @llvm.hexagon.V6.vmpyhv(<16 x i32> %942, <16 x i32> %943)1604 store volatile <32 x i32> %944, ptr @VectorPairResult, align 1281605 %945 = load volatile <16 x i32>, ptr @vectors, align 641606 %946 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641607 %947 = call <32 x i32> @llvm.hexagon.V6.vmpyhus(<16 x i32> %945, <16 x i32> %946)1608 store volatile <32 x i32> %947, ptr @VectorPairResult, align 1281609 %948 = load volatile <32 x i32>, ptr @vector_pairs, align 1281610 %949 = load volatile <16 x i32>, ptr @vectors, align 641611 %950 = call <32 x i32> @llvm.hexagon.V6.vmpyhsat.acc(<32 x i32> %948, <16 x i32> %949, i32 -1)1612 store volatile <32 x i32> %950, ptr @VectorPairResult, align 1281613 %951 = load volatile <32 x i32>, ptr @vector_pairs, align 1281614 %952 = load volatile <16 x i32>, ptr @vectors, align 641615 %953 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641616 %954 = call <32 x i32> @llvm.hexagon.V6.vmpyhv.acc(<32 x i32> %951, <16 x i32> %952, <16 x i32> %953)1617 store volatile <32 x i32> %954, ptr @VectorPairResult, align 1281618 %955 = load volatile <32 x i32>, ptr @vector_pairs, align 1281619 %956 = load volatile <16 x i32>, ptr @vectors, align 641620 %957 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641621 %958 = call <32 x i32> @llvm.hexagon.V6.vmpyhus.acc(<32 x i32> %955, <16 x i32> %956, <16 x i32> %957)1622 store volatile <32 x i32> %958, ptr @VectorPairResult, align 1281623 %959 = load volatile <32 x i32>, ptr @vector_pairs, align 1281624 %960 = call <32 x i32> @llvm.hexagon.V6.vrmpybusi(<32 x i32> %959, i32 -1, i32 0)1625 store volatile <32 x i32> %960, ptr @VectorPairResult, align 1281626 %961 = load volatile <32 x i32>, ptr @vector_pairs, align 1281627 %962 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281628 %963 = call <32 x i32> @llvm.hexagon.V6.vrmpybusi.acc(<32 x i32> %961, <32 x i32> %962, i32 -1, i32 0)1629 store volatile <32 x i32> %963, ptr @VectorPairResult, align 1281630 %964 = load volatile <16 x i32>, ptr @vectors, align 641631 %965 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641632 %966 = call <32 x i32> @llvm.hexagon.V6.vsubhw(<16 x i32> %964, <16 x i32> %965)1633 store volatile <32 x i32> %966, ptr @VectorPairResult, align 1281634 %967 = load volatile <16 x i32>, ptr @vectors, align 641635 %968 = load volatile <16 x i32>, ptr getelementptr inbounds ([15 x <16 x i32>], ptr @vectors, i32 0, i32 1), align 641636 %969 = call <32 x i32> @llvm.hexagon.V6.vsubuhw(<16 x i32> %967, <16 x i32> %968)1637 store volatile <32 x i32> %969, ptr @VectorPairResult, align 1281638 %970 = load volatile <32 x i32>, ptr @vector_pairs, align 1281639 %971 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281640 %972 = call <32 x i32> @llvm.hexagon.V6.vsubw.dv(<32 x i32> %970, <32 x i32> %971)1641 store volatile <32 x i32> %972, ptr @VectorPairResult, align 1281642 %973 = load volatile <32 x i32>, ptr @vector_pairs, align 1281643 %974 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281644 %975 = call <32 x i32> @llvm.hexagon.V6.vsubwsat.dv(<32 x i32> %973, <32 x i32> %974)1645 store volatile <32 x i32> %975, ptr @VectorPairResult, align 1281646 %976 = load volatile <16 x i32>, ptr @vectors, align 641647 %977 = call <32 x i32> @llvm.hexagon.V6.vsh(<16 x i32> %976)1648 store volatile <32 x i32> %977, ptr @VectorPairResult, align 1281649 %978 = load volatile <32 x i32>, ptr @vector_pairs, align 1281650 %979 = call <32 x i32> @llvm.hexagon.V6.vtmpyhb(<32 x i32> %978, i32 -1)1651 store volatile <32 x i32> %979, ptr @VectorPairResult, align 1281652 %980 = load volatile <32 x i32>, ptr @vector_pairs, align 1281653 %981 = load volatile <32 x i32>, ptr getelementptr inbounds ([15 x <32 x i32>], ptr @vector_pairs, i32 0, i32 1), align 1281654 %982 = call <32 x i32> @llvm.hexagon.V6.vtmpyhb.acc(<32 x i32> %980, <32 x i32> %981, i32 -1)1655 store volatile <32 x i32> %982, ptr @VectorPairResult, align 1281656 %983 = load volatile <16 x i32>, ptr @vectors, align 641657 %984 = call <32 x i32> @llvm.hexagon.V6.vunpackh(<16 x i32> %983)1658 store volatile <32 x i32> %984, ptr @VectorPairResult, align 1281659 %985 = load volatile <32 x i32>, ptr @vector_pairs, align 1281660 %986 = load volatile <16 x i32>, ptr @vectors, align 641661 %987 = call <32 x i32> @llvm.hexagon.V6.vunpackoh(<32 x i32> %985, <16 x i32> %986)1662 store volatile <32 x i32> %987, ptr @VectorPairResult, align 1281663 ret i32 01664}1665 1666; Function Attrs: nounwind readnone1667declare <64 x i1> @llvm.hexagon.V6.pred.and(<64 x i1>, <64 x i1>) #11668 1669; Function Attrs: nounwind readnone1670declare <64 x i1> @llvm.hexagon.V6.pred.and.n(<64 x i1>, <64 x i1>) #11671 1672; Function Attrs: nounwind readnone1673declare <64 x i1> @llvm.hexagon.V6.pred.not(<64 x i1>) #11674 1675; Function Attrs: nounwind readnone1676declare <64 x i1> @llvm.hexagon.V6.pred.or(<64 x i1>, <64 x i1>) #11677 1678; Function Attrs: nounwind readnone1679declare <64 x i1> @llvm.hexagon.V6.pred.or.n(<64 x i1>, <64 x i1>) #11680 1681; Function Attrs: nounwind readnone1682declare <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32>, i32) #11683 1684; Function Attrs: nounwind readnone1685declare <64 x i1> @llvm.hexagon.V6.vandvrt.acc(<64 x i1>, <16 x i32>, i32) #11686 1687; Function Attrs: nounwind readnone1688declare <64 x i1> @llvm.hexagon.V6.veqb(<16 x i32>, <16 x i32>) #11689 1690; Function Attrs: nounwind readnone1691declare <64 x i1> @llvm.hexagon.V6.veqh(<16 x i32>, <16 x i32>) #11692 1693; Function Attrs: nounwind readnone1694declare <64 x i1> @llvm.hexagon.V6.veqw(<16 x i32>, <16 x i32>) #11695 1696; Function Attrs: nounwind readnone1697declare <64 x i1> @llvm.hexagon.V6.veqb.and(<64 x i1>, <16 x i32>, <16 x i32>) #11698 1699; Function Attrs: nounwind readnone1700declare <64 x i1> @llvm.hexagon.V6.veqh.and(<64 x i1>, <16 x i32>, <16 x i32>) #11701 1702; Function Attrs: nounwind readnone1703declare <64 x i1> @llvm.hexagon.V6.veqw.and(<64 x i1>, <16 x i32>, <16 x i32>) #11704 1705; Function Attrs: nounwind readnone1706declare <64 x i1> @llvm.hexagon.V6.veqb.or(<64 x i1>, <16 x i32>, <16 x i32>) #11707 1708; Function Attrs: nounwind readnone1709declare <64 x i1> @llvm.hexagon.V6.veqh.or(<64 x i1>, <16 x i32>, <16 x i32>) #11710 1711; Function Attrs: nounwind readnone1712declare <64 x i1> @llvm.hexagon.V6.veqw.or(<64 x i1>, <16 x i32>, <16 x i32>) #11713 1714; Function Attrs: nounwind readnone1715declare <64 x i1> @llvm.hexagon.V6.veqb.xor(<64 x i1>, <16 x i32>, <16 x i32>) #11716 1717; Function Attrs: nounwind readnone1718declare <64 x i1> @llvm.hexagon.V6.veqh.xor(<64 x i1>, <16 x i32>, <16 x i32>) #11719 1720; Function Attrs: nounwind readnone1721declare <64 x i1> @llvm.hexagon.V6.veqw.xor(<64 x i1>, <16 x i32>, <16 x i32>) #11722 1723; Function Attrs: nounwind readnone1724declare <64 x i1> @llvm.hexagon.V6.vgtb(<16 x i32>, <16 x i32>) #11725 1726; Function Attrs: nounwind readnone1727declare <64 x i1> @llvm.hexagon.V6.vgth(<16 x i32>, <16 x i32>) #11728 1729; Function Attrs: nounwind readnone1730declare <64 x i1> @llvm.hexagon.V6.vgtub(<16 x i32>, <16 x i32>) #11731 1732; Function Attrs: nounwind readnone1733declare <64 x i1> @llvm.hexagon.V6.vgtuh(<16 x i32>, <16 x i32>) #11734 1735; Function Attrs: nounwind readnone1736declare <64 x i1> @llvm.hexagon.V6.vgtuw(<16 x i32>, <16 x i32>) #11737 1738; Function Attrs: nounwind readnone1739declare <64 x i1> @llvm.hexagon.V6.vgtw(<16 x i32>, <16 x i32>) #11740 1741; Function Attrs: nounwind readnone1742declare <64 x i1> @llvm.hexagon.V6.vgtb.and(<64 x i1>, <16 x i32>, <16 x i32>) #11743 1744; Function Attrs: nounwind readnone1745declare <64 x i1> @llvm.hexagon.V6.vgth.and(<64 x i1>, <16 x i32>, <16 x i32>) #11746 1747; Function Attrs: nounwind readnone1748declare <64 x i1> @llvm.hexagon.V6.vgtub.and(<64 x i1>, <16 x i32>, <16 x i32>) #11749 1750; Function Attrs: nounwind readnone1751declare <64 x i1> @llvm.hexagon.V6.vgtuh.and(<64 x i1>, <16 x i32>, <16 x i32>) #11752 1753; Function Attrs: nounwind readnone1754declare <64 x i1> @llvm.hexagon.V6.vgtuw.and(<64 x i1>, <16 x i32>, <16 x i32>) #11755 1756; Function Attrs: nounwind readnone1757declare <64 x i1> @llvm.hexagon.V6.vgtw.and(<64 x i1>, <16 x i32>, <16 x i32>) #11758 1759; Function Attrs: nounwind readnone1760declare <64 x i1> @llvm.hexagon.V6.vgtb.or(<64 x i1>, <16 x i32>, <16 x i32>) #11761 1762; Function Attrs: nounwind readnone1763declare <64 x i1> @llvm.hexagon.V6.vgth.or(<64 x i1>, <16 x i32>, <16 x i32>) #11764 1765; Function Attrs: nounwind readnone1766declare <64 x i1> @llvm.hexagon.V6.vgtub.or(<64 x i1>, <16 x i32>, <16 x i32>) #11767 1768; Function Attrs: nounwind readnone1769declare <64 x i1> @llvm.hexagon.V6.vgtuh.or(<64 x i1>, <16 x i32>, <16 x i32>) #11770 1771; Function Attrs: nounwind readnone1772declare <64 x i1> @llvm.hexagon.V6.vgtuw.or(<64 x i1>, <16 x i32>, <16 x i32>) #11773 1774; Function Attrs: nounwind readnone1775declare <64 x i1> @llvm.hexagon.V6.vgtw.or(<64 x i1>, <16 x i32>, <16 x i32>) #11776 1777; Function Attrs: nounwind readnone1778declare <64 x i1> @llvm.hexagon.V6.vgtb.xor(<64 x i1>, <16 x i32>, <16 x i32>) #11779 1780; Function Attrs: nounwind readnone1781declare <64 x i1> @llvm.hexagon.V6.vgth.xor(<64 x i1>, <16 x i32>, <16 x i32>) #11782 1783; Function Attrs: nounwind readnone1784declare <64 x i1> @llvm.hexagon.V6.vgtub.xor(<64 x i1>, <16 x i32>, <16 x i32>) #11785 1786; Function Attrs: nounwind readnone1787declare <64 x i1> @llvm.hexagon.V6.vgtuh.xor(<64 x i1>, <16 x i32>, <16 x i32>) #11788 1789; Function Attrs: nounwind readnone1790declare <64 x i1> @llvm.hexagon.V6.vgtuw.xor(<64 x i1>, <16 x i32>, <16 x i32>) #11791 1792; Function Attrs: nounwind readnone1793declare <64 x i1> @llvm.hexagon.V6.vgtw.xor(<64 x i1>, <16 x i32>, <16 x i32>) #11794 1795; Function Attrs: nounwind readnone1796declare <64 x i1> @llvm.hexagon.V6.pred.scalar2(i32) #11797 1798; Function Attrs: nounwind readnone1799declare <64 x i1> @llvm.hexagon.V6.pred.xor(<64 x i1>, <64 x i1>) #11800 1801; Function Attrs: nounwind readnone1802declare <16 x i32> @llvm.hexagon.V6.vassign(<16 x i32>) #11803 1804; Function Attrs: nounwind readnone1805declare <16 x i32> @llvm.hexagon.V6.hi(<32 x i32>) #11806 1807; Function Attrs: nounwind readnone1808declare <16 x i32> @llvm.hexagon.V6.lo(<32 x i32>) #11809 1810; Function Attrs: nounwind readnone1811declare <16 x i32> @llvm.hexagon.V6.valignbi(<16 x i32>, <16 x i32>, i32) #11812 1813; Function Attrs: nounwind readnone1814declare <16 x i32> @llvm.hexagon.V6.valignb(<16 x i32>, <16 x i32>, i32) #11815 1816; Function Attrs: nounwind readnone1817declare <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1>, i32) #11818 1819; Function Attrs: nounwind readnone1820declare <16 x i32> @llvm.hexagon.V6.vand(<16 x i32>, <16 x i32>) #11821 1822; Function Attrs: nounwind readnone1823declare <16 x i32> @llvm.hexagon.V6.vandqrt.acc(<16 x i32>, <64 x i1>, i32) #11824 1825; Function Attrs: nounwind readnone1826declare <16 x i32> @llvm.hexagon.V6.vdelta(<16 x i32>, <16 x i32>) #11827 1828; Function Attrs: nounwind readnone1829declare <16 x i32> @llvm.hexagon.V6.vlalignbi(<16 x i32>, <16 x i32>, i32) #11830 1831; Function Attrs: nounwind readnone1832declare <16 x i32> @llvm.hexagon.V6.vlalignb(<16 x i32>, <16 x i32>, i32) #11833 1834; Function Attrs: nounwind readnone1835declare <16 x i32> @llvm.hexagon.V6.vmux(<64 x i1>, <16 x i32>, <16 x i32>) #11836 1837; Function Attrs: nounwind readnone1838declare <16 x i32> @llvm.hexagon.V6.vnot(<16 x i32>) #11839 1840; Function Attrs: nounwind readnone1841declare <16 x i32> @llvm.hexagon.V6.vor(<16 x i32>, <16 x i32>) #11842 1843; Function Attrs: nounwind readnone1844declare <16 x i32> @llvm.hexagon.V6.vrdelta(<16 x i32>, <16 x i32>) #11845 1846; Function Attrs: nounwind readnone1847declare <16 x i32> @llvm.hexagon.V6.vror(<16 x i32>, i32) #11848 1849; Function Attrs: nounwind readnone1850declare <16 x i32> @llvm.hexagon.V6.lvsplatw(i32) #11851 1852; Function Attrs: nounwind readnone1853declare <16 x i32> @llvm.hexagon.V6.vxor(<16 x i32>, <16 x i32>) #11854 1855; Function Attrs: nounwind readnone1856declare <16 x i32> @llvm.hexagon.V6.vd0() #11857 1858; Function Attrs: nounwind readnone1859declare <16 x i32> @llvm.hexagon.V6.vaddbq(<64 x i1>, <16 x i32>, <16 x i32>) #11860 1861; Function Attrs: nounwind readnone1862declare <16 x i32> @llvm.hexagon.V6.vaddbnq(<64 x i1>, <16 x i32>, <16 x i32>) #11863 1864; Function Attrs: nounwind readnone1865declare <16 x i32> @llvm.hexagon.V6.vsubbq(<64 x i1>, <16 x i32>, <16 x i32>) #11866 1867; Function Attrs: nounwind readnone1868declare <16 x i32> @llvm.hexagon.V6.vsubbnq(<64 x i1>, <16 x i32>, <16 x i32>) #11869 1870; Function Attrs: nounwind readnone1871declare <16 x i32> @llvm.hexagon.V6.vaddb(<16 x i32>, <16 x i32>) #11872 1873; Function Attrs: nounwind readnone1874declare <16 x i32> @llvm.hexagon.V6.vasrhbrndsat(<16 x i32>, <16 x i32>, i32) #11875 1876; Function Attrs: nounwind readnone1877declare <16 x i32> @llvm.hexagon.V6.vdealb(<16 x i32>) #11878 1879; Function Attrs: nounwind readnone1880declare <16 x i32> @llvm.hexagon.V6.vdealb4w(<16 x i32>, <16 x i32>) #11881 1882; Function Attrs: nounwind readnone1883declare <16 x i32> @llvm.hexagon.V6.vlutvvb(<16 x i32>, <16 x i32>, i32) #11884 1885; Function Attrs: nounwind readnone1886declare <16 x i32> @llvm.hexagon.V6.vlutvvb.oracc(<16 x i32>, <16 x i32>, <16 x i32>, i32) #11887 1888; Function Attrs: nounwind readnone1889declare <16 x i32> @llvm.hexagon.V6.vnavgub(<16 x i32>, <16 x i32>) #11890 1891; Function Attrs: nounwind readnone1892declare <16 x i32> @llvm.hexagon.V6.vpackhb.sat(<16 x i32>, <16 x i32>) #11893 1894; Function Attrs: nounwind readnone1895declare <16 x i32> @llvm.hexagon.V6.vpackeb(<16 x i32>, <16 x i32>) #11896 1897; Function Attrs: nounwind readnone1898declare <16 x i32> @llvm.hexagon.V6.vpackob(<16 x i32>, <16 x i32>) #11899 1900; Function Attrs: nounwind readnone1901declare <16 x i32> @llvm.hexagon.V6.vroundhb(<16 x i32>, <16 x i32>) #11902 1903; Function Attrs: nounwind readnone1904declare <16 x i32> @llvm.hexagon.V6.vshuffb(<16 x i32>) #11905 1906; Function Attrs: nounwind readnone1907declare <16 x i32> @llvm.hexagon.V6.vshuffeb(<16 x i32>, <16 x i32>) #11908 1909; Function Attrs: nounwind readnone1910declare <16 x i32> @llvm.hexagon.V6.vshuffob(<16 x i32>, <16 x i32>) #11911 1912; Function Attrs: nounwind readnone1913declare <16 x i32> @llvm.hexagon.V6.vsubb(<16 x i32>, <16 x i32>) #11914 1915; Function Attrs: nounwind readnone1916declare <16 x i32> @llvm.hexagon.V6.vaddhq(<64 x i1>, <16 x i32>, <16 x i32>) #11917 1918; Function Attrs: nounwind readnone1919declare <16 x i32> @llvm.hexagon.V6.vaddhnq(<64 x i1>, <16 x i32>, <16 x i32>) #11920 1921; Function Attrs: nounwind readnone1922declare <16 x i32> @llvm.hexagon.V6.vsubhq(<64 x i1>, <16 x i32>, <16 x i32>) #11923 1924; Function Attrs: nounwind readnone1925declare <16 x i32> @llvm.hexagon.V6.vsubhnq(<64 x i1>, <16 x i32>, <16 x i32>) #11926 1927; Function Attrs: nounwind readnone1928declare <16 x i32> @llvm.hexagon.V6.vabsh(<16 x i32>) #11929 1930; Function Attrs: nounwind readnone1931declare <16 x i32> @llvm.hexagon.V6.vabsh.sat(<16 x i32>) #11932 1933; Function Attrs: nounwind readnone1934declare <16 x i32> @llvm.hexagon.V6.vaddh(<16 x i32>, <16 x i32>) #11935 1936; Function Attrs: nounwind readnone1937declare <16 x i32> @llvm.hexagon.V6.vaddhsat(<16 x i32>, <16 x i32>) #11938 1939; Function Attrs: nounwind readnone1940declare <16 x i32> @llvm.hexagon.V6.vaslh(<16 x i32>, i32) #11941 1942; Function Attrs: nounwind readnone1943declare <16 x i32> @llvm.hexagon.V6.vaslhv(<16 x i32>, <16 x i32>) #11944 1945; Function Attrs: nounwind readnone1946declare <16 x i32> @llvm.hexagon.V6.vasrh(<16 x i32>, i32) #11947 1948; Function Attrs: nounwind readnone1949declare <16 x i32> @llvm.hexagon.V6.vasrhv(<16 x i32>, <16 x i32>) #11950 1951; Function Attrs: nounwind readnone1952declare <16 x i32> @llvm.hexagon.V6.vasrwh(<16 x i32>, <16 x i32>, i32) #11953 1954; Function Attrs: nounwind readnone1955declare <16 x i32> @llvm.hexagon.V6.vasrwhrndsat(<16 x i32>, <16 x i32>, i32) #11956 1957; Function Attrs: nounwind readnone1958declare <16 x i32> @llvm.hexagon.V6.vasrwhsat(<16 x i32>, <16 x i32>, i32) #11959 1960; Function Attrs: nounwind readnone1961declare <16 x i32> @llvm.hexagon.V6.vavgh(<16 x i32>, <16 x i32>) #11962 1963; Function Attrs: nounwind readnone1964declare <16 x i32> @llvm.hexagon.V6.vavghrnd(<16 x i32>, <16 x i32>) #11965 1966; Function Attrs: nounwind readnone1967declare <16 x i32> @llvm.hexagon.V6.vdealh(<16 x i32>) #11968 1969; Function Attrs: nounwind readnone1970declare <16 x i32> @llvm.hexagon.V6.vdmpybus(<16 x i32>, i32) #11971 1972; Function Attrs: nounwind readnone1973declare <16 x i32> @llvm.hexagon.V6.vdmpybus.acc(<16 x i32>, <16 x i32>, i32) #11974 1975; Function Attrs: nounwind readnone1976declare <16 x i32> @llvm.hexagon.V6.vlsrhv(<16 x i32>, <16 x i32>) #11977 1978; Function Attrs: nounwind readnone1979declare <16 x i32> @llvm.hexagon.V6.vmaxh(<16 x i32>, <16 x i32>) #11980 1981; Function Attrs: nounwind readnone1982declare <16 x i32> @llvm.hexagon.V6.vminh(<16 x i32>, <16 x i32>) #11983 1984; Function Attrs: nounwind readnone1985declare <16 x i32> @llvm.hexagon.V6.vmpyhsrs(<16 x i32>, i32) #11986 1987; Function Attrs: nounwind readnone1988declare <16 x i32> @llvm.hexagon.V6.vmpyhss(<16 x i32>, i32) #11989 1990; Function Attrs: nounwind readnone1991declare <16 x i32> @llvm.hexagon.V6.vmpyhvsrs(<16 x i32>, <16 x i32>) #11992 1993; Function Attrs: nounwind readnone1994declare <16 x i32> @llvm.hexagon.V6.vmpyihb(<16 x i32>, i32) #11995 1996; Function Attrs: nounwind readnone1997declare <16 x i32> @llvm.hexagon.V6.vmpyih(<16 x i32>, <16 x i32>) #11998 1999; Function Attrs: nounwind readnone2000declare <16 x i32> @llvm.hexagon.V6.vmpyihb.acc(<16 x i32>, <16 x i32>, i32) #12001 2002; Function Attrs: nounwind readnone2003declare <16 x i32> @llvm.hexagon.V6.vmpyih.acc(<16 x i32>, <16 x i32>, <16 x i32>) #12004 2005; Function Attrs: nounwind readnone2006declare <16 x i32> @llvm.hexagon.V6.vnavgh(<16 x i32>, <16 x i32>) #12007 2008; Function Attrs: nounwind readnone2009declare <16 x i32> @llvm.hexagon.V6.vnormamth(<16 x i32>) #12010 2011; Function Attrs: nounwind readnone2012declare <16 x i32> @llvm.hexagon.V6.vpackwh.sat(<16 x i32>, <16 x i32>) #12013 2014; Function Attrs: nounwind readnone2015declare <16 x i32> @llvm.hexagon.V6.vpackeh(<16 x i32>, <16 x i32>) #12016 2017; Function Attrs: nounwind readnone2018declare <16 x i32> @llvm.hexagon.V6.vpackoh(<16 x i32>, <16 x i32>) #12019 2020; Function Attrs: nounwind readnone2021declare <16 x i32> @llvm.hexagon.V6.vpopcounth(<16 x i32>) #12022 2023; Function Attrs: nounwind readnone2024declare <16 x i32> @llvm.hexagon.V6.vroundwh(<16 x i32>, <16 x i32>) #12025 2026; Function Attrs: nounwind readnone2027declare <16 x i32> @llvm.hexagon.V6.vsatwh(<16 x i32>, <16 x i32>) #12028 2029; Function Attrs: nounwind readnone2030declare <16 x i32> @llvm.hexagon.V6.vshuffh(<16 x i32>) #12031 2032; Function Attrs: nounwind readnone2033declare <16 x i32> @llvm.hexagon.V6.vshufeh(<16 x i32>, <16 x i32>) #12034 2035; Function Attrs: nounwind readnone2036declare <16 x i32> @llvm.hexagon.V6.vshufoh(<16 x i32>, <16 x i32>) #12037 2038; Function Attrs: nounwind readnone2039declare <16 x i32> @llvm.hexagon.V6.vsubh(<16 x i32>, <16 x i32>) #12040 2041; Function Attrs: nounwind readnone2042declare <16 x i32> @llvm.hexagon.V6.vsubhsat(<16 x i32>, <16 x i32>) #12043 2044; Function Attrs: nounwind readnone2045declare <16 x i32> @llvm.hexagon.V6.vabsdiffub(<16 x i32>, <16 x i32>) #12046 2047; Function Attrs: nounwind readnone2048declare <16 x i32> @llvm.hexagon.V6.vaddubsat(<16 x i32>, <16 x i32>) #12049 2050; Function Attrs: nounwind readnone2051declare <16 x i32> @llvm.hexagon.V6.vasrhubrndsat(<16 x i32>, <16 x i32>, i32) #12052 2053; Function Attrs: nounwind readnone2054declare <16 x i32> @llvm.hexagon.V6.vasrhubsat(<16 x i32>, <16 x i32>, i32) #12055 2056; Function Attrs: nounwind readnone2057declare <16 x i32> @llvm.hexagon.V6.vavgub(<16 x i32>, <16 x i32>) #12058 2059; Function Attrs: nounwind readnone2060declare <16 x i32> @llvm.hexagon.V6.vavgubrnd(<16 x i32>, <16 x i32>) #12061 2062; Function Attrs: nounwind readnone2063declare <16 x i32> @llvm.hexagon.V6.vmaxub(<16 x i32>, <16 x i32>) #12064 2065; Function Attrs: nounwind readnone2066declare <16 x i32> @llvm.hexagon.V6.vminub(<16 x i32>, <16 x i32>) #12067 2068; Function Attrs: nounwind readnone2069declare <16 x i32> @llvm.hexagon.V6.vpackhub.sat(<16 x i32>, <16 x i32>) #12070 2071; Function Attrs: nounwind readnone2072declare <16 x i32> @llvm.hexagon.V6.vroundhub(<16 x i32>, <16 x i32>) #12073 2074; Function Attrs: nounwind readnone2075declare <16 x i32> @llvm.hexagon.V6.vsathub(<16 x i32>, <16 x i32>) #12076 2077; Function Attrs: nounwind readnone2078declare <16 x i32> @llvm.hexagon.V6.vsububsat(<16 x i32>, <16 x i32>) #12079 2080; Function Attrs: nounwind readnone2081declare <16 x i32> @llvm.hexagon.V6.vabsdiffh(<16 x i32>, <16 x i32>) #12082 2083; Function Attrs: nounwind readnone2084declare <16 x i32> @llvm.hexagon.V6.vabsdiffuh(<16 x i32>, <16 x i32>) #12085 2086; Function Attrs: nounwind readnone2087declare <16 x i32> @llvm.hexagon.V6.vadduhsat(<16 x i32>, <16 x i32>) #12088 2089; Function Attrs: nounwind readnone2090declare <16 x i32> @llvm.hexagon.V6.vasrwuhsat(<16 x i32>, <16 x i32>, i32) #12091 2092; Function Attrs: nounwind readnone2093declare <16 x i32> @llvm.hexagon.V6.vavguh(<16 x i32>, <16 x i32>) #12094 2095; Function Attrs: nounwind readnone2096declare <16 x i32> @llvm.hexagon.V6.vavguhrnd(<16 x i32>, <16 x i32>) #12097 2098; Function Attrs: nounwind readnone2099declare <16 x i32> @llvm.hexagon.V6.vcl0h(<16 x i32>) #12100 2101; Function Attrs: nounwind readnone2102declare <16 x i32> @llvm.hexagon.V6.vlsrh(<16 x i32>, i32) #12103 2104; Function Attrs: nounwind readnone2105declare <16 x i32> @llvm.hexagon.V6.vmaxuh(<16 x i32>, <16 x i32>) #12106 2107; Function Attrs: nounwind readnone2108declare <16 x i32> @llvm.hexagon.V6.vminuh(<16 x i32>, <16 x i32>) #12109 2110; Function Attrs: nounwind readnone2111declare <16 x i32> @llvm.hexagon.V6.vpackwuh.sat(<16 x i32>, <16 x i32>) #12112 2113; Function Attrs: nounwind readnone2114declare <16 x i32> @llvm.hexagon.V6.vroundwuh(<16 x i32>, <16 x i32>) #12115 2116; Function Attrs: nounwind readnone2117declare <16 x i32> @llvm.hexagon.V6.vsubuhsat(<16 x i32>, <16 x i32>) #12118 2119; Function Attrs: nounwind readnone2120declare <16 x i32> @llvm.hexagon.V6.vabsdiffw(<16 x i32>, <16 x i32>) #12121 2122; Function Attrs: nounwind readnone2123declare <16 x i32> @llvm.hexagon.V6.vcl0w(<16 x i32>) #12124 2125; Function Attrs: nounwind readnone2126declare <16 x i32> @llvm.hexagon.V6.vlsrw(<16 x i32>, i32) #12127 2128; Function Attrs: nounwind readnone2129declare <16 x i32> @llvm.hexagon.V6.vrmpyub(<16 x i32>, i32) #12130 2131; Function Attrs: nounwind readnone2132declare <16 x i32> @llvm.hexagon.V6.vrmpyubv(<16 x i32>, <16 x i32>) #12133 2134; Function Attrs: nounwind readnone2135declare <16 x i32> @llvm.hexagon.V6.vrmpyub.acc(<16 x i32>, <16 x i32>, i32) #12136 2137; Function Attrs: nounwind readnone2138declare <16 x i32> @llvm.hexagon.V6.vrmpyubv.acc(<16 x i32>, <16 x i32>, <16 x i32>) #12139 2140; Function Attrs: nounwind readnone2141declare <16 x i32> @llvm.hexagon.V6.vaddwq(<64 x i1>, <16 x i32>, <16 x i32>) #12142 2143; Function Attrs: nounwind readnone2144declare <16 x i32> @llvm.hexagon.V6.vaddwnq(<64 x i1>, <16 x i32>, <16 x i32>) #12145 2146; Function Attrs: nounwind readnone2147declare <16 x i32> @llvm.hexagon.V6.vsubwq(<64 x i1>, <16 x i32>, <16 x i32>) #12148 2149; Function Attrs: nounwind readnone2150declare <16 x i32> @llvm.hexagon.V6.vsubwnq(<64 x i1>, <16 x i32>, <16 x i32>) #12151 2152; Function Attrs: nounwind readnone2153declare <16 x i32> @llvm.hexagon.V6.vabsw(<16 x i32>) #12154 2155; Function Attrs: nounwind readnone2156declare <16 x i32> @llvm.hexagon.V6.vabsw.sat(<16 x i32>) #12157 2158; Function Attrs: nounwind readnone2159declare <16 x i32> @llvm.hexagon.V6.vaddw(<16 x i32>, <16 x i32>) #12160 2161; Function Attrs: nounwind readnone2162declare <16 x i32> @llvm.hexagon.V6.vaddwsat(<16 x i32>, <16 x i32>) #12163 2164; Function Attrs: nounwind readnone2165declare <16 x i32> @llvm.hexagon.V6.vaslw(<16 x i32>, i32) #12166 2167; Function Attrs: nounwind readnone2168declare <16 x i32> @llvm.hexagon.V6.vaslwv(<16 x i32>, <16 x i32>) #12169 2170; Function Attrs: nounwind readnone2171declare <16 x i32> @llvm.hexagon.V6.vaslw.acc(<16 x i32>, <16 x i32>, i32) #12172 2173; Function Attrs: nounwind readnone2174declare <16 x i32> @llvm.hexagon.V6.vasrw(<16 x i32>, i32) #12175 2176; Function Attrs: nounwind readnone2177declare <16 x i32> @llvm.hexagon.V6.vasrwv(<16 x i32>, <16 x i32>) #12178 2179; Function Attrs: nounwind readnone2180declare <16 x i32> @llvm.hexagon.V6.vasrw.acc(<16 x i32>, <16 x i32>, i32) #12181 2182; Function Attrs: nounwind readnone2183declare <16 x i32> @llvm.hexagon.V6.vavgw(<16 x i32>, <16 x i32>) #12184 2185; Function Attrs: nounwind readnone2186declare <16 x i32> @llvm.hexagon.V6.vavgwrnd(<16 x i32>, <16 x i32>) #12187 2188; Function Attrs: nounwind readnone2189declare <16 x i32> @llvm.hexagon.V6.vdmpyhb(<16 x i32>, i32) #12190 2191; Function Attrs: nounwind readnone2192declare <16 x i32> @llvm.hexagon.V6.vdmpyhsat(<16 x i32>, i32) #12193 2194; Function Attrs: nounwind readnone2195declare <16 x i32> @llvm.hexagon.V6.vdmpyhsusat(<16 x i32>, i32) #12196 2197; Function Attrs: nounwind readnone2198declare <16 x i32> @llvm.hexagon.V6.vdmpyhvsat(<16 x i32>, <16 x i32>) #12199 2200; Function Attrs: nounwind readnone2201declare <16 x i32> @llvm.hexagon.V6.vdmpyhisat(<32 x i32>, i32) #12202 2203; Function Attrs: nounwind readnone2204declare <16 x i32> @llvm.hexagon.V6.vdmpyhsuisat(<32 x i32>, i32) #12205 2206; Function Attrs: nounwind readnone2207declare <16 x i32> @llvm.hexagon.V6.vdmpyhb.acc(<16 x i32>, <16 x i32>, i32) #12208 2209; Function Attrs: nounwind readnone2210declare <16 x i32> @llvm.hexagon.V6.vdmpyhsat.acc(<16 x i32>, <16 x i32>, i32) #12211 2212; Function Attrs: nounwind readnone2213declare <16 x i32> @llvm.hexagon.V6.vdmpyhsusat.acc(<16 x i32>, <16 x i32>, i32) #12214 2215; Function Attrs: nounwind readnone2216declare <16 x i32> @llvm.hexagon.V6.vdmpyhvsat.acc(<16 x i32>, <16 x i32>, <16 x i32>) #12217 2218; Function Attrs: nounwind readnone2219declare <16 x i32> @llvm.hexagon.V6.vdmpyhisat.acc(<16 x i32>, <32 x i32>, i32) #12220 2221; Function Attrs: nounwind readnone2222declare <16 x i32> @llvm.hexagon.V6.vdmpyhsuisat.acc(<16 x i32>, <32 x i32>, i32) #12223 2224; Function Attrs: nounwind readnone2225declare <16 x i32> @llvm.hexagon.V6.vinsertwr(<16 x i32>, i32) #12226 2227; Function Attrs: nounwind readnone2228declare <16 x i32> @llvm.hexagon.V6.vlsrwv(<16 x i32>, <16 x i32>) #12229 2230; Function Attrs: nounwind readnone2231declare <16 x i32> @llvm.hexagon.V6.vmaxw(<16 x i32>, <16 x i32>) #12232 2233; Function Attrs: nounwind readnone2234declare <16 x i32> @llvm.hexagon.V6.vminw(<16 x i32>, <16 x i32>) #12235 2236; Function Attrs: nounwind readnone2237declare <16 x i32> @llvm.hexagon.V6.vmpyewuh(<16 x i32>, <16 x i32>) #12238 2239; Function Attrs: nounwind readnone2240declare <16 x i32> @llvm.hexagon.V6.vmpyiwb(<16 x i32>, i32) #12241 2242; Function Attrs: nounwind readnone2243declare <16 x i32> @llvm.hexagon.V6.vmpyiwh(<16 x i32>, i32) #12244 2245; Function Attrs: nounwind readnone2246declare <16 x i32> @llvm.hexagon.V6.vmpyiwb.acc(<16 x i32>, <16 x i32>, i32) #12247 2248; Function Attrs: nounwind readnone2249declare <16 x i32> @llvm.hexagon.V6.vmpyiwh.acc(<16 x i32>, <16 x i32>, i32) #12250 2251; Function Attrs: nounwind readnone2252declare <16 x i32> @llvm.hexagon.V6.vmpyiewuh(<16 x i32>, <16 x i32>) #12253 2254; Function Attrs: nounwind readnone2255declare <16 x i32> @llvm.hexagon.V6.vmpyiewh.acc(<16 x i32>, <16 x i32>, <16 x i32>) #12256 2257; Function Attrs: nounwind readnone2258declare <16 x i32> @llvm.hexagon.V6.vmpyiewuh.acc(<16 x i32>, <16 x i32>, <16 x i32>) #12259 2260; Function Attrs: nounwind readnone2261declare <16 x i32> @llvm.hexagon.V6.vmpyieoh(<16 x i32>, <16 x i32>) #12262 2263; Function Attrs: nounwind readnone2264declare <16 x i32> @llvm.hexagon.V6.vmpyiowh(<16 x i32>, <16 x i32>) #12265 2266; Function Attrs: nounwind readnone2267declare <16 x i32> @llvm.hexagon.V6.vmpyowh.rnd(<16 x i32>, <16 x i32>) #12268 2269; Function Attrs: nounwind readnone2270declare <16 x i32> @llvm.hexagon.V6.vmpyowh(<16 x i32>, <16 x i32>) #12271 2272; Function Attrs: nounwind readnone2273declare <16 x i32> @llvm.hexagon.V6.vmpyowh.rnd.sacc(<16 x i32>, <16 x i32>, <16 x i32>) #12274 2275; Function Attrs: nounwind readnone2276declare <16 x i32> @llvm.hexagon.V6.vmpyowh.sacc(<16 x i32>, <16 x i32>, <16 x i32>) #12277 2278; Function Attrs: nounwind readnone2279declare <16 x i32> @llvm.hexagon.V6.vnavgw(<16 x i32>, <16 x i32>) #12280 2281; Function Attrs: nounwind readnone2282declare <16 x i32> @llvm.hexagon.V6.vnormamtw(<16 x i32>) #12283 2284; Function Attrs: nounwind readnone2285declare <16 x i32> @llvm.hexagon.V6.vrmpybv(<16 x i32>, <16 x i32>) #12286 2287; Function Attrs: nounwind readnone2288declare <16 x i32> @llvm.hexagon.V6.vrmpybus(<16 x i32>, i32) #12289 2290; Function Attrs: nounwind readnone2291declare <16 x i32> @llvm.hexagon.V6.vrmpybusv(<16 x i32>, <16 x i32>) #12292 2293; Function Attrs: nounwind readnone2294declare <16 x i32> @llvm.hexagon.V6.vrmpybv.acc(<16 x i32>, <16 x i32>, <16 x i32>) #12295 2296; Function Attrs: nounwind readnone2297declare <16 x i32> @llvm.hexagon.V6.vrmpybus.acc(<16 x i32>, <16 x i32>, i32) #12298 2299; Function Attrs: nounwind readnone2300declare <16 x i32> @llvm.hexagon.V6.vrmpybusv.acc(<16 x i32>, <16 x i32>, <16 x i32>) #12301 2302; Function Attrs: nounwind readnone2303declare <16 x i32> @llvm.hexagon.V6.vsubw(<16 x i32>, <16 x i32>) #12304 2305; Function Attrs: nounwind readnone2306declare <16 x i32> @llvm.hexagon.V6.vsubwsat(<16 x i32>, <16 x i32>) #12307 2308; Function Attrs: nounwind readnone2309declare <32 x i32> @llvm.hexagon.V6.vassignp(<32 x i32>) #12310 2311; Function Attrs: nounwind readnone2312declare <32 x i32> @llvm.hexagon.V6.vcombine(<16 x i32>, <16 x i32>) #12313 2314; Function Attrs: nounwind readnone2315declare <32 x i32> @llvm.hexagon.V6.vdealvdd(<16 x i32>, <16 x i32>, i32) #12316 2317; Function Attrs: nounwind readnone2318declare <32 x i32> @llvm.hexagon.V6.vshuffvdd(<16 x i32>, <16 x i32>, i32) #12319 2320; Function Attrs: nounwind readnone2321declare <32 x i32> @llvm.hexagon.V6.vswap(<64 x i1>, <16 x i32>, <16 x i32>) #12322 2323; Function Attrs: nounwind readnone2324declare <32 x i32> @llvm.hexagon.V6.vaddb.dv(<32 x i32>, <32 x i32>) #12325 2326; Function Attrs: nounwind readnone2327declare <32 x i32> @llvm.hexagon.V6.vshufoeb(<16 x i32>, <16 x i32>) #12328 2329; Function Attrs: nounwind readnone2330declare <32 x i32> @llvm.hexagon.V6.vsubb.dv(<32 x i32>, <32 x i32>) #12331 2332; Function Attrs: nounwind readnone2333declare <32 x i32> @llvm.hexagon.V6.vaddubh(<16 x i32>, <16 x i32>) #12334 2335; Function Attrs: nounwind readnone2336declare <32 x i32> @llvm.hexagon.V6.vaddh.dv(<32 x i32>, <32 x i32>) #12337 2338; Function Attrs: nounwind readnone2339declare <32 x i32> @llvm.hexagon.V6.vaddhsat.dv(<32 x i32>, <32 x i32>) #12340 2341; Function Attrs: nounwind readnone2342declare <32 x i32> @llvm.hexagon.V6.vdmpybus.dv(<32 x i32>, i32) #12343 2344; Function Attrs: nounwind readnone2345declare <32 x i32> @llvm.hexagon.V6.vdmpybus.dv.acc(<32 x i32>, <32 x i32>, i32) #12346 2347; Function Attrs: nounwind readnone2348declare <32 x i32> @llvm.hexagon.V6.vlutvwh(<16 x i32>, <16 x i32>, i32) #12349 2350; Function Attrs: nounwind readnone2351declare <32 x i32> @llvm.hexagon.V6.vlutvwh.oracc(<32 x i32>, <16 x i32>, <16 x i32>, i32) #12352 2353; Function Attrs: nounwind readnone2354declare <32 x i32> @llvm.hexagon.V6.vmpabus(<32 x i32>, i32) #12355 2356; Function Attrs: nounwind readnone2357declare <32 x i32> @llvm.hexagon.V6.vmpabusv(<32 x i32>, <32 x i32>) #12358 2359; Function Attrs: nounwind readnone2360declare <32 x i32> @llvm.hexagon.V6.vmpabuuv(<32 x i32>, <32 x i32>) #12361 2362; Function Attrs: nounwind readnone2363declare <32 x i32> @llvm.hexagon.V6.vmpabus.acc(<32 x i32>, <32 x i32>, i32) #12364 2365; Function Attrs: nounwind readnone2366declare <32 x i32> @llvm.hexagon.V6.vmpybv(<16 x i32>, <16 x i32>) #12367 2368; Function Attrs: nounwind readnone2369declare <32 x i32> @llvm.hexagon.V6.vmpybus(<16 x i32>, i32) #12370 2371; Function Attrs: nounwind readnone2372declare <32 x i32> @llvm.hexagon.V6.vmpybusv(<16 x i32>, <16 x i32>) #12373 2374; Function Attrs: nounwind readnone2375declare <32 x i32> @llvm.hexagon.V6.vmpybv.acc(<32 x i32>, <16 x i32>, <16 x i32>) #12376 2377; Function Attrs: nounwind readnone2378declare <32 x i32> @llvm.hexagon.V6.vmpybus.acc(<32 x i32>, <16 x i32>, i32) #12379 2380; Function Attrs: nounwind readnone2381declare <32 x i32> @llvm.hexagon.V6.vmpybusv.acc(<32 x i32>, <16 x i32>, <16 x i32>) #12382 2383; Function Attrs: nounwind readnone2384declare <32 x i32> @llvm.hexagon.V6.vshufoeh(<16 x i32>, <16 x i32>) #12385 2386; Function Attrs: nounwind readnone2387declare <32 x i32> @llvm.hexagon.V6.vsububh(<16 x i32>, <16 x i32>) #12388 2389; Function Attrs: nounwind readnone2390declare <32 x i32> @llvm.hexagon.V6.vsubh.dv(<32 x i32>, <32 x i32>) #12391 2392; Function Attrs: nounwind readnone2393declare <32 x i32> @llvm.hexagon.V6.vsubhsat.dv(<32 x i32>, <32 x i32>) #12394 2395; Function Attrs: nounwind readnone2396declare <32 x i32> @llvm.hexagon.V6.vsb(<16 x i32>) #12397 2398; Function Attrs: nounwind readnone2399declare <32 x i32> @llvm.hexagon.V6.vtmpyb(<32 x i32>, i32) #12400 2401; Function Attrs: nounwind readnone2402declare <32 x i32> @llvm.hexagon.V6.vtmpybus(<32 x i32>, i32) #12403 2404; Function Attrs: nounwind readnone2405declare <32 x i32> @llvm.hexagon.V6.vtmpyb.acc(<32 x i32>, <32 x i32>, i32) #12406 2407; Function Attrs: nounwind readnone2408declare <32 x i32> @llvm.hexagon.V6.vtmpybus.acc(<32 x i32>, <32 x i32>, i32) #12409 2410; Function Attrs: nounwind readnone2411declare <32 x i32> @llvm.hexagon.V6.vunpackb(<16 x i32>) #12412 2413; Function Attrs: nounwind readnone2414declare <32 x i32> @llvm.hexagon.V6.vunpackob(<32 x i32>, <16 x i32>) #12415 2416; Function Attrs: nounwind readnone2417declare <32 x i32> @llvm.hexagon.V6.vaddubsat.dv(<32 x i32>, <32 x i32>) #12418 2419; Function Attrs: nounwind readnone2420declare <32 x i32> @llvm.hexagon.V6.vsububsat.dv(<32 x i32>, <32 x i32>) #12421 2422; Function Attrs: nounwind readnone2423declare <32 x i32> @llvm.hexagon.V6.vadduhsat.dv(<32 x i32>, <32 x i32>) #12424 2425; Function Attrs: nounwind readnone2426declare <32 x i32> @llvm.hexagon.V6.vmpyub(<16 x i32>, i32) #12427 2428; Function Attrs: nounwind readnone2429declare <32 x i32> @llvm.hexagon.V6.vmpyubv(<16 x i32>, <16 x i32>) #12430 2431; Function Attrs: nounwind readnone2432declare <32 x i32> @llvm.hexagon.V6.vmpyub.acc(<32 x i32>, <16 x i32>, i32) #12433 2434; Function Attrs: nounwind readnone2435declare <32 x i32> @llvm.hexagon.V6.vmpyubv.acc(<32 x i32>, <16 x i32>, <16 x i32>) #12436 2437; Function Attrs: nounwind readnone2438declare <32 x i32> @llvm.hexagon.V6.vsubuhsat.dv(<32 x i32>, <32 x i32>) #12439 2440; Function Attrs: nounwind readnone2441declare <32 x i32> @llvm.hexagon.V6.vunpackub(<16 x i32>) #12442 2443; Function Attrs: nounwind readnone2444declare <32 x i32> @llvm.hexagon.V6.vzb(<16 x i32>) #12445 2446; Function Attrs: nounwind readnone2447declare <32 x i32> @llvm.hexagon.V6.vdsaduh(<32 x i32>, i32) #12448 2449; Function Attrs: nounwind readnone2450declare <32 x i32> @llvm.hexagon.V6.vdsaduh.acc(<32 x i32>, <32 x i32>, i32) #12451 2452; Function Attrs: nounwind readnone2453declare <32 x i32> @llvm.hexagon.V6.vmpyuh(<16 x i32>, i32) #12454 2455; Function Attrs: nounwind readnone2456declare <32 x i32> @llvm.hexagon.V6.vmpyuhv(<16 x i32>, <16 x i32>) #12457 2458; Function Attrs: nounwind readnone2459declare <32 x i32> @llvm.hexagon.V6.vmpyuh.acc(<32 x i32>, <16 x i32>, i32) #12460 2461; Function Attrs: nounwind readnone2462declare <32 x i32> @llvm.hexagon.V6.vmpyuhv.acc(<32 x i32>, <16 x i32>, <16 x i32>) #12463 2464; Function Attrs: nounwind readnone2465declare <32 x i32> @llvm.hexagon.V6.vrmpyubi(<32 x i32>, i32, i32) #12466 2467; Function Attrs: nounwind readnone2468declare <32 x i32> @llvm.hexagon.V6.vrmpyubi.acc(<32 x i32>, <32 x i32>, i32, i32) #12469 2470; Function Attrs: nounwind readnone2471declare <32 x i32> @llvm.hexagon.V6.vrsadubi(<32 x i32>, i32, i32) #12472 2473; Function Attrs: nounwind readnone2474declare <32 x i32> @llvm.hexagon.V6.vrsadubi.acc(<32 x i32>, <32 x i32>, i32, i32) #12475 2476; Function Attrs: nounwind readnone2477declare <32 x i32> @llvm.hexagon.V6.vunpackuh(<16 x i32>) #12478 2479; Function Attrs: nounwind readnone2480declare <32 x i32> @llvm.hexagon.V6.vzh(<16 x i32>) #12481 2482; Function Attrs: nounwind readnone2483declare <32 x i32> @llvm.hexagon.V6.vaddhw(<16 x i32>, <16 x i32>) #12484 2485; Function Attrs: nounwind readnone2486declare <32 x i32> @llvm.hexagon.V6.vadduhw(<16 x i32>, <16 x i32>) #12487 2488; Function Attrs: nounwind readnone2489declare <32 x i32> @llvm.hexagon.V6.vaddw.dv(<32 x i32>, <32 x i32>) #12490 2491; Function Attrs: nounwind readnone2492declare <32 x i32> @llvm.hexagon.V6.vaddwsat.dv(<32 x i32>, <32 x i32>) #12493 2494; Function Attrs: nounwind readnone2495declare <32 x i32> @llvm.hexagon.V6.vdmpyhb.dv(<32 x i32>, i32) #12496 2497; Function Attrs: nounwind readnone2498declare <32 x i32> @llvm.hexagon.V6.vdmpyhb.dv.acc(<32 x i32>, <32 x i32>, i32) #12499 2500; Function Attrs: nounwind readnone2501declare <32 x i32> @llvm.hexagon.V6.vmpahb(<32 x i32>, i32) #12502 2503; Function Attrs: nounwind readnone2504declare <32 x i32> @llvm.hexagon.V6.vmpahb.acc(<32 x i32>, <32 x i32>, i32) #12505 2506; Function Attrs: nounwind readnone2507declare <32 x i32> @llvm.hexagon.V6.vmpyh(<16 x i32>, i32) #12508 2509; Function Attrs: nounwind readnone2510declare <32 x i32> @llvm.hexagon.V6.vmpyhv(<16 x i32>, <16 x i32>) #12511 2512; Function Attrs: nounwind readnone2513declare <32 x i32> @llvm.hexagon.V6.vmpyhus(<16 x i32>, <16 x i32>) #12514 2515; Function Attrs: nounwind readnone2516declare <32 x i32> @llvm.hexagon.V6.vmpyhsat.acc(<32 x i32>, <16 x i32>, i32) #12517 2518; Function Attrs: nounwind readnone2519declare <32 x i32> @llvm.hexagon.V6.vmpyhv.acc(<32 x i32>, <16 x i32>, <16 x i32>) #12520 2521; Function Attrs: nounwind readnone2522declare <32 x i32> @llvm.hexagon.V6.vmpyhus.acc(<32 x i32>, <16 x i32>, <16 x i32>) #12523 2524; Function Attrs: nounwind readnone2525declare <32 x i32> @llvm.hexagon.V6.vrmpybusi(<32 x i32>, i32, i32) #12526 2527; Function Attrs: nounwind readnone2528declare <32 x i32> @llvm.hexagon.V6.vrmpybusi.acc(<32 x i32>, <32 x i32>, i32, i32) #12529 2530; Function Attrs: nounwind readnone2531declare <32 x i32> @llvm.hexagon.V6.vsubhw(<16 x i32>, <16 x i32>) #12532 2533; Function Attrs: nounwind readnone2534declare <32 x i32> @llvm.hexagon.V6.vsubuhw(<16 x i32>, <16 x i32>) #12535 2536; Function Attrs: nounwind readnone2537declare <32 x i32> @llvm.hexagon.V6.vsubw.dv(<32 x i32>, <32 x i32>) #12538 2539; Function Attrs: nounwind readnone2540declare <32 x i32> @llvm.hexagon.V6.vsubwsat.dv(<32 x i32>, <32 x i32>) #12541 2542; Function Attrs: nounwind readnone2543declare <32 x i32> @llvm.hexagon.V6.vsh(<16 x i32>) #12544 2545; Function Attrs: nounwind readnone2546declare <32 x i32> @llvm.hexagon.V6.vtmpyhb(<32 x i32>, i32) #12547 2548; Function Attrs: nounwind readnone2549declare <32 x i32> @llvm.hexagon.V6.vtmpyhb.acc(<32 x i32>, <32 x i32>, i32) #12550 2551; Function Attrs: nounwind readnone2552declare <32 x i32> @llvm.hexagon.V6.vunpackh(<16 x i32>) #12553 2554; Function Attrs: nounwind readnone2555declare <32 x i32> @llvm.hexagon.V6.vunpackoh(<32 x i32>, <16 x i32>) #12556 2557attributes #0 = { nounwind "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="hexagonv60" "target-features"="+hvxv60,+hvx-length64b" "unsafe-fp-math"="false" "use-soft-float"="false" }2558attributes #1 = { nounwind readnone }2559