1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py 2; RUN: opt < %s -instcombine -S | FileCheck %s 3 4define i1 @auto_gen_0(double %a, double %b) { 5; CHECK-LABEL: @auto_gen_0( 6; CHECK-NEXT: ret i1 false 7; 8 %cmp = fcmp false double %a, %b 9 %cmp1 = fcmp false double %a, %b 10 %retval = or i1 %cmp, %cmp1 11 ret i1 %retval 12} 13 14define i1 @auto_gen_1(double %a, double %b) { 15; CHECK-LABEL: @auto_gen_1( 16; CHECK-NEXT: [[CMP:%.*]] = fcmp oeq double %a, %b 17; CHECK-NEXT: ret i1 [[CMP]] 18; 19 %cmp = fcmp oeq double %a, %b 20 %cmp1 = fcmp false double %a, %b 21 %retval = or i1 %cmp, %cmp1 22 ret i1 %retval 23} 24 25define i1 @auto_gen_2(double %a, double %b) { 26; CHECK-LABEL: @auto_gen_2( 27; CHECK-NEXT: [[TMP1:%.*]] = fcmp oeq double %a, %b 28; CHECK-NEXT: ret i1 [[TMP1]] 29; 30 %cmp = fcmp oeq double %a, %b 31 %cmp1 = fcmp oeq double %a, %b 32 %retval = or i1 %cmp, %cmp1 33 ret i1 %retval 34} 35 36define i1 @auto_gen_3(double %a, double %b) { 37; CHECK-LABEL: @auto_gen_3( 38; CHECK-NEXT: [[CMP:%.*]] = fcmp ogt double %a, %b 39; CHECK-NEXT: ret i1 [[CMP]] 40; 41 %cmp = fcmp ogt double %a, %b 42 %cmp1 = fcmp false double %a, %b 43 %retval = or i1 %cmp, %cmp1 44 ret i1 %retval 45} 46 47define i1 @auto_gen_4(double %a, double %b) { 48; CHECK-LABEL: @auto_gen_4( 49; CHECK-NEXT: [[TMP1:%.*]] = fcmp oge double %a, %b 50; CHECK-NEXT: ret i1 [[TMP1]] 51; 52 %cmp = fcmp ogt double %a, %b 53 %cmp1 = fcmp oeq double %a, %b 54 %retval = or i1 %cmp, %cmp1 55 ret i1 %retval 56} 57 58define i1 @auto_gen_5(double %a, double %b) { 59; CHECK-LABEL: @auto_gen_5( 60; CHECK-NEXT: [[TMP1:%.*]] = fcmp ogt double %a, %b 61; CHECK-NEXT: ret i1 [[TMP1]] 62; 63 %cmp = fcmp ogt double %a, %b 64 %cmp1 = fcmp ogt double %a, %b 65 %retval = or i1 %cmp, %cmp1 66 ret i1 %retval 67} 68 69define i1 @auto_gen_6(double %a, double %b) { 70; CHECK-LABEL: @auto_gen_6( 71; CHECK-NEXT: [[CMP:%.*]] = fcmp oge double %a, %b 72; CHECK-NEXT: ret i1 [[CMP]] 73; 74 %cmp = fcmp oge double %a, %b 75 %cmp1 = fcmp false double %a, %b 76 %retval = or i1 %cmp, %cmp1 77 ret i1 %retval 78} 79 80define i1 @auto_gen_7(double %a, double %b) { 81; CHECK-LABEL: @auto_gen_7( 82; CHECK-NEXT: [[TMP1:%.*]] = fcmp oge double %a, %b 83; CHECK-NEXT: ret i1 [[TMP1]] 84; 85 %cmp = fcmp oge double %a, %b 86 %cmp1 = fcmp oeq double %a, %b 87 %retval = or i1 %cmp, %cmp1 88 ret i1 %retval 89} 90 91define i1 @auto_gen_8(double %a, double %b) { 92; CHECK-LABEL: @auto_gen_8( 93; CHECK-NEXT: [[TMP1:%.*]] = fcmp oge double %a, %b 94; CHECK-NEXT: ret i1 [[TMP1]] 95; 96 %cmp = fcmp oge double %a, %b 97 %cmp1 = fcmp ogt double %a, %b 98 %retval = or i1 %cmp, %cmp1 99 ret i1 %retval 100} 101 102define i1 @auto_gen_9(double %a, double %b) { 103; CHECK-LABEL: @auto_gen_9( 104; CHECK-NEXT: [[TMP1:%.*]] = fcmp oge double %a, %b 105; CHECK-NEXT: ret i1 [[TMP1]] 106; 107 %cmp = fcmp oge double %a, %b 108 %cmp1 = fcmp oge double %a, %b 109 %retval = or i1 %cmp, %cmp1 110 ret i1 %retval 111} 112 113define i1 @auto_gen_10(double %a, double %b) { 114; CHECK-LABEL: @auto_gen_10( 115; CHECK-NEXT: [[CMP:%.*]] = fcmp olt double %a, %b 116; CHECK-NEXT: ret i1 [[CMP]] 117; 118 %cmp = fcmp olt double %a, %b 119 %cmp1 = fcmp false double %a, %b 120 %retval = or i1 %cmp, %cmp1 121 ret i1 %retval 122} 123 124define i1 @auto_gen_11(double %a, double %b) { 125; CHECK-LABEL: @auto_gen_11( 126; CHECK-NEXT: [[TMP1:%.*]] = fcmp ole double %a, %b 127; CHECK-NEXT: ret i1 [[TMP1]] 128; 129 %cmp = fcmp olt double %a, %b 130 %cmp1 = fcmp oeq double %a, %b 131 %retval = or i1 %cmp, %cmp1 132 ret i1 %retval 133} 134 135define i1 @auto_gen_12(double %a, double %b) { 136; CHECK-LABEL: @auto_gen_12( 137; CHECK-NEXT: [[TMP1:%.*]] = fcmp one double %a, %b 138; CHECK-NEXT: ret i1 [[TMP1]] 139; 140 %cmp = fcmp olt double %a, %b 141 %cmp1 = fcmp ogt double %a, %b 142 %retval = or i1 %cmp, %cmp1 143 ret i1 %retval 144} 145 146define i1 @auto_gen_13(double %a, double %b) { 147; CHECK-LABEL: @auto_gen_13( 148; CHECK-NEXT: [[TMP1:%.*]] = fcmp ord double %a, %b 149; CHECK-NEXT: ret i1 [[TMP1]] 150; 151 %cmp = fcmp olt double %a, %b 152 %cmp1 = fcmp oge double %a, %b 153 %retval = or i1 %cmp, %cmp1 154 ret i1 %retval 155} 156 157define i1 @auto_gen_14(double %a, double %b) { 158; CHECK-LABEL: @auto_gen_14( 159; CHECK-NEXT: [[TMP1:%.*]] = fcmp olt double %a, %b 160; CHECK-NEXT: ret i1 [[TMP1]] 161; 162 %cmp = fcmp olt double %a, %b 163 %cmp1 = fcmp olt double %a, %b 164 %retval = or i1 %cmp, %cmp1 165 ret i1 %retval 166} 167 168define i1 @auto_gen_15(double %a, double %b) { 169; CHECK-LABEL: @auto_gen_15( 170; CHECK-NEXT: [[CMP:%.*]] = fcmp ole double %a, %b 171; CHECK-NEXT: ret i1 [[CMP]] 172; 173 %cmp = fcmp ole double %a, %b 174 %cmp1 = fcmp false double %a, %b 175 %retval = or i1 %cmp, %cmp1 176 ret i1 %retval 177} 178 179define i1 @auto_gen_16(double %a, double %b) { 180; CHECK-LABEL: @auto_gen_16( 181; CHECK-NEXT: [[TMP1:%.*]] = fcmp ole double %a, %b 182; CHECK-NEXT: ret i1 [[TMP1]] 183; 184 %cmp = fcmp ole double %a, %b 185 %cmp1 = fcmp oeq double %a, %b 186 %retval = or i1 %cmp, %cmp1 187 ret i1 %retval 188} 189 190define i1 @auto_gen_17(double %a, double %b) { 191; CHECK-LABEL: @auto_gen_17( 192; CHECK-NEXT: [[TMP1:%.*]] = fcmp ord double %a, %b 193; CHECK-NEXT: ret i1 [[TMP1]] 194; 195 %cmp = fcmp ole double %a, %b 196 %cmp1 = fcmp ogt double %a, %b 197 %retval = or i1 %cmp, %cmp1 198 ret i1 %retval 199} 200 201define i1 @auto_gen_18(double %a, double %b) { 202; CHECK-LABEL: @auto_gen_18( 203; CHECK-NEXT: [[TMP1:%.*]] = fcmp ord double %a, %b 204; CHECK-NEXT: ret i1 [[TMP1]] 205; 206 %cmp = fcmp ole double %a, %b 207 %cmp1 = fcmp oge double %a, %b 208 %retval = or i1 %cmp, %cmp1 209 ret i1 %retval 210} 211 212define i1 @auto_gen_19(double %a, double %b) { 213; CHECK-LABEL: @auto_gen_19( 214; CHECK-NEXT: [[TMP1:%.*]] = fcmp ole double %a, %b 215; CHECK-NEXT: ret i1 [[TMP1]] 216; 217 %cmp = fcmp ole double %a, %b 218 %cmp1 = fcmp olt double %a, %b 219 %retval = or i1 %cmp, %cmp1 220 ret i1 %retval 221} 222 223define i1 @auto_gen_20(double %a, double %b) { 224; CHECK-LABEL: @auto_gen_20( 225; CHECK-NEXT: [[TMP1:%.*]] = fcmp ole double %a, %b 226; CHECK-NEXT: ret i1 [[TMP1]] 227; 228 %cmp = fcmp ole double %a, %b 229 %cmp1 = fcmp ole double %a, %b 230 %retval = or i1 %cmp, %cmp1 231 ret i1 %retval 232} 233 234define i1 @auto_gen_21(double %a, double %b) { 235; CHECK-LABEL: @auto_gen_21( 236; CHECK-NEXT: [[CMP:%.*]] = fcmp one double %a, %b 237; CHECK-NEXT: ret i1 [[CMP]] 238; 239 %cmp = fcmp one double %a, %b 240 %cmp1 = fcmp false double %a, %b 241 %retval = or i1 %cmp, %cmp1 242 ret i1 %retval 243} 244 245define i1 @auto_gen_22(double %a, double %b) { 246; CHECK-LABEL: @auto_gen_22( 247; CHECK-NEXT: [[TMP1:%.*]] = fcmp ord double %a, %b 248; CHECK-NEXT: ret i1 [[TMP1]] 249; 250 %cmp = fcmp one double %a, %b 251 %cmp1 = fcmp oeq double %a, %b 252 %retval = or i1 %cmp, %cmp1 253 ret i1 %retval 254} 255 256define i1 @auto_gen_23(double %a, double %b) { 257; CHECK-LABEL: @auto_gen_23( 258; CHECK-NEXT: [[TMP1:%.*]] = fcmp one double %a, %b 259; CHECK-NEXT: ret i1 [[TMP1]] 260; 261 %cmp = fcmp one double %a, %b 262 %cmp1 = fcmp ogt double %a, %b 263 %retval = or i1 %cmp, %cmp1 264 ret i1 %retval 265} 266 267define i1 @auto_gen_24(double %a, double %b) { 268; CHECK-LABEL: @auto_gen_24( 269; CHECK-NEXT: [[TMP1:%.*]] = fcmp ord double %a, %b 270; CHECK-NEXT: ret i1 [[TMP1]] 271; 272 %cmp = fcmp one double %a, %b 273 %cmp1 = fcmp oge double %a, %b 274 %retval = or i1 %cmp, %cmp1 275 ret i1 %retval 276} 277 278define i1 @auto_gen_25(double %a, double %b) { 279; CHECK-LABEL: @auto_gen_25( 280; CHECK-NEXT: [[TMP1:%.*]] = fcmp one double %a, %b 281; CHECK-NEXT: ret i1 [[TMP1]] 282; 283 %cmp = fcmp one double %a, %b 284 %cmp1 = fcmp olt double %a, %b 285 %retval = or i1 %cmp, %cmp1 286 ret i1 %retval 287} 288 289define i1 @auto_gen_26(double %a, double %b) { 290; CHECK-LABEL: @auto_gen_26( 291; CHECK-NEXT: [[TMP1:%.*]] = fcmp ord double %a, %b 292; CHECK-NEXT: ret i1 [[TMP1]] 293; 294 %cmp = fcmp one double %a, %b 295 %cmp1 = fcmp ole double %a, %b 296 %retval = or i1 %cmp, %cmp1 297 ret i1 %retval 298} 299 300define i1 @auto_gen_27(double %a, double %b) { 301; CHECK-LABEL: @auto_gen_27( 302; CHECK-NEXT: [[TMP1:%.*]] = fcmp one double %a, %b 303; CHECK-NEXT: ret i1 [[TMP1]] 304; 305 %cmp = fcmp one double %a, %b 306 %cmp1 = fcmp one double %a, %b 307 %retval = or i1 %cmp, %cmp1 308 ret i1 %retval 309} 310 311define i1 @auto_gen_28(double %a, double %b) { 312; CHECK-LABEL: @auto_gen_28( 313; CHECK-NEXT: [[CMP:%.*]] = fcmp ord double %a, %b 314; CHECK-NEXT: ret i1 [[CMP]] 315; 316 %cmp = fcmp ord double %a, %b 317 %cmp1 = fcmp false double %a, %b 318 %retval = or i1 %cmp, %cmp1 319 ret i1 %retval 320} 321 322define i1 @auto_gen_29(double %a, double %b) { 323; CHECK-LABEL: @auto_gen_29( 324; CHECK-NEXT: [[TMP1:%.*]] = fcmp ord double %a, %b 325; CHECK-NEXT: ret i1 [[TMP1]] 326; 327 %cmp = fcmp ord double %a, %b 328 %cmp1 = fcmp oeq double %a, %b 329 %retval = or i1 %cmp, %cmp1 330 ret i1 %retval 331} 332 333define i1 @auto_gen_30(double %a, double %b) { 334; CHECK-LABEL: @auto_gen_30( 335; CHECK-NEXT: [[TMP1:%.*]] = fcmp ord double %a, %b 336; CHECK-NEXT: ret i1 [[TMP1]] 337; 338 %cmp = fcmp ord double %a, %b 339 %cmp1 = fcmp ogt double %a, %b 340 %retval = or i1 %cmp, %cmp1 341 ret i1 %retval 342} 343 344define i1 @auto_gen_31(double %a, double %b) { 345; CHECK-LABEL: @auto_gen_31( 346; CHECK-NEXT: [[TMP1:%.*]] = fcmp ord double %a, %b 347; CHECK-NEXT: ret i1 [[TMP1]] 348; 349 %cmp = fcmp ord double %a, %b 350 %cmp1 = fcmp oge double %a, %b 351 %retval = or i1 %cmp, %cmp1 352 ret i1 %retval 353} 354 355define i1 @auto_gen_32(double %a, double %b) { 356; CHECK-LABEL: @auto_gen_32( 357; CHECK-NEXT: [[TMP1:%.*]] = fcmp ord double %a, %b 358; CHECK-NEXT: ret i1 [[TMP1]] 359; 360 %cmp = fcmp ord double %a, %b 361 %cmp1 = fcmp olt double %a, %b 362 %retval = or i1 %cmp, %cmp1 363 ret i1 %retval 364} 365 366define i1 @auto_gen_33(double %a, double %b) { 367; CHECK-LABEL: @auto_gen_33( 368; CHECK-NEXT: [[TMP1:%.*]] = fcmp ord double %a, %b 369; CHECK-NEXT: ret i1 [[TMP1]] 370; 371 %cmp = fcmp ord double %a, %b 372 %cmp1 = fcmp ole double %a, %b 373 %retval = or i1 %cmp, %cmp1 374 ret i1 %retval 375} 376 377define i1 @auto_gen_34(double %a, double %b) { 378; CHECK-LABEL: @auto_gen_34( 379; CHECK-NEXT: [[TMP1:%.*]] = fcmp ord double %a, %b 380; CHECK-NEXT: ret i1 [[TMP1]] 381; 382 %cmp = fcmp ord double %a, %b 383 %cmp1 = fcmp one double %a, %b 384 %retval = or i1 %cmp, %cmp1 385 ret i1 %retval 386} 387 388define i1 @auto_gen_35(double %a, double %b) { 389; CHECK-LABEL: @auto_gen_35( 390; CHECK-NEXT: [[TMP1:%.*]] = fcmp ord double %a, %b 391; CHECK-NEXT: ret i1 [[TMP1]] 392; 393 %cmp = fcmp ord double %a, %b 394 %cmp1 = fcmp ord double %a, %b 395 %retval = or i1 %cmp, %cmp1 396 ret i1 %retval 397} 398 399define i1 @auto_gen_36(double %a, double %b) { 400; CHECK-LABEL: @auto_gen_36( 401; CHECK-NEXT: [[CMP:%.*]] = fcmp ueq double %a, %b 402; CHECK-NEXT: ret i1 [[CMP]] 403; 404 %cmp = fcmp ueq double %a, %b 405 %cmp1 = fcmp false double %a, %b 406 %retval = or i1 %cmp, %cmp1 407 ret i1 %retval 408} 409 410define i1 @auto_gen_37(double %a, double %b) { 411; CHECK-LABEL: @auto_gen_37( 412; CHECK-NEXT: [[TMP1:%.*]] = fcmp ueq double %a, %b 413; CHECK-NEXT: ret i1 [[TMP1]] 414; 415 %cmp = fcmp ueq double %a, %b 416 %cmp1 = fcmp oeq double %a, %b 417 %retval = or i1 %cmp, %cmp1 418 ret i1 %retval 419} 420 421define i1 @auto_gen_38(double %a, double %b) { 422; CHECK-LABEL: @auto_gen_38( 423; CHECK-NEXT: [[TMP1:%.*]] = fcmp uge double %a, %b 424; CHECK-NEXT: ret i1 [[TMP1]] 425; 426 %cmp = fcmp ueq double %a, %b 427 %cmp1 = fcmp ogt double %a, %b 428 %retval = or i1 %cmp, %cmp1 429 ret i1 %retval 430} 431 432define i1 @auto_gen_39(double %a, double %b) { 433; CHECK-LABEL: @auto_gen_39( 434; CHECK-NEXT: [[TMP1:%.*]] = fcmp uge double %a, %b 435; CHECK-NEXT: ret i1 [[TMP1]] 436; 437 %cmp = fcmp ueq double %a, %b 438 %cmp1 = fcmp oge double %a, %b 439 %retval = or i1 %cmp, %cmp1 440 ret i1 %retval 441} 442 443define i1 @auto_gen_40(double %a, double %b) { 444; CHECK-LABEL: @auto_gen_40( 445; CHECK-NEXT: [[TMP1:%.*]] = fcmp ule double %a, %b 446; CHECK-NEXT: ret i1 [[TMP1]] 447; 448 %cmp = fcmp ueq double %a, %b 449 %cmp1 = fcmp olt double %a, %b 450 %retval = or i1 %cmp, %cmp1 451 ret i1 %retval 452} 453 454define i1 @auto_gen_41(double %a, double %b) { 455; CHECK-LABEL: @auto_gen_41( 456; CHECK-NEXT: [[TMP1:%.*]] = fcmp ule double %a, %b 457; CHECK-NEXT: ret i1 [[TMP1]] 458; 459 %cmp = fcmp ueq double %a, %b 460 %cmp1 = fcmp ole double %a, %b 461 %retval = or i1 %cmp, %cmp1 462 ret i1 %retval 463} 464 465define i1 @auto_gen_42(double %a, double %b) { 466; CHECK-LABEL: @auto_gen_42( 467; CHECK-NEXT: ret i1 true 468; 469 %cmp = fcmp ueq double %a, %b 470 %cmp1 = fcmp one double %a, %b 471 %retval = or i1 %cmp, %cmp1 472 ret i1 %retval 473} 474 475define i1 @auto_gen_43(double %a, double %b) { 476; CHECK-LABEL: @auto_gen_43( 477; CHECK-NEXT: ret i1 true 478; 479 %cmp = fcmp ueq double %a, %b 480 %cmp1 = fcmp ord double %a, %b 481 %retval = or i1 %cmp, %cmp1 482 ret i1 %retval 483} 484 485define i1 @auto_gen_44(double %a, double %b) { 486; CHECK-LABEL: @auto_gen_44( 487; CHECK-NEXT: [[TMP1:%.*]] = fcmp ueq double %a, %b 488; CHECK-NEXT: ret i1 [[TMP1]] 489; 490 %cmp = fcmp ueq double %a, %b 491 %cmp1 = fcmp ueq double %a, %b 492 %retval = or i1 %cmp, %cmp1 493 ret i1 %retval 494} 495 496define i1 @auto_gen_45(double %a, double %b) { 497; CHECK-LABEL: @auto_gen_45( 498; CHECK-NEXT: [[CMP:%.*]] = fcmp ugt double %a, %b 499; CHECK-NEXT: ret i1 [[CMP]] 500; 501 %cmp = fcmp ugt double %a, %b 502 %cmp1 = fcmp false double %a, %b 503 %retval = or i1 %cmp, %cmp1 504 ret i1 %retval 505} 506 507define i1 @auto_gen_46(double %a, double %b) { 508; CHECK-LABEL: @auto_gen_46( 509; CHECK-NEXT: [[TMP1:%.*]] = fcmp uge double %a, %b 510; CHECK-NEXT: ret i1 [[TMP1]] 511; 512 %cmp = fcmp ugt double %a, %b 513 %cmp1 = fcmp oeq double %a, %b 514 %retval = or i1 %cmp, %cmp1 515 ret i1 %retval 516} 517 518define i1 @auto_gen_47(double %a, double %b) { 519; CHECK-LABEL: @auto_gen_47( 520; CHECK-NEXT: [[TMP1:%.*]] = fcmp ugt double %a, %b 521; CHECK-NEXT: ret i1 [[TMP1]] 522; 523 %cmp = fcmp ugt double %a, %b 524 %cmp1 = fcmp ogt double %a, %b 525 %retval = or i1 %cmp, %cmp1 526 ret i1 %retval 527} 528 529define i1 @auto_gen_48(double %a, double %b) { 530; CHECK-LABEL: @auto_gen_48( 531; CHECK-NEXT: [[TMP1:%.*]] = fcmp uge double %a, %b 532; CHECK-NEXT: ret i1 [[TMP1]] 533; 534 %cmp = fcmp ugt double %a, %b 535 %cmp1 = fcmp oge double %a, %b 536 %retval = or i1 %cmp, %cmp1 537 ret i1 %retval 538} 539 540define i1 @auto_gen_49(double %a, double %b) { 541; CHECK-LABEL: @auto_gen_49( 542; CHECK-NEXT: [[TMP1:%.*]] = fcmp une double %a, %b 543; CHECK-NEXT: ret i1 [[TMP1]] 544; 545 %cmp = fcmp ugt double %a, %b 546 %cmp1 = fcmp olt double %a, %b 547 %retval = or i1 %cmp, %cmp1 548 ret i1 %retval 549} 550 551define i1 @auto_gen_50(double %a, double %b) { 552; CHECK-LABEL: @auto_gen_50( 553; CHECK-NEXT: ret i1 true 554; 555 %cmp = fcmp ugt double %a, %b 556 %cmp1 = fcmp ole double %a, %b 557 %retval = or i1 %cmp, %cmp1 558 ret i1 %retval 559} 560 561define i1 @auto_gen_51(double %a, double %b) { 562; CHECK-LABEL: @auto_gen_51( 563; CHECK-NEXT: [[TMP1:%.*]] = fcmp une double %a, %b 564; CHECK-NEXT: ret i1 [[TMP1]] 565; 566 %cmp = fcmp ugt double %a, %b 567 %cmp1 = fcmp one double %a, %b 568 %retval = or i1 %cmp, %cmp1 569 ret i1 %retval 570} 571 572define i1 @auto_gen_52(double %a, double %b) { 573; CHECK-LABEL: @auto_gen_52( 574; CHECK-NEXT: ret i1 true 575; 576 %cmp = fcmp ugt double %a, %b 577 %cmp1 = fcmp ord double %a, %b 578 %retval = or i1 %cmp, %cmp1 579 ret i1 %retval 580} 581 582define i1 @auto_gen_53(double %a, double %b) { 583; CHECK-LABEL: @auto_gen_53( 584; CHECK-NEXT: [[TMP1:%.*]] = fcmp uge double %a, %b 585; CHECK-NEXT: ret i1 [[TMP1]] 586; 587 %cmp = fcmp ugt double %a, %b 588 %cmp1 = fcmp ueq double %a, %b 589 %retval = or i1 %cmp, %cmp1 590 ret i1 %retval 591} 592 593define i1 @auto_gen_54(double %a, double %b) { 594; CHECK-LABEL: @auto_gen_54( 595; CHECK-NEXT: [[TMP1:%.*]] = fcmp ugt double %a, %b 596; CHECK-NEXT: ret i1 [[TMP1]] 597; 598 %cmp = fcmp ugt double %a, %b 599 %cmp1 = fcmp ugt double %a, %b 600 %retval = or i1 %cmp, %cmp1 601 ret i1 %retval 602} 603 604define i1 @auto_gen_55(double %a, double %b) { 605; CHECK-LABEL: @auto_gen_55( 606; CHECK-NEXT: [[CMP:%.*]] = fcmp uge double %a, %b 607; CHECK-NEXT: ret i1 [[CMP]] 608; 609 %cmp = fcmp uge double %a, %b 610 %cmp1 = fcmp false double %a, %b 611 %retval = or i1 %cmp, %cmp1 612 ret i1 %retval 613} 614 615define i1 @auto_gen_56(double %a, double %b) { 616; CHECK-LABEL: @auto_gen_56( 617; CHECK-NEXT: [[TMP1:%.*]] = fcmp uge double %a, %b 618; CHECK-NEXT: ret i1 [[TMP1]] 619; 620 %cmp = fcmp uge double %a, %b 621 %cmp1 = fcmp oeq double %a, %b 622 %retval = or i1 %cmp, %cmp1 623 ret i1 %retval 624} 625 626define i1 @auto_gen_57(double %a, double %b) { 627; CHECK-LABEL: @auto_gen_57( 628; CHECK-NEXT: [[TMP1:%.*]] = fcmp uge double %a, %b 629; CHECK-NEXT: ret i1 [[TMP1]] 630; 631 %cmp = fcmp uge double %a, %b 632 %cmp1 = fcmp ogt double %a, %b 633 %retval = or i1 %cmp, %cmp1 634 ret i1 %retval 635} 636 637define i1 @auto_gen_58(double %a, double %b) { 638; CHECK-LABEL: @auto_gen_58( 639; CHECK-NEXT: [[TMP1:%.*]] = fcmp uge double %a, %b 640; CHECK-NEXT: ret i1 [[TMP1]] 641; 642 %cmp = fcmp uge double %a, %b 643 %cmp1 = fcmp oge double %a, %b 644 %retval = or i1 %cmp, %cmp1 645 ret i1 %retval 646} 647 648define i1 @auto_gen_59(double %a, double %b) { 649; CHECK-LABEL: @auto_gen_59( 650; CHECK-NEXT: ret i1 true 651; 652 %cmp = fcmp uge double %a, %b 653 %cmp1 = fcmp olt double %a, %b 654 %retval = or i1 %cmp, %cmp1 655 ret i1 %retval 656} 657 658define i1 @auto_gen_60(double %a, double %b) { 659; CHECK-LABEL: @auto_gen_60( 660; CHECK-NEXT: ret i1 true 661; 662 %cmp = fcmp uge double %a, %b 663 %cmp1 = fcmp ole double %a, %b 664 %retval = or i1 %cmp, %cmp1 665 ret i1 %retval 666} 667 668define i1 @auto_gen_61(double %a, double %b) { 669; CHECK-LABEL: @auto_gen_61( 670; CHECK-NEXT: ret i1 true 671; 672 %cmp = fcmp uge double %a, %b 673 %cmp1 = fcmp one double %a, %b 674 %retval = or i1 %cmp, %cmp1 675 ret i1 %retval 676} 677 678define i1 @auto_gen_62(double %a, double %b) { 679; CHECK-LABEL: @auto_gen_62( 680; CHECK-NEXT: ret i1 true 681; 682 %cmp = fcmp uge double %a, %b 683 %cmp1 = fcmp ord double %a, %b 684 %retval = or i1 %cmp, %cmp1 685 ret i1 %retval 686} 687 688define i1 @auto_gen_63(double %a, double %b) { 689; CHECK-LABEL: @auto_gen_63( 690; CHECK-NEXT: [[TMP1:%.*]] = fcmp uge double %a, %b 691; CHECK-NEXT: ret i1 [[TMP1]] 692; 693 %cmp = fcmp uge double %a, %b 694 %cmp1 = fcmp ueq double %a, %b 695 %retval = or i1 %cmp, %cmp1 696 ret i1 %retval 697} 698 699define i1 @auto_gen_64(double %a, double %b) { 700; CHECK-LABEL: @auto_gen_64( 701; CHECK-NEXT: [[TMP1:%.*]] = fcmp uge double %a, %b 702; CHECK-NEXT: ret i1 [[TMP1]] 703; 704 %cmp = fcmp uge double %a, %b 705 %cmp1 = fcmp ugt double %a, %b 706 %retval = or i1 %cmp, %cmp1 707 ret i1 %retval 708} 709 710define i1 @auto_gen_65(double %a, double %b) { 711; CHECK-LABEL: @auto_gen_65( 712; CHECK-NEXT: [[TMP1:%.*]] = fcmp uge double %a, %b 713; CHECK-NEXT: ret i1 [[TMP1]] 714; 715 %cmp = fcmp uge double %a, %b 716 %cmp1 = fcmp uge double %a, %b 717 %retval = or i1 %cmp, %cmp1 718 ret i1 %retval 719} 720 721define i1 @auto_gen_66(double %a, double %b) { 722; CHECK-LABEL: @auto_gen_66( 723; CHECK-NEXT: [[CMP:%.*]] = fcmp ult double %a, %b 724; CHECK-NEXT: ret i1 [[CMP]] 725; 726 %cmp = fcmp ult double %a, %b 727 %cmp1 = fcmp false double %a, %b 728 %retval = or i1 %cmp, %cmp1 729 ret i1 %retval 730} 731 732define i1 @auto_gen_67(double %a, double %b) { 733; CHECK-LABEL: @auto_gen_67( 734; CHECK-NEXT: [[TMP1:%.*]] = fcmp ule double %a, %b 735; CHECK-NEXT: ret i1 [[TMP1]] 736; 737 %cmp = fcmp ult double %a, %b 738 %cmp1 = fcmp oeq double %a, %b 739 %retval = or i1 %cmp, %cmp1 740 ret i1 %retval 741} 742 743define i1 @auto_gen_68(double %a, double %b) { 744; CHECK-LABEL: @auto_gen_68( 745; CHECK-NEXT: [[TMP1:%.*]] = fcmp une double %a, %b 746; CHECK-NEXT: ret i1 [[TMP1]] 747; 748 %cmp = fcmp ult double %a, %b 749 %cmp1 = fcmp ogt double %a, %b 750 %retval = or i1 %cmp, %cmp1 751 ret i1 %retval 752} 753 754define i1 @auto_gen_69(double %a, double %b) { 755; CHECK-LABEL: @auto_gen_69( 756; CHECK-NEXT: ret i1 true 757; 758 %cmp = fcmp ult double %a, %b 759 %cmp1 = fcmp oge double %a, %b 760 %retval = or i1 %cmp, %cmp1 761 ret i1 %retval 762} 763 764define i1 @auto_gen_70(double %a, double %b) { 765; CHECK-LABEL: @auto_gen_70( 766; CHECK-NEXT: [[TMP1:%.*]] = fcmp ult double %a, %b 767; CHECK-NEXT: ret i1 [[TMP1]] 768; 769 %cmp = fcmp ult double %a, %b 770 %cmp1 = fcmp olt double %a, %b 771 %retval = or i1 %cmp, %cmp1 772 ret i1 %retval 773} 774 775define i1 @auto_gen_71(double %a, double %b) { 776; CHECK-LABEL: @auto_gen_71( 777; CHECK-NEXT: [[TMP1:%.*]] = fcmp ule double %a, %b 778; CHECK-NEXT: ret i1 [[TMP1]] 779; 780 %cmp = fcmp ult double %a, %b 781 %cmp1 = fcmp ole double %a, %b 782 %retval = or i1 %cmp, %cmp1 783 ret i1 %retval 784} 785 786define i1 @auto_gen_72(double %a, double %b) { 787; CHECK-LABEL: @auto_gen_72( 788; CHECK-NEXT: [[TMP1:%.*]] = fcmp une double %a, %b 789; CHECK-NEXT: ret i1 [[TMP1]] 790; 791 %cmp = fcmp ult double %a, %b 792 %cmp1 = fcmp one double %a, %b 793 %retval = or i1 %cmp, %cmp1 794 ret i1 %retval 795} 796 797define i1 @auto_gen_73(double %a, double %b) { 798; CHECK-LABEL: @auto_gen_73( 799; CHECK-NEXT: ret i1 true 800; 801 %cmp = fcmp ult double %a, %b 802 %cmp1 = fcmp ord double %a, %b 803 %retval = or i1 %cmp, %cmp1 804 ret i1 %retval 805} 806 807define i1 @auto_gen_74(double %a, double %b) { 808; CHECK-LABEL: @auto_gen_74( 809; CHECK-NEXT: [[TMP1:%.*]] = fcmp ule double %a, %b 810; CHECK-NEXT: ret i1 [[TMP1]] 811; 812 %cmp = fcmp ult double %a, %b 813 %cmp1 = fcmp ueq double %a, %b 814 %retval = or i1 %cmp, %cmp1 815 ret i1 %retval 816} 817 818define i1 @auto_gen_75(double %a, double %b) { 819; CHECK-LABEL: @auto_gen_75( 820; CHECK-NEXT: [[TMP1:%.*]] = fcmp une double %a, %b 821; CHECK-NEXT: ret i1 [[TMP1]] 822; 823 %cmp = fcmp ult double %a, %b 824 %cmp1 = fcmp ugt double %a, %b 825 %retval = or i1 %cmp, %cmp1 826 ret i1 %retval 827} 828 829define i1 @auto_gen_76(double %a, double %b) { 830; CHECK-LABEL: @auto_gen_76( 831; CHECK-NEXT: ret i1 true 832; 833 %cmp = fcmp ult double %a, %b 834 %cmp1 = fcmp uge double %a, %b 835 %retval = or i1 %cmp, %cmp1 836 ret i1 %retval 837} 838 839define i1 @auto_gen_77(double %a, double %b) { 840; CHECK-LABEL: @auto_gen_77( 841; CHECK-NEXT: [[TMP1:%.*]] = fcmp ult double %a, %b 842; CHECK-NEXT: ret i1 [[TMP1]] 843; 844 %cmp = fcmp ult double %a, %b 845 %cmp1 = fcmp ult double %a, %b 846 %retval = or i1 %cmp, %cmp1 847 ret i1 %retval 848} 849 850define i1 @auto_gen_78(double %a, double %b) { 851; CHECK-LABEL: @auto_gen_78( 852; CHECK-NEXT: [[CMP:%.*]] = fcmp ule double %a, %b 853; CHECK-NEXT: ret i1 [[CMP]] 854; 855 %cmp = fcmp ule double %a, %b 856 %cmp1 = fcmp false double %a, %b 857 %retval = or i1 %cmp, %cmp1 858 ret i1 %retval 859} 860 861define i1 @auto_gen_79(double %a, double %b) { 862; CHECK-LABEL: @auto_gen_79( 863; CHECK-NEXT: [[TMP1:%.*]] = fcmp ule double %a, %b 864; CHECK-NEXT: ret i1 [[TMP1]] 865; 866 %cmp = fcmp ule double %a, %b 867 %cmp1 = fcmp oeq double %a, %b 868 %retval = or i1 %cmp, %cmp1 869 ret i1 %retval 870} 871 872define i1 @auto_gen_80(double %a, double %b) { 873; CHECK-LABEL: @auto_gen_80( 874; CHECK-NEXT: ret i1 true 875; 876 %cmp = fcmp ule double %a, %b 877 %cmp1 = fcmp ogt double %a, %b 878 %retval = or i1 %cmp, %cmp1 879 ret i1 %retval 880} 881 882define i1 @auto_gen_81(double %a, double %b) { 883; CHECK-LABEL: @auto_gen_81( 884; CHECK-NEXT: ret i1 true 885; 886 %cmp = fcmp ule double %a, %b 887 %cmp1 = fcmp oge double %a, %b 888 %retval = or i1 %cmp, %cmp1 889 ret i1 %retval 890} 891 892define i1 @auto_gen_82(double %a, double %b) { 893; CHECK-LABEL: @auto_gen_82( 894; CHECK-NEXT: [[TMP1:%.*]] = fcmp ule double %a, %b 895; CHECK-NEXT: ret i1 [[TMP1]] 896; 897 %cmp = fcmp ule double %a, %b 898 %cmp1 = fcmp olt double %a, %b 899 %retval = or i1 %cmp, %cmp1 900 ret i1 %retval 901} 902 903define i1 @auto_gen_83(double %a, double %b) { 904; CHECK-LABEL: @auto_gen_83( 905; CHECK-NEXT: [[TMP1:%.*]] = fcmp ule double %a, %b 906; CHECK-NEXT: ret i1 [[TMP1]] 907; 908 %cmp = fcmp ule double %a, %b 909 %cmp1 = fcmp ole double %a, %b 910 %retval = or i1 %cmp, %cmp1 911 ret i1 %retval 912} 913 914define i1 @auto_gen_84(double %a, double %b) { 915; CHECK-LABEL: @auto_gen_84( 916; CHECK-NEXT: ret i1 true 917; 918 %cmp = fcmp ule double %a, %b 919 %cmp1 = fcmp one double %a, %b 920 %retval = or i1 %cmp, %cmp1 921 ret i1 %retval 922} 923 924define i1 @auto_gen_85(double %a, double %b) { 925; CHECK-LABEL: @auto_gen_85( 926; CHECK-NEXT: ret i1 true 927; 928 %cmp = fcmp ule double %a, %b 929 %cmp1 = fcmp ord double %a, %b 930 %retval = or i1 %cmp, %cmp1 931 ret i1 %retval 932} 933 934define i1 @auto_gen_86(double %a, double %b) { 935; CHECK-LABEL: @auto_gen_86( 936; CHECK-NEXT: [[TMP1:%.*]] = fcmp ule double %a, %b 937; CHECK-NEXT: ret i1 [[TMP1]] 938; 939 %cmp = fcmp ule double %a, %b 940 %cmp1 = fcmp ueq double %a, %b 941 %retval = or i1 %cmp, %cmp1 942 ret i1 %retval 943} 944 945define i1 @auto_gen_87(double %a, double %b) { 946; CHECK-LABEL: @auto_gen_87( 947; CHECK-NEXT: ret i1 true 948; 949 %cmp = fcmp ule double %a, %b 950 %cmp1 = fcmp ugt double %a, %b 951 %retval = or i1 %cmp, %cmp1 952 ret i1 %retval 953} 954 955define i1 @auto_gen_88(double %a, double %b) { 956; CHECK-LABEL: @auto_gen_88( 957; CHECK-NEXT: ret i1 true 958; 959 %cmp = fcmp ule double %a, %b 960 %cmp1 = fcmp uge double %a, %b 961 %retval = or i1 %cmp, %cmp1 962 ret i1 %retval 963} 964 965define i1 @auto_gen_89(double %a, double %b) { 966; CHECK-LABEL: @auto_gen_89( 967; CHECK-NEXT: [[TMP1:%.*]] = fcmp ule double %a, %b 968; CHECK-NEXT: ret i1 [[TMP1]] 969; 970 %cmp = fcmp ule double %a, %b 971 %cmp1 = fcmp ult double %a, %b 972 %retval = or i1 %cmp, %cmp1 973 ret i1 %retval 974} 975 976define i1 @auto_gen_90(double %a, double %b) { 977; CHECK-LABEL: @auto_gen_90( 978; CHECK-NEXT: [[TMP1:%.*]] = fcmp ule double %a, %b 979; CHECK-NEXT: ret i1 [[TMP1]] 980; 981 %cmp = fcmp ule double %a, %b 982 %cmp1 = fcmp ule double %a, %b 983 %retval = or i1 %cmp, %cmp1 984 ret i1 %retval 985} 986 987define i1 @auto_gen_91(double %a, double %b) { 988; CHECK-LABEL: @auto_gen_91( 989; CHECK-NEXT: [[CMP:%.*]] = fcmp une double %a, %b 990; CHECK-NEXT: ret i1 [[CMP]] 991; 992 %cmp = fcmp une double %a, %b 993 %cmp1 = fcmp false double %a, %b 994 %retval = or i1 %cmp, %cmp1 995 ret i1 %retval 996} 997 998define i1 @auto_gen_92(double %a, double %b) { 999; CHECK-LABEL: @auto_gen_92( 1000; CHECK-NEXT: ret i1 true 1001; 1002 %cmp = fcmp une double %a, %b 1003 %cmp1 = fcmp oeq double %a, %b 1004 %retval = or i1 %cmp, %cmp1 1005 ret i1 %retval 1006} 1007 1008define i1 @auto_gen_93(double %a, double %b) { 1009; CHECK-LABEL: @auto_gen_93( 1010; CHECK-NEXT: [[TMP1:%.*]] = fcmp une double %a, %b 1011; CHECK-NEXT: ret i1 [[TMP1]] 1012; 1013 %cmp = fcmp une double %a, %b 1014 %cmp1 = fcmp ogt double %a, %b 1015 %retval = or i1 %cmp, %cmp1 1016 ret i1 %retval 1017} 1018 1019define i1 @auto_gen_94(double %a, double %b) { 1020; CHECK-LABEL: @auto_gen_94( 1021; CHECK-NEXT: ret i1 true 1022; 1023 %cmp = fcmp une double %a, %b 1024 %cmp1 = fcmp oge double %a, %b 1025 %retval = or i1 %cmp, %cmp1 1026 ret i1 %retval 1027} 1028 1029define i1 @auto_gen_95(double %a, double %b) { 1030; CHECK-LABEL: @auto_gen_95( 1031; CHECK-NEXT: [[TMP1:%.*]] = fcmp une double %a, %b 1032; CHECK-NEXT: ret i1 [[TMP1]] 1033; 1034 %cmp = fcmp une double %a, %b 1035 %cmp1 = fcmp olt double %a, %b 1036 %retval = or i1 %cmp, %cmp1 1037 ret i1 %retval 1038} 1039 1040define i1 @auto_gen_96(double %a, double %b) { 1041; CHECK-LABEL: @auto_gen_96( 1042; CHECK-NEXT: ret i1 true 1043; 1044 %cmp = fcmp une double %a, %b 1045 %cmp1 = fcmp ole double %a, %b 1046 %retval = or i1 %cmp, %cmp1 1047 ret i1 %retval 1048} 1049 1050define i1 @auto_gen_97(double %a, double %b) { 1051; CHECK-LABEL: @auto_gen_97( 1052; CHECK-NEXT: [[TMP1:%.*]] = fcmp une double %a, %b 1053; CHECK-NEXT: ret i1 [[TMP1]] 1054; 1055 %cmp = fcmp une double %a, %b 1056 %cmp1 = fcmp one double %a, %b 1057 %retval = or i1 %cmp, %cmp1 1058 ret i1 %retval 1059} 1060 1061define i1 @auto_gen_98(double %a, double %b) { 1062; CHECK-LABEL: @auto_gen_98( 1063; CHECK-NEXT: ret i1 true 1064; 1065 %cmp = fcmp une double %a, %b 1066 %cmp1 = fcmp ord double %a, %b 1067 %retval = or i1 %cmp, %cmp1 1068 ret i1 %retval 1069} 1070 1071define i1 @auto_gen_99(double %a, double %b) { 1072; CHECK-LABEL: @auto_gen_99( 1073; CHECK-NEXT: ret i1 true 1074; 1075 %cmp = fcmp une double %a, %b 1076 %cmp1 = fcmp ueq double %a, %b 1077 %retval = or i1 %cmp, %cmp1 1078 ret i1 %retval 1079} 1080 1081define i1 @auto_gen_100(double %a, double %b) { 1082; CHECK-LABEL: @auto_gen_100( 1083; CHECK-NEXT: [[TMP1:%.*]] = fcmp une double %a, %b 1084; CHECK-NEXT: ret i1 [[TMP1]] 1085; 1086 %cmp = fcmp une double %a, %b 1087 %cmp1 = fcmp ugt double %a, %b 1088 %retval = or i1 %cmp, %cmp1 1089 ret i1 %retval 1090} 1091 1092define i1 @auto_gen_101(double %a, double %b) { 1093; CHECK-LABEL: @auto_gen_101( 1094; CHECK-NEXT: ret i1 true 1095; 1096 %cmp = fcmp une double %a, %b 1097 %cmp1 = fcmp uge double %a, %b 1098 %retval = or i1 %cmp, %cmp1 1099 ret i1 %retval 1100} 1101 1102define i1 @auto_gen_102(double %a, double %b) { 1103; CHECK-LABEL: @auto_gen_102( 1104; CHECK-NEXT: [[TMP1:%.*]] = fcmp une double %a, %b 1105; CHECK-NEXT: ret i1 [[TMP1]] 1106; 1107 %cmp = fcmp une double %a, %b 1108 %cmp1 = fcmp ult double %a, %b 1109 %retval = or i1 %cmp, %cmp1 1110 ret i1 %retval 1111} 1112 1113define i1 @auto_gen_103(double %a, double %b) { 1114; CHECK-LABEL: @auto_gen_103( 1115; CHECK-NEXT: ret i1 true 1116; 1117 %cmp = fcmp une double %a, %b 1118 %cmp1 = fcmp ule double %a, %b 1119 %retval = or i1 %cmp, %cmp1 1120 ret i1 %retval 1121} 1122 1123define i1 @auto_gen_104(double %a, double %b) { 1124; CHECK-LABEL: @auto_gen_104( 1125; CHECK-NEXT: [[TMP1:%.*]] = fcmp une double %a, %b 1126; CHECK-NEXT: ret i1 [[TMP1]] 1127; 1128 %cmp = fcmp une double %a, %b 1129 %cmp1 = fcmp une double %a, %b 1130 %retval = or i1 %cmp, %cmp1 1131 ret i1 %retval 1132} 1133 1134define i1 @auto_gen_105(double %a, double %b) { 1135; CHECK-LABEL: @auto_gen_105( 1136; CHECK-NEXT: [[CMP:%.*]] = fcmp uno double %a, %b 1137; CHECK-NEXT: ret i1 [[CMP]] 1138; 1139 %cmp = fcmp uno double %a, %b 1140 %cmp1 = fcmp false double %a, %b 1141 %retval = or i1 %cmp, %cmp1 1142 ret i1 %retval 1143} 1144 1145define i1 @auto_gen_106(double %a, double %b) { 1146; CHECK-LABEL: @auto_gen_106( 1147; CHECK-NEXT: [[TMP1:%.*]] = fcmp ueq double %a, %b 1148; CHECK-NEXT: ret i1 [[TMP1]] 1149; 1150 %cmp = fcmp uno double %a, %b 1151 %cmp1 = fcmp oeq double %a, %b 1152 %retval = or i1 %cmp, %cmp1 1153 ret i1 %retval 1154} 1155 1156define i1 @auto_gen_107(double %a, double %b) { 1157; CHECK-LABEL: @auto_gen_107( 1158; CHECK-NEXT: [[TMP1:%.*]] = fcmp ugt double %a, %b 1159; CHECK-NEXT: ret i1 [[TMP1]] 1160; 1161 %cmp = fcmp uno double %a, %b 1162 %cmp1 = fcmp ogt double %a, %b 1163 %retval = or i1 %cmp, %cmp1 1164 ret i1 %retval 1165} 1166 1167define i1 @auto_gen_108(double %a, double %b) { 1168; CHECK-LABEL: @auto_gen_108( 1169; CHECK-NEXT: [[TMP1:%.*]] = fcmp uge double %a, %b 1170; CHECK-NEXT: ret i1 [[TMP1]] 1171; 1172 %cmp = fcmp uno double %a, %b 1173 %cmp1 = fcmp oge double %a, %b 1174 %retval = or i1 %cmp, %cmp1 1175 ret i1 %retval 1176} 1177 1178define i1 @auto_gen_109(double %a, double %b) { 1179; CHECK-LABEL: @auto_gen_109( 1180; CHECK-NEXT: [[TMP1:%.*]] = fcmp ult double %a, %b 1181; CHECK-NEXT: ret i1 [[TMP1]] 1182; 1183 %cmp = fcmp uno double %a, %b 1184 %cmp1 = fcmp olt double %a, %b 1185 %retval = or i1 %cmp, %cmp1 1186 ret i1 %retval 1187} 1188 1189define i1 @auto_gen_110(double %a, double %b) { 1190; CHECK-LABEL: @auto_gen_110( 1191; CHECK-NEXT: [[TMP1:%.*]] = fcmp ule double %a, %b 1192; CHECK-NEXT: ret i1 [[TMP1]] 1193; 1194 %cmp = fcmp uno double %a, %b 1195 %cmp1 = fcmp ole double %a, %b 1196 %retval = or i1 %cmp, %cmp1 1197 ret i1 %retval 1198} 1199 1200define i1 @auto_gen_111(double %a, double %b) { 1201; CHECK-LABEL: @auto_gen_111( 1202; CHECK-NEXT: [[TMP1:%.*]] = fcmp une double %a, %b 1203; CHECK-NEXT: ret i1 [[TMP1]] 1204; 1205 %cmp = fcmp uno double %a, %b 1206 %cmp1 = fcmp one double %a, %b 1207 %retval = or i1 %cmp, %cmp1 1208 ret i1 %retval 1209} 1210 1211define i1 @auto_gen_112(double %a, double %b) { 1212; CHECK-LABEL: @auto_gen_112( 1213; CHECK-NEXT: ret i1 true 1214; 1215 %cmp = fcmp uno double %a, %b 1216 %cmp1 = fcmp ord double %a, %b 1217 %retval = or i1 %cmp, %cmp1 1218 ret i1 %retval 1219} 1220 1221define i1 @auto_gen_113(double %a, double %b) { 1222; CHECK-LABEL: @auto_gen_113( 1223; CHECK-NEXT: [[TMP1:%.*]] = fcmp ueq double %a, %b 1224; CHECK-NEXT: ret i1 [[TMP1]] 1225; 1226 %cmp = fcmp uno double %a, %b 1227 %cmp1 = fcmp ueq double %a, %b 1228 %retval = or i1 %cmp, %cmp1 1229 ret i1 %retval 1230} 1231 1232define i1 @auto_gen_114(double %a, double %b) { 1233; CHECK-LABEL: @auto_gen_114( 1234; CHECK-NEXT: [[TMP1:%.*]] = fcmp ugt double %a, %b 1235; CHECK-NEXT: ret i1 [[TMP1]] 1236; 1237 %cmp = fcmp uno double %a, %b 1238 %cmp1 = fcmp ugt double %a, %b 1239 %retval = or i1 %cmp, %cmp1 1240 ret i1 %retval 1241} 1242 1243define i1 @auto_gen_115(double %a, double %b) { 1244; CHECK-LABEL: @auto_gen_115( 1245; CHECK-NEXT: [[TMP1:%.*]] = fcmp uge double %a, %b 1246; CHECK-NEXT: ret i1 [[TMP1]] 1247; 1248 %cmp = fcmp uno double %a, %b 1249 %cmp1 = fcmp uge double %a, %b 1250 %retval = or i1 %cmp, %cmp1 1251 ret i1 %retval 1252} 1253 1254define i1 @auto_gen_116(double %a, double %b) { 1255; CHECK-LABEL: @auto_gen_116( 1256; CHECK-NEXT: [[TMP1:%.*]] = fcmp ult double %a, %b 1257; CHECK-NEXT: ret i1 [[TMP1]] 1258; 1259 %cmp = fcmp uno double %a, %b 1260 %cmp1 = fcmp ult double %a, %b 1261 %retval = or i1 %cmp, %cmp1 1262 ret i1 %retval 1263} 1264 1265define i1 @auto_gen_117(double %a, double %b) { 1266; CHECK-LABEL: @auto_gen_117( 1267; CHECK-NEXT: [[TMP1:%.*]] = fcmp ule double %a, %b 1268; CHECK-NEXT: ret i1 [[TMP1]] 1269; 1270 %cmp = fcmp uno double %a, %b 1271 %cmp1 = fcmp ule double %a, %b 1272 %retval = or i1 %cmp, %cmp1 1273 ret i1 %retval 1274} 1275 1276define i1 @auto_gen_118(double %a, double %b) { 1277; CHECK-LABEL: @auto_gen_118( 1278; CHECK-NEXT: [[TMP1:%.*]] = fcmp une double %a, %b 1279; CHECK-NEXT: ret i1 [[TMP1]] 1280; 1281 %cmp = fcmp uno double %a, %b 1282 %cmp1 = fcmp une double %a, %b 1283 %retval = or i1 %cmp, %cmp1 1284 ret i1 %retval 1285} 1286 1287define i1 @auto_gen_119(double %a, double %b) { 1288; CHECK-LABEL: @auto_gen_119( 1289; CHECK-NEXT: [[TMP1:%.*]] = fcmp uno double %a, %b 1290; CHECK-NEXT: ret i1 [[TMP1]] 1291; 1292 %cmp = fcmp uno double %a, %b 1293 %cmp1 = fcmp uno double %a, %b 1294 %retval = or i1 %cmp, %cmp1 1295 ret i1 %retval 1296} 1297 1298define i1 @auto_gen_120(double %a, double %b) { 1299; CHECK-LABEL: @auto_gen_120( 1300; CHECK-NEXT: ret i1 true 1301; 1302 %cmp = fcmp true double %a, %b 1303 %cmp1 = fcmp false double %a, %b 1304 %retval = or i1 %cmp, %cmp1 1305 ret i1 %retval 1306} 1307 1308define i1 @auto_gen_121(double %a, double %b) { 1309; CHECK-LABEL: @auto_gen_121( 1310; CHECK-NEXT: ret i1 true 1311; 1312 %cmp = fcmp true double %a, %b 1313 %cmp1 = fcmp oeq double %a, %b 1314 %retval = or i1 %cmp, %cmp1 1315 ret i1 %retval 1316} 1317 1318define i1 @auto_gen_122(double %a, double %b) { 1319; CHECK-LABEL: @auto_gen_122( 1320; CHECK-NEXT: ret i1 true 1321; 1322 %cmp = fcmp true double %a, %b 1323 %cmp1 = fcmp ogt double %a, %b 1324 %retval = or i1 %cmp, %cmp1 1325 ret i1 %retval 1326} 1327 1328define i1 @auto_gen_123(double %a, double %b) { 1329; CHECK-LABEL: @auto_gen_123( 1330; CHECK-NEXT: ret i1 true 1331; 1332 %cmp = fcmp true double %a, %b 1333 %cmp1 = fcmp oge double %a, %b 1334 %retval = or i1 %cmp, %cmp1 1335 ret i1 %retval 1336} 1337 1338define i1 @auto_gen_124(double %a, double %b) { 1339; CHECK-LABEL: @auto_gen_124( 1340; CHECK-NEXT: ret i1 true 1341; 1342 %cmp = fcmp true double %a, %b 1343 %cmp1 = fcmp olt double %a, %b 1344 %retval = or i1 %cmp, %cmp1 1345 ret i1 %retval 1346} 1347 1348define i1 @auto_gen_125(double %a, double %b) { 1349; CHECK-LABEL: @auto_gen_125( 1350; CHECK-NEXT: ret i1 true 1351; 1352 %cmp = fcmp true double %a, %b 1353 %cmp1 = fcmp ole double %a, %b 1354 %retval = or i1 %cmp, %cmp1 1355 ret i1 %retval 1356} 1357 1358define i1 @auto_gen_126(double %a, double %b) { 1359; CHECK-LABEL: @auto_gen_126( 1360; CHECK-NEXT: ret i1 true 1361; 1362 %cmp = fcmp true double %a, %b 1363 %cmp1 = fcmp one double %a, %b 1364 %retval = or i1 %cmp, %cmp1 1365 ret i1 %retval 1366} 1367 1368define i1 @auto_gen_127(double %a, double %b) { 1369; CHECK-LABEL: @auto_gen_127( 1370; CHECK-NEXT: ret i1 true 1371; 1372 %cmp = fcmp true double %a, %b 1373 %cmp1 = fcmp ord double %a, %b 1374 %retval = or i1 %cmp, %cmp1 1375 ret i1 %retval 1376} 1377 1378define i1 @auto_gen_128(double %a, double %b) { 1379; CHECK-LABEL: @auto_gen_128( 1380; CHECK-NEXT: ret i1 true 1381; 1382 %cmp = fcmp true double %a, %b 1383 %cmp1 = fcmp ueq double %a, %b 1384 %retval = or i1 %cmp, %cmp1 1385 ret i1 %retval 1386} 1387 1388define i1 @auto_gen_129(double %a, double %b) { 1389; CHECK-LABEL: @auto_gen_129( 1390; CHECK-NEXT: ret i1 true 1391; 1392 %cmp = fcmp true double %a, %b 1393 %cmp1 = fcmp ugt double %a, %b 1394 %retval = or i1 %cmp, %cmp1 1395 ret i1 %retval 1396} 1397 1398define i1 @auto_gen_130(double %a, double %b) { 1399; CHECK-LABEL: @auto_gen_130( 1400; CHECK-NEXT: ret i1 true 1401; 1402 %cmp = fcmp true double %a, %b 1403 %cmp1 = fcmp uge double %a, %b 1404 %retval = or i1 %cmp, %cmp1 1405 ret i1 %retval 1406} 1407 1408define i1 @auto_gen_131(double %a, double %b) { 1409; CHECK-LABEL: @auto_gen_131( 1410; CHECK-NEXT: ret i1 true 1411; 1412 %cmp = fcmp true double %a, %b 1413 %cmp1 = fcmp ult double %a, %b 1414 %retval = or i1 %cmp, %cmp1 1415 ret i1 %retval 1416} 1417 1418define i1 @auto_gen_132(double %a, double %b) { 1419; CHECK-LABEL: @auto_gen_132( 1420; CHECK-NEXT: ret i1 true 1421; 1422 %cmp = fcmp true double %a, %b 1423 %cmp1 = fcmp ule double %a, %b 1424 %retval = or i1 %cmp, %cmp1 1425 ret i1 %retval 1426} 1427 1428define i1 @auto_gen_133(double %a, double %b) { 1429; CHECK-LABEL: @auto_gen_133( 1430; CHECK-NEXT: ret i1 true 1431; 1432 %cmp = fcmp true double %a, %b 1433 %cmp1 = fcmp une double %a, %b 1434 %retval = or i1 %cmp, %cmp1 1435 ret i1 %retval 1436} 1437 1438define i1 @auto_gen_134(double %a, double %b) { 1439; CHECK-LABEL: @auto_gen_134( 1440; CHECK-NEXT: ret i1 true 1441; 1442 %cmp = fcmp true double %a, %b 1443 %cmp1 = fcmp uno double %a, %b 1444 %retval = or i1 %cmp, %cmp1 1445 ret i1 %retval 1446} 1447 1448define i1 @auto_gen_135(double %a, double %b) { 1449; CHECK-LABEL: @auto_gen_135( 1450; CHECK-NEXT: ret i1 true 1451; 1452 %cmp = fcmp true double %a, %b 1453 %cmp1 = fcmp true double %a, %b 1454 %retval = or i1 %cmp, %cmp1 1455 ret i1 %retval 1456} 1457