brintos

brintos / llvm-project-archived public Read only

0
0
Text · 245.6 KiB · e256ba9 Raw
6543 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc -mtriple=riscv32 -target-abi=ilp32d -mattr=+v,+zfh,+zvfh,+f,+d -verify-machineinstrs < %s | FileCheck %s --check-prefixes=CHECK,ZVFH3; RUN: llc -mtriple=riscv64 -target-abi=lp64d -mattr=+v,+zfh,+zvfh,+f,+d -verify-machineinstrs < %s | FileCheck %s --check-prefixes=CHECK,ZVFH4; RUN: llc -mtriple=riscv32 -target-abi=ilp32d -mattr=+v,+zfh,+zvfhmin,+f,+d -verify-machineinstrs < %s | FileCheck %s --check-prefixes=CHECK,ZVFHMIN,RV32ZVFHMIN5; RUN: llc -mtriple=riscv64 -target-abi=lp64d -mattr=+v,+zfh,+zvfhmin,+f,+d -verify-machineinstrs < %s | FileCheck %s --check-prefixes=CHECK,ZVFHMIN,RV64ZVFHMIN6 7define void @fcmp_oeq_vv_v8f16(ptr %x, ptr %y, ptr %z) {8; ZVFH-LABEL: fcmp_oeq_vv_v8f16:9; ZVFH:       # %bb.0:10; ZVFH-NEXT:    vsetivli zero, 8, e16, m1, ta, ma11; ZVFH-NEXT:    vle16.v v8, (a0)12; ZVFH-NEXT:    vle16.v v9, (a1)13; ZVFH-NEXT:    vmfeq.vv v8, v8, v914; ZVFH-NEXT:    vsm.v v8, (a2)15; ZVFH-NEXT:    ret16;17; ZVFHMIN-LABEL: fcmp_oeq_vv_v8f16:18; ZVFHMIN:       # %bb.0:19; ZVFHMIN-NEXT:    vsetivli zero, 8, e16, m1, ta, ma20; ZVFHMIN-NEXT:    vle16.v v10, (a1)21; ZVFHMIN-NEXT:    vle16.v v12, (a0)22; ZVFHMIN-NEXT:    vfwcvt.f.f.v v8, v1023; ZVFHMIN-NEXT:    vfwcvt.f.f.v v10, v1224; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m2, ta, ma25; ZVFHMIN-NEXT:    vmfeq.vv v12, v10, v826; ZVFHMIN-NEXT:    vsm.v v12, (a2)27; ZVFHMIN-NEXT:    ret28  %a = load <8 x half>, ptr %x29  %b = load <8 x half>, ptr %y30  %c = fcmp oeq <8 x half> %a, %b31  store <8 x i1> %c, ptr %z32  ret void33}34 35define void @fcmp_oeq_vv_v8f16_nonans(ptr %x, ptr %y, ptr %z) {36; ZVFH-LABEL: fcmp_oeq_vv_v8f16_nonans:37; ZVFH:       # %bb.0:38; ZVFH-NEXT:    vsetivli zero, 8, e16, m1, ta, ma39; ZVFH-NEXT:    vle16.v v8, (a0)40; ZVFH-NEXT:    vle16.v v9, (a1)41; ZVFH-NEXT:    vmfeq.vv v8, v8, v942; ZVFH-NEXT:    vsm.v v8, (a2)43; ZVFH-NEXT:    ret44;45; ZVFHMIN-LABEL: fcmp_oeq_vv_v8f16_nonans:46; ZVFHMIN:       # %bb.0:47; ZVFHMIN-NEXT:    vsetivli zero, 8, e16, m1, ta, ma48; ZVFHMIN-NEXT:    vle16.v v10, (a1)49; ZVFHMIN-NEXT:    vle16.v v12, (a0)50; ZVFHMIN-NEXT:    vfwcvt.f.f.v v8, v1051; ZVFHMIN-NEXT:    vfwcvt.f.f.v v10, v1252; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m2, ta, ma53; ZVFHMIN-NEXT:    vmfeq.vv v12, v10, v854; ZVFHMIN-NEXT:    vsm.v v12, (a2)55; ZVFHMIN-NEXT:    ret56  %a = load <8 x half>, ptr %x57  %b = load <8 x half>, ptr %y58  %c = fcmp nnan oeq <8 x half> %a, %b59  store <8 x i1> %c, ptr %z60  ret void61}62 63define void @fcmp_une_vv_v4f32(ptr %x, ptr %y, ptr %z) {64; CHECK-LABEL: fcmp_une_vv_v4f32:65; CHECK:       # %bb.0:66; CHECK-NEXT:    vsetivli zero, 4, e32, m1, ta, ma67; CHECK-NEXT:    vle32.v v8, (a0)68; CHECK-NEXT:    vle32.v v9, (a1)69; CHECK-NEXT:    vmfne.vv v0, v8, v970; CHECK-NEXT:    vsetvli zero, zero, e8, mf4, ta, ma71; CHECK-NEXT:    vmv.v.i v8, 072; CHECK-NEXT:    vmerge.vim v8, v8, 1, v073; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma74; CHECK-NEXT:    vmv.v.i v9, 075; CHECK-NEXT:    vsetivli zero, 4, e8, mf2, tu, ma76; CHECK-NEXT:    vmv.v.v v9, v877; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma78; CHECK-NEXT:    vmsne.vi v8, v9, 079; CHECK-NEXT:    vsm.v v8, (a2)80; CHECK-NEXT:    ret81  %a = load <4 x float>, ptr %x82  %b = load <4 x float>, ptr %y83  %c = fcmp une <4 x float> %a, %b84  store <4 x i1> %c, ptr %z85  ret void86}87 88define void @fcmp_une_vv_v4f32_nonans(ptr %x, ptr %y, ptr %z) {89; CHECK-LABEL: fcmp_une_vv_v4f32_nonans:90; CHECK:       # %bb.0:91; CHECK-NEXT:    vsetivli zero, 4, e32, m1, ta, ma92; CHECK-NEXT:    vle32.v v8, (a0)93; CHECK-NEXT:    vle32.v v9, (a1)94; CHECK-NEXT:    vmfne.vv v0, v8, v995; CHECK-NEXT:    vsetvli zero, zero, e8, mf4, ta, ma96; CHECK-NEXT:    vmv.v.i v8, 097; CHECK-NEXT:    vmerge.vim v8, v8, 1, v098; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma99; CHECK-NEXT:    vmv.v.i v9, 0100; CHECK-NEXT:    vsetivli zero, 4, e8, mf2, tu, ma101; CHECK-NEXT:    vmv.v.v v9, v8102; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma103; CHECK-NEXT:    vmsne.vi v8, v9, 0104; CHECK-NEXT:    vsm.v v8, (a2)105; CHECK-NEXT:    ret106  %a = load <4 x float>, ptr %x107  %b = load <4 x float>, ptr %y108  %c = fcmp nnan une <4 x float> %a, %b109  store <4 x i1> %c, ptr %z110  ret void111}112 113define void @fcmp_ogt_vv_v2f64(ptr %x, ptr %y, ptr %z) {114; CHECK-LABEL: fcmp_ogt_vv_v2f64:115; CHECK:       # %bb.0:116; CHECK-NEXT:    vsetivli zero, 2, e64, m1, ta, ma117; CHECK-NEXT:    vle64.v v8, (a0)118; CHECK-NEXT:    vle64.v v9, (a1)119; CHECK-NEXT:    vmflt.vv v0, v9, v8120; CHECK-NEXT:    vsetvli zero, zero, e8, mf8, ta, ma121; CHECK-NEXT:    vmv.v.i v8, 0122; CHECK-NEXT:    vmerge.vim v8, v8, 1, v0123; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma124; CHECK-NEXT:    vmv.v.i v9, 0125; CHECK-NEXT:    vsetivli zero, 2, e8, mf2, tu, ma126; CHECK-NEXT:    vmv.v.v v9, v8127; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma128; CHECK-NEXT:    vmsne.vi v8, v9, 0129; CHECK-NEXT:    vsm.v v8, (a2)130; CHECK-NEXT:    ret131  %a = load <2 x double>, ptr %x132  %b = load <2 x double>, ptr %y133  %c = fcmp ogt <2 x double> %a, %b134  store <2 x i1> %c, ptr %z135  ret void136}137 138define void @fcmp_ogt_vv_v2f64_nonans(ptr %x, ptr %y, ptr %z) {139; CHECK-LABEL: fcmp_ogt_vv_v2f64_nonans:140; CHECK:       # %bb.0:141; CHECK-NEXT:    vsetivli zero, 2, e64, m1, ta, ma142; CHECK-NEXT:    vle64.v v8, (a0)143; CHECK-NEXT:    vle64.v v9, (a1)144; CHECK-NEXT:    vmflt.vv v0, v9, v8145; CHECK-NEXT:    vsetvli zero, zero, e8, mf8, ta, ma146; CHECK-NEXT:    vmv.v.i v8, 0147; CHECK-NEXT:    vmerge.vim v8, v8, 1, v0148; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma149; CHECK-NEXT:    vmv.v.i v9, 0150; CHECK-NEXT:    vsetivli zero, 2, e8, mf2, tu, ma151; CHECK-NEXT:    vmv.v.v v9, v8152; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma153; CHECK-NEXT:    vmsne.vi v8, v9, 0154; CHECK-NEXT:    vsm.v v8, (a2)155; CHECK-NEXT:    ret156  %a = load <2 x double>, ptr %x157  %b = load <2 x double>, ptr %y158  %c = fcmp nnan ogt <2 x double> %a, %b159  store <2 x i1> %c, ptr %z160  ret void161}162 163define void @fcmp_olt_vv_v16f16(ptr %x, ptr %y, ptr %z) {164; ZVFH-LABEL: fcmp_olt_vv_v16f16:165; ZVFH:       # %bb.0:166; ZVFH-NEXT:    vsetivli zero, 16, e16, m2, ta, ma167; ZVFH-NEXT:    vle16.v v8, (a0)168; ZVFH-NEXT:    vle16.v v10, (a1)169; ZVFH-NEXT:    vmflt.vv v12, v8, v10170; ZVFH-NEXT:    vsm.v v12, (a2)171; ZVFH-NEXT:    ret172;173; ZVFHMIN-LABEL: fcmp_olt_vv_v16f16:174; ZVFHMIN:       # %bb.0:175; ZVFHMIN-NEXT:    vsetivli zero, 16, e16, m2, ta, ma176; ZVFHMIN-NEXT:    vle16.v v12, (a1)177; ZVFHMIN-NEXT:    vle16.v v16, (a0)178; ZVFHMIN-NEXT:    vfwcvt.f.f.v v8, v12179; ZVFHMIN-NEXT:    vfwcvt.f.f.v v12, v16180; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m4, ta, ma181; ZVFHMIN-NEXT:    vmflt.vv v16, v12, v8182; ZVFHMIN-NEXT:    vsm.v v16, (a2)183; ZVFHMIN-NEXT:    ret184  %a = load <16 x half>, ptr %x185  %b = load <16 x half>, ptr %y186  %c = fcmp olt <16 x half> %a, %b187  store <16 x i1> %c, ptr %z188  ret void189}190 191define void @fcmp_olt_vv_v16f16_nonans(ptr %x, ptr %y, ptr %z) {192; ZVFH-LABEL: fcmp_olt_vv_v16f16_nonans:193; ZVFH:       # %bb.0:194; ZVFH-NEXT:    vsetivli zero, 16, e16, m2, ta, ma195; ZVFH-NEXT:    vle16.v v8, (a0)196; ZVFH-NEXT:    vle16.v v10, (a1)197; ZVFH-NEXT:    vmflt.vv v12, v8, v10198; ZVFH-NEXT:    vsm.v v12, (a2)199; ZVFH-NEXT:    ret200;201; ZVFHMIN-LABEL: fcmp_olt_vv_v16f16_nonans:202; ZVFHMIN:       # %bb.0:203; ZVFHMIN-NEXT:    vsetivli zero, 16, e16, m2, ta, ma204; ZVFHMIN-NEXT:    vle16.v v12, (a1)205; ZVFHMIN-NEXT:    vle16.v v16, (a0)206; ZVFHMIN-NEXT:    vfwcvt.f.f.v v8, v12207; ZVFHMIN-NEXT:    vfwcvt.f.f.v v12, v16208; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m4, ta, ma209; ZVFHMIN-NEXT:    vmflt.vv v16, v12, v8210; ZVFHMIN-NEXT:    vsm.v v16, (a2)211; ZVFHMIN-NEXT:    ret212  %a = load <16 x half>, ptr %x213  %b = load <16 x half>, ptr %y214  %c = fcmp nnan olt <16 x half> %a, %b215  store <16 x i1> %c, ptr %z216  ret void217}218 219define void @fcmp_oge_vv_v8f32(ptr %x, ptr %y, ptr %z) {220; CHECK-LABEL: fcmp_oge_vv_v8f32:221; CHECK:       # %bb.0:222; CHECK-NEXT:    vsetivli zero, 8, e32, m2, ta, ma223; CHECK-NEXT:    vle32.v v8, (a0)224; CHECK-NEXT:    vle32.v v10, (a1)225; CHECK-NEXT:    vmfle.vv v12, v10, v8226; CHECK-NEXT:    vsm.v v12, (a2)227; CHECK-NEXT:    ret228  %a = load <8 x float>, ptr %x229  %b = load <8 x float>, ptr %y230  %c = fcmp oge <8 x float> %a, %b231  store <8 x i1> %c, ptr %z232  ret void233}234 235define void @fcmp_oge_vv_v8f32_nonans(ptr %x, ptr %y, ptr %z) {236; CHECK-LABEL: fcmp_oge_vv_v8f32_nonans:237; CHECK:       # %bb.0:238; CHECK-NEXT:    vsetivli zero, 8, e32, m2, ta, ma239; CHECK-NEXT:    vle32.v v8, (a0)240; CHECK-NEXT:    vle32.v v10, (a1)241; CHECK-NEXT:    vmfle.vv v12, v10, v8242; CHECK-NEXT:    vsm.v v12, (a2)243; CHECK-NEXT:    ret244  %a = load <8 x float>, ptr %x245  %b = load <8 x float>, ptr %y246  %c = fcmp nnan oge <8 x float> %a, %b247  store <8 x i1> %c, ptr %z248  ret void249}250 251define void @fcmp_ole_vv_v4f64(ptr %x, ptr %y, ptr %z) {252; CHECK-LABEL: fcmp_ole_vv_v4f64:253; CHECK:       # %bb.0:254; CHECK-NEXT:    vsetivli zero, 4, e64, m2, ta, ma255; CHECK-NEXT:    vle64.v v8, (a0)256; CHECK-NEXT:    vle64.v v10, (a1)257; CHECK-NEXT:    vmfle.vv v0, v8, v10258; CHECK-NEXT:    vsetvli zero, zero, e8, mf4, ta, ma259; CHECK-NEXT:    vmv.v.i v8, 0260; CHECK-NEXT:    vmerge.vim v8, v8, 1, v0261; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma262; CHECK-NEXT:    vmv.v.i v9, 0263; CHECK-NEXT:    vsetivli zero, 4, e8, mf2, tu, ma264; CHECK-NEXT:    vmv.v.v v9, v8265; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma266; CHECK-NEXT:    vmsne.vi v8, v9, 0267; CHECK-NEXT:    vsm.v v8, (a2)268; CHECK-NEXT:    ret269  %a = load <4 x double>, ptr %x270  %b = load <4 x double>, ptr %y271  %c = fcmp ole <4 x double> %a, %b272  store <4 x i1> %c, ptr %z273  ret void274}275 276define void @fcmp_ole_vv_v4f64_nonans(ptr %x, ptr %y, ptr %z) {277; CHECK-LABEL: fcmp_ole_vv_v4f64_nonans:278; CHECK:       # %bb.0:279; CHECK-NEXT:    vsetivli zero, 4, e64, m2, ta, ma280; CHECK-NEXT:    vle64.v v8, (a0)281; CHECK-NEXT:    vle64.v v10, (a1)282; CHECK-NEXT:    vmfle.vv v0, v8, v10283; CHECK-NEXT:    vsetvli zero, zero, e8, mf4, ta, ma284; CHECK-NEXT:    vmv.v.i v8, 0285; CHECK-NEXT:    vmerge.vim v8, v8, 1, v0286; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma287; CHECK-NEXT:    vmv.v.i v9, 0288; CHECK-NEXT:    vsetivli zero, 4, e8, mf2, tu, ma289; CHECK-NEXT:    vmv.v.v v9, v8290; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma291; CHECK-NEXT:    vmsne.vi v8, v9, 0292; CHECK-NEXT:    vsm.v v8, (a2)293; CHECK-NEXT:    ret294  %a = load <4 x double>, ptr %x295  %b = load <4 x double>, ptr %y296  %c = fcmp nnan ole <4 x double> %a, %b297  store <4 x i1> %c, ptr %z298  ret void299}300 301define void @fcmp_ule_vv_v32f16(ptr %x, ptr %y, ptr %z) {302; ZVFH-LABEL: fcmp_ule_vv_v32f16:303; ZVFH:       # %bb.0:304; ZVFH-NEXT:    li a3, 32305; ZVFH-NEXT:    vsetvli zero, a3, e16, m4, ta, ma306; ZVFH-NEXT:    vle16.v v8, (a0)307; ZVFH-NEXT:    vle16.v v12, (a1)308; ZVFH-NEXT:    vmflt.vv v16, v12, v8309; ZVFH-NEXT:    vmnot.m v8, v16310; ZVFH-NEXT:    vsm.v v8, (a2)311; ZVFH-NEXT:    ret312;313; ZVFHMIN-LABEL: fcmp_ule_vv_v32f16:314; ZVFHMIN:       # %bb.0:315; ZVFHMIN-NEXT:    li a3, 32316; ZVFHMIN-NEXT:    vsetvli zero, a3, e16, m4, ta, ma317; ZVFHMIN-NEXT:    vle16.v v16, (a0)318; ZVFHMIN-NEXT:    vle16.v v24, (a1)319; ZVFHMIN-NEXT:    vfwcvt.f.f.v v8, v16320; ZVFHMIN-NEXT:    vfwcvt.f.f.v v16, v24321; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m8, ta, ma322; ZVFHMIN-NEXT:    vmflt.vv v24, v16, v8323; ZVFHMIN-NEXT:    vmnot.m v8, v24324; ZVFHMIN-NEXT:    vsm.v v8, (a2)325; ZVFHMIN-NEXT:    ret326  %a = load <32 x half>, ptr %x327  %b = load <32 x half>, ptr %y328  %c = fcmp ule <32 x half> %a, %b329  store <32 x i1> %c, ptr %z330  ret void331}332 333define void @fcmp_ule_vv_v32f16_nonans(ptr %x, ptr %y, ptr %z) {334; ZVFH-LABEL: fcmp_ule_vv_v32f16_nonans:335; ZVFH:       # %bb.0:336; ZVFH-NEXT:    li a3, 32337; ZVFH-NEXT:    vsetvli zero, a3, e16, m4, ta, ma338; ZVFH-NEXT:    vle16.v v8, (a0)339; ZVFH-NEXT:    vle16.v v12, (a1)340; ZVFH-NEXT:    vmfle.vv v16, v8, v12341; ZVFH-NEXT:    vsm.v v16, (a2)342; ZVFH-NEXT:    ret343;344; ZVFHMIN-LABEL: fcmp_ule_vv_v32f16_nonans:345; ZVFHMIN:       # %bb.0:346; ZVFHMIN-NEXT:    li a3, 32347; ZVFHMIN-NEXT:    vsetvli zero, a3, e16, m4, ta, ma348; ZVFHMIN-NEXT:    vle16.v v16, (a1)349; ZVFHMIN-NEXT:    vle16.v v24, (a0)350; ZVFHMIN-NEXT:    vfwcvt.f.f.v v8, v16351; ZVFHMIN-NEXT:    vfwcvt.f.f.v v16, v24352; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m8, ta, ma353; ZVFHMIN-NEXT:    vmfle.vv v24, v16, v8354; ZVFHMIN-NEXT:    vsm.v v24, (a2)355; ZVFHMIN-NEXT:    ret356  %a = load <32 x half>, ptr %x357  %b = load <32 x half>, ptr %y358  %c = fcmp nnan ule <32 x half> %a, %b359  store <32 x i1> %c, ptr %z360  ret void361}362 363define void @fcmp_uge_vv_v16f32(ptr %x, ptr %y, ptr %z) {364; CHECK-LABEL: fcmp_uge_vv_v16f32:365; CHECK:       # %bb.0:366; CHECK-NEXT:    vsetivli zero, 16, e32, m4, ta, ma367; CHECK-NEXT:    vle32.v v8, (a0)368; CHECK-NEXT:    vle32.v v12, (a1)369; CHECK-NEXT:    vmflt.vv v16, v8, v12370; CHECK-NEXT:    vmnot.m v8, v16371; CHECK-NEXT:    vsm.v v8, (a2)372; CHECK-NEXT:    ret373  %a = load <16 x float>, ptr %x374  %b = load <16 x float>, ptr %y375  %c = fcmp uge <16 x float> %a, %b376  store <16 x i1> %c, ptr %z377  ret void378}379 380define void @fcmp_uge_vv_v16f32_nonans(ptr %x, ptr %y, ptr %z) {381; CHECK-LABEL: fcmp_uge_vv_v16f32_nonans:382; CHECK:       # %bb.0:383; CHECK-NEXT:    vsetivli zero, 16, e32, m4, ta, ma384; CHECK-NEXT:    vle32.v v8, (a0)385; CHECK-NEXT:    vle32.v v12, (a1)386; CHECK-NEXT:    vmfle.vv v16, v12, v8387; CHECK-NEXT:    vsm.v v16, (a2)388; CHECK-NEXT:    ret389  %a = load <16 x float>, ptr %x390  %b = load <16 x float>, ptr %y391  %c = fcmp nnan uge <16 x float> %a, %b392  store <16 x i1> %c, ptr %z393  ret void394}395 396define void @fcmp_ult_vv_v8f64(ptr %x, ptr %y, ptr %z) {397; CHECK-LABEL: fcmp_ult_vv_v8f64:398; CHECK:       # %bb.0:399; CHECK-NEXT:    vsetivli zero, 8, e64, m4, ta, ma400; CHECK-NEXT:    vle64.v v8, (a0)401; CHECK-NEXT:    vle64.v v12, (a1)402; CHECK-NEXT:    vmfle.vv v16, v12, v8403; CHECK-NEXT:    vmnot.m v8, v16404; CHECK-NEXT:    vsm.v v8, (a2)405; CHECK-NEXT:    ret406  %a = load <8 x double>, ptr %x407  %b = load <8 x double>, ptr %y408  %c = fcmp ult <8 x double> %a, %b409  store <8 x i1> %c, ptr %z410  ret void411}412 413define void @fcmp_ult_vv_v8f64_nonans(ptr %x, ptr %y, ptr %z) {414; CHECK-LABEL: fcmp_ult_vv_v8f64_nonans:415; CHECK:       # %bb.0:416; CHECK-NEXT:    vsetivli zero, 8, e64, m4, ta, ma417; CHECK-NEXT:    vle64.v v8, (a0)418; CHECK-NEXT:    vle64.v v12, (a1)419; CHECK-NEXT:    vmflt.vv v16, v8, v12420; CHECK-NEXT:    vsm.v v16, (a2)421; CHECK-NEXT:    ret422  %a = load <8 x double>, ptr %x423  %b = load <8 x double>, ptr %y424  %c = fcmp nnan ult <8 x double> %a, %b425  store <8 x i1> %c, ptr %z426  ret void427}428 429define void @fcmp_ugt_vv_v64f16(ptr %x, ptr %y, ptr %z) {430; ZVFH-LABEL: fcmp_ugt_vv_v64f16:431; ZVFH:       # %bb.0:432; ZVFH-NEXT:    li a3, 64433; ZVFH-NEXT:    vsetvli zero, a3, e16, m8, ta, ma434; ZVFH-NEXT:    vle16.v v8, (a0)435; ZVFH-NEXT:    vle16.v v16, (a1)436; ZVFH-NEXT:    vmfle.vv v24, v8, v16437; ZVFH-NEXT:    vmnot.m v8, v24438; ZVFH-NEXT:    vsm.v v8, (a2)439; ZVFH-NEXT:    ret440;441; RV32ZVFHMIN-LABEL: fcmp_ugt_vv_v64f16:442; RV32ZVFHMIN:       # %bb.0:443; RV32ZVFHMIN-NEXT:    addi sp, sp, -512444; RV32ZVFHMIN-NEXT:    .cfi_def_cfa_offset 512445; RV32ZVFHMIN-NEXT:    sw ra, 508(sp) # 4-byte Folded Spill446; RV32ZVFHMIN-NEXT:    sw s0, 504(sp) # 4-byte Folded Spill447; RV32ZVFHMIN-NEXT:    .cfi_offset ra, -4448; RV32ZVFHMIN-NEXT:    .cfi_offset s0, -8449; RV32ZVFHMIN-NEXT:    addi s0, sp, 512450; RV32ZVFHMIN-NEXT:    .cfi_def_cfa s0, 0451; RV32ZVFHMIN-NEXT:    andi sp, sp, -128452; RV32ZVFHMIN-NEXT:    li a3, 64453; RV32ZVFHMIN-NEXT:    vsetvli zero, a3, e16, m8, ta, ma454; RV32ZVFHMIN-NEXT:    vle16.v v16, (a1)455; RV32ZVFHMIN-NEXT:    vle16.v v8, (a0)456; RV32ZVFHMIN-NEXT:    addi a0, sp, 128457; RV32ZVFHMIN-NEXT:    addi a1, sp, 256458; RV32ZVFHMIN-NEXT:    vse16.v v16, (a0)459; RV32ZVFHMIN-NEXT:    vse16.v v8, (a1)460; RV32ZVFHMIN-NEXT:    lh a0, 192(sp)461; RV32ZVFHMIN-NEXT:    lh a1, 320(sp)462; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a0463; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a1464; RV32ZVFHMIN-NEXT:    fle.h a0, fa4, fa5465; RV32ZVFHMIN-NEXT:    xori a0, a0, 1466; RV32ZVFHMIN-NEXT:    sb a0, 96(sp)467; RV32ZVFHMIN-NEXT:    lh a0, 190(sp)468; RV32ZVFHMIN-NEXT:    lh a1, 318(sp)469; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a0470; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a1471; RV32ZVFHMIN-NEXT:    fle.h a0, fa4, fa5472; RV32ZVFHMIN-NEXT:    xori a0, a0, 1473; RV32ZVFHMIN-NEXT:    sb a0, 95(sp)474; RV32ZVFHMIN-NEXT:    lh a0, 188(sp)475; RV32ZVFHMIN-NEXT:    lh a1, 316(sp)476; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a0477; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a1478; RV32ZVFHMIN-NEXT:    fle.h a0, fa4, fa5479; RV32ZVFHMIN-NEXT:    xori a0, a0, 1480; RV32ZVFHMIN-NEXT:    sb a0, 94(sp)481; RV32ZVFHMIN-NEXT:    lh a0, 186(sp)482; RV32ZVFHMIN-NEXT:    lh a1, 314(sp)483; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a0484; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a1485; RV32ZVFHMIN-NEXT:    fle.h a0, fa4, fa5486; RV32ZVFHMIN-NEXT:    xori a0, a0, 1487; RV32ZVFHMIN-NEXT:    sb a0, 93(sp)488; RV32ZVFHMIN-NEXT:    lh a0, 184(sp)489; RV32ZVFHMIN-NEXT:    lh a1, 312(sp)490; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a0491; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a1492; RV32ZVFHMIN-NEXT:    fle.h a0, fa4, fa5493; RV32ZVFHMIN-NEXT:    xori a0, a0, 1494; RV32ZVFHMIN-NEXT:    sb a0, 92(sp)495; RV32ZVFHMIN-NEXT:    lh a0, 182(sp)496; RV32ZVFHMIN-NEXT:    lh a1, 310(sp)497; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a0498; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a1499; RV32ZVFHMIN-NEXT:    fle.h a0, fa4, fa5500; RV32ZVFHMIN-NEXT:    xori a0, a0, 1501; RV32ZVFHMIN-NEXT:    sb a0, 91(sp)502; RV32ZVFHMIN-NEXT:    lh a0, 180(sp)503; RV32ZVFHMIN-NEXT:    lh a1, 308(sp)504; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a0505; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a1506; RV32ZVFHMIN-NEXT:    fle.h a0, fa4, fa5507; RV32ZVFHMIN-NEXT:    xori a0, a0, 1508; RV32ZVFHMIN-NEXT:    sb a0, 90(sp)509; RV32ZVFHMIN-NEXT:    lh a0, 178(sp)510; RV32ZVFHMIN-NEXT:    lh a1, 306(sp)511; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a0512; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a1513; RV32ZVFHMIN-NEXT:    fle.h a0, fa4, fa5514; RV32ZVFHMIN-NEXT:    xori a0, a0, 1515; RV32ZVFHMIN-NEXT:    sb a0, 89(sp)516; RV32ZVFHMIN-NEXT:    lh a1, 176(sp)517; RV32ZVFHMIN-NEXT:    lh a4, 304(sp)518; RV32ZVFHMIN-NEXT:    vmv.x.s a0, v16519; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a1520; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a4521; RV32ZVFHMIN-NEXT:    fle.h a1, fa4, fa5522; RV32ZVFHMIN-NEXT:    xori a1, a1, 1523; RV32ZVFHMIN-NEXT:    sb a1, 88(sp)524; RV32ZVFHMIN-NEXT:    lh a4, 174(sp)525; RV32ZVFHMIN-NEXT:    lh a5, 302(sp)526; RV32ZVFHMIN-NEXT:    vmv.x.s a1, v8527; RV32ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m1, ta, ma528; RV32ZVFHMIN-NEXT:    vslidedown.vi v12, v16, 7529; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a4530; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a5531; RV32ZVFHMIN-NEXT:    fle.h a4, fa4, fa5532; RV32ZVFHMIN-NEXT:    xori a4, a4, 1533; RV32ZVFHMIN-NEXT:    sb a4, 87(sp)534; RV32ZVFHMIN-NEXT:    lh a4, 172(sp)535; RV32ZVFHMIN-NEXT:    lh a5, 300(sp)536; RV32ZVFHMIN-NEXT:    vslidedown.vi v13, v8, 7537; RV32ZVFHMIN-NEXT:    vslidedown.vi v14, v16, 6538; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a4539; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a5540; RV32ZVFHMIN-NEXT:    fle.h a4, fa4, fa5541; RV32ZVFHMIN-NEXT:    xori a4, a4, 1542; RV32ZVFHMIN-NEXT:    sb a4, 86(sp)543; RV32ZVFHMIN-NEXT:    lh a4, 170(sp)544; RV32ZVFHMIN-NEXT:    lh a5, 298(sp)545; RV32ZVFHMIN-NEXT:    vslidedown.vi v15, v8, 6546; RV32ZVFHMIN-NEXT:    vslidedown.vi v18, v16, 5547; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a4548; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a5549; RV32ZVFHMIN-NEXT:    fle.h a4, fa4, fa5550; RV32ZVFHMIN-NEXT:    xori a4, a4, 1551; RV32ZVFHMIN-NEXT:    sb a4, 85(sp)552; RV32ZVFHMIN-NEXT:    lh a4, 168(sp)553; RV32ZVFHMIN-NEXT:    lh a5, 296(sp)554; RV32ZVFHMIN-NEXT:    vslidedown.vi v19, v8, 5555; RV32ZVFHMIN-NEXT:    vslidedown.vi v20, v16, 4556; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a4557; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a5558; RV32ZVFHMIN-NEXT:    fle.h a4, fa4, fa5559; RV32ZVFHMIN-NEXT:    xori a4, a4, 1560; RV32ZVFHMIN-NEXT:    sb a4, 84(sp)561; RV32ZVFHMIN-NEXT:    lh a4, 166(sp)562; RV32ZVFHMIN-NEXT:    lh a5, 294(sp)563; RV32ZVFHMIN-NEXT:    vslidedown.vi v21, v8, 4564; RV32ZVFHMIN-NEXT:    vslidedown.vi v23, v16, 3565; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a4566; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a5567; RV32ZVFHMIN-NEXT:    fle.h a4, fa4, fa5568; RV32ZVFHMIN-NEXT:    xori a4, a4, 1569; RV32ZVFHMIN-NEXT:    sb a4, 83(sp)570; RV32ZVFHMIN-NEXT:    lh a4, 164(sp)571; RV32ZVFHMIN-NEXT:    lh a5, 292(sp)572; RV32ZVFHMIN-NEXT:    vslidedown.vi v22, v8, 3573; RV32ZVFHMIN-NEXT:    vslidedown.vi v25, v16, 2574; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a4575; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a5576; RV32ZVFHMIN-NEXT:    fle.h a4, fa4, fa5577; RV32ZVFHMIN-NEXT:    xori a4, a4, 1578; RV32ZVFHMIN-NEXT:    sb a4, 82(sp)579; RV32ZVFHMIN-NEXT:    lh a4, 162(sp)580; RV32ZVFHMIN-NEXT:    lh a5, 290(sp)581; RV32ZVFHMIN-NEXT:    vslidedown.vi v24, v8, 2582; RV32ZVFHMIN-NEXT:    vslidedown.vi v26, v16, 1583; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a4584; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a5585; RV32ZVFHMIN-NEXT:    fle.h a4, fa4, fa5586; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a0587; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a1588; RV32ZVFHMIN-NEXT:    xori a0, a4, 1589; RV32ZVFHMIN-NEXT:    sb a0, 81(sp)590; RV32ZVFHMIN-NEXT:    lh a0, 160(sp)591; RV32ZVFHMIN-NEXT:    lh a1, 288(sp)592; RV32ZVFHMIN-NEXT:    fle.h a4, fa4, fa5593; RV32ZVFHMIN-NEXT:    xori a4, a4, 1594; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a0595; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a1596; RV32ZVFHMIN-NEXT:    fle.h a0, fa4, fa5597; RV32ZVFHMIN-NEXT:    xori a0, a0, 1598; RV32ZVFHMIN-NEXT:    sb a4, 64(sp)599; RV32ZVFHMIN-NEXT:    sb a0, 80(sp)600; RV32ZVFHMIN-NEXT:    lh a0, 226(sp)601; RV32ZVFHMIN-NEXT:    lh a1, 354(sp)602; RV32ZVFHMIN-NEXT:    vslidedown.vi v27, v8, 1603; RV32ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m2, ta, ma604; RV32ZVFHMIN-NEXT:    vslidedown.vi v10, v16, 15605; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a0606; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a1607; RV32ZVFHMIN-NEXT:    fle.h a0, fa4, fa5608; RV32ZVFHMIN-NEXT:    xori a0, a0, 1609; RV32ZVFHMIN-NEXT:    sb a0, 113(sp)610; RV32ZVFHMIN-NEXT:    lh a4, 224(sp)611; RV32ZVFHMIN-NEXT:    lh a5, 352(sp)612; RV32ZVFHMIN-NEXT:    vmv.x.s a1, v12613; RV32ZVFHMIN-NEXT:    vmv.x.s a0, v13614; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a4615; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a5616; RV32ZVFHMIN-NEXT:    fle.h a4, fa4, fa5617; RV32ZVFHMIN-NEXT:    xori a4, a4, 1618; RV32ZVFHMIN-NEXT:    sb a4, 112(sp)619; RV32ZVFHMIN-NEXT:    lh a4, 222(sp)620; RV32ZVFHMIN-NEXT:    lh a6, 350(sp)621; RV32ZVFHMIN-NEXT:    vslidedown.vi v12, v8, 15622; RV32ZVFHMIN-NEXT:    vmv.x.s a5, v14623; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a4624; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a6625; RV32ZVFHMIN-NEXT:    fle.h a4, fa4, fa5626; RV32ZVFHMIN-NEXT:    xori a4, a4, 1627; RV32ZVFHMIN-NEXT:    sb a4, 111(sp)628; RV32ZVFHMIN-NEXT:    lh a4, 220(sp)629; RV32ZVFHMIN-NEXT:    lh a6, 348(sp)630; RV32ZVFHMIN-NEXT:    vmv.x.s a7, v15631; RV32ZVFHMIN-NEXT:    vslidedown.vi v14, v16, 14632; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a4633; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a6634; RV32ZVFHMIN-NEXT:    fle.h a4, fa4, fa5635; RV32ZVFHMIN-NEXT:    xori a4, a4, 1636; RV32ZVFHMIN-NEXT:    sb a4, 110(sp)637; RV32ZVFHMIN-NEXT:    lh t0, 218(sp)638; RV32ZVFHMIN-NEXT:    lh t1, 346(sp)639; RV32ZVFHMIN-NEXT:    vmv.x.s a6, v18640; RV32ZVFHMIN-NEXT:    vmv.x.s a4, v19641; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t0642; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t1643; RV32ZVFHMIN-NEXT:    fle.h t0, fa4, fa5644; RV32ZVFHMIN-NEXT:    xori t0, t0, 1645; RV32ZVFHMIN-NEXT:    sb t0, 109(sp)646; RV32ZVFHMIN-NEXT:    lh t0, 216(sp)647; RV32ZVFHMIN-NEXT:    vslidedown.vi v18, v16, 13648; RV32ZVFHMIN-NEXT:    vmv.x.s t1, v20649; RV32ZVFHMIN-NEXT:    lh t2, 344(sp)650; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t0651; RV32ZVFHMIN-NEXT:    vmv.x.s t0, v21652; RV32ZVFHMIN-NEXT:    vslidedown.vi v20, v16, 12653; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t2654; RV32ZVFHMIN-NEXT:    fle.h t2, fa4, fa5655; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a1656; RV32ZVFHMIN-NEXT:    xori a1, t2, 1657; RV32ZVFHMIN-NEXT:    sb a1, 108(sp)658; RV32ZVFHMIN-NEXT:    lh a1, 214(sp)659; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a0660; RV32ZVFHMIN-NEXT:    lh t3, 342(sp)661; RV32ZVFHMIN-NEXT:    fle.h a0, fa4, fa5662; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a1663; RV32ZVFHMIN-NEXT:    vmv.x.s t2, v23664; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t3665; RV32ZVFHMIN-NEXT:    fle.h a1, fa4, fa5666; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a5667; RV32ZVFHMIN-NEXT:    xori a1, a1, 1668; RV32ZVFHMIN-NEXT:    sb a1, 107(sp)669; RV32ZVFHMIN-NEXT:    lh a5, 212(sp)670; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a7671; RV32ZVFHMIN-NEXT:    fle.h a1, fa4, fa5672; RV32ZVFHMIN-NEXT:    lh a7, 340(sp)673; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a5674; RV32ZVFHMIN-NEXT:    vmv.x.s t3, v22675; RV32ZVFHMIN-NEXT:    vslidedown.vi v22, v16, 11676; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a7677; RV32ZVFHMIN-NEXT:    fle.h a5, fa4, fa5678; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a6679; RV32ZVFHMIN-NEXT:    xori a5, a5, 1680; RV32ZVFHMIN-NEXT:    sb a5, 106(sp)681; RV32ZVFHMIN-NEXT:    lh a5, 210(sp)682; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a4683; RV32ZVFHMIN-NEXT:    lh a6, 338(sp)684; RV32ZVFHMIN-NEXT:    fle.h a4, fa4, fa5685; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a5686; RV32ZVFHMIN-NEXT:    vmv.x.s a7, v25687; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a6688; RV32ZVFHMIN-NEXT:    fle.h a5, fa4, fa5689; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t1690; RV32ZVFHMIN-NEXT:    xori a5, a5, 1691; RV32ZVFHMIN-NEXT:    sb a5, 105(sp)692; RV32ZVFHMIN-NEXT:    lh a6, 208(sp)693; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t0694; RV32ZVFHMIN-NEXT:    fle.h a5, fa4, fa5695; RV32ZVFHMIN-NEXT:    lh t0, 336(sp)696; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a6697; RV32ZVFHMIN-NEXT:    vmv.x.s a6, v24698; RV32ZVFHMIN-NEXT:    vslidedown.vi v24, v16, 10699; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t0700; RV32ZVFHMIN-NEXT:    fle.h t0, fa4, fa5701; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t2702; RV32ZVFHMIN-NEXT:    xori t0, t0, 1703; RV32ZVFHMIN-NEXT:    sb t0, 104(sp)704; RV32ZVFHMIN-NEXT:    lh t0, 206(sp)705; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t3706; RV32ZVFHMIN-NEXT:    lh t1, 334(sp)707; RV32ZVFHMIN-NEXT:    fle.h t2, fa4, fa5708; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t0709; RV32ZVFHMIN-NEXT:    vmv.x.s t0, v26710; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t1711; RV32ZVFHMIN-NEXT:    fle.h t1, fa4, fa5712; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a7713; RV32ZVFHMIN-NEXT:    xori a7, t1, 1714; RV32ZVFHMIN-NEXT:    sb a7, 103(sp)715; RV32ZVFHMIN-NEXT:    lh a7, 204(sp)716; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a6717; RV32ZVFHMIN-NEXT:    fle.h a6, fa4, fa5718; RV32ZVFHMIN-NEXT:    lh t1, 332(sp)719; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a7720; RV32ZVFHMIN-NEXT:    vmv.x.s a7, v27721; RV32ZVFHMIN-NEXT:    vslidedown.vi v26, v16, 9722; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t1723; RV32ZVFHMIN-NEXT:    fle.h t1, fa4, fa5724; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t0725; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a7726; RV32ZVFHMIN-NEXT:    xori a7, t1, 1727; RV32ZVFHMIN-NEXT:    sb a7, 102(sp)728; RV32ZVFHMIN-NEXT:    lh a7, 202(sp)729; RV32ZVFHMIN-NEXT:    lh t0, 330(sp)730; RV32ZVFHMIN-NEXT:    fle.h t1, fa4, fa5731; RV32ZVFHMIN-NEXT:    xori a0, a0, 1732; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a7733; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t0734; RV32ZVFHMIN-NEXT:    fle.h a7, fa4, fa5735; RV32ZVFHMIN-NEXT:    xori a7, a7, 1736; RV32ZVFHMIN-NEXT:    sb a7, 101(sp)737; RV32ZVFHMIN-NEXT:    lh a7, 200(sp)738; RV32ZVFHMIN-NEXT:    lh t0, 328(sp)739; RV32ZVFHMIN-NEXT:    xori a1, a1, 1740; RV32ZVFHMIN-NEXT:    xori a4, a4, 1741; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a7742; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t0743; RV32ZVFHMIN-NEXT:    fle.h a7, fa4, fa5744; RV32ZVFHMIN-NEXT:    xori a7, a7, 1745; RV32ZVFHMIN-NEXT:    sb a7, 100(sp)746; RV32ZVFHMIN-NEXT:    lh a7, 198(sp)747; RV32ZVFHMIN-NEXT:    lh t0, 326(sp)748; RV32ZVFHMIN-NEXT:    xori a5, a5, 1749; RV32ZVFHMIN-NEXT:    xori t2, t2, 1750; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a7751; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t0752; RV32ZVFHMIN-NEXT:    fle.h a7, fa4, fa5753; RV32ZVFHMIN-NEXT:    xori a7, a7, 1754; RV32ZVFHMIN-NEXT:    sb a7, 99(sp)755; RV32ZVFHMIN-NEXT:    lh a7, 196(sp)756; RV32ZVFHMIN-NEXT:    lh t0, 324(sp)757; RV32ZVFHMIN-NEXT:    xori a6, a6, 1758; RV32ZVFHMIN-NEXT:    xori t1, t1, 1759; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a7760; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t0761; RV32ZVFHMIN-NEXT:    fle.h a7, fa4, fa5762; RV32ZVFHMIN-NEXT:    xori a7, a7, 1763; RV32ZVFHMIN-NEXT:    sb a7, 98(sp)764; RV32ZVFHMIN-NEXT:    lh a7, 194(sp)765; RV32ZVFHMIN-NEXT:    lh t0, 322(sp)766; RV32ZVFHMIN-NEXT:    sb t1, 65(sp)767; RV32ZVFHMIN-NEXT:    sb a6, 66(sp)768; RV32ZVFHMIN-NEXT:    sb t2, 67(sp)769; RV32ZVFHMIN-NEXT:    sb a5, 68(sp)770; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a7771; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t0772; RV32ZVFHMIN-NEXT:    fle.h a5, fa4, fa5773; RV32ZVFHMIN-NEXT:    xori a5, a5, 1774; RV32ZVFHMIN-NEXT:    sb a4, 69(sp)775; RV32ZVFHMIN-NEXT:    sb a1, 70(sp)776; RV32ZVFHMIN-NEXT:    sb a0, 71(sp)777; RV32ZVFHMIN-NEXT:    sb a5, 97(sp)778; RV32ZVFHMIN-NEXT:    lh a0, 254(sp)779; RV32ZVFHMIN-NEXT:    lh a1, 382(sp)780; RV32ZVFHMIN-NEXT:    vslidedown.vi v16, v16, 8781; RV32ZVFHMIN-NEXT:    vslidedown.vi v2, v8, 14782; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a0783; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a1784; RV32ZVFHMIN-NEXT:    fle.h a0, fa4, fa5785; RV32ZVFHMIN-NEXT:    xori a0, a0, 1786; RV32ZVFHMIN-NEXT:    sb a0, 127(sp)787; RV32ZVFHMIN-NEXT:    lh a0, 252(sp)788; RV32ZVFHMIN-NEXT:    lh a1, 380(sp)789; RV32ZVFHMIN-NEXT:    vslidedown.vi v0, v8, 13790; RV32ZVFHMIN-NEXT:    vslidedown.vi v4, v8, 12791; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a0792; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a1793; RV32ZVFHMIN-NEXT:    fle.h a0, fa4, fa5794; RV32ZVFHMIN-NEXT:    xori a0, a0, 1795; RV32ZVFHMIN-NEXT:    sb a0, 126(sp)796; RV32ZVFHMIN-NEXT:    lh a0, 250(sp)797; RV32ZVFHMIN-NEXT:    lh a1, 378(sp)798; RV32ZVFHMIN-NEXT:    vslidedown.vi v6, v8, 11799; RV32ZVFHMIN-NEXT:    vslidedown.vi v30, v8, 10800; RV32ZVFHMIN-NEXT:    vslidedown.vi v28, v8, 9801; RV32ZVFHMIN-NEXT:    vslidedown.vi v8, v8, 8802; RV32ZVFHMIN-NEXT:    vmv.x.s a4, v10803; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a0804; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a1805; RV32ZVFHMIN-NEXT:    fle.h a0, fa4, fa5806; RV32ZVFHMIN-NEXT:    xori a0, a0, 1807; RV32ZVFHMIN-NEXT:    sb a0, 125(sp)808; RV32ZVFHMIN-NEXT:    lh a0, 248(sp)809; RV32ZVFHMIN-NEXT:    lh a1, 376(sp)810; RV32ZVFHMIN-NEXT:    vmv.x.s a5, v12811; RV32ZVFHMIN-NEXT:    vmv.x.s a6, v14812; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a0813; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a1814; RV32ZVFHMIN-NEXT:    fle.h a0, fa4, fa5815; RV32ZVFHMIN-NEXT:    xori a0, a0, 1816; RV32ZVFHMIN-NEXT:    sb a0, 124(sp)817; RV32ZVFHMIN-NEXT:    lh a0, 246(sp)818; RV32ZVFHMIN-NEXT:    lh a1, 374(sp)819; RV32ZVFHMIN-NEXT:    vmv.x.s a7, v2820; RV32ZVFHMIN-NEXT:    vmv.x.s t0, v18821; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a0822; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a1823; RV32ZVFHMIN-NEXT:    fle.h a0, fa4, fa5824; RV32ZVFHMIN-NEXT:    xori a0, a0, 1825; RV32ZVFHMIN-NEXT:    sb a0, 123(sp)826; RV32ZVFHMIN-NEXT:    lh a0, 244(sp)827; RV32ZVFHMIN-NEXT:    vmv.x.s t1, v0828; RV32ZVFHMIN-NEXT:    lh a1, 372(sp)829; RV32ZVFHMIN-NEXT:    vmv.x.s t2, v20830; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a0831; RV32ZVFHMIN-NEXT:    vmv.x.s t3, v4832; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a1833; RV32ZVFHMIN-NEXT:    fle.h a0, fa4, fa5834; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a4835; RV32ZVFHMIN-NEXT:    xori a0, a0, 1836; RV32ZVFHMIN-NEXT:    sb a0, 122(sp)837; RV32ZVFHMIN-NEXT:    lh a1, 242(sp)838; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a5839; RV32ZVFHMIN-NEXT:    lh a4, 370(sp)840; RV32ZVFHMIN-NEXT:    fle.h a0, fa4, fa5841; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a1842; RV32ZVFHMIN-NEXT:    vmv.x.s a5, v22843; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a4844; RV32ZVFHMIN-NEXT:    fle.h a1, fa4, fa5845; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a6846; RV32ZVFHMIN-NEXT:    xori a1, a1, 1847; RV32ZVFHMIN-NEXT:    sb a1, 121(sp)848; RV32ZVFHMIN-NEXT:    lh a4, 240(sp)849; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a7850; RV32ZVFHMIN-NEXT:    lh a6, 368(sp)851; RV32ZVFHMIN-NEXT:    fle.h a1, fa4, fa5852; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a4853; RV32ZVFHMIN-NEXT:    vmv.x.s a7, v6854; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a6855; RV32ZVFHMIN-NEXT:    fle.h a4, fa4, fa5856; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t0857; RV32ZVFHMIN-NEXT:    xori a4, a4, 1858; RV32ZVFHMIN-NEXT:    sb a4, 120(sp)859; RV32ZVFHMIN-NEXT:    lh a6, 238(sp)860; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t1861; RV32ZVFHMIN-NEXT:    lh t0, 366(sp)862; RV32ZVFHMIN-NEXT:    fle.h a4, fa4, fa5863; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a6864; RV32ZVFHMIN-NEXT:    vmv.x.s a6, v24865; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t0866; RV32ZVFHMIN-NEXT:    fle.h t0, fa4, fa5867; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t2868; RV32ZVFHMIN-NEXT:    xori t0, t0, 1869; RV32ZVFHMIN-NEXT:    sb t0, 119(sp)870; RV32ZVFHMIN-NEXT:    lh t0, 236(sp)871; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t3872; RV32ZVFHMIN-NEXT:    lh t1, 364(sp)873; RV32ZVFHMIN-NEXT:    fle.h t2, fa4, fa5874; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t0875; RV32ZVFHMIN-NEXT:    vmv.x.s t0, v30876; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t1877; RV32ZVFHMIN-NEXT:    fle.h t1, fa4, fa5878; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a5879; RV32ZVFHMIN-NEXT:    xori a5, t1, 1880; RV32ZVFHMIN-NEXT:    sb a5, 118(sp)881; RV32ZVFHMIN-NEXT:    lh a5, 234(sp)882; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a7883; RV32ZVFHMIN-NEXT:    lh a7, 362(sp)884; RV32ZVFHMIN-NEXT:    fle.h t1, fa4, fa5885; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a5886; RV32ZVFHMIN-NEXT:    vmv.x.s a5, v26887; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a7888; RV32ZVFHMIN-NEXT:    fle.h a7, fa4, fa5889; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a6890; RV32ZVFHMIN-NEXT:    xori a6, a7, 1891; RV32ZVFHMIN-NEXT:    sb a6, 117(sp)892; RV32ZVFHMIN-NEXT:    lh a6, 232(sp)893; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t0894; RV32ZVFHMIN-NEXT:    lh a7, 360(sp)895; RV32ZVFHMIN-NEXT:    fle.h t0, fa4, fa5896; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a6897; RV32ZVFHMIN-NEXT:    vmv.x.s a6, v28898; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a7899; RV32ZVFHMIN-NEXT:    fle.h a7, fa4, fa5900; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a5901; RV32ZVFHMIN-NEXT:    xori a5, a7, 1902; RV32ZVFHMIN-NEXT:    sb a5, 116(sp)903; RV32ZVFHMIN-NEXT:    lh a5, 230(sp)904; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a6905; RV32ZVFHMIN-NEXT:    lh a6, 358(sp)906; RV32ZVFHMIN-NEXT:    fle.h a7, fa4, fa5907; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a5908; RV32ZVFHMIN-NEXT:    vmv.x.s a5, v16909; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a6910; RV32ZVFHMIN-NEXT:    fle.h a6, fa4, fa5911; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a5912; RV32ZVFHMIN-NEXT:    vmv.x.s a5, v8913; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a5914; RV32ZVFHMIN-NEXT:    xori a0, a0, 1915; RV32ZVFHMIN-NEXT:    xori a1, a1, 1916; RV32ZVFHMIN-NEXT:    xori a4, a4, 1917; RV32ZVFHMIN-NEXT:    xori a5, t2, 1918; RV32ZVFHMIN-NEXT:    xori a6, a6, 1919; RV32ZVFHMIN-NEXT:    sb a6, 115(sp)920; RV32ZVFHMIN-NEXT:    lh a6, 228(sp)921; RV32ZVFHMIN-NEXT:    lh t2, 356(sp)922; RV32ZVFHMIN-NEXT:    sb a5, 76(sp)923; RV32ZVFHMIN-NEXT:    sb a4, 77(sp)924; RV32ZVFHMIN-NEXT:    sb a1, 78(sp)925; RV32ZVFHMIN-NEXT:    sb a0, 79(sp)926; RV32ZVFHMIN-NEXT:    fle.h a0, fa4, fa5927; RV32ZVFHMIN-NEXT:    xori a1, t1, 1928; RV32ZVFHMIN-NEXT:    xori a4, t0, 1929; RV32ZVFHMIN-NEXT:    xori a5, a7, 1930; RV32ZVFHMIN-NEXT:    xori a0, a0, 1931; RV32ZVFHMIN-NEXT:    sb a0, 72(sp)932; RV32ZVFHMIN-NEXT:    sb a5, 73(sp)933; RV32ZVFHMIN-NEXT:    sb a4, 74(sp)934; RV32ZVFHMIN-NEXT:    sb a1, 75(sp)935; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a6936; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t2937; RV32ZVFHMIN-NEXT:    fle.h a0, fa4, fa5938; RV32ZVFHMIN-NEXT:    xori a0, a0, 1939; RV32ZVFHMIN-NEXT:    sb a0, 114(sp)940; RV32ZVFHMIN-NEXT:    addi a0, sp, 64941; RV32ZVFHMIN-NEXT:    vsetvli zero, a3, e8, m4, ta, ma942; RV32ZVFHMIN-NEXT:    vle8.v v8, (a0)943; RV32ZVFHMIN-NEXT:    vand.vi v8, v8, 1944; RV32ZVFHMIN-NEXT:    vmsne.vi v12, v8, 0945; RV32ZVFHMIN-NEXT:    vsm.v v12, (a2)946; RV32ZVFHMIN-NEXT:    addi sp, s0, -512947; RV32ZVFHMIN-NEXT:    .cfi_def_cfa sp, 512948; RV32ZVFHMIN-NEXT:    lw ra, 508(sp) # 4-byte Folded Reload949; RV32ZVFHMIN-NEXT:    lw s0, 504(sp) # 4-byte Folded Reload950; RV32ZVFHMIN-NEXT:    .cfi_restore ra951; RV32ZVFHMIN-NEXT:    .cfi_restore s0952; RV32ZVFHMIN-NEXT:    addi sp, sp, 512953; RV32ZVFHMIN-NEXT:    .cfi_def_cfa_offset 0954; RV32ZVFHMIN-NEXT:    ret955;956; RV64ZVFHMIN-LABEL: fcmp_ugt_vv_v64f16:957; RV64ZVFHMIN:       # %bb.0:958; RV64ZVFHMIN-NEXT:    addi sp, sp, -512959; RV64ZVFHMIN-NEXT:    .cfi_def_cfa_offset 512960; RV64ZVFHMIN-NEXT:    sd ra, 504(sp) # 8-byte Folded Spill961; RV64ZVFHMIN-NEXT:    sd s0, 496(sp) # 8-byte Folded Spill962; RV64ZVFHMIN-NEXT:    .cfi_offset ra, -8963; RV64ZVFHMIN-NEXT:    .cfi_offset s0, -16964; RV64ZVFHMIN-NEXT:    addi s0, sp, 512965; RV64ZVFHMIN-NEXT:    .cfi_def_cfa s0, 0966; RV64ZVFHMIN-NEXT:    andi sp, sp, -128967; RV64ZVFHMIN-NEXT:    li a3, 64968; RV64ZVFHMIN-NEXT:    vsetvli zero, a3, e16, m8, ta, ma969; RV64ZVFHMIN-NEXT:    vle16.v v16, (a1)970; RV64ZVFHMIN-NEXT:    vle16.v v8, (a0)971; RV64ZVFHMIN-NEXT:    addi a0, sp, 128972; RV64ZVFHMIN-NEXT:    addi a1, sp, 256973; RV64ZVFHMIN-NEXT:    vse16.v v16, (a0)974; RV64ZVFHMIN-NEXT:    vse16.v v8, (a1)975; RV64ZVFHMIN-NEXT:    lh a0, 192(sp)976; RV64ZVFHMIN-NEXT:    lh a1, 320(sp)977; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a0978; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a1979; RV64ZVFHMIN-NEXT:    fle.h a0, fa4, fa5980; RV64ZVFHMIN-NEXT:    xori a0, a0, 1981; RV64ZVFHMIN-NEXT:    sb a0, 96(sp)982; RV64ZVFHMIN-NEXT:    lh a0, 190(sp)983; RV64ZVFHMIN-NEXT:    lh a1, 318(sp)984; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a0985; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a1986; RV64ZVFHMIN-NEXT:    fle.h a0, fa4, fa5987; RV64ZVFHMIN-NEXT:    xori a0, a0, 1988; RV64ZVFHMIN-NEXT:    sb a0, 95(sp)989; RV64ZVFHMIN-NEXT:    lh a0, 188(sp)990; RV64ZVFHMIN-NEXT:    lh a1, 316(sp)991; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a0992; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a1993; RV64ZVFHMIN-NEXT:    fle.h a0, fa4, fa5994; RV64ZVFHMIN-NEXT:    xori a0, a0, 1995; RV64ZVFHMIN-NEXT:    sb a0, 94(sp)996; RV64ZVFHMIN-NEXT:    lh a0, 186(sp)997; RV64ZVFHMIN-NEXT:    lh a1, 314(sp)998; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a0999; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a11000; RV64ZVFHMIN-NEXT:    fle.h a0, fa4, fa51001; RV64ZVFHMIN-NEXT:    xori a0, a0, 11002; RV64ZVFHMIN-NEXT:    sb a0, 93(sp)1003; RV64ZVFHMIN-NEXT:    lh a0, 184(sp)1004; RV64ZVFHMIN-NEXT:    lh a1, 312(sp)1005; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a01006; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a11007; RV64ZVFHMIN-NEXT:    fle.h a0, fa4, fa51008; RV64ZVFHMIN-NEXT:    xori a0, a0, 11009; RV64ZVFHMIN-NEXT:    sb a0, 92(sp)1010; RV64ZVFHMIN-NEXT:    lh a0, 182(sp)1011; RV64ZVFHMIN-NEXT:    lh a1, 310(sp)1012; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a01013; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a11014; RV64ZVFHMIN-NEXT:    fle.h a0, fa4, fa51015; RV64ZVFHMIN-NEXT:    xori a0, a0, 11016; RV64ZVFHMIN-NEXT:    sb a0, 91(sp)1017; RV64ZVFHMIN-NEXT:    lh a0, 180(sp)1018; RV64ZVFHMIN-NEXT:    lh a1, 308(sp)1019; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a01020; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a11021; RV64ZVFHMIN-NEXT:    fle.h a0, fa4, fa51022; RV64ZVFHMIN-NEXT:    xori a0, a0, 11023; RV64ZVFHMIN-NEXT:    sb a0, 90(sp)1024; RV64ZVFHMIN-NEXT:    lh a0, 178(sp)1025; RV64ZVFHMIN-NEXT:    lh a1, 306(sp)1026; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a01027; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a11028; RV64ZVFHMIN-NEXT:    fle.h a0, fa4, fa51029; RV64ZVFHMIN-NEXT:    xori a0, a0, 11030; RV64ZVFHMIN-NEXT:    sb a0, 89(sp)1031; RV64ZVFHMIN-NEXT:    lh a1, 176(sp)1032; RV64ZVFHMIN-NEXT:    lh a4, 304(sp)1033; RV64ZVFHMIN-NEXT:    vmv.x.s a0, v161034; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a11035; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a41036; RV64ZVFHMIN-NEXT:    fle.h a1, fa4, fa51037; RV64ZVFHMIN-NEXT:    xori a1, a1, 11038; RV64ZVFHMIN-NEXT:    sb a1, 88(sp)1039; RV64ZVFHMIN-NEXT:    lh a4, 174(sp)1040; RV64ZVFHMIN-NEXT:    lh a5, 302(sp)1041; RV64ZVFHMIN-NEXT:    vmv.x.s a1, v81042; RV64ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m1, ta, ma1043; RV64ZVFHMIN-NEXT:    vslidedown.vi v12, v16, 71044; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a41045; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a51046; RV64ZVFHMIN-NEXT:    fle.h a4, fa4, fa51047; RV64ZVFHMIN-NEXT:    xori a4, a4, 11048; RV64ZVFHMIN-NEXT:    sb a4, 87(sp)1049; RV64ZVFHMIN-NEXT:    lh a4, 172(sp)1050; RV64ZVFHMIN-NEXT:    lh a5, 300(sp)1051; RV64ZVFHMIN-NEXT:    vslidedown.vi v13, v8, 71052; RV64ZVFHMIN-NEXT:    vslidedown.vi v14, v16, 61053; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a41054; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a51055; RV64ZVFHMIN-NEXT:    fle.h a4, fa4, fa51056; RV64ZVFHMIN-NEXT:    xori a4, a4, 11057; RV64ZVFHMIN-NEXT:    sb a4, 86(sp)1058; RV64ZVFHMIN-NEXT:    lh a4, 170(sp)1059; RV64ZVFHMIN-NEXT:    lh a5, 298(sp)1060; RV64ZVFHMIN-NEXT:    vslidedown.vi v15, v8, 61061; RV64ZVFHMIN-NEXT:    vslidedown.vi v18, v16, 51062; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a41063; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a51064; RV64ZVFHMIN-NEXT:    fle.h a4, fa4, fa51065; RV64ZVFHMIN-NEXT:    xori a4, a4, 11066; RV64ZVFHMIN-NEXT:    sb a4, 85(sp)1067; RV64ZVFHMIN-NEXT:    lh a4, 168(sp)1068; RV64ZVFHMIN-NEXT:    lh a5, 296(sp)1069; RV64ZVFHMIN-NEXT:    vslidedown.vi v19, v8, 51070; RV64ZVFHMIN-NEXT:    vslidedown.vi v20, v16, 41071; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a41072; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a51073; RV64ZVFHMIN-NEXT:    fle.h a4, fa4, fa51074; RV64ZVFHMIN-NEXT:    xori a4, a4, 11075; RV64ZVFHMIN-NEXT:    sb a4, 84(sp)1076; RV64ZVFHMIN-NEXT:    lh a4, 166(sp)1077; RV64ZVFHMIN-NEXT:    lh a5, 294(sp)1078; RV64ZVFHMIN-NEXT:    vslidedown.vi v21, v8, 41079; RV64ZVFHMIN-NEXT:    vslidedown.vi v23, v16, 31080; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a41081; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a51082; RV64ZVFHMIN-NEXT:    fle.h a4, fa4, fa51083; RV64ZVFHMIN-NEXT:    xori a4, a4, 11084; RV64ZVFHMIN-NEXT:    sb a4, 83(sp)1085; RV64ZVFHMIN-NEXT:    lh a4, 164(sp)1086; RV64ZVFHMIN-NEXT:    lh a5, 292(sp)1087; RV64ZVFHMIN-NEXT:    vslidedown.vi v22, v8, 31088; RV64ZVFHMIN-NEXT:    vslidedown.vi v25, v16, 21089; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a41090; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a51091; RV64ZVFHMIN-NEXT:    fle.h a4, fa4, fa51092; RV64ZVFHMIN-NEXT:    xori a4, a4, 11093; RV64ZVFHMIN-NEXT:    sb a4, 82(sp)1094; RV64ZVFHMIN-NEXT:    lh a4, 162(sp)1095; RV64ZVFHMIN-NEXT:    lh a5, 290(sp)1096; RV64ZVFHMIN-NEXT:    vslidedown.vi v24, v8, 21097; RV64ZVFHMIN-NEXT:    vslidedown.vi v26, v16, 11098; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a41099; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a51100; RV64ZVFHMIN-NEXT:    fle.h a4, fa4, fa51101; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a01102; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a11103; RV64ZVFHMIN-NEXT:    xori a0, a4, 11104; RV64ZVFHMIN-NEXT:    sb a0, 81(sp)1105; RV64ZVFHMIN-NEXT:    lh a0, 160(sp)1106; RV64ZVFHMIN-NEXT:    lh a1, 288(sp)1107; RV64ZVFHMIN-NEXT:    fle.h a4, fa4, fa51108; RV64ZVFHMIN-NEXT:    xori a4, a4, 11109; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a01110; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a11111; RV64ZVFHMIN-NEXT:    fle.h a0, fa4, fa51112; RV64ZVFHMIN-NEXT:    xori a0, a0, 11113; RV64ZVFHMIN-NEXT:    sb a4, 64(sp)1114; RV64ZVFHMIN-NEXT:    sb a0, 80(sp)1115; RV64ZVFHMIN-NEXT:    lh a0, 226(sp)1116; RV64ZVFHMIN-NEXT:    lh a1, 354(sp)1117; RV64ZVFHMIN-NEXT:    vslidedown.vi v27, v8, 11118; RV64ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m2, ta, ma1119; RV64ZVFHMIN-NEXT:    vslidedown.vi v10, v16, 151120; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a01121; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a11122; RV64ZVFHMIN-NEXT:    fle.h a0, fa4, fa51123; RV64ZVFHMIN-NEXT:    xori a0, a0, 11124; RV64ZVFHMIN-NEXT:    sb a0, 113(sp)1125; RV64ZVFHMIN-NEXT:    lh a4, 224(sp)1126; RV64ZVFHMIN-NEXT:    lh a5, 352(sp)1127; RV64ZVFHMIN-NEXT:    vmv.x.s a1, v121128; RV64ZVFHMIN-NEXT:    vmv.x.s a0, v131129; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a41130; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a51131; RV64ZVFHMIN-NEXT:    fle.h a4, fa4, fa51132; RV64ZVFHMIN-NEXT:    xori a4, a4, 11133; RV64ZVFHMIN-NEXT:    sb a4, 112(sp)1134; RV64ZVFHMIN-NEXT:    lh a4, 222(sp)1135; RV64ZVFHMIN-NEXT:    lh a6, 350(sp)1136; RV64ZVFHMIN-NEXT:    vslidedown.vi v12, v8, 151137; RV64ZVFHMIN-NEXT:    vmv.x.s a5, v141138; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a41139; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a61140; RV64ZVFHMIN-NEXT:    fle.h a4, fa4, fa51141; RV64ZVFHMIN-NEXT:    xori a4, a4, 11142; RV64ZVFHMIN-NEXT:    sb a4, 111(sp)1143; RV64ZVFHMIN-NEXT:    lh a4, 220(sp)1144; RV64ZVFHMIN-NEXT:    lh a6, 348(sp)1145; RV64ZVFHMIN-NEXT:    vmv.x.s a7, v151146; RV64ZVFHMIN-NEXT:    vslidedown.vi v14, v16, 141147; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a41148; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a61149; RV64ZVFHMIN-NEXT:    fle.h a4, fa4, fa51150; RV64ZVFHMIN-NEXT:    xori a4, a4, 11151; RV64ZVFHMIN-NEXT:    sb a4, 110(sp)1152; RV64ZVFHMIN-NEXT:    lh t0, 218(sp)1153; RV64ZVFHMIN-NEXT:    lh t1, 346(sp)1154; RV64ZVFHMIN-NEXT:    vmv.x.s a6, v181155; RV64ZVFHMIN-NEXT:    vmv.x.s a4, v191156; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t01157; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t11158; RV64ZVFHMIN-NEXT:    fle.h t0, fa4, fa51159; RV64ZVFHMIN-NEXT:    xori t0, t0, 11160; RV64ZVFHMIN-NEXT:    sb t0, 109(sp)1161; RV64ZVFHMIN-NEXT:    lh t0, 216(sp)1162; RV64ZVFHMIN-NEXT:    vslidedown.vi v18, v16, 131163; RV64ZVFHMIN-NEXT:    vmv.x.s t1, v201164; RV64ZVFHMIN-NEXT:    lh t2, 344(sp)1165; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t01166; RV64ZVFHMIN-NEXT:    vmv.x.s t0, v211167; RV64ZVFHMIN-NEXT:    vslidedown.vi v20, v16, 121168; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t21169; RV64ZVFHMIN-NEXT:    fle.h t2, fa4, fa51170; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a11171; RV64ZVFHMIN-NEXT:    xori a1, t2, 11172; RV64ZVFHMIN-NEXT:    sb a1, 108(sp)1173; RV64ZVFHMIN-NEXT:    lh a1, 214(sp)1174; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a01175; RV64ZVFHMIN-NEXT:    lh t3, 342(sp)1176; RV64ZVFHMIN-NEXT:    fle.h a0, fa4, fa51177; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a11178; RV64ZVFHMIN-NEXT:    vmv.x.s t2, v231179; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t31180; RV64ZVFHMIN-NEXT:    fle.h a1, fa4, fa51181; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a51182; RV64ZVFHMIN-NEXT:    xori a1, a1, 11183; RV64ZVFHMIN-NEXT:    sb a1, 107(sp)1184; RV64ZVFHMIN-NEXT:    lh a5, 212(sp)1185; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a71186; RV64ZVFHMIN-NEXT:    fle.h a1, fa4, fa51187; RV64ZVFHMIN-NEXT:    lh a7, 340(sp)1188; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a51189; RV64ZVFHMIN-NEXT:    vmv.x.s t3, v221190; RV64ZVFHMIN-NEXT:    vslidedown.vi v22, v16, 111191; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a71192; RV64ZVFHMIN-NEXT:    fle.h a5, fa4, fa51193; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a61194; RV64ZVFHMIN-NEXT:    xori a5, a5, 11195; RV64ZVFHMIN-NEXT:    sb a5, 106(sp)1196; RV64ZVFHMIN-NEXT:    lh a5, 210(sp)1197; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a41198; RV64ZVFHMIN-NEXT:    lh a6, 338(sp)1199; RV64ZVFHMIN-NEXT:    fle.h a4, fa4, fa51200; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a51201; RV64ZVFHMIN-NEXT:    vmv.x.s a7, v251202; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a61203; RV64ZVFHMIN-NEXT:    fle.h a5, fa4, fa51204; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t11205; RV64ZVFHMIN-NEXT:    xori a5, a5, 11206; RV64ZVFHMIN-NEXT:    sb a5, 105(sp)1207; RV64ZVFHMIN-NEXT:    lh a6, 208(sp)1208; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t01209; RV64ZVFHMIN-NEXT:    fle.h a5, fa4, fa51210; RV64ZVFHMIN-NEXT:    lh t0, 336(sp)1211; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a61212; RV64ZVFHMIN-NEXT:    vmv.x.s a6, v241213; RV64ZVFHMIN-NEXT:    vslidedown.vi v24, v16, 101214; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t01215; RV64ZVFHMIN-NEXT:    fle.h t0, fa4, fa51216; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t21217; RV64ZVFHMIN-NEXT:    xori t0, t0, 11218; RV64ZVFHMIN-NEXT:    sb t0, 104(sp)1219; RV64ZVFHMIN-NEXT:    lh t0, 206(sp)1220; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t31221; RV64ZVFHMIN-NEXT:    lh t1, 334(sp)1222; RV64ZVFHMIN-NEXT:    fle.h t2, fa4, fa51223; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t01224; RV64ZVFHMIN-NEXT:    vmv.x.s t0, v261225; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t11226; RV64ZVFHMIN-NEXT:    fle.h t1, fa4, fa51227; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a71228; RV64ZVFHMIN-NEXT:    xori a7, t1, 11229; RV64ZVFHMIN-NEXT:    sb a7, 103(sp)1230; RV64ZVFHMIN-NEXT:    lh a7, 204(sp)1231; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a61232; RV64ZVFHMIN-NEXT:    fle.h a6, fa4, fa51233; RV64ZVFHMIN-NEXT:    lh t1, 332(sp)1234; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a71235; RV64ZVFHMIN-NEXT:    vmv.x.s a7, v271236; RV64ZVFHMIN-NEXT:    vslidedown.vi v26, v16, 91237; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t11238; RV64ZVFHMIN-NEXT:    fle.h t1, fa4, fa51239; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t01240; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a71241; RV64ZVFHMIN-NEXT:    xori a7, t1, 11242; RV64ZVFHMIN-NEXT:    sb a7, 102(sp)1243; RV64ZVFHMIN-NEXT:    lh a7, 202(sp)1244; RV64ZVFHMIN-NEXT:    lh t0, 330(sp)1245; RV64ZVFHMIN-NEXT:    fle.h t1, fa4, fa51246; RV64ZVFHMIN-NEXT:    xori a0, a0, 11247; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a71248; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t01249; RV64ZVFHMIN-NEXT:    fle.h a7, fa4, fa51250; RV64ZVFHMIN-NEXT:    xori a7, a7, 11251; RV64ZVFHMIN-NEXT:    sb a7, 101(sp)1252; RV64ZVFHMIN-NEXT:    lh a7, 200(sp)1253; RV64ZVFHMIN-NEXT:    lh t0, 328(sp)1254; RV64ZVFHMIN-NEXT:    xori a1, a1, 11255; RV64ZVFHMIN-NEXT:    xori a4, a4, 11256; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a71257; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t01258; RV64ZVFHMIN-NEXT:    fle.h a7, fa4, fa51259; RV64ZVFHMIN-NEXT:    xori a7, a7, 11260; RV64ZVFHMIN-NEXT:    sb a7, 100(sp)1261; RV64ZVFHMIN-NEXT:    lh a7, 198(sp)1262; RV64ZVFHMIN-NEXT:    lh t0, 326(sp)1263; RV64ZVFHMIN-NEXT:    xori a5, a5, 11264; RV64ZVFHMIN-NEXT:    xori t2, t2, 11265; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a71266; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t01267; RV64ZVFHMIN-NEXT:    fle.h a7, fa4, fa51268; RV64ZVFHMIN-NEXT:    xori a7, a7, 11269; RV64ZVFHMIN-NEXT:    sb a7, 99(sp)1270; RV64ZVFHMIN-NEXT:    lh a7, 196(sp)1271; RV64ZVFHMIN-NEXT:    lh t0, 324(sp)1272; RV64ZVFHMIN-NEXT:    xori a6, a6, 11273; RV64ZVFHMIN-NEXT:    xori t1, t1, 11274; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a71275; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t01276; RV64ZVFHMIN-NEXT:    fle.h a7, fa4, fa51277; RV64ZVFHMIN-NEXT:    xori a7, a7, 11278; RV64ZVFHMIN-NEXT:    sb a7, 98(sp)1279; RV64ZVFHMIN-NEXT:    lh a7, 194(sp)1280; RV64ZVFHMIN-NEXT:    lh t0, 322(sp)1281; RV64ZVFHMIN-NEXT:    sb t1, 65(sp)1282; RV64ZVFHMIN-NEXT:    sb a6, 66(sp)1283; RV64ZVFHMIN-NEXT:    sb t2, 67(sp)1284; RV64ZVFHMIN-NEXT:    sb a5, 68(sp)1285; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a71286; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t01287; RV64ZVFHMIN-NEXT:    fle.h a5, fa4, fa51288; RV64ZVFHMIN-NEXT:    xori a5, a5, 11289; RV64ZVFHMIN-NEXT:    sb a4, 69(sp)1290; RV64ZVFHMIN-NEXT:    sb a1, 70(sp)1291; RV64ZVFHMIN-NEXT:    sb a0, 71(sp)1292; RV64ZVFHMIN-NEXT:    sb a5, 97(sp)1293; RV64ZVFHMIN-NEXT:    lh a0, 254(sp)1294; RV64ZVFHMIN-NEXT:    lh a1, 382(sp)1295; RV64ZVFHMIN-NEXT:    vslidedown.vi v16, v16, 81296; RV64ZVFHMIN-NEXT:    vslidedown.vi v2, v8, 141297; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a01298; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a11299; RV64ZVFHMIN-NEXT:    fle.h a0, fa4, fa51300; RV64ZVFHMIN-NEXT:    xori a0, a0, 11301; RV64ZVFHMIN-NEXT:    sb a0, 127(sp)1302; RV64ZVFHMIN-NEXT:    lh a0, 252(sp)1303; RV64ZVFHMIN-NEXT:    lh a1, 380(sp)1304; RV64ZVFHMIN-NEXT:    vslidedown.vi v0, v8, 131305; RV64ZVFHMIN-NEXT:    vslidedown.vi v4, v8, 121306; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a01307; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a11308; RV64ZVFHMIN-NEXT:    fle.h a0, fa4, fa51309; RV64ZVFHMIN-NEXT:    xori a0, a0, 11310; RV64ZVFHMIN-NEXT:    sb a0, 126(sp)1311; RV64ZVFHMIN-NEXT:    lh a0, 250(sp)1312; RV64ZVFHMIN-NEXT:    lh a1, 378(sp)1313; RV64ZVFHMIN-NEXT:    vslidedown.vi v6, v8, 111314; RV64ZVFHMIN-NEXT:    vslidedown.vi v30, v8, 101315; RV64ZVFHMIN-NEXT:    vslidedown.vi v28, v8, 91316; RV64ZVFHMIN-NEXT:    vslidedown.vi v8, v8, 81317; RV64ZVFHMIN-NEXT:    vmv.x.s a4, v101318; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a01319; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a11320; RV64ZVFHMIN-NEXT:    fle.h a0, fa4, fa51321; RV64ZVFHMIN-NEXT:    xori a0, a0, 11322; RV64ZVFHMIN-NEXT:    sb a0, 125(sp)1323; RV64ZVFHMIN-NEXT:    lh a0, 248(sp)1324; RV64ZVFHMIN-NEXT:    lh a1, 376(sp)1325; RV64ZVFHMIN-NEXT:    vmv.x.s a5, v121326; RV64ZVFHMIN-NEXT:    vmv.x.s a6, v141327; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a01328; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a11329; RV64ZVFHMIN-NEXT:    fle.h a0, fa4, fa51330; RV64ZVFHMIN-NEXT:    xori a0, a0, 11331; RV64ZVFHMIN-NEXT:    sb a0, 124(sp)1332; RV64ZVFHMIN-NEXT:    lh a0, 246(sp)1333; RV64ZVFHMIN-NEXT:    lh a1, 374(sp)1334; RV64ZVFHMIN-NEXT:    vmv.x.s a7, v21335; RV64ZVFHMIN-NEXT:    vmv.x.s t0, v181336; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a01337; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a11338; RV64ZVFHMIN-NEXT:    fle.h a0, fa4, fa51339; RV64ZVFHMIN-NEXT:    xori a0, a0, 11340; RV64ZVFHMIN-NEXT:    sb a0, 123(sp)1341; RV64ZVFHMIN-NEXT:    lh a0, 244(sp)1342; RV64ZVFHMIN-NEXT:    vmv.x.s t1, v01343; RV64ZVFHMIN-NEXT:    lh a1, 372(sp)1344; RV64ZVFHMIN-NEXT:    vmv.x.s t2, v201345; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a01346; RV64ZVFHMIN-NEXT:    vmv.x.s t3, v41347; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a11348; RV64ZVFHMIN-NEXT:    fle.h a0, fa4, fa51349; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a41350; RV64ZVFHMIN-NEXT:    xori a0, a0, 11351; RV64ZVFHMIN-NEXT:    sb a0, 122(sp)1352; RV64ZVFHMIN-NEXT:    lh a1, 242(sp)1353; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a51354; RV64ZVFHMIN-NEXT:    lh a4, 370(sp)1355; RV64ZVFHMIN-NEXT:    fle.h a0, fa4, fa51356; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a11357; RV64ZVFHMIN-NEXT:    vmv.x.s a5, v221358; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a41359; RV64ZVFHMIN-NEXT:    fle.h a1, fa4, fa51360; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a61361; RV64ZVFHMIN-NEXT:    xori a1, a1, 11362; RV64ZVFHMIN-NEXT:    sb a1, 121(sp)1363; RV64ZVFHMIN-NEXT:    lh a4, 240(sp)1364; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a71365; RV64ZVFHMIN-NEXT:    lh a6, 368(sp)1366; RV64ZVFHMIN-NEXT:    fle.h a1, fa4, fa51367; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a41368; RV64ZVFHMIN-NEXT:    vmv.x.s a7, v61369; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a61370; RV64ZVFHMIN-NEXT:    fle.h a4, fa4, fa51371; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t01372; RV64ZVFHMIN-NEXT:    xori a4, a4, 11373; RV64ZVFHMIN-NEXT:    sb a4, 120(sp)1374; RV64ZVFHMIN-NEXT:    lh a6, 238(sp)1375; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t11376; RV64ZVFHMIN-NEXT:    lh t0, 366(sp)1377; RV64ZVFHMIN-NEXT:    fle.h a4, fa4, fa51378; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a61379; RV64ZVFHMIN-NEXT:    vmv.x.s a6, v241380; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t01381; RV64ZVFHMIN-NEXT:    fle.h t0, fa4, fa51382; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t21383; RV64ZVFHMIN-NEXT:    xori t0, t0, 11384; RV64ZVFHMIN-NEXT:    sb t0, 119(sp)1385; RV64ZVFHMIN-NEXT:    lh t0, 236(sp)1386; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t31387; RV64ZVFHMIN-NEXT:    lh t1, 364(sp)1388; RV64ZVFHMIN-NEXT:    fle.h t2, fa4, fa51389; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t01390; RV64ZVFHMIN-NEXT:    vmv.x.s t0, v301391; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t11392; RV64ZVFHMIN-NEXT:    fle.h t1, fa4, fa51393; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a51394; RV64ZVFHMIN-NEXT:    xori a5, t1, 11395; RV64ZVFHMIN-NEXT:    sb a5, 118(sp)1396; RV64ZVFHMIN-NEXT:    lh a5, 234(sp)1397; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a71398; RV64ZVFHMIN-NEXT:    lh a7, 362(sp)1399; RV64ZVFHMIN-NEXT:    fle.h t1, fa4, fa51400; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a51401; RV64ZVFHMIN-NEXT:    vmv.x.s a5, v261402; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a71403; RV64ZVFHMIN-NEXT:    fle.h a7, fa4, fa51404; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a61405; RV64ZVFHMIN-NEXT:    xori a6, a7, 11406; RV64ZVFHMIN-NEXT:    sb a6, 117(sp)1407; RV64ZVFHMIN-NEXT:    lh a6, 232(sp)1408; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t01409; RV64ZVFHMIN-NEXT:    lh a7, 360(sp)1410; RV64ZVFHMIN-NEXT:    fle.h t0, fa4, fa51411; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a61412; RV64ZVFHMIN-NEXT:    vmv.x.s a6, v281413; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a71414; RV64ZVFHMIN-NEXT:    fle.h a7, fa4, fa51415; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a51416; RV64ZVFHMIN-NEXT:    xori a5, a7, 11417; RV64ZVFHMIN-NEXT:    sb a5, 116(sp)1418; RV64ZVFHMIN-NEXT:    lh a5, 230(sp)1419; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a61420; RV64ZVFHMIN-NEXT:    lh a6, 358(sp)1421; RV64ZVFHMIN-NEXT:    fle.h a7, fa4, fa51422; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a51423; RV64ZVFHMIN-NEXT:    vmv.x.s a5, v161424; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a61425; RV64ZVFHMIN-NEXT:    fle.h a6, fa4, fa51426; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a51427; RV64ZVFHMIN-NEXT:    vmv.x.s a5, v81428; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a51429; RV64ZVFHMIN-NEXT:    xori a0, a0, 11430; RV64ZVFHMIN-NEXT:    xori a1, a1, 11431; RV64ZVFHMIN-NEXT:    xori a4, a4, 11432; RV64ZVFHMIN-NEXT:    xori a5, t2, 11433; RV64ZVFHMIN-NEXT:    xori a6, a6, 11434; RV64ZVFHMIN-NEXT:    sb a6, 115(sp)1435; RV64ZVFHMIN-NEXT:    lh a6, 228(sp)1436; RV64ZVFHMIN-NEXT:    lh t2, 356(sp)1437; RV64ZVFHMIN-NEXT:    sb a5, 76(sp)1438; RV64ZVFHMIN-NEXT:    sb a4, 77(sp)1439; RV64ZVFHMIN-NEXT:    sb a1, 78(sp)1440; RV64ZVFHMIN-NEXT:    sb a0, 79(sp)1441; RV64ZVFHMIN-NEXT:    fle.h a0, fa4, fa51442; RV64ZVFHMIN-NEXT:    xori a1, t1, 11443; RV64ZVFHMIN-NEXT:    xori a4, t0, 11444; RV64ZVFHMIN-NEXT:    xori a5, a7, 11445; RV64ZVFHMIN-NEXT:    xori a0, a0, 11446; RV64ZVFHMIN-NEXT:    sb a0, 72(sp)1447; RV64ZVFHMIN-NEXT:    sb a5, 73(sp)1448; RV64ZVFHMIN-NEXT:    sb a4, 74(sp)1449; RV64ZVFHMIN-NEXT:    sb a1, 75(sp)1450; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a61451; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t21452; RV64ZVFHMIN-NEXT:    fle.h a0, fa4, fa51453; RV64ZVFHMIN-NEXT:    xori a0, a0, 11454; RV64ZVFHMIN-NEXT:    sb a0, 114(sp)1455; RV64ZVFHMIN-NEXT:    addi a0, sp, 641456; RV64ZVFHMIN-NEXT:    vsetvli zero, a3, e8, m4, ta, ma1457; RV64ZVFHMIN-NEXT:    vle8.v v8, (a0)1458; RV64ZVFHMIN-NEXT:    vand.vi v8, v8, 11459; RV64ZVFHMIN-NEXT:    vmsne.vi v12, v8, 01460; RV64ZVFHMIN-NEXT:    vsm.v v12, (a2)1461; RV64ZVFHMIN-NEXT:    addi sp, s0, -5121462; RV64ZVFHMIN-NEXT:    .cfi_def_cfa sp, 5121463; RV64ZVFHMIN-NEXT:    ld ra, 504(sp) # 8-byte Folded Reload1464; RV64ZVFHMIN-NEXT:    ld s0, 496(sp) # 8-byte Folded Reload1465; RV64ZVFHMIN-NEXT:    .cfi_restore ra1466; RV64ZVFHMIN-NEXT:    .cfi_restore s01467; RV64ZVFHMIN-NEXT:    addi sp, sp, 5121468; RV64ZVFHMIN-NEXT:    .cfi_def_cfa_offset 01469; RV64ZVFHMIN-NEXT:    ret1470  %a = load <64 x half>, ptr %x1471  %b = load <64 x half>, ptr %y1472  %c = fcmp ugt <64 x half> %a, %b1473  store <64 x i1> %c, ptr %z1474  ret void1475}1476 1477define void @fcmp_ugt_vv_v64f16_nonans(ptr %x, ptr %y, ptr %z) {1478; ZVFH-LABEL: fcmp_ugt_vv_v64f16_nonans:1479; ZVFH:       # %bb.0:1480; ZVFH-NEXT:    li a3, 641481; ZVFH-NEXT:    vsetvli zero, a3, e16, m8, ta, ma1482; ZVFH-NEXT:    vle16.v v8, (a0)1483; ZVFH-NEXT:    vle16.v v16, (a1)1484; ZVFH-NEXT:    vmflt.vv v24, v16, v81485; ZVFH-NEXT:    vsm.v v24, (a2)1486; ZVFH-NEXT:    ret1487;1488; RV32ZVFHMIN-LABEL: fcmp_ugt_vv_v64f16_nonans:1489; RV32ZVFHMIN:       # %bb.0:1490; RV32ZVFHMIN-NEXT:    addi sp, sp, -5121491; RV32ZVFHMIN-NEXT:    .cfi_def_cfa_offset 5121492; RV32ZVFHMIN-NEXT:    sw ra, 508(sp) # 4-byte Folded Spill1493; RV32ZVFHMIN-NEXT:    sw s0, 504(sp) # 4-byte Folded Spill1494; RV32ZVFHMIN-NEXT:    .cfi_offset ra, -41495; RV32ZVFHMIN-NEXT:    .cfi_offset s0, -81496; RV32ZVFHMIN-NEXT:    addi s0, sp, 5121497; RV32ZVFHMIN-NEXT:    .cfi_def_cfa s0, 01498; RV32ZVFHMIN-NEXT:    andi sp, sp, -1281499; RV32ZVFHMIN-NEXT:    li a3, 641500; RV32ZVFHMIN-NEXT:    vsetvli zero, a3, e16, m8, ta, ma1501; RV32ZVFHMIN-NEXT:    vle16.v v16, (a0)1502; RV32ZVFHMIN-NEXT:    vle16.v v8, (a1)1503; RV32ZVFHMIN-NEXT:    addi a0, sp, 2561504; RV32ZVFHMIN-NEXT:    addi a1, sp, 1281505; RV32ZVFHMIN-NEXT:    vse16.v v16, (a0)1506; RV32ZVFHMIN-NEXT:    vse16.v v8, (a1)1507; RV32ZVFHMIN-NEXT:    lh a0, 320(sp)1508; RV32ZVFHMIN-NEXT:    lh a1, 192(sp)1509; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01510; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a11511; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51512; RV32ZVFHMIN-NEXT:    sb a0, 96(sp)1513; RV32ZVFHMIN-NEXT:    lh a0, 318(sp)1514; RV32ZVFHMIN-NEXT:    lh a1, 190(sp)1515; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01516; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a11517; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51518; RV32ZVFHMIN-NEXT:    sb a0, 95(sp)1519; RV32ZVFHMIN-NEXT:    lh a0, 316(sp)1520; RV32ZVFHMIN-NEXT:    lh a1, 188(sp)1521; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01522; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a11523; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51524; RV32ZVFHMIN-NEXT:    sb a0, 94(sp)1525; RV32ZVFHMIN-NEXT:    lh a0, 314(sp)1526; RV32ZVFHMIN-NEXT:    lh a1, 186(sp)1527; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01528; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a11529; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51530; RV32ZVFHMIN-NEXT:    sb a0, 93(sp)1531; RV32ZVFHMIN-NEXT:    lh a0, 312(sp)1532; RV32ZVFHMIN-NEXT:    lh a1, 184(sp)1533; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01534; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a11535; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51536; RV32ZVFHMIN-NEXT:    sb a0, 92(sp)1537; RV32ZVFHMIN-NEXT:    lh a0, 310(sp)1538; RV32ZVFHMIN-NEXT:    lh a1, 182(sp)1539; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01540; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a11541; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51542; RV32ZVFHMIN-NEXT:    sb a0, 91(sp)1543; RV32ZVFHMIN-NEXT:    lh a0, 308(sp)1544; RV32ZVFHMIN-NEXT:    lh a1, 180(sp)1545; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01546; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a11547; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51548; RV32ZVFHMIN-NEXT:    sb a0, 90(sp)1549; RV32ZVFHMIN-NEXT:    lh a0, 306(sp)1550; RV32ZVFHMIN-NEXT:    lh a1, 178(sp)1551; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01552; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a11553; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51554; RV32ZVFHMIN-NEXT:    sb a0, 89(sp)1555; RV32ZVFHMIN-NEXT:    lh a0, 304(sp)1556; RV32ZVFHMIN-NEXT:    lh a1, 176(sp)1557; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01558; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a11559; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51560; RV32ZVFHMIN-NEXT:    sb a0, 88(sp)1561; RV32ZVFHMIN-NEXT:    lh a0, 302(sp)1562; RV32ZVFHMIN-NEXT:    lh a1, 174(sp)1563; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01564; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a11565; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51566; RV32ZVFHMIN-NEXT:    sb a0, 87(sp)1567; RV32ZVFHMIN-NEXT:    lh a0, 300(sp)1568; RV32ZVFHMIN-NEXT:    lh a1, 172(sp)1569; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01570; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a11571; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51572; RV32ZVFHMIN-NEXT:    sb a0, 86(sp)1573; RV32ZVFHMIN-NEXT:    lh a1, 298(sp)1574; RV32ZVFHMIN-NEXT:    lh a4, 170(sp)1575; RV32ZVFHMIN-NEXT:    vmv.x.s a0, v161576; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a11577; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a41578; RV32ZVFHMIN-NEXT:    flt.h a1, fa4, fa51579; RV32ZVFHMIN-NEXT:    sb a1, 85(sp)1580; RV32ZVFHMIN-NEXT:    lh a4, 296(sp)1581; RV32ZVFHMIN-NEXT:    lh a5, 168(sp)1582; RV32ZVFHMIN-NEXT:    vmv.x.s a1, v81583; RV32ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m1, ta, ma1584; RV32ZVFHMIN-NEXT:    vslidedown.vi v12, v16, 71585; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a41586; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a51587; RV32ZVFHMIN-NEXT:    flt.h a4, fa4, fa51588; RV32ZVFHMIN-NEXT:    sb a4, 84(sp)1589; RV32ZVFHMIN-NEXT:    lh a4, 294(sp)1590; RV32ZVFHMIN-NEXT:    lh a5, 166(sp)1591; RV32ZVFHMIN-NEXT:    vslidedown.vi v13, v8, 71592; RV32ZVFHMIN-NEXT:    vslidedown.vi v14, v16, 61593; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a41594; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a51595; RV32ZVFHMIN-NEXT:    flt.h a4, fa4, fa51596; RV32ZVFHMIN-NEXT:    sb a4, 83(sp)1597; RV32ZVFHMIN-NEXT:    lh a4, 292(sp)1598; RV32ZVFHMIN-NEXT:    lh a5, 164(sp)1599; RV32ZVFHMIN-NEXT:    vslidedown.vi v15, v8, 61600; RV32ZVFHMIN-NEXT:    vslidedown.vi v18, v16, 51601; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a41602; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a51603; RV32ZVFHMIN-NEXT:    flt.h a4, fa4, fa51604; RV32ZVFHMIN-NEXT:    sb a4, 82(sp)1605; RV32ZVFHMIN-NEXT:    lh a4, 290(sp)1606; RV32ZVFHMIN-NEXT:    lh a5, 162(sp)1607; RV32ZVFHMIN-NEXT:    vslidedown.vi v19, v8, 51608; RV32ZVFHMIN-NEXT:    vslidedown.vi v20, v16, 41609; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a41610; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a51611; RV32ZVFHMIN-NEXT:    flt.h a4, fa4, fa51612; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01613; RV32ZVFHMIN-NEXT:    sb a4, 81(sp)1614; RV32ZVFHMIN-NEXT:    lh a0, 288(sp)1615; RV32ZVFHMIN-NEXT:    lh a4, 160(sp)1616; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a11617; RV32ZVFHMIN-NEXT:    flt.h a1, fa4, fa51618; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01619; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a41620; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51621; RV32ZVFHMIN-NEXT:    sb a1, 64(sp)1622; RV32ZVFHMIN-NEXT:    sb a0, 80(sp)1623; RV32ZVFHMIN-NEXT:    lh a0, 354(sp)1624; RV32ZVFHMIN-NEXT:    lh a1, 226(sp)1625; RV32ZVFHMIN-NEXT:    vslidedown.vi v21, v8, 41626; RV32ZVFHMIN-NEXT:    vslidedown.vi v23, v16, 31627; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01628; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a11629; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51630; RV32ZVFHMIN-NEXT:    sb a0, 113(sp)1631; RV32ZVFHMIN-NEXT:    lh a0, 352(sp)1632; RV32ZVFHMIN-NEXT:    lh a1, 224(sp)1633; RV32ZVFHMIN-NEXT:    vslidedown.vi v22, v8, 31634; RV32ZVFHMIN-NEXT:    vslidedown.vi v25, v16, 21635; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01636; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a11637; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51638; RV32ZVFHMIN-NEXT:    sb a0, 112(sp)1639; RV32ZVFHMIN-NEXT:    lh a0, 350(sp)1640; RV32ZVFHMIN-NEXT:    lh a1, 222(sp)1641; RV32ZVFHMIN-NEXT:    vslidedown.vi v24, v8, 21642; RV32ZVFHMIN-NEXT:    vslidedown.vi v27, v16, 11643; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01644; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a11645; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51646; RV32ZVFHMIN-NEXT:    sb a0, 111(sp)1647; RV32ZVFHMIN-NEXT:    lh a0, 348(sp)1648; RV32ZVFHMIN-NEXT:    lh a1, 220(sp)1649; RV32ZVFHMIN-NEXT:    vslidedown.vi v26, v8, 11650; RV32ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m2, ta, ma1651; RV32ZVFHMIN-NEXT:    vslidedown.vi v10, v16, 151652; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01653; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a11654; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51655; RV32ZVFHMIN-NEXT:    sb a0, 110(sp)1656; RV32ZVFHMIN-NEXT:    lh a4, 346(sp)1657; RV32ZVFHMIN-NEXT:    lh a5, 218(sp)1658; RV32ZVFHMIN-NEXT:    vmv.x.s a1, v121659; RV32ZVFHMIN-NEXT:    vmv.x.s a0, v131660; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a41661; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a51662; RV32ZVFHMIN-NEXT:    flt.h a4, fa4, fa51663; RV32ZVFHMIN-NEXT:    sb a4, 109(sp)1664; RV32ZVFHMIN-NEXT:    lh a4, 344(sp)1665; RV32ZVFHMIN-NEXT:    lh a6, 216(sp)1666; RV32ZVFHMIN-NEXT:    vslidedown.vi v12, v8, 151667; RV32ZVFHMIN-NEXT:    vmv.x.s a5, v141668; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a41669; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a61670; RV32ZVFHMIN-NEXT:    flt.h a4, fa4, fa51671; RV32ZVFHMIN-NEXT:    sb a4, 108(sp)1672; RV32ZVFHMIN-NEXT:    lh a4, 342(sp)1673; RV32ZVFHMIN-NEXT:    lh a6, 214(sp)1674; RV32ZVFHMIN-NEXT:    vmv.x.s a7, v151675; RV32ZVFHMIN-NEXT:    vslidedown.vi v14, v16, 141676; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a41677; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a61678; RV32ZVFHMIN-NEXT:    flt.h a4, fa4, fa51679; RV32ZVFHMIN-NEXT:    sb a4, 107(sp)1680; RV32ZVFHMIN-NEXT:    lh t0, 340(sp)1681; RV32ZVFHMIN-NEXT:    lh t1, 212(sp)1682; RV32ZVFHMIN-NEXT:    vmv.x.s a6, v181683; RV32ZVFHMIN-NEXT:    vmv.x.s a4, v191684; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t01685; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t11686; RV32ZVFHMIN-NEXT:    flt.h t0, fa4, fa51687; RV32ZVFHMIN-NEXT:    sb t0, 106(sp)1688; RV32ZVFHMIN-NEXT:    lh t1, 338(sp)1689; RV32ZVFHMIN-NEXT:    vslidedown.vi v18, v16, 131690; RV32ZVFHMIN-NEXT:    vmv.x.s t0, v201691; RV32ZVFHMIN-NEXT:    lh t2, 210(sp)1692; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t11693; RV32ZVFHMIN-NEXT:    vmv.x.s t1, v211694; RV32ZVFHMIN-NEXT:    vslidedown.vi v20, v16, 121695; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t21696; RV32ZVFHMIN-NEXT:    flt.h t2, fa4, fa51697; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a11698; RV32ZVFHMIN-NEXT:    sb t2, 105(sp)1699; RV32ZVFHMIN-NEXT:    lh a1, 336(sp)1700; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a01701; RV32ZVFHMIN-NEXT:    lh t3, 208(sp)1702; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51703; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a11704; RV32ZVFHMIN-NEXT:    vmv.x.s t2, v231705; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t31706; RV32ZVFHMIN-NEXT:    flt.h a1, fa4, fa51707; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a51708; RV32ZVFHMIN-NEXT:    sb a1, 104(sp)1709; RV32ZVFHMIN-NEXT:    lh a5, 334(sp)1710; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a71711; RV32ZVFHMIN-NEXT:    flt.h a1, fa4, fa51712; RV32ZVFHMIN-NEXT:    lh a7, 206(sp)1713; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a51714; RV32ZVFHMIN-NEXT:    vmv.x.s t3, v221715; RV32ZVFHMIN-NEXT:    vslidedown.vi v22, v16, 111716; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a71717; RV32ZVFHMIN-NEXT:    flt.h a5, fa4, fa51718; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a61719; RV32ZVFHMIN-NEXT:    sb a5, 103(sp)1720; RV32ZVFHMIN-NEXT:    lh a5, 332(sp)1721; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a41722; RV32ZVFHMIN-NEXT:    lh a6, 204(sp)1723; RV32ZVFHMIN-NEXT:    flt.h a4, fa4, fa51724; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a51725; RV32ZVFHMIN-NEXT:    vmv.x.s a7, v251726; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a61727; RV32ZVFHMIN-NEXT:    flt.h a5, fa4, fa51728; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t01729; RV32ZVFHMIN-NEXT:    sb a5, 102(sp)1730; RV32ZVFHMIN-NEXT:    lh a6, 330(sp)1731; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t11732; RV32ZVFHMIN-NEXT:    flt.h a5, fa4, fa51733; RV32ZVFHMIN-NEXT:    lh t0, 202(sp)1734; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a61735; RV32ZVFHMIN-NEXT:    vmv.x.s a6, v241736; RV32ZVFHMIN-NEXT:    vslidedown.vi v24, v16, 101737; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t01738; RV32ZVFHMIN-NEXT:    flt.h t0, fa4, fa51739; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t21740; RV32ZVFHMIN-NEXT:    sb t0, 101(sp)1741; RV32ZVFHMIN-NEXT:    lh t0, 328(sp)1742; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t31743; RV32ZVFHMIN-NEXT:    lh t1, 200(sp)1744; RV32ZVFHMIN-NEXT:    flt.h t2, fa4, fa51745; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t01746; RV32ZVFHMIN-NEXT:    vmv.x.s t0, v271747; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t11748; RV32ZVFHMIN-NEXT:    flt.h t1, fa4, fa51749; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a71750; RV32ZVFHMIN-NEXT:    sb t1, 100(sp)1751; RV32ZVFHMIN-NEXT:    lh a7, 326(sp)1752; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a61753; RV32ZVFHMIN-NEXT:    flt.h a6, fa4, fa51754; RV32ZVFHMIN-NEXT:    lh t1, 198(sp)1755; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a71756; RV32ZVFHMIN-NEXT:    vmv.x.s a7, v261757; RV32ZVFHMIN-NEXT:    vslidedown.vi v26, v16, 91758; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t11759; RV32ZVFHMIN-NEXT:    flt.h t1, fa4, fa51760; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t01761; RV32ZVFHMIN-NEXT:    sb t1, 99(sp)1762; RV32ZVFHMIN-NEXT:    lh t0, 324(sp)1763; RV32ZVFHMIN-NEXT:    lh t1, 196(sp)1764; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a71765; RV32ZVFHMIN-NEXT:    flt.h a7, fa4, fa51766; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t01767; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t11768; RV32ZVFHMIN-NEXT:    flt.h t0, fa4, fa51769; RV32ZVFHMIN-NEXT:    sb t0, 98(sp)1770; RV32ZVFHMIN-NEXT:    lh t0, 322(sp)1771; RV32ZVFHMIN-NEXT:    lh t1, 194(sp)1772; RV32ZVFHMIN-NEXT:    sb a7, 65(sp)1773; RV32ZVFHMIN-NEXT:    sb a6, 66(sp)1774; RV32ZVFHMIN-NEXT:    sb t2, 67(sp)1775; RV32ZVFHMIN-NEXT:    sb a5, 68(sp)1776; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t01777; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t11778; RV32ZVFHMIN-NEXT:    flt.h a5, fa4, fa51779; RV32ZVFHMIN-NEXT:    sb a4, 69(sp)1780; RV32ZVFHMIN-NEXT:    sb a1, 70(sp)1781; RV32ZVFHMIN-NEXT:    sb a0, 71(sp)1782; RV32ZVFHMIN-NEXT:    sb a5, 97(sp)1783; RV32ZVFHMIN-NEXT:    lh a0, 382(sp)1784; RV32ZVFHMIN-NEXT:    lh a1, 254(sp)1785; RV32ZVFHMIN-NEXT:    vslidedown.vi v16, v16, 81786; RV32ZVFHMIN-NEXT:    vslidedown.vi v2, v8, 141787; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01788; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a11789; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51790; RV32ZVFHMIN-NEXT:    sb a0, 127(sp)1791; RV32ZVFHMIN-NEXT:    lh a0, 380(sp)1792; RV32ZVFHMIN-NEXT:    lh a1, 252(sp)1793; RV32ZVFHMIN-NEXT:    vslidedown.vi v0, v8, 131794; RV32ZVFHMIN-NEXT:    vslidedown.vi v4, v8, 121795; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01796; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a11797; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51798; RV32ZVFHMIN-NEXT:    sb a0, 126(sp)1799; RV32ZVFHMIN-NEXT:    lh a0, 378(sp)1800; RV32ZVFHMIN-NEXT:    lh a1, 250(sp)1801; RV32ZVFHMIN-NEXT:    vslidedown.vi v6, v8, 111802; RV32ZVFHMIN-NEXT:    vslidedown.vi v30, v8, 101803; RV32ZVFHMIN-NEXT:    vslidedown.vi v28, v8, 91804; RV32ZVFHMIN-NEXT:    vslidedown.vi v8, v8, 81805; RV32ZVFHMIN-NEXT:    vmv.x.s a4, v101806; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01807; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a11808; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51809; RV32ZVFHMIN-NEXT:    sb a0, 125(sp)1810; RV32ZVFHMIN-NEXT:    lh a0, 376(sp)1811; RV32ZVFHMIN-NEXT:    lh a1, 248(sp)1812; RV32ZVFHMIN-NEXT:    vmv.x.s a5, v121813; RV32ZVFHMIN-NEXT:    vmv.x.s a6, v141814; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01815; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a11816; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51817; RV32ZVFHMIN-NEXT:    sb a0, 124(sp)1818; RV32ZVFHMIN-NEXT:    lh a0, 374(sp)1819; RV32ZVFHMIN-NEXT:    lh a1, 246(sp)1820; RV32ZVFHMIN-NEXT:    vmv.x.s a7, v21821; RV32ZVFHMIN-NEXT:    vmv.x.s t0, v181822; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01823; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a11824; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51825; RV32ZVFHMIN-NEXT:    sb a0, 123(sp)1826; RV32ZVFHMIN-NEXT:    lh a0, 372(sp)1827; RV32ZVFHMIN-NEXT:    vmv.x.s t1, v01828; RV32ZVFHMIN-NEXT:    lh a1, 244(sp)1829; RV32ZVFHMIN-NEXT:    vmv.x.s t2, v201830; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a01831; RV32ZVFHMIN-NEXT:    vmv.x.s t3, v41832; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a11833; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51834; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a41835; RV32ZVFHMIN-NEXT:    sb a0, 122(sp)1836; RV32ZVFHMIN-NEXT:    lh a1, 370(sp)1837; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a51838; RV32ZVFHMIN-NEXT:    lh a4, 242(sp)1839; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51840; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a11841; RV32ZVFHMIN-NEXT:    vmv.x.s a5, v221842; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a41843; RV32ZVFHMIN-NEXT:    flt.h a1, fa4, fa51844; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a61845; RV32ZVFHMIN-NEXT:    sb a1, 121(sp)1846; RV32ZVFHMIN-NEXT:    lh a4, 368(sp)1847; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a71848; RV32ZVFHMIN-NEXT:    lh a6, 240(sp)1849; RV32ZVFHMIN-NEXT:    flt.h a1, fa4, fa51850; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a41851; RV32ZVFHMIN-NEXT:    vmv.x.s a7, v61852; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a61853; RV32ZVFHMIN-NEXT:    flt.h a4, fa4, fa51854; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t01855; RV32ZVFHMIN-NEXT:    sb a4, 120(sp)1856; RV32ZVFHMIN-NEXT:    lh a6, 366(sp)1857; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t11858; RV32ZVFHMIN-NEXT:    lh t0, 238(sp)1859; RV32ZVFHMIN-NEXT:    flt.h a4, fa4, fa51860; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a61861; RV32ZVFHMIN-NEXT:    vmv.x.s a6, v241862; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t01863; RV32ZVFHMIN-NEXT:    flt.h t0, fa4, fa51864; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t21865; RV32ZVFHMIN-NEXT:    sb t0, 119(sp)1866; RV32ZVFHMIN-NEXT:    lh t0, 364(sp)1867; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t31868; RV32ZVFHMIN-NEXT:    lh t1, 236(sp)1869; RV32ZVFHMIN-NEXT:    flt.h t2, fa4, fa51870; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t01871; RV32ZVFHMIN-NEXT:    vmv.x.s t0, v301872; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t11873; RV32ZVFHMIN-NEXT:    flt.h t1, fa4, fa51874; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a51875; RV32ZVFHMIN-NEXT:    sb t1, 118(sp)1876; RV32ZVFHMIN-NEXT:    lh a5, 362(sp)1877; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a71878; RV32ZVFHMIN-NEXT:    lh a7, 234(sp)1879; RV32ZVFHMIN-NEXT:    flt.h t1, fa4, fa51880; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a51881; RV32ZVFHMIN-NEXT:    vmv.x.s a5, v261882; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a71883; RV32ZVFHMIN-NEXT:    flt.h a7, fa4, fa51884; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a61885; RV32ZVFHMIN-NEXT:    sb a7, 117(sp)1886; RV32ZVFHMIN-NEXT:    lh a6, 360(sp)1887; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, t01888; RV32ZVFHMIN-NEXT:    lh a7, 232(sp)1889; RV32ZVFHMIN-NEXT:    flt.h t0, fa4, fa51890; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a61891; RV32ZVFHMIN-NEXT:    vmv.x.s a6, v281892; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a71893; RV32ZVFHMIN-NEXT:    flt.h a7, fa4, fa51894; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a51895; RV32ZVFHMIN-NEXT:    sb a7, 116(sp)1896; RV32ZVFHMIN-NEXT:    lh a5, 358(sp)1897; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a61898; RV32ZVFHMIN-NEXT:    lh a6, 230(sp)1899; RV32ZVFHMIN-NEXT:    flt.h a7, fa4, fa51900; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a51901; RV32ZVFHMIN-NEXT:    vmv.x.s a5, v161902; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a61903; RV32ZVFHMIN-NEXT:    flt.h a6, fa4, fa51904; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a51905; RV32ZVFHMIN-NEXT:    vmv.x.s a5, v81906; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a51907; RV32ZVFHMIN-NEXT:    sb a6, 115(sp)1908; RV32ZVFHMIN-NEXT:    lh a5, 356(sp)1909; RV32ZVFHMIN-NEXT:    lh a6, 228(sp)1910; RV32ZVFHMIN-NEXT:    sb t2, 76(sp)1911; RV32ZVFHMIN-NEXT:    sb a4, 77(sp)1912; RV32ZVFHMIN-NEXT:    sb a1, 78(sp)1913; RV32ZVFHMIN-NEXT:    sb a0, 79(sp)1914; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51915; RV32ZVFHMIN-NEXT:    sb a0, 72(sp)1916; RV32ZVFHMIN-NEXT:    sb a7, 73(sp)1917; RV32ZVFHMIN-NEXT:    sb t0, 74(sp)1918; RV32ZVFHMIN-NEXT:    sb t1, 75(sp)1919; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a51920; RV32ZVFHMIN-NEXT:    fmv.h.x fa4, a61921; RV32ZVFHMIN-NEXT:    flt.h a0, fa4, fa51922; RV32ZVFHMIN-NEXT:    sb a0, 114(sp)1923; RV32ZVFHMIN-NEXT:    addi a0, sp, 641924; RV32ZVFHMIN-NEXT:    vsetvli zero, a3, e8, m4, ta, ma1925; RV32ZVFHMIN-NEXT:    vle8.v v8, (a0)1926; RV32ZVFHMIN-NEXT:    vand.vi v8, v8, 11927; RV32ZVFHMIN-NEXT:    vmsne.vi v12, v8, 01928; RV32ZVFHMIN-NEXT:    vsm.v v12, (a2)1929; RV32ZVFHMIN-NEXT:    addi sp, s0, -5121930; RV32ZVFHMIN-NEXT:    .cfi_def_cfa sp, 5121931; RV32ZVFHMIN-NEXT:    lw ra, 508(sp) # 4-byte Folded Reload1932; RV32ZVFHMIN-NEXT:    lw s0, 504(sp) # 4-byte Folded Reload1933; RV32ZVFHMIN-NEXT:    .cfi_restore ra1934; RV32ZVFHMIN-NEXT:    .cfi_restore s01935; RV32ZVFHMIN-NEXT:    addi sp, sp, 5121936; RV32ZVFHMIN-NEXT:    .cfi_def_cfa_offset 01937; RV32ZVFHMIN-NEXT:    ret1938;1939; RV64ZVFHMIN-LABEL: fcmp_ugt_vv_v64f16_nonans:1940; RV64ZVFHMIN:       # %bb.0:1941; RV64ZVFHMIN-NEXT:    addi sp, sp, -5121942; RV64ZVFHMIN-NEXT:    .cfi_def_cfa_offset 5121943; RV64ZVFHMIN-NEXT:    sd ra, 504(sp) # 8-byte Folded Spill1944; RV64ZVFHMIN-NEXT:    sd s0, 496(sp) # 8-byte Folded Spill1945; RV64ZVFHMIN-NEXT:    .cfi_offset ra, -81946; RV64ZVFHMIN-NEXT:    .cfi_offset s0, -161947; RV64ZVFHMIN-NEXT:    addi s0, sp, 5121948; RV64ZVFHMIN-NEXT:    .cfi_def_cfa s0, 01949; RV64ZVFHMIN-NEXT:    andi sp, sp, -1281950; RV64ZVFHMIN-NEXT:    li a3, 641951; RV64ZVFHMIN-NEXT:    vsetvli zero, a3, e16, m8, ta, ma1952; RV64ZVFHMIN-NEXT:    vle16.v v16, (a0)1953; RV64ZVFHMIN-NEXT:    vle16.v v8, (a1)1954; RV64ZVFHMIN-NEXT:    addi a0, sp, 2561955; RV64ZVFHMIN-NEXT:    addi a1, sp, 1281956; RV64ZVFHMIN-NEXT:    vse16.v v16, (a0)1957; RV64ZVFHMIN-NEXT:    vse16.v v8, (a1)1958; RV64ZVFHMIN-NEXT:    lh a0, 320(sp)1959; RV64ZVFHMIN-NEXT:    lh a1, 192(sp)1960; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a01961; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a11962; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa51963; RV64ZVFHMIN-NEXT:    sb a0, 96(sp)1964; RV64ZVFHMIN-NEXT:    lh a0, 318(sp)1965; RV64ZVFHMIN-NEXT:    lh a1, 190(sp)1966; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a01967; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a11968; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa51969; RV64ZVFHMIN-NEXT:    sb a0, 95(sp)1970; RV64ZVFHMIN-NEXT:    lh a0, 316(sp)1971; RV64ZVFHMIN-NEXT:    lh a1, 188(sp)1972; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a01973; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a11974; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa51975; RV64ZVFHMIN-NEXT:    sb a0, 94(sp)1976; RV64ZVFHMIN-NEXT:    lh a0, 314(sp)1977; RV64ZVFHMIN-NEXT:    lh a1, 186(sp)1978; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a01979; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a11980; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa51981; RV64ZVFHMIN-NEXT:    sb a0, 93(sp)1982; RV64ZVFHMIN-NEXT:    lh a0, 312(sp)1983; RV64ZVFHMIN-NEXT:    lh a1, 184(sp)1984; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a01985; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a11986; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa51987; RV64ZVFHMIN-NEXT:    sb a0, 92(sp)1988; RV64ZVFHMIN-NEXT:    lh a0, 310(sp)1989; RV64ZVFHMIN-NEXT:    lh a1, 182(sp)1990; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a01991; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a11992; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa51993; RV64ZVFHMIN-NEXT:    sb a0, 91(sp)1994; RV64ZVFHMIN-NEXT:    lh a0, 308(sp)1995; RV64ZVFHMIN-NEXT:    lh a1, 180(sp)1996; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a01997; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a11998; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa51999; RV64ZVFHMIN-NEXT:    sb a0, 90(sp)2000; RV64ZVFHMIN-NEXT:    lh a0, 306(sp)2001; RV64ZVFHMIN-NEXT:    lh a1, 178(sp)2002; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a02003; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a12004; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa52005; RV64ZVFHMIN-NEXT:    sb a0, 89(sp)2006; RV64ZVFHMIN-NEXT:    lh a0, 304(sp)2007; RV64ZVFHMIN-NEXT:    lh a1, 176(sp)2008; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a02009; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a12010; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa52011; RV64ZVFHMIN-NEXT:    sb a0, 88(sp)2012; RV64ZVFHMIN-NEXT:    lh a0, 302(sp)2013; RV64ZVFHMIN-NEXT:    lh a1, 174(sp)2014; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a02015; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a12016; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa52017; RV64ZVFHMIN-NEXT:    sb a0, 87(sp)2018; RV64ZVFHMIN-NEXT:    lh a0, 300(sp)2019; RV64ZVFHMIN-NEXT:    lh a1, 172(sp)2020; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a02021; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a12022; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa52023; RV64ZVFHMIN-NEXT:    sb a0, 86(sp)2024; RV64ZVFHMIN-NEXT:    lh a1, 298(sp)2025; RV64ZVFHMIN-NEXT:    lh a4, 170(sp)2026; RV64ZVFHMIN-NEXT:    vmv.x.s a0, v162027; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a12028; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a42029; RV64ZVFHMIN-NEXT:    flt.h a1, fa4, fa52030; RV64ZVFHMIN-NEXT:    sb a1, 85(sp)2031; RV64ZVFHMIN-NEXT:    lh a4, 296(sp)2032; RV64ZVFHMIN-NEXT:    lh a5, 168(sp)2033; RV64ZVFHMIN-NEXT:    vmv.x.s a1, v82034; RV64ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m1, ta, ma2035; RV64ZVFHMIN-NEXT:    vslidedown.vi v12, v16, 72036; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a42037; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a52038; RV64ZVFHMIN-NEXT:    flt.h a4, fa4, fa52039; RV64ZVFHMIN-NEXT:    sb a4, 84(sp)2040; RV64ZVFHMIN-NEXT:    lh a4, 294(sp)2041; RV64ZVFHMIN-NEXT:    lh a5, 166(sp)2042; RV64ZVFHMIN-NEXT:    vslidedown.vi v13, v8, 72043; RV64ZVFHMIN-NEXT:    vslidedown.vi v14, v16, 62044; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a42045; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a52046; RV64ZVFHMIN-NEXT:    flt.h a4, fa4, fa52047; RV64ZVFHMIN-NEXT:    sb a4, 83(sp)2048; RV64ZVFHMIN-NEXT:    lh a4, 292(sp)2049; RV64ZVFHMIN-NEXT:    lh a5, 164(sp)2050; RV64ZVFHMIN-NEXT:    vslidedown.vi v15, v8, 62051; RV64ZVFHMIN-NEXT:    vslidedown.vi v18, v16, 52052; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a42053; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a52054; RV64ZVFHMIN-NEXT:    flt.h a4, fa4, fa52055; RV64ZVFHMIN-NEXT:    sb a4, 82(sp)2056; RV64ZVFHMIN-NEXT:    lh a4, 290(sp)2057; RV64ZVFHMIN-NEXT:    lh a5, 162(sp)2058; RV64ZVFHMIN-NEXT:    vslidedown.vi v19, v8, 52059; RV64ZVFHMIN-NEXT:    vslidedown.vi v20, v16, 42060; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a42061; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a52062; RV64ZVFHMIN-NEXT:    flt.h a4, fa4, fa52063; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a02064; RV64ZVFHMIN-NEXT:    sb a4, 81(sp)2065; RV64ZVFHMIN-NEXT:    lh a0, 288(sp)2066; RV64ZVFHMIN-NEXT:    lh a4, 160(sp)2067; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a12068; RV64ZVFHMIN-NEXT:    flt.h a1, fa4, fa52069; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a02070; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a42071; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa52072; RV64ZVFHMIN-NEXT:    sb a1, 64(sp)2073; RV64ZVFHMIN-NEXT:    sb a0, 80(sp)2074; RV64ZVFHMIN-NEXT:    lh a0, 354(sp)2075; RV64ZVFHMIN-NEXT:    lh a1, 226(sp)2076; RV64ZVFHMIN-NEXT:    vslidedown.vi v21, v8, 42077; RV64ZVFHMIN-NEXT:    vslidedown.vi v23, v16, 32078; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a02079; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a12080; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa52081; RV64ZVFHMIN-NEXT:    sb a0, 113(sp)2082; RV64ZVFHMIN-NEXT:    lh a0, 352(sp)2083; RV64ZVFHMIN-NEXT:    lh a1, 224(sp)2084; RV64ZVFHMIN-NEXT:    vslidedown.vi v22, v8, 32085; RV64ZVFHMIN-NEXT:    vslidedown.vi v25, v16, 22086; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a02087; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a12088; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa52089; RV64ZVFHMIN-NEXT:    sb a0, 112(sp)2090; RV64ZVFHMIN-NEXT:    lh a0, 350(sp)2091; RV64ZVFHMIN-NEXT:    lh a1, 222(sp)2092; RV64ZVFHMIN-NEXT:    vslidedown.vi v24, v8, 22093; RV64ZVFHMIN-NEXT:    vslidedown.vi v27, v16, 12094; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a02095; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a12096; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa52097; RV64ZVFHMIN-NEXT:    sb a0, 111(sp)2098; RV64ZVFHMIN-NEXT:    lh a0, 348(sp)2099; RV64ZVFHMIN-NEXT:    lh a1, 220(sp)2100; RV64ZVFHMIN-NEXT:    vslidedown.vi v26, v8, 12101; RV64ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m2, ta, ma2102; RV64ZVFHMIN-NEXT:    vslidedown.vi v10, v16, 152103; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a02104; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a12105; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa52106; RV64ZVFHMIN-NEXT:    sb a0, 110(sp)2107; RV64ZVFHMIN-NEXT:    lh a4, 346(sp)2108; RV64ZVFHMIN-NEXT:    lh a5, 218(sp)2109; RV64ZVFHMIN-NEXT:    vmv.x.s a1, v122110; RV64ZVFHMIN-NEXT:    vmv.x.s a0, v132111; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a42112; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a52113; RV64ZVFHMIN-NEXT:    flt.h a4, fa4, fa52114; RV64ZVFHMIN-NEXT:    sb a4, 109(sp)2115; RV64ZVFHMIN-NEXT:    lh a4, 344(sp)2116; RV64ZVFHMIN-NEXT:    lh a6, 216(sp)2117; RV64ZVFHMIN-NEXT:    vslidedown.vi v12, v8, 152118; RV64ZVFHMIN-NEXT:    vmv.x.s a5, v142119; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a42120; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a62121; RV64ZVFHMIN-NEXT:    flt.h a4, fa4, fa52122; RV64ZVFHMIN-NEXT:    sb a4, 108(sp)2123; RV64ZVFHMIN-NEXT:    lh a4, 342(sp)2124; RV64ZVFHMIN-NEXT:    lh a6, 214(sp)2125; RV64ZVFHMIN-NEXT:    vmv.x.s a7, v152126; RV64ZVFHMIN-NEXT:    vslidedown.vi v14, v16, 142127; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a42128; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a62129; RV64ZVFHMIN-NEXT:    flt.h a4, fa4, fa52130; RV64ZVFHMIN-NEXT:    sb a4, 107(sp)2131; RV64ZVFHMIN-NEXT:    lh t0, 340(sp)2132; RV64ZVFHMIN-NEXT:    lh t1, 212(sp)2133; RV64ZVFHMIN-NEXT:    vmv.x.s a6, v182134; RV64ZVFHMIN-NEXT:    vmv.x.s a4, v192135; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t02136; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t12137; RV64ZVFHMIN-NEXT:    flt.h t0, fa4, fa52138; RV64ZVFHMIN-NEXT:    sb t0, 106(sp)2139; RV64ZVFHMIN-NEXT:    lh t1, 338(sp)2140; RV64ZVFHMIN-NEXT:    vslidedown.vi v18, v16, 132141; RV64ZVFHMIN-NEXT:    vmv.x.s t0, v202142; RV64ZVFHMIN-NEXT:    lh t2, 210(sp)2143; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t12144; RV64ZVFHMIN-NEXT:    vmv.x.s t1, v212145; RV64ZVFHMIN-NEXT:    vslidedown.vi v20, v16, 122146; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t22147; RV64ZVFHMIN-NEXT:    flt.h t2, fa4, fa52148; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a12149; RV64ZVFHMIN-NEXT:    sb t2, 105(sp)2150; RV64ZVFHMIN-NEXT:    lh a1, 336(sp)2151; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a02152; RV64ZVFHMIN-NEXT:    lh t3, 208(sp)2153; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa52154; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a12155; RV64ZVFHMIN-NEXT:    vmv.x.s t2, v232156; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t32157; RV64ZVFHMIN-NEXT:    flt.h a1, fa4, fa52158; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a52159; RV64ZVFHMIN-NEXT:    sb a1, 104(sp)2160; RV64ZVFHMIN-NEXT:    lh a5, 334(sp)2161; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a72162; RV64ZVFHMIN-NEXT:    flt.h a1, fa4, fa52163; RV64ZVFHMIN-NEXT:    lh a7, 206(sp)2164; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a52165; RV64ZVFHMIN-NEXT:    vmv.x.s t3, v222166; RV64ZVFHMIN-NEXT:    vslidedown.vi v22, v16, 112167; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a72168; RV64ZVFHMIN-NEXT:    flt.h a5, fa4, fa52169; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a62170; RV64ZVFHMIN-NEXT:    sb a5, 103(sp)2171; RV64ZVFHMIN-NEXT:    lh a5, 332(sp)2172; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a42173; RV64ZVFHMIN-NEXT:    lh a6, 204(sp)2174; RV64ZVFHMIN-NEXT:    flt.h a4, fa4, fa52175; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a52176; RV64ZVFHMIN-NEXT:    vmv.x.s a7, v252177; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a62178; RV64ZVFHMIN-NEXT:    flt.h a5, fa4, fa52179; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t02180; RV64ZVFHMIN-NEXT:    sb a5, 102(sp)2181; RV64ZVFHMIN-NEXT:    lh a6, 330(sp)2182; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t12183; RV64ZVFHMIN-NEXT:    flt.h a5, fa4, fa52184; RV64ZVFHMIN-NEXT:    lh t0, 202(sp)2185; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a62186; RV64ZVFHMIN-NEXT:    vmv.x.s a6, v242187; RV64ZVFHMIN-NEXT:    vslidedown.vi v24, v16, 102188; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t02189; RV64ZVFHMIN-NEXT:    flt.h t0, fa4, fa52190; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t22191; RV64ZVFHMIN-NEXT:    sb t0, 101(sp)2192; RV64ZVFHMIN-NEXT:    lh t0, 328(sp)2193; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t32194; RV64ZVFHMIN-NEXT:    lh t1, 200(sp)2195; RV64ZVFHMIN-NEXT:    flt.h t2, fa4, fa52196; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t02197; RV64ZVFHMIN-NEXT:    vmv.x.s t0, v272198; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t12199; RV64ZVFHMIN-NEXT:    flt.h t1, fa4, fa52200; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a72201; RV64ZVFHMIN-NEXT:    sb t1, 100(sp)2202; RV64ZVFHMIN-NEXT:    lh a7, 326(sp)2203; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a62204; RV64ZVFHMIN-NEXT:    flt.h a6, fa4, fa52205; RV64ZVFHMIN-NEXT:    lh t1, 198(sp)2206; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a72207; RV64ZVFHMIN-NEXT:    vmv.x.s a7, v262208; RV64ZVFHMIN-NEXT:    vslidedown.vi v26, v16, 92209; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t12210; RV64ZVFHMIN-NEXT:    flt.h t1, fa4, fa52211; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t02212; RV64ZVFHMIN-NEXT:    sb t1, 99(sp)2213; RV64ZVFHMIN-NEXT:    lh t0, 324(sp)2214; RV64ZVFHMIN-NEXT:    lh t1, 196(sp)2215; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a72216; RV64ZVFHMIN-NEXT:    flt.h a7, fa4, fa52217; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t02218; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t12219; RV64ZVFHMIN-NEXT:    flt.h t0, fa4, fa52220; RV64ZVFHMIN-NEXT:    sb t0, 98(sp)2221; RV64ZVFHMIN-NEXT:    lh t0, 322(sp)2222; RV64ZVFHMIN-NEXT:    lh t1, 194(sp)2223; RV64ZVFHMIN-NEXT:    sb a7, 65(sp)2224; RV64ZVFHMIN-NEXT:    sb a6, 66(sp)2225; RV64ZVFHMIN-NEXT:    sb t2, 67(sp)2226; RV64ZVFHMIN-NEXT:    sb a5, 68(sp)2227; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t02228; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t12229; RV64ZVFHMIN-NEXT:    flt.h a5, fa4, fa52230; RV64ZVFHMIN-NEXT:    sb a4, 69(sp)2231; RV64ZVFHMIN-NEXT:    sb a1, 70(sp)2232; RV64ZVFHMIN-NEXT:    sb a0, 71(sp)2233; RV64ZVFHMIN-NEXT:    sb a5, 97(sp)2234; RV64ZVFHMIN-NEXT:    lh a0, 382(sp)2235; RV64ZVFHMIN-NEXT:    lh a1, 254(sp)2236; RV64ZVFHMIN-NEXT:    vslidedown.vi v16, v16, 82237; RV64ZVFHMIN-NEXT:    vslidedown.vi v2, v8, 142238; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a02239; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a12240; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa52241; RV64ZVFHMIN-NEXT:    sb a0, 127(sp)2242; RV64ZVFHMIN-NEXT:    lh a0, 380(sp)2243; RV64ZVFHMIN-NEXT:    lh a1, 252(sp)2244; RV64ZVFHMIN-NEXT:    vslidedown.vi v0, v8, 132245; RV64ZVFHMIN-NEXT:    vslidedown.vi v4, v8, 122246; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a02247; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a12248; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa52249; RV64ZVFHMIN-NEXT:    sb a0, 126(sp)2250; RV64ZVFHMIN-NEXT:    lh a0, 378(sp)2251; RV64ZVFHMIN-NEXT:    lh a1, 250(sp)2252; RV64ZVFHMIN-NEXT:    vslidedown.vi v6, v8, 112253; RV64ZVFHMIN-NEXT:    vslidedown.vi v30, v8, 102254; RV64ZVFHMIN-NEXT:    vslidedown.vi v28, v8, 92255; RV64ZVFHMIN-NEXT:    vslidedown.vi v8, v8, 82256; RV64ZVFHMIN-NEXT:    vmv.x.s a4, v102257; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a02258; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a12259; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa52260; RV64ZVFHMIN-NEXT:    sb a0, 125(sp)2261; RV64ZVFHMIN-NEXT:    lh a0, 376(sp)2262; RV64ZVFHMIN-NEXT:    lh a1, 248(sp)2263; RV64ZVFHMIN-NEXT:    vmv.x.s a5, v122264; RV64ZVFHMIN-NEXT:    vmv.x.s a6, v142265; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a02266; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a12267; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa52268; RV64ZVFHMIN-NEXT:    sb a0, 124(sp)2269; RV64ZVFHMIN-NEXT:    lh a0, 374(sp)2270; RV64ZVFHMIN-NEXT:    lh a1, 246(sp)2271; RV64ZVFHMIN-NEXT:    vmv.x.s a7, v22272; RV64ZVFHMIN-NEXT:    vmv.x.s t0, v182273; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a02274; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a12275; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa52276; RV64ZVFHMIN-NEXT:    sb a0, 123(sp)2277; RV64ZVFHMIN-NEXT:    lh a0, 372(sp)2278; RV64ZVFHMIN-NEXT:    vmv.x.s t1, v02279; RV64ZVFHMIN-NEXT:    lh a1, 244(sp)2280; RV64ZVFHMIN-NEXT:    vmv.x.s t2, v202281; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a02282; RV64ZVFHMIN-NEXT:    vmv.x.s t3, v42283; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a12284; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa52285; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a42286; RV64ZVFHMIN-NEXT:    sb a0, 122(sp)2287; RV64ZVFHMIN-NEXT:    lh a1, 370(sp)2288; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a52289; RV64ZVFHMIN-NEXT:    lh a4, 242(sp)2290; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa52291; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a12292; RV64ZVFHMIN-NEXT:    vmv.x.s a5, v222293; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a42294; RV64ZVFHMIN-NEXT:    flt.h a1, fa4, fa52295; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a62296; RV64ZVFHMIN-NEXT:    sb a1, 121(sp)2297; RV64ZVFHMIN-NEXT:    lh a4, 368(sp)2298; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a72299; RV64ZVFHMIN-NEXT:    lh a6, 240(sp)2300; RV64ZVFHMIN-NEXT:    flt.h a1, fa4, fa52301; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a42302; RV64ZVFHMIN-NEXT:    vmv.x.s a7, v62303; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a62304; RV64ZVFHMIN-NEXT:    flt.h a4, fa4, fa52305; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t02306; RV64ZVFHMIN-NEXT:    sb a4, 120(sp)2307; RV64ZVFHMIN-NEXT:    lh a6, 366(sp)2308; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t12309; RV64ZVFHMIN-NEXT:    lh t0, 238(sp)2310; RV64ZVFHMIN-NEXT:    flt.h a4, fa4, fa52311; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a62312; RV64ZVFHMIN-NEXT:    vmv.x.s a6, v242313; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t02314; RV64ZVFHMIN-NEXT:    flt.h t0, fa4, fa52315; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t22316; RV64ZVFHMIN-NEXT:    sb t0, 119(sp)2317; RV64ZVFHMIN-NEXT:    lh t0, 364(sp)2318; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t32319; RV64ZVFHMIN-NEXT:    lh t1, 236(sp)2320; RV64ZVFHMIN-NEXT:    flt.h t2, fa4, fa52321; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t02322; RV64ZVFHMIN-NEXT:    vmv.x.s t0, v302323; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t12324; RV64ZVFHMIN-NEXT:    flt.h t1, fa4, fa52325; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a52326; RV64ZVFHMIN-NEXT:    sb t1, 118(sp)2327; RV64ZVFHMIN-NEXT:    lh a5, 362(sp)2328; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a72329; RV64ZVFHMIN-NEXT:    lh a7, 234(sp)2330; RV64ZVFHMIN-NEXT:    flt.h t1, fa4, fa52331; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a52332; RV64ZVFHMIN-NEXT:    vmv.x.s a5, v262333; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a72334; RV64ZVFHMIN-NEXT:    flt.h a7, fa4, fa52335; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a62336; RV64ZVFHMIN-NEXT:    sb a7, 117(sp)2337; RV64ZVFHMIN-NEXT:    lh a6, 360(sp)2338; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, t02339; RV64ZVFHMIN-NEXT:    lh a7, 232(sp)2340; RV64ZVFHMIN-NEXT:    flt.h t0, fa4, fa52341; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a62342; RV64ZVFHMIN-NEXT:    vmv.x.s a6, v282343; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a72344; RV64ZVFHMIN-NEXT:    flt.h a7, fa4, fa52345; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a52346; RV64ZVFHMIN-NEXT:    sb a7, 116(sp)2347; RV64ZVFHMIN-NEXT:    lh a5, 358(sp)2348; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a62349; RV64ZVFHMIN-NEXT:    lh a6, 230(sp)2350; RV64ZVFHMIN-NEXT:    flt.h a7, fa4, fa52351; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a52352; RV64ZVFHMIN-NEXT:    vmv.x.s a5, v162353; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a62354; RV64ZVFHMIN-NEXT:    flt.h a6, fa4, fa52355; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a52356; RV64ZVFHMIN-NEXT:    vmv.x.s a5, v82357; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a52358; RV64ZVFHMIN-NEXT:    sb a6, 115(sp)2359; RV64ZVFHMIN-NEXT:    lh a5, 356(sp)2360; RV64ZVFHMIN-NEXT:    lh a6, 228(sp)2361; RV64ZVFHMIN-NEXT:    sb t2, 76(sp)2362; RV64ZVFHMIN-NEXT:    sb a4, 77(sp)2363; RV64ZVFHMIN-NEXT:    sb a1, 78(sp)2364; RV64ZVFHMIN-NEXT:    sb a0, 79(sp)2365; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa52366; RV64ZVFHMIN-NEXT:    sb a0, 72(sp)2367; RV64ZVFHMIN-NEXT:    sb a7, 73(sp)2368; RV64ZVFHMIN-NEXT:    sb t0, 74(sp)2369; RV64ZVFHMIN-NEXT:    sb t1, 75(sp)2370; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a52371; RV64ZVFHMIN-NEXT:    fmv.h.x fa4, a62372; RV64ZVFHMIN-NEXT:    flt.h a0, fa4, fa52373; RV64ZVFHMIN-NEXT:    sb a0, 114(sp)2374; RV64ZVFHMIN-NEXT:    addi a0, sp, 642375; RV64ZVFHMIN-NEXT:    vsetvli zero, a3, e8, m4, ta, ma2376; RV64ZVFHMIN-NEXT:    vle8.v v8, (a0)2377; RV64ZVFHMIN-NEXT:    vand.vi v8, v8, 12378; RV64ZVFHMIN-NEXT:    vmsne.vi v12, v8, 02379; RV64ZVFHMIN-NEXT:    vsm.v v12, (a2)2380; RV64ZVFHMIN-NEXT:    addi sp, s0, -5122381; RV64ZVFHMIN-NEXT:    .cfi_def_cfa sp, 5122382; RV64ZVFHMIN-NEXT:    ld ra, 504(sp) # 8-byte Folded Reload2383; RV64ZVFHMIN-NEXT:    ld s0, 496(sp) # 8-byte Folded Reload2384; RV64ZVFHMIN-NEXT:    .cfi_restore ra2385; RV64ZVFHMIN-NEXT:    .cfi_restore s02386; RV64ZVFHMIN-NEXT:    addi sp, sp, 5122387; RV64ZVFHMIN-NEXT:    .cfi_def_cfa_offset 02388; RV64ZVFHMIN-NEXT:    ret2389  %a = load <64 x half>, ptr %x2390  %b = load <64 x half>, ptr %y2391  %c = fcmp nnan ugt <64 x half> %a, %b2392  store <64 x i1> %c, ptr %z2393  ret void2394}2395 2396define void @fcmp_ueq_vv_v32f32(ptr %x, ptr %y, ptr %z) {2397; CHECK-LABEL: fcmp_ueq_vv_v32f32:2398; CHECK:       # %bb.0:2399; CHECK-NEXT:    li a3, 322400; CHECK-NEXT:    vsetvli zero, a3, e32, m8, ta, ma2401; CHECK-NEXT:    vle32.v v8, (a0)2402; CHECK-NEXT:    vle32.v v16, (a1)2403; CHECK-NEXT:    vmflt.vv v24, v8, v162404; CHECK-NEXT:    vmflt.vv v25, v16, v82405; CHECK-NEXT:    vmnor.mm v8, v25, v242406; CHECK-NEXT:    vsm.v v8, (a2)2407; CHECK-NEXT:    ret2408  %a = load <32 x float>, ptr %x2409  %b = load <32 x float>, ptr %y2410  %c = fcmp ueq <32 x float> %a, %b2411  store <32 x i1> %c, ptr %z2412  ret void2413}2414 2415define void @fcmp_ueq_vv_v32f32_nonans(ptr %x, ptr %y, ptr %z) {2416; CHECK-LABEL: fcmp_ueq_vv_v32f32_nonans:2417; CHECK:       # %bb.0:2418; CHECK-NEXT:    li a3, 322419; CHECK-NEXT:    vsetvli zero, a3, e32, m8, ta, ma2420; CHECK-NEXT:    vle32.v v8, (a0)2421; CHECK-NEXT:    vle32.v v16, (a1)2422; CHECK-NEXT:    vmfeq.vv v24, v8, v162423; CHECK-NEXT:    vsm.v v24, (a2)2424; CHECK-NEXT:    ret2425  %a = load <32 x float>, ptr %x2426  %b = load <32 x float>, ptr %y2427  %c = fcmp nnan ueq <32 x float> %a, %b2428  store <32 x i1> %c, ptr %z2429  ret void2430}2431 2432define void @fcmp_one_vv_v8f64(ptr %x, ptr %y, ptr %z) {2433; CHECK-LABEL: fcmp_one_vv_v8f64:2434; CHECK:       # %bb.0:2435; CHECK-NEXT:    vsetivli zero, 16, e64, m8, ta, ma2436; CHECK-NEXT:    vle64.v v8, (a0)2437; CHECK-NEXT:    vle64.v v16, (a1)2438; CHECK-NEXT:    vmflt.vv v24, v8, v162439; CHECK-NEXT:    vmflt.vv v25, v16, v82440; CHECK-NEXT:    vmor.mm v8, v25, v242441; CHECK-NEXT:    vsm.v v8, (a2)2442; CHECK-NEXT:    ret2443  %a = load <16 x double>, ptr %x2444  %b = load <16 x double>, ptr %y2445  %c = fcmp one <16 x double> %a, %b2446  store <16 x i1> %c, ptr %z2447  ret void2448}2449 2450define void @fcmp_one_vv_v8f64_nonans(ptr %x, ptr %y, ptr %z) {2451; CHECK-LABEL: fcmp_one_vv_v8f64_nonans:2452; CHECK:       # %bb.0:2453; CHECK-NEXT:    vsetivli zero, 16, e64, m8, ta, ma2454; CHECK-NEXT:    vle64.v v8, (a0)2455; CHECK-NEXT:    vle64.v v16, (a1)2456; CHECK-NEXT:    vmfne.vv v24, v8, v162457; CHECK-NEXT:    vsm.v v24, (a2)2458; CHECK-NEXT:    ret2459  %a = load <16 x double>, ptr %x2460  %b = load <16 x double>, ptr %y2461  %c = fcmp nnan one <16 x double> %a, %b2462  store <16 x i1> %c, ptr %z2463  ret void2464}2465 2466define void @fcmp_ord_vv_v4f16(ptr %x, ptr %y, ptr %z) {2467; ZVFH-LABEL: fcmp_ord_vv_v4f16:2468; ZVFH:       # %bb.0:2469; ZVFH-NEXT:    vsetivli zero, 4, e16, mf2, ta, ma2470; ZVFH-NEXT:    vle16.v v8, (a1)2471; ZVFH-NEXT:    vle16.v v9, (a0)2472; ZVFH-NEXT:    vmfeq.vv v8, v8, v82473; ZVFH-NEXT:    vmfeq.vv v9, v9, v92474; ZVFH-NEXT:    vmand.mm v0, v9, v82475; ZVFH-NEXT:    vsetvli zero, zero, e8, mf4, ta, ma2476; ZVFH-NEXT:    vmv.v.i v8, 02477; ZVFH-NEXT:    vmerge.vim v8, v8, 1, v02478; ZVFH-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma2479; ZVFH-NEXT:    vmv.v.i v9, 02480; ZVFH-NEXT:    vsetivli zero, 4, e8, mf2, tu, ma2481; ZVFH-NEXT:    vmv.v.v v9, v82482; ZVFH-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma2483; ZVFH-NEXT:    vmsne.vi v8, v9, 02484; ZVFH-NEXT:    vsm.v v8, (a2)2485; ZVFH-NEXT:    ret2486;2487; ZVFHMIN-LABEL: fcmp_ord_vv_v4f16:2488; ZVFHMIN:       # %bb.0:2489; ZVFHMIN-NEXT:    vsetivli zero, 4, e16, mf2, ta, ma2490; ZVFHMIN-NEXT:    vle16.v v8, (a1)2491; ZVFHMIN-NEXT:    vle16.v v9, (a0)2492; ZVFHMIN-NEXT:    vfwcvt.f.f.v v10, v82493; ZVFHMIN-NEXT:    vfwcvt.f.f.v v8, v92494; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m1, ta, ma2495; ZVFHMIN-NEXT:    vmfeq.vv v9, v10, v102496; ZVFHMIN-NEXT:    vmfeq.vv v8, v8, v82497; ZVFHMIN-NEXT:    vmand.mm v0, v8, v92498; ZVFHMIN-NEXT:    vsetvli zero, zero, e8, mf4, ta, ma2499; ZVFHMIN-NEXT:    vmv.v.i v8, 02500; ZVFHMIN-NEXT:    vmerge.vim v8, v8, 1, v02501; ZVFHMIN-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma2502; ZVFHMIN-NEXT:    vmv.v.i v9, 02503; ZVFHMIN-NEXT:    vsetivli zero, 4, e8, mf2, tu, ma2504; ZVFHMIN-NEXT:    vmv.v.v v9, v82505; ZVFHMIN-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma2506; ZVFHMIN-NEXT:    vmsne.vi v8, v9, 02507; ZVFHMIN-NEXT:    vsm.v v8, (a2)2508; ZVFHMIN-NEXT:    ret2509  %a = load <4 x half>, ptr %x2510  %b = load <4 x half>, ptr %y2511  %c = fcmp ord <4 x half> %a, %b2512  store <4 x i1> %c, ptr %z2513  ret void2514}2515 2516define void @fcmp_uno_vv_v4f16(ptr %x, ptr %y, ptr %z) {2517; ZVFH-LABEL: fcmp_uno_vv_v4f16:2518; ZVFH:       # %bb.0:2519; ZVFH-NEXT:    vsetivli zero, 2, e16, mf4, ta, ma2520; ZVFH-NEXT:    vle16.v v8, (a1)2521; ZVFH-NEXT:    vle16.v v9, (a0)2522; ZVFH-NEXT:    vmfne.vv v8, v8, v82523; ZVFH-NEXT:    vmfne.vv v9, v9, v92524; ZVFH-NEXT:    vmor.mm v0, v9, v82525; ZVFH-NEXT:    vsetvli zero, zero, e8, mf8, ta, ma2526; ZVFH-NEXT:    vmv.v.i v8, 02527; ZVFH-NEXT:    vmerge.vim v8, v8, 1, v02528; ZVFH-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma2529; ZVFH-NEXT:    vmv.v.i v9, 02530; ZVFH-NEXT:    vsetivli zero, 2, e8, mf2, tu, ma2531; ZVFH-NEXT:    vmv.v.v v9, v82532; ZVFH-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma2533; ZVFH-NEXT:    vmsne.vi v8, v9, 02534; ZVFH-NEXT:    vsm.v v8, (a2)2535; ZVFH-NEXT:    ret2536;2537; ZVFHMIN-LABEL: fcmp_uno_vv_v4f16:2538; ZVFHMIN:       # %bb.0:2539; ZVFHMIN-NEXT:    vsetivli zero, 2, e16, mf4, ta, ma2540; ZVFHMIN-NEXT:    vle16.v v8, (a1)2541; ZVFHMIN-NEXT:    vle16.v v9, (a0)2542; ZVFHMIN-NEXT:    vfwcvt.f.f.v v10, v82543; ZVFHMIN-NEXT:    vfwcvt.f.f.v v8, v92544; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, mf2, ta, ma2545; ZVFHMIN-NEXT:    vmfne.vv v9, v10, v102546; ZVFHMIN-NEXT:    vmfne.vv v8, v8, v82547; ZVFHMIN-NEXT:    vmor.mm v0, v8, v92548; ZVFHMIN-NEXT:    vsetvli zero, zero, e8, mf8, ta, ma2549; ZVFHMIN-NEXT:    vmv.v.i v8, 02550; ZVFHMIN-NEXT:    vmerge.vim v8, v8, 1, v02551; ZVFHMIN-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma2552; ZVFHMIN-NEXT:    vmv.v.i v9, 02553; ZVFHMIN-NEXT:    vsetivli zero, 2, e8, mf2, tu, ma2554; ZVFHMIN-NEXT:    vmv.v.v v9, v82555; ZVFHMIN-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma2556; ZVFHMIN-NEXT:    vmsne.vi v8, v9, 02557; ZVFHMIN-NEXT:    vsm.v v8, (a2)2558; ZVFHMIN-NEXT:    ret2559  %a = load <2 x half>, ptr %x2560  %b = load <2 x half>, ptr %y2561  %c = fcmp uno <2 x half> %a, %b2562  store <2 x i1> %c, ptr %z2563  ret void2564}2565 2566define void @fcmp_oeq_vf_v8f16(ptr %x, half %y, ptr %z) {2567; ZVFH-LABEL: fcmp_oeq_vf_v8f16:2568; ZVFH:       # %bb.0:2569; ZVFH-NEXT:    vsetivli zero, 8, e16, m1, ta, ma2570; ZVFH-NEXT:    vle16.v v8, (a0)2571; ZVFH-NEXT:    vmfeq.vf v8, v8, fa02572; ZVFH-NEXT:    vsm.v v8, (a1)2573; ZVFH-NEXT:    ret2574;2575; ZVFHMIN-LABEL: fcmp_oeq_vf_v8f16:2576; ZVFHMIN:       # %bb.0:2577; ZVFHMIN-NEXT:    vsetivli zero, 8, e16, m1, ta, ma2578; ZVFHMIN-NEXT:    vle16.v v10, (a0)2579; ZVFHMIN-NEXT:    fmv.x.h a0, fa02580; ZVFHMIN-NEXT:    vmv.v.x v12, a02581; ZVFHMIN-NEXT:    vfwcvt.f.f.v v8, v102582; ZVFHMIN-NEXT:    vfwcvt.f.f.v v10, v122583; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m2, ta, ma2584; ZVFHMIN-NEXT:    vmfeq.vv v12, v8, v102585; ZVFHMIN-NEXT:    vsm.v v12, (a1)2586; ZVFHMIN-NEXT:    ret2587  %a = load <8 x half>, ptr %x2588  %b = insertelement <8 x half> poison, half %y, i32 02589  %c = shufflevector <8 x half> %b, <8 x half> poison, <8 x i32> zeroinitializer2590  %d = fcmp oeq <8 x half> %a, %c2591  store <8 x i1> %d, ptr %z2592  ret void2593}2594 2595define void @fcmp_oeq_vf_v8f16_nonans(ptr %x, half %y, ptr %z) {2596; ZVFH-LABEL: fcmp_oeq_vf_v8f16_nonans:2597; ZVFH:       # %bb.0:2598; ZVFH-NEXT:    vsetivli zero, 8, e16, m1, ta, ma2599; ZVFH-NEXT:    vle16.v v8, (a0)2600; ZVFH-NEXT:    vmfeq.vf v8, v8, fa02601; ZVFH-NEXT:    vsm.v v8, (a1)2602; ZVFH-NEXT:    ret2603;2604; ZVFHMIN-LABEL: fcmp_oeq_vf_v8f16_nonans:2605; ZVFHMIN:       # %bb.0:2606; ZVFHMIN-NEXT:    vsetivli zero, 8, e16, m1, ta, ma2607; ZVFHMIN-NEXT:    vle16.v v10, (a0)2608; ZVFHMIN-NEXT:    fmv.x.h a0, fa02609; ZVFHMIN-NEXT:    vmv.v.x v12, a02610; ZVFHMIN-NEXT:    vfwcvt.f.f.v v8, v102611; ZVFHMIN-NEXT:    vfwcvt.f.f.v v10, v122612; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m2, ta, ma2613; ZVFHMIN-NEXT:    vmfeq.vv v12, v8, v102614; ZVFHMIN-NEXT:    vsm.v v12, (a1)2615; ZVFHMIN-NEXT:    ret2616  %a = load <8 x half>, ptr %x2617  %b = insertelement <8 x half> poison, half %y, i32 02618  %c = shufflevector <8 x half> %b, <8 x half> poison, <8 x i32> zeroinitializer2619  %d = fcmp nnan oeq <8 x half> %a, %c2620  store <8 x i1> %d, ptr %z2621  ret void2622}2623 2624define void @fcmp_une_vf_v4f32(ptr %x, float %y, ptr %z) {2625; CHECK-LABEL: fcmp_une_vf_v4f32:2626; CHECK:       # %bb.0:2627; CHECK-NEXT:    vsetivli zero, 4, e32, m1, ta, ma2628; CHECK-NEXT:    vle32.v v8, (a0)2629; CHECK-NEXT:    vmfne.vf v0, v8, fa02630; CHECK-NEXT:    vsetvli zero, zero, e8, mf4, ta, ma2631; CHECK-NEXT:    vmv.v.i v8, 02632; CHECK-NEXT:    vmerge.vim v8, v8, 1, v02633; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma2634; CHECK-NEXT:    vmv.v.i v9, 02635; CHECK-NEXT:    vsetivli zero, 4, e8, mf2, tu, ma2636; CHECK-NEXT:    vmv.v.v v9, v82637; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma2638; CHECK-NEXT:    vmsne.vi v8, v9, 02639; CHECK-NEXT:    vsm.v v8, (a1)2640; CHECK-NEXT:    ret2641  %a = load <4 x float>, ptr %x2642  %b = insertelement <4 x float> poison, float %y, i32 02643  %c = shufflevector <4 x float> %b, <4 x float> poison, <4 x i32> zeroinitializer2644  %d = fcmp une <4 x float> %a, %c2645  store <4 x i1> %d, ptr %z2646  ret void2647}2648 2649define void @fcmp_une_vf_v4f32_nonans(ptr %x, float %y, ptr %z) {2650; CHECK-LABEL: fcmp_une_vf_v4f32_nonans:2651; CHECK:       # %bb.0:2652; CHECK-NEXT:    vsetivli zero, 4, e32, m1, ta, ma2653; CHECK-NEXT:    vle32.v v8, (a0)2654; CHECK-NEXT:    vmfne.vf v0, v8, fa02655; CHECK-NEXT:    vsetvli zero, zero, e8, mf4, ta, ma2656; CHECK-NEXT:    vmv.v.i v8, 02657; CHECK-NEXT:    vmerge.vim v8, v8, 1, v02658; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma2659; CHECK-NEXT:    vmv.v.i v9, 02660; CHECK-NEXT:    vsetivli zero, 4, e8, mf2, tu, ma2661; CHECK-NEXT:    vmv.v.v v9, v82662; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma2663; CHECK-NEXT:    vmsne.vi v8, v9, 02664; CHECK-NEXT:    vsm.v v8, (a1)2665; CHECK-NEXT:    ret2666  %a = load <4 x float>, ptr %x2667  %b = insertelement <4 x float> poison, float %y, i32 02668  %c = shufflevector <4 x float> %b, <4 x float> poison, <4 x i32> zeroinitializer2669  %d = fcmp nnan une <4 x float> %a, %c2670  store <4 x i1> %d, ptr %z2671  ret void2672}2673 2674define void @fcmp_ogt_vf_v2f64(ptr %x, double %y, ptr %z) {2675; CHECK-LABEL: fcmp_ogt_vf_v2f64:2676; CHECK:       # %bb.0:2677; CHECK-NEXT:    vsetivli zero, 2, e64, m1, ta, ma2678; CHECK-NEXT:    vle64.v v8, (a0)2679; CHECK-NEXT:    vmfgt.vf v0, v8, fa02680; CHECK-NEXT:    vsetvli zero, zero, e8, mf8, ta, ma2681; CHECK-NEXT:    vmv.v.i v8, 02682; CHECK-NEXT:    vmerge.vim v8, v8, 1, v02683; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma2684; CHECK-NEXT:    vmv.v.i v9, 02685; CHECK-NEXT:    vsetivli zero, 2, e8, mf2, tu, ma2686; CHECK-NEXT:    vmv.v.v v9, v82687; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma2688; CHECK-NEXT:    vmsne.vi v8, v9, 02689; CHECK-NEXT:    vsm.v v8, (a1)2690; CHECK-NEXT:    ret2691  %a = load <2 x double>, ptr %x2692  %b = insertelement <2 x double> poison, double %y, i32 02693  %c = shufflevector <2 x double> %b, <2 x double> poison, <2 x i32> zeroinitializer2694  %d = fcmp ogt <2 x double> %a, %c2695  store <2 x i1> %d, ptr %z2696  ret void2697}2698 2699define void @fcmp_ogt_vf_v2f64_nonans(ptr %x, double %y, ptr %z) {2700; CHECK-LABEL: fcmp_ogt_vf_v2f64_nonans:2701; CHECK:       # %bb.0:2702; CHECK-NEXT:    vsetivli zero, 2, e64, m1, ta, ma2703; CHECK-NEXT:    vle64.v v8, (a0)2704; CHECK-NEXT:    vmfgt.vf v0, v8, fa02705; CHECK-NEXT:    vsetvli zero, zero, e8, mf8, ta, ma2706; CHECK-NEXT:    vmv.v.i v8, 02707; CHECK-NEXT:    vmerge.vim v8, v8, 1, v02708; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma2709; CHECK-NEXT:    vmv.v.i v9, 02710; CHECK-NEXT:    vsetivli zero, 2, e8, mf2, tu, ma2711; CHECK-NEXT:    vmv.v.v v9, v82712; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma2713; CHECK-NEXT:    vmsne.vi v8, v9, 02714; CHECK-NEXT:    vsm.v v8, (a1)2715; CHECK-NEXT:    ret2716  %a = load <2 x double>, ptr %x2717  %b = insertelement <2 x double> poison, double %y, i32 02718  %c = shufflevector <2 x double> %b, <2 x double> poison, <2 x i32> zeroinitializer2719  %d = fcmp nnan ogt <2 x double> %a, %c2720  store <2 x i1> %d, ptr %z2721  ret void2722}2723 2724define void @fcmp_olt_vf_v16f16(ptr %x, half %y, ptr %z) {2725; ZVFH-LABEL: fcmp_olt_vf_v16f16:2726; ZVFH:       # %bb.0:2727; ZVFH-NEXT:    vsetivli zero, 16, e16, m2, ta, ma2728; ZVFH-NEXT:    vle16.v v8, (a0)2729; ZVFH-NEXT:    vmflt.vf v10, v8, fa02730; ZVFH-NEXT:    vsm.v v10, (a1)2731; ZVFH-NEXT:    ret2732;2733; ZVFHMIN-LABEL: fcmp_olt_vf_v16f16:2734; ZVFHMIN:       # %bb.0:2735; ZVFHMIN-NEXT:    vsetivli zero, 16, e16, m2, ta, ma2736; ZVFHMIN-NEXT:    vle16.v v12, (a0)2737; ZVFHMIN-NEXT:    fmv.x.h a0, fa02738; ZVFHMIN-NEXT:    vmv.v.x v16, a02739; ZVFHMIN-NEXT:    vfwcvt.f.f.v v8, v122740; ZVFHMIN-NEXT:    vfwcvt.f.f.v v12, v162741; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m4, ta, ma2742; ZVFHMIN-NEXT:    vmflt.vv v16, v8, v122743; ZVFHMIN-NEXT:    vsm.v v16, (a1)2744; ZVFHMIN-NEXT:    ret2745  %a = load <16 x half>, ptr %x2746  %b = insertelement <16 x half> poison, half %y, i32 02747  %c = shufflevector <16 x half> %b, <16 x half> poison, <16 x i32> zeroinitializer2748  %d = fcmp olt <16 x half> %a, %c2749  store <16 x i1> %d, ptr %z2750  ret void2751}2752 2753define void @fcmp_olt_vf_v16f16_nonans(ptr %x, half %y, ptr %z) {2754; ZVFH-LABEL: fcmp_olt_vf_v16f16_nonans:2755; ZVFH:       # %bb.0:2756; ZVFH-NEXT:    vsetivli zero, 16, e16, m2, ta, ma2757; ZVFH-NEXT:    vle16.v v8, (a0)2758; ZVFH-NEXT:    vmflt.vf v10, v8, fa02759; ZVFH-NEXT:    vsm.v v10, (a1)2760; ZVFH-NEXT:    ret2761;2762; ZVFHMIN-LABEL: fcmp_olt_vf_v16f16_nonans:2763; ZVFHMIN:       # %bb.0:2764; ZVFHMIN-NEXT:    vsetivli zero, 16, e16, m2, ta, ma2765; ZVFHMIN-NEXT:    vle16.v v12, (a0)2766; ZVFHMIN-NEXT:    fmv.x.h a0, fa02767; ZVFHMIN-NEXT:    vmv.v.x v16, a02768; ZVFHMIN-NEXT:    vfwcvt.f.f.v v8, v122769; ZVFHMIN-NEXT:    vfwcvt.f.f.v v12, v162770; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m4, ta, ma2771; ZVFHMIN-NEXT:    vmflt.vv v16, v8, v122772; ZVFHMIN-NEXT:    vsm.v v16, (a1)2773; ZVFHMIN-NEXT:    ret2774  %a = load <16 x half>, ptr %x2775  %b = insertelement <16 x half> poison, half %y, i32 02776  %c = shufflevector <16 x half> %b, <16 x half> poison, <16 x i32> zeroinitializer2777  %d = fcmp nnan olt <16 x half> %a, %c2778  store <16 x i1> %d, ptr %z2779  ret void2780}2781 2782define void @fcmp_oge_vf_v8f32(ptr %x, float %y, ptr %z) {2783; CHECK-LABEL: fcmp_oge_vf_v8f32:2784; CHECK:       # %bb.0:2785; CHECK-NEXT:    vsetivli zero, 8, e32, m2, ta, ma2786; CHECK-NEXT:    vle32.v v8, (a0)2787; CHECK-NEXT:    vmfge.vf v10, v8, fa02788; CHECK-NEXT:    vsm.v v10, (a1)2789; CHECK-NEXT:    ret2790  %a = load <8 x float>, ptr %x2791  %b = insertelement <8 x float> poison, float %y, i32 02792  %c = shufflevector <8 x float> %b, <8 x float> poison, <8 x i32> zeroinitializer2793  %d = fcmp oge <8 x float> %a, %c2794  store <8 x i1> %d, ptr %z2795  ret void2796}2797 2798define void @fcmp_oge_vf_v8f32_nonans(ptr %x, float %y, ptr %z) {2799; CHECK-LABEL: fcmp_oge_vf_v8f32_nonans:2800; CHECK:       # %bb.0:2801; CHECK-NEXT:    vsetivli zero, 8, e32, m2, ta, ma2802; CHECK-NEXT:    vle32.v v8, (a0)2803; CHECK-NEXT:    vmfge.vf v10, v8, fa02804; CHECK-NEXT:    vsm.v v10, (a1)2805; CHECK-NEXT:    ret2806  %a = load <8 x float>, ptr %x2807  %b = insertelement <8 x float> poison, float %y, i32 02808  %c = shufflevector <8 x float> %b, <8 x float> poison, <8 x i32> zeroinitializer2809  %d = fcmp nnan oge <8 x float> %a, %c2810  store <8 x i1> %d, ptr %z2811  ret void2812}2813 2814define void @fcmp_ole_vf_v4f64(ptr %x, double %y, ptr %z) {2815; CHECK-LABEL: fcmp_ole_vf_v4f64:2816; CHECK:       # %bb.0:2817; CHECK-NEXT:    vsetivli zero, 4, e64, m2, ta, ma2818; CHECK-NEXT:    vle64.v v8, (a0)2819; CHECK-NEXT:    vmfle.vf v0, v8, fa02820; CHECK-NEXT:    vsetvli zero, zero, e8, mf4, ta, ma2821; CHECK-NEXT:    vmv.v.i v8, 02822; CHECK-NEXT:    vmerge.vim v8, v8, 1, v02823; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma2824; CHECK-NEXT:    vmv.v.i v9, 02825; CHECK-NEXT:    vsetivli zero, 4, e8, mf2, tu, ma2826; CHECK-NEXT:    vmv.v.v v9, v82827; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma2828; CHECK-NEXT:    vmsne.vi v8, v9, 02829; CHECK-NEXT:    vsm.v v8, (a1)2830; CHECK-NEXT:    ret2831  %a = load <4 x double>, ptr %x2832  %b = insertelement <4 x double> poison, double %y, i32 02833  %c = shufflevector <4 x double> %b, <4 x double> poison, <4 x i32> zeroinitializer2834  %d = fcmp ole <4 x double> %a, %c2835  store <4 x i1> %d, ptr %z2836  ret void2837}2838 2839define void @fcmp_ole_vf_v4f64_nonans(ptr %x, double %y, ptr %z) {2840; CHECK-LABEL: fcmp_ole_vf_v4f64_nonans:2841; CHECK:       # %bb.0:2842; CHECK-NEXT:    vsetivli zero, 4, e64, m2, ta, ma2843; CHECK-NEXT:    vle64.v v8, (a0)2844; CHECK-NEXT:    vmfle.vf v0, v8, fa02845; CHECK-NEXT:    vsetvli zero, zero, e8, mf4, ta, ma2846; CHECK-NEXT:    vmv.v.i v8, 02847; CHECK-NEXT:    vmerge.vim v8, v8, 1, v02848; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma2849; CHECK-NEXT:    vmv.v.i v9, 02850; CHECK-NEXT:    vsetivli zero, 4, e8, mf2, tu, ma2851; CHECK-NEXT:    vmv.v.v v9, v82852; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma2853; CHECK-NEXT:    vmsne.vi v8, v9, 02854; CHECK-NEXT:    vsm.v v8, (a1)2855; CHECK-NEXT:    ret2856  %a = load <4 x double>, ptr %x2857  %b = insertelement <4 x double> poison, double %y, i32 02858  %c = shufflevector <4 x double> %b, <4 x double> poison, <4 x i32> zeroinitializer2859  %d = fcmp nnan ole <4 x double> %a, %c2860  store <4 x i1> %d, ptr %z2861  ret void2862}2863 2864define void @fcmp_ule_vf_v32f16(ptr %x, half %y, ptr %z) {2865; ZVFH-LABEL: fcmp_ule_vf_v32f16:2866; ZVFH:       # %bb.0:2867; ZVFH-NEXT:    li a2, 322868; ZVFH-NEXT:    vsetvli zero, a2, e16, m4, ta, ma2869; ZVFH-NEXT:    vle16.v v8, (a0)2870; ZVFH-NEXT:    vmfgt.vf v12, v8, fa02871; ZVFH-NEXT:    vmnot.m v8, v122872; ZVFH-NEXT:    vsm.v v8, (a1)2873; ZVFH-NEXT:    ret2874;2875; ZVFHMIN-LABEL: fcmp_ule_vf_v32f16:2876; ZVFHMIN:       # %bb.0:2877; ZVFHMIN-NEXT:    li a2, 322878; ZVFHMIN-NEXT:    vsetvli zero, a2, e16, m4, ta, ma2879; ZVFHMIN-NEXT:    vle16.v v16, (a0)2880; ZVFHMIN-NEXT:    fmv.x.h a0, fa02881; ZVFHMIN-NEXT:    vmv.v.x v24, a02882; ZVFHMIN-NEXT:    vfwcvt.f.f.v v8, v162883; ZVFHMIN-NEXT:    vfwcvt.f.f.v v16, v242884; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m8, ta, ma2885; ZVFHMIN-NEXT:    vmflt.vv v24, v16, v82886; ZVFHMIN-NEXT:    vmnot.m v8, v242887; ZVFHMIN-NEXT:    vsm.v v8, (a1)2888; ZVFHMIN-NEXT:    ret2889  %a = load <32 x half>, ptr %x2890  %b = insertelement <32 x half> poison, half %y, i32 02891  %c = shufflevector <32 x half> %b, <32 x half> poison, <32 x i32> zeroinitializer2892  %d = fcmp ule <32 x half> %a, %c2893  store <32 x i1> %d, ptr %z2894  ret void2895}2896 2897define void @fcmp_ule_vf_v32f16_nonans(ptr %x, half %y, ptr %z) {2898; ZVFH-LABEL: fcmp_ule_vf_v32f16_nonans:2899; ZVFH:       # %bb.0:2900; ZVFH-NEXT:    li a2, 322901; ZVFH-NEXT:    vsetvli zero, a2, e16, m4, ta, ma2902; ZVFH-NEXT:    vle16.v v8, (a0)2903; ZVFH-NEXT:    vmfle.vf v12, v8, fa02904; ZVFH-NEXT:    vsm.v v12, (a1)2905; ZVFH-NEXT:    ret2906;2907; ZVFHMIN-LABEL: fcmp_ule_vf_v32f16_nonans:2908; ZVFHMIN:       # %bb.0:2909; ZVFHMIN-NEXT:    li a2, 322910; ZVFHMIN-NEXT:    vsetvli zero, a2, e16, m4, ta, ma2911; ZVFHMIN-NEXT:    vle16.v v16, (a0)2912; ZVFHMIN-NEXT:    fmv.x.h a0, fa02913; ZVFHMIN-NEXT:    vmv.v.x v24, a02914; ZVFHMIN-NEXT:    vfwcvt.f.f.v v8, v162915; ZVFHMIN-NEXT:    vfwcvt.f.f.v v16, v242916; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m8, ta, ma2917; ZVFHMIN-NEXT:    vmfle.vv v24, v8, v162918; ZVFHMIN-NEXT:    vsm.v v24, (a1)2919; ZVFHMIN-NEXT:    ret2920  %a = load <32 x half>, ptr %x2921  %b = insertelement <32 x half> poison, half %y, i32 02922  %c = shufflevector <32 x half> %b, <32 x half> poison, <32 x i32> zeroinitializer2923  %d = fcmp nnan ule <32 x half> %a, %c2924  store <32 x i1> %d, ptr %z2925  ret void2926}2927 2928define void @fcmp_uge_vf_v16f32(ptr %x, float %y, ptr %z) {2929; CHECK-LABEL: fcmp_uge_vf_v16f32:2930; CHECK:       # %bb.0:2931; CHECK-NEXT:    vsetivli zero, 16, e32, m4, ta, ma2932; CHECK-NEXT:    vle32.v v8, (a0)2933; CHECK-NEXT:    vmflt.vf v12, v8, fa02934; CHECK-NEXT:    vmnot.m v8, v122935; CHECK-NEXT:    vsm.v v8, (a1)2936; CHECK-NEXT:    ret2937  %a = load <16 x float>, ptr %x2938  %b = insertelement <16 x float> poison, float %y, i32 02939  %c = shufflevector <16 x float> %b, <16 x float> poison, <16 x i32> zeroinitializer2940  %d = fcmp uge <16 x float> %a, %c2941  store <16 x i1> %d, ptr %z2942  ret void2943}2944 2945define void @fcmp_uge_vf_v16f32_nonans(ptr %x, float %y, ptr %z) {2946; CHECK-LABEL: fcmp_uge_vf_v16f32_nonans:2947; CHECK:       # %bb.0:2948; CHECK-NEXT:    vsetivli zero, 16, e32, m4, ta, ma2949; CHECK-NEXT:    vle32.v v8, (a0)2950; CHECK-NEXT:    vmfge.vf v12, v8, fa02951; CHECK-NEXT:    vsm.v v12, (a1)2952; CHECK-NEXT:    ret2953  %a = load <16 x float>, ptr %x2954  %b = insertelement <16 x float> poison, float %y, i32 02955  %c = shufflevector <16 x float> %b, <16 x float> poison, <16 x i32> zeroinitializer2956  %d = fcmp nnan uge <16 x float> %a, %c2957  store <16 x i1> %d, ptr %z2958  ret void2959}2960 2961define void @fcmp_ult_vf_v8f64(ptr %x, double %y, ptr %z) {2962; CHECK-LABEL: fcmp_ult_vf_v8f64:2963; CHECK:       # %bb.0:2964; CHECK-NEXT:    vsetivli zero, 8, e64, m4, ta, ma2965; CHECK-NEXT:    vle64.v v8, (a0)2966; CHECK-NEXT:    vmfge.vf v12, v8, fa02967; CHECK-NEXT:    vmnot.m v8, v122968; CHECK-NEXT:    vsm.v v8, (a1)2969; CHECK-NEXT:    ret2970  %a = load <8 x double>, ptr %x2971  %b = insertelement <8 x double> poison, double %y, i32 02972  %c = shufflevector <8 x double> %b, <8 x double> poison, <8 x i32> zeroinitializer2973  %d = fcmp ult <8 x double> %a, %c2974  store <8 x i1> %d, ptr %z2975  ret void2976}2977 2978define void @fcmp_ult_vf_v8f64_nonans(ptr %x, double %y, ptr %z) {2979; CHECK-LABEL: fcmp_ult_vf_v8f64_nonans:2980; CHECK:       # %bb.0:2981; CHECK-NEXT:    vsetivli zero, 8, e64, m4, ta, ma2982; CHECK-NEXT:    vle64.v v8, (a0)2983; CHECK-NEXT:    vmflt.vf v12, v8, fa02984; CHECK-NEXT:    vsm.v v12, (a1)2985; CHECK-NEXT:    ret2986  %a = load <8 x double>, ptr %x2987  %b = insertelement <8 x double> poison, double %y, i32 02988  %c = shufflevector <8 x double> %b, <8 x double> poison, <8 x i32> zeroinitializer2989  %d = fcmp nnan ult <8 x double> %a, %c2990  store <8 x i1> %d, ptr %z2991  ret void2992}2993 2994define void @fcmp_ugt_vf_v64f16(ptr %x, half %y, ptr %z) {2995; ZVFH-LABEL: fcmp_ugt_vf_v64f16:2996; ZVFH:       # %bb.0:2997; ZVFH-NEXT:    li a2, 642998; ZVFH-NEXT:    vsetvli zero, a2, e16, m8, ta, ma2999; ZVFH-NEXT:    vle16.v v8, (a0)3000; ZVFH-NEXT:    vmfle.vf v16, v8, fa03001; ZVFH-NEXT:    vmnot.m v8, v163002; ZVFH-NEXT:    vsm.v v8, (a1)3003; ZVFH-NEXT:    ret3004;3005; RV32ZVFHMIN-LABEL: fcmp_ugt_vf_v64f16:3006; RV32ZVFHMIN:       # %bb.0:3007; RV32ZVFHMIN-NEXT:    addi sp, sp, -3843008; RV32ZVFHMIN-NEXT:    .cfi_def_cfa_offset 3843009; RV32ZVFHMIN-NEXT:    sw ra, 380(sp) # 4-byte Folded Spill3010; RV32ZVFHMIN-NEXT:    sw s0, 376(sp) # 4-byte Folded Spill3011; RV32ZVFHMIN-NEXT:    .cfi_offset ra, -43012; RV32ZVFHMIN-NEXT:    .cfi_offset s0, -83013; RV32ZVFHMIN-NEXT:    addi s0, sp, 3843014; RV32ZVFHMIN-NEXT:    .cfi_def_cfa s0, 03015; RV32ZVFHMIN-NEXT:    andi sp, sp, -1283016; RV32ZVFHMIN-NEXT:    li a2, 643017; RV32ZVFHMIN-NEXT:    vsetvli zero, a2, e16, m8, ta, ma3018; RV32ZVFHMIN-NEXT:    vle16.v v8, (a0)3019; RV32ZVFHMIN-NEXT:    addi a0, sp, 1283020; RV32ZVFHMIN-NEXT:    vse16.v v8, (a0)3021; RV32ZVFHMIN-NEXT:    lh a0, 192(sp)3022; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03023; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03024; RV32ZVFHMIN-NEXT:    xori a0, a0, 13025; RV32ZVFHMIN-NEXT:    sb a0, 96(sp)3026; RV32ZVFHMIN-NEXT:    lh a0, 190(sp)3027; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03028; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03029; RV32ZVFHMIN-NEXT:    xori a0, a0, 13030; RV32ZVFHMIN-NEXT:    sb a0, 95(sp)3031; RV32ZVFHMIN-NEXT:    lh a0, 188(sp)3032; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03033; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03034; RV32ZVFHMIN-NEXT:    xori a0, a0, 13035; RV32ZVFHMIN-NEXT:    sb a0, 94(sp)3036; RV32ZVFHMIN-NEXT:    lh a0, 186(sp)3037; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03038; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03039; RV32ZVFHMIN-NEXT:    xori a0, a0, 13040; RV32ZVFHMIN-NEXT:    sb a0, 93(sp)3041; RV32ZVFHMIN-NEXT:    lh a0, 184(sp)3042; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03043; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03044; RV32ZVFHMIN-NEXT:    xori a0, a0, 13045; RV32ZVFHMIN-NEXT:    sb a0, 92(sp)3046; RV32ZVFHMIN-NEXT:    lh a0, 182(sp)3047; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03048; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03049; RV32ZVFHMIN-NEXT:    xori a0, a0, 13050; RV32ZVFHMIN-NEXT:    sb a0, 91(sp)3051; RV32ZVFHMIN-NEXT:    lh a0, 180(sp)3052; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03053; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03054; RV32ZVFHMIN-NEXT:    xori a0, a0, 13055; RV32ZVFHMIN-NEXT:    sb a0, 90(sp)3056; RV32ZVFHMIN-NEXT:    lh a0, 178(sp)3057; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03058; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03059; RV32ZVFHMIN-NEXT:    xori a0, a0, 13060; RV32ZVFHMIN-NEXT:    sb a0, 89(sp)3061; RV32ZVFHMIN-NEXT:    lh a0, 176(sp)3062; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03063; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03064; RV32ZVFHMIN-NEXT:    xori a0, a0, 13065; RV32ZVFHMIN-NEXT:    sb a0, 88(sp)3066; RV32ZVFHMIN-NEXT:    lh a0, 174(sp)3067; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03068; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03069; RV32ZVFHMIN-NEXT:    xori a0, a0, 13070; RV32ZVFHMIN-NEXT:    sb a0, 87(sp)3071; RV32ZVFHMIN-NEXT:    lh a0, 172(sp)3072; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03073; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03074; RV32ZVFHMIN-NEXT:    xori a0, a0, 13075; RV32ZVFHMIN-NEXT:    sb a0, 86(sp)3076; RV32ZVFHMIN-NEXT:    lh a0, 170(sp)3077; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03078; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03079; RV32ZVFHMIN-NEXT:    xori a0, a0, 13080; RV32ZVFHMIN-NEXT:    sb a0, 85(sp)3081; RV32ZVFHMIN-NEXT:    lh a0, 168(sp)3082; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03083; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03084; RV32ZVFHMIN-NEXT:    xori a0, a0, 13085; RV32ZVFHMIN-NEXT:    sb a0, 84(sp)3086; RV32ZVFHMIN-NEXT:    lh a0, 166(sp)3087; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03088; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03089; RV32ZVFHMIN-NEXT:    xori a0, a0, 13090; RV32ZVFHMIN-NEXT:    sb a0, 83(sp)3091; RV32ZVFHMIN-NEXT:    lh a0, 164(sp)3092; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03093; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03094; RV32ZVFHMIN-NEXT:    xori a0, a0, 13095; RV32ZVFHMIN-NEXT:    sb a0, 82(sp)3096; RV32ZVFHMIN-NEXT:    lh a0, 162(sp)3097; RV32ZVFHMIN-NEXT:    vmv.x.s a3, v83098; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03099; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03100; RV32ZVFHMIN-NEXT:    xori a0, a0, 13101; RV32ZVFHMIN-NEXT:    sb a0, 81(sp)3102; RV32ZVFHMIN-NEXT:    lh a0, 160(sp)3103; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a33104; RV32ZVFHMIN-NEXT:    fle.h a3, fa5, fa03105; RV32ZVFHMIN-NEXT:    xori a3, a3, 13106; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03107; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03108; RV32ZVFHMIN-NEXT:    xori a0, a0, 13109; RV32ZVFHMIN-NEXT:    sb a3, 64(sp)3110; RV32ZVFHMIN-NEXT:    sb a0, 80(sp)3111; RV32ZVFHMIN-NEXT:    lh a0, 226(sp)3112; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03113; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03114; RV32ZVFHMIN-NEXT:    xori a0, a0, 13115; RV32ZVFHMIN-NEXT:    sb a0, 113(sp)3116; RV32ZVFHMIN-NEXT:    lh a0, 224(sp)3117; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03118; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03119; RV32ZVFHMIN-NEXT:    xori a0, a0, 13120; RV32ZVFHMIN-NEXT:    sb a0, 112(sp)3121; RV32ZVFHMIN-NEXT:    lh a0, 222(sp)3122; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03123; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03124; RV32ZVFHMIN-NEXT:    xori a0, a0, 13125; RV32ZVFHMIN-NEXT:    sb a0, 111(sp)3126; RV32ZVFHMIN-NEXT:    lh a0, 220(sp)3127; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03128; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03129; RV32ZVFHMIN-NEXT:    xori a0, a0, 13130; RV32ZVFHMIN-NEXT:    sb a0, 110(sp)3131; RV32ZVFHMIN-NEXT:    lh a0, 218(sp)3132; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03133; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03134; RV32ZVFHMIN-NEXT:    xori a0, a0, 13135; RV32ZVFHMIN-NEXT:    sb a0, 109(sp)3136; RV32ZVFHMIN-NEXT:    lh a0, 216(sp)3137; RV32ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m1, ta, ma3138; RV32ZVFHMIN-NEXT:    vslidedown.vi v10, v8, 73139; RV32ZVFHMIN-NEXT:    vslidedown.vi v11, v8, 63140; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03141; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03142; RV32ZVFHMIN-NEXT:    xori a0, a0, 13143; RV32ZVFHMIN-NEXT:    sb a0, 108(sp)3144; RV32ZVFHMIN-NEXT:    lh a0, 214(sp)3145; RV32ZVFHMIN-NEXT:    vslidedown.vi v12, v8, 53146; RV32ZVFHMIN-NEXT:    vslidedown.vi v13, v8, 43147; RV32ZVFHMIN-NEXT:    vslidedown.vi v14, v8, 33148; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03149; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03150; RV32ZVFHMIN-NEXT:    xori a0, a0, 13151; RV32ZVFHMIN-NEXT:    sb a0, 107(sp)3152; RV32ZVFHMIN-NEXT:    lh a0, 212(sp)3153; RV32ZVFHMIN-NEXT:    vslidedown.vi v15, v8, 23154; RV32ZVFHMIN-NEXT:    vslidedown.vi v16, v8, 13155; RV32ZVFHMIN-NEXT:    vmv.x.s a3, v103156; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03157; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03158; RV32ZVFHMIN-NEXT:    xori a0, a0, 13159; RV32ZVFHMIN-NEXT:    sb a0, 106(sp)3160; RV32ZVFHMIN-NEXT:    lh a0, 210(sp)3161; RV32ZVFHMIN-NEXT:    vmv.x.s a4, v113162; RV32ZVFHMIN-NEXT:    vmv.x.s a5, v123163; RV32ZVFHMIN-NEXT:    vmv.x.s a6, v133164; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03165; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03166; RV32ZVFHMIN-NEXT:    xori a0, a0, 13167; RV32ZVFHMIN-NEXT:    sb a0, 105(sp)3168; RV32ZVFHMIN-NEXT:    lh a0, 208(sp)3169; RV32ZVFHMIN-NEXT:    vmv.x.s a7, v143170; RV32ZVFHMIN-NEXT:    vmv.x.s t0, v153171; RV32ZVFHMIN-NEXT:    vmv.x.s t1, v163172; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03173; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03174; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a33175; RV32ZVFHMIN-NEXT:    xori a0, a0, 13176; RV32ZVFHMIN-NEXT:    sb a0, 104(sp)3177; RV32ZVFHMIN-NEXT:    lh a0, 206(sp)3178; RV32ZVFHMIN-NEXT:    fle.h a3, fa5, fa03179; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a43180; RV32ZVFHMIN-NEXT:    fle.h a4, fa5, fa03181; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03182; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03183; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a53184; RV32ZVFHMIN-NEXT:    xori a0, a0, 13185; RV32ZVFHMIN-NEXT:    sb a0, 103(sp)3186; RV32ZVFHMIN-NEXT:    lh a0, 204(sp)3187; RV32ZVFHMIN-NEXT:    fle.h a5, fa5, fa03188; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a63189; RV32ZVFHMIN-NEXT:    fle.h a6, fa5, fa03190; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03191; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03192; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a73193; RV32ZVFHMIN-NEXT:    xori a0, a0, 13194; RV32ZVFHMIN-NEXT:    sb a0, 102(sp)3195; RV32ZVFHMIN-NEXT:    lh a0, 202(sp)3196; RV32ZVFHMIN-NEXT:    fle.h a7, fa5, fa03197; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t03198; RV32ZVFHMIN-NEXT:    fle.h t0, fa5, fa03199; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03200; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03201; RV32ZVFHMIN-NEXT:    xori a0, a0, 13202; RV32ZVFHMIN-NEXT:    sb a0, 101(sp)3203; RV32ZVFHMIN-NEXT:    lh a0, 200(sp)3204; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t13205; RV32ZVFHMIN-NEXT:    fle.h t1, fa5, fa03206; RV32ZVFHMIN-NEXT:    xori a3, a3, 13207; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03208; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03209; RV32ZVFHMIN-NEXT:    xori a0, a0, 13210; RV32ZVFHMIN-NEXT:    sb a0, 100(sp)3211; RV32ZVFHMIN-NEXT:    lh a0, 198(sp)3212; RV32ZVFHMIN-NEXT:    xori a4, a4, 13213; RV32ZVFHMIN-NEXT:    xori a5, a5, 13214; RV32ZVFHMIN-NEXT:    xori a6, a6, 13215; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03216; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03217; RV32ZVFHMIN-NEXT:    xori a0, a0, 13218; RV32ZVFHMIN-NEXT:    sb a0, 99(sp)3219; RV32ZVFHMIN-NEXT:    lh a0, 196(sp)3220; RV32ZVFHMIN-NEXT:    xori a7, a7, 13221; RV32ZVFHMIN-NEXT:    xori t0, t0, 13222; RV32ZVFHMIN-NEXT:    xori t1, t1, 13223; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03224; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03225; RV32ZVFHMIN-NEXT:    xori a0, a0, 13226; RV32ZVFHMIN-NEXT:    sb a0, 98(sp)3227; RV32ZVFHMIN-NEXT:    lh a0, 194(sp)3228; RV32ZVFHMIN-NEXT:    sb t1, 65(sp)3229; RV32ZVFHMIN-NEXT:    sb t0, 66(sp)3230; RV32ZVFHMIN-NEXT:    sb a7, 67(sp)3231; RV32ZVFHMIN-NEXT:    sb a6, 68(sp)3232; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03233; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03234; RV32ZVFHMIN-NEXT:    xori a0, a0, 13235; RV32ZVFHMIN-NEXT:    sb a5, 69(sp)3236; RV32ZVFHMIN-NEXT:    sb a4, 70(sp)3237; RV32ZVFHMIN-NEXT:    sb a3, 71(sp)3238; RV32ZVFHMIN-NEXT:    sb a0, 97(sp)3239; RV32ZVFHMIN-NEXT:    lh a0, 254(sp)3240; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03241; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03242; RV32ZVFHMIN-NEXT:    xori a0, a0, 13243; RV32ZVFHMIN-NEXT:    sb a0, 127(sp)3244; RV32ZVFHMIN-NEXT:    lh a0, 252(sp)3245; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03246; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03247; RV32ZVFHMIN-NEXT:    xori a0, a0, 13248; RV32ZVFHMIN-NEXT:    sb a0, 126(sp)3249; RV32ZVFHMIN-NEXT:    lh a0, 250(sp)3250; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03251; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03252; RV32ZVFHMIN-NEXT:    xori a0, a0, 13253; RV32ZVFHMIN-NEXT:    sb a0, 125(sp)3254; RV32ZVFHMIN-NEXT:    lh a0, 248(sp)3255; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03256; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03257; RV32ZVFHMIN-NEXT:    xori a0, a0, 13258; RV32ZVFHMIN-NEXT:    sb a0, 124(sp)3259; RV32ZVFHMIN-NEXT:    lh a0, 246(sp)3260; RV32ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m2, ta, ma3261; RV32ZVFHMIN-NEXT:    vslidedown.vi v10, v8, 153262; RV32ZVFHMIN-NEXT:    vslidedown.vi v12, v8, 143263; RV32ZVFHMIN-NEXT:    vslidedown.vi v14, v8, 133264; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03265; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03266; RV32ZVFHMIN-NEXT:    xori a0, a0, 13267; RV32ZVFHMIN-NEXT:    sb a0, 123(sp)3268; RV32ZVFHMIN-NEXT:    lh a0, 244(sp)3269; RV32ZVFHMIN-NEXT:    vslidedown.vi v16, v8, 123270; RV32ZVFHMIN-NEXT:    vslidedown.vi v18, v8, 113271; RV32ZVFHMIN-NEXT:    vslidedown.vi v20, v8, 103272; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03273; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03274; RV32ZVFHMIN-NEXT:    xori a0, a0, 13275; RV32ZVFHMIN-NEXT:    sb a0, 122(sp)3276; RV32ZVFHMIN-NEXT:    lh a0, 242(sp)3277; RV32ZVFHMIN-NEXT:    vslidedown.vi v22, v8, 93278; RV32ZVFHMIN-NEXT:    vslidedown.vi v8, v8, 83279; RV32ZVFHMIN-NEXT:    vmv.x.s a3, v103280; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03281; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03282; RV32ZVFHMIN-NEXT:    xori a0, a0, 13283; RV32ZVFHMIN-NEXT:    sb a0, 121(sp)3284; RV32ZVFHMIN-NEXT:    lh a0, 240(sp)3285; RV32ZVFHMIN-NEXT:    vmv.x.s a4, v123286; RV32ZVFHMIN-NEXT:    vmv.x.s a5, v143287; RV32ZVFHMIN-NEXT:    vmv.x.s a6, v163288; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03289; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03290; RV32ZVFHMIN-NEXT:    xori a0, a0, 13291; RV32ZVFHMIN-NEXT:    sb a0, 120(sp)3292; RV32ZVFHMIN-NEXT:    lh a0, 238(sp)3293; RV32ZVFHMIN-NEXT:    vmv.x.s a7, v183294; RV32ZVFHMIN-NEXT:    vmv.x.s t0, v203295; RV32ZVFHMIN-NEXT:    vmv.x.s t1, v223296; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03297; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03298; RV32ZVFHMIN-NEXT:    xori a0, a0, 13299; RV32ZVFHMIN-NEXT:    sb a0, 119(sp)3300; RV32ZVFHMIN-NEXT:    lh a0, 236(sp)3301; RV32ZVFHMIN-NEXT:    vmv.x.s t2, v83302; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a33303; RV32ZVFHMIN-NEXT:    fle.h a3, fa5, fa03304; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03305; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03306; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a43307; RV32ZVFHMIN-NEXT:    xori a0, a0, 13308; RV32ZVFHMIN-NEXT:    sb a0, 118(sp)3309; RV32ZVFHMIN-NEXT:    lh a0, 234(sp)3310; RV32ZVFHMIN-NEXT:    fle.h a4, fa5, fa03311; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a53312; RV32ZVFHMIN-NEXT:    fle.h a5, fa5, fa03313; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03314; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03315; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a63316; RV32ZVFHMIN-NEXT:    xori a0, a0, 13317; RV32ZVFHMIN-NEXT:    sb a0, 117(sp)3318; RV32ZVFHMIN-NEXT:    lh a0, 232(sp)3319; RV32ZVFHMIN-NEXT:    fle.h a6, fa5, fa03320; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a73321; RV32ZVFHMIN-NEXT:    fle.h a7, fa5, fa03322; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03323; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03324; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t03325; RV32ZVFHMIN-NEXT:    xori a0, a0, 13326; RV32ZVFHMIN-NEXT:    sb a0, 116(sp)3327; RV32ZVFHMIN-NEXT:    lh a0, 230(sp)3328; RV32ZVFHMIN-NEXT:    fle.h t0, fa5, fa03329; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t13330; RV32ZVFHMIN-NEXT:    fle.h t1, fa5, fa03331; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03332; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03333; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t23334; RV32ZVFHMIN-NEXT:    xori a3, a3, 13335; RV32ZVFHMIN-NEXT:    xori a4, a4, 13336; RV32ZVFHMIN-NEXT:    xori a5, a5, 13337; RV32ZVFHMIN-NEXT:    xori a6, a6, 13338; RV32ZVFHMIN-NEXT:    xori a0, a0, 13339; RV32ZVFHMIN-NEXT:    sb a0, 115(sp)3340; RV32ZVFHMIN-NEXT:    lh a0, 228(sp)3341; RV32ZVFHMIN-NEXT:    sb a6, 76(sp)3342; RV32ZVFHMIN-NEXT:    sb a5, 77(sp)3343; RV32ZVFHMIN-NEXT:    sb a4, 78(sp)3344; RV32ZVFHMIN-NEXT:    sb a3, 79(sp)3345; RV32ZVFHMIN-NEXT:    fle.h a3, fa5, fa03346; RV32ZVFHMIN-NEXT:    xori a4, a7, 13347; RV32ZVFHMIN-NEXT:    xori a5, t0, 13348; RV32ZVFHMIN-NEXT:    xori a6, t1, 13349; RV32ZVFHMIN-NEXT:    xori a3, a3, 13350; RV32ZVFHMIN-NEXT:    sb a3, 72(sp)3351; RV32ZVFHMIN-NEXT:    sb a6, 73(sp)3352; RV32ZVFHMIN-NEXT:    sb a5, 74(sp)3353; RV32ZVFHMIN-NEXT:    sb a4, 75(sp)3354; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03355; RV32ZVFHMIN-NEXT:    fle.h a0, fa5, fa03356; RV32ZVFHMIN-NEXT:    xori a0, a0, 13357; RV32ZVFHMIN-NEXT:    sb a0, 114(sp)3358; RV32ZVFHMIN-NEXT:    addi a0, sp, 643359; RV32ZVFHMIN-NEXT:    vsetvli zero, a2, e8, m4, ta, ma3360; RV32ZVFHMIN-NEXT:    vle8.v v8, (a0)3361; RV32ZVFHMIN-NEXT:    vand.vi v8, v8, 13362; RV32ZVFHMIN-NEXT:    vmsne.vi v12, v8, 03363; RV32ZVFHMIN-NEXT:    vsm.v v12, (a1)3364; RV32ZVFHMIN-NEXT:    addi sp, s0, -3843365; RV32ZVFHMIN-NEXT:    .cfi_def_cfa sp, 3843366; RV32ZVFHMIN-NEXT:    lw ra, 380(sp) # 4-byte Folded Reload3367; RV32ZVFHMIN-NEXT:    lw s0, 376(sp) # 4-byte Folded Reload3368; RV32ZVFHMIN-NEXT:    .cfi_restore ra3369; RV32ZVFHMIN-NEXT:    .cfi_restore s03370; RV32ZVFHMIN-NEXT:    addi sp, sp, 3843371; RV32ZVFHMIN-NEXT:    .cfi_def_cfa_offset 03372; RV32ZVFHMIN-NEXT:    ret3373;3374; RV64ZVFHMIN-LABEL: fcmp_ugt_vf_v64f16:3375; RV64ZVFHMIN:       # %bb.0:3376; RV64ZVFHMIN-NEXT:    addi sp, sp, -3843377; RV64ZVFHMIN-NEXT:    .cfi_def_cfa_offset 3843378; RV64ZVFHMIN-NEXT:    sd ra, 376(sp) # 8-byte Folded Spill3379; RV64ZVFHMIN-NEXT:    sd s0, 368(sp) # 8-byte Folded Spill3380; RV64ZVFHMIN-NEXT:    .cfi_offset ra, -83381; RV64ZVFHMIN-NEXT:    .cfi_offset s0, -163382; RV64ZVFHMIN-NEXT:    addi s0, sp, 3843383; RV64ZVFHMIN-NEXT:    .cfi_def_cfa s0, 03384; RV64ZVFHMIN-NEXT:    andi sp, sp, -1283385; RV64ZVFHMIN-NEXT:    li a2, 643386; RV64ZVFHMIN-NEXT:    vsetvli zero, a2, e16, m8, ta, ma3387; RV64ZVFHMIN-NEXT:    vle16.v v8, (a0)3388; RV64ZVFHMIN-NEXT:    addi a0, sp, 1283389; RV64ZVFHMIN-NEXT:    vse16.v v8, (a0)3390; RV64ZVFHMIN-NEXT:    lh a0, 192(sp)3391; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03392; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03393; RV64ZVFHMIN-NEXT:    xori a0, a0, 13394; RV64ZVFHMIN-NEXT:    sb a0, 96(sp)3395; RV64ZVFHMIN-NEXT:    lh a0, 190(sp)3396; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03397; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03398; RV64ZVFHMIN-NEXT:    xori a0, a0, 13399; RV64ZVFHMIN-NEXT:    sb a0, 95(sp)3400; RV64ZVFHMIN-NEXT:    lh a0, 188(sp)3401; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03402; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03403; RV64ZVFHMIN-NEXT:    xori a0, a0, 13404; RV64ZVFHMIN-NEXT:    sb a0, 94(sp)3405; RV64ZVFHMIN-NEXT:    lh a0, 186(sp)3406; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03407; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03408; RV64ZVFHMIN-NEXT:    xori a0, a0, 13409; RV64ZVFHMIN-NEXT:    sb a0, 93(sp)3410; RV64ZVFHMIN-NEXT:    lh a0, 184(sp)3411; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03412; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03413; RV64ZVFHMIN-NEXT:    xori a0, a0, 13414; RV64ZVFHMIN-NEXT:    sb a0, 92(sp)3415; RV64ZVFHMIN-NEXT:    lh a0, 182(sp)3416; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03417; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03418; RV64ZVFHMIN-NEXT:    xori a0, a0, 13419; RV64ZVFHMIN-NEXT:    sb a0, 91(sp)3420; RV64ZVFHMIN-NEXT:    lh a0, 180(sp)3421; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03422; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03423; RV64ZVFHMIN-NEXT:    xori a0, a0, 13424; RV64ZVFHMIN-NEXT:    sb a0, 90(sp)3425; RV64ZVFHMIN-NEXT:    lh a0, 178(sp)3426; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03427; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03428; RV64ZVFHMIN-NEXT:    xori a0, a0, 13429; RV64ZVFHMIN-NEXT:    sb a0, 89(sp)3430; RV64ZVFHMIN-NEXT:    lh a0, 176(sp)3431; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03432; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03433; RV64ZVFHMIN-NEXT:    xori a0, a0, 13434; RV64ZVFHMIN-NEXT:    sb a0, 88(sp)3435; RV64ZVFHMIN-NEXT:    lh a0, 174(sp)3436; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03437; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03438; RV64ZVFHMIN-NEXT:    xori a0, a0, 13439; RV64ZVFHMIN-NEXT:    sb a0, 87(sp)3440; RV64ZVFHMIN-NEXT:    lh a0, 172(sp)3441; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03442; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03443; RV64ZVFHMIN-NEXT:    xori a0, a0, 13444; RV64ZVFHMIN-NEXT:    sb a0, 86(sp)3445; RV64ZVFHMIN-NEXT:    lh a0, 170(sp)3446; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03447; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03448; RV64ZVFHMIN-NEXT:    xori a0, a0, 13449; RV64ZVFHMIN-NEXT:    sb a0, 85(sp)3450; RV64ZVFHMIN-NEXT:    lh a0, 168(sp)3451; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03452; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03453; RV64ZVFHMIN-NEXT:    xori a0, a0, 13454; RV64ZVFHMIN-NEXT:    sb a0, 84(sp)3455; RV64ZVFHMIN-NEXT:    lh a0, 166(sp)3456; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03457; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03458; RV64ZVFHMIN-NEXT:    xori a0, a0, 13459; RV64ZVFHMIN-NEXT:    sb a0, 83(sp)3460; RV64ZVFHMIN-NEXT:    lh a0, 164(sp)3461; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03462; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03463; RV64ZVFHMIN-NEXT:    xori a0, a0, 13464; RV64ZVFHMIN-NEXT:    sb a0, 82(sp)3465; RV64ZVFHMIN-NEXT:    lh a0, 162(sp)3466; RV64ZVFHMIN-NEXT:    vmv.x.s a3, v83467; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03468; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03469; RV64ZVFHMIN-NEXT:    xori a0, a0, 13470; RV64ZVFHMIN-NEXT:    sb a0, 81(sp)3471; RV64ZVFHMIN-NEXT:    lh a0, 160(sp)3472; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a33473; RV64ZVFHMIN-NEXT:    fle.h a3, fa5, fa03474; RV64ZVFHMIN-NEXT:    xori a3, a3, 13475; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03476; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03477; RV64ZVFHMIN-NEXT:    xori a0, a0, 13478; RV64ZVFHMIN-NEXT:    sb a3, 64(sp)3479; RV64ZVFHMIN-NEXT:    sb a0, 80(sp)3480; RV64ZVFHMIN-NEXT:    lh a0, 226(sp)3481; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03482; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03483; RV64ZVFHMIN-NEXT:    xori a0, a0, 13484; RV64ZVFHMIN-NEXT:    sb a0, 113(sp)3485; RV64ZVFHMIN-NEXT:    lh a0, 224(sp)3486; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03487; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03488; RV64ZVFHMIN-NEXT:    xori a0, a0, 13489; RV64ZVFHMIN-NEXT:    sb a0, 112(sp)3490; RV64ZVFHMIN-NEXT:    lh a0, 222(sp)3491; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03492; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03493; RV64ZVFHMIN-NEXT:    xori a0, a0, 13494; RV64ZVFHMIN-NEXT:    sb a0, 111(sp)3495; RV64ZVFHMIN-NEXT:    lh a0, 220(sp)3496; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03497; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03498; RV64ZVFHMIN-NEXT:    xori a0, a0, 13499; RV64ZVFHMIN-NEXT:    sb a0, 110(sp)3500; RV64ZVFHMIN-NEXT:    lh a0, 218(sp)3501; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03502; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03503; RV64ZVFHMIN-NEXT:    xori a0, a0, 13504; RV64ZVFHMIN-NEXT:    sb a0, 109(sp)3505; RV64ZVFHMIN-NEXT:    lh a0, 216(sp)3506; RV64ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m1, ta, ma3507; RV64ZVFHMIN-NEXT:    vslidedown.vi v10, v8, 73508; RV64ZVFHMIN-NEXT:    vslidedown.vi v11, v8, 63509; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03510; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03511; RV64ZVFHMIN-NEXT:    xori a0, a0, 13512; RV64ZVFHMIN-NEXT:    sb a0, 108(sp)3513; RV64ZVFHMIN-NEXT:    lh a0, 214(sp)3514; RV64ZVFHMIN-NEXT:    vslidedown.vi v12, v8, 53515; RV64ZVFHMIN-NEXT:    vslidedown.vi v13, v8, 43516; RV64ZVFHMIN-NEXT:    vslidedown.vi v14, v8, 33517; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03518; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03519; RV64ZVFHMIN-NEXT:    xori a0, a0, 13520; RV64ZVFHMIN-NEXT:    sb a0, 107(sp)3521; RV64ZVFHMIN-NEXT:    lh a0, 212(sp)3522; RV64ZVFHMIN-NEXT:    vslidedown.vi v15, v8, 23523; RV64ZVFHMIN-NEXT:    vslidedown.vi v16, v8, 13524; RV64ZVFHMIN-NEXT:    vmv.x.s a3, v103525; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03526; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03527; RV64ZVFHMIN-NEXT:    xori a0, a0, 13528; RV64ZVFHMIN-NEXT:    sb a0, 106(sp)3529; RV64ZVFHMIN-NEXT:    lh a0, 210(sp)3530; RV64ZVFHMIN-NEXT:    vmv.x.s a4, v113531; RV64ZVFHMIN-NEXT:    vmv.x.s a5, v123532; RV64ZVFHMIN-NEXT:    vmv.x.s a6, v133533; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03534; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03535; RV64ZVFHMIN-NEXT:    xori a0, a0, 13536; RV64ZVFHMIN-NEXT:    sb a0, 105(sp)3537; RV64ZVFHMIN-NEXT:    lh a0, 208(sp)3538; RV64ZVFHMIN-NEXT:    vmv.x.s a7, v143539; RV64ZVFHMIN-NEXT:    vmv.x.s t0, v153540; RV64ZVFHMIN-NEXT:    vmv.x.s t1, v163541; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03542; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03543; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a33544; RV64ZVFHMIN-NEXT:    xori a0, a0, 13545; RV64ZVFHMIN-NEXT:    sb a0, 104(sp)3546; RV64ZVFHMIN-NEXT:    lh a0, 206(sp)3547; RV64ZVFHMIN-NEXT:    fle.h a3, fa5, fa03548; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a43549; RV64ZVFHMIN-NEXT:    fle.h a4, fa5, fa03550; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03551; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03552; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a53553; RV64ZVFHMIN-NEXT:    xori a0, a0, 13554; RV64ZVFHMIN-NEXT:    sb a0, 103(sp)3555; RV64ZVFHMIN-NEXT:    lh a0, 204(sp)3556; RV64ZVFHMIN-NEXT:    fle.h a5, fa5, fa03557; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a63558; RV64ZVFHMIN-NEXT:    fle.h a6, fa5, fa03559; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03560; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03561; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a73562; RV64ZVFHMIN-NEXT:    xori a0, a0, 13563; RV64ZVFHMIN-NEXT:    sb a0, 102(sp)3564; RV64ZVFHMIN-NEXT:    lh a0, 202(sp)3565; RV64ZVFHMIN-NEXT:    fle.h a7, fa5, fa03566; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t03567; RV64ZVFHMIN-NEXT:    fle.h t0, fa5, fa03568; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03569; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03570; RV64ZVFHMIN-NEXT:    xori a0, a0, 13571; RV64ZVFHMIN-NEXT:    sb a0, 101(sp)3572; RV64ZVFHMIN-NEXT:    lh a0, 200(sp)3573; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t13574; RV64ZVFHMIN-NEXT:    fle.h t1, fa5, fa03575; RV64ZVFHMIN-NEXT:    xori a3, a3, 13576; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03577; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03578; RV64ZVFHMIN-NEXT:    xori a0, a0, 13579; RV64ZVFHMIN-NEXT:    sb a0, 100(sp)3580; RV64ZVFHMIN-NEXT:    lh a0, 198(sp)3581; RV64ZVFHMIN-NEXT:    xori a4, a4, 13582; RV64ZVFHMIN-NEXT:    xori a5, a5, 13583; RV64ZVFHMIN-NEXT:    xori a6, a6, 13584; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03585; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03586; RV64ZVFHMIN-NEXT:    xori a0, a0, 13587; RV64ZVFHMIN-NEXT:    sb a0, 99(sp)3588; RV64ZVFHMIN-NEXT:    lh a0, 196(sp)3589; RV64ZVFHMIN-NEXT:    xori a7, a7, 13590; RV64ZVFHMIN-NEXT:    xori t0, t0, 13591; RV64ZVFHMIN-NEXT:    xori t1, t1, 13592; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03593; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03594; RV64ZVFHMIN-NEXT:    xori a0, a0, 13595; RV64ZVFHMIN-NEXT:    sb a0, 98(sp)3596; RV64ZVFHMIN-NEXT:    lh a0, 194(sp)3597; RV64ZVFHMIN-NEXT:    sb t1, 65(sp)3598; RV64ZVFHMIN-NEXT:    sb t0, 66(sp)3599; RV64ZVFHMIN-NEXT:    sb a7, 67(sp)3600; RV64ZVFHMIN-NEXT:    sb a6, 68(sp)3601; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03602; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03603; RV64ZVFHMIN-NEXT:    xori a0, a0, 13604; RV64ZVFHMIN-NEXT:    sb a5, 69(sp)3605; RV64ZVFHMIN-NEXT:    sb a4, 70(sp)3606; RV64ZVFHMIN-NEXT:    sb a3, 71(sp)3607; RV64ZVFHMIN-NEXT:    sb a0, 97(sp)3608; RV64ZVFHMIN-NEXT:    lh a0, 254(sp)3609; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03610; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03611; RV64ZVFHMIN-NEXT:    xori a0, a0, 13612; RV64ZVFHMIN-NEXT:    sb a0, 127(sp)3613; RV64ZVFHMIN-NEXT:    lh a0, 252(sp)3614; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03615; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03616; RV64ZVFHMIN-NEXT:    xori a0, a0, 13617; RV64ZVFHMIN-NEXT:    sb a0, 126(sp)3618; RV64ZVFHMIN-NEXT:    lh a0, 250(sp)3619; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03620; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03621; RV64ZVFHMIN-NEXT:    xori a0, a0, 13622; RV64ZVFHMIN-NEXT:    sb a0, 125(sp)3623; RV64ZVFHMIN-NEXT:    lh a0, 248(sp)3624; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03625; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03626; RV64ZVFHMIN-NEXT:    xori a0, a0, 13627; RV64ZVFHMIN-NEXT:    sb a0, 124(sp)3628; RV64ZVFHMIN-NEXT:    lh a0, 246(sp)3629; RV64ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m2, ta, ma3630; RV64ZVFHMIN-NEXT:    vslidedown.vi v10, v8, 153631; RV64ZVFHMIN-NEXT:    vslidedown.vi v12, v8, 143632; RV64ZVFHMIN-NEXT:    vslidedown.vi v14, v8, 133633; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03634; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03635; RV64ZVFHMIN-NEXT:    xori a0, a0, 13636; RV64ZVFHMIN-NEXT:    sb a0, 123(sp)3637; RV64ZVFHMIN-NEXT:    lh a0, 244(sp)3638; RV64ZVFHMIN-NEXT:    vslidedown.vi v16, v8, 123639; RV64ZVFHMIN-NEXT:    vslidedown.vi v18, v8, 113640; RV64ZVFHMIN-NEXT:    vslidedown.vi v20, v8, 103641; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03642; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03643; RV64ZVFHMIN-NEXT:    xori a0, a0, 13644; RV64ZVFHMIN-NEXT:    sb a0, 122(sp)3645; RV64ZVFHMIN-NEXT:    lh a0, 242(sp)3646; RV64ZVFHMIN-NEXT:    vslidedown.vi v22, v8, 93647; RV64ZVFHMIN-NEXT:    vslidedown.vi v8, v8, 83648; RV64ZVFHMIN-NEXT:    vmv.x.s a3, v103649; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03650; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03651; RV64ZVFHMIN-NEXT:    xori a0, a0, 13652; RV64ZVFHMIN-NEXT:    sb a0, 121(sp)3653; RV64ZVFHMIN-NEXT:    lh a0, 240(sp)3654; RV64ZVFHMIN-NEXT:    vmv.x.s a4, v123655; RV64ZVFHMIN-NEXT:    vmv.x.s a5, v143656; RV64ZVFHMIN-NEXT:    vmv.x.s a6, v163657; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03658; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03659; RV64ZVFHMIN-NEXT:    xori a0, a0, 13660; RV64ZVFHMIN-NEXT:    sb a0, 120(sp)3661; RV64ZVFHMIN-NEXT:    lh a0, 238(sp)3662; RV64ZVFHMIN-NEXT:    vmv.x.s a7, v183663; RV64ZVFHMIN-NEXT:    vmv.x.s t0, v203664; RV64ZVFHMIN-NEXT:    vmv.x.s t1, v223665; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03666; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03667; RV64ZVFHMIN-NEXT:    xori a0, a0, 13668; RV64ZVFHMIN-NEXT:    sb a0, 119(sp)3669; RV64ZVFHMIN-NEXT:    lh a0, 236(sp)3670; RV64ZVFHMIN-NEXT:    vmv.x.s t2, v83671; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a33672; RV64ZVFHMIN-NEXT:    fle.h a3, fa5, fa03673; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03674; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03675; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a43676; RV64ZVFHMIN-NEXT:    xori a0, a0, 13677; RV64ZVFHMIN-NEXT:    sb a0, 118(sp)3678; RV64ZVFHMIN-NEXT:    lh a0, 234(sp)3679; RV64ZVFHMIN-NEXT:    fle.h a4, fa5, fa03680; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a53681; RV64ZVFHMIN-NEXT:    fle.h a5, fa5, fa03682; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03683; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03684; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a63685; RV64ZVFHMIN-NEXT:    xori a0, a0, 13686; RV64ZVFHMIN-NEXT:    sb a0, 117(sp)3687; RV64ZVFHMIN-NEXT:    lh a0, 232(sp)3688; RV64ZVFHMIN-NEXT:    fle.h a6, fa5, fa03689; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a73690; RV64ZVFHMIN-NEXT:    fle.h a7, fa5, fa03691; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03692; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03693; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t03694; RV64ZVFHMIN-NEXT:    xori a0, a0, 13695; RV64ZVFHMIN-NEXT:    sb a0, 116(sp)3696; RV64ZVFHMIN-NEXT:    lh a0, 230(sp)3697; RV64ZVFHMIN-NEXT:    fle.h t0, fa5, fa03698; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t13699; RV64ZVFHMIN-NEXT:    fle.h t1, fa5, fa03700; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03701; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03702; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t23703; RV64ZVFHMIN-NEXT:    xori a3, a3, 13704; RV64ZVFHMIN-NEXT:    xori a4, a4, 13705; RV64ZVFHMIN-NEXT:    xori a5, a5, 13706; RV64ZVFHMIN-NEXT:    xori a6, a6, 13707; RV64ZVFHMIN-NEXT:    xori a0, a0, 13708; RV64ZVFHMIN-NEXT:    sb a0, 115(sp)3709; RV64ZVFHMIN-NEXT:    lh a0, 228(sp)3710; RV64ZVFHMIN-NEXT:    sb a6, 76(sp)3711; RV64ZVFHMIN-NEXT:    sb a5, 77(sp)3712; RV64ZVFHMIN-NEXT:    sb a4, 78(sp)3713; RV64ZVFHMIN-NEXT:    sb a3, 79(sp)3714; RV64ZVFHMIN-NEXT:    fle.h a3, fa5, fa03715; RV64ZVFHMIN-NEXT:    xori a4, a7, 13716; RV64ZVFHMIN-NEXT:    xori a5, t0, 13717; RV64ZVFHMIN-NEXT:    xori a6, t1, 13718; RV64ZVFHMIN-NEXT:    xori a3, a3, 13719; RV64ZVFHMIN-NEXT:    sb a3, 72(sp)3720; RV64ZVFHMIN-NEXT:    sb a6, 73(sp)3721; RV64ZVFHMIN-NEXT:    sb a5, 74(sp)3722; RV64ZVFHMIN-NEXT:    sb a4, 75(sp)3723; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a03724; RV64ZVFHMIN-NEXT:    fle.h a0, fa5, fa03725; RV64ZVFHMIN-NEXT:    xori a0, a0, 13726; RV64ZVFHMIN-NEXT:    sb a0, 114(sp)3727; RV64ZVFHMIN-NEXT:    addi a0, sp, 643728; RV64ZVFHMIN-NEXT:    vsetvli zero, a2, e8, m4, ta, ma3729; RV64ZVFHMIN-NEXT:    vle8.v v8, (a0)3730; RV64ZVFHMIN-NEXT:    vand.vi v8, v8, 13731; RV64ZVFHMIN-NEXT:    vmsne.vi v12, v8, 03732; RV64ZVFHMIN-NEXT:    vsm.v v12, (a1)3733; RV64ZVFHMIN-NEXT:    addi sp, s0, -3843734; RV64ZVFHMIN-NEXT:    .cfi_def_cfa sp, 3843735; RV64ZVFHMIN-NEXT:    ld ra, 376(sp) # 8-byte Folded Reload3736; RV64ZVFHMIN-NEXT:    ld s0, 368(sp) # 8-byte Folded Reload3737; RV64ZVFHMIN-NEXT:    .cfi_restore ra3738; RV64ZVFHMIN-NEXT:    .cfi_restore s03739; RV64ZVFHMIN-NEXT:    addi sp, sp, 3843740; RV64ZVFHMIN-NEXT:    .cfi_def_cfa_offset 03741; RV64ZVFHMIN-NEXT:    ret3742  %a = load <64 x half>, ptr %x3743  %b = insertelement <64 x half> poison, half %y, i32 03744  %c = shufflevector <64 x half> %b, <64 x half> poison, <64 x i32> zeroinitializer3745  %d = fcmp ugt <64 x half> %a, %c3746  store <64 x i1> %d, ptr %z3747  ret void3748}3749 3750define void @fcmp_ugt_vf_v64f16_nonans(ptr %x, half %y, ptr %z) {3751; ZVFH-LABEL: fcmp_ugt_vf_v64f16_nonans:3752; ZVFH:       # %bb.0:3753; ZVFH-NEXT:    li a2, 643754; ZVFH-NEXT:    vsetvli zero, a2, e16, m8, ta, ma3755; ZVFH-NEXT:    vle16.v v8, (a0)3756; ZVFH-NEXT:    vmfgt.vf v16, v8, fa03757; ZVFH-NEXT:    vsm.v v16, (a1)3758; ZVFH-NEXT:    ret3759;3760; RV32ZVFHMIN-LABEL: fcmp_ugt_vf_v64f16_nonans:3761; RV32ZVFHMIN:       # %bb.0:3762; RV32ZVFHMIN-NEXT:    addi sp, sp, -3843763; RV32ZVFHMIN-NEXT:    .cfi_def_cfa_offset 3843764; RV32ZVFHMIN-NEXT:    sw ra, 380(sp) # 4-byte Folded Spill3765; RV32ZVFHMIN-NEXT:    sw s0, 376(sp) # 4-byte Folded Spill3766; RV32ZVFHMIN-NEXT:    .cfi_offset ra, -43767; RV32ZVFHMIN-NEXT:    .cfi_offset s0, -83768; RV32ZVFHMIN-NEXT:    addi s0, sp, 3843769; RV32ZVFHMIN-NEXT:    .cfi_def_cfa s0, 03770; RV32ZVFHMIN-NEXT:    andi sp, sp, -1283771; RV32ZVFHMIN-NEXT:    li a2, 643772; RV32ZVFHMIN-NEXT:    vsetvli zero, a2, e16, m8, ta, ma3773; RV32ZVFHMIN-NEXT:    vle16.v v8, (a0)3774; RV32ZVFHMIN-NEXT:    addi a0, sp, 1283775; RV32ZVFHMIN-NEXT:    vse16.v v8, (a0)3776; RV32ZVFHMIN-NEXT:    lh a0, 192(sp)3777; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03778; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53779; RV32ZVFHMIN-NEXT:    sb a0, 96(sp)3780; RV32ZVFHMIN-NEXT:    lh a0, 190(sp)3781; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03782; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53783; RV32ZVFHMIN-NEXT:    sb a0, 95(sp)3784; RV32ZVFHMIN-NEXT:    lh a0, 188(sp)3785; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03786; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53787; RV32ZVFHMIN-NEXT:    sb a0, 94(sp)3788; RV32ZVFHMIN-NEXT:    lh a0, 186(sp)3789; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03790; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53791; RV32ZVFHMIN-NEXT:    sb a0, 93(sp)3792; RV32ZVFHMIN-NEXT:    lh a0, 184(sp)3793; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03794; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53795; RV32ZVFHMIN-NEXT:    sb a0, 92(sp)3796; RV32ZVFHMIN-NEXT:    lh a0, 182(sp)3797; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03798; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53799; RV32ZVFHMIN-NEXT:    sb a0, 91(sp)3800; RV32ZVFHMIN-NEXT:    lh a0, 180(sp)3801; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03802; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53803; RV32ZVFHMIN-NEXT:    sb a0, 90(sp)3804; RV32ZVFHMIN-NEXT:    lh a0, 178(sp)3805; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03806; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53807; RV32ZVFHMIN-NEXT:    sb a0, 89(sp)3808; RV32ZVFHMIN-NEXT:    lh a0, 176(sp)3809; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03810; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53811; RV32ZVFHMIN-NEXT:    sb a0, 88(sp)3812; RV32ZVFHMIN-NEXT:    lh a0, 174(sp)3813; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03814; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53815; RV32ZVFHMIN-NEXT:    sb a0, 87(sp)3816; RV32ZVFHMIN-NEXT:    lh a0, 172(sp)3817; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03818; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53819; RV32ZVFHMIN-NEXT:    sb a0, 86(sp)3820; RV32ZVFHMIN-NEXT:    lh a0, 170(sp)3821; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03822; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53823; RV32ZVFHMIN-NEXT:    sb a0, 85(sp)3824; RV32ZVFHMIN-NEXT:    lh a0, 168(sp)3825; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03826; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53827; RV32ZVFHMIN-NEXT:    sb a0, 84(sp)3828; RV32ZVFHMIN-NEXT:    lh a0, 166(sp)3829; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03830; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53831; RV32ZVFHMIN-NEXT:    sb a0, 83(sp)3832; RV32ZVFHMIN-NEXT:    lh a0, 164(sp)3833; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03834; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53835; RV32ZVFHMIN-NEXT:    sb a0, 82(sp)3836; RV32ZVFHMIN-NEXT:    lh a0, 162(sp)3837; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03838; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53839; RV32ZVFHMIN-NEXT:    sb a0, 81(sp)3840; RV32ZVFHMIN-NEXT:    lh a0, 160(sp)3841; RV32ZVFHMIN-NEXT:    vmv.x.s a3, v83842; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a33843; RV32ZVFHMIN-NEXT:    flt.h a3, fa0, fa53844; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03845; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53846; RV32ZVFHMIN-NEXT:    sb a3, 64(sp)3847; RV32ZVFHMIN-NEXT:    sb a0, 80(sp)3848; RV32ZVFHMIN-NEXT:    lh a0, 226(sp)3849; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03850; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53851; RV32ZVFHMIN-NEXT:    sb a0, 113(sp)3852; RV32ZVFHMIN-NEXT:    lh a0, 224(sp)3853; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03854; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53855; RV32ZVFHMIN-NEXT:    sb a0, 112(sp)3856; RV32ZVFHMIN-NEXT:    lh a0, 222(sp)3857; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03858; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53859; RV32ZVFHMIN-NEXT:    sb a0, 111(sp)3860; RV32ZVFHMIN-NEXT:    lh a0, 220(sp)3861; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03862; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53863; RV32ZVFHMIN-NEXT:    sb a0, 110(sp)3864; RV32ZVFHMIN-NEXT:    lh a0, 218(sp)3865; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03866; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53867; RV32ZVFHMIN-NEXT:    sb a0, 109(sp)3868; RV32ZVFHMIN-NEXT:    lh a0, 216(sp)3869; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03870; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53871; RV32ZVFHMIN-NEXT:    sb a0, 108(sp)3872; RV32ZVFHMIN-NEXT:    lh a0, 214(sp)3873; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03874; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53875; RV32ZVFHMIN-NEXT:    sb a0, 107(sp)3876; RV32ZVFHMIN-NEXT:    lh a0, 212(sp)3877; RV32ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m1, ta, ma3878; RV32ZVFHMIN-NEXT:    vslidedown.vi v10, v8, 73879; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03880; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53881; RV32ZVFHMIN-NEXT:    sb a0, 106(sp)3882; RV32ZVFHMIN-NEXT:    lh a0, 210(sp)3883; RV32ZVFHMIN-NEXT:    vslidedown.vi v11, v8, 63884; RV32ZVFHMIN-NEXT:    vslidedown.vi v12, v8, 53885; RV32ZVFHMIN-NEXT:    vslidedown.vi v13, v8, 43886; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03887; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53888; RV32ZVFHMIN-NEXT:    sb a0, 105(sp)3889; RV32ZVFHMIN-NEXT:    lh a0, 208(sp)3890; RV32ZVFHMIN-NEXT:    vslidedown.vi v14, v8, 33891; RV32ZVFHMIN-NEXT:    vslidedown.vi v15, v8, 23892; RV32ZVFHMIN-NEXT:    vslidedown.vi v16, v8, 13893; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03894; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53895; RV32ZVFHMIN-NEXT:    sb a0, 104(sp)3896; RV32ZVFHMIN-NEXT:    lh a0, 206(sp)3897; RV32ZVFHMIN-NEXT:    vmv.x.s a3, v103898; RV32ZVFHMIN-NEXT:    vmv.x.s a4, v113899; RV32ZVFHMIN-NEXT:    vmv.x.s a5, v123900; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03901; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53902; RV32ZVFHMIN-NEXT:    sb a0, 103(sp)3903; RV32ZVFHMIN-NEXT:    lh a0, 204(sp)3904; RV32ZVFHMIN-NEXT:    vmv.x.s a6, v133905; RV32ZVFHMIN-NEXT:    vmv.x.s a7, v143906; RV32ZVFHMIN-NEXT:    vmv.x.s t0, v153907; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03908; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53909; RV32ZVFHMIN-NEXT:    sb a0, 102(sp)3910; RV32ZVFHMIN-NEXT:    lh a0, 202(sp)3911; RV32ZVFHMIN-NEXT:    vmv.x.s t1, v163912; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a33913; RV32ZVFHMIN-NEXT:    flt.h a3, fa0, fa53914; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03915; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53916; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a43917; RV32ZVFHMIN-NEXT:    sb a0, 101(sp)3918; RV32ZVFHMIN-NEXT:    lh a0, 200(sp)3919; RV32ZVFHMIN-NEXT:    flt.h a4, fa0, fa53920; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a53921; RV32ZVFHMIN-NEXT:    flt.h a5, fa0, fa53922; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03923; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53924; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a63925; RV32ZVFHMIN-NEXT:    sb a0, 100(sp)3926; RV32ZVFHMIN-NEXT:    lh a0, 198(sp)3927; RV32ZVFHMIN-NEXT:    flt.h a6, fa0, fa53928; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a73929; RV32ZVFHMIN-NEXT:    flt.h a7, fa0, fa53930; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03931; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53932; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t03933; RV32ZVFHMIN-NEXT:    sb a0, 99(sp)3934; RV32ZVFHMIN-NEXT:    lh a0, 196(sp)3935; RV32ZVFHMIN-NEXT:    flt.h t0, fa0, fa53936; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t13937; RV32ZVFHMIN-NEXT:    flt.h t1, fa0, fa53938; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03939; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53940; RV32ZVFHMIN-NEXT:    sb a0, 98(sp)3941; RV32ZVFHMIN-NEXT:    lh a0, 194(sp)3942; RV32ZVFHMIN-NEXT:    sb t1, 65(sp)3943; RV32ZVFHMIN-NEXT:    sb t0, 66(sp)3944; RV32ZVFHMIN-NEXT:    sb a7, 67(sp)3945; RV32ZVFHMIN-NEXT:    sb a6, 68(sp)3946; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03947; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53948; RV32ZVFHMIN-NEXT:    sb a5, 69(sp)3949; RV32ZVFHMIN-NEXT:    sb a4, 70(sp)3950; RV32ZVFHMIN-NEXT:    sb a3, 71(sp)3951; RV32ZVFHMIN-NEXT:    sb a0, 97(sp)3952; RV32ZVFHMIN-NEXT:    lh a0, 254(sp)3953; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03954; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53955; RV32ZVFHMIN-NEXT:    sb a0, 127(sp)3956; RV32ZVFHMIN-NEXT:    lh a0, 252(sp)3957; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03958; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53959; RV32ZVFHMIN-NEXT:    sb a0, 126(sp)3960; RV32ZVFHMIN-NEXT:    lh a0, 250(sp)3961; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03962; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53963; RV32ZVFHMIN-NEXT:    sb a0, 125(sp)3964; RV32ZVFHMIN-NEXT:    lh a0, 248(sp)3965; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03966; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53967; RV32ZVFHMIN-NEXT:    sb a0, 124(sp)3968; RV32ZVFHMIN-NEXT:    lh a0, 246(sp)3969; RV32ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m2, ta, ma3970; RV32ZVFHMIN-NEXT:    vslidedown.vi v10, v8, 153971; RV32ZVFHMIN-NEXT:    vslidedown.vi v12, v8, 143972; RV32ZVFHMIN-NEXT:    vslidedown.vi v14, v8, 133973; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03974; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53975; RV32ZVFHMIN-NEXT:    sb a0, 123(sp)3976; RV32ZVFHMIN-NEXT:    lh a0, 244(sp)3977; RV32ZVFHMIN-NEXT:    vslidedown.vi v16, v8, 123978; RV32ZVFHMIN-NEXT:    vslidedown.vi v18, v8, 113979; RV32ZVFHMIN-NEXT:    vslidedown.vi v20, v8, 103980; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03981; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53982; RV32ZVFHMIN-NEXT:    sb a0, 122(sp)3983; RV32ZVFHMIN-NEXT:    lh a0, 242(sp)3984; RV32ZVFHMIN-NEXT:    vslidedown.vi v22, v8, 93985; RV32ZVFHMIN-NEXT:    vslidedown.vi v8, v8, 83986; RV32ZVFHMIN-NEXT:    vmv.x.s a3, v103987; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03988; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53989; RV32ZVFHMIN-NEXT:    sb a0, 121(sp)3990; RV32ZVFHMIN-NEXT:    lh a0, 240(sp)3991; RV32ZVFHMIN-NEXT:    vmv.x.s a4, v123992; RV32ZVFHMIN-NEXT:    vmv.x.s a5, v143993; RV32ZVFHMIN-NEXT:    vmv.x.s a6, v163994; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a03995; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa53996; RV32ZVFHMIN-NEXT:    sb a0, 120(sp)3997; RV32ZVFHMIN-NEXT:    lh a0, 238(sp)3998; RV32ZVFHMIN-NEXT:    vmv.x.s a7, v183999; RV32ZVFHMIN-NEXT:    vmv.x.s t0, v204000; RV32ZVFHMIN-NEXT:    vmv.x.s t1, v224001; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a04002; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa54003; RV32ZVFHMIN-NEXT:    sb a0, 119(sp)4004; RV32ZVFHMIN-NEXT:    lh a0, 236(sp)4005; RV32ZVFHMIN-NEXT:    vmv.x.s t2, v84006; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a34007; RV32ZVFHMIN-NEXT:    flt.h a3, fa0, fa54008; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a04009; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa54010; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a44011; RV32ZVFHMIN-NEXT:    sb a0, 118(sp)4012; RV32ZVFHMIN-NEXT:    lh a0, 234(sp)4013; RV32ZVFHMIN-NEXT:    flt.h a4, fa0, fa54014; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a54015; RV32ZVFHMIN-NEXT:    flt.h a5, fa0, fa54016; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a04017; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa54018; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a64019; RV32ZVFHMIN-NEXT:    sb a0, 117(sp)4020; RV32ZVFHMIN-NEXT:    lh a0, 232(sp)4021; RV32ZVFHMIN-NEXT:    flt.h a6, fa0, fa54022; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a74023; RV32ZVFHMIN-NEXT:    flt.h a7, fa0, fa54024; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a04025; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa54026; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t04027; RV32ZVFHMIN-NEXT:    sb a0, 116(sp)4028; RV32ZVFHMIN-NEXT:    lh a0, 230(sp)4029; RV32ZVFHMIN-NEXT:    flt.h t0, fa0, fa54030; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t14031; RV32ZVFHMIN-NEXT:    flt.h t1, fa0, fa54032; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a04033; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa54034; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t24035; RV32ZVFHMIN-NEXT:    sb a0, 115(sp)4036; RV32ZVFHMIN-NEXT:    lh a0, 228(sp)4037; RV32ZVFHMIN-NEXT:    sb a6, 76(sp)4038; RV32ZVFHMIN-NEXT:    sb a5, 77(sp)4039; RV32ZVFHMIN-NEXT:    sb a4, 78(sp)4040; RV32ZVFHMIN-NEXT:    sb a3, 79(sp)4041; RV32ZVFHMIN-NEXT:    flt.h a3, fa0, fa54042; RV32ZVFHMIN-NEXT:    sb a3, 72(sp)4043; RV32ZVFHMIN-NEXT:    sb t1, 73(sp)4044; RV32ZVFHMIN-NEXT:    sb t0, 74(sp)4045; RV32ZVFHMIN-NEXT:    sb a7, 75(sp)4046; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a04047; RV32ZVFHMIN-NEXT:    flt.h a0, fa0, fa54048; RV32ZVFHMIN-NEXT:    sb a0, 114(sp)4049; RV32ZVFHMIN-NEXT:    addi a0, sp, 644050; RV32ZVFHMIN-NEXT:    vsetvli zero, a2, e8, m4, ta, ma4051; RV32ZVFHMIN-NEXT:    vle8.v v8, (a0)4052; RV32ZVFHMIN-NEXT:    vand.vi v8, v8, 14053; RV32ZVFHMIN-NEXT:    vmsne.vi v12, v8, 04054; RV32ZVFHMIN-NEXT:    vsm.v v12, (a1)4055; RV32ZVFHMIN-NEXT:    addi sp, s0, -3844056; RV32ZVFHMIN-NEXT:    .cfi_def_cfa sp, 3844057; RV32ZVFHMIN-NEXT:    lw ra, 380(sp) # 4-byte Folded Reload4058; RV32ZVFHMIN-NEXT:    lw s0, 376(sp) # 4-byte Folded Reload4059; RV32ZVFHMIN-NEXT:    .cfi_restore ra4060; RV32ZVFHMIN-NEXT:    .cfi_restore s04061; RV32ZVFHMIN-NEXT:    addi sp, sp, 3844062; RV32ZVFHMIN-NEXT:    .cfi_def_cfa_offset 04063; RV32ZVFHMIN-NEXT:    ret4064;4065; RV64ZVFHMIN-LABEL: fcmp_ugt_vf_v64f16_nonans:4066; RV64ZVFHMIN:       # %bb.0:4067; RV64ZVFHMIN-NEXT:    addi sp, sp, -3844068; RV64ZVFHMIN-NEXT:    .cfi_def_cfa_offset 3844069; RV64ZVFHMIN-NEXT:    sd ra, 376(sp) # 8-byte Folded Spill4070; RV64ZVFHMIN-NEXT:    sd s0, 368(sp) # 8-byte Folded Spill4071; RV64ZVFHMIN-NEXT:    .cfi_offset ra, -84072; RV64ZVFHMIN-NEXT:    .cfi_offset s0, -164073; RV64ZVFHMIN-NEXT:    addi s0, sp, 3844074; RV64ZVFHMIN-NEXT:    .cfi_def_cfa s0, 04075; RV64ZVFHMIN-NEXT:    andi sp, sp, -1284076; RV64ZVFHMIN-NEXT:    li a2, 644077; RV64ZVFHMIN-NEXT:    vsetvli zero, a2, e16, m8, ta, ma4078; RV64ZVFHMIN-NEXT:    vle16.v v8, (a0)4079; RV64ZVFHMIN-NEXT:    addi a0, sp, 1284080; RV64ZVFHMIN-NEXT:    vse16.v v8, (a0)4081; RV64ZVFHMIN-NEXT:    lh a0, 192(sp)4082; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04083; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54084; RV64ZVFHMIN-NEXT:    sb a0, 96(sp)4085; RV64ZVFHMIN-NEXT:    lh a0, 190(sp)4086; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04087; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54088; RV64ZVFHMIN-NEXT:    sb a0, 95(sp)4089; RV64ZVFHMIN-NEXT:    lh a0, 188(sp)4090; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04091; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54092; RV64ZVFHMIN-NEXT:    sb a0, 94(sp)4093; RV64ZVFHMIN-NEXT:    lh a0, 186(sp)4094; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04095; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54096; RV64ZVFHMIN-NEXT:    sb a0, 93(sp)4097; RV64ZVFHMIN-NEXT:    lh a0, 184(sp)4098; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04099; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54100; RV64ZVFHMIN-NEXT:    sb a0, 92(sp)4101; RV64ZVFHMIN-NEXT:    lh a0, 182(sp)4102; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04103; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54104; RV64ZVFHMIN-NEXT:    sb a0, 91(sp)4105; RV64ZVFHMIN-NEXT:    lh a0, 180(sp)4106; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04107; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54108; RV64ZVFHMIN-NEXT:    sb a0, 90(sp)4109; RV64ZVFHMIN-NEXT:    lh a0, 178(sp)4110; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04111; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54112; RV64ZVFHMIN-NEXT:    sb a0, 89(sp)4113; RV64ZVFHMIN-NEXT:    lh a0, 176(sp)4114; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04115; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54116; RV64ZVFHMIN-NEXT:    sb a0, 88(sp)4117; RV64ZVFHMIN-NEXT:    lh a0, 174(sp)4118; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04119; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54120; RV64ZVFHMIN-NEXT:    sb a0, 87(sp)4121; RV64ZVFHMIN-NEXT:    lh a0, 172(sp)4122; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04123; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54124; RV64ZVFHMIN-NEXT:    sb a0, 86(sp)4125; RV64ZVFHMIN-NEXT:    lh a0, 170(sp)4126; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04127; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54128; RV64ZVFHMIN-NEXT:    sb a0, 85(sp)4129; RV64ZVFHMIN-NEXT:    lh a0, 168(sp)4130; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04131; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54132; RV64ZVFHMIN-NEXT:    sb a0, 84(sp)4133; RV64ZVFHMIN-NEXT:    lh a0, 166(sp)4134; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04135; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54136; RV64ZVFHMIN-NEXT:    sb a0, 83(sp)4137; RV64ZVFHMIN-NEXT:    lh a0, 164(sp)4138; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04139; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54140; RV64ZVFHMIN-NEXT:    sb a0, 82(sp)4141; RV64ZVFHMIN-NEXT:    lh a0, 162(sp)4142; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04143; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54144; RV64ZVFHMIN-NEXT:    sb a0, 81(sp)4145; RV64ZVFHMIN-NEXT:    lh a0, 160(sp)4146; RV64ZVFHMIN-NEXT:    vmv.x.s a3, v84147; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a34148; RV64ZVFHMIN-NEXT:    flt.h a3, fa0, fa54149; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04150; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54151; RV64ZVFHMIN-NEXT:    sb a3, 64(sp)4152; RV64ZVFHMIN-NEXT:    sb a0, 80(sp)4153; RV64ZVFHMIN-NEXT:    lh a0, 226(sp)4154; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04155; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54156; RV64ZVFHMIN-NEXT:    sb a0, 113(sp)4157; RV64ZVFHMIN-NEXT:    lh a0, 224(sp)4158; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04159; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54160; RV64ZVFHMIN-NEXT:    sb a0, 112(sp)4161; RV64ZVFHMIN-NEXT:    lh a0, 222(sp)4162; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04163; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54164; RV64ZVFHMIN-NEXT:    sb a0, 111(sp)4165; RV64ZVFHMIN-NEXT:    lh a0, 220(sp)4166; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04167; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54168; RV64ZVFHMIN-NEXT:    sb a0, 110(sp)4169; RV64ZVFHMIN-NEXT:    lh a0, 218(sp)4170; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04171; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54172; RV64ZVFHMIN-NEXT:    sb a0, 109(sp)4173; RV64ZVFHMIN-NEXT:    lh a0, 216(sp)4174; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04175; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54176; RV64ZVFHMIN-NEXT:    sb a0, 108(sp)4177; RV64ZVFHMIN-NEXT:    lh a0, 214(sp)4178; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04179; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54180; RV64ZVFHMIN-NEXT:    sb a0, 107(sp)4181; RV64ZVFHMIN-NEXT:    lh a0, 212(sp)4182; RV64ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m1, ta, ma4183; RV64ZVFHMIN-NEXT:    vslidedown.vi v10, v8, 74184; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04185; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54186; RV64ZVFHMIN-NEXT:    sb a0, 106(sp)4187; RV64ZVFHMIN-NEXT:    lh a0, 210(sp)4188; RV64ZVFHMIN-NEXT:    vslidedown.vi v11, v8, 64189; RV64ZVFHMIN-NEXT:    vslidedown.vi v12, v8, 54190; RV64ZVFHMIN-NEXT:    vslidedown.vi v13, v8, 44191; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04192; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54193; RV64ZVFHMIN-NEXT:    sb a0, 105(sp)4194; RV64ZVFHMIN-NEXT:    lh a0, 208(sp)4195; RV64ZVFHMIN-NEXT:    vslidedown.vi v14, v8, 34196; RV64ZVFHMIN-NEXT:    vslidedown.vi v15, v8, 24197; RV64ZVFHMIN-NEXT:    vslidedown.vi v16, v8, 14198; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04199; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54200; RV64ZVFHMIN-NEXT:    sb a0, 104(sp)4201; RV64ZVFHMIN-NEXT:    lh a0, 206(sp)4202; RV64ZVFHMIN-NEXT:    vmv.x.s a3, v104203; RV64ZVFHMIN-NEXT:    vmv.x.s a4, v114204; RV64ZVFHMIN-NEXT:    vmv.x.s a5, v124205; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04206; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54207; RV64ZVFHMIN-NEXT:    sb a0, 103(sp)4208; RV64ZVFHMIN-NEXT:    lh a0, 204(sp)4209; RV64ZVFHMIN-NEXT:    vmv.x.s a6, v134210; RV64ZVFHMIN-NEXT:    vmv.x.s a7, v144211; RV64ZVFHMIN-NEXT:    vmv.x.s t0, v154212; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04213; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54214; RV64ZVFHMIN-NEXT:    sb a0, 102(sp)4215; RV64ZVFHMIN-NEXT:    lh a0, 202(sp)4216; RV64ZVFHMIN-NEXT:    vmv.x.s t1, v164217; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a34218; RV64ZVFHMIN-NEXT:    flt.h a3, fa0, fa54219; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04220; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54221; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a44222; RV64ZVFHMIN-NEXT:    sb a0, 101(sp)4223; RV64ZVFHMIN-NEXT:    lh a0, 200(sp)4224; RV64ZVFHMIN-NEXT:    flt.h a4, fa0, fa54225; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a54226; RV64ZVFHMIN-NEXT:    flt.h a5, fa0, fa54227; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04228; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54229; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a64230; RV64ZVFHMIN-NEXT:    sb a0, 100(sp)4231; RV64ZVFHMIN-NEXT:    lh a0, 198(sp)4232; RV64ZVFHMIN-NEXT:    flt.h a6, fa0, fa54233; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a74234; RV64ZVFHMIN-NEXT:    flt.h a7, fa0, fa54235; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04236; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54237; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t04238; RV64ZVFHMIN-NEXT:    sb a0, 99(sp)4239; RV64ZVFHMIN-NEXT:    lh a0, 196(sp)4240; RV64ZVFHMIN-NEXT:    flt.h t0, fa0, fa54241; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t14242; RV64ZVFHMIN-NEXT:    flt.h t1, fa0, fa54243; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04244; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54245; RV64ZVFHMIN-NEXT:    sb a0, 98(sp)4246; RV64ZVFHMIN-NEXT:    lh a0, 194(sp)4247; RV64ZVFHMIN-NEXT:    sb t1, 65(sp)4248; RV64ZVFHMIN-NEXT:    sb t0, 66(sp)4249; RV64ZVFHMIN-NEXT:    sb a7, 67(sp)4250; RV64ZVFHMIN-NEXT:    sb a6, 68(sp)4251; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04252; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54253; RV64ZVFHMIN-NEXT:    sb a5, 69(sp)4254; RV64ZVFHMIN-NEXT:    sb a4, 70(sp)4255; RV64ZVFHMIN-NEXT:    sb a3, 71(sp)4256; RV64ZVFHMIN-NEXT:    sb a0, 97(sp)4257; RV64ZVFHMIN-NEXT:    lh a0, 254(sp)4258; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04259; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54260; RV64ZVFHMIN-NEXT:    sb a0, 127(sp)4261; RV64ZVFHMIN-NEXT:    lh a0, 252(sp)4262; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04263; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54264; RV64ZVFHMIN-NEXT:    sb a0, 126(sp)4265; RV64ZVFHMIN-NEXT:    lh a0, 250(sp)4266; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04267; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54268; RV64ZVFHMIN-NEXT:    sb a0, 125(sp)4269; RV64ZVFHMIN-NEXT:    lh a0, 248(sp)4270; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04271; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54272; RV64ZVFHMIN-NEXT:    sb a0, 124(sp)4273; RV64ZVFHMIN-NEXT:    lh a0, 246(sp)4274; RV64ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m2, ta, ma4275; RV64ZVFHMIN-NEXT:    vslidedown.vi v10, v8, 154276; RV64ZVFHMIN-NEXT:    vslidedown.vi v12, v8, 144277; RV64ZVFHMIN-NEXT:    vslidedown.vi v14, v8, 134278; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04279; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54280; RV64ZVFHMIN-NEXT:    sb a0, 123(sp)4281; RV64ZVFHMIN-NEXT:    lh a0, 244(sp)4282; RV64ZVFHMIN-NEXT:    vslidedown.vi v16, v8, 124283; RV64ZVFHMIN-NEXT:    vslidedown.vi v18, v8, 114284; RV64ZVFHMIN-NEXT:    vslidedown.vi v20, v8, 104285; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04286; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54287; RV64ZVFHMIN-NEXT:    sb a0, 122(sp)4288; RV64ZVFHMIN-NEXT:    lh a0, 242(sp)4289; RV64ZVFHMIN-NEXT:    vslidedown.vi v22, v8, 94290; RV64ZVFHMIN-NEXT:    vslidedown.vi v8, v8, 84291; RV64ZVFHMIN-NEXT:    vmv.x.s a3, v104292; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04293; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54294; RV64ZVFHMIN-NEXT:    sb a0, 121(sp)4295; RV64ZVFHMIN-NEXT:    lh a0, 240(sp)4296; RV64ZVFHMIN-NEXT:    vmv.x.s a4, v124297; RV64ZVFHMIN-NEXT:    vmv.x.s a5, v144298; RV64ZVFHMIN-NEXT:    vmv.x.s a6, v164299; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04300; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54301; RV64ZVFHMIN-NEXT:    sb a0, 120(sp)4302; RV64ZVFHMIN-NEXT:    lh a0, 238(sp)4303; RV64ZVFHMIN-NEXT:    vmv.x.s a7, v184304; RV64ZVFHMIN-NEXT:    vmv.x.s t0, v204305; RV64ZVFHMIN-NEXT:    vmv.x.s t1, v224306; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04307; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54308; RV64ZVFHMIN-NEXT:    sb a0, 119(sp)4309; RV64ZVFHMIN-NEXT:    lh a0, 236(sp)4310; RV64ZVFHMIN-NEXT:    vmv.x.s t2, v84311; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a34312; RV64ZVFHMIN-NEXT:    flt.h a3, fa0, fa54313; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04314; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54315; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a44316; RV64ZVFHMIN-NEXT:    sb a0, 118(sp)4317; RV64ZVFHMIN-NEXT:    lh a0, 234(sp)4318; RV64ZVFHMIN-NEXT:    flt.h a4, fa0, fa54319; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a54320; RV64ZVFHMIN-NEXT:    flt.h a5, fa0, fa54321; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04322; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54323; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a64324; RV64ZVFHMIN-NEXT:    sb a0, 117(sp)4325; RV64ZVFHMIN-NEXT:    lh a0, 232(sp)4326; RV64ZVFHMIN-NEXT:    flt.h a6, fa0, fa54327; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a74328; RV64ZVFHMIN-NEXT:    flt.h a7, fa0, fa54329; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04330; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54331; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t04332; RV64ZVFHMIN-NEXT:    sb a0, 116(sp)4333; RV64ZVFHMIN-NEXT:    lh a0, 230(sp)4334; RV64ZVFHMIN-NEXT:    flt.h t0, fa0, fa54335; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t14336; RV64ZVFHMIN-NEXT:    flt.h t1, fa0, fa54337; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04338; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54339; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t24340; RV64ZVFHMIN-NEXT:    sb a0, 115(sp)4341; RV64ZVFHMIN-NEXT:    lh a0, 228(sp)4342; RV64ZVFHMIN-NEXT:    sb a6, 76(sp)4343; RV64ZVFHMIN-NEXT:    sb a5, 77(sp)4344; RV64ZVFHMIN-NEXT:    sb a4, 78(sp)4345; RV64ZVFHMIN-NEXT:    sb a3, 79(sp)4346; RV64ZVFHMIN-NEXT:    flt.h a3, fa0, fa54347; RV64ZVFHMIN-NEXT:    sb a3, 72(sp)4348; RV64ZVFHMIN-NEXT:    sb t1, 73(sp)4349; RV64ZVFHMIN-NEXT:    sb t0, 74(sp)4350; RV64ZVFHMIN-NEXT:    sb a7, 75(sp)4351; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a04352; RV64ZVFHMIN-NEXT:    flt.h a0, fa0, fa54353; RV64ZVFHMIN-NEXT:    sb a0, 114(sp)4354; RV64ZVFHMIN-NEXT:    addi a0, sp, 644355; RV64ZVFHMIN-NEXT:    vsetvli zero, a2, e8, m4, ta, ma4356; RV64ZVFHMIN-NEXT:    vle8.v v8, (a0)4357; RV64ZVFHMIN-NEXT:    vand.vi v8, v8, 14358; RV64ZVFHMIN-NEXT:    vmsne.vi v12, v8, 04359; RV64ZVFHMIN-NEXT:    vsm.v v12, (a1)4360; RV64ZVFHMIN-NEXT:    addi sp, s0, -3844361; RV64ZVFHMIN-NEXT:    .cfi_def_cfa sp, 3844362; RV64ZVFHMIN-NEXT:    ld ra, 376(sp) # 8-byte Folded Reload4363; RV64ZVFHMIN-NEXT:    ld s0, 368(sp) # 8-byte Folded Reload4364; RV64ZVFHMIN-NEXT:    .cfi_restore ra4365; RV64ZVFHMIN-NEXT:    .cfi_restore s04366; RV64ZVFHMIN-NEXT:    addi sp, sp, 3844367; RV64ZVFHMIN-NEXT:    .cfi_def_cfa_offset 04368; RV64ZVFHMIN-NEXT:    ret4369  %a = load <64 x half>, ptr %x4370  %b = insertelement <64 x half> poison, half %y, i32 04371  %c = shufflevector <64 x half> %b, <64 x half> poison, <64 x i32> zeroinitializer4372  %d = fcmp nnan ugt <64 x half> %a, %c4373  store <64 x i1> %d, ptr %z4374  ret void4375}4376 4377define void @fcmp_ueq_vf_v32f32(ptr %x, float %y, ptr %z) {4378; CHECK-LABEL: fcmp_ueq_vf_v32f32:4379; CHECK:       # %bb.0:4380; CHECK-NEXT:    li a2, 324381; CHECK-NEXT:    vsetvli zero, a2, e32, m8, ta, ma4382; CHECK-NEXT:    vle32.v v8, (a0)4383; CHECK-NEXT:    vmflt.vf v16, v8, fa04384; CHECK-NEXT:    vmfgt.vf v17, v8, fa04385; CHECK-NEXT:    vmnor.mm v8, v17, v164386; CHECK-NEXT:    vsm.v v8, (a1)4387; CHECK-NEXT:    ret4388  %a = load <32 x float>, ptr %x4389  %b = insertelement <32 x float> poison, float %y, i32 04390  %c = shufflevector <32 x float> %b, <32 x float> poison, <32 x i32> zeroinitializer4391  %d = fcmp ueq <32 x float> %a, %c4392  store <32 x i1> %d, ptr %z4393  ret void4394}4395 4396define void @fcmp_ueq_vf_v32f32_nonans(ptr %x, float %y, ptr %z) {4397; CHECK-LABEL: fcmp_ueq_vf_v32f32_nonans:4398; CHECK:       # %bb.0:4399; CHECK-NEXT:    li a2, 324400; CHECK-NEXT:    vsetvli zero, a2, e32, m8, ta, ma4401; CHECK-NEXT:    vle32.v v8, (a0)4402; CHECK-NEXT:    vmfeq.vf v16, v8, fa04403; CHECK-NEXT:    vsm.v v16, (a1)4404; CHECK-NEXT:    ret4405  %a = load <32 x float>, ptr %x4406  %b = insertelement <32 x float> poison, float %y, i32 04407  %c = shufflevector <32 x float> %b, <32 x float> poison, <32 x i32> zeroinitializer4408  %d = fcmp nnan ueq <32 x float> %a, %c4409  store <32 x i1> %d, ptr %z4410  ret void4411}4412 4413define void @fcmp_one_vf_v8f64(ptr %x, double %y, ptr %z) {4414; CHECK-LABEL: fcmp_one_vf_v8f64:4415; CHECK:       # %bb.0:4416; CHECK-NEXT:    vsetivli zero, 16, e64, m8, ta, ma4417; CHECK-NEXT:    vle64.v v8, (a0)4418; CHECK-NEXT:    vmflt.vf v16, v8, fa04419; CHECK-NEXT:    vmfgt.vf v17, v8, fa04420; CHECK-NEXT:    vmor.mm v8, v17, v164421; CHECK-NEXT:    vsm.v v8, (a1)4422; CHECK-NEXT:    ret4423  %a = load <16 x double>, ptr %x4424  %b = insertelement <16 x double> poison, double %y, i32 04425  %c = shufflevector <16 x double> %b, <16 x double> poison, <16 x i32> zeroinitializer4426  %d = fcmp one <16 x double> %a, %c4427  store <16 x i1> %d, ptr %z4428  ret void4429}4430 4431define void @fcmp_one_vf_v8f64_nonans(ptr %x, double %y, ptr %z) {4432; CHECK-LABEL: fcmp_one_vf_v8f64_nonans:4433; CHECK:       # %bb.0:4434; CHECK-NEXT:    vsetivli zero, 16, e64, m8, ta, ma4435; CHECK-NEXT:    vle64.v v8, (a0)4436; CHECK-NEXT:    vmfne.vf v16, v8, fa04437; CHECK-NEXT:    vsm.v v16, (a1)4438; CHECK-NEXT:    ret4439  %a = load <16 x double>, ptr %x4440  %b = insertelement <16 x double> poison, double %y, i32 04441  %c = shufflevector <16 x double> %b, <16 x double> poison, <16 x i32> zeroinitializer4442  %d = fcmp nnan one <16 x double> %a, %c4443  store <16 x i1> %d, ptr %z4444  ret void4445}4446 4447define void @fcmp_ord_vf_v4f16(ptr %x, half %y, ptr %z) {4448; ZVFH-LABEL: fcmp_ord_vf_v4f16:4449; ZVFH:       # %bb.0:4450; ZVFH-NEXT:    vsetivli zero, 4, e16, mf2, ta, ma4451; ZVFH-NEXT:    vle16.v v8, (a0)4452; ZVFH-NEXT:    vfmv.v.f v9, fa04453; ZVFH-NEXT:    vmfeq.vf v9, v9, fa04454; ZVFH-NEXT:    vmfeq.vv v8, v8, v84455; ZVFH-NEXT:    vmand.mm v0, v8, v94456; ZVFH-NEXT:    vsetvli zero, zero, e8, mf4, ta, ma4457; ZVFH-NEXT:    vmv.v.i v8, 04458; ZVFH-NEXT:    vmerge.vim v8, v8, 1, v04459; ZVFH-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma4460; ZVFH-NEXT:    vmv.v.i v9, 04461; ZVFH-NEXT:    vsetivli zero, 4, e8, mf2, tu, ma4462; ZVFH-NEXT:    vmv.v.v v9, v84463; ZVFH-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma4464; ZVFH-NEXT:    vmsne.vi v8, v9, 04465; ZVFH-NEXT:    vsm.v v8, (a1)4466; ZVFH-NEXT:    ret4467;4468; ZVFHMIN-LABEL: fcmp_ord_vf_v4f16:4469; ZVFHMIN:       # %bb.0:4470; ZVFHMIN-NEXT:    vsetivli zero, 4, e16, mf2, ta, ma4471; ZVFHMIN-NEXT:    vle16.v v8, (a0)4472; ZVFHMIN-NEXT:    fmv.x.h a0, fa04473; ZVFHMIN-NEXT:    vmv.v.x v9, a04474; ZVFHMIN-NEXT:    vfwcvt.f.f.v v10, v94475; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m1, ta, ma4476; ZVFHMIN-NEXT:    vmfeq.vv v9, v10, v104477; ZVFHMIN-NEXT:    vsetvli zero, zero, e16, mf2, ta, ma4478; ZVFHMIN-NEXT:    vfwcvt.f.f.v v10, v84479; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m1, ta, ma4480; ZVFHMIN-NEXT:    vmfeq.vv v8, v10, v104481; ZVFHMIN-NEXT:    vmand.mm v0, v8, v94482; ZVFHMIN-NEXT:    vsetvli zero, zero, e8, mf4, ta, ma4483; ZVFHMIN-NEXT:    vmv.v.i v8, 04484; ZVFHMIN-NEXT:    vmerge.vim v8, v8, 1, v04485; ZVFHMIN-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma4486; ZVFHMIN-NEXT:    vmv.v.i v9, 04487; ZVFHMIN-NEXT:    vsetivli zero, 4, e8, mf2, tu, ma4488; ZVFHMIN-NEXT:    vmv.v.v v9, v84489; ZVFHMIN-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma4490; ZVFHMIN-NEXT:    vmsne.vi v8, v9, 04491; ZVFHMIN-NEXT:    vsm.v v8, (a1)4492; ZVFHMIN-NEXT:    ret4493  %a = load <4 x half>, ptr %x4494  %b = insertelement <4 x half> poison, half %y, i32 04495  %c = shufflevector <4 x half> %b, <4 x half> poison, <4 x i32> zeroinitializer4496  %d = fcmp ord <4 x half> %a, %c4497  store <4 x i1> %d, ptr %z4498  ret void4499}4500 4501define void @fcmp_uno_vf_v4f16(ptr %x, half %y, ptr %z) {4502; ZVFH-LABEL: fcmp_uno_vf_v4f16:4503; ZVFH:       # %bb.0:4504; ZVFH-NEXT:    vsetivli zero, 2, e16, mf4, ta, ma4505; ZVFH-NEXT:    vle16.v v8, (a0)4506; ZVFH-NEXT:    vfmv.v.f v9, fa04507; ZVFH-NEXT:    vmfne.vf v9, v9, fa04508; ZVFH-NEXT:    vmfne.vv v8, v8, v84509; ZVFH-NEXT:    vmor.mm v0, v8, v94510; ZVFH-NEXT:    vsetvli zero, zero, e8, mf8, ta, ma4511; ZVFH-NEXT:    vmv.v.i v8, 04512; ZVFH-NEXT:    vmerge.vim v8, v8, 1, v04513; ZVFH-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma4514; ZVFH-NEXT:    vmv.v.i v9, 04515; ZVFH-NEXT:    vsetivli zero, 2, e8, mf2, tu, ma4516; ZVFH-NEXT:    vmv.v.v v9, v84517; ZVFH-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma4518; ZVFH-NEXT:    vmsne.vi v8, v9, 04519; ZVFH-NEXT:    vsm.v v8, (a1)4520; ZVFH-NEXT:    ret4521;4522; ZVFHMIN-LABEL: fcmp_uno_vf_v4f16:4523; ZVFHMIN:       # %bb.0:4524; ZVFHMIN-NEXT:    vsetivli zero, 2, e16, mf4, ta, ma4525; ZVFHMIN-NEXT:    vle16.v v8, (a0)4526; ZVFHMIN-NEXT:    fmv.x.h a0, fa04527; ZVFHMIN-NEXT:    vmv.v.x v9, a04528; ZVFHMIN-NEXT:    vfwcvt.f.f.v v10, v94529; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, mf2, ta, ma4530; ZVFHMIN-NEXT:    vmfne.vv v9, v10, v104531; ZVFHMIN-NEXT:    vsetvli zero, zero, e16, mf4, ta, ma4532; ZVFHMIN-NEXT:    vfwcvt.f.f.v v10, v84533; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, mf2, ta, ma4534; ZVFHMIN-NEXT:    vmfne.vv v8, v10, v104535; ZVFHMIN-NEXT:    vmor.mm v0, v8, v94536; ZVFHMIN-NEXT:    vsetvli zero, zero, e8, mf8, ta, ma4537; ZVFHMIN-NEXT:    vmv.v.i v8, 04538; ZVFHMIN-NEXT:    vmerge.vim v8, v8, 1, v04539; ZVFHMIN-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma4540; ZVFHMIN-NEXT:    vmv.v.i v9, 04541; ZVFHMIN-NEXT:    vsetivli zero, 2, e8, mf2, tu, ma4542; ZVFHMIN-NEXT:    vmv.v.v v9, v84543; ZVFHMIN-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma4544; ZVFHMIN-NEXT:    vmsne.vi v8, v9, 04545; ZVFHMIN-NEXT:    vsm.v v8, (a1)4546; ZVFHMIN-NEXT:    ret4547  %a = load <2 x half>, ptr %x4548  %b = insertelement <2 x half> poison, half %y, i32 04549  %c = shufflevector <2 x half> %b, <2 x half> poison, <2 x i32> zeroinitializer4550  %d = fcmp uno <2 x half> %a, %c4551  store <2 x i1> %d, ptr %z4552  ret void4553}4554 4555define void @fcmp_oeq_fv_v8f16(ptr %x, half %y, ptr %z) {4556; ZVFH-LABEL: fcmp_oeq_fv_v8f16:4557; ZVFH:       # %bb.0:4558; ZVFH-NEXT:    vsetivli zero, 8, e16, m1, ta, ma4559; ZVFH-NEXT:    vle16.v v8, (a0)4560; ZVFH-NEXT:    vmfeq.vf v8, v8, fa04561; ZVFH-NEXT:    vsm.v v8, (a1)4562; ZVFH-NEXT:    ret4563;4564; ZVFHMIN-LABEL: fcmp_oeq_fv_v8f16:4565; ZVFHMIN:       # %bb.0:4566; ZVFHMIN-NEXT:    vsetivli zero, 8, e16, m1, ta, ma4567; ZVFHMIN-NEXT:    vle16.v v10, (a0)4568; ZVFHMIN-NEXT:    fmv.x.h a0, fa04569; ZVFHMIN-NEXT:    vmv.v.x v12, a04570; ZVFHMIN-NEXT:    vfwcvt.f.f.v v8, v104571; ZVFHMIN-NEXT:    vfwcvt.f.f.v v10, v124572; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m2, ta, ma4573; ZVFHMIN-NEXT:    vmfeq.vv v12, v10, v84574; ZVFHMIN-NEXT:    vsm.v v12, (a1)4575; ZVFHMIN-NEXT:    ret4576  %a = load <8 x half>, ptr %x4577  %b = insertelement <8 x half> poison, half %y, i32 04578  %c = shufflevector <8 x half> %b, <8 x half> poison, <8 x i32> zeroinitializer4579  %d = fcmp oeq <8 x half> %c, %a4580  store <8 x i1> %d, ptr %z4581  ret void4582}4583 4584define void @fcmp_oeq_fv_v8f16_nonans(ptr %x, half %y, ptr %z) {4585; ZVFH-LABEL: fcmp_oeq_fv_v8f16_nonans:4586; ZVFH:       # %bb.0:4587; ZVFH-NEXT:    vsetivli zero, 8, e16, m1, ta, ma4588; ZVFH-NEXT:    vle16.v v8, (a0)4589; ZVFH-NEXT:    vmfeq.vf v8, v8, fa04590; ZVFH-NEXT:    vsm.v v8, (a1)4591; ZVFH-NEXT:    ret4592;4593; ZVFHMIN-LABEL: fcmp_oeq_fv_v8f16_nonans:4594; ZVFHMIN:       # %bb.0:4595; ZVFHMIN-NEXT:    vsetivli zero, 8, e16, m1, ta, ma4596; ZVFHMIN-NEXT:    vle16.v v10, (a0)4597; ZVFHMIN-NEXT:    fmv.x.h a0, fa04598; ZVFHMIN-NEXT:    vmv.v.x v12, a04599; ZVFHMIN-NEXT:    vfwcvt.f.f.v v8, v104600; ZVFHMIN-NEXT:    vfwcvt.f.f.v v10, v124601; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m2, ta, ma4602; ZVFHMIN-NEXT:    vmfeq.vv v12, v10, v84603; ZVFHMIN-NEXT:    vsm.v v12, (a1)4604; ZVFHMIN-NEXT:    ret4605  %a = load <8 x half>, ptr %x4606  %b = insertelement <8 x half> poison, half %y, i32 04607  %c = shufflevector <8 x half> %b, <8 x half> poison, <8 x i32> zeroinitializer4608  %d = fcmp nnan oeq <8 x half> %c, %a4609  store <8 x i1> %d, ptr %z4610  ret void4611}4612 4613define void @fcmp_une_fv_v4f32(ptr %x, float %y, ptr %z) {4614; CHECK-LABEL: fcmp_une_fv_v4f32:4615; CHECK:       # %bb.0:4616; CHECK-NEXT:    vsetivli zero, 4, e32, m1, ta, ma4617; CHECK-NEXT:    vle32.v v8, (a0)4618; CHECK-NEXT:    vmfne.vf v0, v8, fa04619; CHECK-NEXT:    vsetvli zero, zero, e8, mf4, ta, ma4620; CHECK-NEXT:    vmv.v.i v8, 04621; CHECK-NEXT:    vmerge.vim v8, v8, 1, v04622; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma4623; CHECK-NEXT:    vmv.v.i v9, 04624; CHECK-NEXT:    vsetivli zero, 4, e8, mf2, tu, ma4625; CHECK-NEXT:    vmv.v.v v9, v84626; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma4627; CHECK-NEXT:    vmsne.vi v8, v9, 04628; CHECK-NEXT:    vsm.v v8, (a1)4629; CHECK-NEXT:    ret4630  %a = load <4 x float>, ptr %x4631  %b = insertelement <4 x float> poison, float %y, i32 04632  %c = shufflevector <4 x float> %b, <4 x float> poison, <4 x i32> zeroinitializer4633  %d = fcmp une <4 x float> %c, %a4634  store <4 x i1> %d, ptr %z4635  ret void4636}4637 4638define void @fcmp_une_fv_v4f32_nonans(ptr %x, float %y, ptr %z) {4639; CHECK-LABEL: fcmp_une_fv_v4f32_nonans:4640; CHECK:       # %bb.0:4641; CHECK-NEXT:    vsetivli zero, 4, e32, m1, ta, ma4642; CHECK-NEXT:    vle32.v v8, (a0)4643; CHECK-NEXT:    vmfne.vf v0, v8, fa04644; CHECK-NEXT:    vsetvli zero, zero, e8, mf4, ta, ma4645; CHECK-NEXT:    vmv.v.i v8, 04646; CHECK-NEXT:    vmerge.vim v8, v8, 1, v04647; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma4648; CHECK-NEXT:    vmv.v.i v9, 04649; CHECK-NEXT:    vsetivli zero, 4, e8, mf2, tu, ma4650; CHECK-NEXT:    vmv.v.v v9, v84651; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma4652; CHECK-NEXT:    vmsne.vi v8, v9, 04653; CHECK-NEXT:    vsm.v v8, (a1)4654; CHECK-NEXT:    ret4655  %a = load <4 x float>, ptr %x4656  %b = insertelement <4 x float> poison, float %y, i32 04657  %c = shufflevector <4 x float> %b, <4 x float> poison, <4 x i32> zeroinitializer4658  %d = fcmp nnan une <4 x float> %c, %a4659  store <4 x i1> %d, ptr %z4660  ret void4661}4662 4663define void @fcmp_ogt_fv_v2f64(ptr %x, double %y, ptr %z) {4664; CHECK-LABEL: fcmp_ogt_fv_v2f64:4665; CHECK:       # %bb.0:4666; CHECK-NEXT:    vsetivli zero, 2, e64, m1, ta, ma4667; CHECK-NEXT:    vle64.v v8, (a0)4668; CHECK-NEXT:    vmflt.vf v0, v8, fa04669; CHECK-NEXT:    vsetvli zero, zero, e8, mf8, ta, ma4670; CHECK-NEXT:    vmv.v.i v8, 04671; CHECK-NEXT:    vmerge.vim v8, v8, 1, v04672; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma4673; CHECK-NEXT:    vmv.v.i v9, 04674; CHECK-NEXT:    vsetivli zero, 2, e8, mf2, tu, ma4675; CHECK-NEXT:    vmv.v.v v9, v84676; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma4677; CHECK-NEXT:    vmsne.vi v8, v9, 04678; CHECK-NEXT:    vsm.v v8, (a1)4679; CHECK-NEXT:    ret4680  %a = load <2 x double>, ptr %x4681  %b = insertelement <2 x double> poison, double %y, i32 04682  %c = shufflevector <2 x double> %b, <2 x double> poison, <2 x i32> zeroinitializer4683  %d = fcmp ogt <2 x double> %c, %a4684  store <2 x i1> %d, ptr %z4685  ret void4686}4687 4688define void @fcmp_ogt_fv_v2f64_nonans(ptr %x, double %y, ptr %z) {4689; CHECK-LABEL: fcmp_ogt_fv_v2f64_nonans:4690; CHECK:       # %bb.0:4691; CHECK-NEXT:    vsetivli zero, 2, e64, m1, ta, ma4692; CHECK-NEXT:    vle64.v v8, (a0)4693; CHECK-NEXT:    vmflt.vf v0, v8, fa04694; CHECK-NEXT:    vsetvli zero, zero, e8, mf8, ta, ma4695; CHECK-NEXT:    vmv.v.i v8, 04696; CHECK-NEXT:    vmerge.vim v8, v8, 1, v04697; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma4698; CHECK-NEXT:    vmv.v.i v9, 04699; CHECK-NEXT:    vsetivli zero, 2, e8, mf2, tu, ma4700; CHECK-NEXT:    vmv.v.v v9, v84701; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma4702; CHECK-NEXT:    vmsne.vi v8, v9, 04703; CHECK-NEXT:    vsm.v v8, (a1)4704; CHECK-NEXT:    ret4705  %a = load <2 x double>, ptr %x4706  %b = insertelement <2 x double> poison, double %y, i32 04707  %c = shufflevector <2 x double> %b, <2 x double> poison, <2 x i32> zeroinitializer4708  %d = fcmp nnan ogt <2 x double> %c, %a4709  store <2 x i1> %d, ptr %z4710  ret void4711}4712 4713define void @fcmp_olt_fv_v16f16(ptr %x, half %y, ptr %z) {4714; ZVFH-LABEL: fcmp_olt_fv_v16f16:4715; ZVFH:       # %bb.0:4716; ZVFH-NEXT:    vsetivli zero, 16, e16, m2, ta, ma4717; ZVFH-NEXT:    vle16.v v8, (a0)4718; ZVFH-NEXT:    vmfgt.vf v10, v8, fa04719; ZVFH-NEXT:    vsm.v v10, (a1)4720; ZVFH-NEXT:    ret4721;4722; ZVFHMIN-LABEL: fcmp_olt_fv_v16f16:4723; ZVFHMIN:       # %bb.0:4724; ZVFHMIN-NEXT:    vsetivli zero, 16, e16, m2, ta, ma4725; ZVFHMIN-NEXT:    vle16.v v12, (a0)4726; ZVFHMIN-NEXT:    fmv.x.h a0, fa04727; ZVFHMIN-NEXT:    vmv.v.x v16, a04728; ZVFHMIN-NEXT:    vfwcvt.f.f.v v8, v124729; ZVFHMIN-NEXT:    vfwcvt.f.f.v v12, v164730; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m4, ta, ma4731; ZVFHMIN-NEXT:    vmflt.vv v16, v12, v84732; ZVFHMIN-NEXT:    vsm.v v16, (a1)4733; ZVFHMIN-NEXT:    ret4734  %a = load <16 x half>, ptr %x4735  %b = insertelement <16 x half> poison, half %y, i32 04736  %c = shufflevector <16 x half> %b, <16 x half> poison, <16 x i32> zeroinitializer4737  %d = fcmp olt <16 x half> %c, %a4738  store <16 x i1> %d, ptr %z4739  ret void4740}4741 4742define void @fcmp_olt_fv_v16f16_nonans(ptr %x, half %y, ptr %z) {4743; ZVFH-LABEL: fcmp_olt_fv_v16f16_nonans:4744; ZVFH:       # %bb.0:4745; ZVFH-NEXT:    vsetivli zero, 16, e16, m2, ta, ma4746; ZVFH-NEXT:    vle16.v v8, (a0)4747; ZVFH-NEXT:    vmfgt.vf v10, v8, fa04748; ZVFH-NEXT:    vsm.v v10, (a1)4749; ZVFH-NEXT:    ret4750;4751; ZVFHMIN-LABEL: fcmp_olt_fv_v16f16_nonans:4752; ZVFHMIN:       # %bb.0:4753; ZVFHMIN-NEXT:    vsetivli zero, 16, e16, m2, ta, ma4754; ZVFHMIN-NEXT:    vle16.v v12, (a0)4755; ZVFHMIN-NEXT:    fmv.x.h a0, fa04756; ZVFHMIN-NEXT:    vmv.v.x v16, a04757; ZVFHMIN-NEXT:    vfwcvt.f.f.v v8, v124758; ZVFHMIN-NEXT:    vfwcvt.f.f.v v12, v164759; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m4, ta, ma4760; ZVFHMIN-NEXT:    vmflt.vv v16, v12, v84761; ZVFHMIN-NEXT:    vsm.v v16, (a1)4762; ZVFHMIN-NEXT:    ret4763  %a = load <16 x half>, ptr %x4764  %b = insertelement <16 x half> poison, half %y, i32 04765  %c = shufflevector <16 x half> %b, <16 x half> poison, <16 x i32> zeroinitializer4766  %d = fcmp nnan olt <16 x half> %c, %a4767  store <16 x i1> %d, ptr %z4768  ret void4769}4770 4771define void @fcmp_oge_fv_v8f32(ptr %x, float %y, ptr %z) {4772; CHECK-LABEL: fcmp_oge_fv_v8f32:4773; CHECK:       # %bb.0:4774; CHECK-NEXT:    vsetivli zero, 8, e32, m2, ta, ma4775; CHECK-NEXT:    vle32.v v8, (a0)4776; CHECK-NEXT:    vmfle.vf v10, v8, fa04777; CHECK-NEXT:    vsm.v v10, (a1)4778; CHECK-NEXT:    ret4779  %a = load <8 x float>, ptr %x4780  %b = insertelement <8 x float> poison, float %y, i32 04781  %c = shufflevector <8 x float> %b, <8 x float> poison, <8 x i32> zeroinitializer4782  %d = fcmp oge <8 x float> %c, %a4783  store <8 x i1> %d, ptr %z4784  ret void4785}4786 4787define void @fcmp_oge_fv_v8f32_nonans(ptr %x, float %y, ptr %z) {4788; CHECK-LABEL: fcmp_oge_fv_v8f32_nonans:4789; CHECK:       # %bb.0:4790; CHECK-NEXT:    vsetivli zero, 8, e32, m2, ta, ma4791; CHECK-NEXT:    vle32.v v8, (a0)4792; CHECK-NEXT:    vmfle.vf v10, v8, fa04793; CHECK-NEXT:    vsm.v v10, (a1)4794; CHECK-NEXT:    ret4795  %a = load <8 x float>, ptr %x4796  %b = insertelement <8 x float> poison, float %y, i32 04797  %c = shufflevector <8 x float> %b, <8 x float> poison, <8 x i32> zeroinitializer4798  %d = fcmp nnan oge <8 x float> %c, %a4799  store <8 x i1> %d, ptr %z4800  ret void4801}4802 4803define void @fcmp_ole_fv_v4f64(ptr %x, double %y, ptr %z) {4804; CHECK-LABEL: fcmp_ole_fv_v4f64:4805; CHECK:       # %bb.0:4806; CHECK-NEXT:    vsetivli zero, 4, e64, m2, ta, ma4807; CHECK-NEXT:    vle64.v v8, (a0)4808; CHECK-NEXT:    vmfge.vf v0, v8, fa04809; CHECK-NEXT:    vsetvli zero, zero, e8, mf4, ta, ma4810; CHECK-NEXT:    vmv.v.i v8, 04811; CHECK-NEXT:    vmerge.vim v8, v8, 1, v04812; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma4813; CHECK-NEXT:    vmv.v.i v9, 04814; CHECK-NEXT:    vsetivli zero, 4, e8, mf2, tu, ma4815; CHECK-NEXT:    vmv.v.v v9, v84816; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma4817; CHECK-NEXT:    vmsne.vi v8, v9, 04818; CHECK-NEXT:    vsm.v v8, (a1)4819; CHECK-NEXT:    ret4820  %a = load <4 x double>, ptr %x4821  %b = insertelement <4 x double> poison, double %y, i32 04822  %c = shufflevector <4 x double> %b, <4 x double> poison, <4 x i32> zeroinitializer4823  %d = fcmp ole <4 x double> %c, %a4824  store <4 x i1> %d, ptr %z4825  ret void4826}4827 4828define void @fcmp_ole_fv_v4f64_nonans(ptr %x, double %y, ptr %z) {4829; CHECK-LABEL: fcmp_ole_fv_v4f64_nonans:4830; CHECK:       # %bb.0:4831; CHECK-NEXT:    vsetivli zero, 4, e64, m2, ta, ma4832; CHECK-NEXT:    vle64.v v8, (a0)4833; CHECK-NEXT:    vmfge.vf v0, v8, fa04834; CHECK-NEXT:    vsetvli zero, zero, e8, mf4, ta, ma4835; CHECK-NEXT:    vmv.v.i v8, 04836; CHECK-NEXT:    vmerge.vim v8, v8, 1, v04837; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma4838; CHECK-NEXT:    vmv.v.i v9, 04839; CHECK-NEXT:    vsetivli zero, 4, e8, mf2, tu, ma4840; CHECK-NEXT:    vmv.v.v v9, v84841; CHECK-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma4842; CHECK-NEXT:    vmsne.vi v8, v9, 04843; CHECK-NEXT:    vsm.v v8, (a1)4844; CHECK-NEXT:    ret4845  %a = load <4 x double>, ptr %x4846  %b = insertelement <4 x double> poison, double %y, i32 04847  %c = shufflevector <4 x double> %b, <4 x double> poison, <4 x i32> zeroinitializer4848  %d = fcmp nnan ole <4 x double> %c, %a4849  store <4 x i1> %d, ptr %z4850  ret void4851}4852 4853define void @fcmp_ule_fv_v32f16(ptr %x, half %y, ptr %z) {4854; ZVFH-LABEL: fcmp_ule_fv_v32f16:4855; ZVFH:       # %bb.0:4856; ZVFH-NEXT:    li a2, 324857; ZVFH-NEXT:    vsetvli zero, a2, e16, m4, ta, ma4858; ZVFH-NEXT:    vle16.v v8, (a0)4859; ZVFH-NEXT:    vmflt.vf v12, v8, fa04860; ZVFH-NEXT:    vmnot.m v8, v124861; ZVFH-NEXT:    vsm.v v8, (a1)4862; ZVFH-NEXT:    ret4863;4864; ZVFHMIN-LABEL: fcmp_ule_fv_v32f16:4865; ZVFHMIN:       # %bb.0:4866; ZVFHMIN-NEXT:    li a2, 324867; ZVFHMIN-NEXT:    vsetvli zero, a2, e16, m4, ta, ma4868; ZVFHMIN-NEXT:    vle16.v v16, (a0)4869; ZVFHMIN-NEXT:    fmv.x.h a0, fa04870; ZVFHMIN-NEXT:    vmv.v.x v24, a04871; ZVFHMIN-NEXT:    vfwcvt.f.f.v v8, v164872; ZVFHMIN-NEXT:    vfwcvt.f.f.v v16, v244873; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m8, ta, ma4874; ZVFHMIN-NEXT:    vmflt.vv v24, v8, v164875; ZVFHMIN-NEXT:    vmnot.m v8, v244876; ZVFHMIN-NEXT:    vsm.v v8, (a1)4877; ZVFHMIN-NEXT:    ret4878  %a = load <32 x half>, ptr %x4879  %b = insertelement <32 x half> poison, half %y, i32 04880  %c = shufflevector <32 x half> %b, <32 x half> poison, <32 x i32> zeroinitializer4881  %d = fcmp ule <32 x half> %c, %a4882  store <32 x i1> %d, ptr %z4883  ret void4884}4885 4886define void @fcmp_ule_fv_v32f16_nonans(ptr %x, half %y, ptr %z) {4887; ZVFH-LABEL: fcmp_ule_fv_v32f16_nonans:4888; ZVFH:       # %bb.0:4889; ZVFH-NEXT:    li a2, 324890; ZVFH-NEXT:    vsetvli zero, a2, e16, m4, ta, ma4891; ZVFH-NEXT:    vle16.v v8, (a0)4892; ZVFH-NEXT:    vmfge.vf v12, v8, fa04893; ZVFH-NEXT:    vsm.v v12, (a1)4894; ZVFH-NEXT:    ret4895;4896; ZVFHMIN-LABEL: fcmp_ule_fv_v32f16_nonans:4897; ZVFHMIN:       # %bb.0:4898; ZVFHMIN-NEXT:    li a2, 324899; ZVFHMIN-NEXT:    vsetvli zero, a2, e16, m4, ta, ma4900; ZVFHMIN-NEXT:    vle16.v v16, (a0)4901; ZVFHMIN-NEXT:    fmv.x.h a0, fa04902; ZVFHMIN-NEXT:    vmv.v.x v24, a04903; ZVFHMIN-NEXT:    vfwcvt.f.f.v v8, v164904; ZVFHMIN-NEXT:    vfwcvt.f.f.v v16, v244905; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m8, ta, ma4906; ZVFHMIN-NEXT:    vmfle.vv v24, v16, v84907; ZVFHMIN-NEXT:    vsm.v v24, (a1)4908; ZVFHMIN-NEXT:    ret4909  %a = load <32 x half>, ptr %x4910  %b = insertelement <32 x half> poison, half %y, i32 04911  %c = shufflevector <32 x half> %b, <32 x half> poison, <32 x i32> zeroinitializer4912  %d = fcmp nnan ule <32 x half> %c, %a4913  store <32 x i1> %d, ptr %z4914  ret void4915}4916 4917define void @fcmp_uge_fv_v16f32(ptr %x, float %y, ptr %z) {4918; CHECK-LABEL: fcmp_uge_fv_v16f32:4919; CHECK:       # %bb.0:4920; CHECK-NEXT:    vsetivli zero, 16, e32, m4, ta, ma4921; CHECK-NEXT:    vle32.v v8, (a0)4922; CHECK-NEXT:    vmfgt.vf v12, v8, fa04923; CHECK-NEXT:    vmnot.m v8, v124924; CHECK-NEXT:    vsm.v v8, (a1)4925; CHECK-NEXT:    ret4926  %a = load <16 x float>, ptr %x4927  %b = insertelement <16 x float> poison, float %y, i32 04928  %c = shufflevector <16 x float> %b, <16 x float> poison, <16 x i32> zeroinitializer4929  %d = fcmp uge <16 x float> %c, %a4930  store <16 x i1> %d, ptr %z4931  ret void4932}4933 4934define void @fcmp_uge_fv_v16f32_nonans(ptr %x, float %y, ptr %z) {4935; CHECK-LABEL: fcmp_uge_fv_v16f32_nonans:4936; CHECK:       # %bb.0:4937; CHECK-NEXT:    vsetivli zero, 16, e32, m4, ta, ma4938; CHECK-NEXT:    vle32.v v8, (a0)4939; CHECK-NEXT:    vmfle.vf v12, v8, fa04940; CHECK-NEXT:    vsm.v v12, (a1)4941; CHECK-NEXT:    ret4942  %a = load <16 x float>, ptr %x4943  %b = insertelement <16 x float> poison, float %y, i32 04944  %c = shufflevector <16 x float> %b, <16 x float> poison, <16 x i32> zeroinitializer4945  %d = fcmp nnan uge <16 x float> %c, %a4946  store <16 x i1> %d, ptr %z4947  ret void4948}4949 4950define void @fcmp_ult_fv_v8f64(ptr %x, double %y, ptr %z) {4951; CHECK-LABEL: fcmp_ult_fv_v8f64:4952; CHECK:       # %bb.0:4953; CHECK-NEXT:    vsetivli zero, 8, e64, m4, ta, ma4954; CHECK-NEXT:    vle64.v v8, (a0)4955; CHECK-NEXT:    vmfle.vf v12, v8, fa04956; CHECK-NEXT:    vmnot.m v8, v124957; CHECK-NEXT:    vsm.v v8, (a1)4958; CHECK-NEXT:    ret4959  %a = load <8 x double>, ptr %x4960  %b = insertelement <8 x double> poison, double %y, i32 04961  %c = shufflevector <8 x double> %b, <8 x double> poison, <8 x i32> zeroinitializer4962  %d = fcmp ult <8 x double> %c, %a4963  store <8 x i1> %d, ptr %z4964  ret void4965}4966 4967define void @fcmp_ult_fv_v8f64_nonans(ptr %x, double %y, ptr %z) {4968; CHECK-LABEL: fcmp_ult_fv_v8f64_nonans:4969; CHECK:       # %bb.0:4970; CHECK-NEXT:    vsetivli zero, 8, e64, m4, ta, ma4971; CHECK-NEXT:    vle64.v v8, (a0)4972; CHECK-NEXT:    vmfgt.vf v12, v8, fa04973; CHECK-NEXT:    vsm.v v12, (a1)4974; CHECK-NEXT:    ret4975  %a = load <8 x double>, ptr %x4976  %b = insertelement <8 x double> poison, double %y, i32 04977  %c = shufflevector <8 x double> %b, <8 x double> poison, <8 x i32> zeroinitializer4978  %d = fcmp nnan ult <8 x double> %c, %a4979  store <8 x i1> %d, ptr %z4980  ret void4981}4982 4983define void @fcmp_ugt_fv_v64f16(ptr %x, half %y, ptr %z) {4984; ZVFH-LABEL: fcmp_ugt_fv_v64f16:4985; ZVFH:       # %bb.0:4986; ZVFH-NEXT:    li a2, 644987; ZVFH-NEXT:    vsetvli zero, a2, e16, m8, ta, ma4988; ZVFH-NEXT:    vle16.v v8, (a0)4989; ZVFH-NEXT:    vmfge.vf v16, v8, fa04990; ZVFH-NEXT:    vmnot.m v8, v164991; ZVFH-NEXT:    vsm.v v8, (a1)4992; ZVFH-NEXT:    ret4993;4994; RV32ZVFHMIN-LABEL: fcmp_ugt_fv_v64f16:4995; RV32ZVFHMIN:       # %bb.0:4996; RV32ZVFHMIN-NEXT:    addi sp, sp, -3844997; RV32ZVFHMIN-NEXT:    .cfi_def_cfa_offset 3844998; RV32ZVFHMIN-NEXT:    sw ra, 380(sp) # 4-byte Folded Spill4999; RV32ZVFHMIN-NEXT:    sw s0, 376(sp) # 4-byte Folded Spill5000; RV32ZVFHMIN-NEXT:    .cfi_offset ra, -45001; RV32ZVFHMIN-NEXT:    .cfi_offset s0, -85002; RV32ZVFHMIN-NEXT:    addi s0, sp, 3845003; RV32ZVFHMIN-NEXT:    .cfi_def_cfa s0, 05004; RV32ZVFHMIN-NEXT:    andi sp, sp, -1285005; RV32ZVFHMIN-NEXT:    li a2, 645006; RV32ZVFHMIN-NEXT:    vsetvli zero, a2, e16, m8, ta, ma5007; RV32ZVFHMIN-NEXT:    vle16.v v8, (a0)5008; RV32ZVFHMIN-NEXT:    addi a0, sp, 1285009; RV32ZVFHMIN-NEXT:    vse16.v v8, (a0)5010; RV32ZVFHMIN-NEXT:    lh a0, 192(sp)5011; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05012; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55013; RV32ZVFHMIN-NEXT:    xori a0, a0, 15014; RV32ZVFHMIN-NEXT:    sb a0, 96(sp)5015; RV32ZVFHMIN-NEXT:    lh a0, 190(sp)5016; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05017; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55018; RV32ZVFHMIN-NEXT:    xori a0, a0, 15019; RV32ZVFHMIN-NEXT:    sb a0, 95(sp)5020; RV32ZVFHMIN-NEXT:    lh a0, 188(sp)5021; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05022; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55023; RV32ZVFHMIN-NEXT:    xori a0, a0, 15024; RV32ZVFHMIN-NEXT:    sb a0, 94(sp)5025; RV32ZVFHMIN-NEXT:    lh a0, 186(sp)5026; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05027; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55028; RV32ZVFHMIN-NEXT:    xori a0, a0, 15029; RV32ZVFHMIN-NEXT:    sb a0, 93(sp)5030; RV32ZVFHMIN-NEXT:    lh a0, 184(sp)5031; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05032; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55033; RV32ZVFHMIN-NEXT:    xori a0, a0, 15034; RV32ZVFHMIN-NEXT:    sb a0, 92(sp)5035; RV32ZVFHMIN-NEXT:    lh a0, 182(sp)5036; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05037; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55038; RV32ZVFHMIN-NEXT:    xori a0, a0, 15039; RV32ZVFHMIN-NEXT:    sb a0, 91(sp)5040; RV32ZVFHMIN-NEXT:    lh a0, 180(sp)5041; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05042; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55043; RV32ZVFHMIN-NEXT:    xori a0, a0, 15044; RV32ZVFHMIN-NEXT:    sb a0, 90(sp)5045; RV32ZVFHMIN-NEXT:    lh a0, 178(sp)5046; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05047; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55048; RV32ZVFHMIN-NEXT:    xori a0, a0, 15049; RV32ZVFHMIN-NEXT:    sb a0, 89(sp)5050; RV32ZVFHMIN-NEXT:    lh a0, 176(sp)5051; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05052; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55053; RV32ZVFHMIN-NEXT:    xori a0, a0, 15054; RV32ZVFHMIN-NEXT:    sb a0, 88(sp)5055; RV32ZVFHMIN-NEXT:    lh a0, 174(sp)5056; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05057; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55058; RV32ZVFHMIN-NEXT:    xori a0, a0, 15059; RV32ZVFHMIN-NEXT:    sb a0, 87(sp)5060; RV32ZVFHMIN-NEXT:    lh a0, 172(sp)5061; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05062; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55063; RV32ZVFHMIN-NEXT:    xori a0, a0, 15064; RV32ZVFHMIN-NEXT:    sb a0, 86(sp)5065; RV32ZVFHMIN-NEXT:    lh a0, 170(sp)5066; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05067; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55068; RV32ZVFHMIN-NEXT:    xori a0, a0, 15069; RV32ZVFHMIN-NEXT:    sb a0, 85(sp)5070; RV32ZVFHMIN-NEXT:    lh a0, 168(sp)5071; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05072; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55073; RV32ZVFHMIN-NEXT:    xori a0, a0, 15074; RV32ZVFHMIN-NEXT:    sb a0, 84(sp)5075; RV32ZVFHMIN-NEXT:    lh a0, 166(sp)5076; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05077; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55078; RV32ZVFHMIN-NEXT:    xori a0, a0, 15079; RV32ZVFHMIN-NEXT:    sb a0, 83(sp)5080; RV32ZVFHMIN-NEXT:    lh a0, 164(sp)5081; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05082; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55083; RV32ZVFHMIN-NEXT:    xori a0, a0, 15084; RV32ZVFHMIN-NEXT:    sb a0, 82(sp)5085; RV32ZVFHMIN-NEXT:    lh a0, 162(sp)5086; RV32ZVFHMIN-NEXT:    vmv.x.s a3, v85087; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05088; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55089; RV32ZVFHMIN-NEXT:    xori a0, a0, 15090; RV32ZVFHMIN-NEXT:    sb a0, 81(sp)5091; RV32ZVFHMIN-NEXT:    lh a0, 160(sp)5092; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a35093; RV32ZVFHMIN-NEXT:    fle.h a3, fa0, fa55094; RV32ZVFHMIN-NEXT:    xori a3, a3, 15095; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05096; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55097; RV32ZVFHMIN-NEXT:    xori a0, a0, 15098; RV32ZVFHMIN-NEXT:    sb a3, 64(sp)5099; RV32ZVFHMIN-NEXT:    sb a0, 80(sp)5100; RV32ZVFHMIN-NEXT:    lh a0, 226(sp)5101; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05102; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55103; RV32ZVFHMIN-NEXT:    xori a0, a0, 15104; RV32ZVFHMIN-NEXT:    sb a0, 113(sp)5105; RV32ZVFHMIN-NEXT:    lh a0, 224(sp)5106; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05107; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55108; RV32ZVFHMIN-NEXT:    xori a0, a0, 15109; RV32ZVFHMIN-NEXT:    sb a0, 112(sp)5110; RV32ZVFHMIN-NEXT:    lh a0, 222(sp)5111; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05112; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55113; RV32ZVFHMIN-NEXT:    xori a0, a0, 15114; RV32ZVFHMIN-NEXT:    sb a0, 111(sp)5115; RV32ZVFHMIN-NEXT:    lh a0, 220(sp)5116; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05117; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55118; RV32ZVFHMIN-NEXT:    xori a0, a0, 15119; RV32ZVFHMIN-NEXT:    sb a0, 110(sp)5120; RV32ZVFHMIN-NEXT:    lh a0, 218(sp)5121; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05122; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55123; RV32ZVFHMIN-NEXT:    xori a0, a0, 15124; RV32ZVFHMIN-NEXT:    sb a0, 109(sp)5125; RV32ZVFHMIN-NEXT:    lh a0, 216(sp)5126; RV32ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m1, ta, ma5127; RV32ZVFHMIN-NEXT:    vslidedown.vi v10, v8, 75128; RV32ZVFHMIN-NEXT:    vslidedown.vi v11, v8, 65129; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05130; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55131; RV32ZVFHMIN-NEXT:    xori a0, a0, 15132; RV32ZVFHMIN-NEXT:    sb a0, 108(sp)5133; RV32ZVFHMIN-NEXT:    lh a0, 214(sp)5134; RV32ZVFHMIN-NEXT:    vslidedown.vi v12, v8, 55135; RV32ZVFHMIN-NEXT:    vslidedown.vi v13, v8, 45136; RV32ZVFHMIN-NEXT:    vslidedown.vi v14, v8, 35137; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05138; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55139; RV32ZVFHMIN-NEXT:    xori a0, a0, 15140; RV32ZVFHMIN-NEXT:    sb a0, 107(sp)5141; RV32ZVFHMIN-NEXT:    lh a0, 212(sp)5142; RV32ZVFHMIN-NEXT:    vslidedown.vi v15, v8, 25143; RV32ZVFHMIN-NEXT:    vslidedown.vi v16, v8, 15144; RV32ZVFHMIN-NEXT:    vmv.x.s a3, v105145; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05146; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55147; RV32ZVFHMIN-NEXT:    xori a0, a0, 15148; RV32ZVFHMIN-NEXT:    sb a0, 106(sp)5149; RV32ZVFHMIN-NEXT:    lh a0, 210(sp)5150; RV32ZVFHMIN-NEXT:    vmv.x.s a4, v115151; RV32ZVFHMIN-NEXT:    vmv.x.s a5, v125152; RV32ZVFHMIN-NEXT:    vmv.x.s a6, v135153; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05154; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55155; RV32ZVFHMIN-NEXT:    xori a0, a0, 15156; RV32ZVFHMIN-NEXT:    sb a0, 105(sp)5157; RV32ZVFHMIN-NEXT:    lh a0, 208(sp)5158; RV32ZVFHMIN-NEXT:    vmv.x.s a7, v145159; RV32ZVFHMIN-NEXT:    vmv.x.s t0, v155160; RV32ZVFHMIN-NEXT:    vmv.x.s t1, v165161; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05162; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55163; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a35164; RV32ZVFHMIN-NEXT:    xori a0, a0, 15165; RV32ZVFHMIN-NEXT:    sb a0, 104(sp)5166; RV32ZVFHMIN-NEXT:    lh a0, 206(sp)5167; RV32ZVFHMIN-NEXT:    fle.h a3, fa0, fa55168; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a45169; RV32ZVFHMIN-NEXT:    fle.h a4, fa0, fa55170; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05171; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55172; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a55173; RV32ZVFHMIN-NEXT:    xori a0, a0, 15174; RV32ZVFHMIN-NEXT:    sb a0, 103(sp)5175; RV32ZVFHMIN-NEXT:    lh a0, 204(sp)5176; RV32ZVFHMIN-NEXT:    fle.h a5, fa0, fa55177; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a65178; RV32ZVFHMIN-NEXT:    fle.h a6, fa0, fa55179; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05180; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55181; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a75182; RV32ZVFHMIN-NEXT:    xori a0, a0, 15183; RV32ZVFHMIN-NEXT:    sb a0, 102(sp)5184; RV32ZVFHMIN-NEXT:    lh a0, 202(sp)5185; RV32ZVFHMIN-NEXT:    fle.h a7, fa0, fa55186; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t05187; RV32ZVFHMIN-NEXT:    fle.h t0, fa0, fa55188; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05189; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55190; RV32ZVFHMIN-NEXT:    xori a0, a0, 15191; RV32ZVFHMIN-NEXT:    sb a0, 101(sp)5192; RV32ZVFHMIN-NEXT:    lh a0, 200(sp)5193; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t15194; RV32ZVFHMIN-NEXT:    fle.h t1, fa0, fa55195; RV32ZVFHMIN-NEXT:    xori a3, a3, 15196; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05197; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55198; RV32ZVFHMIN-NEXT:    xori a0, a0, 15199; RV32ZVFHMIN-NEXT:    sb a0, 100(sp)5200; RV32ZVFHMIN-NEXT:    lh a0, 198(sp)5201; RV32ZVFHMIN-NEXT:    xori a4, a4, 15202; RV32ZVFHMIN-NEXT:    xori a5, a5, 15203; RV32ZVFHMIN-NEXT:    xori a6, a6, 15204; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05205; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55206; RV32ZVFHMIN-NEXT:    xori a0, a0, 15207; RV32ZVFHMIN-NEXT:    sb a0, 99(sp)5208; RV32ZVFHMIN-NEXT:    lh a0, 196(sp)5209; RV32ZVFHMIN-NEXT:    xori a7, a7, 15210; RV32ZVFHMIN-NEXT:    xori t0, t0, 15211; RV32ZVFHMIN-NEXT:    xori t1, t1, 15212; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05213; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55214; RV32ZVFHMIN-NEXT:    xori a0, a0, 15215; RV32ZVFHMIN-NEXT:    sb a0, 98(sp)5216; RV32ZVFHMIN-NEXT:    lh a0, 194(sp)5217; RV32ZVFHMIN-NEXT:    sb t1, 65(sp)5218; RV32ZVFHMIN-NEXT:    sb t0, 66(sp)5219; RV32ZVFHMIN-NEXT:    sb a7, 67(sp)5220; RV32ZVFHMIN-NEXT:    sb a6, 68(sp)5221; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05222; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55223; RV32ZVFHMIN-NEXT:    xori a0, a0, 15224; RV32ZVFHMIN-NEXT:    sb a5, 69(sp)5225; RV32ZVFHMIN-NEXT:    sb a4, 70(sp)5226; RV32ZVFHMIN-NEXT:    sb a3, 71(sp)5227; RV32ZVFHMIN-NEXT:    sb a0, 97(sp)5228; RV32ZVFHMIN-NEXT:    lh a0, 254(sp)5229; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05230; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55231; RV32ZVFHMIN-NEXT:    xori a0, a0, 15232; RV32ZVFHMIN-NEXT:    sb a0, 127(sp)5233; RV32ZVFHMIN-NEXT:    lh a0, 252(sp)5234; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05235; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55236; RV32ZVFHMIN-NEXT:    xori a0, a0, 15237; RV32ZVFHMIN-NEXT:    sb a0, 126(sp)5238; RV32ZVFHMIN-NEXT:    lh a0, 250(sp)5239; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05240; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55241; RV32ZVFHMIN-NEXT:    xori a0, a0, 15242; RV32ZVFHMIN-NEXT:    sb a0, 125(sp)5243; RV32ZVFHMIN-NEXT:    lh a0, 248(sp)5244; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05245; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55246; RV32ZVFHMIN-NEXT:    xori a0, a0, 15247; RV32ZVFHMIN-NEXT:    sb a0, 124(sp)5248; RV32ZVFHMIN-NEXT:    lh a0, 246(sp)5249; RV32ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m2, ta, ma5250; RV32ZVFHMIN-NEXT:    vslidedown.vi v10, v8, 155251; RV32ZVFHMIN-NEXT:    vslidedown.vi v12, v8, 145252; RV32ZVFHMIN-NEXT:    vslidedown.vi v14, v8, 135253; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05254; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55255; RV32ZVFHMIN-NEXT:    xori a0, a0, 15256; RV32ZVFHMIN-NEXT:    sb a0, 123(sp)5257; RV32ZVFHMIN-NEXT:    lh a0, 244(sp)5258; RV32ZVFHMIN-NEXT:    vslidedown.vi v16, v8, 125259; RV32ZVFHMIN-NEXT:    vslidedown.vi v18, v8, 115260; RV32ZVFHMIN-NEXT:    vslidedown.vi v20, v8, 105261; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05262; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55263; RV32ZVFHMIN-NEXT:    xori a0, a0, 15264; RV32ZVFHMIN-NEXT:    sb a0, 122(sp)5265; RV32ZVFHMIN-NEXT:    lh a0, 242(sp)5266; RV32ZVFHMIN-NEXT:    vslidedown.vi v22, v8, 95267; RV32ZVFHMIN-NEXT:    vslidedown.vi v8, v8, 85268; RV32ZVFHMIN-NEXT:    vmv.x.s a3, v105269; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05270; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55271; RV32ZVFHMIN-NEXT:    xori a0, a0, 15272; RV32ZVFHMIN-NEXT:    sb a0, 121(sp)5273; RV32ZVFHMIN-NEXT:    lh a0, 240(sp)5274; RV32ZVFHMIN-NEXT:    vmv.x.s a4, v125275; RV32ZVFHMIN-NEXT:    vmv.x.s a5, v145276; RV32ZVFHMIN-NEXT:    vmv.x.s a6, v165277; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05278; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55279; RV32ZVFHMIN-NEXT:    xori a0, a0, 15280; RV32ZVFHMIN-NEXT:    sb a0, 120(sp)5281; RV32ZVFHMIN-NEXT:    lh a0, 238(sp)5282; RV32ZVFHMIN-NEXT:    vmv.x.s a7, v185283; RV32ZVFHMIN-NEXT:    vmv.x.s t0, v205284; RV32ZVFHMIN-NEXT:    vmv.x.s t1, v225285; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05286; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55287; RV32ZVFHMIN-NEXT:    xori a0, a0, 15288; RV32ZVFHMIN-NEXT:    sb a0, 119(sp)5289; RV32ZVFHMIN-NEXT:    lh a0, 236(sp)5290; RV32ZVFHMIN-NEXT:    vmv.x.s t2, v85291; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a35292; RV32ZVFHMIN-NEXT:    fle.h a3, fa0, fa55293; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05294; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55295; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a45296; RV32ZVFHMIN-NEXT:    xori a0, a0, 15297; RV32ZVFHMIN-NEXT:    sb a0, 118(sp)5298; RV32ZVFHMIN-NEXT:    lh a0, 234(sp)5299; RV32ZVFHMIN-NEXT:    fle.h a4, fa0, fa55300; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a55301; RV32ZVFHMIN-NEXT:    fle.h a5, fa0, fa55302; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05303; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55304; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a65305; RV32ZVFHMIN-NEXT:    xori a0, a0, 15306; RV32ZVFHMIN-NEXT:    sb a0, 117(sp)5307; RV32ZVFHMIN-NEXT:    lh a0, 232(sp)5308; RV32ZVFHMIN-NEXT:    fle.h a6, fa0, fa55309; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a75310; RV32ZVFHMIN-NEXT:    fle.h a7, fa0, fa55311; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05312; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55313; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t05314; RV32ZVFHMIN-NEXT:    xori a0, a0, 15315; RV32ZVFHMIN-NEXT:    sb a0, 116(sp)5316; RV32ZVFHMIN-NEXT:    lh a0, 230(sp)5317; RV32ZVFHMIN-NEXT:    fle.h t0, fa0, fa55318; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t15319; RV32ZVFHMIN-NEXT:    fle.h t1, fa0, fa55320; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05321; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55322; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t25323; RV32ZVFHMIN-NEXT:    xori a3, a3, 15324; RV32ZVFHMIN-NEXT:    xori a4, a4, 15325; RV32ZVFHMIN-NEXT:    xori a5, a5, 15326; RV32ZVFHMIN-NEXT:    xori a6, a6, 15327; RV32ZVFHMIN-NEXT:    xori a0, a0, 15328; RV32ZVFHMIN-NEXT:    sb a0, 115(sp)5329; RV32ZVFHMIN-NEXT:    lh a0, 228(sp)5330; RV32ZVFHMIN-NEXT:    sb a6, 76(sp)5331; RV32ZVFHMIN-NEXT:    sb a5, 77(sp)5332; RV32ZVFHMIN-NEXT:    sb a4, 78(sp)5333; RV32ZVFHMIN-NEXT:    sb a3, 79(sp)5334; RV32ZVFHMIN-NEXT:    fle.h a3, fa0, fa55335; RV32ZVFHMIN-NEXT:    xori a4, a7, 15336; RV32ZVFHMIN-NEXT:    xori a5, t0, 15337; RV32ZVFHMIN-NEXT:    xori a6, t1, 15338; RV32ZVFHMIN-NEXT:    xori a3, a3, 15339; RV32ZVFHMIN-NEXT:    sb a3, 72(sp)5340; RV32ZVFHMIN-NEXT:    sb a6, 73(sp)5341; RV32ZVFHMIN-NEXT:    sb a5, 74(sp)5342; RV32ZVFHMIN-NEXT:    sb a4, 75(sp)5343; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05344; RV32ZVFHMIN-NEXT:    fle.h a0, fa0, fa55345; RV32ZVFHMIN-NEXT:    xori a0, a0, 15346; RV32ZVFHMIN-NEXT:    sb a0, 114(sp)5347; RV32ZVFHMIN-NEXT:    addi a0, sp, 645348; RV32ZVFHMIN-NEXT:    vsetvli zero, a2, e8, m4, ta, ma5349; RV32ZVFHMIN-NEXT:    vle8.v v8, (a0)5350; RV32ZVFHMIN-NEXT:    vand.vi v8, v8, 15351; RV32ZVFHMIN-NEXT:    vmsne.vi v12, v8, 05352; RV32ZVFHMIN-NEXT:    vsm.v v12, (a1)5353; RV32ZVFHMIN-NEXT:    addi sp, s0, -3845354; RV32ZVFHMIN-NEXT:    .cfi_def_cfa sp, 3845355; RV32ZVFHMIN-NEXT:    lw ra, 380(sp) # 4-byte Folded Reload5356; RV32ZVFHMIN-NEXT:    lw s0, 376(sp) # 4-byte Folded Reload5357; RV32ZVFHMIN-NEXT:    .cfi_restore ra5358; RV32ZVFHMIN-NEXT:    .cfi_restore s05359; RV32ZVFHMIN-NEXT:    addi sp, sp, 3845360; RV32ZVFHMIN-NEXT:    .cfi_def_cfa_offset 05361; RV32ZVFHMIN-NEXT:    ret5362;5363; RV64ZVFHMIN-LABEL: fcmp_ugt_fv_v64f16:5364; RV64ZVFHMIN:       # %bb.0:5365; RV64ZVFHMIN-NEXT:    addi sp, sp, -3845366; RV64ZVFHMIN-NEXT:    .cfi_def_cfa_offset 3845367; RV64ZVFHMIN-NEXT:    sd ra, 376(sp) # 8-byte Folded Spill5368; RV64ZVFHMIN-NEXT:    sd s0, 368(sp) # 8-byte Folded Spill5369; RV64ZVFHMIN-NEXT:    .cfi_offset ra, -85370; RV64ZVFHMIN-NEXT:    .cfi_offset s0, -165371; RV64ZVFHMIN-NEXT:    addi s0, sp, 3845372; RV64ZVFHMIN-NEXT:    .cfi_def_cfa s0, 05373; RV64ZVFHMIN-NEXT:    andi sp, sp, -1285374; RV64ZVFHMIN-NEXT:    li a2, 645375; RV64ZVFHMIN-NEXT:    vsetvli zero, a2, e16, m8, ta, ma5376; RV64ZVFHMIN-NEXT:    vle16.v v8, (a0)5377; RV64ZVFHMIN-NEXT:    addi a0, sp, 1285378; RV64ZVFHMIN-NEXT:    vse16.v v8, (a0)5379; RV64ZVFHMIN-NEXT:    lh a0, 192(sp)5380; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05381; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55382; RV64ZVFHMIN-NEXT:    xori a0, a0, 15383; RV64ZVFHMIN-NEXT:    sb a0, 96(sp)5384; RV64ZVFHMIN-NEXT:    lh a0, 190(sp)5385; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05386; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55387; RV64ZVFHMIN-NEXT:    xori a0, a0, 15388; RV64ZVFHMIN-NEXT:    sb a0, 95(sp)5389; RV64ZVFHMIN-NEXT:    lh a0, 188(sp)5390; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05391; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55392; RV64ZVFHMIN-NEXT:    xori a0, a0, 15393; RV64ZVFHMIN-NEXT:    sb a0, 94(sp)5394; RV64ZVFHMIN-NEXT:    lh a0, 186(sp)5395; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05396; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55397; RV64ZVFHMIN-NEXT:    xori a0, a0, 15398; RV64ZVFHMIN-NEXT:    sb a0, 93(sp)5399; RV64ZVFHMIN-NEXT:    lh a0, 184(sp)5400; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05401; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55402; RV64ZVFHMIN-NEXT:    xori a0, a0, 15403; RV64ZVFHMIN-NEXT:    sb a0, 92(sp)5404; RV64ZVFHMIN-NEXT:    lh a0, 182(sp)5405; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05406; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55407; RV64ZVFHMIN-NEXT:    xori a0, a0, 15408; RV64ZVFHMIN-NEXT:    sb a0, 91(sp)5409; RV64ZVFHMIN-NEXT:    lh a0, 180(sp)5410; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05411; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55412; RV64ZVFHMIN-NEXT:    xori a0, a0, 15413; RV64ZVFHMIN-NEXT:    sb a0, 90(sp)5414; RV64ZVFHMIN-NEXT:    lh a0, 178(sp)5415; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05416; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55417; RV64ZVFHMIN-NEXT:    xori a0, a0, 15418; RV64ZVFHMIN-NEXT:    sb a0, 89(sp)5419; RV64ZVFHMIN-NEXT:    lh a0, 176(sp)5420; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05421; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55422; RV64ZVFHMIN-NEXT:    xori a0, a0, 15423; RV64ZVFHMIN-NEXT:    sb a0, 88(sp)5424; RV64ZVFHMIN-NEXT:    lh a0, 174(sp)5425; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05426; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55427; RV64ZVFHMIN-NEXT:    xori a0, a0, 15428; RV64ZVFHMIN-NEXT:    sb a0, 87(sp)5429; RV64ZVFHMIN-NEXT:    lh a0, 172(sp)5430; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05431; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55432; RV64ZVFHMIN-NEXT:    xori a0, a0, 15433; RV64ZVFHMIN-NEXT:    sb a0, 86(sp)5434; RV64ZVFHMIN-NEXT:    lh a0, 170(sp)5435; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05436; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55437; RV64ZVFHMIN-NEXT:    xori a0, a0, 15438; RV64ZVFHMIN-NEXT:    sb a0, 85(sp)5439; RV64ZVFHMIN-NEXT:    lh a0, 168(sp)5440; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05441; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55442; RV64ZVFHMIN-NEXT:    xori a0, a0, 15443; RV64ZVFHMIN-NEXT:    sb a0, 84(sp)5444; RV64ZVFHMIN-NEXT:    lh a0, 166(sp)5445; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05446; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55447; RV64ZVFHMIN-NEXT:    xori a0, a0, 15448; RV64ZVFHMIN-NEXT:    sb a0, 83(sp)5449; RV64ZVFHMIN-NEXT:    lh a0, 164(sp)5450; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05451; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55452; RV64ZVFHMIN-NEXT:    xori a0, a0, 15453; RV64ZVFHMIN-NEXT:    sb a0, 82(sp)5454; RV64ZVFHMIN-NEXT:    lh a0, 162(sp)5455; RV64ZVFHMIN-NEXT:    vmv.x.s a3, v85456; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05457; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55458; RV64ZVFHMIN-NEXT:    xori a0, a0, 15459; RV64ZVFHMIN-NEXT:    sb a0, 81(sp)5460; RV64ZVFHMIN-NEXT:    lh a0, 160(sp)5461; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a35462; RV64ZVFHMIN-NEXT:    fle.h a3, fa0, fa55463; RV64ZVFHMIN-NEXT:    xori a3, a3, 15464; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05465; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55466; RV64ZVFHMIN-NEXT:    xori a0, a0, 15467; RV64ZVFHMIN-NEXT:    sb a3, 64(sp)5468; RV64ZVFHMIN-NEXT:    sb a0, 80(sp)5469; RV64ZVFHMIN-NEXT:    lh a0, 226(sp)5470; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05471; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55472; RV64ZVFHMIN-NEXT:    xori a0, a0, 15473; RV64ZVFHMIN-NEXT:    sb a0, 113(sp)5474; RV64ZVFHMIN-NEXT:    lh a0, 224(sp)5475; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05476; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55477; RV64ZVFHMIN-NEXT:    xori a0, a0, 15478; RV64ZVFHMIN-NEXT:    sb a0, 112(sp)5479; RV64ZVFHMIN-NEXT:    lh a0, 222(sp)5480; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05481; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55482; RV64ZVFHMIN-NEXT:    xori a0, a0, 15483; RV64ZVFHMIN-NEXT:    sb a0, 111(sp)5484; RV64ZVFHMIN-NEXT:    lh a0, 220(sp)5485; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05486; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55487; RV64ZVFHMIN-NEXT:    xori a0, a0, 15488; RV64ZVFHMIN-NEXT:    sb a0, 110(sp)5489; RV64ZVFHMIN-NEXT:    lh a0, 218(sp)5490; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05491; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55492; RV64ZVFHMIN-NEXT:    xori a0, a0, 15493; RV64ZVFHMIN-NEXT:    sb a0, 109(sp)5494; RV64ZVFHMIN-NEXT:    lh a0, 216(sp)5495; RV64ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m1, ta, ma5496; RV64ZVFHMIN-NEXT:    vslidedown.vi v10, v8, 75497; RV64ZVFHMIN-NEXT:    vslidedown.vi v11, v8, 65498; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05499; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55500; RV64ZVFHMIN-NEXT:    xori a0, a0, 15501; RV64ZVFHMIN-NEXT:    sb a0, 108(sp)5502; RV64ZVFHMIN-NEXT:    lh a0, 214(sp)5503; RV64ZVFHMIN-NEXT:    vslidedown.vi v12, v8, 55504; RV64ZVFHMIN-NEXT:    vslidedown.vi v13, v8, 45505; RV64ZVFHMIN-NEXT:    vslidedown.vi v14, v8, 35506; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05507; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55508; RV64ZVFHMIN-NEXT:    xori a0, a0, 15509; RV64ZVFHMIN-NEXT:    sb a0, 107(sp)5510; RV64ZVFHMIN-NEXT:    lh a0, 212(sp)5511; RV64ZVFHMIN-NEXT:    vslidedown.vi v15, v8, 25512; RV64ZVFHMIN-NEXT:    vslidedown.vi v16, v8, 15513; RV64ZVFHMIN-NEXT:    vmv.x.s a3, v105514; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05515; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55516; RV64ZVFHMIN-NEXT:    xori a0, a0, 15517; RV64ZVFHMIN-NEXT:    sb a0, 106(sp)5518; RV64ZVFHMIN-NEXT:    lh a0, 210(sp)5519; RV64ZVFHMIN-NEXT:    vmv.x.s a4, v115520; RV64ZVFHMIN-NEXT:    vmv.x.s a5, v125521; RV64ZVFHMIN-NEXT:    vmv.x.s a6, v135522; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05523; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55524; RV64ZVFHMIN-NEXT:    xori a0, a0, 15525; RV64ZVFHMIN-NEXT:    sb a0, 105(sp)5526; RV64ZVFHMIN-NEXT:    lh a0, 208(sp)5527; RV64ZVFHMIN-NEXT:    vmv.x.s a7, v145528; RV64ZVFHMIN-NEXT:    vmv.x.s t0, v155529; RV64ZVFHMIN-NEXT:    vmv.x.s t1, v165530; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05531; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55532; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a35533; RV64ZVFHMIN-NEXT:    xori a0, a0, 15534; RV64ZVFHMIN-NEXT:    sb a0, 104(sp)5535; RV64ZVFHMIN-NEXT:    lh a0, 206(sp)5536; RV64ZVFHMIN-NEXT:    fle.h a3, fa0, fa55537; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a45538; RV64ZVFHMIN-NEXT:    fle.h a4, fa0, fa55539; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05540; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55541; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a55542; RV64ZVFHMIN-NEXT:    xori a0, a0, 15543; RV64ZVFHMIN-NEXT:    sb a0, 103(sp)5544; RV64ZVFHMIN-NEXT:    lh a0, 204(sp)5545; RV64ZVFHMIN-NEXT:    fle.h a5, fa0, fa55546; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a65547; RV64ZVFHMIN-NEXT:    fle.h a6, fa0, fa55548; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05549; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55550; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a75551; RV64ZVFHMIN-NEXT:    xori a0, a0, 15552; RV64ZVFHMIN-NEXT:    sb a0, 102(sp)5553; RV64ZVFHMIN-NEXT:    lh a0, 202(sp)5554; RV64ZVFHMIN-NEXT:    fle.h a7, fa0, fa55555; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t05556; RV64ZVFHMIN-NEXT:    fle.h t0, fa0, fa55557; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05558; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55559; RV64ZVFHMIN-NEXT:    xori a0, a0, 15560; RV64ZVFHMIN-NEXT:    sb a0, 101(sp)5561; RV64ZVFHMIN-NEXT:    lh a0, 200(sp)5562; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t15563; RV64ZVFHMIN-NEXT:    fle.h t1, fa0, fa55564; RV64ZVFHMIN-NEXT:    xori a3, a3, 15565; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05566; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55567; RV64ZVFHMIN-NEXT:    xori a0, a0, 15568; RV64ZVFHMIN-NEXT:    sb a0, 100(sp)5569; RV64ZVFHMIN-NEXT:    lh a0, 198(sp)5570; RV64ZVFHMIN-NEXT:    xori a4, a4, 15571; RV64ZVFHMIN-NEXT:    xori a5, a5, 15572; RV64ZVFHMIN-NEXT:    xori a6, a6, 15573; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05574; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55575; RV64ZVFHMIN-NEXT:    xori a0, a0, 15576; RV64ZVFHMIN-NEXT:    sb a0, 99(sp)5577; RV64ZVFHMIN-NEXT:    lh a0, 196(sp)5578; RV64ZVFHMIN-NEXT:    xori a7, a7, 15579; RV64ZVFHMIN-NEXT:    xori t0, t0, 15580; RV64ZVFHMIN-NEXT:    xori t1, t1, 15581; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05582; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55583; RV64ZVFHMIN-NEXT:    xori a0, a0, 15584; RV64ZVFHMIN-NEXT:    sb a0, 98(sp)5585; RV64ZVFHMIN-NEXT:    lh a0, 194(sp)5586; RV64ZVFHMIN-NEXT:    sb t1, 65(sp)5587; RV64ZVFHMIN-NEXT:    sb t0, 66(sp)5588; RV64ZVFHMIN-NEXT:    sb a7, 67(sp)5589; RV64ZVFHMIN-NEXT:    sb a6, 68(sp)5590; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05591; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55592; RV64ZVFHMIN-NEXT:    xori a0, a0, 15593; RV64ZVFHMIN-NEXT:    sb a5, 69(sp)5594; RV64ZVFHMIN-NEXT:    sb a4, 70(sp)5595; RV64ZVFHMIN-NEXT:    sb a3, 71(sp)5596; RV64ZVFHMIN-NEXT:    sb a0, 97(sp)5597; RV64ZVFHMIN-NEXT:    lh a0, 254(sp)5598; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05599; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55600; RV64ZVFHMIN-NEXT:    xori a0, a0, 15601; RV64ZVFHMIN-NEXT:    sb a0, 127(sp)5602; RV64ZVFHMIN-NEXT:    lh a0, 252(sp)5603; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05604; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55605; RV64ZVFHMIN-NEXT:    xori a0, a0, 15606; RV64ZVFHMIN-NEXT:    sb a0, 126(sp)5607; RV64ZVFHMIN-NEXT:    lh a0, 250(sp)5608; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05609; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55610; RV64ZVFHMIN-NEXT:    xori a0, a0, 15611; RV64ZVFHMIN-NEXT:    sb a0, 125(sp)5612; RV64ZVFHMIN-NEXT:    lh a0, 248(sp)5613; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05614; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55615; RV64ZVFHMIN-NEXT:    xori a0, a0, 15616; RV64ZVFHMIN-NEXT:    sb a0, 124(sp)5617; RV64ZVFHMIN-NEXT:    lh a0, 246(sp)5618; RV64ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m2, ta, ma5619; RV64ZVFHMIN-NEXT:    vslidedown.vi v10, v8, 155620; RV64ZVFHMIN-NEXT:    vslidedown.vi v12, v8, 145621; RV64ZVFHMIN-NEXT:    vslidedown.vi v14, v8, 135622; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05623; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55624; RV64ZVFHMIN-NEXT:    xori a0, a0, 15625; RV64ZVFHMIN-NEXT:    sb a0, 123(sp)5626; RV64ZVFHMIN-NEXT:    lh a0, 244(sp)5627; RV64ZVFHMIN-NEXT:    vslidedown.vi v16, v8, 125628; RV64ZVFHMIN-NEXT:    vslidedown.vi v18, v8, 115629; RV64ZVFHMIN-NEXT:    vslidedown.vi v20, v8, 105630; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05631; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55632; RV64ZVFHMIN-NEXT:    xori a0, a0, 15633; RV64ZVFHMIN-NEXT:    sb a0, 122(sp)5634; RV64ZVFHMIN-NEXT:    lh a0, 242(sp)5635; RV64ZVFHMIN-NEXT:    vslidedown.vi v22, v8, 95636; RV64ZVFHMIN-NEXT:    vslidedown.vi v8, v8, 85637; RV64ZVFHMIN-NEXT:    vmv.x.s a3, v105638; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05639; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55640; RV64ZVFHMIN-NEXT:    xori a0, a0, 15641; RV64ZVFHMIN-NEXT:    sb a0, 121(sp)5642; RV64ZVFHMIN-NEXT:    lh a0, 240(sp)5643; RV64ZVFHMIN-NEXT:    vmv.x.s a4, v125644; RV64ZVFHMIN-NEXT:    vmv.x.s a5, v145645; RV64ZVFHMIN-NEXT:    vmv.x.s a6, v165646; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05647; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55648; RV64ZVFHMIN-NEXT:    xori a0, a0, 15649; RV64ZVFHMIN-NEXT:    sb a0, 120(sp)5650; RV64ZVFHMIN-NEXT:    lh a0, 238(sp)5651; RV64ZVFHMIN-NEXT:    vmv.x.s a7, v185652; RV64ZVFHMIN-NEXT:    vmv.x.s t0, v205653; RV64ZVFHMIN-NEXT:    vmv.x.s t1, v225654; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05655; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55656; RV64ZVFHMIN-NEXT:    xori a0, a0, 15657; RV64ZVFHMIN-NEXT:    sb a0, 119(sp)5658; RV64ZVFHMIN-NEXT:    lh a0, 236(sp)5659; RV64ZVFHMIN-NEXT:    vmv.x.s t2, v85660; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a35661; RV64ZVFHMIN-NEXT:    fle.h a3, fa0, fa55662; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05663; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55664; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a45665; RV64ZVFHMIN-NEXT:    xori a0, a0, 15666; RV64ZVFHMIN-NEXT:    sb a0, 118(sp)5667; RV64ZVFHMIN-NEXT:    lh a0, 234(sp)5668; RV64ZVFHMIN-NEXT:    fle.h a4, fa0, fa55669; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a55670; RV64ZVFHMIN-NEXT:    fle.h a5, fa0, fa55671; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05672; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55673; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a65674; RV64ZVFHMIN-NEXT:    xori a0, a0, 15675; RV64ZVFHMIN-NEXT:    sb a0, 117(sp)5676; RV64ZVFHMIN-NEXT:    lh a0, 232(sp)5677; RV64ZVFHMIN-NEXT:    fle.h a6, fa0, fa55678; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a75679; RV64ZVFHMIN-NEXT:    fle.h a7, fa0, fa55680; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05681; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55682; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t05683; RV64ZVFHMIN-NEXT:    xori a0, a0, 15684; RV64ZVFHMIN-NEXT:    sb a0, 116(sp)5685; RV64ZVFHMIN-NEXT:    lh a0, 230(sp)5686; RV64ZVFHMIN-NEXT:    fle.h t0, fa0, fa55687; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t15688; RV64ZVFHMIN-NEXT:    fle.h t1, fa0, fa55689; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05690; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55691; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t25692; RV64ZVFHMIN-NEXT:    xori a3, a3, 15693; RV64ZVFHMIN-NEXT:    xori a4, a4, 15694; RV64ZVFHMIN-NEXT:    xori a5, a5, 15695; RV64ZVFHMIN-NEXT:    xori a6, a6, 15696; RV64ZVFHMIN-NEXT:    xori a0, a0, 15697; RV64ZVFHMIN-NEXT:    sb a0, 115(sp)5698; RV64ZVFHMIN-NEXT:    lh a0, 228(sp)5699; RV64ZVFHMIN-NEXT:    sb a6, 76(sp)5700; RV64ZVFHMIN-NEXT:    sb a5, 77(sp)5701; RV64ZVFHMIN-NEXT:    sb a4, 78(sp)5702; RV64ZVFHMIN-NEXT:    sb a3, 79(sp)5703; RV64ZVFHMIN-NEXT:    fle.h a3, fa0, fa55704; RV64ZVFHMIN-NEXT:    xori a4, a7, 15705; RV64ZVFHMIN-NEXT:    xori a5, t0, 15706; RV64ZVFHMIN-NEXT:    xori a6, t1, 15707; RV64ZVFHMIN-NEXT:    xori a3, a3, 15708; RV64ZVFHMIN-NEXT:    sb a3, 72(sp)5709; RV64ZVFHMIN-NEXT:    sb a6, 73(sp)5710; RV64ZVFHMIN-NEXT:    sb a5, 74(sp)5711; RV64ZVFHMIN-NEXT:    sb a4, 75(sp)5712; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a05713; RV64ZVFHMIN-NEXT:    fle.h a0, fa0, fa55714; RV64ZVFHMIN-NEXT:    xori a0, a0, 15715; RV64ZVFHMIN-NEXT:    sb a0, 114(sp)5716; RV64ZVFHMIN-NEXT:    addi a0, sp, 645717; RV64ZVFHMIN-NEXT:    vsetvli zero, a2, e8, m4, ta, ma5718; RV64ZVFHMIN-NEXT:    vle8.v v8, (a0)5719; RV64ZVFHMIN-NEXT:    vand.vi v8, v8, 15720; RV64ZVFHMIN-NEXT:    vmsne.vi v12, v8, 05721; RV64ZVFHMIN-NEXT:    vsm.v v12, (a1)5722; RV64ZVFHMIN-NEXT:    addi sp, s0, -3845723; RV64ZVFHMIN-NEXT:    .cfi_def_cfa sp, 3845724; RV64ZVFHMIN-NEXT:    ld ra, 376(sp) # 8-byte Folded Reload5725; RV64ZVFHMIN-NEXT:    ld s0, 368(sp) # 8-byte Folded Reload5726; RV64ZVFHMIN-NEXT:    .cfi_restore ra5727; RV64ZVFHMIN-NEXT:    .cfi_restore s05728; RV64ZVFHMIN-NEXT:    addi sp, sp, 3845729; RV64ZVFHMIN-NEXT:    .cfi_def_cfa_offset 05730; RV64ZVFHMIN-NEXT:    ret5731  %a = load <64 x half>, ptr %x5732  %b = insertelement <64 x half> poison, half %y, i32 05733  %c = shufflevector <64 x half> %b, <64 x half> poison, <64 x i32> zeroinitializer5734  %d = fcmp ugt <64 x half> %c, %a5735  store <64 x i1> %d, ptr %z5736  ret void5737}5738 5739define void @fcmp_ugt_fv_v64f16_nonans(ptr %x, half %y, ptr %z) {5740; ZVFH-LABEL: fcmp_ugt_fv_v64f16_nonans:5741; ZVFH:       # %bb.0:5742; ZVFH-NEXT:    li a2, 645743; ZVFH-NEXT:    vsetvli zero, a2, e16, m8, ta, ma5744; ZVFH-NEXT:    vle16.v v8, (a0)5745; ZVFH-NEXT:    vmflt.vf v16, v8, fa05746; ZVFH-NEXT:    vsm.v v16, (a1)5747; ZVFH-NEXT:    ret5748;5749; RV32ZVFHMIN-LABEL: fcmp_ugt_fv_v64f16_nonans:5750; RV32ZVFHMIN:       # %bb.0:5751; RV32ZVFHMIN-NEXT:    addi sp, sp, -3845752; RV32ZVFHMIN-NEXT:    .cfi_def_cfa_offset 3845753; RV32ZVFHMIN-NEXT:    sw ra, 380(sp) # 4-byte Folded Spill5754; RV32ZVFHMIN-NEXT:    sw s0, 376(sp) # 4-byte Folded Spill5755; RV32ZVFHMIN-NEXT:    .cfi_offset ra, -45756; RV32ZVFHMIN-NEXT:    .cfi_offset s0, -85757; RV32ZVFHMIN-NEXT:    addi s0, sp, 3845758; RV32ZVFHMIN-NEXT:    .cfi_def_cfa s0, 05759; RV32ZVFHMIN-NEXT:    andi sp, sp, -1285760; RV32ZVFHMIN-NEXT:    li a2, 645761; RV32ZVFHMIN-NEXT:    vsetvli zero, a2, e16, m8, ta, ma5762; RV32ZVFHMIN-NEXT:    vle16.v v8, (a0)5763; RV32ZVFHMIN-NEXT:    addi a0, sp, 1285764; RV32ZVFHMIN-NEXT:    vse16.v v8, (a0)5765; RV32ZVFHMIN-NEXT:    lh a0, 192(sp)5766; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05767; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05768; RV32ZVFHMIN-NEXT:    sb a0, 96(sp)5769; RV32ZVFHMIN-NEXT:    lh a0, 190(sp)5770; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05771; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05772; RV32ZVFHMIN-NEXT:    sb a0, 95(sp)5773; RV32ZVFHMIN-NEXT:    lh a0, 188(sp)5774; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05775; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05776; RV32ZVFHMIN-NEXT:    sb a0, 94(sp)5777; RV32ZVFHMIN-NEXT:    lh a0, 186(sp)5778; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05779; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05780; RV32ZVFHMIN-NEXT:    sb a0, 93(sp)5781; RV32ZVFHMIN-NEXT:    lh a0, 184(sp)5782; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05783; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05784; RV32ZVFHMIN-NEXT:    sb a0, 92(sp)5785; RV32ZVFHMIN-NEXT:    lh a0, 182(sp)5786; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05787; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05788; RV32ZVFHMIN-NEXT:    sb a0, 91(sp)5789; RV32ZVFHMIN-NEXT:    lh a0, 180(sp)5790; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05791; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05792; RV32ZVFHMIN-NEXT:    sb a0, 90(sp)5793; RV32ZVFHMIN-NEXT:    lh a0, 178(sp)5794; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05795; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05796; RV32ZVFHMIN-NEXT:    sb a0, 89(sp)5797; RV32ZVFHMIN-NEXT:    lh a0, 176(sp)5798; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05799; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05800; RV32ZVFHMIN-NEXT:    sb a0, 88(sp)5801; RV32ZVFHMIN-NEXT:    lh a0, 174(sp)5802; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05803; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05804; RV32ZVFHMIN-NEXT:    sb a0, 87(sp)5805; RV32ZVFHMIN-NEXT:    lh a0, 172(sp)5806; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05807; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05808; RV32ZVFHMIN-NEXT:    sb a0, 86(sp)5809; RV32ZVFHMIN-NEXT:    lh a0, 170(sp)5810; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05811; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05812; RV32ZVFHMIN-NEXT:    sb a0, 85(sp)5813; RV32ZVFHMIN-NEXT:    lh a0, 168(sp)5814; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05815; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05816; RV32ZVFHMIN-NEXT:    sb a0, 84(sp)5817; RV32ZVFHMIN-NEXT:    lh a0, 166(sp)5818; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05819; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05820; RV32ZVFHMIN-NEXT:    sb a0, 83(sp)5821; RV32ZVFHMIN-NEXT:    lh a0, 164(sp)5822; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05823; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05824; RV32ZVFHMIN-NEXT:    sb a0, 82(sp)5825; RV32ZVFHMIN-NEXT:    lh a0, 162(sp)5826; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05827; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05828; RV32ZVFHMIN-NEXT:    sb a0, 81(sp)5829; RV32ZVFHMIN-NEXT:    lh a0, 160(sp)5830; RV32ZVFHMIN-NEXT:    vmv.x.s a3, v85831; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a35832; RV32ZVFHMIN-NEXT:    flt.h a3, fa5, fa05833; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05834; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05835; RV32ZVFHMIN-NEXT:    sb a3, 64(sp)5836; RV32ZVFHMIN-NEXT:    sb a0, 80(sp)5837; RV32ZVFHMIN-NEXT:    lh a0, 226(sp)5838; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05839; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05840; RV32ZVFHMIN-NEXT:    sb a0, 113(sp)5841; RV32ZVFHMIN-NEXT:    lh a0, 224(sp)5842; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05843; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05844; RV32ZVFHMIN-NEXT:    sb a0, 112(sp)5845; RV32ZVFHMIN-NEXT:    lh a0, 222(sp)5846; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05847; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05848; RV32ZVFHMIN-NEXT:    sb a0, 111(sp)5849; RV32ZVFHMIN-NEXT:    lh a0, 220(sp)5850; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05851; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05852; RV32ZVFHMIN-NEXT:    sb a0, 110(sp)5853; RV32ZVFHMIN-NEXT:    lh a0, 218(sp)5854; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05855; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05856; RV32ZVFHMIN-NEXT:    sb a0, 109(sp)5857; RV32ZVFHMIN-NEXT:    lh a0, 216(sp)5858; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05859; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05860; RV32ZVFHMIN-NEXT:    sb a0, 108(sp)5861; RV32ZVFHMIN-NEXT:    lh a0, 214(sp)5862; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05863; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05864; RV32ZVFHMIN-NEXT:    sb a0, 107(sp)5865; RV32ZVFHMIN-NEXT:    lh a0, 212(sp)5866; RV32ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m1, ta, ma5867; RV32ZVFHMIN-NEXT:    vslidedown.vi v10, v8, 75868; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05869; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05870; RV32ZVFHMIN-NEXT:    sb a0, 106(sp)5871; RV32ZVFHMIN-NEXT:    lh a0, 210(sp)5872; RV32ZVFHMIN-NEXT:    vslidedown.vi v11, v8, 65873; RV32ZVFHMIN-NEXT:    vslidedown.vi v12, v8, 55874; RV32ZVFHMIN-NEXT:    vslidedown.vi v13, v8, 45875; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05876; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05877; RV32ZVFHMIN-NEXT:    sb a0, 105(sp)5878; RV32ZVFHMIN-NEXT:    lh a0, 208(sp)5879; RV32ZVFHMIN-NEXT:    vslidedown.vi v14, v8, 35880; RV32ZVFHMIN-NEXT:    vslidedown.vi v15, v8, 25881; RV32ZVFHMIN-NEXT:    vslidedown.vi v16, v8, 15882; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05883; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05884; RV32ZVFHMIN-NEXT:    sb a0, 104(sp)5885; RV32ZVFHMIN-NEXT:    lh a0, 206(sp)5886; RV32ZVFHMIN-NEXT:    vmv.x.s a3, v105887; RV32ZVFHMIN-NEXT:    vmv.x.s a4, v115888; RV32ZVFHMIN-NEXT:    vmv.x.s a5, v125889; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05890; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05891; RV32ZVFHMIN-NEXT:    sb a0, 103(sp)5892; RV32ZVFHMIN-NEXT:    lh a0, 204(sp)5893; RV32ZVFHMIN-NEXT:    vmv.x.s a6, v135894; RV32ZVFHMIN-NEXT:    vmv.x.s a7, v145895; RV32ZVFHMIN-NEXT:    vmv.x.s t0, v155896; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05897; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05898; RV32ZVFHMIN-NEXT:    sb a0, 102(sp)5899; RV32ZVFHMIN-NEXT:    lh a0, 202(sp)5900; RV32ZVFHMIN-NEXT:    vmv.x.s t1, v165901; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a35902; RV32ZVFHMIN-NEXT:    flt.h a3, fa5, fa05903; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05904; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05905; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a45906; RV32ZVFHMIN-NEXT:    sb a0, 101(sp)5907; RV32ZVFHMIN-NEXT:    lh a0, 200(sp)5908; RV32ZVFHMIN-NEXT:    flt.h a4, fa5, fa05909; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a55910; RV32ZVFHMIN-NEXT:    flt.h a5, fa5, fa05911; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05912; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05913; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a65914; RV32ZVFHMIN-NEXT:    sb a0, 100(sp)5915; RV32ZVFHMIN-NEXT:    lh a0, 198(sp)5916; RV32ZVFHMIN-NEXT:    flt.h a6, fa5, fa05917; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a75918; RV32ZVFHMIN-NEXT:    flt.h a7, fa5, fa05919; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05920; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05921; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t05922; RV32ZVFHMIN-NEXT:    sb a0, 99(sp)5923; RV32ZVFHMIN-NEXT:    lh a0, 196(sp)5924; RV32ZVFHMIN-NEXT:    flt.h t0, fa5, fa05925; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t15926; RV32ZVFHMIN-NEXT:    flt.h t1, fa5, fa05927; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05928; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05929; RV32ZVFHMIN-NEXT:    sb a0, 98(sp)5930; RV32ZVFHMIN-NEXT:    lh a0, 194(sp)5931; RV32ZVFHMIN-NEXT:    sb t1, 65(sp)5932; RV32ZVFHMIN-NEXT:    sb t0, 66(sp)5933; RV32ZVFHMIN-NEXT:    sb a7, 67(sp)5934; RV32ZVFHMIN-NEXT:    sb a6, 68(sp)5935; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05936; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05937; RV32ZVFHMIN-NEXT:    sb a5, 69(sp)5938; RV32ZVFHMIN-NEXT:    sb a4, 70(sp)5939; RV32ZVFHMIN-NEXT:    sb a3, 71(sp)5940; RV32ZVFHMIN-NEXT:    sb a0, 97(sp)5941; RV32ZVFHMIN-NEXT:    lh a0, 254(sp)5942; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05943; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05944; RV32ZVFHMIN-NEXT:    sb a0, 127(sp)5945; RV32ZVFHMIN-NEXT:    lh a0, 252(sp)5946; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05947; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05948; RV32ZVFHMIN-NEXT:    sb a0, 126(sp)5949; RV32ZVFHMIN-NEXT:    lh a0, 250(sp)5950; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05951; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05952; RV32ZVFHMIN-NEXT:    sb a0, 125(sp)5953; RV32ZVFHMIN-NEXT:    lh a0, 248(sp)5954; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05955; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05956; RV32ZVFHMIN-NEXT:    sb a0, 124(sp)5957; RV32ZVFHMIN-NEXT:    lh a0, 246(sp)5958; RV32ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m2, ta, ma5959; RV32ZVFHMIN-NEXT:    vslidedown.vi v10, v8, 155960; RV32ZVFHMIN-NEXT:    vslidedown.vi v12, v8, 145961; RV32ZVFHMIN-NEXT:    vslidedown.vi v14, v8, 135962; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05963; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05964; RV32ZVFHMIN-NEXT:    sb a0, 123(sp)5965; RV32ZVFHMIN-NEXT:    lh a0, 244(sp)5966; RV32ZVFHMIN-NEXT:    vslidedown.vi v16, v8, 125967; RV32ZVFHMIN-NEXT:    vslidedown.vi v18, v8, 115968; RV32ZVFHMIN-NEXT:    vslidedown.vi v20, v8, 105969; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05970; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05971; RV32ZVFHMIN-NEXT:    sb a0, 122(sp)5972; RV32ZVFHMIN-NEXT:    lh a0, 242(sp)5973; RV32ZVFHMIN-NEXT:    vslidedown.vi v22, v8, 95974; RV32ZVFHMIN-NEXT:    vslidedown.vi v8, v8, 85975; RV32ZVFHMIN-NEXT:    vmv.x.s a3, v105976; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05977; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05978; RV32ZVFHMIN-NEXT:    sb a0, 121(sp)5979; RV32ZVFHMIN-NEXT:    lh a0, 240(sp)5980; RV32ZVFHMIN-NEXT:    vmv.x.s a4, v125981; RV32ZVFHMIN-NEXT:    vmv.x.s a5, v145982; RV32ZVFHMIN-NEXT:    vmv.x.s a6, v165983; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05984; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05985; RV32ZVFHMIN-NEXT:    sb a0, 120(sp)5986; RV32ZVFHMIN-NEXT:    lh a0, 238(sp)5987; RV32ZVFHMIN-NEXT:    vmv.x.s a7, v185988; RV32ZVFHMIN-NEXT:    vmv.x.s t0, v205989; RV32ZVFHMIN-NEXT:    vmv.x.s t1, v225990; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05991; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05992; RV32ZVFHMIN-NEXT:    sb a0, 119(sp)5993; RV32ZVFHMIN-NEXT:    lh a0, 236(sp)5994; RV32ZVFHMIN-NEXT:    vmv.x.s t2, v85995; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a35996; RV32ZVFHMIN-NEXT:    flt.h a3, fa5, fa05997; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a05998; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa05999; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a46000; RV32ZVFHMIN-NEXT:    sb a0, 118(sp)6001; RV32ZVFHMIN-NEXT:    lh a0, 234(sp)6002; RV32ZVFHMIN-NEXT:    flt.h a4, fa5, fa06003; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a56004; RV32ZVFHMIN-NEXT:    flt.h a5, fa5, fa06005; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a06006; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa06007; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a66008; RV32ZVFHMIN-NEXT:    sb a0, 117(sp)6009; RV32ZVFHMIN-NEXT:    lh a0, 232(sp)6010; RV32ZVFHMIN-NEXT:    flt.h a6, fa5, fa06011; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a76012; RV32ZVFHMIN-NEXT:    flt.h a7, fa5, fa06013; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a06014; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa06015; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t06016; RV32ZVFHMIN-NEXT:    sb a0, 116(sp)6017; RV32ZVFHMIN-NEXT:    lh a0, 230(sp)6018; RV32ZVFHMIN-NEXT:    flt.h t0, fa5, fa06019; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t16020; RV32ZVFHMIN-NEXT:    flt.h t1, fa5, fa06021; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a06022; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa06023; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, t26024; RV32ZVFHMIN-NEXT:    sb a0, 115(sp)6025; RV32ZVFHMIN-NEXT:    lh a0, 228(sp)6026; RV32ZVFHMIN-NEXT:    sb a6, 76(sp)6027; RV32ZVFHMIN-NEXT:    sb a5, 77(sp)6028; RV32ZVFHMIN-NEXT:    sb a4, 78(sp)6029; RV32ZVFHMIN-NEXT:    sb a3, 79(sp)6030; RV32ZVFHMIN-NEXT:    flt.h a3, fa5, fa06031; RV32ZVFHMIN-NEXT:    sb a3, 72(sp)6032; RV32ZVFHMIN-NEXT:    sb t1, 73(sp)6033; RV32ZVFHMIN-NEXT:    sb t0, 74(sp)6034; RV32ZVFHMIN-NEXT:    sb a7, 75(sp)6035; RV32ZVFHMIN-NEXT:    fmv.h.x fa5, a06036; RV32ZVFHMIN-NEXT:    flt.h a0, fa5, fa06037; RV32ZVFHMIN-NEXT:    sb a0, 114(sp)6038; RV32ZVFHMIN-NEXT:    addi a0, sp, 646039; RV32ZVFHMIN-NEXT:    vsetvli zero, a2, e8, m4, ta, ma6040; RV32ZVFHMIN-NEXT:    vle8.v v8, (a0)6041; RV32ZVFHMIN-NEXT:    vand.vi v8, v8, 16042; RV32ZVFHMIN-NEXT:    vmsne.vi v12, v8, 06043; RV32ZVFHMIN-NEXT:    vsm.v v12, (a1)6044; RV32ZVFHMIN-NEXT:    addi sp, s0, -3846045; RV32ZVFHMIN-NEXT:    .cfi_def_cfa sp, 3846046; RV32ZVFHMIN-NEXT:    lw ra, 380(sp) # 4-byte Folded Reload6047; RV32ZVFHMIN-NEXT:    lw s0, 376(sp) # 4-byte Folded Reload6048; RV32ZVFHMIN-NEXT:    .cfi_restore ra6049; RV32ZVFHMIN-NEXT:    .cfi_restore s06050; RV32ZVFHMIN-NEXT:    addi sp, sp, 3846051; RV32ZVFHMIN-NEXT:    .cfi_def_cfa_offset 06052; RV32ZVFHMIN-NEXT:    ret6053;6054; RV64ZVFHMIN-LABEL: fcmp_ugt_fv_v64f16_nonans:6055; RV64ZVFHMIN:       # %bb.0:6056; RV64ZVFHMIN-NEXT:    addi sp, sp, -3846057; RV64ZVFHMIN-NEXT:    .cfi_def_cfa_offset 3846058; RV64ZVFHMIN-NEXT:    sd ra, 376(sp) # 8-byte Folded Spill6059; RV64ZVFHMIN-NEXT:    sd s0, 368(sp) # 8-byte Folded Spill6060; RV64ZVFHMIN-NEXT:    .cfi_offset ra, -86061; RV64ZVFHMIN-NEXT:    .cfi_offset s0, -166062; RV64ZVFHMIN-NEXT:    addi s0, sp, 3846063; RV64ZVFHMIN-NEXT:    .cfi_def_cfa s0, 06064; RV64ZVFHMIN-NEXT:    andi sp, sp, -1286065; RV64ZVFHMIN-NEXT:    li a2, 646066; RV64ZVFHMIN-NEXT:    vsetvli zero, a2, e16, m8, ta, ma6067; RV64ZVFHMIN-NEXT:    vle16.v v8, (a0)6068; RV64ZVFHMIN-NEXT:    addi a0, sp, 1286069; RV64ZVFHMIN-NEXT:    vse16.v v8, (a0)6070; RV64ZVFHMIN-NEXT:    lh a0, 192(sp)6071; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06072; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06073; RV64ZVFHMIN-NEXT:    sb a0, 96(sp)6074; RV64ZVFHMIN-NEXT:    lh a0, 190(sp)6075; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06076; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06077; RV64ZVFHMIN-NEXT:    sb a0, 95(sp)6078; RV64ZVFHMIN-NEXT:    lh a0, 188(sp)6079; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06080; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06081; RV64ZVFHMIN-NEXT:    sb a0, 94(sp)6082; RV64ZVFHMIN-NEXT:    lh a0, 186(sp)6083; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06084; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06085; RV64ZVFHMIN-NEXT:    sb a0, 93(sp)6086; RV64ZVFHMIN-NEXT:    lh a0, 184(sp)6087; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06088; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06089; RV64ZVFHMIN-NEXT:    sb a0, 92(sp)6090; RV64ZVFHMIN-NEXT:    lh a0, 182(sp)6091; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06092; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06093; RV64ZVFHMIN-NEXT:    sb a0, 91(sp)6094; RV64ZVFHMIN-NEXT:    lh a0, 180(sp)6095; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06096; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06097; RV64ZVFHMIN-NEXT:    sb a0, 90(sp)6098; RV64ZVFHMIN-NEXT:    lh a0, 178(sp)6099; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06100; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06101; RV64ZVFHMIN-NEXT:    sb a0, 89(sp)6102; RV64ZVFHMIN-NEXT:    lh a0, 176(sp)6103; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06104; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06105; RV64ZVFHMIN-NEXT:    sb a0, 88(sp)6106; RV64ZVFHMIN-NEXT:    lh a0, 174(sp)6107; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06108; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06109; RV64ZVFHMIN-NEXT:    sb a0, 87(sp)6110; RV64ZVFHMIN-NEXT:    lh a0, 172(sp)6111; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06112; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06113; RV64ZVFHMIN-NEXT:    sb a0, 86(sp)6114; RV64ZVFHMIN-NEXT:    lh a0, 170(sp)6115; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06116; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06117; RV64ZVFHMIN-NEXT:    sb a0, 85(sp)6118; RV64ZVFHMIN-NEXT:    lh a0, 168(sp)6119; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06120; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06121; RV64ZVFHMIN-NEXT:    sb a0, 84(sp)6122; RV64ZVFHMIN-NEXT:    lh a0, 166(sp)6123; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06124; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06125; RV64ZVFHMIN-NEXT:    sb a0, 83(sp)6126; RV64ZVFHMIN-NEXT:    lh a0, 164(sp)6127; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06128; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06129; RV64ZVFHMIN-NEXT:    sb a0, 82(sp)6130; RV64ZVFHMIN-NEXT:    lh a0, 162(sp)6131; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06132; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06133; RV64ZVFHMIN-NEXT:    sb a0, 81(sp)6134; RV64ZVFHMIN-NEXT:    lh a0, 160(sp)6135; RV64ZVFHMIN-NEXT:    vmv.x.s a3, v86136; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a36137; RV64ZVFHMIN-NEXT:    flt.h a3, fa5, fa06138; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06139; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06140; RV64ZVFHMIN-NEXT:    sb a3, 64(sp)6141; RV64ZVFHMIN-NEXT:    sb a0, 80(sp)6142; RV64ZVFHMIN-NEXT:    lh a0, 226(sp)6143; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06144; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06145; RV64ZVFHMIN-NEXT:    sb a0, 113(sp)6146; RV64ZVFHMIN-NEXT:    lh a0, 224(sp)6147; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06148; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06149; RV64ZVFHMIN-NEXT:    sb a0, 112(sp)6150; RV64ZVFHMIN-NEXT:    lh a0, 222(sp)6151; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06152; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06153; RV64ZVFHMIN-NEXT:    sb a0, 111(sp)6154; RV64ZVFHMIN-NEXT:    lh a0, 220(sp)6155; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06156; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06157; RV64ZVFHMIN-NEXT:    sb a0, 110(sp)6158; RV64ZVFHMIN-NEXT:    lh a0, 218(sp)6159; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06160; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06161; RV64ZVFHMIN-NEXT:    sb a0, 109(sp)6162; RV64ZVFHMIN-NEXT:    lh a0, 216(sp)6163; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06164; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06165; RV64ZVFHMIN-NEXT:    sb a0, 108(sp)6166; RV64ZVFHMIN-NEXT:    lh a0, 214(sp)6167; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06168; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06169; RV64ZVFHMIN-NEXT:    sb a0, 107(sp)6170; RV64ZVFHMIN-NEXT:    lh a0, 212(sp)6171; RV64ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m1, ta, ma6172; RV64ZVFHMIN-NEXT:    vslidedown.vi v10, v8, 76173; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06174; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06175; RV64ZVFHMIN-NEXT:    sb a0, 106(sp)6176; RV64ZVFHMIN-NEXT:    lh a0, 210(sp)6177; RV64ZVFHMIN-NEXT:    vslidedown.vi v11, v8, 66178; RV64ZVFHMIN-NEXT:    vslidedown.vi v12, v8, 56179; RV64ZVFHMIN-NEXT:    vslidedown.vi v13, v8, 46180; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06181; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06182; RV64ZVFHMIN-NEXT:    sb a0, 105(sp)6183; RV64ZVFHMIN-NEXT:    lh a0, 208(sp)6184; RV64ZVFHMIN-NEXT:    vslidedown.vi v14, v8, 36185; RV64ZVFHMIN-NEXT:    vslidedown.vi v15, v8, 26186; RV64ZVFHMIN-NEXT:    vslidedown.vi v16, v8, 16187; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06188; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06189; RV64ZVFHMIN-NEXT:    sb a0, 104(sp)6190; RV64ZVFHMIN-NEXT:    lh a0, 206(sp)6191; RV64ZVFHMIN-NEXT:    vmv.x.s a3, v106192; RV64ZVFHMIN-NEXT:    vmv.x.s a4, v116193; RV64ZVFHMIN-NEXT:    vmv.x.s a5, v126194; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06195; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06196; RV64ZVFHMIN-NEXT:    sb a0, 103(sp)6197; RV64ZVFHMIN-NEXT:    lh a0, 204(sp)6198; RV64ZVFHMIN-NEXT:    vmv.x.s a6, v136199; RV64ZVFHMIN-NEXT:    vmv.x.s a7, v146200; RV64ZVFHMIN-NEXT:    vmv.x.s t0, v156201; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06202; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06203; RV64ZVFHMIN-NEXT:    sb a0, 102(sp)6204; RV64ZVFHMIN-NEXT:    lh a0, 202(sp)6205; RV64ZVFHMIN-NEXT:    vmv.x.s t1, v166206; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a36207; RV64ZVFHMIN-NEXT:    flt.h a3, fa5, fa06208; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06209; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06210; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a46211; RV64ZVFHMIN-NEXT:    sb a0, 101(sp)6212; RV64ZVFHMIN-NEXT:    lh a0, 200(sp)6213; RV64ZVFHMIN-NEXT:    flt.h a4, fa5, fa06214; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a56215; RV64ZVFHMIN-NEXT:    flt.h a5, fa5, fa06216; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06217; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06218; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a66219; RV64ZVFHMIN-NEXT:    sb a0, 100(sp)6220; RV64ZVFHMIN-NEXT:    lh a0, 198(sp)6221; RV64ZVFHMIN-NEXT:    flt.h a6, fa5, fa06222; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a76223; RV64ZVFHMIN-NEXT:    flt.h a7, fa5, fa06224; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06225; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06226; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t06227; RV64ZVFHMIN-NEXT:    sb a0, 99(sp)6228; RV64ZVFHMIN-NEXT:    lh a0, 196(sp)6229; RV64ZVFHMIN-NEXT:    flt.h t0, fa5, fa06230; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t16231; RV64ZVFHMIN-NEXT:    flt.h t1, fa5, fa06232; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06233; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06234; RV64ZVFHMIN-NEXT:    sb a0, 98(sp)6235; RV64ZVFHMIN-NEXT:    lh a0, 194(sp)6236; RV64ZVFHMIN-NEXT:    sb t1, 65(sp)6237; RV64ZVFHMIN-NEXT:    sb t0, 66(sp)6238; RV64ZVFHMIN-NEXT:    sb a7, 67(sp)6239; RV64ZVFHMIN-NEXT:    sb a6, 68(sp)6240; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06241; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06242; RV64ZVFHMIN-NEXT:    sb a5, 69(sp)6243; RV64ZVFHMIN-NEXT:    sb a4, 70(sp)6244; RV64ZVFHMIN-NEXT:    sb a3, 71(sp)6245; RV64ZVFHMIN-NEXT:    sb a0, 97(sp)6246; RV64ZVFHMIN-NEXT:    lh a0, 254(sp)6247; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06248; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06249; RV64ZVFHMIN-NEXT:    sb a0, 127(sp)6250; RV64ZVFHMIN-NEXT:    lh a0, 252(sp)6251; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06252; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06253; RV64ZVFHMIN-NEXT:    sb a0, 126(sp)6254; RV64ZVFHMIN-NEXT:    lh a0, 250(sp)6255; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06256; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06257; RV64ZVFHMIN-NEXT:    sb a0, 125(sp)6258; RV64ZVFHMIN-NEXT:    lh a0, 248(sp)6259; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06260; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06261; RV64ZVFHMIN-NEXT:    sb a0, 124(sp)6262; RV64ZVFHMIN-NEXT:    lh a0, 246(sp)6263; RV64ZVFHMIN-NEXT:    vsetivli zero, 1, e16, m2, ta, ma6264; RV64ZVFHMIN-NEXT:    vslidedown.vi v10, v8, 156265; RV64ZVFHMIN-NEXT:    vslidedown.vi v12, v8, 146266; RV64ZVFHMIN-NEXT:    vslidedown.vi v14, v8, 136267; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06268; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06269; RV64ZVFHMIN-NEXT:    sb a0, 123(sp)6270; RV64ZVFHMIN-NEXT:    lh a0, 244(sp)6271; RV64ZVFHMIN-NEXT:    vslidedown.vi v16, v8, 126272; RV64ZVFHMIN-NEXT:    vslidedown.vi v18, v8, 116273; RV64ZVFHMIN-NEXT:    vslidedown.vi v20, v8, 106274; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06275; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06276; RV64ZVFHMIN-NEXT:    sb a0, 122(sp)6277; RV64ZVFHMIN-NEXT:    lh a0, 242(sp)6278; RV64ZVFHMIN-NEXT:    vslidedown.vi v22, v8, 96279; RV64ZVFHMIN-NEXT:    vslidedown.vi v8, v8, 86280; RV64ZVFHMIN-NEXT:    vmv.x.s a3, v106281; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06282; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06283; RV64ZVFHMIN-NEXT:    sb a0, 121(sp)6284; RV64ZVFHMIN-NEXT:    lh a0, 240(sp)6285; RV64ZVFHMIN-NEXT:    vmv.x.s a4, v126286; RV64ZVFHMIN-NEXT:    vmv.x.s a5, v146287; RV64ZVFHMIN-NEXT:    vmv.x.s a6, v166288; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06289; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06290; RV64ZVFHMIN-NEXT:    sb a0, 120(sp)6291; RV64ZVFHMIN-NEXT:    lh a0, 238(sp)6292; RV64ZVFHMIN-NEXT:    vmv.x.s a7, v186293; RV64ZVFHMIN-NEXT:    vmv.x.s t0, v206294; RV64ZVFHMIN-NEXT:    vmv.x.s t1, v226295; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06296; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06297; RV64ZVFHMIN-NEXT:    sb a0, 119(sp)6298; RV64ZVFHMIN-NEXT:    lh a0, 236(sp)6299; RV64ZVFHMIN-NEXT:    vmv.x.s t2, v86300; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a36301; RV64ZVFHMIN-NEXT:    flt.h a3, fa5, fa06302; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06303; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06304; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a46305; RV64ZVFHMIN-NEXT:    sb a0, 118(sp)6306; RV64ZVFHMIN-NEXT:    lh a0, 234(sp)6307; RV64ZVFHMIN-NEXT:    flt.h a4, fa5, fa06308; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a56309; RV64ZVFHMIN-NEXT:    flt.h a5, fa5, fa06310; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06311; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06312; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a66313; RV64ZVFHMIN-NEXT:    sb a0, 117(sp)6314; RV64ZVFHMIN-NEXT:    lh a0, 232(sp)6315; RV64ZVFHMIN-NEXT:    flt.h a6, fa5, fa06316; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a76317; RV64ZVFHMIN-NEXT:    flt.h a7, fa5, fa06318; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06319; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06320; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t06321; RV64ZVFHMIN-NEXT:    sb a0, 116(sp)6322; RV64ZVFHMIN-NEXT:    lh a0, 230(sp)6323; RV64ZVFHMIN-NEXT:    flt.h t0, fa5, fa06324; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t16325; RV64ZVFHMIN-NEXT:    flt.h t1, fa5, fa06326; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06327; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06328; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, t26329; RV64ZVFHMIN-NEXT:    sb a0, 115(sp)6330; RV64ZVFHMIN-NEXT:    lh a0, 228(sp)6331; RV64ZVFHMIN-NEXT:    sb a6, 76(sp)6332; RV64ZVFHMIN-NEXT:    sb a5, 77(sp)6333; RV64ZVFHMIN-NEXT:    sb a4, 78(sp)6334; RV64ZVFHMIN-NEXT:    sb a3, 79(sp)6335; RV64ZVFHMIN-NEXT:    flt.h a3, fa5, fa06336; RV64ZVFHMIN-NEXT:    sb a3, 72(sp)6337; RV64ZVFHMIN-NEXT:    sb t1, 73(sp)6338; RV64ZVFHMIN-NEXT:    sb t0, 74(sp)6339; RV64ZVFHMIN-NEXT:    sb a7, 75(sp)6340; RV64ZVFHMIN-NEXT:    fmv.h.x fa5, a06341; RV64ZVFHMIN-NEXT:    flt.h a0, fa5, fa06342; RV64ZVFHMIN-NEXT:    sb a0, 114(sp)6343; RV64ZVFHMIN-NEXT:    addi a0, sp, 646344; RV64ZVFHMIN-NEXT:    vsetvli zero, a2, e8, m4, ta, ma6345; RV64ZVFHMIN-NEXT:    vle8.v v8, (a0)6346; RV64ZVFHMIN-NEXT:    vand.vi v8, v8, 16347; RV64ZVFHMIN-NEXT:    vmsne.vi v12, v8, 06348; RV64ZVFHMIN-NEXT:    vsm.v v12, (a1)6349; RV64ZVFHMIN-NEXT:    addi sp, s0, -3846350; RV64ZVFHMIN-NEXT:    .cfi_def_cfa sp, 3846351; RV64ZVFHMIN-NEXT:    ld ra, 376(sp) # 8-byte Folded Reload6352; RV64ZVFHMIN-NEXT:    ld s0, 368(sp) # 8-byte Folded Reload6353; RV64ZVFHMIN-NEXT:    .cfi_restore ra6354; RV64ZVFHMIN-NEXT:    .cfi_restore s06355; RV64ZVFHMIN-NEXT:    addi sp, sp, 3846356; RV64ZVFHMIN-NEXT:    .cfi_def_cfa_offset 06357; RV64ZVFHMIN-NEXT:    ret6358  %a = load <64 x half>, ptr %x6359  %b = insertelement <64 x half> poison, half %y, i32 06360  %c = shufflevector <64 x half> %b, <64 x half> poison, <64 x i32> zeroinitializer6361  %d = fcmp nnan ugt <64 x half> %c, %a6362  store <64 x i1> %d, ptr %z6363  ret void6364}6365 6366define void @fcmp_ueq_fv_v32f32(ptr %x, float %y, ptr %z) {6367; CHECK-LABEL: fcmp_ueq_fv_v32f32:6368; CHECK:       # %bb.0:6369; CHECK-NEXT:    li a2, 326370; CHECK-NEXT:    vsetvli zero, a2, e32, m8, ta, ma6371; CHECK-NEXT:    vle32.v v8, (a0)6372; CHECK-NEXT:    vmfgt.vf v16, v8, fa06373; CHECK-NEXT:    vmflt.vf v17, v8, fa06374; CHECK-NEXT:    vmnor.mm v8, v17, v166375; CHECK-NEXT:    vsm.v v8, (a1)6376; CHECK-NEXT:    ret6377  %a = load <32 x float>, ptr %x6378  %b = insertelement <32 x float> poison, float %y, i32 06379  %c = shufflevector <32 x float> %b, <32 x float> poison, <32 x i32> zeroinitializer6380  %d = fcmp ueq <32 x float> %c, %a6381  store <32 x i1> %d, ptr %z6382  ret void6383}6384 6385define void @fcmp_ueq_fv_v32f32_nonans(ptr %x, float %y, ptr %z) {6386; CHECK-LABEL: fcmp_ueq_fv_v32f32_nonans:6387; CHECK:       # %bb.0:6388; CHECK-NEXT:    li a2, 326389; CHECK-NEXT:    vsetvli zero, a2, e32, m8, ta, ma6390; CHECK-NEXT:    vle32.v v8, (a0)6391; CHECK-NEXT:    vmfeq.vf v16, v8, fa06392; CHECK-NEXT:    vsm.v v16, (a1)6393; CHECK-NEXT:    ret6394  %a = load <32 x float>, ptr %x6395  %b = insertelement <32 x float> poison, float %y, i32 06396  %c = shufflevector <32 x float> %b, <32 x float> poison, <32 x i32> zeroinitializer6397  %d = fcmp nnan ueq <32 x float> %c, %a6398  store <32 x i1> %d, ptr %z6399  ret void6400}6401 6402define void @fcmp_one_fv_v8f64(ptr %x, double %y, ptr %z) {6403; CHECK-LABEL: fcmp_one_fv_v8f64:6404; CHECK:       # %bb.0:6405; CHECK-NEXT:    vsetivli zero, 16, e64, m8, ta, ma6406; CHECK-NEXT:    vle64.v v8, (a0)6407; CHECK-NEXT:    vmfgt.vf v16, v8, fa06408; CHECK-NEXT:    vmflt.vf v17, v8, fa06409; CHECK-NEXT:    vmor.mm v8, v17, v166410; CHECK-NEXT:    vsm.v v8, (a1)6411; CHECK-NEXT:    ret6412  %a = load <16 x double>, ptr %x6413  %b = insertelement <16 x double> poison, double %y, i32 06414  %c = shufflevector <16 x double> %b, <16 x double> poison, <16 x i32> zeroinitializer6415  %d = fcmp one <16 x double> %c, %a6416  store <16 x i1> %d, ptr %z6417  ret void6418}6419 6420define void @fcmp_one_fv_v8f64_nonans(ptr %x, double %y, ptr %z) {6421; CHECK-LABEL: fcmp_one_fv_v8f64_nonans:6422; CHECK:       # %bb.0:6423; CHECK-NEXT:    vsetivli zero, 16, e64, m8, ta, ma6424; CHECK-NEXT:    vle64.v v8, (a0)6425; CHECK-NEXT:    vmfne.vf v16, v8, fa06426; CHECK-NEXT:    vsm.v v16, (a1)6427; CHECK-NEXT:    ret6428  %a = load <16 x double>, ptr %x6429  %b = insertelement <16 x double> poison, double %y, i32 06430  %c = shufflevector <16 x double> %b, <16 x double> poison, <16 x i32> zeroinitializer6431  %d = fcmp nnan one <16 x double> %c, %a6432  store <16 x i1> %d, ptr %z6433  ret void6434}6435 6436define void @fcmp_ord_fv_v4f16(ptr %x, half %y, ptr %z) {6437; ZVFH-LABEL: fcmp_ord_fv_v4f16:6438; ZVFH:       # %bb.0:6439; ZVFH-NEXT:    vsetivli zero, 4, e16, mf2, ta, ma6440; ZVFH-NEXT:    vle16.v v8, (a0)6441; ZVFH-NEXT:    vfmv.v.f v9, fa06442; ZVFH-NEXT:    vmfeq.vf v9, v9, fa06443; ZVFH-NEXT:    vmfeq.vv v8, v8, v86444; ZVFH-NEXT:    vmand.mm v0, v9, v86445; ZVFH-NEXT:    vsetvli zero, zero, e8, mf4, ta, ma6446; ZVFH-NEXT:    vmv.v.i v8, 06447; ZVFH-NEXT:    vmerge.vim v8, v8, 1, v06448; ZVFH-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma6449; ZVFH-NEXT:    vmv.v.i v9, 06450; ZVFH-NEXT:    vsetivli zero, 4, e8, mf2, tu, ma6451; ZVFH-NEXT:    vmv.v.v v9, v86452; ZVFH-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma6453; ZVFH-NEXT:    vmsne.vi v8, v9, 06454; ZVFH-NEXT:    vsm.v v8, (a1)6455; ZVFH-NEXT:    ret6456;6457; ZVFHMIN-LABEL: fcmp_ord_fv_v4f16:6458; ZVFHMIN:       # %bb.0:6459; ZVFHMIN-NEXT:    vsetivli zero, 4, e16, mf2, ta, ma6460; ZVFHMIN-NEXT:    vle16.v v8, (a0)6461; ZVFHMIN-NEXT:    fmv.x.h a0, fa06462; ZVFHMIN-NEXT:    vmv.v.x v9, a06463; ZVFHMIN-NEXT:    vfwcvt.f.f.v v10, v96464; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m1, ta, ma6465; ZVFHMIN-NEXT:    vmfeq.vv v9, v10, v106466; ZVFHMIN-NEXT:    vsetvli zero, zero, e16, mf2, ta, ma6467; ZVFHMIN-NEXT:    vfwcvt.f.f.v v10, v86468; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, m1, ta, ma6469; ZVFHMIN-NEXT:    vmfeq.vv v8, v10, v106470; ZVFHMIN-NEXT:    vmand.mm v0, v9, v86471; ZVFHMIN-NEXT:    vsetvli zero, zero, e8, mf4, ta, ma6472; ZVFHMIN-NEXT:    vmv.v.i v8, 06473; ZVFHMIN-NEXT:    vmerge.vim v8, v8, 1, v06474; ZVFHMIN-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma6475; ZVFHMIN-NEXT:    vmv.v.i v9, 06476; ZVFHMIN-NEXT:    vsetivli zero, 4, e8, mf2, tu, ma6477; ZVFHMIN-NEXT:    vmv.v.v v9, v86478; ZVFHMIN-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma6479; ZVFHMIN-NEXT:    vmsne.vi v8, v9, 06480; ZVFHMIN-NEXT:    vsm.v v8, (a1)6481; ZVFHMIN-NEXT:    ret6482  %a = load <4 x half>, ptr %x6483  %b = insertelement <4 x half> poison, half %y, i32 06484  %c = shufflevector <4 x half> %b, <4 x half> poison, <4 x i32> zeroinitializer6485  %d = fcmp ord <4 x half> %c, %a6486  store <4 x i1> %d, ptr %z6487  ret void6488}6489 6490define void @fcmp_uno_fv_v4f16(ptr %x, half %y, ptr %z) {6491; ZVFH-LABEL: fcmp_uno_fv_v4f16:6492; ZVFH:       # %bb.0:6493; ZVFH-NEXT:    vsetivli zero, 2, e16, mf4, ta, ma6494; ZVFH-NEXT:    vle16.v v8, (a0)6495; ZVFH-NEXT:    vfmv.v.f v9, fa06496; ZVFH-NEXT:    vmfne.vf v9, v9, fa06497; ZVFH-NEXT:    vmfne.vv v8, v8, v86498; ZVFH-NEXT:    vmor.mm v0, v9, v86499; ZVFH-NEXT:    vsetvli zero, zero, e8, mf8, ta, ma6500; ZVFH-NEXT:    vmv.v.i v8, 06501; ZVFH-NEXT:    vmerge.vim v8, v8, 1, v06502; ZVFH-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma6503; ZVFH-NEXT:    vmv.v.i v9, 06504; ZVFH-NEXT:    vsetivli zero, 2, e8, mf2, tu, ma6505; ZVFH-NEXT:    vmv.v.v v9, v86506; ZVFH-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma6507; ZVFH-NEXT:    vmsne.vi v8, v9, 06508; ZVFH-NEXT:    vsm.v v8, (a1)6509; ZVFH-NEXT:    ret6510;6511; ZVFHMIN-LABEL: fcmp_uno_fv_v4f16:6512; ZVFHMIN:       # %bb.0:6513; ZVFHMIN-NEXT:    vsetivli zero, 2, e16, mf4, ta, ma6514; ZVFHMIN-NEXT:    vle16.v v8, (a0)6515; ZVFHMIN-NEXT:    fmv.x.h a0, fa06516; ZVFHMIN-NEXT:    vmv.v.x v9, a06517; ZVFHMIN-NEXT:    vfwcvt.f.f.v v10, v96518; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, mf2, ta, ma6519; ZVFHMIN-NEXT:    vmfne.vv v9, v10, v106520; ZVFHMIN-NEXT:    vsetvli zero, zero, e16, mf4, ta, ma6521; ZVFHMIN-NEXT:    vfwcvt.f.f.v v10, v86522; ZVFHMIN-NEXT:    vsetvli zero, zero, e32, mf2, ta, ma6523; ZVFHMIN-NEXT:    vmfne.vv v8, v10, v106524; ZVFHMIN-NEXT:    vmor.mm v0, v9, v86525; ZVFHMIN-NEXT:    vsetvli zero, zero, e8, mf8, ta, ma6526; ZVFHMIN-NEXT:    vmv.v.i v8, 06527; ZVFHMIN-NEXT:    vmerge.vim v8, v8, 1, v06528; ZVFHMIN-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma6529; ZVFHMIN-NEXT:    vmv.v.i v9, 06530; ZVFHMIN-NEXT:    vsetivli zero, 2, e8, mf2, tu, ma6531; ZVFHMIN-NEXT:    vmv.v.v v9, v86532; ZVFHMIN-NEXT:    vsetivli zero, 8, e8, mf2, ta, ma6533; ZVFHMIN-NEXT:    vmsne.vi v8, v9, 06534; ZVFHMIN-NEXT:    vsm.v v8, (a1)6535; ZVFHMIN-NEXT:    ret6536  %a = load <2 x half>, ptr %x6537  %b = insertelement <2 x half> poison, half %y, i32 06538  %c = shufflevector <2 x half> %b, <2 x half> poison, <2 x i32> zeroinitializer6539  %d = fcmp uno <2 x half> %c, %a6540  store <2 x i1> %d, ptr %z6541  ret void6542}6543