1*b264944eSSjoerd Meijer; RUN: llc < %s -mtriple=arm-eabi -mattr=+v8.2a,+neon,+fullfp16 -float-abi=hard | FileCheck %s 2*b264944eSSjoerd Meijer; RUN: llc < %s -mtriple=thumbv7a -mattr=+v8.2a,+neon,+fullfp16 -float-abi=hard | FileCheck %s 3*b264944eSSjoerd Meijer 4*b264944eSSjoerd Meijer; 4-element vector 5*b264944eSSjoerd Meijer 6*b264944eSSjoerd Meijer; Ordered 7*b264944eSSjoerd Meijer 8*b264944eSSjoerd Meijerdefine <4 x half> @test1(<4 x half> %A, <4 x half> %B) { 9*b264944eSSjoerd Meijer; CHECK-LABEL: test1: 10*b264944eSSjoerd Meijer; CHECK: vmaxnm.f16 d0, d0, d1 11*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 12*b264944eSSjoerd Meijer %tmp3 = fcmp fast ogt <4 x half> %A, %B 13*b264944eSSjoerd Meijer %tmp4 = select <4 x i1> %tmp3, <4 x half> %A, <4 x half> %B 14*b264944eSSjoerd Meijer ret <4 x half> %tmp4 15*b264944eSSjoerd Meijer} 16*b264944eSSjoerd Meijer 17*b264944eSSjoerd Meijerdefine <4 x half> @test2(<4 x half> %A, <4 x half> %B) { 18*b264944eSSjoerd Meijer; CHECK-LABEL: test2: 19*b264944eSSjoerd Meijer; CHECK: vminnm.f16 d0, d0, d1 20*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 21*b264944eSSjoerd Meijer %tmp3 = fcmp fast ogt <4 x half> %A, %B 22*b264944eSSjoerd Meijer %tmp4 = select <4 x i1> %tmp3, <4 x half> %B, <4 x half> %A 23*b264944eSSjoerd Meijer ret <4 x half> %tmp4 24*b264944eSSjoerd Meijer} 25*b264944eSSjoerd Meijer 26*b264944eSSjoerd Meijerdefine <4 x half> @test3(<4 x half> %A, <4 x half> %B) { 27*b264944eSSjoerd Meijer; CHECK-LABEL: test3: 28*b264944eSSjoerd Meijer; CHECK: vminnm.f16 d0, d0, d1 29*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 30*b264944eSSjoerd Meijer %tmp3 = fcmp fast oge <4 x half> %A, %B 31*b264944eSSjoerd Meijer %tmp4 = select <4 x i1> %tmp3, <4 x half> %B, <4 x half> %A 32*b264944eSSjoerd Meijer ret <4 x half> %tmp4 33*b264944eSSjoerd Meijer} 34*b264944eSSjoerd Meijer 35*b264944eSSjoerd Meijerdefine <4 x half> @test4(<4 x half> %A, <4 x half> %B) { 36*b264944eSSjoerd Meijer; CHECK-LABEL: test4: 37*b264944eSSjoerd Meijer; CHECK: vmaxnm.f16 d0, d0, d1 38*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 39*b264944eSSjoerd Meijer %tmp3 = fcmp fast oge <4 x half> %A, %B 40*b264944eSSjoerd Meijer %tmp4 = select <4 x i1> %tmp3, <4 x half> %A, <4 x half> %B 41*b264944eSSjoerd Meijer ret <4 x half> %tmp4 42*b264944eSSjoerd Meijer} 43*b264944eSSjoerd Meijer 44*b264944eSSjoerd Meijerdefine <4 x half> @test5(<4 x half> %A, <4 x half> %B) { 45*b264944eSSjoerd Meijer; CHECK-LABEL: test5: 46*b264944eSSjoerd Meijer; CHECK: vminnm.f16 d0, d0, d1 47*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 48*b264944eSSjoerd Meijer %tmp3 = fcmp fast olt <4 x half> %A, %B 49*b264944eSSjoerd Meijer %tmp4 = select <4 x i1> %tmp3, <4 x half> %A, <4 x half> %B 50*b264944eSSjoerd Meijer ret <4 x half> %tmp4 51*b264944eSSjoerd Meijer} 52*b264944eSSjoerd Meijer 53*b264944eSSjoerd Meijerdefine <4 x half> @test6(<4 x half> %A, <4 x half> %B) { 54*b264944eSSjoerd Meijer; CHECK-LABEL: test6: 55*b264944eSSjoerd Meijer; CHECK: vmaxnm.f16 d0, d0, d1 56*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 57*b264944eSSjoerd Meijer %tmp3 = fcmp fast olt <4 x half> %A, %B 58*b264944eSSjoerd Meijer %tmp4 = select <4 x i1> %tmp3, <4 x half> %B, <4 x half> %A 59*b264944eSSjoerd Meijer ret <4 x half> %tmp4 60*b264944eSSjoerd Meijer} 61*b264944eSSjoerd Meijer 62*b264944eSSjoerd Meijerdefine <4 x half> @test7(<4 x half> %A, <4 x half> %B) { 63*b264944eSSjoerd Meijer; CHECK-LABEL: test7: 64*b264944eSSjoerd Meijer; CHECK: vminnm.f16 d0, d0, d1 65*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 66*b264944eSSjoerd Meijer %tmp3 = fcmp fast ole <4 x half> %A, %B 67*b264944eSSjoerd Meijer %tmp4 = select <4 x i1> %tmp3, <4 x half> %A, <4 x half> %B 68*b264944eSSjoerd Meijer ret <4 x half> %tmp4 69*b264944eSSjoerd Meijer} 70*b264944eSSjoerd Meijer 71*b264944eSSjoerd Meijerdefine <4 x half> @test8(<4 x half> %A, <4 x half> %B) { 72*b264944eSSjoerd Meijer; CHECK-LABEL: test8: 73*b264944eSSjoerd Meijer; CHECK: vmaxnm.f16 d0, d0, d1 74*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 75*b264944eSSjoerd Meijer %tmp3 = fcmp fast ole <4 x half> %A, %B 76*b264944eSSjoerd Meijer %tmp4 = select <4 x i1> %tmp3, <4 x half> %B, <4 x half> %A 77*b264944eSSjoerd Meijer ret <4 x half> %tmp4 78*b264944eSSjoerd Meijer} 79*b264944eSSjoerd Meijer 80*b264944eSSjoerd Meijer; Unordered 81*b264944eSSjoerd Meijer 82*b264944eSSjoerd Meijerdefine <4 x half> @test11(<4 x half> %A, <4 x half> %B) { 83*b264944eSSjoerd Meijer; CHECK-LABEL: test11: 84*b264944eSSjoerd Meijer; CHECK: vmaxnm.f16 d0, d0, d1 85*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 86*b264944eSSjoerd Meijer %tmp3 = fcmp fast ugt <4 x half> %A, %B 87*b264944eSSjoerd Meijer %tmp4 = select <4 x i1> %tmp3, <4 x half> %A, <4 x half> %B 88*b264944eSSjoerd Meijer ret <4 x half> %tmp4 89*b264944eSSjoerd Meijer} 90*b264944eSSjoerd Meijer 91*b264944eSSjoerd Meijerdefine <4 x half> @test12(<4 x half> %A, <4 x half> %B) { 92*b264944eSSjoerd Meijer; CHECK-LABEL: test12: 93*b264944eSSjoerd Meijer; CHECK: vminnm.f16 d0, d0, d1 94*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 95*b264944eSSjoerd Meijer %tmp3 = fcmp fast ugt <4 x half> %A, %B 96*b264944eSSjoerd Meijer %tmp4 = select <4 x i1> %tmp3, <4 x half> %B, <4 x half> %A 97*b264944eSSjoerd Meijer ret <4 x half> %tmp4 98*b264944eSSjoerd Meijer} 99*b264944eSSjoerd Meijer 100*b264944eSSjoerd Meijerdefine <4 x half> @test13(<4 x half> %A, <4 x half> %B) { 101*b264944eSSjoerd Meijer; CHECK-LABEL: test13: 102*b264944eSSjoerd Meijer; CHECK: vminnm.f16 d0, d0, d1 103*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 104*b264944eSSjoerd Meijer %tmp3 = fcmp fast uge <4 x half> %A, %B 105*b264944eSSjoerd Meijer %tmp4 = select <4 x i1> %tmp3, <4 x half> %B, <4 x half> %A 106*b264944eSSjoerd Meijer ret <4 x half> %tmp4 107*b264944eSSjoerd Meijer} 108*b264944eSSjoerd Meijer 109*b264944eSSjoerd Meijerdefine <4 x half> @test14(<4 x half> %A, <4 x half> %B) { 110*b264944eSSjoerd Meijer; CHECK-LABEL: test14: 111*b264944eSSjoerd Meijer; CHECK: vmaxnm.f16 d0, d0, d1 112*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 113*b264944eSSjoerd Meijer %tmp3 = fcmp fast uge <4 x half> %A, %B 114*b264944eSSjoerd Meijer %tmp4 = select <4 x i1> %tmp3, <4 x half> %A, <4 x half> %B 115*b264944eSSjoerd Meijer ret <4 x half> %tmp4 116*b264944eSSjoerd Meijer} 117*b264944eSSjoerd Meijer 118*b264944eSSjoerd Meijerdefine <4 x half> @test15(<4 x half> %A, <4 x half> %B) { 119*b264944eSSjoerd Meijer; CHECK-LABEL: test15: 120*b264944eSSjoerd Meijer; CHECK: vminnm.f16 d0, d0, d1 121*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 122*b264944eSSjoerd Meijer %tmp3 = fcmp fast ult <4 x half> %A, %B 123*b264944eSSjoerd Meijer %tmp4 = select <4 x i1> %tmp3, <4 x half> %A, <4 x half> %B 124*b264944eSSjoerd Meijer ret <4 x half> %tmp4 125*b264944eSSjoerd Meijer} 126*b264944eSSjoerd Meijer 127*b264944eSSjoerd Meijerdefine <4 x half> @test16(<4 x half> %A, <4 x half> %B) { 128*b264944eSSjoerd Meijer; CHECK-LABEL: test16: 129*b264944eSSjoerd Meijer; CHECK: vmaxnm.f16 d0, d0, d1 130*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 131*b264944eSSjoerd Meijer %tmp3 = fcmp fast ult <4 x half> %A, %B 132*b264944eSSjoerd Meijer %tmp4 = select <4 x i1> %tmp3, <4 x half> %B, <4 x half> %A 133*b264944eSSjoerd Meijer ret <4 x half> %tmp4 134*b264944eSSjoerd Meijer} 135*b264944eSSjoerd Meijer 136*b264944eSSjoerd Meijerdefine <4 x half> @test17(<4 x half> %A, <4 x half> %B) { 137*b264944eSSjoerd Meijer; CHECK-LABEL: test17: 138*b264944eSSjoerd Meijer; CHECK: vminnm.f16 d0, d0, d1 139*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 140*b264944eSSjoerd Meijer %tmp3 = fcmp fast ule <4 x half> %A, %B 141*b264944eSSjoerd Meijer %tmp4 = select <4 x i1> %tmp3, <4 x half> %A, <4 x half> %B 142*b264944eSSjoerd Meijer ret <4 x half> %tmp4 143*b264944eSSjoerd Meijer} 144*b264944eSSjoerd Meijer 145*b264944eSSjoerd Meijerdefine <4 x half> @test18(<4 x half> %A, <4 x half> %B) { 146*b264944eSSjoerd Meijer; CHECK-LABEL: test18: 147*b264944eSSjoerd Meijer; CHECK: vmaxnm.f16 d0, d0, d1 148*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 149*b264944eSSjoerd Meijer %tmp3 = fcmp fast ule <4 x half> %A, %B 150*b264944eSSjoerd Meijer %tmp4 = select <4 x i1> %tmp3, <4 x half> %B, <4 x half> %A 151*b264944eSSjoerd Meijer ret <4 x half> %tmp4 152*b264944eSSjoerd Meijer} 153*b264944eSSjoerd Meijer 154*b264944eSSjoerd Meijer; 8-element vector 155*b264944eSSjoerd Meijer 156*b264944eSSjoerd Meijer; Ordered 157*b264944eSSjoerd Meijer 158*b264944eSSjoerd Meijerdefine <8 x half> @test201(<8 x half> %A, <8 x half> %B) { 159*b264944eSSjoerd Meijer; CHECK-LABEL: test201: 160*b264944eSSjoerd Meijer; CHECK: vmaxnm.f16 q0, q0, q1 161*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 162*b264944eSSjoerd Meijer %tmp3 = fcmp fast ogt <8 x half> %A, %B 163*b264944eSSjoerd Meijer %tmp4 = select <8 x i1> %tmp3, <8 x half> %A, <8 x half> %B 164*b264944eSSjoerd Meijer ret <8 x half> %tmp4 165*b264944eSSjoerd Meijer} 166*b264944eSSjoerd Meijer 167*b264944eSSjoerd Meijerdefine <8 x half> @test202(<8 x half> %A, <8 x half> %B) { 168*b264944eSSjoerd Meijer; CHECK-LABEL: test202: 169*b264944eSSjoerd Meijer; CHECK: vminnm.f16 q0, q0, q1 170*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 171*b264944eSSjoerd Meijer %tmp3 = fcmp fast ogt <8 x half> %A, %B 172*b264944eSSjoerd Meijer %tmp4 = select <8 x i1> %tmp3, <8 x half> %B, <8 x half> %A 173*b264944eSSjoerd Meijer ret <8 x half> %tmp4 174*b264944eSSjoerd Meijer} 175*b264944eSSjoerd Meijer 176*b264944eSSjoerd Meijerdefine <8 x half> @test203(<8 x half> %A, <8 x half> %B) { 177*b264944eSSjoerd Meijer; CHECK-LABEL: test203: 178*b264944eSSjoerd Meijer; CHECK: vmaxnm.f16 q0, q0, q1 179*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 180*b264944eSSjoerd Meijer %tmp3 = fcmp fast oge <8 x half> %A, %B 181*b264944eSSjoerd Meijer %tmp4 = select <8 x i1> %tmp3, <8 x half> %A, <8 x half> %B 182*b264944eSSjoerd Meijer ret <8 x half> %tmp4 183*b264944eSSjoerd Meijer} 184*b264944eSSjoerd Meijer 185*b264944eSSjoerd Meijerdefine <8 x half> @test204(<8 x half> %A, <8 x half> %B) { 186*b264944eSSjoerd Meijer; CHECK-LABEL: test204: 187*b264944eSSjoerd Meijer; CHECK: vminnm.f16 q0, q0, q1 188*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 189*b264944eSSjoerd Meijer %tmp3 = fcmp fast oge <8 x half> %A, %B 190*b264944eSSjoerd Meijer %tmp4 = select <8 x i1> %tmp3, <8 x half> %B, <8 x half> %A 191*b264944eSSjoerd Meijer ret <8 x half> %tmp4 192*b264944eSSjoerd Meijer} 193*b264944eSSjoerd Meijer 194*b264944eSSjoerd Meijerdefine <8 x half> @test205(<8 x half> %A, <8 x half> %B) { 195*b264944eSSjoerd Meijer; CHECK-LABEL: test205: 196*b264944eSSjoerd Meijer; CHECK: vminnm.f16 q0, q0, q1 197*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 198*b264944eSSjoerd Meijer %tmp3 = fcmp fast olt <8 x half> %A, %B 199*b264944eSSjoerd Meijer %tmp4 = select <8 x i1> %tmp3, <8 x half> %A, <8 x half> %B 200*b264944eSSjoerd Meijer ret <8 x half> %tmp4 201*b264944eSSjoerd Meijer} 202*b264944eSSjoerd Meijer 203*b264944eSSjoerd Meijerdefine <8 x half> @test206(<8 x half> %A, <8 x half> %B) { 204*b264944eSSjoerd Meijer; CHECK-LABEL: test206: 205*b264944eSSjoerd Meijer; CHECK: vmaxnm.f16 q0, q0, q1 206*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 207*b264944eSSjoerd Meijer %tmp3 = fcmp fast olt <8 x half> %A, %B 208*b264944eSSjoerd Meijer %tmp4 = select <8 x i1> %tmp3, <8 x half> %B, <8 x half> %A 209*b264944eSSjoerd Meijer ret <8 x half> %tmp4 210*b264944eSSjoerd Meijer} 211*b264944eSSjoerd Meijer 212*b264944eSSjoerd Meijerdefine <8 x half> @test207(<8 x half> %A, <8 x half> %B) { 213*b264944eSSjoerd Meijer; CHECK-LABEL: test207: 214*b264944eSSjoerd Meijer; CHECK: vminnm.f16 q0, q0, q1 215*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 216*b264944eSSjoerd Meijer %tmp3 = fcmp fast ole <8 x half> %A, %B 217*b264944eSSjoerd Meijer %tmp4 = select <8 x i1> %tmp3, <8 x half> %A, <8 x half> %B 218*b264944eSSjoerd Meijer ret <8 x half> %tmp4 219*b264944eSSjoerd Meijer} 220*b264944eSSjoerd Meijer 221*b264944eSSjoerd Meijerdefine <8 x half> @test208(<8 x half> %A, <8 x half> %B) { 222*b264944eSSjoerd Meijer; CHECK-LABEL: test208: 223*b264944eSSjoerd Meijer; CHECK: vmaxnm.f16 q0, q0, q1 224*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 225*b264944eSSjoerd Meijer %tmp3 = fcmp fast ole <8 x half> %A, %B 226*b264944eSSjoerd Meijer %tmp4 = select <8 x i1> %tmp3, <8 x half> %B, <8 x half> %A 227*b264944eSSjoerd Meijer ret <8 x half> %tmp4 228*b264944eSSjoerd Meijer} 229*b264944eSSjoerd Meijer 230*b264944eSSjoerd Meijer; Unordered 231*b264944eSSjoerd Meijer 232*b264944eSSjoerd Meijerdefine <8 x half> @test209(<8 x half> %A, <8 x half> %B) { 233*b264944eSSjoerd Meijer; CHECK-LABEL: test209: 234*b264944eSSjoerd Meijer; CHECK: vmaxnm.f16 q0, q0, q1 235*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 236*b264944eSSjoerd Meijer %tmp3 = fcmp fast ugt <8 x half> %A, %B 237*b264944eSSjoerd Meijer %tmp4 = select <8 x i1> %tmp3, <8 x half> %A, <8 x half> %B 238*b264944eSSjoerd Meijer ret <8 x half> %tmp4 239*b264944eSSjoerd Meijer} 240*b264944eSSjoerd Meijer 241*b264944eSSjoerd Meijerdefine <8 x half> @test210(<8 x half> %A, <8 x half> %B) { 242*b264944eSSjoerd Meijer; CHECK-LABEL: test210: 243*b264944eSSjoerd Meijer; CHECK: vminnm.f16 q0, q0, q1 244*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 245*b264944eSSjoerd Meijer %tmp3 = fcmp fast ugt <8 x half> %A, %B 246*b264944eSSjoerd Meijer %tmp4 = select <8 x i1> %tmp3, <8 x half> %B, <8 x half> %A 247*b264944eSSjoerd Meijer ret <8 x half> %tmp4 248*b264944eSSjoerd Meijer} 249*b264944eSSjoerd Meijer 250*b264944eSSjoerd Meijerdefine <8 x half> @test211(<8 x half> %A, <8 x half> %B) { 251*b264944eSSjoerd Meijer; CHECK-LABEL: test211: 252*b264944eSSjoerd Meijer; CHECK: vmaxnm.f16 q0, q0, q1 253*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 254*b264944eSSjoerd Meijer %tmp3 = fcmp fast uge <8 x half> %A, %B 255*b264944eSSjoerd Meijer %tmp4 = select <8 x i1> %tmp3, <8 x half> %A, <8 x half> %B 256*b264944eSSjoerd Meijer ret <8 x half> %tmp4 257*b264944eSSjoerd Meijer} 258*b264944eSSjoerd Meijer 259*b264944eSSjoerd Meijerdefine <8 x half> @test214(<8 x half> %A, <8 x half> %B) { 260*b264944eSSjoerd Meijer; CHECK-LABEL: test214: 261*b264944eSSjoerd Meijer; CHECK: vminnm.f16 q0, q0, q1 262*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 263*b264944eSSjoerd Meijer %tmp3 = fcmp fast uge <8 x half> %A, %B 264*b264944eSSjoerd Meijer %tmp4 = select <8 x i1> %tmp3, <8 x half> %B, <8 x half> %A 265*b264944eSSjoerd Meijer ret <8 x half> %tmp4 266*b264944eSSjoerd Meijer} 267*b264944eSSjoerd Meijer 268*b264944eSSjoerd Meijerdefine <8 x half> @test215(<8 x half> %A, <8 x half> %B) { 269*b264944eSSjoerd Meijer; CHECK-LABEL: test215: 270*b264944eSSjoerd Meijer; CHECK: vminnm.f16 q0, q0, q1 271*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 272*b264944eSSjoerd Meijer %tmp3 = fcmp fast ult <8 x half> %A, %B 273*b264944eSSjoerd Meijer %tmp4 = select <8 x i1> %tmp3, <8 x half> %A, <8 x half> %B 274*b264944eSSjoerd Meijer ret <8 x half> %tmp4 275*b264944eSSjoerd Meijer} 276*b264944eSSjoerd Meijer 277*b264944eSSjoerd Meijerdefine <8 x half> @test216(<8 x half> %A, <8 x half> %B) { 278*b264944eSSjoerd Meijer; CHECK-LABEL: test216: 279*b264944eSSjoerd Meijer; CHECK: vmaxnm.f16 q0, q0, q1 280*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 281*b264944eSSjoerd Meijer %tmp3 = fcmp fast ult <8 x half> %A, %B 282*b264944eSSjoerd Meijer %tmp4 = select <8 x i1> %tmp3, <8 x half> %B, <8 x half> %A 283*b264944eSSjoerd Meijer ret <8 x half> %tmp4 284*b264944eSSjoerd Meijer} 285*b264944eSSjoerd Meijer 286*b264944eSSjoerd Meijerdefine <8 x half> @test217(<8 x half> %A, <8 x half> %B) { 287*b264944eSSjoerd Meijer; CHECK-LABEL: test217: 288*b264944eSSjoerd Meijer; CHECK: vminnm.f16 q0, q0, q1 289*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 290*b264944eSSjoerd Meijer %tmp3 = fcmp fast ule <8 x half> %A, %B 291*b264944eSSjoerd Meijer %tmp4 = select <8 x i1> %tmp3, <8 x half> %A, <8 x half> %B 292*b264944eSSjoerd Meijer ret <8 x half> %tmp4 293*b264944eSSjoerd Meijer} 294*b264944eSSjoerd Meijer 295*b264944eSSjoerd Meijerdefine <8 x half> @test218(<8 x half> %A, <8 x half> %B) { 296*b264944eSSjoerd Meijer; CHECK-LABEL: test218: 297*b264944eSSjoerd Meijer; CHECK: vmaxnm.f16 q0, q0, q1 298*b264944eSSjoerd Meijer; CHECK-NEXT: bx lr 299*b264944eSSjoerd Meijer %tmp3 = fcmp fast ule <8 x half> %A, %B 300*b264944eSSjoerd Meijer %tmp4 = select <8 x i1> %tmp3, <8 x half> %B, <8 x half> %A 301*b264944eSSjoerd Meijer ret <8 x half> %tmp4 302*b264944eSSjoerd Meijer} 303