brintos

brintos / llvm-project-archived public Read only

0
0
Text · 20.3 KiB · c75a292 Raw
649 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=amdgcn -mcpu=gfx1150 -run-pass=instruction-select -verify-machineinstrs -o - %s | FileCheck -check-prefix=GFX1150 %s3# RUN: llc -mtriple=amdgcn -mcpu=gfx1200 -run-pass=instruction-select -verify-machineinstrs -o - %s | FileCheck -check-prefix=GFX1150 %s4 5---6name:            f32_olt7legalized:       true8regBankSelected: true9body:             |10  bb.1.entry:11    liveins: $sgpr0, $sgpr112 13    ; GFX1150-LABEL: name: f32_olt14    ; GFX1150: liveins: $sgpr0, $sgpr115    ; GFX1150-NEXT: {{  $}}16    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr017    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr118    ; GFX1150-NEXT: S_CMP_LT_F32 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode19    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc20    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]21    %0:sgpr(s32) = COPY $sgpr022    %1:sgpr(s32) = COPY $sgpr123    %2:sgpr(s32) = G_FCMP floatpred(olt), %0(s32), %124    $sgpr0 = COPY %2(s32)25 26...27---28name:            f32_oeq29legalized:       true30regBankSelected: true31body:             |32  bb.1.entry:33    liveins: $sgpr0, $sgpr134 35    ; GFX1150-LABEL: name: f32_oeq36    ; GFX1150: liveins: $sgpr0, $sgpr137    ; GFX1150-NEXT: {{  $}}38    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr039    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr140    ; GFX1150-NEXT: S_CMP_EQ_F32 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode41    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc42    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]43    %0:sgpr(s32) = COPY $sgpr044    %1:sgpr(s32) = COPY $sgpr145    %2:sgpr(s32) = G_FCMP floatpred(oeq), %0(s32), %146    $sgpr0 = COPY %2(s32)47 48...49---50name:            f32_ole51legalized:       true52regBankSelected: true53body:             |54  bb.1.entry:55    liveins: $sgpr0, $sgpr156 57    ; GFX1150-LABEL: name: f32_ole58    ; GFX1150: liveins: $sgpr0, $sgpr159    ; GFX1150-NEXT: {{  $}}60    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr061    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr162    ; GFX1150-NEXT: S_CMP_LE_F32 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode63    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc64    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]65    %0:sgpr(s32) = COPY $sgpr066    %1:sgpr(s32) = COPY $sgpr167    %2:sgpr(s32) = G_FCMP floatpred(ole), %0(s32), %168    $sgpr0 = COPY %2(s32)69 70...71---72name:            f32_ogt73legalized:       true74regBankSelected: true75body:             |76  bb.1.entry:77    liveins: $sgpr0, $sgpr178 79    ; GFX1150-LABEL: name: f32_ogt80    ; GFX1150: liveins: $sgpr0, $sgpr181    ; GFX1150-NEXT: {{  $}}82    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr083    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr184    ; GFX1150-NEXT: S_CMP_GT_F32 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode85    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc86    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]87    %0:sgpr(s32) = COPY $sgpr088    %1:sgpr(s32) = COPY $sgpr189    %2:sgpr(s32) = G_FCMP floatpred(ogt), %0(s32), %190    $sgpr0 = COPY %2(s32)91 92...93---94name:            f32_one95legalized:       true96regBankSelected: true97body:             |98  bb.1.entry:99    liveins: $sgpr0, $sgpr1100 101    ; GFX1150-LABEL: name: f32_one102    ; GFX1150: liveins: $sgpr0, $sgpr1103    ; GFX1150-NEXT: {{  $}}104    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0105    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1106    ; GFX1150-NEXT: S_CMP_LG_F32 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode107    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc108    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]109    %0:sgpr(s32) = COPY $sgpr0110    %1:sgpr(s32) = COPY $sgpr1111    %2:sgpr(s32) = G_FCMP floatpred(one), %0(s32), %1112    $sgpr0 = COPY %2(s32)113 114...115---116name:            f32_oge117legalized:       true118regBankSelected: true119body:             |120  bb.1.entry:121    liveins: $sgpr0, $sgpr1122 123    ; GFX1150-LABEL: name: f32_oge124    ; GFX1150: liveins: $sgpr0, $sgpr1125    ; GFX1150-NEXT: {{  $}}126    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0127    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1128    ; GFX1150-NEXT: S_CMP_GE_F32 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode129    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc130    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]131    %0:sgpr(s32) = COPY $sgpr0132    %1:sgpr(s32) = COPY $sgpr1133    %2:sgpr(s32) = G_FCMP floatpred(oge), %0(s32), %1134    $sgpr0 = COPY %2(s32)135 136...137---138name:            f32_ord139legalized:       true140regBankSelected: true141body:             |142  bb.1.entry:143    liveins: $sgpr0, $sgpr1144 145    ; GFX1150-LABEL: name: f32_ord146    ; GFX1150: liveins: $sgpr0, $sgpr1147    ; GFX1150-NEXT: {{  $}}148    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0149    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1150    ; GFX1150-NEXT: S_CMP_O_F32 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode151    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc152    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]153    %0:sgpr(s32) = COPY $sgpr0154    %1:sgpr(s32) = COPY $sgpr1155    %2:sgpr(s32) = G_FCMP floatpred(ord), %0(s32), %1156    $sgpr0 = COPY %2(s32)157 158...159---160name:            f32_uno161legalized:       true162regBankSelected: true163body:             |164  bb.1.entry:165    liveins: $sgpr0, $sgpr1166 167    ; GFX1150-LABEL: name: f32_uno168    ; GFX1150: liveins: $sgpr0, $sgpr1169    ; GFX1150-NEXT: {{  $}}170    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0171    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1172    ; GFX1150-NEXT: S_CMP_U_F32 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode173    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc174    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]175    %0:sgpr(s32) = COPY $sgpr0176    %1:sgpr(s32) = COPY $sgpr1177    %2:sgpr(s32) = G_FCMP floatpred(uno), %0(s32), %1178    $sgpr0 = COPY %2(s32)179 180...181---182name:            f32_ult183legalized:       true184regBankSelected: true185body:             |186  bb.1.entry:187    liveins: $sgpr0, $sgpr1188 189    ; GFX1150-LABEL: name: f32_ult190    ; GFX1150: liveins: $sgpr0, $sgpr1191    ; GFX1150-NEXT: {{  $}}192    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0193    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1194    ; GFX1150-NEXT: S_CMP_NGE_F32 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode195    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc196    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]197    %0:sgpr(s32) = COPY $sgpr0198    %1:sgpr(s32) = COPY $sgpr1199    %2:sgpr(s32) = G_FCMP floatpred(ult), %0(s32), %1200    $sgpr0 = COPY %2(s32)201 202...203---204name:            f32_ueq205legalized:       true206regBankSelected: true207body:             |208  bb.1.entry:209    liveins: $sgpr0, $sgpr1210 211    ; GFX1150-LABEL: name: f32_ueq212    ; GFX1150: liveins: $sgpr0, $sgpr1213    ; GFX1150-NEXT: {{  $}}214    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0215    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1216    ; GFX1150-NEXT: S_CMP_NLG_F32 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode217    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc218    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]219    %0:sgpr(s32) = COPY $sgpr0220    %1:sgpr(s32) = COPY $sgpr1221    %2:sgpr(s32) = G_FCMP floatpred(ueq), %0(s32), %1222    $sgpr0 = COPY %2(s32)223 224...225---226name:            f32_ule227legalized:       true228regBankSelected: true229body:             |230  bb.1.entry:231    liveins: $sgpr0, $sgpr1232 233    ; GFX1150-LABEL: name: f32_ule234    ; GFX1150: liveins: $sgpr0, $sgpr1235    ; GFX1150-NEXT: {{  $}}236    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0237    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1238    ; GFX1150-NEXT: S_CMP_NGT_F32 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode239    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc240    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]241    %0:sgpr(s32) = COPY $sgpr0242    %1:sgpr(s32) = COPY $sgpr1243    %2:sgpr(s32) = G_FCMP floatpred(ule), %0(s32), %1244    $sgpr0 = COPY %2(s32)245 246...247---248name:            f32_ugt249legalized:       true250regBankSelected: true251body:             |252  bb.1.entry:253    liveins: $sgpr0, $sgpr1254 255    ; GFX1150-LABEL: name: f32_ugt256    ; GFX1150: liveins: $sgpr0, $sgpr1257    ; GFX1150-NEXT: {{  $}}258    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0259    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1260    ; GFX1150-NEXT: S_CMP_NLE_F32 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode261    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc262    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]263    %0:sgpr(s32) = COPY $sgpr0264    %1:sgpr(s32) = COPY $sgpr1265    %2:sgpr(s32) = G_FCMP floatpred(ugt), %0(s32), %1266    $sgpr0 = COPY %2(s32)267 268...269---270name:            f32_une271legalized:       true272regBankSelected: true273body:             |274  bb.1.entry:275    liveins: $sgpr0, $sgpr1276 277    ; GFX1150-LABEL: name: f32_une278    ; GFX1150: liveins: $sgpr0, $sgpr1279    ; GFX1150-NEXT: {{  $}}280    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0281    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1282    ; GFX1150-NEXT: S_CMP_NEQ_F32 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode283    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc284    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]285    %0:sgpr(s32) = COPY $sgpr0286    %1:sgpr(s32) = COPY $sgpr1287    %2:sgpr(s32) = G_FCMP floatpred(une), %0(s32), %1288    $sgpr0 = COPY %2(s32)289 290...291---292name:            f32_uge293legalized:       true294regBankSelected: true295body:             |296  bb.1.entry:297    liveins: $sgpr0, $sgpr1298 299    ; GFX1150-LABEL: name: f32_uge300    ; GFX1150: liveins: $sgpr0, $sgpr1301    ; GFX1150-NEXT: {{  $}}302    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0303    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1304    ; GFX1150-NEXT: S_CMP_NLT_F32 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode305    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc306    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]307    %0:sgpr(s32) = COPY $sgpr0308    %1:sgpr(s32) = COPY $sgpr1309    %2:sgpr(s32) = G_FCMP floatpred(uge), %0(s32), %1310    $sgpr0 = COPY %2(s32)311 312...313---314name:            f16_olt315legalized:       true316regBankSelected: true317body:             |318  bb.1.entry:319    liveins: $sgpr0, $sgpr1320 321    ; GFX1150-LABEL: name: f16_olt322    ; GFX1150: liveins: $sgpr0, $sgpr1323    ; GFX1150-NEXT: {{  $}}324    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0325    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1326    ; GFX1150-NEXT: S_CMP_LT_F16 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode327    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc328    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]329    %0:sgpr(s32) = COPY $sgpr0330    %1:sgpr(s16) = G_TRUNC %0(s32)331    %2:sgpr(s32) = COPY $sgpr1332    %3:sgpr(s16) = G_TRUNC %2(s32)333    %4:sgpr(s32) = G_FCMP floatpred(olt), %1(s16), %3334    $sgpr0 = COPY %4(s32)335 336...337---338name:            f16_oeq339legalized:       true340regBankSelected: true341body:             |342  bb.1.entry:343    liveins: $sgpr0, $sgpr1344 345    ; GFX1150-LABEL: name: f16_oeq346    ; GFX1150: liveins: $sgpr0, $sgpr1347    ; GFX1150-NEXT: {{  $}}348    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0349    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1350    ; GFX1150-NEXT: S_CMP_EQ_F16 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode351    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc352    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]353    %0:sgpr(s32) = COPY $sgpr0354    %1:sgpr(s16) = G_TRUNC %0(s32)355    %2:sgpr(s32) = COPY $sgpr1356    %3:sgpr(s16) = G_TRUNC %2(s32)357    %4:sgpr(s32) = G_FCMP floatpred(oeq), %1(s16), %3358    $sgpr0 = COPY %4(s32)359 360...361---362name:            f16_ole363legalized:       true364regBankSelected: true365body:             |366  bb.1.entry:367    liveins: $sgpr0, $sgpr1368 369    ; GFX1150-LABEL: name: f16_ole370    ; GFX1150: liveins: $sgpr0, $sgpr1371    ; GFX1150-NEXT: {{  $}}372    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0373    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1374    ; GFX1150-NEXT: S_CMP_LE_F16 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode375    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc376    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]377    %0:sgpr(s32) = COPY $sgpr0378    %1:sgpr(s16) = G_TRUNC %0(s32)379    %2:sgpr(s32) = COPY $sgpr1380    %3:sgpr(s16) = G_TRUNC %2(s32)381    %4:sgpr(s32) = G_FCMP floatpred(ole), %1(s16), %3382    $sgpr0 = COPY %4(s32)383 384...385---386name:            f16_ogt387legalized:       true388regBankSelected: true389body:             |390  bb.1.entry:391    liveins: $sgpr0, $sgpr1392 393    ; GFX1150-LABEL: name: f16_ogt394    ; GFX1150: liveins: $sgpr0, $sgpr1395    ; GFX1150-NEXT: {{  $}}396    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0397    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1398    ; GFX1150-NEXT: S_CMP_GT_F16 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode399    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc400    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]401    %0:sgpr(s32) = COPY $sgpr0402    %1:sgpr(s16) = G_TRUNC %0(s32)403    %2:sgpr(s32) = COPY $sgpr1404    %3:sgpr(s16) = G_TRUNC %2(s32)405    %4:sgpr(s32) = G_FCMP floatpred(ogt), %1(s16), %3406    $sgpr0 = COPY %4(s32)407 408...409---410name:            f16_one411legalized:       true412regBankSelected: true413body:             |414  bb.1.entry:415    liveins: $sgpr0, $sgpr1416 417    ; GFX1150-LABEL: name: f16_one418    ; GFX1150: liveins: $sgpr0, $sgpr1419    ; GFX1150-NEXT: {{  $}}420    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0421    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1422    ; GFX1150-NEXT: S_CMP_LG_F16 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode423    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc424    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]425    %0:sgpr(s32) = COPY $sgpr0426    %1:sgpr(s16) = G_TRUNC %0(s32)427    %2:sgpr(s32) = COPY $sgpr1428    %3:sgpr(s16) = G_TRUNC %2(s32)429    %4:sgpr(s32) = G_FCMP floatpred(one), %1(s16), %3430    $sgpr0 = COPY %4(s32)431 432...433---434name:            f16_oge435legalized:       true436regBankSelected: true437body:             |438  bb.1.entry:439    liveins: $sgpr0, $sgpr1440 441    ; GFX1150-LABEL: name: f16_oge442    ; GFX1150: liveins: $sgpr0, $sgpr1443    ; GFX1150-NEXT: {{  $}}444    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0445    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1446    ; GFX1150-NEXT: S_CMP_GE_F16 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode447    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc448    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]449    %0:sgpr(s32) = COPY $sgpr0450    %1:sgpr(s16) = G_TRUNC %0(s32)451    %2:sgpr(s32) = COPY $sgpr1452    %3:sgpr(s16) = G_TRUNC %2(s32)453    %4:sgpr(s32) = G_FCMP floatpred(oge), %1(s16), %3454    $sgpr0 = COPY %4(s32)455 456...457---458name:            f16_ord459legalized:       true460regBankSelected: true461body:             |462  bb.1.entry:463    liveins: $sgpr0, $sgpr1464 465    ; GFX1150-LABEL: name: f16_ord466    ; GFX1150: liveins: $sgpr0, $sgpr1467    ; GFX1150-NEXT: {{  $}}468    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0469    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1470    ; GFX1150-NEXT: S_CMP_O_F16 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode471    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc472    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]473    %0:sgpr(s32) = COPY $sgpr0474    %1:sgpr(s16) = G_TRUNC %0(s32)475    %2:sgpr(s32) = COPY $sgpr1476    %3:sgpr(s16) = G_TRUNC %2(s32)477    %4:sgpr(s32) = G_FCMP floatpred(ord), %1(s16), %3478    $sgpr0 = COPY %4(s32)479 480...481---482name:            f16_uno483legalized:       true484regBankSelected: true485body:             |486  bb.1.entry:487    liveins: $sgpr0, $sgpr1488 489    ; GFX1150-LABEL: name: f16_uno490    ; GFX1150: liveins: $sgpr0, $sgpr1491    ; GFX1150-NEXT: {{  $}}492    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0493    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1494    ; GFX1150-NEXT: S_CMP_U_F16 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode495    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc496    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]497    %0:sgpr(s32) = COPY $sgpr0498    %1:sgpr(s16) = G_TRUNC %0(s32)499    %2:sgpr(s32) = COPY $sgpr1500    %3:sgpr(s16) = G_TRUNC %2(s32)501    %4:sgpr(s32) = G_FCMP floatpred(uno), %1(s16), %3502    $sgpr0 = COPY %4(s32)503 504...505---506name:            f16_ult507legalized:       true508regBankSelected: true509body:             |510  bb.1.entry:511    liveins: $sgpr0, $sgpr1512 513    ; GFX1150-LABEL: name: f16_ult514    ; GFX1150: liveins: $sgpr0, $sgpr1515    ; GFX1150-NEXT: {{  $}}516    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0517    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1518    ; GFX1150-NEXT: S_CMP_NGE_F16 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode519    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc520    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]521    %0:sgpr(s32) = COPY $sgpr0522    %1:sgpr(s16) = G_TRUNC %0(s32)523    %2:sgpr(s32) = COPY $sgpr1524    %3:sgpr(s16) = G_TRUNC %2(s32)525    %4:sgpr(s32) = G_FCMP floatpred(ult), %1(s16), %3526    $sgpr0 = COPY %4(s32)527 528...529---530name:            f16_ueq531legalized:       true532regBankSelected: true533body:             |534  bb.1.entry:535    liveins: $sgpr0, $sgpr1536 537    ; GFX1150-LABEL: name: f16_ueq538    ; GFX1150: liveins: $sgpr0, $sgpr1539    ; GFX1150-NEXT: {{  $}}540    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0541    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1542    ; GFX1150-NEXT: S_CMP_NLG_F16 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode543    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc544    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]545    %0:sgpr(s32) = COPY $sgpr0546    %1:sgpr(s16) = G_TRUNC %0(s32)547    %2:sgpr(s32) = COPY $sgpr1548    %3:sgpr(s16) = G_TRUNC %2(s32)549    %4:sgpr(s32) = G_FCMP floatpred(ueq), %1(s16), %3550    $sgpr0 = COPY %4(s32)551 552...553---554name:            f16_ule555legalized:       true556regBankSelected: true557body:             |558  bb.1.entry:559    liveins: $sgpr0, $sgpr1560 561    ; GFX1150-LABEL: name: f16_ule562    ; GFX1150: liveins: $sgpr0, $sgpr1563    ; GFX1150-NEXT: {{  $}}564    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0565    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1566    ; GFX1150-NEXT: S_CMP_NGT_F16 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode567    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc568    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]569    %0:sgpr(s32) = COPY $sgpr0570    %1:sgpr(s16) = G_TRUNC %0(s32)571    %2:sgpr(s32) = COPY $sgpr1572    %3:sgpr(s16) = G_TRUNC %2(s32)573    %4:sgpr(s32) = G_FCMP floatpred(ule), %1(s16), %3574    $sgpr0 = COPY %4(s32)575 576...577---578name:            f16_ugt579legalized:       true580regBankSelected: true581body:             |582  bb.1.entry:583    liveins: $sgpr0, $sgpr1584 585    ; GFX1150-LABEL: name: f16_ugt586    ; GFX1150: liveins: $sgpr0, $sgpr1587    ; GFX1150-NEXT: {{  $}}588    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0589    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1590    ; GFX1150-NEXT: S_CMP_NLE_F16 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode591    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc592    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]593    %0:sgpr(s32) = COPY $sgpr0594    %1:sgpr(s16) = G_TRUNC %0(s32)595    %2:sgpr(s32) = COPY $sgpr1596    %3:sgpr(s16) = G_TRUNC %2(s32)597    %4:sgpr(s32) = G_FCMP floatpred(ugt), %1(s16), %3598    $sgpr0 = COPY %4(s32)599 600...601---602name:            f16_une603legalized:       true604regBankSelected: true605body:             |606  bb.1.entry:607    liveins: $sgpr0, $sgpr1608 609    ; GFX1150-LABEL: name: f16_une610    ; GFX1150: liveins: $sgpr0, $sgpr1611    ; GFX1150-NEXT: {{  $}}612    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0613    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1614    ; GFX1150-NEXT: S_CMP_NEQ_F16 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode615    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc616    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]617    %0:sgpr(s32) = COPY $sgpr0618    %1:sgpr(s16) = G_TRUNC %0(s32)619    %2:sgpr(s32) = COPY $sgpr1620    %3:sgpr(s16) = G_TRUNC %2(s32)621    %4:sgpr(s32) = G_FCMP floatpred(une), %1(s16), %3622    $sgpr0 = COPY %4(s32)623 624...625---626name:            f16_uge627legalized:       true628regBankSelected: true629body:             |630  bb.1.entry:631    liveins: $sgpr0, $sgpr1632 633    ; GFX1150-LABEL: name: f16_uge634    ; GFX1150: liveins: $sgpr0, $sgpr1635    ; GFX1150-NEXT: {{  $}}636    ; GFX1150-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0637    ; GFX1150-NEXT: [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1638    ; GFX1150-NEXT: S_CMP_NLT_F16 [[COPY]], [[COPY1]], implicit-def $scc, implicit $mode639    ; GFX1150-NEXT: [[COPY2:%[0-9]+]]:sreg_32 = COPY $scc640    ; GFX1150-NEXT: $sgpr0 = COPY [[COPY2]]641    %0:sgpr(s32) = COPY $sgpr0642    %1:sgpr(s16) = G_TRUNC %0(s32)643    %2:sgpr(s32) = COPY $sgpr1644    %3:sgpr(s16) = G_TRUNC %2(s32)645    %4:sgpr(s32) = G_FCMP floatpred(uge), %1(s16), %3646    $sgpr0 = COPY %4(s32)647 648...649