brintos

brintos / llvm-project-archived public Read only

0
0
Text · 76.6 KiB · d19a8ba Raw
1988 lines · plain
1; RUN: opt < %s -passes="print<cost-model>" 2>&1 -disable-output -mtriple=systemz-unknown -mcpu=z13 | FileCheck %s2;3; Note: Cost estimates of select of a fp-type is somewhat arbitrary, since it4; involves a conditional jump.5; Note: Vector fp32 is not directly supported, and not quite exact in6; estimates (but it is big absolute values).7 8define i8 @fun0(i8 %val1, i8 %val2,9                i8 %val3, i8 %val4) {10  %cmp = icmp eq i8 %val1, %val211  %sel = select i1 %cmp, i8 %val3, i8 %val412  ret i8 %sel13 14; CHECK: fun015; CHECK: cost of 3 for instruction:   %cmp = icmp eq i8 %val1, %val216; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i8 %val3, i8 %val417}18 19define i16 @fun1(i8 %val1, i8 %val2,20                 i16 %val3, i16 %val4) {21  %cmp = icmp eq i8 %val1, %val222  %sel = select i1 %cmp, i16 %val3, i16 %val423  ret i16 %sel24 25; CHECK: fun126; CHECK: cost of 3 for instruction:   %cmp = icmp eq i8 %val1, %val227; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i16 %val3, i16 %val428}29 30define i32 @fun2(i8 %val1, i8 %val2,31                 i32 %val3, i32 %val4) {32  %cmp = icmp eq i8 %val1, %val233  %sel = select i1 %cmp, i32 %val3, i32 %val434  ret i32 %sel35 36; CHECK: fun237; CHECK: cost of 3 for instruction:   %cmp = icmp eq i8 %val1, %val238; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i32 %val3, i32 %val439}40 41define i64 @fun3(i8 %val1, i8 %val2,42                 i64 %val3, i64 %val4) {43  %cmp = icmp eq i8 %val1, %val244  %sel = select i1 %cmp, i64 %val3, i64 %val445  ret i64 %sel46 47; CHECK: fun348; CHECK: cost of 3 for instruction:   %cmp = icmp eq i8 %val1, %val249; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i64 %val3, i64 %val450}51 52define float @fun4(i8 %val1, i8 %val2,53                   float %val3, float %val4) {54  %cmp = icmp eq i8 %val1, %val255  %sel = select i1 %cmp, float %val3, float %val456  ret float %sel57 58; CHECK: fun459; CHECK: cost of 3 for instruction:   %cmp = icmp eq i8 %val1, %val260; CHECK: cost of 4 for instruction:   %sel = select i1 %cmp, float %val3, float %val461}62 63define double @fun5(i8 %val1, i8 %val2,64                    double %val3, double %val4) {65  %cmp = icmp eq i8 %val1, %val266  %sel = select i1 %cmp, double %val3, double %val467  ret double %sel68 69; CHECK: fun570; CHECK: cost of 3 for instruction:   %cmp = icmp eq i8 %val1, %val271; CHECK: cost of 4 for instruction:   %sel = select i1 %cmp, double %val3, double %val472}73 74define i8 @fun6(i16 %val1, i16 %val2,75                i8 %val3, i8 %val4) {76  %cmp = icmp eq i16 %val1, %val277  %sel = select i1 %cmp, i8 %val3, i8 %val478  ret i8 %sel79 80; CHECK: fun681; CHECK: cost of 3 for instruction:   %cmp = icmp eq i16 %val1, %val282; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i8 %val3, i8 %val483}84 85define i16 @fun7(i16 %val1, i16 %val2,86                 i16 %val3, i16 %val4) {87  %cmp = icmp eq i16 %val1, %val288  %sel = select i1 %cmp, i16 %val3, i16 %val489  ret i16 %sel90 91; CHECK: fun792; CHECK: cost of 3 for instruction:   %cmp = icmp eq i16 %val1, %val293; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i16 %val3, i16 %val494}95 96define i32 @fun8(i16 %val1, i16 %val2,97                 i32 %val3, i32 %val4) {98  %cmp = icmp eq i16 %val1, %val299  %sel = select i1 %cmp, i32 %val3, i32 %val4100  ret i32 %sel101 102; CHECK: fun8103; CHECK: cost of 3 for instruction:   %cmp = icmp eq i16 %val1, %val2104; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i32 %val3, i32 %val4105}106 107define i64 @fun9(i16 %val1, i16 %val2,108                 i64 %val3, i64 %val4) {109  %cmp = icmp eq i16 %val1, %val2110  %sel = select i1 %cmp, i64 %val3, i64 %val4111  ret i64 %sel112 113; CHECK: fun9114; CHECK: cost of 3 for instruction:   %cmp = icmp eq i16 %val1, %val2115; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i64 %val3, i64 %val4116}117 118define float @fun10(i16 %val1, i16 %val2,119                    float %val3, float %val4) {120  %cmp = icmp eq i16 %val1, %val2121  %sel = select i1 %cmp, float %val3, float %val4122  ret float %sel123 124; CHECK: fun10125; CHECK: cost of 3 for instruction:   %cmp = icmp eq i16 %val1, %val2126; CHECK: cost of 4 for instruction:   %sel = select i1 %cmp, float %val3, float %val4127}128 129define double @fun11(i16 %val1, i16 %val2,130                     double %val3, double %val4) {131  %cmp = icmp eq i16 %val1, %val2132  %sel = select i1 %cmp, double %val3, double %val4133  ret double %sel134 135; CHECK: fun11136; CHECK: cost of 3 for instruction:   %cmp = icmp eq i16 %val1, %val2137; CHECK: cost of 4 for instruction:   %sel = select i1 %cmp, double %val3, double %val4138}139 140define i8 @fun12(i32 %val1, i32 %val2,141                 i8 %val3, i8 %val4) {142  %cmp = icmp eq i32 %val1, %val2143  %sel = select i1 %cmp, i8 %val3, i8 %val4144  ret i8 %sel145 146; CHECK: fun12147; CHECK: cost of 1 for instruction:   %cmp = icmp eq i32 %val1, %val2148; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i8 %val3, i8 %val4149}150 151define i16 @fun13(i32 %val1, i32 %val2,152                  i16 %val3, i16 %val4) {153  %cmp = icmp eq i32 %val1, %val2154  %sel = select i1 %cmp, i16 %val3, i16 %val4155  ret i16 %sel156 157; CHECK: fun13158; CHECK: cost of 1 for instruction:   %cmp = icmp eq i32 %val1, %val2159; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i16 %val3, i16 %val4160}161 162define i32 @fun14(i32 %val1, i32 %val2,163                  i32 %val3, i32 %val4) {164  %cmp = icmp eq i32 %val1, %val2165  %sel = select i1 %cmp, i32 %val3, i32 %val4166  ret i32 %sel167 168; CHECK: fun14169; CHECK: cost of 1 for instruction:   %cmp = icmp eq i32 %val1, %val2170; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i32 %val3, i32 %val4171}172 173define i64 @fun15(i32 %val1, i32 %val2,174                  i64 %val3, i64 %val4) {175  %cmp = icmp eq i32 %val1, %val2176  %sel = select i1 %cmp, i64 %val3, i64 %val4177  ret i64 %sel178 179; CHECK: fun15180; CHECK: cost of 1 for instruction:   %cmp = icmp eq i32 %val1, %val2181; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i64 %val3, i64 %val4182}183 184define float @fun16(i32 %val1, i32 %val2,185                    float %val3, float %val4) {186  %cmp = icmp eq i32 %val1, %val2187  %sel = select i1 %cmp, float %val3, float %val4188  ret float %sel189 190; CHECK: fun16191; CHECK: cost of 1 for instruction:   %cmp = icmp eq i32 %val1, %val2192; CHECK: cost of 4 for instruction:   %sel = select i1 %cmp, float %val3, float %val4193}194 195define double @fun17(i32 %val1, i32 %val2,196                     double %val3, double %val4) {197  %cmp = icmp eq i32 %val1, %val2198  %sel = select i1 %cmp, double %val3, double %val4199  ret double %sel200 201; CHECK: fun17202; CHECK: cost of 1 for instruction:   %cmp = icmp eq i32 %val1, %val2203; CHECK: cost of 4 for instruction:   %sel = select i1 %cmp, double %val3, double %val4204}205 206define i8 @fun18(i64 %val1, i64 %val2,207                 i8 %val3, i8 %val4) {208  %cmp = icmp eq i64 %val1, %val2209  %sel = select i1 %cmp, i8 %val3, i8 %val4210  ret i8 %sel211 212; CHECK: fun18213; CHECK: cost of 1 for instruction:   %cmp = icmp eq i64 %val1, %val2214; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i8 %val3, i8 %val4215}216 217define i16 @fun19(i64 %val1, i64 %val2,218                  i16 %val3, i16 %val4) {219  %cmp = icmp eq i64 %val1, %val2220  %sel = select i1 %cmp, i16 %val3, i16 %val4221  ret i16 %sel222 223; CHECK: fun19224; CHECK: cost of 1 for instruction:   %cmp = icmp eq i64 %val1, %val2225; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i16 %val3, i16 %val4226}227 228define i32 @fun20(i64 %val1, i64 %val2,229                  i32 %val3, i32 %val4) {230  %cmp = icmp eq i64 %val1, %val2231  %sel = select i1 %cmp, i32 %val3, i32 %val4232  ret i32 %sel233 234; CHECK: fun20235; CHECK: cost of 1 for instruction:   %cmp = icmp eq i64 %val1, %val2236; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i32 %val3, i32 %val4237}238 239define i64 @fun21(i64 %val1, i64 %val2,240                  i64 %val3, i64 %val4) {241  %cmp = icmp eq i64 %val1, %val2242  %sel = select i1 %cmp, i64 %val3, i64 %val4243  ret i64 %sel244 245; CHECK: fun21246; CHECK: cost of 1 for instruction:   %cmp = icmp eq i64 %val1, %val2247; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i64 %val3, i64 %val4248}249 250define float @fun22(i64 %val1, i64 %val2,251                    float %val3, float %val4) {252  %cmp = icmp eq i64 %val1, %val2253  %sel = select i1 %cmp, float %val3, float %val4254  ret float %sel255 256; CHECK: fun22257; CHECK: cost of 1 for instruction:   %cmp = icmp eq i64 %val1, %val2258; CHECK: cost of 4 for instruction:   %sel = select i1 %cmp, float %val3, float %val4259}260 261define double @fun23(i64 %val1, i64 %val2,262                     double %val3, double %val4) {263  %cmp = icmp eq i64 %val1, %val2264  %sel = select i1 %cmp, double %val3, double %val4265  ret double %sel266 267; CHECK: fun23268; CHECK: cost of 1 for instruction:   %cmp = icmp eq i64 %val1, %val2269; CHECK: cost of 4 for instruction:   %sel = select i1 %cmp, double %val3, double %val4270}271 272define <2 x i8> @fun24(<2 x i8> %val1, <2 x i8> %val2,273                       <2 x i8> %val3, <2 x i8> %val4) {274  %cmp = icmp eq <2 x i8> %val1, %val2275  %sel = select <2 x i1> %cmp, <2 x i8> %val3, <2 x i8> %val4276  ret <2 x i8> %sel277 278; CHECK: fun24279; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i8> %val1, %val2280; CHECK: cost of 1 for instruction:   %sel = select <2 x i1> %cmp, <2 x i8> %val3, <2 x i8> %val4281}282 283define <2 x i16> @fun25(<2 x i8> %val1, <2 x i8> %val2,284                        <2 x i16> %val3, <2 x i16> %val4) {285  %cmp = icmp eq <2 x i8> %val1, %val2286  %sel = select <2 x i1> %cmp, <2 x i16> %val3, <2 x i16> %val4287  ret <2 x i16> %sel288 289; CHECK: fun25290; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i8> %val1, %val2291; CHECK: cost of 2 for instruction:   %sel = select <2 x i1> %cmp, <2 x i16> %val3, <2 x i16> %val4292}293 294define <2 x i32> @fun26(<2 x i8> %val1, <2 x i8> %val2,295                        <2 x i32> %val3, <2 x i32> %val4) {296  %cmp = icmp eq <2 x i8> %val1, %val2297  %sel = select <2 x i1> %cmp, <2 x i32> %val3, <2 x i32> %val4298  ret <2 x i32> %sel299 300; CHECK: fun26301; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i8> %val1, %val2302; CHECK: cost of 3 for instruction:   %sel = select <2 x i1> %cmp, <2 x i32> %val3, <2 x i32> %val4303}304 305define <2 x i64> @fun27(<2 x i8> %val1, <2 x i8> %val2,306                        <2 x i64> %val3, <2 x i64> %val4) {307  %cmp = icmp eq <2 x i8> %val1, %val2308  %sel = select <2 x i1> %cmp, <2 x i64> %val3, <2 x i64> %val4309  ret <2 x i64> %sel310 311; CHECK: fun27312; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i8> %val1, %val2313; CHECK: cost of 4 for instruction:   %sel = select <2 x i1> %cmp, <2 x i64> %val3, <2 x i64> %val4314}315 316define <2 x float> @fun28(<2 x i8> %val1, <2 x i8> %val2,317                          <2 x float> %val3, <2 x float> %val4) {318  %cmp = icmp eq <2 x i8> %val1, %val2319  %sel = select <2 x i1> %cmp, <2 x float> %val3, <2 x float> %val4320  ret <2 x float> %sel321 322; CHECK: fun28323; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i8> %val1, %val2324; CHECK: cost of 3 for instruction:   %sel = select <2 x i1> %cmp, <2 x float> %val3, <2 x float> %val4325}326 327define <2 x double> @fun29(<2 x i8> %val1, <2 x i8> %val2,328                           <2 x double> %val3, <2 x double> %val4) {329  %cmp = icmp eq <2 x i8> %val1, %val2330  %sel = select <2 x i1> %cmp, <2 x double> %val3, <2 x double> %val4331  ret <2 x double> %sel332 333; CHECK: fun29334; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i8> %val1, %val2335; CHECK: cost of 4 for instruction:   %sel = select <2 x i1> %cmp, <2 x double> %val3, <2 x double> %val4336}337 338define <2 x i8> @fun30(<2 x i16> %val1, <2 x i16> %val2,339                       <2 x i8> %val3, <2 x i8> %val4) {340  %cmp = icmp eq <2 x i16> %val1, %val2341  %sel = select <2 x i1> %cmp, <2 x i8> %val3, <2 x i8> %val4342  ret <2 x i8> %sel343 344; CHECK: fun30345; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i16> %val1, %val2346; CHECK: cost of 2 for instruction:   %sel = select <2 x i1> %cmp, <2 x i8> %val3, <2 x i8> %val4347}348 349define <2 x i16> @fun31(<2 x i16> %val1, <2 x i16> %val2,350                        <2 x i16> %val3, <2 x i16> %val4) {351  %cmp = icmp eq <2 x i16> %val1, %val2352  %sel = select <2 x i1> %cmp, <2 x i16> %val3, <2 x i16> %val4353  ret <2 x i16> %sel354 355; CHECK: fun31356; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i16> %val1, %val2357; CHECK: cost of 1 for instruction:   %sel = select <2 x i1> %cmp, <2 x i16> %val3, <2 x i16> %val4358}359 360define <2 x i32> @fun32(<2 x i16> %val1, <2 x i16> %val2,361                        <2 x i32> %val3, <2 x i32> %val4) {362  %cmp = icmp eq <2 x i16> %val1, %val2363  %sel = select <2 x i1> %cmp, <2 x i32> %val3, <2 x i32> %val4364  ret <2 x i32> %sel365 366; CHECK: fun32367; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i16> %val1, %val2368; CHECK: cost of 2 for instruction:   %sel = select <2 x i1> %cmp, <2 x i32> %val3, <2 x i32> %val4369}370 371define <2 x i64> @fun33(<2 x i16> %val1, <2 x i16> %val2,372                        <2 x i64> %val3, <2 x i64> %val4) {373  %cmp = icmp eq <2 x i16> %val1, %val2374  %sel = select <2 x i1> %cmp, <2 x i64> %val3, <2 x i64> %val4375  ret <2 x i64> %sel376 377; CHECK: fun33378; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i16> %val1, %val2379; CHECK: cost of 3 for instruction:   %sel = select <2 x i1> %cmp, <2 x i64> %val3, <2 x i64> %val4380}381 382define <2 x float> @fun34(<2 x i16> %val1, <2 x i16> %val2,383                          <2 x float> %val3, <2 x float> %val4) {384  %cmp = icmp eq <2 x i16> %val1, %val2385  %sel = select <2 x i1> %cmp, <2 x float> %val3, <2 x float> %val4386  ret <2 x float> %sel387 388; CHECK: fun34389; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i16> %val1, %val2390; CHECK: cost of 2 for instruction:   %sel = select <2 x i1> %cmp, <2 x float> %val3, <2 x float> %val4391}392 393define <2 x double> @fun35(<2 x i16> %val1, <2 x i16> %val2,394                           <2 x double> %val3, <2 x double> %val4) {395  %cmp = icmp eq <2 x i16> %val1, %val2396  %sel = select <2 x i1> %cmp, <2 x double> %val3, <2 x double> %val4397  ret <2 x double> %sel398 399; CHECK: fun35400; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i16> %val1, %val2401; CHECK: cost of 3 for instruction:   %sel = select <2 x i1> %cmp, <2 x double> %val3, <2 x double> %val4402}403 404define <2 x i8> @fun36(<2 x i32> %val1, <2 x i32> %val2,405                       <2 x i8> %val3, <2 x i8> %val4) {406  %cmp = icmp eq <2 x i32> %val1, %val2407  %sel = select <2 x i1> %cmp, <2 x i8> %val3, <2 x i8> %val4408  ret <2 x i8> %sel409 410; CHECK: fun36411; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i32> %val1, %val2412; CHECK: cost of 2 for instruction:   %sel = select <2 x i1> %cmp, <2 x i8> %val3, <2 x i8> %val4413}414 415define <2 x i16> @fun37(<2 x i32> %val1, <2 x i32> %val2,416                        <2 x i16> %val3, <2 x i16> %val4) {417  %cmp = icmp eq <2 x i32> %val1, %val2418  %sel = select <2 x i1> %cmp, <2 x i16> %val3, <2 x i16> %val4419  ret <2 x i16> %sel420 421; CHECK: fun37422; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i32> %val1, %val2423; CHECK: cost of 2 for instruction:   %sel = select <2 x i1> %cmp, <2 x i16> %val3, <2 x i16> %val4424}425 426define <2 x i32> @fun38(<2 x i32> %val1, <2 x i32> %val2,427                        <2 x i32> %val3, <2 x i32> %val4) {428  %cmp = icmp eq <2 x i32> %val1, %val2429  %sel = select <2 x i1> %cmp, <2 x i32> %val3, <2 x i32> %val4430  ret <2 x i32> %sel431 432; CHECK: fun38433; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i32> %val1, %val2434; CHECK: cost of 1 for instruction:   %sel = select <2 x i1> %cmp, <2 x i32> %val3, <2 x i32> %val4435}436 437define <2 x i64> @fun39(<2 x i32> %val1, <2 x i32> %val2,438                        <2 x i64> %val3, <2 x i64> %val4) {439  %cmp = icmp eq <2 x i32> %val1, %val2440  %sel = select <2 x i1> %cmp, <2 x i64> %val3, <2 x i64> %val4441  ret <2 x i64> %sel442 443; CHECK: fun39444; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i32> %val1, %val2445; CHECK: cost of 2 for instruction:   %sel = select <2 x i1> %cmp, <2 x i64> %val3, <2 x i64> %val4446}447 448define <2 x float> @fun40(<2 x i32> %val1, <2 x i32> %val2,449                          <2 x float> %val3, <2 x float> %val4) {450  %cmp = icmp eq <2 x i32> %val1, %val2451  %sel = select <2 x i1> %cmp, <2 x float> %val3, <2 x float> %val4452  ret <2 x float> %sel453 454; CHECK: fun40455; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i32> %val1, %val2456; CHECK: cost of 1 for instruction:   %sel = select <2 x i1> %cmp, <2 x float> %val3, <2 x float> %val4457}458 459define <2 x double> @fun41(<2 x i32> %val1, <2 x i32> %val2,460                           <2 x double> %val3, <2 x double> %val4) {461  %cmp = icmp eq <2 x i32> %val1, %val2462  %sel = select <2 x i1> %cmp, <2 x double> %val3, <2 x double> %val4463  ret <2 x double> %sel464 465; CHECK: fun41466; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i32> %val1, %val2467; CHECK: cost of 2 for instruction:   %sel = select <2 x i1> %cmp, <2 x double> %val3, <2 x double> %val4468}469 470define <2 x i8> @fun42(<2 x i64> %val1, <2 x i64> %val2,471                       <2 x i8> %val3, <2 x i8> %val4) {472  %cmp = icmp eq <2 x i64> %val1, %val2473  %sel = select <2 x i1> %cmp, <2 x i8> %val3, <2 x i8> %val4474  ret <2 x i8> %sel475 476; CHECK: fun42477; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i64> %val1, %val2478; CHECK: cost of 2 for instruction:   %sel = select <2 x i1> %cmp, <2 x i8> %val3, <2 x i8> %val4479}480 481define <2 x i16> @fun43(<2 x i64> %val1, <2 x i64> %val2,482                        <2 x i16> %val3, <2 x i16> %val4) {483  %cmp = icmp eq <2 x i64> %val1, %val2484  %sel = select <2 x i1> %cmp, <2 x i16> %val3, <2 x i16> %val4485  ret <2 x i16> %sel486 487; CHECK: fun43488; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i64> %val1, %val2489; CHECK: cost of 2 for instruction:   %sel = select <2 x i1> %cmp, <2 x i16> %val3, <2 x i16> %val4490}491 492define <2 x i32> @fun44(<2 x i64> %val1, <2 x i64> %val2,493                        <2 x i32> %val3, <2 x i32> %val4) {494  %cmp = icmp eq <2 x i64> %val1, %val2495  %sel = select <2 x i1> %cmp, <2 x i32> %val3, <2 x i32> %val4496  ret <2 x i32> %sel497 498; CHECK: fun44499; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i64> %val1, %val2500; CHECK: cost of 2 for instruction:   %sel = select <2 x i1> %cmp, <2 x i32> %val3, <2 x i32> %val4501}502 503define <2 x i64> @fun45(<2 x i64> %val1, <2 x i64> %val2,504                        <2 x i64> %val3, <2 x i64> %val4) {505  %cmp = icmp eq <2 x i64> %val1, %val2506  %sel = select <2 x i1> %cmp, <2 x i64> %val3, <2 x i64> %val4507  ret <2 x i64> %sel508 509; CHECK: fun45510; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i64> %val1, %val2511; CHECK: cost of 1 for instruction:   %sel = select <2 x i1> %cmp, <2 x i64> %val3, <2 x i64> %val4512}513 514define <2 x float> @fun46(<2 x i64> %val1, <2 x i64> %val2,515                          <2 x float> %val3, <2 x float> %val4) {516  %cmp = icmp eq <2 x i64> %val1, %val2517  %sel = select <2 x i1> %cmp, <2 x float> %val3, <2 x float> %val4518  ret <2 x float> %sel519 520; CHECK: fun46521; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i64> %val1, %val2522; CHECK: cost of 2 for instruction:   %sel = select <2 x i1> %cmp, <2 x float> %val3, <2 x float> %val4523}524 525define <2 x double> @fun47(<2 x i64> %val1, <2 x i64> %val2,526                           <2 x double> %val3, <2 x double> %val4) {527  %cmp = icmp eq <2 x i64> %val1, %val2528  %sel = select <2 x i1> %cmp, <2 x double> %val3, <2 x double> %val4529  ret <2 x double> %sel530 531; CHECK: fun47532; CHECK: cost of 1 for instruction:   %cmp = icmp eq <2 x i64> %val1, %val2533; CHECK: cost of 1 for instruction:   %sel = select <2 x i1> %cmp, <2 x double> %val3, <2 x double> %val4534}535 536define <4 x i8> @fun48(<4 x i8> %val1, <4 x i8> %val2,537                       <4 x i8> %val3, <4 x i8> %val4) {538  %cmp = icmp eq <4 x i8> %val1, %val2539  %sel = select <4 x i1> %cmp, <4 x i8> %val3, <4 x i8> %val4540  ret <4 x i8> %sel541 542; CHECK: fun48543; CHECK: cost of 1 for instruction:   %cmp = icmp eq <4 x i8> %val1, %val2544; CHECK: cost of 1 for instruction:   %sel = select <4 x i1> %cmp, <4 x i8> %val3, <4 x i8> %val4545}546 547define <4 x i16> @fun49(<4 x i8> %val1, <4 x i8> %val2,548                        <4 x i16> %val3, <4 x i16> %val4) {549  %cmp = icmp eq <4 x i8> %val1, %val2550  %sel = select <4 x i1> %cmp, <4 x i16> %val3, <4 x i16> %val4551  ret <4 x i16> %sel552 553; CHECK: fun49554; CHECK: cost of 1 for instruction:   %cmp = icmp eq <4 x i8> %val1, %val2555; CHECK: cost of 2 for instruction:   %sel = select <4 x i1> %cmp, <4 x i16> %val3, <4 x i16> %val4556}557 558define <4 x i32> @fun50(<4 x i8> %val1, <4 x i8> %val2,559                        <4 x i32> %val3, <4 x i32> %val4) {560  %cmp = icmp eq <4 x i8> %val1, %val2561  %sel = select <4 x i1> %cmp, <4 x i32> %val3, <4 x i32> %val4562  ret <4 x i32> %sel563 564; CHECK: fun50565; CHECK: cost of 1 for instruction:   %cmp = icmp eq <4 x i8> %val1, %val2566; CHECK: cost of 3 for instruction:   %sel = select <4 x i1> %cmp, <4 x i32> %val3, <4 x i32> %val4567}568 569define <4 x i64> @fun51(<4 x i8> %val1, <4 x i8> %val2,570                        <4 x i64> %val3, <4 x i64> %val4) {571  %cmp = icmp eq <4 x i8> %val1, %val2572  %sel = select <4 x i1> %cmp, <4 x i64> %val3, <4 x i64> %val4573  ret <4 x i64> %sel574 575; CHECK: fun51576; CHECK: cost of 1 for instruction:   %cmp = icmp eq <4 x i8> %val1, %val2577; CHECK: cost of 9 for instruction:   %sel = select <4 x i1> %cmp, <4 x i64> %val3, <4 x i64> %val4578}579 580define <4 x float> @fun52(<4 x i8> %val1, <4 x i8> %val2,581                          <4 x float> %val3, <4 x float> %val4) {582  %cmp = icmp eq <4 x i8> %val1, %val2583  %sel = select <4 x i1> %cmp, <4 x float> %val3, <4 x float> %val4584  ret <4 x float> %sel585 586; CHECK: fun52587; CHECK: cost of 1 for instruction:   %cmp = icmp eq <4 x i8> %val1, %val2588; CHECK: cost of 3 for instruction:   %sel = select <4 x i1> %cmp, <4 x float> %val3, <4 x float> %val4589}590 591define <4 x double> @fun53(<4 x i8> %val1, <4 x i8> %val2,592                           <4 x double> %val3, <4 x double> %val4) {593  %cmp = icmp eq <4 x i8> %val1, %val2594  %sel = select <4 x i1> %cmp, <4 x double> %val3, <4 x double> %val4595  ret <4 x double> %sel596 597; CHECK: fun53598; CHECK: cost of 1 for instruction:   %cmp = icmp eq <4 x i8> %val1, %val2599; CHECK: cost of 9 for instruction:   %sel = select <4 x i1> %cmp, <4 x double> %val3, <4 x double> %val4600}601 602define <4 x i8> @fun54(<4 x i16> %val1, <4 x i16> %val2,603                       <4 x i8> %val3, <4 x i8> %val4) {604  %cmp = icmp eq <4 x i16> %val1, %val2605  %sel = select <4 x i1> %cmp, <4 x i8> %val3, <4 x i8> %val4606  ret <4 x i8> %sel607 608; CHECK: fun54609; CHECK: cost of 1 for instruction:   %cmp = icmp eq <4 x i16> %val1, %val2610; CHECK: cost of 2 for instruction:   %sel = select <4 x i1> %cmp, <4 x i8> %val3, <4 x i8> %val4611}612 613define <4 x i16> @fun55(<4 x i16> %val1, <4 x i16> %val2,614                        <4 x i16> %val3, <4 x i16> %val4) {615  %cmp = icmp eq <4 x i16> %val1, %val2616  %sel = select <4 x i1> %cmp, <4 x i16> %val3, <4 x i16> %val4617  ret <4 x i16> %sel618 619; CHECK: fun55620; CHECK: cost of 1 for instruction:   %cmp = icmp eq <4 x i16> %val1, %val2621; CHECK: cost of 1 for instruction:   %sel = select <4 x i1> %cmp, <4 x i16> %val3, <4 x i16> %val4622}623 624define <4 x i32> @fun56(<4 x i16> %val1, <4 x i16> %val2,625                        <4 x i32> %val3, <4 x i32> %val4) {626  %cmp = icmp eq <4 x i16> %val1, %val2627  %sel = select <4 x i1> %cmp, <4 x i32> %val3, <4 x i32> %val4628  ret <4 x i32> %sel629 630; CHECK: fun56631; CHECK: cost of 1 for instruction:   %cmp = icmp eq <4 x i16> %val1, %val2632; CHECK: cost of 2 for instruction:   %sel = select <4 x i1> %cmp, <4 x i32> %val3, <4 x i32> %val4633}634 635define <4 x i64> @fun57(<4 x i16> %val1, <4 x i16> %val2,636                        <4 x i64> %val3, <4 x i64> %val4) {637  %cmp = icmp eq <4 x i16> %val1, %val2638  %sel = select <4 x i1> %cmp, <4 x i64> %val3, <4 x i64> %val4639  ret <4 x i64> %sel640 641; CHECK: fun57642; CHECK: cost of 1 for instruction:   %cmp = icmp eq <4 x i16> %val1, %val2643; CHECK: cost of 7 for instruction:   %sel = select <4 x i1> %cmp, <4 x i64> %val3, <4 x i64> %val4644}645 646define <4 x float> @fun58(<4 x i16> %val1, <4 x i16> %val2,647                          <4 x float> %val3, <4 x float> %val4) {648  %cmp = icmp eq <4 x i16> %val1, %val2649  %sel = select <4 x i1> %cmp, <4 x float> %val3, <4 x float> %val4650  ret <4 x float> %sel651 652; CHECK: fun58653; CHECK: cost of 1 for instruction:   %cmp = icmp eq <4 x i16> %val1, %val2654; CHECK: cost of 2 for instruction:   %sel = select <4 x i1> %cmp, <4 x float> %val3, <4 x float> %val4655}656 657define <4 x double> @fun59(<4 x i16> %val1, <4 x i16> %val2,658                           <4 x double> %val3, <4 x double> %val4) {659  %cmp = icmp eq <4 x i16> %val1, %val2660  %sel = select <4 x i1> %cmp, <4 x double> %val3, <4 x double> %val4661  ret <4 x double> %sel662 663; CHECK: fun59664; CHECK: cost of 1 for instruction:   %cmp = icmp eq <4 x i16> %val1, %val2665; CHECK: cost of 7 for instruction:   %sel = select <4 x i1> %cmp, <4 x double> %val3, <4 x double> %val4666}667 668define <4 x i8> @fun60(<4 x i32> %val1, <4 x i32> %val2,669                       <4 x i8> %val3, <4 x i8> %val4) {670  %cmp = icmp eq <4 x i32> %val1, %val2671  %sel = select <4 x i1> %cmp, <4 x i8> %val3, <4 x i8> %val4672  ret <4 x i8> %sel673 674; CHECK: fun60675; CHECK: cost of 1 for instruction:   %cmp = icmp eq <4 x i32> %val1, %val2676; CHECK: cost of 2 for instruction:   %sel = select <4 x i1> %cmp, <4 x i8> %val3, <4 x i8> %val4677}678 679define <4 x i16> @fun61(<4 x i32> %val1, <4 x i32> %val2,680                        <4 x i16> %val3, <4 x i16> %val4) {681  %cmp = icmp eq <4 x i32> %val1, %val2682  %sel = select <4 x i1> %cmp, <4 x i16> %val3, <4 x i16> %val4683  ret <4 x i16> %sel684 685; CHECK: fun61686; CHECK: cost of 1 for instruction:   %cmp = icmp eq <4 x i32> %val1, %val2687; CHECK: cost of 2 for instruction:   %sel = select <4 x i1> %cmp, <4 x i16> %val3, <4 x i16> %val4688}689 690define <4 x i32> @fun62(<4 x i32> %val1, <4 x i32> %val2,691                        <4 x i32> %val3, <4 x i32> %val4) {692  %cmp = icmp eq <4 x i32> %val1, %val2693  %sel = select <4 x i1> %cmp, <4 x i32> %val3, <4 x i32> %val4694  ret <4 x i32> %sel695 696; CHECK: fun62697; CHECK: cost of 1 for instruction:   %cmp = icmp eq <4 x i32> %val1, %val2698; CHECK: cost of 1 for instruction:   %sel = select <4 x i1> %cmp, <4 x i32> %val3, <4 x i32> %val4699}700 701define <4 x i64> @fun63(<4 x i32> %val1, <4 x i32> %val2,702                        <4 x i64> %val3, <4 x i64> %val4) {703  %cmp = icmp eq <4 x i32> %val1, %val2704  %sel = select <4 x i1> %cmp, <4 x i64> %val3, <4 x i64> %val4705  ret <4 x i64> %sel706 707; CHECK: fun63708; CHECK: cost of 1 for instruction:   %cmp = icmp eq <4 x i32> %val1, %val2709; CHECK: cost of 5 for instruction:   %sel = select <4 x i1> %cmp, <4 x i64> %val3, <4 x i64> %val4710}711 712define <4 x float> @fun64(<4 x i32> %val1, <4 x i32> %val2,713                          <4 x float> %val3, <4 x float> %val4) {714  %cmp = icmp eq <4 x i32> %val1, %val2715  %sel = select <4 x i1> %cmp, <4 x float> %val3, <4 x float> %val4716  ret <4 x float> %sel717 718; CHECK: fun64719; CHECK: cost of 1 for instruction:   %cmp = icmp eq <4 x i32> %val1, %val2720; CHECK: cost of 1 for instruction:   %sel = select <4 x i1> %cmp, <4 x float> %val3, <4 x float> %val4721}722 723define <4 x double> @fun65(<4 x i32> %val1, <4 x i32> %val2,724                           <4 x double> %val3, <4 x double> %val4) {725  %cmp = icmp eq <4 x i32> %val1, %val2726  %sel = select <4 x i1> %cmp, <4 x double> %val3, <4 x double> %val4727  ret <4 x double> %sel728 729; CHECK: fun65730; CHECK: cost of 1 for instruction:   %cmp = icmp eq <4 x i32> %val1, %val2731; CHECK: cost of 5 for instruction:   %sel = select <4 x i1> %cmp, <4 x double> %val3, <4 x double> %val4732}733 734define <4 x i8> @fun66(<4 x i64> %val1, <4 x i64> %val2,735                       <4 x i8> %val3, <4 x i8> %val4) {736  %cmp = icmp eq <4 x i64> %val1, %val2737  %sel = select <4 x i1> %cmp, <4 x i8> %val3, <4 x i8> %val4738  ret <4 x i8> %sel739 740; CHECK: fun66741; CHECK: cost of 2 for instruction:   %cmp = icmp eq <4 x i64> %val1, %val2742; CHECK: cost of 2 for instruction:   %sel = select <4 x i1> %cmp, <4 x i8> %val3, <4 x i8> %val4743}744 745define <4 x i16> @fun67(<4 x i64> %val1, <4 x i64> %val2,746                        <4 x i16> %val3, <4 x i16> %val4) {747  %cmp = icmp eq <4 x i64> %val1, %val2748  %sel = select <4 x i1> %cmp, <4 x i16> %val3, <4 x i16> %val4749  ret <4 x i16> %sel750 751; CHECK: fun67752; CHECK: cost of 2 for instruction:   %cmp = icmp eq <4 x i64> %val1, %val2753; CHECK: cost of 2 for instruction:   %sel = select <4 x i1> %cmp, <4 x i16> %val3, <4 x i16> %val4754}755 756define <4 x i32> @fun68(<4 x i64> %val1, <4 x i64> %val2,757                        <4 x i32> %val3, <4 x i32> %val4) {758  %cmp = icmp eq <4 x i64> %val1, %val2759  %sel = select <4 x i1> %cmp, <4 x i32> %val3, <4 x i32> %val4760  ret <4 x i32> %sel761 762; CHECK: fun68763; CHECK: cost of 2 for instruction:   %cmp = icmp eq <4 x i64> %val1, %val2764; CHECK: cost of 2 for instruction:   %sel = select <4 x i1> %cmp, <4 x i32> %val3, <4 x i32> %val4765}766 767define <4 x i64> @fun69(<4 x i64> %val1, <4 x i64> %val2,768                        <4 x i64> %val3, <4 x i64> %val4) {769  %cmp = icmp eq <4 x i64> %val1, %val2770  %sel = select <4 x i1> %cmp, <4 x i64> %val3, <4 x i64> %val4771  ret <4 x i64> %sel772 773; CHECK: fun69774; CHECK: cost of 2 for instruction:   %cmp = icmp eq <4 x i64> %val1, %val2775; CHECK: cost of 2 for instruction:   %sel = select <4 x i1> %cmp, <4 x i64> %val3, <4 x i64> %val4776}777 778define <4 x float> @fun70(<4 x i64> %val1, <4 x i64> %val2,779                          <4 x float> %val3, <4 x float> %val4) {780  %cmp = icmp eq <4 x i64> %val1, %val2781  %sel = select <4 x i1> %cmp, <4 x float> %val3, <4 x float> %val4782  ret <4 x float> %sel783 784; CHECK: fun70785; CHECK: cost of 2 for instruction:   %cmp = icmp eq <4 x i64> %val1, %val2786; CHECK: cost of 2 for instruction:   %sel = select <4 x i1> %cmp, <4 x float> %val3, <4 x float> %val4787}788 789define <4 x double> @fun71(<4 x i64> %val1, <4 x i64> %val2,790                           <4 x double> %val3, <4 x double> %val4) {791  %cmp = icmp eq <4 x i64> %val1, %val2792  %sel = select <4 x i1> %cmp, <4 x double> %val3, <4 x double> %val4793  ret <4 x double> %sel794 795; CHECK: fun71796; CHECK: cost of 2 for instruction:   %cmp = icmp eq <4 x i64> %val1, %val2797; CHECK: cost of 2 for instruction:   %sel = select <4 x i1> %cmp, <4 x double> %val3, <4 x double> %val4798}799 800define <8 x i8> @fun72(<8 x i8> %val1, <8 x i8> %val2,801                       <8 x i8> %val3, <8 x i8> %val4) {802  %cmp = icmp eq <8 x i8> %val1, %val2803  %sel = select <8 x i1> %cmp, <8 x i8> %val3, <8 x i8> %val4804  ret <8 x i8> %sel805 806; CHECK: fun72807; CHECK: cost of 1 for instruction:   %cmp = icmp eq <8 x i8> %val1, %val2808; CHECK: cost of 1 for instruction:   %sel = select <8 x i1> %cmp, <8 x i8> %val3, <8 x i8> %val4809}810 811define <8 x i16> @fun73(<8 x i8> %val1, <8 x i8> %val2,812                        <8 x i16> %val3, <8 x i16> %val4) {813  %cmp = icmp eq <8 x i8> %val1, %val2814  %sel = select <8 x i1> %cmp, <8 x i16> %val3, <8 x i16> %val4815  ret <8 x i16> %sel816 817; CHECK: fun73818; CHECK: cost of 1 for instruction:   %cmp = icmp eq <8 x i8> %val1, %val2819; CHECK: cost of 2 for instruction:   %sel = select <8 x i1> %cmp, <8 x i16> %val3, <8 x i16> %val4820}821 822define <8 x i32> @fun74(<8 x i8> %val1, <8 x i8> %val2,823                        <8 x i32> %val3, <8 x i32> %val4) {824  %cmp = icmp eq <8 x i8> %val1, %val2825  %sel = select <8 x i1> %cmp, <8 x i32> %val3, <8 x i32> %val4826  ret <8 x i32> %sel827 828; CHECK: fun74829; CHECK: cost of 1 for instruction:   %cmp = icmp eq <8 x i8> %val1, %val2830; CHECK: cost of 7 for instruction:   %sel = select <8 x i1> %cmp, <8 x i32> %val3, <8 x i32> %val4831}832 833define <8 x i64> @fun75(<8 x i8> %val1, <8 x i8> %val2,834                        <8 x i64> %val3, <8 x i64> %val4) {835  %cmp = icmp eq <8 x i8> %val1, %val2836  %sel = select <8 x i1> %cmp, <8 x i64> %val3, <8 x i64> %val4837  ret <8 x i64> %sel838 839; CHECK: fun75840; CHECK: cost of 1 for instruction:   %cmp = icmp eq <8 x i8> %val1, %val2841; CHECK: cost of 19 for instruction:   %sel = select <8 x i1> %cmp, <8 x i64> %val3, <8 x i64> %val4842}843 844define <8 x float> @fun76(<8 x i8> %val1, <8 x i8> %val2,845                          <8 x float> %val3, <8 x float> %val4) {846  %cmp = icmp eq <8 x i8> %val1, %val2847  %sel = select <8 x i1> %cmp, <8 x float> %val3, <8 x float> %val4848  ret <8 x float> %sel849 850; CHECK: fun76851; CHECK: cost of 1 for instruction:   %cmp = icmp eq <8 x i8> %val1, %val2852; CHECK: cost of 7 for instruction:   %sel = select <8 x i1> %cmp, <8 x float> %val3, <8 x float> %val4853}854 855define <8 x double> @fun77(<8 x i8> %val1, <8 x i8> %val2,856                           <8 x double> %val3, <8 x double> %val4) {857  %cmp = icmp eq <8 x i8> %val1, %val2858  %sel = select <8 x i1> %cmp, <8 x double> %val3, <8 x double> %val4859  ret <8 x double> %sel860 861; CHECK: fun77862; CHECK: cost of 1 for instruction:   %cmp = icmp eq <8 x i8> %val1, %val2863; CHECK: cost of 19 for instruction:   %sel = select <8 x i1> %cmp, <8 x double> %val3, <8 x double> %val4864}865 866define <8 x i8> @fun78(<8 x i16> %val1, <8 x i16> %val2,867                       <8 x i8> %val3, <8 x i8> %val4) {868  %cmp = icmp eq <8 x i16> %val1, %val2869  %sel = select <8 x i1> %cmp, <8 x i8> %val3, <8 x i8> %val4870  ret <8 x i8> %sel871 872; CHECK: fun78873; CHECK: cost of 1 for instruction:   %cmp = icmp eq <8 x i16> %val1, %val2874; CHECK: cost of 2 for instruction:   %sel = select <8 x i1> %cmp, <8 x i8> %val3, <8 x i8> %val4875}876 877define <8 x i16> @fun79(<8 x i16> %val1, <8 x i16> %val2,878                        <8 x i16> %val3, <8 x i16> %val4) {879  %cmp = icmp eq <8 x i16> %val1, %val2880  %sel = select <8 x i1> %cmp, <8 x i16> %val3, <8 x i16> %val4881  ret <8 x i16> %sel882 883; CHECK: fun79884; CHECK: cost of 1 for instruction:   %cmp = icmp eq <8 x i16> %val1, %val2885; CHECK: cost of 1 for instruction:   %sel = select <8 x i1> %cmp, <8 x i16> %val3, <8 x i16> %val4886}887 888define <8 x i32> @fun80(<8 x i16> %val1, <8 x i16> %val2,889                        <8 x i32> %val3, <8 x i32> %val4) {890  %cmp = icmp eq <8 x i16> %val1, %val2891  %sel = select <8 x i1> %cmp, <8 x i32> %val3, <8 x i32> %val4892  ret <8 x i32> %sel893 894; CHECK: fun80895; CHECK: cost of 1 for instruction:   %cmp = icmp eq <8 x i16> %val1, %val2896; CHECK: cost of 5 for instruction:   %sel = select <8 x i1> %cmp, <8 x i32> %val3, <8 x i32> %val4897}898 899define <8 x i64> @fun81(<8 x i16> %val1, <8 x i16> %val2,900                        <8 x i64> %val3, <8 x i64> %val4) {901  %cmp = icmp eq <8 x i16> %val1, %val2902  %sel = select <8 x i1> %cmp, <8 x i64> %val3, <8 x i64> %val4903  ret <8 x i64> %sel904 905; CHECK: fun81906; CHECK: cost of 1 for instruction:   %cmp = icmp eq <8 x i16> %val1, %val2907; CHECK: cost of 15 for instruction:   %sel = select <8 x i1> %cmp, <8 x i64> %val3, <8 x i64> %val4908}909 910define <8 x float> @fun82(<8 x i16> %val1, <8 x i16> %val2,911                          <8 x float> %val3, <8 x float> %val4) {912  %cmp = icmp eq <8 x i16> %val1, %val2913  %sel = select <8 x i1> %cmp, <8 x float> %val3, <8 x float> %val4914  ret <8 x float> %sel915 916; CHECK: fun82917; CHECK: cost of 1 for instruction:   %cmp = icmp eq <8 x i16> %val1, %val2918; CHECK: cost of 5 for instruction:   %sel = select <8 x i1> %cmp, <8 x float> %val3, <8 x float> %val4919}920 921define <8 x double> @fun83(<8 x i16> %val1, <8 x i16> %val2,922                           <8 x double> %val3, <8 x double> %val4) {923  %cmp = icmp eq <8 x i16> %val1, %val2924  %sel = select <8 x i1> %cmp, <8 x double> %val3, <8 x double> %val4925  ret <8 x double> %sel926 927; CHECK: fun83928; CHECK: cost of 1 for instruction:   %cmp = icmp eq <8 x i16> %val1, %val2929; CHECK: cost of 15 for instruction:   %sel = select <8 x i1> %cmp, <8 x double> %val3, <8 x double> %val4930}931 932define <8 x i8> @fun84(<8 x i32> %val1, <8 x i32> %val2,933                       <8 x i8> %val3, <8 x i8> %val4) {934  %cmp = icmp eq <8 x i32> %val1, %val2935  %sel = select <8 x i1> %cmp, <8 x i8> %val3, <8 x i8> %val4936  ret <8 x i8> %sel937 938; CHECK: fun84939; CHECK: cost of 2 for instruction:   %cmp = icmp eq <8 x i32> %val1, %val2940; CHECK: cost of 2 for instruction:   %sel = select <8 x i1> %cmp, <8 x i8> %val3, <8 x i8> %val4941}942 943define <8 x i16> @fun85(<8 x i32> %val1, <8 x i32> %val2,944                        <8 x i16> %val3, <8 x i16> %val4) {945  %cmp = icmp eq <8 x i32> %val1, %val2946  %sel = select <8 x i1> %cmp, <8 x i16> %val3, <8 x i16> %val4947  ret <8 x i16> %sel948 949; CHECK: fun85950; CHECK: cost of 2 for instruction:   %cmp = icmp eq <8 x i32> %val1, %val2951; CHECK: cost of 2 for instruction:   %sel = select <8 x i1> %cmp, <8 x i16> %val3, <8 x i16> %val4952}953 954define <8 x i32> @fun86(<8 x i32> %val1, <8 x i32> %val2,955                        <8 x i32> %val3, <8 x i32> %val4) {956  %cmp = icmp eq <8 x i32> %val1, %val2957  %sel = select <8 x i1> %cmp, <8 x i32> %val3, <8 x i32> %val4958  ret <8 x i32> %sel959 960; CHECK: fun86961; CHECK: cost of 2 for instruction:   %cmp = icmp eq <8 x i32> %val1, %val2962; CHECK: cost of 2 for instruction:   %sel = select <8 x i1> %cmp, <8 x i32> %val3, <8 x i32> %val4963}964 965define <8 x i64> @fun87(<8 x i32> %val1, <8 x i32> %val2,966                        <8 x i64> %val3, <8 x i64> %val4) {967  %cmp = icmp eq <8 x i32> %val1, %val2968  %sel = select <8 x i1> %cmp, <8 x i64> %val3, <8 x i64> %val4969  ret <8 x i64> %sel970 971; CHECK: fun87972; CHECK: cost of 2 for instruction:   %cmp = icmp eq <8 x i32> %val1, %val2973; CHECK: cost of 11 for instruction:   %sel = select <8 x i1> %cmp, <8 x i64> %val3, <8 x i64> %val4974}975 976define <8 x float> @fun88(<8 x i32> %val1, <8 x i32> %val2,977                          <8 x float> %val3, <8 x float> %val4) {978  %cmp = icmp eq <8 x i32> %val1, %val2979  %sel = select <8 x i1> %cmp, <8 x float> %val3, <8 x float> %val4980  ret <8 x float> %sel981 982; CHECK: fun88983; CHECK: cost of 2 for instruction:   %cmp = icmp eq <8 x i32> %val1, %val2984; CHECK: cost of 2 for instruction:   %sel = select <8 x i1> %cmp, <8 x float> %val3, <8 x float> %val4985}986 987define <8 x double> @fun89(<8 x i32> %val1, <8 x i32> %val2,988                           <8 x double> %val3, <8 x double> %val4) {989  %cmp = icmp eq <8 x i32> %val1, %val2990  %sel = select <8 x i1> %cmp, <8 x double> %val3, <8 x double> %val4991  ret <8 x double> %sel992 993; CHECK: fun89994; CHECK: cost of 2 for instruction:   %cmp = icmp eq <8 x i32> %val1, %val2995; CHECK: cost of 11 for instruction:   %sel = select <8 x i1> %cmp, <8 x double> %val3, <8 x double> %val4996}997 998define <8 x i8> @fun90(<8 x i64> %val1, <8 x i64> %val2,999                       <8 x i8> %val3, <8 x i8> %val4) {1000  %cmp = icmp eq <8 x i64> %val1, %val21001  %sel = select <8 x i1> %cmp, <8 x i8> %val3, <8 x i8> %val41002  ret <8 x i8> %sel1003 1004; CHECK: fun901005; CHECK: cost of 4 for instruction:   %cmp = icmp eq <8 x i64> %val1, %val21006; CHECK: cost of 4 for instruction:   %sel = select <8 x i1> %cmp, <8 x i8> %val3, <8 x i8> %val41007}1008 1009define <8 x i16> @fun91(<8 x i64> %val1, <8 x i64> %val2,1010                        <8 x i16> %val3, <8 x i16> %val4) {1011  %cmp = icmp eq <8 x i64> %val1, %val21012  %sel = select <8 x i1> %cmp, <8 x i16> %val3, <8 x i16> %val41013  ret <8 x i16> %sel1014 1015; CHECK: fun911016; CHECK: cost of 4 for instruction:   %cmp = icmp eq <8 x i64> %val1, %val21017; CHECK: cost of 4 for instruction:   %sel = select <8 x i1> %cmp, <8 x i16> %val3, <8 x i16> %val41018}1019 1020define <8 x i32> @fun92(<8 x i64> %val1, <8 x i64> %val2,1021                        <8 x i32> %val3, <8 x i32> %val4) {1022  %cmp = icmp eq <8 x i64> %val1, %val21023  %sel = select <8 x i1> %cmp, <8 x i32> %val3, <8 x i32> %val41024  ret <8 x i32> %sel1025 1026; CHECK: fun921027; CHECK: cost of 4 for instruction:   %cmp = icmp eq <8 x i64> %val1, %val21028; CHECK: cost of 4 for instruction:   %sel = select <8 x i1> %cmp, <8 x i32> %val3, <8 x i32> %val41029}1030 1031define <8 x i64> @fun93(<8 x i64> %val1, <8 x i64> %val2,1032                        <8 x i64> %val3, <8 x i64> %val4) {1033  %cmp = icmp eq <8 x i64> %val1, %val21034  %sel = select <8 x i1> %cmp, <8 x i64> %val3, <8 x i64> %val41035  ret <8 x i64> %sel1036 1037; CHECK: fun931038; CHECK: cost of 4 for instruction:   %cmp = icmp eq <8 x i64> %val1, %val21039; CHECK: cost of 4 for instruction:   %sel = select <8 x i1> %cmp, <8 x i64> %val3, <8 x i64> %val41040}1041 1042define <8 x float> @fun94(<8 x i64> %val1, <8 x i64> %val2,1043                          <8 x float> %val3, <8 x float> %val4) {1044  %cmp = icmp eq <8 x i64> %val1, %val21045  %sel = select <8 x i1> %cmp, <8 x float> %val3, <8 x float> %val41046  ret <8 x float> %sel1047 1048; CHECK: fun941049; CHECK: cost of 4 for instruction:   %cmp = icmp eq <8 x i64> %val1, %val21050; CHECK: cost of 4 for instruction:   %sel = select <8 x i1> %cmp, <8 x float> %val3, <8 x float> %val41051}1052 1053define <8 x double> @fun95(<8 x i64> %val1, <8 x i64> %val2,1054                           <8 x double> %val3, <8 x double> %val4) {1055  %cmp = icmp eq <8 x i64> %val1, %val21056  %sel = select <8 x i1> %cmp, <8 x double> %val3, <8 x double> %val41057  ret <8 x double> %sel1058 1059; CHECK: fun951060; CHECK: cost of 4 for instruction:   %cmp = icmp eq <8 x i64> %val1, %val21061; CHECK: cost of 4 for instruction:   %sel = select <8 x i1> %cmp, <8 x double> %val3, <8 x double> %val41062}1063 1064define <16 x i8> @fun96(<16 x i8> %val1, <16 x i8> %val2,1065                        <16 x i8> %val3, <16 x i8> %val4) {1066  %cmp = icmp eq <16 x i8> %val1, %val21067  %sel = select <16 x i1> %cmp, <16 x i8> %val3, <16 x i8> %val41068  ret <16 x i8> %sel1069 1070; CHECK: fun961071; CHECK: cost of 1 for instruction:   %cmp = icmp eq <16 x i8> %val1, %val21072; CHECK: cost of 1 for instruction:   %sel = select <16 x i1> %cmp, <16 x i8> %val3, <16 x i8> %val41073}1074 1075define <16 x i16> @fun97(<16 x i8> %val1, <16 x i8> %val2,1076                         <16 x i16> %val3, <16 x i16> %val4) {1077  %cmp = icmp eq <16 x i8> %val1, %val21078  %sel = select <16 x i1> %cmp, <16 x i16> %val3, <16 x i16> %val41079  ret <16 x i16> %sel1080 1081; CHECK: fun971082; CHECK: cost of 1 for instruction:   %cmp = icmp eq <16 x i8> %val1, %val21083; CHECK: cost of 5 for instruction:   %sel = select <16 x i1> %cmp, <16 x i16> %val3, <16 x i16> %val41084}1085 1086define <16 x i32> @fun98(<16 x i8> %val1, <16 x i8> %val2,1087                         <16 x i32> %val3, <16 x i32> %val4) {1088  %cmp = icmp eq <16 x i8> %val1, %val21089  %sel = select <16 x i1> %cmp, <16 x i32> %val3, <16 x i32> %val41090  ret <16 x i32> %sel1091 1092; CHECK: fun981093; CHECK: cost of 1 for instruction:   %cmp = icmp eq <16 x i8> %val1, %val21094; CHECK: cost of 15 for instruction:   %sel = select <16 x i1> %cmp, <16 x i32> %val3, <16 x i32> %val41095}1096 1097define <16 x i64> @fun99(<16 x i8> %val1, <16 x i8> %val2,1098                         <16 x i64> %val3, <16 x i64> %val4) {1099  %cmp = icmp eq <16 x i8> %val1, %val21100  %sel = select <16 x i1> %cmp, <16 x i64> %val3, <16 x i64> %val41101  ret <16 x i64> %sel1102 1103; CHECK: fun991104; CHECK: cost of 1 for instruction:   %cmp = icmp eq <16 x i8> %val1, %val21105; CHECK: cost of 39 for instruction:   %sel = select <16 x i1> %cmp, <16 x i64> %val3, <16 x i64> %val41106}1107 1108define <16 x float> @fun100(<16 x i8> %val1, <16 x i8> %val2,1109                            <16 x float> %val3, <16 x float> %val4) {1110  %cmp = icmp eq <16 x i8> %val1, %val21111  %sel = select <16 x i1> %cmp, <16 x float> %val3, <16 x float> %val41112  ret <16 x float> %sel1113 1114; CHECK: fun1001115; CHECK: cost of 1 for instruction:   %cmp = icmp eq <16 x i8> %val1, %val21116; CHECK: cost of 15 for instruction:   %sel = select <16 x i1> %cmp, <16 x float> %val3, <16 x float> %val41117}1118 1119define <16 x double> @fun101(<16 x i8> %val1, <16 x i8> %val2,1120                             <16 x double> %val3, <16 x double> %val4) {1121  %cmp = icmp eq <16 x i8> %val1, %val21122  %sel = select <16 x i1> %cmp, <16 x double> %val3, <16 x double> %val41123  ret <16 x double> %sel1124 1125; CHECK: fun1011126; CHECK: cost of 1 for instruction:   %cmp = icmp eq <16 x i8> %val1, %val21127; CHECK: cost of 39 for instruction:   %sel = select <16 x i1> %cmp, <16 x double> %val3, <16 x double> %val41128}1129 1130define <16 x i8> @fun102(<16 x i16> %val1, <16 x i16> %val2,1131                         <16 x i8> %val3, <16 x i8> %val4) {1132  %cmp = icmp eq <16 x i16> %val1, %val21133  %sel = select <16 x i1> %cmp, <16 x i8> %val3, <16 x i8> %val41134  ret <16 x i8> %sel1135 1136; CHECK: fun1021137; CHECK: cost of 2 for instruction:   %cmp = icmp eq <16 x i16> %val1, %val21138; CHECK: cost of 2 for instruction:   %sel = select <16 x i1> %cmp, <16 x i8> %val3, <16 x i8> %val41139}1140 1141define <16 x i16> @fun103(<16 x i16> %val1, <16 x i16> %val2,1142                          <16 x i16> %val3, <16 x i16> %val4) {1143  %cmp = icmp eq <16 x i16> %val1, %val21144  %sel = select <16 x i1> %cmp, <16 x i16> %val3, <16 x i16> %val41145  ret <16 x i16> %sel1146 1147; CHECK: fun1031148; CHECK: cost of 2 for instruction:   %cmp = icmp eq <16 x i16> %val1, %val21149; CHECK: cost of 2 for instruction:   %sel = select <16 x i1> %cmp, <16 x i16> %val3, <16 x i16> %val41150}1151 1152define <16 x i32> @fun104(<16 x i16> %val1, <16 x i16> %val2,1153                          <16 x i32> %val3, <16 x i32> %val4) {1154  %cmp = icmp eq <16 x i16> %val1, %val21155  %sel = select <16 x i1> %cmp, <16 x i32> %val3, <16 x i32> %val41156  ret <16 x i32> %sel1157 1158; CHECK: fun1041159; CHECK: cost of 2 for instruction:   %cmp = icmp eq <16 x i16> %val1, %val21160; CHECK: cost of 11 for instruction:   %sel = select <16 x i1> %cmp, <16 x i32> %val3, <16 x i32> %val41161}1162 1163define <16 x i64> @fun105(<16 x i16> %val1, <16 x i16> %val2,1164                          <16 x i64> %val3, <16 x i64> %val4) {1165  %cmp = icmp eq <16 x i16> %val1, %val21166  %sel = select <16 x i1> %cmp, <16 x i64> %val3, <16 x i64> %val41167  ret <16 x i64> %sel1168 1169; CHECK: fun1051170; CHECK: cost of 2 for instruction:   %cmp = icmp eq <16 x i16> %val1, %val21171; CHECK: cost of 31 for instruction:   %sel = select <16 x i1> %cmp, <16 x i64> %val3, <16 x i64> %val41172}1173 1174define <16 x float> @fun106(<16 x i16> %val1, <16 x i16> %val2,1175                            <16 x float> %val3, <16 x float> %val4) {1176  %cmp = icmp eq <16 x i16> %val1, %val21177  %sel = select <16 x i1> %cmp, <16 x float> %val3, <16 x float> %val41178  ret <16 x float> %sel1179 1180; CHECK: fun1061181; CHECK: cost of 2 for instruction:   %cmp = icmp eq <16 x i16> %val1, %val21182; CHECK: cost of 11 for instruction:   %sel = select <16 x i1> %cmp, <16 x float> %val3, <16 x float> %val41183}1184 1185define <16 x double> @fun107(<16 x i16> %val1, <16 x i16> %val2,1186                             <16 x double> %val3, <16 x double> %val4) {1187  %cmp = icmp eq <16 x i16> %val1, %val21188  %sel = select <16 x i1> %cmp, <16 x double> %val3, <16 x double> %val41189  ret <16 x double> %sel1190 1191; CHECK: fun1071192; CHECK: cost of 2 for instruction:   %cmp = icmp eq <16 x i16> %val1, %val21193; CHECK: cost of 31 for instruction:   %sel = select <16 x i1> %cmp, <16 x double> %val3, <16 x double> %val41194}1195 1196define <16 x i8> @fun108(<16 x i32> %val1, <16 x i32> %val2,1197                         <16 x i8> %val3, <16 x i8> %val4) {1198  %cmp = icmp eq <16 x i32> %val1, %val21199  %sel = select <16 x i1> %cmp, <16 x i8> %val3, <16 x i8> %val41200  ret <16 x i8> %sel1201 1202; CHECK: fun1081203; CHECK: cost of 4 for instruction:   %cmp = icmp eq <16 x i32> %val1, %val21204; CHECK: cost of 4 for instruction:   %sel = select <16 x i1> %cmp, <16 x i8> %val3, <16 x i8> %val41205}1206 1207define <16 x i16> @fun109(<16 x i32> %val1, <16 x i32> %val2,1208                          <16 x i16> %val3, <16 x i16> %val4) {1209  %cmp = icmp eq <16 x i32> %val1, %val21210  %sel = select <16 x i1> %cmp, <16 x i16> %val3, <16 x i16> %val41211  ret <16 x i16> %sel1212 1213; CHECK: fun1091214; CHECK: cost of 4 for instruction:   %cmp = icmp eq <16 x i32> %val1, %val21215; CHECK: cost of 4 for instruction:   %sel = select <16 x i1> %cmp, <16 x i16> %val3, <16 x i16> %val41216}1217 1218define <16 x i32> @fun110(<16 x i32> %val1, <16 x i32> %val2,1219                          <16 x i32> %val3, <16 x i32> %val4) {1220  %cmp = icmp eq <16 x i32> %val1, %val21221  %sel = select <16 x i1> %cmp, <16 x i32> %val3, <16 x i32> %val41222  ret <16 x i32> %sel1223 1224; CHECK: fun1101225; CHECK: cost of 4 for instruction:   %cmp = icmp eq <16 x i32> %val1, %val21226; CHECK: cost of 4 for instruction:   %sel = select <16 x i1> %cmp, <16 x i32> %val3, <16 x i32> %val41227}1228 1229define <16 x i64> @fun111(<16 x i32> %val1, <16 x i32> %val2,1230                          <16 x i64> %val3, <16 x i64> %val4) {1231  %cmp = icmp eq <16 x i32> %val1, %val21232  %sel = select <16 x i1> %cmp, <16 x i64> %val3, <16 x i64> %val41233  ret <16 x i64> %sel1234 1235; CHECK: fun1111236; CHECK: cost of 4 for instruction:   %cmp = icmp eq <16 x i32> %val1, %val21237; CHECK: cost of 23 for instruction:   %sel = select <16 x i1> %cmp, <16 x i64> %val3, <16 x i64> %val41238}1239 1240define <16 x float> @fun112(<16 x i32> %val1, <16 x i32> %val2,1241                            <16 x float> %val3, <16 x float> %val4) {1242  %cmp = icmp eq <16 x i32> %val1, %val21243  %sel = select <16 x i1> %cmp, <16 x float> %val3, <16 x float> %val41244  ret <16 x float> %sel1245 1246; CHECK: fun1121247; CHECK: cost of 4 for instruction:   %cmp = icmp eq <16 x i32> %val1, %val21248; CHECK: cost of 4 for instruction:   %sel = select <16 x i1> %cmp, <16 x float> %val3, <16 x float> %val41249}1250 1251define <16 x double> @fun113(<16 x i32> %val1, <16 x i32> %val2,1252                             <16 x double> %val3, <16 x double> %val4) {1253  %cmp = icmp eq <16 x i32> %val1, %val21254  %sel = select <16 x i1> %cmp, <16 x double> %val3, <16 x double> %val41255  ret <16 x double> %sel1256 1257; CHECK: fun1131258; CHECK: cost of 4 for instruction:   %cmp = icmp eq <16 x i32> %val1, %val21259; CHECK: cost of 23 for instruction:   %sel = select <16 x i1> %cmp, <16 x double> %val3, <16 x double> %val41260}1261 1262define <16 x i8> @fun114(<16 x i64> %val1, <16 x i64> %val2,1263                         <16 x i8> %val3, <16 x i8> %val4) {1264  %cmp = icmp eq <16 x i64> %val1, %val21265  %sel = select <16 x i1> %cmp, <16 x i8> %val3, <16 x i8> %val41266  ret <16 x i8> %sel1267 1268; CHECK: fun1141269; CHECK: cost of 8 for instruction:   %cmp = icmp eq <16 x i64> %val1, %val21270; CHECK: cost of 8 for instruction:   %sel = select <16 x i1> %cmp, <16 x i8> %val3, <16 x i8> %val41271}1272 1273define <16 x i16> @fun115(<16 x i64> %val1, <16 x i64> %val2,1274                          <16 x i16> %val3, <16 x i16> %val4) {1275  %cmp = icmp eq <16 x i64> %val1, %val21276  %sel = select <16 x i1> %cmp, <16 x i16> %val3, <16 x i16> %val41277  ret <16 x i16> %sel1278 1279; CHECK: fun1151280; CHECK: cost of 8 for instruction:   %cmp = icmp eq <16 x i64> %val1, %val21281; CHECK: cost of 8 for instruction:   %sel = select <16 x i1> %cmp, <16 x i16> %val3, <16 x i16> %val41282}1283 1284define <16 x i32> @fun116(<16 x i64> %val1, <16 x i64> %val2,1285                          <16 x i32> %val3, <16 x i32> %val4) {1286  %cmp = icmp eq <16 x i64> %val1, %val21287  %sel = select <16 x i1> %cmp, <16 x i32> %val3, <16 x i32> %val41288  ret <16 x i32> %sel1289 1290; CHECK: fun1161291; CHECK: cost of 8 for instruction:   %cmp = icmp eq <16 x i64> %val1, %val21292; CHECK: cost of 8 for instruction:   %sel = select <16 x i1> %cmp, <16 x i32> %val3, <16 x i32> %val41293}1294 1295define <16 x i64> @fun117(<16 x i64> %val1, <16 x i64> %val2,1296                          <16 x i64> %val3, <16 x i64> %val4) {1297  %cmp = icmp eq <16 x i64> %val1, %val21298  %sel = select <16 x i1> %cmp, <16 x i64> %val3, <16 x i64> %val41299  ret <16 x i64> %sel1300 1301; CHECK: fun1171302; CHECK: cost of 8 for instruction:   %cmp = icmp eq <16 x i64> %val1, %val21303; CHECK: cost of 8 for instruction:   %sel = select <16 x i1> %cmp, <16 x i64> %val3, <16 x i64> %val41304}1305 1306define <16 x float> @fun118(<16 x i64> %val1, <16 x i64> %val2,1307                            <16 x float> %val3, <16 x float> %val4) {1308  %cmp = icmp eq <16 x i64> %val1, %val21309  %sel = select <16 x i1> %cmp, <16 x float> %val3, <16 x float> %val41310  ret <16 x float> %sel1311 1312; CHECK: fun1181313; CHECK: cost of 8 for instruction:   %cmp = icmp eq <16 x i64> %val1, %val21314; CHECK: cost of 8 for instruction:   %sel = select <16 x i1> %cmp, <16 x float> %val3, <16 x float> %val41315}1316 1317define <16 x double> @fun119(<16 x i64> %val1, <16 x i64> %val2,1318                             <16 x double> %val3, <16 x double> %val4) {1319  %cmp = icmp eq <16 x i64> %val1, %val21320  %sel = select <16 x i1> %cmp, <16 x double> %val3, <16 x double> %val41321  ret <16 x double> %sel1322 1323; CHECK: fun1191324; CHECK: cost of 8 for instruction:   %cmp = icmp eq <16 x i64> %val1, %val21325; CHECK: cost of 8 for instruction:   %sel = select <16 x i1> %cmp, <16 x double> %val3, <16 x double> %val41326}1327 1328define i8 @fun120(float %val1, float %val2,1329                  i8 %val3, i8 %val4) {1330  %cmp = fcmp ogt float %val1, %val21331  %sel = select i1 %cmp, i8 %val3, i8 %val41332  ret i8 %sel1333 1334; CHECK: fun1201335; CHECK: cost of 1 for instruction:   %cmp = fcmp ogt float %val1, %val21336; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i8 %val3, i8 %val41337}1338 1339define i16 @fun121(float %val1, float %val2,1340                   i16 %val3, i16 %val4) {1341  %cmp = fcmp ogt float %val1, %val21342  %sel = select i1 %cmp, i16 %val3, i16 %val41343  ret i16 %sel1344 1345; CHECK: fun1211346; CHECK: cost of 1 for instruction:   %cmp = fcmp ogt float %val1, %val21347; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i16 %val3, i16 %val41348}1349 1350define i32 @fun122(float %val1, float %val2,1351                   i32 %val3, i32 %val4) {1352  %cmp = fcmp ogt float %val1, %val21353  %sel = select i1 %cmp, i32 %val3, i32 %val41354  ret i32 %sel1355 1356; CHECK: fun1221357; CHECK: cost of 1 for instruction:   %cmp = fcmp ogt float %val1, %val21358; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i32 %val3, i32 %val41359}1360 1361define i64 @fun123(float %val1, float %val2,1362                   i64 %val3, i64 %val4) {1363  %cmp = fcmp ogt float %val1, %val21364  %sel = select i1 %cmp, i64 %val3, i64 %val41365  ret i64 %sel1366 1367; CHECK: fun1231368; CHECK: cost of 1 for instruction:   %cmp = fcmp ogt float %val1, %val21369; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i64 %val3, i64 %val41370}1371 1372define float @fun124(float %val1, float %val2,1373                     float %val3, float %val4) {1374  %cmp = fcmp ogt float %val1, %val21375  %sel = select i1 %cmp, float %val3, float %val41376  ret float %sel1377 1378; CHECK: fun1241379; CHECK: cost of 1 for instruction:   %cmp = fcmp ogt float %val1, %val21380; CHECK: cost of 4 for instruction:   %sel = select i1 %cmp, float %val3, float %val41381}1382 1383define double @fun125(float %val1, float %val2,1384                      double %val3, double %val4) {1385  %cmp = fcmp ogt float %val1, %val21386  %sel = select i1 %cmp, double %val3, double %val41387  ret double %sel1388 1389; CHECK: fun1251390; CHECK: cost of 1 for instruction:   %cmp = fcmp ogt float %val1, %val21391; CHECK: cost of 4 for instruction:   %sel = select i1 %cmp, double %val3, double %val41392}1393 1394define i8 @fun126(double %val1, double %val2,1395                  i8 %val3, i8 %val4) {1396  %cmp = fcmp ogt double %val1, %val21397  %sel = select i1 %cmp, i8 %val3, i8 %val41398  ret i8 %sel1399 1400; CHECK: fun1261401; CHECK: cost of 1 for instruction:   %cmp = fcmp ogt double %val1, %val21402; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i8 %val3, i8 %val41403}1404 1405define i16 @fun127(double %val1, double %val2,1406                   i16 %val3, i16 %val4) {1407  %cmp = fcmp ogt double %val1, %val21408  %sel = select i1 %cmp, i16 %val3, i16 %val41409  ret i16 %sel1410 1411; CHECK: fun1271412; CHECK: cost of 1 for instruction:   %cmp = fcmp ogt double %val1, %val21413; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i16 %val3, i16 %val41414}1415 1416define i32 @fun128(double %val1, double %val2,1417                   i32 %val3, i32 %val4) {1418  %cmp = fcmp ogt double %val1, %val21419  %sel = select i1 %cmp, i32 %val3, i32 %val41420  ret i32 %sel1421 1422; CHECK: fun1281423; CHECK: cost of 1 for instruction:   %cmp = fcmp ogt double %val1, %val21424; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i32 %val3, i32 %val41425}1426 1427define i64 @fun129(double %val1, double %val2,1428                   i64 %val3, i64 %val4) {1429  %cmp = fcmp ogt double %val1, %val21430  %sel = select i1 %cmp, i64 %val3, i64 %val41431  ret i64 %sel1432 1433; CHECK: fun1291434; CHECK: cost of 1 for instruction:   %cmp = fcmp ogt double %val1, %val21435; CHECK: cost of 1 for instruction:   %sel = select i1 %cmp, i64 %val3, i64 %val41436}1437 1438define float @fun130(double %val1, double %val2,1439                     float %val3, float %val4) {1440  %cmp = fcmp ogt double %val1, %val21441  %sel = select i1 %cmp, float %val3, float %val41442  ret float %sel1443 1444; CHECK: fun1301445; CHECK: cost of 1 for instruction:   %cmp = fcmp ogt double %val1, %val21446; CHECK: cost of 4 for instruction:   %sel = select i1 %cmp, float %val3, float %val41447}1448 1449define double @fun131(double %val1, double %val2,1450                      double %val3, double %val4) {1451  %cmp = fcmp ogt double %val1, %val21452  %sel = select i1 %cmp, double %val3, double %val41453  ret double %sel1454 1455; CHECK: fun1311456; CHECK: cost of 1 for instruction:   %cmp = fcmp ogt double %val1, %val21457; CHECK: cost of 4 for instruction:   %sel = select i1 %cmp, double %val3, double %val41458}1459 1460define <2 x i8> @fun132(<2 x float> %val1, <2 x float> %val2,1461                        <2 x i8> %val3, <2 x i8> %val4) {1462  %cmp = fcmp ogt <2 x float> %val1, %val21463  %sel = select <2 x i1> %cmp, <2 x i8> %val3, <2 x i8> %val41464  ret <2 x i8> %sel1465 1466; CHECK: fun1321467; CHECK: cost of 10 for instruction:   %cmp = fcmp ogt <2 x float> %val1, %val21468; CHECK: cost of 2 for instruction:   %sel = select <2 x i1> %cmp, <2 x i8> %val3, <2 x i8> %val41469}1470 1471define <2 x i16> @fun133(<2 x float> %val1, <2 x float> %val2,1472                         <2 x i16> %val3, <2 x i16> %val4) {1473  %cmp = fcmp ogt <2 x float> %val1, %val21474  %sel = select <2 x i1> %cmp, <2 x i16> %val3, <2 x i16> %val41475  ret <2 x i16> %sel1476 1477; CHECK: fun1331478; CHECK: cost of 10 for instruction:   %cmp = fcmp ogt <2 x float> %val1, %val21479; CHECK: cost of 2 for instruction:   %sel = select <2 x i1> %cmp, <2 x i16> %val3, <2 x i16> %val41480}1481 1482define <2 x i32> @fun134(<2 x float> %val1, <2 x float> %val2,1483                         <2 x i32> %val3, <2 x i32> %val4) {1484  %cmp = fcmp ogt <2 x float> %val1, %val21485  %sel = select <2 x i1> %cmp, <2 x i32> %val3, <2 x i32> %val41486  ret <2 x i32> %sel1487 1488; CHECK: fun1341489; CHECK: cost of 10 for instruction:   %cmp = fcmp ogt <2 x float> %val1, %val21490; CHECK: cost of 1 for instruction:   %sel = select <2 x i1> %cmp, <2 x i32> %val3, <2 x i32> %val41491}1492 1493define <2 x i64> @fun135(<2 x float> %val1, <2 x float> %val2,1494                         <2 x i64> %val3, <2 x i64> %val4) {1495  %cmp = fcmp ogt <2 x float> %val1, %val21496  %sel = select <2 x i1> %cmp, <2 x i64> %val3, <2 x i64> %val41497  ret <2 x i64> %sel1498 1499; CHECK: fun1351500; CHECK: cost of 10 for instruction:   %cmp = fcmp ogt <2 x float> %val1, %val21501; CHECK: cost of 2 for instruction:   %sel = select <2 x i1> %cmp, <2 x i64> %val3, <2 x i64> %val41502}1503 1504define <2 x float> @fun136(<2 x float> %val1, <2 x float> %val2,1505                           <2 x float> %val3, <2 x float> %val4) {1506  %cmp = fcmp ogt <2 x float> %val1, %val21507  %sel = select <2 x i1> %cmp, <2 x float> %val3, <2 x float> %val41508  ret <2 x float> %sel1509 1510; CHECK: fun1361511; CHECK: cost of 10 for instruction:   %cmp = fcmp ogt <2 x float> %val1, %val21512; CHECK: cost of 1 for instruction:   %sel = select <2 x i1> %cmp, <2 x float> %val3, <2 x float> %val41513}1514 1515define <2 x double> @fun137(<2 x float> %val1, <2 x float> %val2,1516                            <2 x double> %val3, <2 x double> %val4) {1517  %cmp = fcmp ogt <2 x float> %val1, %val21518  %sel = select <2 x i1> %cmp, <2 x double> %val3, <2 x double> %val41519  ret <2 x double> %sel1520 1521; CHECK: fun1371522; CHECK: cost of 10 for instruction:   %cmp = fcmp ogt <2 x float> %val1, %val21523; CHECK: cost of 2 for instruction:   %sel = select <2 x i1> %cmp, <2 x double> %val3, <2 x double> %val41524}1525 1526define <2 x i8> @fun138(<2 x double> %val1, <2 x double> %val2,1527                        <2 x i8> %val3, <2 x i8> %val4) {1528  %cmp = fcmp ogt <2 x double> %val1, %val21529  %sel = select <2 x i1> %cmp, <2 x i8> %val3, <2 x i8> %val41530  ret <2 x i8> %sel1531 1532; CHECK: fun1381533; CHECK: cost of 1 for instruction:   %cmp = fcmp ogt <2 x double> %val1, %val21534; CHECK: cost of 2 for instruction:   %sel = select <2 x i1> %cmp, <2 x i8> %val3, <2 x i8> %val41535}1536 1537define <2 x i16> @fun139(<2 x double> %val1, <2 x double> %val2,1538                         <2 x i16> %val3, <2 x i16> %val4) {1539  %cmp = fcmp ogt <2 x double> %val1, %val21540  %sel = select <2 x i1> %cmp, <2 x i16> %val3, <2 x i16> %val41541  ret <2 x i16> %sel1542 1543; CHECK: fun1391544; CHECK: cost of 1 for instruction:   %cmp = fcmp ogt <2 x double> %val1, %val21545; CHECK: cost of 2 for instruction:   %sel = select <2 x i1> %cmp, <2 x i16> %val3, <2 x i16> %val41546}1547 1548define <2 x i32> @fun140(<2 x double> %val1, <2 x double> %val2,1549                         <2 x i32> %val3, <2 x i32> %val4) {1550  %cmp = fcmp ogt <2 x double> %val1, %val21551  %sel = select <2 x i1> %cmp, <2 x i32> %val3, <2 x i32> %val41552  ret <2 x i32> %sel1553 1554; CHECK: fun1401555; CHECK: cost of 1 for instruction:   %cmp = fcmp ogt <2 x double> %val1, %val21556; CHECK: cost of 2 for instruction:   %sel = select <2 x i1> %cmp, <2 x i32> %val3, <2 x i32> %val41557}1558 1559define <2 x i64> @fun141(<2 x double> %val1, <2 x double> %val2,1560                         <2 x i64> %val3, <2 x i64> %val4) {1561  %cmp = fcmp ogt <2 x double> %val1, %val21562  %sel = select <2 x i1> %cmp, <2 x i64> %val3, <2 x i64> %val41563  ret <2 x i64> %sel1564 1565; CHECK: fun1411566; CHECK: cost of 1 for instruction:   %cmp = fcmp ogt <2 x double> %val1, %val21567; CHECK: cost of 1 for instruction:   %sel = select <2 x i1> %cmp, <2 x i64> %val3, <2 x i64> %val41568}1569 1570define <2 x float> @fun142(<2 x double> %val1, <2 x double> %val2,1571                           <2 x float> %val3, <2 x float> %val4) {1572  %cmp = fcmp ogt <2 x double> %val1, %val21573  %sel = select <2 x i1> %cmp, <2 x float> %val3, <2 x float> %val41574  ret <2 x float> %sel1575 1576; CHECK: fun1421577; CHECK: cost of 1 for instruction:   %cmp = fcmp ogt <2 x double> %val1, %val21578; CHECK: cost of 2 for instruction:   %sel = select <2 x i1> %cmp, <2 x float> %val3, <2 x float> %val41579}1580 1581define <2 x double> @fun143(<2 x double> %val1, <2 x double> %val2,1582                            <2 x double> %val3, <2 x double> %val4) {1583  %cmp = fcmp ogt <2 x double> %val1, %val21584  %sel = select <2 x i1> %cmp, <2 x double> %val3, <2 x double> %val41585  ret <2 x double> %sel1586 1587; CHECK: fun1431588; CHECK: cost of 1 for instruction:   %cmp = fcmp ogt <2 x double> %val1, %val21589; CHECK: cost of 1 for instruction:   %sel = select <2 x i1> %cmp, <2 x double> %val3, <2 x double> %val41590}1591 1592define <4 x i8> @fun144(<4 x float> %val1, <4 x float> %val2,1593                        <4 x i8> %val3, <4 x i8> %val4) {1594  %cmp = fcmp ogt <4 x float> %val1, %val21595  %sel = select <4 x i1> %cmp, <4 x i8> %val3, <4 x i8> %val41596  ret <4 x i8> %sel1597 1598; CHECK: fun1441599; CHECK: cost of 10 for instruction:   %cmp = fcmp ogt <4 x float> %val1, %val21600; CHECK: cost of 2 for instruction:   %sel = select <4 x i1> %cmp, <4 x i8> %val3, <4 x i8> %val41601}1602 1603define <4 x i16> @fun145(<4 x float> %val1, <4 x float> %val2,1604                         <4 x i16> %val3, <4 x i16> %val4) {1605  %cmp = fcmp ogt <4 x float> %val1, %val21606  %sel = select <4 x i1> %cmp, <4 x i16> %val3, <4 x i16> %val41607  ret <4 x i16> %sel1608 1609; CHECK: fun1451610; CHECK: cost of 10 for instruction:   %cmp = fcmp ogt <4 x float> %val1, %val21611; CHECK: cost of 2 for instruction:   %sel = select <4 x i1> %cmp, <4 x i16> %val3, <4 x i16> %val41612}1613 1614define <4 x i32> @fun146(<4 x float> %val1, <4 x float> %val2,1615                         <4 x i32> %val3, <4 x i32> %val4) {1616  %cmp = fcmp ogt <4 x float> %val1, %val21617  %sel = select <4 x i1> %cmp, <4 x i32> %val3, <4 x i32> %val41618  ret <4 x i32> %sel1619 1620; CHECK: fun1461621; CHECK: cost of 10 for instruction:   %cmp = fcmp ogt <4 x float> %val1, %val21622; CHECK: cost of 1 for instruction:   %sel = select <4 x i1> %cmp, <4 x i32> %val3, <4 x i32> %val41623}1624 1625define <4 x i64> @fun147(<4 x float> %val1, <4 x float> %val2,1626                         <4 x i64> %val3, <4 x i64> %val4) {1627  %cmp = fcmp ogt <4 x float> %val1, %val21628  %sel = select <4 x i1> %cmp, <4 x i64> %val3, <4 x i64> %val41629  ret <4 x i64> %sel1630 1631; CHECK: fun1471632; CHECK: cost of 10 for instruction:   %cmp = fcmp ogt <4 x float> %val1, %val21633; CHECK: cost of 5 for instruction:   %sel = select <4 x i1> %cmp, <4 x i64> %val3, <4 x i64> %val41634}1635 1636define <4 x float> @fun148(<4 x float> %val1, <4 x float> %val2,1637                           <4 x float> %val3, <4 x float> %val4) {1638  %cmp = fcmp ogt <4 x float> %val1, %val21639  %sel = select <4 x i1> %cmp, <4 x float> %val3, <4 x float> %val41640  ret <4 x float> %sel1641 1642; CHECK: fun1481643; CHECK: cost of 10 for instruction:   %cmp = fcmp ogt <4 x float> %val1, %val21644; CHECK: cost of 1 for instruction:   %sel = select <4 x i1> %cmp, <4 x float> %val3, <4 x float> %val41645}1646 1647define <4 x double> @fun149(<4 x float> %val1, <4 x float> %val2,1648                            <4 x double> %val3, <4 x double> %val4) {1649  %cmp = fcmp ogt <4 x float> %val1, %val21650  %sel = select <4 x i1> %cmp, <4 x double> %val3, <4 x double> %val41651  ret <4 x double> %sel1652 1653; CHECK: fun1491654; CHECK: cost of 10 for instruction:   %cmp = fcmp ogt <4 x float> %val1, %val21655; CHECK: cost of 5 for instruction:   %sel = select <4 x i1> %cmp, <4 x double> %val3, <4 x double> %val41656}1657 1658define <4 x i8> @fun150(<4 x double> %val1, <4 x double> %val2,1659                        <4 x i8> %val3, <4 x i8> %val4) {1660  %cmp = fcmp ogt <4 x double> %val1, %val21661  %sel = select <4 x i1> %cmp, <4 x i8> %val3, <4 x i8> %val41662  ret <4 x i8> %sel1663 1664; CHECK: fun1501665; CHECK: cost of 2 for instruction:   %cmp = fcmp ogt <4 x double> %val1, %val21666; CHECK: cost of 2 for instruction:   %sel = select <4 x i1> %cmp, <4 x i8> %val3, <4 x i8> %val41667}1668 1669define <4 x i16> @fun151(<4 x double> %val1, <4 x double> %val2,1670                         <4 x i16> %val3, <4 x i16> %val4) {1671  %cmp = fcmp ogt <4 x double> %val1, %val21672  %sel = select <4 x i1> %cmp, <4 x i16> %val3, <4 x i16> %val41673  ret <4 x i16> %sel1674 1675; CHECK: fun1511676; CHECK: cost of 2 for instruction:   %cmp = fcmp ogt <4 x double> %val1, %val21677; CHECK: cost of 2 for instruction:   %sel = select <4 x i1> %cmp, <4 x i16> %val3, <4 x i16> %val41678}1679 1680define <4 x i32> @fun152(<4 x double> %val1, <4 x double> %val2,1681                         <4 x i32> %val3, <4 x i32> %val4) {1682  %cmp = fcmp ogt <4 x double> %val1, %val21683  %sel = select <4 x i1> %cmp, <4 x i32> %val3, <4 x i32> %val41684  ret <4 x i32> %sel1685 1686; CHECK: fun1521687; CHECK: cost of 2 for instruction:   %cmp = fcmp ogt <4 x double> %val1, %val21688; CHECK: cost of 2 for instruction:   %sel = select <4 x i1> %cmp, <4 x i32> %val3, <4 x i32> %val41689}1690 1691define <4 x i64> @fun153(<4 x double> %val1, <4 x double> %val2,1692                         <4 x i64> %val3, <4 x i64> %val4) {1693  %cmp = fcmp ogt <4 x double> %val1, %val21694  %sel = select <4 x i1> %cmp, <4 x i64> %val3, <4 x i64> %val41695  ret <4 x i64> %sel1696 1697; CHECK: fun1531698; CHECK: cost of 2 for instruction:   %cmp = fcmp ogt <4 x double> %val1, %val21699; CHECK: cost of 2 for instruction:   %sel = select <4 x i1> %cmp, <4 x i64> %val3, <4 x i64> %val41700}1701 1702define <4 x float> @fun154(<4 x double> %val1, <4 x double> %val2,1703                           <4 x float> %val3, <4 x float> %val4) {1704  %cmp = fcmp ogt <4 x double> %val1, %val21705  %sel = select <4 x i1> %cmp, <4 x float> %val3, <4 x float> %val41706  ret <4 x float> %sel1707 1708; CHECK: fun1541709; CHECK: cost of 2 for instruction:   %cmp = fcmp ogt <4 x double> %val1, %val21710; CHECK: cost of 2 for instruction:   %sel = select <4 x i1> %cmp, <4 x float> %val3, <4 x float> %val41711}1712 1713define <4 x double> @fun155(<4 x double> %val1, <4 x double> %val2,1714                            <4 x double> %val3, <4 x double> %val4) {1715  %cmp = fcmp ogt <4 x double> %val1, %val21716  %sel = select <4 x i1> %cmp, <4 x double> %val3, <4 x double> %val41717  ret <4 x double> %sel1718 1719; CHECK: fun1551720; CHECK: cost of 2 for instruction:   %cmp = fcmp ogt <4 x double> %val1, %val21721; CHECK: cost of 2 for instruction:   %sel = select <4 x i1> %cmp, <4 x double> %val3, <4 x double> %val41722}1723 1724define <8 x i8> @fun156(<8 x float> %val1, <8 x float> %val2,1725                        <8 x i8> %val3, <8 x i8> %val4) {1726  %cmp = fcmp ogt <8 x float> %val1, %val21727  %sel = select <8 x i1> %cmp, <8 x i8> %val3, <8 x i8> %val41728  ret <8 x i8> %sel1729 1730; CHECK: fun1561731; CHECK: cost of 20 for instruction:   %cmp = fcmp ogt <8 x float> %val1, %val21732; CHECK: cost of 2 for instruction:   %sel = select <8 x i1> %cmp, <8 x i8> %val3, <8 x i8> %val41733}1734 1735define <8 x i16> @fun157(<8 x float> %val1, <8 x float> %val2,1736                         <8 x i16> %val3, <8 x i16> %val4) {1737  %cmp = fcmp ogt <8 x float> %val1, %val21738  %sel = select <8 x i1> %cmp, <8 x i16> %val3, <8 x i16> %val41739  ret <8 x i16> %sel1740 1741; CHECK: fun1571742; CHECK: cost of 20 for instruction:   %cmp = fcmp ogt <8 x float> %val1, %val21743; CHECK: cost of 2 for instruction:   %sel = select <8 x i1> %cmp, <8 x i16> %val3, <8 x i16> %val41744}1745 1746define <8 x i32> @fun158(<8 x float> %val1, <8 x float> %val2,1747                         <8 x i32> %val3, <8 x i32> %val4) {1748  %cmp = fcmp ogt <8 x float> %val1, %val21749  %sel = select <8 x i1> %cmp, <8 x i32> %val3, <8 x i32> %val41750  ret <8 x i32> %sel1751 1752; CHECK: fun1581753; CHECK: cost of 20 for instruction:   %cmp = fcmp ogt <8 x float> %val1, %val21754; CHECK: cost of 2 for instruction:   %sel = select <8 x i1> %cmp, <8 x i32> %val3, <8 x i32> %val41755}1756 1757define <8 x i64> @fun159(<8 x float> %val1, <8 x float> %val2,1758                         <8 x i64> %val3, <8 x i64> %val4) {1759  %cmp = fcmp ogt <8 x float> %val1, %val21760  %sel = select <8 x i1> %cmp, <8 x i64> %val3, <8 x i64> %val41761  ret <8 x i64> %sel1762 1763; CHECK: fun1591764; CHECK: cost of 20 for instruction:   %cmp = fcmp ogt <8 x float> %val1, %val21765; CHECK: cost of 11 for instruction:   %sel = select <8 x i1> %cmp, <8 x i64> %val3, <8 x i64> %val41766}1767 1768define <8 x float> @fun160(<8 x float> %val1, <8 x float> %val2,1769                           <8 x float> %val3, <8 x float> %val4) {1770  %cmp = fcmp ogt <8 x float> %val1, %val21771  %sel = select <8 x i1> %cmp, <8 x float> %val3, <8 x float> %val41772  ret <8 x float> %sel1773 1774; CHECK: fun1601775; CHECK: cost of 20 for instruction:   %cmp = fcmp ogt <8 x float> %val1, %val21776; CHECK: cost of 2 for instruction:   %sel = select <8 x i1> %cmp, <8 x float> %val3, <8 x float> %val41777}1778 1779define <8 x double> @fun161(<8 x float> %val1, <8 x float> %val2,1780                            <8 x double> %val3, <8 x double> %val4) {1781  %cmp = fcmp ogt <8 x float> %val1, %val21782  %sel = select <8 x i1> %cmp, <8 x double> %val3, <8 x double> %val41783  ret <8 x double> %sel1784 1785; CHECK: fun1611786; CHECK: cost of 20 for instruction:   %cmp = fcmp ogt <8 x float> %val1, %val21787; CHECK: cost of 11 for instruction:   %sel = select <8 x i1> %cmp, <8 x double> %val3, <8 x double> %val41788}1789 1790define <8 x i8> @fun162(<8 x double> %val1, <8 x double> %val2,1791                        <8 x i8> %val3, <8 x i8> %val4) {1792  %cmp = fcmp ogt <8 x double> %val1, %val21793  %sel = select <8 x i1> %cmp, <8 x i8> %val3, <8 x i8> %val41794  ret <8 x i8> %sel1795 1796; CHECK: fun1621797; CHECK: cost of 4 for instruction:   %cmp = fcmp ogt <8 x double> %val1, %val21798; CHECK: cost of 4 for instruction:   %sel = select <8 x i1> %cmp, <8 x i8> %val3, <8 x i8> %val41799}1800 1801define <8 x i16> @fun163(<8 x double> %val1, <8 x double> %val2,1802                         <8 x i16> %val3, <8 x i16> %val4) {1803  %cmp = fcmp ogt <8 x double> %val1, %val21804  %sel = select <8 x i1> %cmp, <8 x i16> %val3, <8 x i16> %val41805  ret <8 x i16> %sel1806 1807; CHECK: fun1631808; CHECK: cost of 4 for instruction:   %cmp = fcmp ogt <8 x double> %val1, %val21809; CHECK: cost of 4 for instruction:   %sel = select <8 x i1> %cmp, <8 x i16> %val3, <8 x i16> %val41810}1811 1812define <8 x i32> @fun164(<8 x double> %val1, <8 x double> %val2,1813                         <8 x i32> %val3, <8 x i32> %val4) {1814  %cmp = fcmp ogt <8 x double> %val1, %val21815  %sel = select <8 x i1> %cmp, <8 x i32> %val3, <8 x i32> %val41816  ret <8 x i32> %sel1817 1818; CHECK: fun1641819; CHECK: cost of 4 for instruction:   %cmp = fcmp ogt <8 x double> %val1, %val21820; CHECK: cost of 4 for instruction:   %sel = select <8 x i1> %cmp, <8 x i32> %val3, <8 x i32> %val41821}1822 1823define <8 x i64> @fun165(<8 x double> %val1, <8 x double> %val2,1824                         <8 x i64> %val3, <8 x i64> %val4) {1825  %cmp = fcmp ogt <8 x double> %val1, %val21826  %sel = select <8 x i1> %cmp, <8 x i64> %val3, <8 x i64> %val41827  ret <8 x i64> %sel1828 1829; CHECK: fun1651830; CHECK: cost of 4 for instruction:   %cmp = fcmp ogt <8 x double> %val1, %val21831; CHECK: cost of 4 for instruction:   %sel = select <8 x i1> %cmp, <8 x i64> %val3, <8 x i64> %val41832}1833 1834define <8 x float> @fun166(<8 x double> %val1, <8 x double> %val2,1835                           <8 x float> %val3, <8 x float> %val4) {1836  %cmp = fcmp ogt <8 x double> %val1, %val21837  %sel = select <8 x i1> %cmp, <8 x float> %val3, <8 x float> %val41838  ret <8 x float> %sel1839 1840; CHECK: fun1661841; CHECK: cost of 4 for instruction:   %cmp = fcmp ogt <8 x double> %val1, %val21842; CHECK: cost of 4 for instruction:   %sel = select <8 x i1> %cmp, <8 x float> %val3, <8 x float> %val41843}1844 1845define <8 x double> @fun167(<8 x double> %val1, <8 x double> %val2,1846                            <8 x double> %val3, <8 x double> %val4) {1847  %cmp = fcmp ogt <8 x double> %val1, %val21848  %sel = select <8 x i1> %cmp, <8 x double> %val3, <8 x double> %val41849  ret <8 x double> %sel1850 1851; CHECK: fun1671852; CHECK: cost of 4 for instruction:   %cmp = fcmp ogt <8 x double> %val1, %val21853; CHECK: cost of 4 for instruction:   %sel = select <8 x i1> %cmp, <8 x double> %val3, <8 x double> %val41854}1855 1856define <16 x i8> @fun168(<16 x float> %val1, <16 x float> %val2,1857                         <16 x i8> %val3, <16 x i8> %val4) {1858  %cmp = fcmp ogt <16 x float> %val1, %val21859  %sel = select <16 x i1> %cmp, <16 x i8> %val3, <16 x i8> %val41860  ret <16 x i8> %sel1861 1862; CHECK: fun1681863; CHECK: cost of 40 for instruction:   %cmp = fcmp ogt <16 x float> %val1, %val21864; CHECK: cost of 4 for instruction:   %sel = select <16 x i1> %cmp, <16 x i8> %val3, <16 x i8> %val41865}1866 1867define <16 x i16> @fun169(<16 x float> %val1, <16 x float> %val2,1868                          <16 x i16> %val3, <16 x i16> %val4) {1869  %cmp = fcmp ogt <16 x float> %val1, %val21870  %sel = select <16 x i1> %cmp, <16 x i16> %val3, <16 x i16> %val41871  ret <16 x i16> %sel1872 1873; CHECK: fun1691874; CHECK: cost of 40 for instruction:   %cmp = fcmp ogt <16 x float> %val1, %val21875; CHECK: cost of 4 for instruction:   %sel = select <16 x i1> %cmp, <16 x i16> %val3, <16 x i16> %val41876}1877 1878define <16 x i32> @fun170(<16 x float> %val1, <16 x float> %val2,1879                          <16 x i32> %val3, <16 x i32> %val4) {1880  %cmp = fcmp ogt <16 x float> %val1, %val21881  %sel = select <16 x i1> %cmp, <16 x i32> %val3, <16 x i32> %val41882  ret <16 x i32> %sel1883 1884; CHECK: fun1701885; CHECK: cost of 40 for instruction:   %cmp = fcmp ogt <16 x float> %val1, %val21886; CHECK: cost of 4 for instruction:   %sel = select <16 x i1> %cmp, <16 x i32> %val3, <16 x i32> %val41887}1888 1889define <16 x i64> @fun171(<16 x float> %val1, <16 x float> %val2,1890                          <16 x i64> %val3, <16 x i64> %val4) {1891  %cmp = fcmp ogt <16 x float> %val1, %val21892  %sel = select <16 x i1> %cmp, <16 x i64> %val3, <16 x i64> %val41893  ret <16 x i64> %sel1894 1895; CHECK: fun1711896; CHECK: cost of 40 for instruction:   %cmp = fcmp ogt <16 x float> %val1, %val21897; CHECK: cost of 23 for instruction:   %sel = select <16 x i1> %cmp, <16 x i64> %val3, <16 x i64> %val41898}1899 1900define <16 x float> @fun172(<16 x float> %val1, <16 x float> %val2,1901                            <16 x float> %val3, <16 x float> %val4) {1902  %cmp = fcmp ogt <16 x float> %val1, %val21903  %sel = select <16 x i1> %cmp, <16 x float> %val3, <16 x float> %val41904  ret <16 x float> %sel1905 1906; CHECK: fun1721907; CHECK: cost of 40 for instruction:   %cmp = fcmp ogt <16 x float> %val1, %val21908; CHECK: cost of 4 for instruction:   %sel = select <16 x i1> %cmp, <16 x float> %val3, <16 x float> %val41909}1910 1911define <16 x double> @fun173(<16 x float> %val1, <16 x float> %val2,1912                             <16 x double> %val3, <16 x double> %val4) {1913  %cmp = fcmp ogt <16 x float> %val1, %val21914  %sel = select <16 x i1> %cmp, <16 x double> %val3, <16 x double> %val41915  ret <16 x double> %sel1916 1917; CHECK: fun1731918; CHECK: cost of 40 for instruction:   %cmp = fcmp ogt <16 x float> %val1, %val21919; CHECK: cost of 23 for instruction:   %sel = select <16 x i1> %cmp, <16 x double> %val3, <16 x double> %val41920}1921 1922define <16 x i8> @fun174(<16 x double> %val1, <16 x double> %val2,1923                         <16 x i8> %val3, <16 x i8> %val4) {1924  %cmp = fcmp ogt <16 x double> %val1, %val21925  %sel = select <16 x i1> %cmp, <16 x i8> %val3, <16 x i8> %val41926  ret <16 x i8> %sel1927 1928; CHECK: fun1741929; CHECK: cost of 8 for instruction:   %cmp = fcmp ogt <16 x double> %val1, %val21930; CHECK: cost of 8 for instruction:   %sel = select <16 x i1> %cmp, <16 x i8> %val3, <16 x i8> %val41931}1932 1933define <16 x i16> @fun175(<16 x double> %val1, <16 x double> %val2,1934                          <16 x i16> %val3, <16 x i16> %val4) {1935  %cmp = fcmp ogt <16 x double> %val1, %val21936  %sel = select <16 x i1> %cmp, <16 x i16> %val3, <16 x i16> %val41937  ret <16 x i16> %sel1938 1939; CHECK: fun1751940; CHECK: cost of 8 for instruction:   %cmp = fcmp ogt <16 x double> %val1, %val21941; CHECK: cost of 8 for instruction:   %sel = select <16 x i1> %cmp, <16 x i16> %val3, <16 x i16> %val41942}1943 1944define <16 x i32> @fun176(<16 x double> %val1, <16 x double> %val2,1945                          <16 x i32> %val3, <16 x i32> %val4) {1946  %cmp = fcmp ogt <16 x double> %val1, %val21947  %sel = select <16 x i1> %cmp, <16 x i32> %val3, <16 x i32> %val41948  ret <16 x i32> %sel1949 1950; CHECK: fun1761951; CHECK: cost of 8 for instruction:   %cmp = fcmp ogt <16 x double> %val1, %val21952; CHECK: cost of 8 for instruction:   %sel = select <16 x i1> %cmp, <16 x i32> %val3, <16 x i32> %val41953}1954 1955define <16 x i64> @fun177(<16 x double> %val1, <16 x double> %val2,1956                          <16 x i64> %val3, <16 x i64> %val4) {1957  %cmp = fcmp ogt <16 x double> %val1, %val21958  %sel = select <16 x i1> %cmp, <16 x i64> %val3, <16 x i64> %val41959  ret <16 x i64> %sel1960 1961; CHECK: fun1771962; CHECK: cost of 8 for instruction:   %cmp = fcmp ogt <16 x double> %val1, %val21963; CHECK: cost of 8 for instruction:   %sel = select <16 x i1> %cmp, <16 x i64> %val3, <16 x i64> %val41964}1965 1966define <16 x float> @fun178(<16 x double> %val1, <16 x double> %val2,1967                            <16 x float> %val3, <16 x float> %val4) {1968  %cmp = fcmp ogt <16 x double> %val1, %val21969  %sel = select <16 x i1> %cmp, <16 x float> %val3, <16 x float> %val41970  ret <16 x float> %sel1971 1972; CHECK: fun1781973; CHECK: cost of 8 for instruction:   %cmp = fcmp ogt <16 x double> %val1, %val21974; CHECK: cost of 8 for instruction:   %sel = select <16 x i1> %cmp, <16 x float> %val3, <16 x float> %val41975}1976 1977define <16 x double> @fun179(<16 x double> %val1, <16 x double> %val2,1978                             <16 x double> %val3, <16 x double> %val4) {1979  %cmp = fcmp ogt <16 x double> %val1, %val21980  %sel = select <16 x i1> %cmp, <16 x double> %val3, <16 x double> %val41981  ret <16 x double> %sel1982 1983; CHECK: fun1791984; CHECK: cost of 8 for instruction:   %cmp = fcmp ogt <16 x double> %val1, %val21985; CHECK: cost of 8 for instruction:   %sel = select <16 x i1> %cmp, <16 x double> %val3, <16 x double> %val41986}1987 1988