OLD | NEW |
(Empty) | |
| 1 ; Test encoding of MIPS32 floating point comparison |
| 2 |
| 3 ; REQUIRES: allow_dump |
| 4 |
| 5 ; Compile using standalone assembler. |
| 6 ; RUN: %p2i --filetype=asm -i %s --target=mips32 --args -O2 \ |
| 7 ; RUN: --allow-externally-defined-symbols --skip-unimplemented \ |
| 8 ; RUN: | FileCheck %s --check-prefix=ASM |
| 9 |
| 10 ; Show bytes in assembled standalone code. |
| 11 ; RUN: %p2i --filetype=asm -i %s --target=mips32 --assemble --disassemble \ |
| 12 ; RUN: --args -O2 --allow-externally-defined-symbols --skip-unimplemented \ |
| 13 ; RUN: | FileCheck %s --check-prefix=DIS |
| 14 |
| 15 ; Compile using integrated assembler. |
| 16 ; RUN: %p2i --filetype=iasm -i %s --target=mips32 --args -O2 \ |
| 17 ; RUN: --allow-externally-defined-symbols --skip-unimplemented \ |
| 18 ; RUN: | FileCheck %s --check-prefix=IASM |
| 19 |
| 20 ; Show bytes in assembled integrated code. |
| 21 ; RUN: %p2i --filetype=iasm -i %s --target=mips32 --assemble --disassemble \ |
| 22 ; RUN: --args -O2 --allow-externally-defined-symbols --skip-unimplemented \ |
| 23 ; RUN: | FileCheck %s --check-prefix=DIS |
| 24 |
| 25 define internal i32 @fcmpFalseFloat(float %a, float %b) { |
| 26 entry: |
| 27 %cmp = fcmp false float %a, %b |
| 28 %cmp.ret_ext = zext i1 %cmp to i32 |
| 29 ret i32 %cmp.ret_ext |
| 30 } |
| 31 |
| 32 ; ASM-LABEL: fcmpFalseFloat: |
| 33 ; ASM-NEXT: .LfcmpFalseFloat$entry: |
| 34 ; ASM-NEXT: addiu $v0, $zero, 0 |
| 35 ; ASM-NEXT: andi $v0, $v0, 1 |
| 36 ; ASM-NEXT: jr $ra |
| 37 |
| 38 ; DIS-LABEL: 00000000 <fcmpFalseFloat>: |
| 39 ; DIS-NEXT: 0: 24020000 li v0,0 |
| 40 ; DIS-NEXT: 4: 30420001 andi v0,v0,0x1 |
| 41 ; DIS-NEXT: 8: 03e00008 jr ra |
| 42 |
| 43 ; IASM-LABEL: fcmpFalseFloat: |
| 44 ; IASM-NEXT: .LfcmpFalseFloat$entry: |
| 45 ; IASM-NEXT: .byte 0x0 |
| 46 ; IASM-NEXT: .byte 0x0 |
| 47 ; IASM-NEXT: .byte 0x2 |
| 48 ; IASM-NEXT: .byte 0x24 |
| 49 ; IASM-NEXT: .byte 0x1 |
| 50 ; IASM-NEXT: .byte 0x0 |
| 51 ; IASM-NEXT: .byte 0x42 |
| 52 ; IASM-NEXT: .byte 0x30 |
| 53 ; IASM-NEXT: .byte 0x8 |
| 54 ; IASM-NEXT: .byte 0x0 |
| 55 ; IASM-NEXT: .byte 0xe0 |
| 56 ; IASM-NEXT: .byte 0x3 |
| 57 |
| 58 define internal i32 @fcmpFalseDouble(double %a, double %b) { |
| 59 entry: |
| 60 %cmp = fcmp false double %a, %b |
| 61 %cmp.ret_ext = zext i1 %cmp to i32 |
| 62 ret i32 %cmp.ret_ext |
| 63 } |
| 64 |
| 65 ; ASM-LABEL: fcmpFalseDouble: |
| 66 ; ASM-NEXT: .LfcmpFalseDouble$entry: |
| 67 ; ASM-NEXT: addiu $v0, $zero, 0 |
| 68 ; ASM-NEXT: andi $v0, $v0, 1 |
| 69 ; ASM-NEXT: jr $ra |
| 70 |
| 71 ; DIS-LABEL: 00000010 <fcmpFalseDouble>: |
| 72 ; DIS-NEXT: 10: 24020000 li v0,0 |
| 73 ; DIS-NEXT: 14: 30420001 andi v0,v0,0x1 |
| 74 ; DIS-NEXT: 18: 03e00008 jr ra |
| 75 |
| 76 ; IASM-LABEL: fcmpFalseDouble: |
| 77 ; IASM-NEXT: .LfcmpFalseDouble$entry: |
| 78 ; IASM-NEXT: .byte 0x0 |
| 79 ; IASM-NEXT: .byte 0x0 |
| 80 ; IASM-NEXT: .byte 0x2 |
| 81 ; IASM-NEXT: .byte 0x24 |
| 82 ; IASM-NEXT: .byte 0x1 |
| 83 ; IASM-NEXT: .byte 0x0 |
| 84 ; IASM-NEXT: .byte 0x42 |
| 85 ; IASM-NEXT: .byte 0x30 |
| 86 ; IASM-NEXT: .byte 0x8 |
| 87 ; IASM-NEXT: .byte 0x0 |
| 88 ; IASM-NEXT: .byte 0xe0 |
| 89 ; IASM-NEXT: .byte 0x3 |
| 90 |
| 91 define internal i32 @fcmpOeqFloat(float %a, float %b) { |
| 92 entry: |
| 93 %cmp = fcmp oeq float %a, %b |
| 94 %cmp.ret_ext = zext i1 %cmp to i32 |
| 95 ret i32 %cmp.ret_ext |
| 96 } |
| 97 |
| 98 ; ASM-LABEL: fcmpOeqFloat |
| 99 ; ASM-NEXT: .LfcmpOeqFloat$entry: |
| 100 ; ASM-NEXT: c.eq.s $f12, $f14 |
| 101 ; ASM-NEXT: movf $v0, $zero, $fcc0 |
| 102 ; ASM-NEXT: andi $v0, $v0, 1 |
| 103 ; ASM-NEXT: jr $ra |
| 104 |
| 105 ; DIS-LABEL: 00000020 <fcmpOeqFloat>: |
| 106 ; DIS-NEXT: 20: 460e6032 c.eq.s $f12,$f14 |
| 107 ; DIS-NEXT: 24: 00001001 movf v0,zero,$fcc0 |
| 108 ; DIS-NEXT: 28: 30420001 andi v0,v0,0x1 |
| 109 ; DIS-NEXT: 2c: 03e00008 jr ra |
| 110 |
| 111 ; IASM-LABEL: fcmpOeqFloat: |
| 112 ; IASM-NEXT: .LfcmpOeqFloat$entry: |
| 113 ; IASM-NEXT: .byte 0x32 |
| 114 ; IASM-NEXT: .byte 0x60 |
| 115 ; IASM-NEXT: .byte 0xe |
| 116 ; IASM-NEXT: .byte 0x46 |
| 117 ; IASM-NEXT: .byte 0x1 |
| 118 ; IASM-NEXT: .byte 0x10 |
| 119 ; IASM-NEXT: .byte 0x0 |
| 120 ; IASM-NEXT: .byte 0x0 |
| 121 ; IASM-NEXT: .byte 0x1 |
| 122 ; IASM-NEXT: .byte 0x0 |
| 123 ; IASM-NEXT: .byte 0x42 |
| 124 ; IASM-NEXT: .byte 0x30 |
| 125 ; IASM-NEXT: .byte 0x8 |
| 126 ; IASM-NEXT: .byte 0x0 |
| 127 ; IASM-NEXT: .byte 0xe0 |
| 128 ; IASM-NEXT: .byte 0x3 |
| 129 |
| 130 define internal i32 @fcmpOeqDouble(double %a, double %b) { |
| 131 entry: |
| 132 %cmp = fcmp oeq double %a, %b |
| 133 %cmp.ret_ext = zext i1 %cmp to i32 |
| 134 ret i32 %cmp.ret_ext |
| 135 } |
| 136 |
| 137 ; ASM-LABEL: fcmpOeqDouble |
| 138 ; ASM-NEXT: .LfcmpOeqDouble$entry: |
| 139 ; ASM-NEXT: c.eq.d $f12, $f14 |
| 140 ; ASM-NEXT: movf $v0, $zero, $fcc0 |
| 141 ; ASM-NEXT: andi $v0, $v0, 1 |
| 142 ; ASM-NEXT: jr $ra |
| 143 |
| 144 ; DIS-LABEL: 00000040 <fcmpOeqDouble>: |
| 145 ; DIS-NEXT: 40: 462e6032 c.eq.d $f12,$f14 |
| 146 ; DIS-NEXT: 44: 00001001 movf v0,zero,$fcc0 |
| 147 ; DIS-NEXT: 48: 30420001 andi v0,v0,0x1 |
| 148 ; DIS-NEXT: 4c: 03e00008 jr ra |
| 149 |
| 150 ; IASM-LABEL: fcmpOeqDouble: |
| 151 ; IASM-NEXT: .LfcmpOeqDouble$entry: |
| 152 ; IASM-NEXT: .byte 0x32 |
| 153 ; IASM-NEXT: .byte 0x60 |
| 154 ; IASM-NEXT: .byte 0x2e |
| 155 ; IASM-NEXT: .byte 0x46 |
| 156 ; IASM-NEXT: .byte 0x1 |
| 157 ; IASM-NEXT: .byte 0x10 |
| 158 ; IASM-NEXT: .byte 0x0 |
| 159 ; IASM-NEXT: .byte 0x0 |
| 160 ; IASM-NEXT: .byte 0x1 |
| 161 ; IASM-NEXT: .byte 0x0 |
| 162 ; IASM-NEXT: .byte 0x42 |
| 163 ; IASM-NEXT: .byte 0x30 |
| 164 ; IASM-NEXT: .byte 0x8 |
| 165 ; IASM-NEXT: .byte 0x0 |
| 166 ; IASM-NEXT: .byte 0xe0 |
| 167 ; IASM-NEXT: .byte 0x3 |
| 168 |
| 169 define internal i32 @fcmpOgtFloat(float %a, float %b) { |
| 170 entry: |
| 171 %cmp = fcmp ogt float %a, %b |
| 172 %cmp.ret_ext = zext i1 %cmp to i32 |
| 173 ret i32 %cmp.ret_ext |
| 174 } |
| 175 |
| 176 ; ASM-LABEL: fcmpOgtFloat |
| 177 ; ASM-NEXT: .LfcmpOgtFloat$entry: |
| 178 ; ASM-NEXT: c.ule.s $f12, $f14 |
| 179 ; ASM-NEXT: movt $v0, $zero, $fcc0 |
| 180 ; ASM-NEXT: andi $v0, $v0, 1 |
| 181 ; ASM-NEXT: jr $ra |
| 182 |
| 183 ; DIS-LABEL: 00000060 <fcmpOgtFloat>: |
| 184 ; DIS-NEXT: 60: 460e6037 c.ule.s $f12,$f14 |
| 185 ; DIS-NEXT: 64: 00011001 movt v0,zero,$fcc0 |
| 186 ; DIS-NEXT: 68: 30420001 andi v0,v0,0x1 |
| 187 ; DIS-NEXT: 6c: 03e00008 jr ra |
| 188 |
| 189 ; IASM-LABEL: fcmpOgtFloat: |
| 190 ; IASM-NEXT: .LfcmpOgtFloat$entry: |
| 191 ; IASM-NEXT: .byte 0x37 |
| 192 ; IASM-NEXT: .byte 0x60 |
| 193 ; IASM-NEXT: .byte 0xe |
| 194 ; IASM-NEXT: .byte 0x46 |
| 195 ; IASM-NEXT: .byte 0x1 |
| 196 ; IASM-NEXT: .byte 0x10 |
| 197 ; IASM-NEXT: .byte 0x1 |
| 198 ; IASM-NEXT: .byte 0x0 |
| 199 ; IASM-NEXT: .byte 0x1 |
| 200 ; IASM-NEXT: .byte 0x0 |
| 201 ; IASM-NEXT: .byte 0x42 |
| 202 ; IASM-NEXT: .byte 0x30 |
| 203 ; IASM-NEXT: .byte 0x8 |
| 204 ; IASM-NEXT: .byte 0x0 |
| 205 ; IASM-NEXT: .byte 0xe0 |
| 206 ; IASM-NEXT: .byte 0x3 |
| 207 |
| 208 define internal i32 @fcmpOgtDouble(double %a, double %b) { |
| 209 entry: |
| 210 %cmp = fcmp ogt double %a, %b |
| 211 %cmp.ret_ext = zext i1 %cmp to i32 |
| 212 ret i32 %cmp.ret_ext |
| 213 } |
| 214 |
| 215 ; ASM-LABEL: fcmpOgtDouble |
| 216 ; ASM-NEXT: .LfcmpOgtDouble$entry: |
| 217 ; ASM-NEXT: c.ule.d $f12, $f14 |
| 218 ; ASM-NEXT: movt $v0, $zero, $fcc0 |
| 219 ; ASM-NEXT: andi $v0, $v0, 1 |
| 220 ; ASM-NEXT: jr $ra |
| 221 |
| 222 ; DIS-LABEL: 00000080 <fcmpOgtDouble>: |
| 223 ; DIS-NEXT: 80: 462e6037 c.ule.d $f12,$f14 |
| 224 ; DIS-NEXT: 84: 00011001 movt v0,zero,$fcc0 |
| 225 ; DIS-NEXT: 88: 30420001 andi v0,v0,0x1 |
| 226 ; DIS-NEXT: 8c: 03e00008 jr ra |
| 227 |
| 228 ; IASM-LABEL: fcmpOgtDouble: |
| 229 ; IASM-NEXT: .LfcmpOgtDouble$entry: |
| 230 ; IASM-NEXT: .byte 0x37 |
| 231 ; IASM-NEXT: .byte 0x60 |
| 232 ; IASM-NEXT: .byte 0x2e |
| 233 ; IASM-NEXT: .byte 0x46 |
| 234 ; IASM-NEXT: .byte 0x1 |
| 235 ; IASM-NEXT: .byte 0x10 |
| 236 ; IASM-NEXT: .byte 0x1 |
| 237 ; IASM-NEXT: .byte 0x0 |
| 238 ; IASM-NEXT: .byte 0x1 |
| 239 ; IASM-NEXT: .byte 0x0 |
| 240 ; IASM-NEXT: .byte 0x42 |
| 241 ; IASM-NEXT: .byte 0x30 |
| 242 ; IASM-NEXT: .byte 0x8 |
| 243 ; IASM-NEXT: .byte 0x0 |
| 244 ; IASM-NEXT: .byte 0xe0 |
| 245 ; IASM-NEXT: .byte 0x3 |
| 246 |
| 247 define internal i32 @fcmpOgeFloat(float %a, float %b) { |
| 248 entry: |
| 249 %cmp = fcmp oge float %a, %b |
| 250 %cmp.ret_ext = zext i1 %cmp to i32 |
| 251 ret i32 %cmp.ret_ext |
| 252 } |
| 253 |
| 254 ; ASM-LABEL: fcmpOgeFloat |
| 255 ; ASM-NEXT: .LfcmpOgeFloat$entry: |
| 256 ; ASM-NEXT: c.ult.s $f12, $f14 |
| 257 ; ASM-NEXT: movt $v0, $zero, $fcc0 |
| 258 ; ASM-NEXT: andi $v0, $v0, 1 |
| 259 ; ASM-NEXT: jr $ra |
| 260 |
| 261 ; DIS-LABEL: 000000a0 <fcmpOgeFloat>: |
| 262 ; DIS-NEXT: a0: 460e6035 c.ult.s $f12,$f14 |
| 263 ; DIS-NEXT: a4: 00011001 movt v0,zero,$fcc0 |
| 264 ; DIS-NEXT: a8: 30420001 andi v0,v0,0x1 |
| 265 ; DIS-NEXT: ac: 03e00008 jr ra |
| 266 |
| 267 ; IASM-LABEL: fcmpOgeFloat: |
| 268 ; IASM-NEXT: .LfcmpOgeFloat$entry: |
| 269 ; IASM-NEXT: .byte 0x35 |
| 270 ; IASM-NEXT: .byte 0x60 |
| 271 ; IASM-NEXT: .byte 0xe |
| 272 ; IASM-NEXT: .byte 0x46 |
| 273 ; IASM-NEXT: .byte 0x1 |
| 274 ; IASM-NEXT: .byte 0x10 |
| 275 ; IASM-NEXT: .byte 0x1 |
| 276 ; IASM-NEXT: .byte 0x0 |
| 277 ; IASM-NEXT: .byte 0x1 |
| 278 ; IASM-NEXT: .byte 0x0 |
| 279 ; IASM-NEXT: .byte 0x42 |
| 280 ; IASM-NEXT: .byte 0x30 |
| 281 ; IASM-NEXT: .byte 0x8 |
| 282 ; IASM-NEXT: .byte 0x0 |
| 283 ; IASM-NEXT: .byte 0xe0 |
| 284 ; IASM-NEXT: .byte 0x3 |
| 285 |
| 286 define internal i32 @fcmpOgeDouble(double %a, double %b) { |
| 287 entry: |
| 288 %cmp = fcmp oge double %a, %b |
| 289 %cmp.ret_ext = zext i1 %cmp to i32 |
| 290 ret i32 %cmp.ret_ext |
| 291 } |
| 292 |
| 293 ; ASM-LABEL: fcmpOgeDouble |
| 294 ; ASM-NEXT: .LfcmpOgeDouble$entry: |
| 295 ; ASM-NEXT: c.ult.d $f12, $f14 |
| 296 ; ASM-NEXT: movt $v0, $zero, $fcc0 |
| 297 ; ASM-NEXT: andi $v0, $v0, 1 |
| 298 ; ASM-NEXT: jr $ra |
| 299 |
| 300 ; DIS-LABEL: 000000c0 <fcmpOgeDouble>: |
| 301 ; DIS-NEXT: c0: 462e6035 c.ult.d $f12,$f14 |
| 302 ; DIS-NEXT: c4: 00011001 movt v0,zero,$fcc0 |
| 303 ; DIS-NEXT: c8: 30420001 andi v0,v0,0x1 |
| 304 ; DIS-NEXT: cc: 03e00008 jr ra |
| 305 |
| 306 ; IASM-LABEL: fcmpOgeDouble: |
| 307 ; IASM-NEXT: .LfcmpOgeDouble$entry: |
| 308 ; IASM-NEXT: .byte 0x35 |
| 309 ; IASM-NEXT: .byte 0x60 |
| 310 ; IASM-NEXT: .byte 0x2e |
| 311 ; IASM-NEXT: .byte 0x46 |
| 312 ; IASM-NEXT: .byte 0x1 |
| 313 ; IASM-NEXT: .byte 0x10 |
| 314 ; IASM-NEXT: .byte 0x1 |
| 315 ; IASM-NEXT: .byte 0x0 |
| 316 ; IASM-NEXT: .byte 0x1 |
| 317 ; IASM-NEXT: .byte 0x0 |
| 318 ; IASM-NEXT: .byte 0x42 |
| 319 ; IASM-NEXT: .byte 0x30 |
| 320 ; IASM-NEXT: .byte 0x8 |
| 321 ; IASM-NEXT: .byte 0x0 |
| 322 ; IASM-NEXT: .byte 0xe0 |
| 323 ; IASM-NEXT: .byte 0x3 |
| 324 |
| 325 define internal i32 @fcmpOltFloat(float %a, float %b) { |
| 326 entry: |
| 327 %cmp = fcmp olt float %a, %b |
| 328 %cmp.ret_ext = zext i1 %cmp to i32 |
| 329 ret i32 %cmp.ret_ext |
| 330 } |
| 331 |
| 332 ; ASM-LABEL: fcmpOltFloat |
| 333 ; ASM-NEXT: .LfcmpOltFloat$entry: |
| 334 ; ASM-NEXT: c.olt.s $f12, $f14 |
| 335 ; ASM-NEXT: movf $v0, $zero, $fcc0 |
| 336 ; ASM-NEXT: andi $v0, $v0, 1 |
| 337 ; ASM-NEXT: jr $ra |
| 338 |
| 339 ; DIS-LABEL: 000000e0 <fcmpOltFloat>: |
| 340 ; DIS-NEXT: e0: 460e6034 c.olt.s $f12,$f14 |
| 341 ; DIS-NEXT: e4: 00001001 movf v0,zero,$fcc0 |
| 342 ; DIS-NEXT: e8: 30420001 andi v0,v0,0x1 |
| 343 ; DIS-NEXT: ec: 03e00008 jr ra |
| 344 |
| 345 ; IASM-LABEL: fcmpOltFloat: |
| 346 ; IASM-NEXT: .LfcmpOltFloat$entry: |
| 347 ; IASM-NEXT: .byte 0x34 |
| 348 ; IASM-NEXT: .byte 0x60 |
| 349 ; IASM-NEXT: .byte 0xe |
| 350 ; IASM-NEXT: .byte 0x46 |
| 351 ; IASM-NEXT: .byte 0x1 |
| 352 ; IASM-NEXT: .byte 0x10 |
| 353 ; IASM-NEXT: .byte 0x0 |
| 354 ; IASM-NEXT: .byte 0x0 |
| 355 ; IASM-NEXT: .byte 0x1 |
| 356 ; IASM-NEXT: .byte 0x0 |
| 357 ; IASM-NEXT: .byte 0x42 |
| 358 ; IASM-NEXT: .byte 0x30 |
| 359 ; IASM-NEXT: .byte 0x8 |
| 360 ; IASM-NEXT: .byte 0x0 |
| 361 ; IASM-NEXT: .byte 0xe0 |
| 362 ; IASM-NEXT: .byte 0x3 |
| 363 |
| 364 define internal i32 @fcmpOltDouble(double %a, double %b) { |
| 365 entry: |
| 366 %cmp = fcmp olt double %a, %b |
| 367 %cmp.ret_ext = zext i1 %cmp to i32 |
| 368 ret i32 %cmp.ret_ext |
| 369 } |
| 370 |
| 371 ; ASM-LABEL: fcmpOltDouble |
| 372 ; ASM-NEXT: .LfcmpOltDouble$entry: |
| 373 ; ASM-NEXT: c.olt.d $f12, $f14 |
| 374 ; ASM-NEXT: movf $v0, $zero, $fcc0 |
| 375 ; ASM-NEXT: andi $v0, $v0, 1 |
| 376 ; ASM-NEXT: jr $ra |
| 377 |
| 378 ; DIS-LABEL: 00000100 <fcmpOltDouble>: |
| 379 ; DIS-NEXT: 100: 462e6034 c.olt.d $f12,$f14 |
| 380 ; DIS-NEXT: 104: 00001001 movf v0,zero,$fcc0 |
| 381 ; DIS-NEXT: 108: 30420001 andi v0,v0,0x1 |
| 382 ; DIS-NEXT: 10c: 03e00008 jr ra |
| 383 |
| 384 ; IASM-LABEL: fcmpOltDouble: |
| 385 ; IASM-NEXT: .LfcmpOltDouble$entry: |
| 386 ; IASM-NEXT: .byte 0x34 |
| 387 ; IASM-NEXT: .byte 0x60 |
| 388 ; IASM-NEXT: .byte 0x2e |
| 389 ; IASM-NEXT: .byte 0x46 |
| 390 ; IASM-NEXT: .byte 0x1 |
| 391 ; IASM-NEXT: .byte 0x10 |
| 392 ; IASM-NEXT: .byte 0x0 |
| 393 ; IASM-NEXT: .byte 0x0 |
| 394 ; IASM-NEXT: .byte 0x1 |
| 395 ; IASM-NEXT: .byte 0x0 |
| 396 ; IASM-NEXT: .byte 0x42 |
| 397 ; IASM-NEXT: .byte 0x30 |
| 398 ; IASM-NEXT: .byte 0x8 |
| 399 ; IASM-NEXT: .byte 0x0 |
| 400 ; IASM-NEXT: .byte 0xe0 |
| 401 ; IASM-NEXT: .byte 0x3 |
| 402 |
| 403 define internal i32 @fcmpOleFloat(float %a, float %b) { |
| 404 entry: |
| 405 %cmp = fcmp ole float %a, %b |
| 406 %cmp.ret_ext = zext i1 %cmp to i32 |
| 407 ret i32 %cmp.ret_ext |
| 408 } |
| 409 |
| 410 ; ASM-LABEL: fcmpOleFloat |
| 411 ; ASM-NEXT: .LfcmpOleFloat$entry: |
| 412 ; ASM-NEXT: c.ole.s $f12, $f14 |
| 413 ; ASM-NEXT: movf $v0, $zero, $fcc0 |
| 414 ; ASM-NEXT: andi $v0, $v0, 1 |
| 415 ; ASM-NEXT: jr $ra |
| 416 |
| 417 ; DIS-LABEL: 00000120 <fcmpOleFloat>: |
| 418 ; DIS-NEXT: 120: 460e6036 c.ole.s $f12,$f14 |
| 419 ; DIS-NEXT: 124: 00001001 movf v0,zero,$fcc0 |
| 420 ; DIS-NEXT: 128: 30420001 andi v0,v0,0x1 |
| 421 ; DIS-NEXT: 12c: 03e00008 jr ra |
| 422 |
| 423 ; IASM-LABEL: fcmpOleFloat: |
| 424 ; IASM-NEXT: .LfcmpOleFloat$entry: |
| 425 ; IASM-NEXT: .byte 0x36 |
| 426 ; IASM-NEXT: .byte 0x60 |
| 427 ; IASM-NEXT: .byte 0xe |
| 428 ; IASM-NEXT: .byte 0x46 |
| 429 ; IASM-NEXT: .byte 0x1 |
| 430 ; IASM-NEXT: .byte 0x10 |
| 431 ; IASM-NEXT: .byte 0x0 |
| 432 ; IASM-NEXT: .byte 0x0 |
| 433 ; IASM-NEXT: .byte 0x1 |
| 434 ; IASM-NEXT: .byte 0x0 |
| 435 ; IASM-NEXT: .byte 0x42 |
| 436 ; IASM-NEXT: .byte 0x30 |
| 437 ; IASM-NEXT: .byte 0x8 |
| 438 ; IASM-NEXT: .byte 0x0 |
| 439 ; IASM-NEXT: .byte 0xe0 |
| 440 ; IASM-NEXT: .byte 0x3 |
| 441 |
| 442 define internal i32 @fcmpOleDouble(double %a, double %b) { |
| 443 entry: |
| 444 %cmp = fcmp ole double %a, %b |
| 445 %cmp.ret_ext = zext i1 %cmp to i32 |
| 446 ret i32 %cmp.ret_ext |
| 447 } |
| 448 |
| 449 ; ASM-LABEL: fcmpOleDouble |
| 450 ; ASM-NEXT: .LfcmpOleDouble$entry: |
| 451 ; ASM-NEXT: c.ole.d $f12, $f14 |
| 452 ; ASM-NEXT: movf $v0, $zero, $fcc0 |
| 453 ; ASM-NEXT: andi $v0, $v0, 1 |
| 454 ; ASM-NEXT: jr $ra |
| 455 |
| 456 ; DIS-LABEL: 00000140 <fcmpOleDouble>: |
| 457 ; DIS-NEXT: 140: 462e6036 c.ole.d $f12,$f14 |
| 458 ; DIS-NEXT: 144: 00001001 movf v0,zero,$fcc0 |
| 459 ; DIS-NEXT: 148: 30420001 andi v0,v0,0x1 |
| 460 ; DIS-NEXT: 14c: 03e00008 jr ra |
| 461 |
| 462 ; IASM-LABEL: fcmpOleDouble: |
| 463 ; IASM-NEXT: .LfcmpOleDouble$entry: |
| 464 ; IASM-NEXT: .byte 0x36 |
| 465 ; IASM-NEXT: .byte 0x60 |
| 466 ; IASM-NEXT: .byte 0x2e |
| 467 ; IASM-NEXT: .byte 0x46 |
| 468 ; IASM-NEXT: .byte 0x1 |
| 469 ; IASM-NEXT: .byte 0x10 |
| 470 ; IASM-NEXT: .byte 0x0 |
| 471 ; IASM-NEXT: .byte 0x0 |
| 472 ; IASM-NEXT: .byte 0x1 |
| 473 ; IASM-NEXT: .byte 0x0 |
| 474 ; IASM-NEXT: .byte 0x42 |
| 475 ; IASM-NEXT: .byte 0x30 |
| 476 ; IASM-NEXT: .byte 0x8 |
| 477 ; IASM-NEXT: .byte 0x0 |
| 478 ; IASM-NEXT: .byte 0xe0 |
| 479 ; IASM-NEXT: .byte 0x3 |
| 480 |
| 481 define internal i32 @fcmpOneFloat(float %a, float %b) { |
| 482 entry: |
| 483 %cmp = fcmp one float %a, %b |
| 484 %cmp.ret_ext = zext i1 %cmp to i32 |
| 485 ret i32 %cmp.ret_ext |
| 486 } |
| 487 |
| 488 ; ASM-LABEL: fcmpOneFloat |
| 489 ; ASM-NEXT: .LfcmpOneFloat$entry: |
| 490 ; ASM-NEXT: c.ueq.s $f12, $f14 |
| 491 ; ASM-NEXT: movt $v0, $zero, $fcc0 |
| 492 ; ASM-NEXT: andi $v0, $v0, 1 |
| 493 ; ASM-NEXT: jr $ra |
| 494 |
| 495 ; DIS-LABEL: 00000160 <fcmpOneFloat>: |
| 496 ; DIS-NEXT: 160: 460e6033 c.ueq.s $f12,$f14 |
| 497 ; DIS-NEXT: 164: 00011001 movt v0,zero,$fcc0 |
| 498 ; DIS-NEXT: 168: 30420001 andi v0,v0,0x1 |
| 499 ; DIS-NEXT: 16c: 03e00008 jr ra |
| 500 |
| 501 ; IASM-LABEL: fcmpOneFloat: |
| 502 ; IASM-NEXT: .LfcmpOneFloat$entry: |
| 503 ; IASM-NEXT: .byte 0x33 |
| 504 ; IASM-NEXT: .byte 0x60 |
| 505 ; IASM-NEXT: .byte 0xe |
| 506 ; IASM-NEXT: .byte 0x46 |
| 507 ; IASM-NEXT: .byte 0x1 |
| 508 ; IASM-NEXT: .byte 0x10 |
| 509 ; IASM-NEXT: .byte 0x1 |
| 510 ; IASM-NEXT: .byte 0x0 |
| 511 ; IASM-NEXT: .byte 0x1 |
| 512 ; IASM-NEXT: .byte 0x0 |
| 513 ; IASM-NEXT: .byte 0x42 |
| 514 ; IASM-NEXT: .byte 0x30 |
| 515 ; IASM-NEXT: .byte 0x8 |
| 516 ; IASM-NEXT: .byte 0x0 |
| 517 ; IASM-NEXT: .byte 0xe0 |
| 518 ; IASM-NEXT: .byte 0x3 |
| 519 |
| 520 define internal i32 @fcmpOneDouble(double %a, double %b) { |
| 521 entry: |
| 522 %cmp = fcmp one double %a, %b |
| 523 %cmp.ret_ext = zext i1 %cmp to i32 |
| 524 ret i32 %cmp.ret_ext |
| 525 } |
| 526 |
| 527 ; ASM-LABEL: fcmpOneDouble |
| 528 ; ASM-NEXT: .LfcmpOneDouble$entry: |
| 529 ; ASM-NEXT: c.ueq.d $f12, $f14 |
| 530 ; ASM-NEXT: movt $v0, $zero, $fcc0 |
| 531 ; ASM-NEXT: andi $v0, $v0, 1 |
| 532 ; ASM-NEXT: jr $ra |
| 533 |
| 534 ; DIS-LABEL: 00000180 <fcmpOneDouble>: |
| 535 ; DIS-NEXT: 180: 462e6033 c.ueq.d $f12,$f14 |
| 536 ; DIS-NEXT: 184: 00011001 movt v0,zero,$fcc0 |
| 537 ; DIS-NEXT: 188: 30420001 andi v0,v0,0x1 |
| 538 ; DIS-NEXT: 18c: 03e00008 jr ra |
| 539 |
| 540 ; IASM-LABEL: fcmpOneDouble: |
| 541 ; IASM-NEXT: .LfcmpOneDouble$entry: |
| 542 ; IASM-NEXT: .byte 0x33 |
| 543 ; IASM-NEXT: .byte 0x60 |
| 544 ; IASM-NEXT: .byte 0x2e |
| 545 ; IASM-NEXT: .byte 0x46 |
| 546 ; IASM-NEXT: .byte 0x1 |
| 547 ; IASM-NEXT: .byte 0x10 |
| 548 ; IASM-NEXT: .byte 0x1 |
| 549 ; IASM-NEXT: .byte 0x0 |
| 550 ; IASM-NEXT: .byte 0x1 |
| 551 ; IASM-NEXT: .byte 0x0 |
| 552 ; IASM-NEXT: .byte 0x42 |
| 553 ; IASM-NEXT: .byte 0x30 |
| 554 ; IASM-NEXT: .byte 0x8 |
| 555 ; IASM-NEXT: .byte 0x0 |
| 556 ; IASM-NEXT: .byte 0xe0 |
| 557 ; IASM-NEXT: .byte 0x3 |
| 558 |
| 559 define internal i32 @fcmpOrdFloat(float %a, float %b) { |
| 560 entry: |
| 561 %cmp = fcmp ord float %a, %b |
| 562 %cmp.ret_ext = zext i1 %cmp to i32 |
| 563 ret i32 %cmp.ret_ext |
| 564 } |
| 565 |
| 566 ; ASM-LABEL: fcmpOrdFloat: |
| 567 ; ASM-NEXT: .LfcmpOrdFloat$entry: |
| 568 ; ASM-NEXT: c.un.s $f12, $f14 |
| 569 ; ASM-NEXT: movt $v0, $zero, $fcc0 |
| 570 ; ASM-NEXT: andi $v0, $v0, 1 |
| 571 ; ASM-NEXT: jr $ra |
| 572 |
| 573 ; DIS-LABEL: 000001a0 <fcmpOrdFloat>: |
| 574 ; DIS-NEXT: 1a0: 460e6031 c.un.s $f12,$f14 |
| 575 ; DIS-NEXT: 1a4: 00011001 movt v0,zero,$fcc0 |
| 576 ; DIS-NEXT: 1a8: 30420001 andi v0,v0,0x1 |
| 577 ; DIS-NEXT: 1ac: 03e00008 jr ra |
| 578 |
| 579 ; IASM-LABEL: fcmpOrdFloat: |
| 580 ; IASM-NEXT: .LfcmpOrdFloat$entry: |
| 581 ; IASM-NEXT: .byte 0x31 |
| 582 ; IASM-NEXT: .byte 0x60 |
| 583 ; IASM-NEXT: .byte 0xe |
| 584 ; IASM-NEXT: .byte 0x46 |
| 585 ; IASM-NEXT: .byte 0x1 |
| 586 ; IASM-NEXT: .byte 0x10 |
| 587 ; IASM-NEXT: .byte 0x1 |
| 588 ; IASM-NEXT: .byte 0x0 |
| 589 ; IASM-NEXT: .byte 0x1 |
| 590 ; IASM-NEXT: .byte 0x0 |
| 591 ; IASM-NEXT: .byte 0x42 |
| 592 ; IASM-NEXT: .byte 0x30 |
| 593 ; IASM-NEXT: .byte 0x8 |
| 594 ; IASM-NEXT: .byte 0x0 |
| 595 ; IASM-NEXT: .byte 0xe0 |
| 596 ; IASM-NEXT: .byte 0x3 |
| 597 |
| 598 define internal i32 @fcmpOrdDouble(double %a, double %b) { |
| 599 entry: |
| 600 %cmp = fcmp ord double %a, %b |
| 601 %cmp.ret_ext = zext i1 %cmp to i32 |
| 602 ret i32 %cmp.ret_ext |
| 603 } |
| 604 |
| 605 ; ASM-LABEL: fcmpOrdDouble: |
| 606 ; ASM-NEXT: .LfcmpOrdDouble$entry: |
| 607 ; ASM-NEXT: c.un.d $f12, $f14 |
| 608 ; ASM-NEXT: movt $v0, $zero, $fcc0 |
| 609 ; ASM-NEXT: andi $v0, $v0, 1 |
| 610 ; ASM-NEXT: jr $ra |
| 611 |
| 612 ; DIS-LABEL: 000001c0 <fcmpOrdDouble>: |
| 613 ; DIS-NEXT: 1c0: 462e6031 c.un.d $f12,$f14 |
| 614 ; DIS-NEXT: 1c4: 00011001 movt v0,zero,$fcc0 |
| 615 ; DIS-NEXT: 1c8: 30420001 andi v0,v0,0x1 |
| 616 ; DIS-NEXT: 1cc: 03e00008 jr ra |
| 617 |
| 618 ; IASM-LABEL: fcmpOrdDouble: |
| 619 ; IASM-NEXT: .LfcmpOrdDouble$entry: |
| 620 ; IASM-NEXT: .byte 0x31 |
| 621 ; IASM-NEXT: .byte 0x60 |
| 622 ; IASM-NEXT: .byte 0x2e |
| 623 ; IASM-NEXT: .byte 0x46 |
| 624 ; IASM-NEXT: .byte 0x1 |
| 625 ; IASM-NEXT: .byte 0x10 |
| 626 ; IASM-NEXT: .byte 0x1 |
| 627 ; IASM-NEXT: .byte 0x0 |
| 628 ; IASM-NEXT: .byte 0x1 |
| 629 ; IASM-NEXT: .byte 0x0 |
| 630 ; IASM-NEXT: .byte 0x42 |
| 631 ; IASM-NEXT: .byte 0x30 |
| 632 ; IASM-NEXT: .byte 0x8 |
| 633 ; IASM-NEXT: .byte 0x0 |
| 634 ; IASM-NEXT: .byte 0xe0 |
| 635 ; IASM-NEXT: .byte 0x3 |
| 636 |
| 637 define internal i32 @fcmpUeqFloat(float %a, float %b) { |
| 638 entry: |
| 639 %cmp = fcmp ueq float %a, %b |
| 640 %cmp.ret_ext = zext i1 %cmp to i32 |
| 641 ret i32 %cmp.ret_ext |
| 642 } |
| 643 |
| 644 ; ASM-LABEL: fcmpUeqFloat |
| 645 ; ASM-NEXT: .LfcmpUeqFloat$entry: |
| 646 ; ASM-NEXT: c.ueq.s $f12, $f14 |
| 647 ; ASM-NEXT: movf $v0, $zero, $fcc0 |
| 648 ; ASM-NEXT: andi $v0, $v0, 1 |
| 649 ; ASM-NEXT: jr $ra |
| 650 |
| 651 ; DIS-LABEL: 000001e0 <fcmpUeqFloat>: |
| 652 ; DIS-NEXT: 1e0: 460e6033 c.ueq.s $f12,$f14 |
| 653 ; DIS-NEXT: 1e4: 00001001 movf v0,zero,$fcc0 |
| 654 ; DIS-NEXT: 1e8: 30420001 andi v0,v0,0x1 |
| 655 ; DIS-NEXT: 1ec: 03e00008 jr ra |
| 656 |
| 657 ; IASM-LABEL: fcmpUeqFloat: |
| 658 ; IASM-NEXT: .LfcmpUeqFloat$entry: |
| 659 ; IASM-NEXT: .byte 0x33 |
| 660 ; IASM-NEXT: .byte 0x60 |
| 661 ; IASM-NEXT: .byte 0xe |
| 662 ; IASM-NEXT: .byte 0x46 |
| 663 ; IASM-NEXT: .byte 0x1 |
| 664 ; IASM-NEXT: .byte 0x10 |
| 665 ; IASM-NEXT: .byte 0x0 |
| 666 ; IASM-NEXT: .byte 0x0 |
| 667 ; IASM-NEXT: .byte 0x1 |
| 668 ; IASM-NEXT: .byte 0x0 |
| 669 ; IASM-NEXT: .byte 0x42 |
| 670 ; IASM-NEXT: .byte 0x30 |
| 671 ; IASM-NEXT: .byte 0x8 |
| 672 ; IASM-NEXT: .byte 0x0 |
| 673 ; IASM-NEXT: .byte 0xe0 |
| 674 ; IASM-NEXT: .byte 0x3 |
| 675 |
| 676 define internal i32 @fcmpUeqDouble(double %a, double %b) { |
| 677 entry: |
| 678 %cmp = fcmp ueq double %a, %b |
| 679 %cmp.ret_ext = zext i1 %cmp to i32 |
| 680 ret i32 %cmp.ret_ext |
| 681 } |
| 682 |
| 683 ; ASM-LABEL: fcmpUeqDouble |
| 684 ; ASM-NEXT: .LfcmpUeqDouble$entry: |
| 685 ; ASM-NEXT: c.ueq.d $f12, $f14 |
| 686 ; ASM-NEXT: movf $v0, $zero, $fcc0 |
| 687 ; ASM-NEXT: andi $v0, $v0, 1 |
| 688 ; ASM-NEXT: jr $ra |
| 689 |
| 690 ; DIS-LABEL: 00000200 <fcmpUeqDouble>: |
| 691 ; DIS-NEXT: 200: 462e6033 c.ueq.d $f12,$f14 |
| 692 ; DIS-NEXT: 204: 00001001 movf v0,zero,$fcc0 |
| 693 ; DIS-NEXT: 208: 30420001 andi v0,v0,0x1 |
| 694 ; DIS-NEXT: 20c: 03e00008 jr ra |
| 695 |
| 696 ; IASM-LABEL: fcmpUeqDouble: |
| 697 ; IASM-NEXT: .LfcmpUeqDouble$entry: |
| 698 ; IASM-NEXT: .byte 0x33 |
| 699 ; IASM-NEXT: .byte 0x60 |
| 700 ; IASM-NEXT: .byte 0x2e |
| 701 ; IASM-NEXT: .byte 0x46 |
| 702 ; IASM-NEXT: .byte 0x1 |
| 703 ; IASM-NEXT: .byte 0x10 |
| 704 ; IASM-NEXT: .byte 0x0 |
| 705 ; IASM-NEXT: .byte 0x0 |
| 706 ; IASM-NEXT: .byte 0x1 |
| 707 ; IASM-NEXT: .byte 0x0 |
| 708 ; IASM-NEXT: .byte 0x42 |
| 709 ; IASM-NEXT: .byte 0x30 |
| 710 ; IASM-NEXT: .byte 0x8 |
| 711 ; IASM-NEXT: .byte 0x0 |
| 712 ; IASM-NEXT: .byte 0xe0 |
| 713 ; IASM-NEXT: .byte 0x3 |
| 714 |
| 715 define internal i32 @fcmpUgtFloat(float %a, float %b) { |
| 716 entry: |
| 717 %cmp = fcmp ugt float %a, %b |
| 718 %cmp.ret_ext = zext i1 %cmp to i32 |
| 719 ret i32 %cmp.ret_ext |
| 720 } |
| 721 |
| 722 ; ASM-LABEL: fcmpUgtFloat |
| 723 ; ASM-NEXT: .LfcmpUgtFloat$entry: |
| 724 ; ASM-NEXT: c.ole.s $f12, $f14 |
| 725 ; ASM-NEXT: movt $v0, $zero, $fcc0 |
| 726 ; ASM-NEXT: andi $v0, $v0, 1 |
| 727 ; ASM-NEXT: jr $ra |
| 728 |
| 729 ; DIS-LABEL: 00000220 <fcmpUgtFloat>: |
| 730 ; DIS-NEXT: 220: 460e6036 c.ole.s $f12,$f14 |
| 731 ; DIS-NEXT: 224: 00011001 movt v0,zero,$fcc0 |
| 732 ; DIS-NEXT: 228: 30420001 andi v0,v0,0x1 |
| 733 ; DIS-NEXT: 22c: 03e00008 jr ra |
| 734 |
| 735 ; IASM-LABEL: fcmpUgtFloat: |
| 736 ; IASM-NEXT: .LfcmpUgtFloat$entry: |
| 737 ; IASM-NEXT: .byte 0x36 |
| 738 ; IASM-NEXT: .byte 0x60 |
| 739 ; IASM-NEXT: .byte 0xe |
| 740 ; IASM-NEXT: .byte 0x46 |
| 741 ; IASM-NEXT: .byte 0x1 |
| 742 ; IASM-NEXT: .byte 0x10 |
| 743 ; IASM-NEXT: .byte 0x1 |
| 744 ; IASM-NEXT: .byte 0x0 |
| 745 ; IASM-NEXT: .byte 0x1 |
| 746 ; IASM-NEXT: .byte 0x0 |
| 747 ; IASM-NEXT: .byte 0x42 |
| 748 ; IASM-NEXT: .byte 0x30 |
| 749 ; IASM-NEXT: .byte 0x8 |
| 750 ; IASM-NEXT: .byte 0x0 |
| 751 ; IASM-NEXT: .byte 0xe0 |
| 752 ; IASM-NEXT: .byte 0x3 |
| 753 |
| 754 define internal i32 @fcmpUgtDouble(double %a, double %b) { |
| 755 entry: |
| 756 %cmp = fcmp ugt double %a, %b |
| 757 %cmp.ret_ext = zext i1 %cmp to i32 |
| 758 ret i32 %cmp.ret_ext |
| 759 } |
| 760 |
| 761 ; ASM-LABEL: fcmpUgtDouble |
| 762 ; ASM-NEXT: .LfcmpUgtDouble$entry: |
| 763 ; ASM-NEXT: c.ole.d $f12, $f14 |
| 764 ; ASM-NEXT: movt $v0, $zero, $fcc0 |
| 765 ; ASM-NEXT: andi $v0, $v0, 1 |
| 766 ; ASM-NEXT: jr $ra |
| 767 |
| 768 ; DIS-LABEL: 00000240 <fcmpUgtDouble>: |
| 769 ; DIS-NEXT: 240: 462e6036 c.ole.d $f12,$f14 |
| 770 ; DIS-NEXT: 244: 00011001 movt v0,zero,$fcc0 |
| 771 ; DIS-NEXT: 248: 30420001 andi v0,v0,0x1 |
| 772 ; DIS-NEXT: 24c: 03e00008 jr ra |
| 773 |
| 774 ; IASM-LABEL: fcmpUgtDouble: |
| 775 ; IASM-NEXT: .LfcmpUgtDouble$entry: |
| 776 ; IASM-NEXT: .byte 0x36 |
| 777 ; IASM-NEXT: .byte 0x60 |
| 778 ; IASM-NEXT: .byte 0x2e |
| 779 ; IASM-NEXT: .byte 0x46 |
| 780 ; IASM-NEXT: .byte 0x1 |
| 781 ; IASM-NEXT: .byte 0x10 |
| 782 ; IASM-NEXT: .byte 0x1 |
| 783 ; IASM-NEXT: .byte 0x0 |
| 784 ; IASM-NEXT: .byte 0x1 |
| 785 ; IASM-NEXT: .byte 0x0 |
| 786 ; IASM-NEXT: .byte 0x42 |
| 787 ; IASM-NEXT: .byte 0x30 |
| 788 ; IASM-NEXT: .byte 0x8 |
| 789 ; IASM-NEXT: .byte 0x0 |
| 790 ; IASM-NEXT: .byte 0xe0 |
| 791 ; IASM-NEXT: .byte 0x3 |
| 792 |
| 793 define internal i32 @fcmpUgeFloat(float %a, float %b) { |
| 794 entry: |
| 795 %cmp = fcmp uge float %a, %b |
| 796 %cmp.ret_ext = zext i1 %cmp to i32 |
| 797 ret i32 %cmp.ret_ext |
| 798 } |
| 799 |
| 800 ; ASM-LABEL: fcmpUgeFloat |
| 801 ; ASM-NEXT: .LfcmpUgeFloat$entry: |
| 802 ; ASM-NEXT: c.olt.s $f12, $f14 |
| 803 ; ASM-NEXT: movt $v0, $zero, $fcc0 |
| 804 ; ASM-NEXT: andi $v0, $v0, 1 |
| 805 ; ASM-NEXT: jr $ra |
| 806 |
| 807 ; DIS-LABEL: 00000260 <fcmpUgeFloat>: |
| 808 ; DIS-NEXT: 260: 460e6034 c.olt.s $f12,$f14 |
| 809 ; DIS-NEXT: 264: 00011001 movt v0,zero,$fcc0 |
| 810 ; DIS-NEXT: 268: 30420001 andi v0,v0,0x1 |
| 811 ; DIS-NEXT: 26c: 03e00008 jr ra |
| 812 |
| 813 ; IASM-LABEL: fcmpUgeFloat: |
| 814 ; IASM-NEXT: .LfcmpUgeFloat$entry: |
| 815 ; IASM-NEXT: .byte 0x34 |
| 816 ; IASM-NEXT: .byte 0x60 |
| 817 ; IASM-NEXT: .byte 0xe |
| 818 ; IASM-NEXT: .byte 0x46 |
| 819 ; IASM-NEXT: .byte 0x1 |
| 820 ; IASM-NEXT: .byte 0x10 |
| 821 ; IASM-NEXT: .byte 0x1 |
| 822 ; IASM-NEXT: .byte 0x0 |
| 823 ; IASM-NEXT: .byte 0x1 |
| 824 ; IASM-NEXT: .byte 0x0 |
| 825 ; IASM-NEXT: .byte 0x42 |
| 826 ; IASM-NEXT: .byte 0x30 |
| 827 ; IASM-NEXT: .byte 0x8 |
| 828 ; IASM-NEXT: .byte 0x0 |
| 829 ; IASM-NEXT: .byte 0xe0 |
| 830 ; IASM-NEXT: .byte 0x3 |
| 831 |
| 832 define internal i32 @fcmpUgeDouble(double %a, double %b) { |
| 833 entry: |
| 834 %cmp = fcmp uge double %a, %b |
| 835 %cmp.ret_ext = zext i1 %cmp to i32 |
| 836 ret i32 %cmp.ret_ext |
| 837 } |
| 838 |
| 839 ; ASM-LABEL: fcmpUgeDouble |
| 840 ; ASM-NEXT: .LfcmpUgeDouble$entry: |
| 841 ; ASM-NEXT: c.olt.d $f12, $f14 |
| 842 ; ASM-NEXT: movt $v0, $zero, $fcc0 |
| 843 ; ASM-NEXT: andi $v0, $v0, 1 |
| 844 ; ASM-NEXT: jr $ra |
| 845 |
| 846 ; DIS-LABEL: 00000280 <fcmpUgeDouble>: |
| 847 ; DIS-NEXT: 280: 462e6034 c.olt.d $f12,$f14 |
| 848 ; DIS-NEXT: 284: 00011001 movt v0,zero,$fcc0 |
| 849 ; DIS-NEXT: 288: 30420001 andi v0,v0,0x1 |
| 850 ; DIS-NEXT: 28c: 03e00008 jr ra |
| 851 |
| 852 ; IASM-LABEL: fcmpUgeDouble: |
| 853 ; IASM-NEXT: .LfcmpUgeDouble$entry: |
| 854 ; IASM-NEXT: .byte 0x34 |
| 855 ; IASM-NEXT: .byte 0x60 |
| 856 ; IASM-NEXT: .byte 0x2e |
| 857 ; IASM-NEXT: .byte 0x46 |
| 858 ; IASM-NEXT: .byte 0x1 |
| 859 ; IASM-NEXT: .byte 0x10 |
| 860 ; IASM-NEXT: .byte 0x1 |
| 861 ; IASM-NEXT: .byte 0x0 |
| 862 ; IASM-NEXT: .byte 0x1 |
| 863 ; IASM-NEXT: .byte 0x0 |
| 864 ; IASM-NEXT: .byte 0x42 |
| 865 ; IASM-NEXT: .byte 0x30 |
| 866 ; IASM-NEXT: .byte 0x8 |
| 867 ; IASM-NEXT: .byte 0x0 |
| 868 ; IASM-NEXT: .byte 0xe0 |
| 869 ; IASM-NEXT: .byte 0x3 |
| 870 |
| 871 define internal i32 @fcmpUltFloat(float %a, float %b) { |
| 872 entry: |
| 873 %cmp = fcmp ult float %a, %b |
| 874 %cmp.ret_ext = zext i1 %cmp to i32 |
| 875 ret i32 %cmp.ret_ext |
| 876 } |
| 877 |
| 878 ; ASM-LABEL: fcmpUltFloat |
| 879 ; ASM-NEXT: .LfcmpUltFloat$entry: |
| 880 ; ASM-NEXT: c.ult.s $f12, $f14 |
| 881 ; ASM-NEXT: movf $v0, $zero, $fcc0 |
| 882 ; ASM-NEXT: andi $v0, $v0, 1 |
| 883 ; ASM-NEXT: jr $ra |
| 884 |
| 885 ; DIS-LABEL: 000002a0 <fcmpUltFloat>: |
| 886 ; DIS-NEXT: 2a0: 460e6035 c.ult.s $f12,$f14 |
| 887 ; DIS-NEXT: 2a4: 00001001 movf v0,zero,$fcc0 |
| 888 ; DIS-NEXT: 2a8: 30420001 andi v0,v0,0x1 |
| 889 ; DIS-NEXT: 2ac: 03e00008 jr ra |
| 890 |
| 891 ; IASM-LABEL: fcmpUltFloat: |
| 892 ; IASM-NEXT: .LfcmpUltFloat$entry: |
| 893 ; IASM-NEXT: .byte 0x35 |
| 894 ; IASM-NEXT: .byte 0x60 |
| 895 ; IASM-NEXT: .byte 0xe |
| 896 ; IASM-NEXT: .byte 0x46 |
| 897 ; IASM-NEXT: .byte 0x1 |
| 898 ; IASM-NEXT: .byte 0x10 |
| 899 ; IASM-NEXT: .byte 0x0 |
| 900 ; IASM-NEXT: .byte 0x0 |
| 901 ; IASM-NEXT: .byte 0x1 |
| 902 ; IASM-NEXT: .byte 0x0 |
| 903 ; IASM-NEXT: .byte 0x42 |
| 904 ; IASM-NEXT: .byte 0x30 |
| 905 ; IASM-NEXT: .byte 0x8 |
| 906 ; IASM-NEXT: .byte 0x0 |
| 907 ; IASM-NEXT: .byte 0xe0 |
| 908 ; IASM-NEXT: .byte 0x3 |
| 909 |
| 910 define internal i32 @fcmpUltDouble(double %a, double %b) { |
| 911 entry: |
| 912 %cmp = fcmp ult double %a, %b |
| 913 %cmp.ret_ext = zext i1 %cmp to i32 |
| 914 ret i32 %cmp.ret_ext |
| 915 } |
| 916 |
| 917 ; ASM-LABEL: fcmpUltDouble |
| 918 ; ASM-NEXT: .LfcmpUltDouble$entry: |
| 919 ; ASM-NEXT: c.ult.d $f12, $f14 |
| 920 ; ASM-NEXT: movf $v0, $zero, $fcc0 |
| 921 ; ASM-NEXT: andi $v0, $v0, 1 |
| 922 ; ASM-NEXT: jr $ra |
| 923 |
| 924 ; DIS-LABEL: 000002c0 <fcmpUltDouble>: |
| 925 ; DIS-NEXT: 2c0: 462e6035 c.ult.d $f12,$f14 |
| 926 ; DIS-NEXT: 2c4: 00001001 movf v0,zero,$fcc0 |
| 927 ; DIS-NEXT: 2c8: 30420001 andi v0,v0,0x1 |
| 928 ; DIS-NEXT: 2cc: 03e00008 jr ra |
| 929 |
| 930 ; IASM-LABEL: fcmpUltDouble: |
| 931 ; IASM-NEXT: .LfcmpUltDouble$entry: |
| 932 ; IASM-NEXT: .byte 0x35 |
| 933 ; IASM-NEXT: .byte 0x60 |
| 934 ; IASM-NEXT: .byte 0x2e |
| 935 ; IASM-NEXT: .byte 0x46 |
| 936 ; IASM-NEXT: .byte 0x1 |
| 937 ; IASM-NEXT: .byte 0x10 |
| 938 ; IASM-NEXT: .byte 0x0 |
| 939 ; IASM-NEXT: .byte 0x0 |
| 940 ; IASM-NEXT: .byte 0x1 |
| 941 ; IASM-NEXT: .byte 0x0 |
| 942 ; IASM-NEXT: .byte 0x42 |
| 943 ; IASM-NEXT: .byte 0x30 |
| 944 ; IASM-NEXT: .byte 0x8 |
| 945 ; IASM-NEXT: .byte 0x0 |
| 946 ; IASM-NEXT: .byte 0xe0 |
| 947 ; IASM-NEXT: .byte 0x3 |
| 948 |
| 949 define internal i32 @fcmpUleFloat(float %a, float %b) { |
| 950 entry: |
| 951 %cmp = fcmp ule float %a, %b |
| 952 %cmp.ret_ext = zext i1 %cmp to i32 |
| 953 ret i32 %cmp.ret_ext |
| 954 } |
| 955 |
| 956 ; ASM-LABEL: fcmpUleFloat |
| 957 ; ASM-NEXT: .LfcmpUleFloat$entry: |
| 958 ; ASM-NEXT: c.ule.s $f12, $f14 |
| 959 ; ASM-NEXT: movf $v0, $zero, $fcc0 |
| 960 ; ASM-NEXT: andi $v0, $v0, 1 |
| 961 ; ASM-NEXT: jr $ra |
| 962 |
| 963 ; DIS-LABEL: 000002e0 <fcmpUleFloat>: |
| 964 ; DIS-NEXT: 2e0: 460e6037 c.ule.s $f12,$f14 |
| 965 ; DIS-NEXT: 2e4: 00001001 movf v0,zero,$fcc0 |
| 966 ; DIS-NEXT: 2e8: 30420001 andi v0,v0,0x1 |
| 967 ; DIS-NEXT: 2ec: 03e00008 jr ra |
| 968 |
| 969 ; IASM-LABEL: fcmpUleFloat: |
| 970 ; IASM-NEXT: .LfcmpUleFloat$entry: |
| 971 ; IASM-NEXT: .byte 0x37 |
| 972 ; IASM-NEXT: .byte 0x60 |
| 973 ; IASM-NEXT: .byte 0xe |
| 974 ; IASM-NEXT: .byte 0x46 |
| 975 ; IASM-NEXT: .byte 0x1 |
| 976 ; IASM-NEXT: .byte 0x10 |
| 977 ; IASM-NEXT: .byte 0x0 |
| 978 ; IASM-NEXT: .byte 0x0 |
| 979 ; IASM-NEXT: .byte 0x1 |
| 980 ; IASM-NEXT: .byte 0x0 |
| 981 ; IASM-NEXT: .byte 0x42 |
| 982 ; IASM-NEXT: .byte 0x30 |
| 983 ; IASM-NEXT: .byte 0x8 |
| 984 ; IASM-NEXT: .byte 0x0 |
| 985 ; IASM-NEXT: .byte 0xe0 |
| 986 ; IASM-NEXT: .byte 0x3 |
| 987 |
| 988 define internal i32 @fcmpUleDouble(double %a, double %b) { |
| 989 entry: |
| 990 %cmp = fcmp ule double %a, %b |
| 991 %cmp.ret_ext = zext i1 %cmp to i32 |
| 992 ret i32 %cmp.ret_ext |
| 993 } |
| 994 |
| 995 ; ASM-LABEL: fcmpUleDouble |
| 996 ; ASM-NEXT: .LfcmpUleDouble$entry: |
| 997 ; ASM-NEXT: c.ule.d $f12, $f14 |
| 998 ; ASM-NEXT: movf $v0, $zero, $fcc0 |
| 999 ; ASM-NEXT: andi $v0, $v0, 1 |
| 1000 ; ASM-NEXT: jr $ra |
| 1001 |
| 1002 ; DIS-LABEL: 00000300 <fcmpUleDouble>: |
| 1003 ; DIS-NEXT: 300: 462e6037 c.ule.d $f12,$f14 |
| 1004 ; DIS-NEXT: 304: 00001001 movf v0,zero,$fcc0 |
| 1005 ; DIS-NEXT: 308: 30420001 andi v0,v0,0x1 |
| 1006 ; DIS-NEXT: 30c: 03e00008 jr ra |
| 1007 |
| 1008 ; IASM-LABEL: fcmpUleDouble: |
| 1009 ; IASM-NEXT: .LfcmpUleDouble$entry: |
| 1010 ; IASM-NEXT: .byte 0x37 |
| 1011 ; IASM-NEXT: .byte 0x60 |
| 1012 ; IASM-NEXT: .byte 0x2e |
| 1013 ; IASM-NEXT: .byte 0x46 |
| 1014 ; IASM-NEXT: .byte 0x1 |
| 1015 ; IASM-NEXT: .byte 0x10 |
| 1016 ; IASM-NEXT: .byte 0x0 |
| 1017 ; IASM-NEXT: .byte 0x0 |
| 1018 ; IASM-NEXT: .byte 0x1 |
| 1019 ; IASM-NEXT: .byte 0x0 |
| 1020 ; IASM-NEXT: .byte 0x42 |
| 1021 ; IASM-NEXT: .byte 0x30 |
| 1022 ; IASM-NEXT: .byte 0x8 |
| 1023 ; IASM-NEXT: .byte 0x0 |
| 1024 ; IASM-NEXT: .byte 0xe0 |
| 1025 ; IASM-NEXT: .byte 0x3 |
| 1026 |
| 1027 define internal i32 @fcmpUneFloat(float %a, float %b) { |
| 1028 entry: |
| 1029 %cmp = fcmp une float %a, %b |
| 1030 %cmp.ret_ext = zext i1 %cmp to i32 |
| 1031 ret i32 %cmp.ret_ext |
| 1032 } |
| 1033 |
| 1034 ; ASM-LABEL: fcmpUneFloat |
| 1035 ; ASM-NEXT: .LfcmpUneFloat$entry: |
| 1036 ; ASM-NEXT: c.eq.s $f12, $f14 |
| 1037 ; ASM-NEXT: movt $v0, $zero, $fcc0 |
| 1038 ; ASM-NEXT: andi $v0, $v0, 1 |
| 1039 ; ASM-NEXT: jr $ra |
| 1040 |
| 1041 ; DIS-LABEL: 00000320 <fcmpUneFloat>: |
| 1042 ; DIS-NEXT: 320: 460e6032 c.eq.s $f12,$f14 |
| 1043 ; DIS-NEXT: 324: 00011001 movt v0,zero,$fcc0 |
| 1044 ; DIS-NEXT: 328: 30420001 andi v0,v0,0x1 |
| 1045 ; DIS-NEXT: 32c: 03e00008 jr ra |
| 1046 |
| 1047 ; IASM-LABEL: fcmpUneFloat: |
| 1048 ; IASM-NEXT: .LfcmpUneFloat$entry: |
| 1049 ; IASM-NEXT: .byte 0x32 |
| 1050 ; IASM-NEXT: .byte 0x60 |
| 1051 ; IASM-NEXT: .byte 0xe |
| 1052 ; IASM-NEXT: .byte 0x46 |
| 1053 ; IASM-NEXT: .byte 0x1 |
| 1054 ; IASM-NEXT: .byte 0x10 |
| 1055 ; IASM-NEXT: .byte 0x1 |
| 1056 ; IASM-NEXT: .byte 0x0 |
| 1057 ; IASM-NEXT: .byte 0x1 |
| 1058 ; IASM-NEXT: .byte 0x0 |
| 1059 ; IASM-NEXT: .byte 0x42 |
| 1060 ; IASM-NEXT: .byte 0x30 |
| 1061 ; IASM-NEXT: .byte 0x8 |
| 1062 ; IASM-NEXT: .byte 0x0 |
| 1063 ; IASM-NEXT: .byte 0xe0 |
| 1064 ; IASM-NEXT: .byte 0x3 |
| 1065 |
| 1066 define internal i32 @fcmpUneDouble(double %a, double %b) { |
| 1067 entry: |
| 1068 %cmp = fcmp une double %a, %b |
| 1069 %cmp.ret_ext = zext i1 %cmp to i32 |
| 1070 ret i32 %cmp.ret_ext |
| 1071 } |
| 1072 |
| 1073 ; ASM-LABEL: fcmpUneDouble |
| 1074 ; ASM-NEXT: .LfcmpUneDouble$entry: |
| 1075 ; ASM-NEXT: c.eq.d $f12, $f14 |
| 1076 ; ASM-NEXT: movt $v0, $zero, $fcc0 |
| 1077 ; ASM-NEXT: andi $v0, $v0, 1 |
| 1078 ; ASM-NEXT: jr $ra |
| 1079 |
| 1080 ; DIS-LABEL: 00000340 <fcmpUneDouble>: |
| 1081 ; DIS-NEXT: 340: 462e6032 c.eq.d $f12,$f14 |
| 1082 ; DIS-NEXT: 344: 00011001 movt v0,zero,$fcc0 |
| 1083 ; DIS-NEXT: 348: 30420001 andi v0,v0,0x1 |
| 1084 ; DIS-NEXT: 34c: 03e00008 jr ra |
| 1085 |
| 1086 ; IASM-LABEL: fcmpUneDouble: |
| 1087 ; IASM-NEXT: .LfcmpUneDouble$entry: |
| 1088 ; IASM-NEXT: .byte 0x32 |
| 1089 ; IASM-NEXT: .byte 0x60 |
| 1090 ; IASM-NEXT: .byte 0x2e |
| 1091 ; IASM-NEXT: .byte 0x46 |
| 1092 ; IASM-NEXT: .byte 0x1 |
| 1093 ; IASM-NEXT: .byte 0x10 |
| 1094 ; IASM-NEXT: .byte 0x1 |
| 1095 ; IASM-NEXT: .byte 0x0 |
| 1096 ; IASM-NEXT: .byte 0x1 |
| 1097 ; IASM-NEXT: .byte 0x0 |
| 1098 ; IASM-NEXT: .byte 0x42 |
| 1099 ; IASM-NEXT: .byte 0x30 |
| 1100 ; IASM-NEXT: .byte 0x8 |
| 1101 ; IASM-NEXT: .byte 0x0 |
| 1102 ; IASM-NEXT: .byte 0xe0 |
| 1103 ; IASM-NEXT: .byte 0x3 |
| 1104 |
| 1105 define internal i32 @fcmpUnoFloat(float %a, float %b) { |
| 1106 entry: |
| 1107 %cmp = fcmp uno float %a, %b |
| 1108 %cmp.ret_ext = zext i1 %cmp to i32 |
| 1109 ret i32 %cmp.ret_ext |
| 1110 } |
| 1111 |
| 1112 ; ASM-LABEL: fcmpUnoFloat |
| 1113 ; ASM-NEXT: .LfcmpUnoFloat$entry: |
| 1114 ; ASM-NEXT: c.un.s $f12, $f14 |
| 1115 ; ASM-NEXT: movf $v0, $zero, $fcc0 |
| 1116 ; ASM-NEXT: andi $v0, $v0, 1 |
| 1117 ; ASM-NEXT: jr $ra |
| 1118 |
| 1119 ; DIS-LABEL: 00000360 <fcmpUnoFloat>: |
| 1120 ; DIS-NEXT: 360: 460e6031 c.un.s $f12,$f14 |
| 1121 ; DIS-NEXT: 364: 00001001 movf v0,zero,$fcc0 |
| 1122 ; DIS-NEXT: 368: 30420001 andi v0,v0,0x1 |
| 1123 ; DIS-NEXT: 36c: 03e00008 jr ra |
| 1124 |
| 1125 ; IASM-LABEL: fcmpUnoFloat: |
| 1126 ; IASM-NEXT: .LfcmpUnoFloat$entry: |
| 1127 ; IASM-NEXT: .byte 0x31 |
| 1128 ; IASM-NEXT: .byte 0x60 |
| 1129 ; IASM-NEXT: .byte 0xe |
| 1130 ; IASM-NEXT: .byte 0x46 |
| 1131 ; IASM-NEXT: .byte 0x1 |
| 1132 ; IASM-NEXT: .byte 0x10 |
| 1133 ; IASM-NEXT: .byte 0x0 |
| 1134 ; IASM-NEXT: .byte 0x0 |
| 1135 ; IASM-NEXT: .byte 0x1 |
| 1136 ; IASM-NEXT: .byte 0x0 |
| 1137 ; IASM-NEXT: .byte 0x42 |
| 1138 ; IASM-NEXT: .byte 0x30 |
| 1139 ; IASM-NEXT: .byte 0x8 |
| 1140 ; IASM-NEXT: .byte 0x0 |
| 1141 ; IASM-NEXT: .byte 0xe0 |
| 1142 ; IASM-NEXT: .byte 0x3 |
| 1143 |
| 1144 define internal i32 @fcmpUnoDouble(double %a, double %b) { |
| 1145 entry: |
| 1146 %cmp = fcmp uno double %a, %b |
| 1147 %cmp.ret_ext = zext i1 %cmp to i32 |
| 1148 ret i32 %cmp.ret_ext |
| 1149 } |
| 1150 |
| 1151 ; ASM-LABEL: fcmpUnoDouble |
| 1152 ; ASM-NEXT: .LfcmpUnoDouble$entry: |
| 1153 ; ASM-NEXT: c.un.d $f12, $f14 |
| 1154 ; ASM-NEXT: movf $v0, $zero, $fcc0 |
| 1155 ; ASM-NEXT: andi $v0, $v0, 1 |
| 1156 ; ASM-NEXT: jr $ra |
| 1157 |
| 1158 ; DIS-LABEL: 00000380 <fcmpUnoDouble>: |
| 1159 ; DIS-NEXT: 380: 462e6031 c.un.d $f12,$f14 |
| 1160 ; DIS-NEXT: 384: 00001001 movf v0,zero,$fcc0 |
| 1161 ; DIS-NEXT: 388: 30420001 andi v0,v0,0x1 |
| 1162 ; DIS-NEXT: 38c: 03e00008 jr ra |
| 1163 |
| 1164 ; IASM-LABEL: fcmpUnoDouble: |
| 1165 ; IASM-NEXT: .LfcmpUnoDouble$entry: |
| 1166 ; IASM-NEXT: .byte 0x31 |
| 1167 ; IASM-NEXT: .byte 0x60 |
| 1168 ; IASM-NEXT: .byte 0x2e |
| 1169 ; IASM-NEXT: .byte 0x46 |
| 1170 ; IASM-NEXT: .byte 0x1 |
| 1171 ; IASM-NEXT: .byte 0x10 |
| 1172 ; IASM-NEXT: .byte 0x0 |
| 1173 ; IASM-NEXT: .byte 0x0 |
| 1174 ; IASM-NEXT: .byte 0x1 |
| 1175 ; IASM-NEXT: .byte 0x0 |
| 1176 ; IASM-NEXT: .byte 0x42 |
| 1177 ; IASM-NEXT: .byte 0x30 |
| 1178 ; IASM-NEXT: .byte 0x8 |
| 1179 ; IASM-NEXT: .byte 0x0 |
| 1180 ; IASM-NEXT: .byte 0xe0 |
| 1181 ; IASM-NEXT: .byte 0x3 |
| 1182 |
| 1183 define internal i32 @fcmpTrueFloat(float %a, float %b) { |
| 1184 entry: |
| 1185 %cmp = fcmp true float %a, %b |
| 1186 %cmp.ret_ext = zext i1 %cmp to i32 |
| 1187 ret i32 %cmp.ret_ext |
| 1188 } |
| 1189 |
| 1190 ; ASM-LABEL: fcmpTrueFloat |
| 1191 ; ASM-NEXT: .LfcmpTrueFloat$entry: |
| 1192 ; ASM-NEXT: addiu $v0, $zero, 1 |
| 1193 ; ASM-NEXT: andi $v0, $v0, 1 |
| 1194 ; ASM-NEXT: jr $ra |
| 1195 |
| 1196 ; DIS-LABEL: 000003a0 <fcmpTrueFloat>: |
| 1197 ; DIS-NEXT: 3a0: 24020001 li v0,1 |
| 1198 ; DIS-NEXT: 3a4: 30420001 andi v0,v0,0x1 |
| 1199 ; DIS-NEXT: 3a8: 03e00008 jr ra |
| 1200 |
| 1201 ; IASM-LABEL: fcmpTrueFloat: |
| 1202 ; IASM-NEXT: .LfcmpTrueFloat$entry: |
| 1203 ; IASM-NEXT: .byte 0x1 |
| 1204 ; IASM-NEXT: .byte 0x0 |
| 1205 ; IASM-NEXT: .byte 0x2 |
| 1206 ; IASM-NEXT: .byte 0x24 |
| 1207 ; IASM-NEXT: .byte 0x1 |
| 1208 ; IASM-NEXT: .byte 0x0 |
| 1209 ; IASM-NEXT: .byte 0x42 |
| 1210 ; IASM-NEXT: .byte 0x30 |
| 1211 ; IASM-NEXT: .byte 0x8 |
| 1212 ; IASM-NEXT: .byte 0x0 |
| 1213 ; IASM-NEXT: .byte 0xe0 |
| 1214 ; IASM-NEXT: .byte 0x3 |
| 1215 |
| 1216 define internal i32 @fcmpTrueDouble(double %a, double %b) { |
| 1217 entry: |
| 1218 %cmp = fcmp true double %a, %b |
| 1219 %cmp.ret_ext = zext i1 %cmp to i32 |
| 1220 ret i32 %cmp.ret_ext |
| 1221 } |
| 1222 |
| 1223 ; ASM-LABEL: fcmpTrueDouble |
| 1224 ; ASM-NEXT: .LfcmpTrueDouble$entry: |
| 1225 ; ASM-NEXT: addiu $v0, $zero, 1 |
| 1226 ; ASM-NEXT: andi $v0, $v0, 1 |
| 1227 ; ASM-NEXT: jr $ra |
| 1228 |
| 1229 ; DIS-LABEL: 000003b0 <fcmpTrueDouble>: |
| 1230 ; DIS-NEXT: 3b0: 24020001 li v0,1 |
| 1231 ; DIS-NEXT: 3b4: 30420001 andi v0,v0,0x1 |
| 1232 ; DIS-NEXT: 3b8: 03e00008 jr ra |
| 1233 |
| 1234 ; IASM-LABEL: fcmpTrueDouble: |
| 1235 ; IASM-NEXT: .LfcmpTrueDouble$entry: |
| 1236 ; IASM-NEXT: .byte 0x1 |
| 1237 ; IASM-NEXT: .byte 0x0 |
| 1238 ; IASM-NEXT: .byte 0x2 |
| 1239 ; IASM-NEXT: .byte 0x24 |
| 1240 ; IASM-NEXT: .byte 0x1 |
| 1241 ; IASM-NEXT: .byte 0x0 |
| 1242 ; IASM-NEXT: .byte 0x42 |
| 1243 ; IASM-NEXT: .byte 0x30 |
| 1244 ; IASM-NEXT: .byte 0x8 |
| 1245 ; IASM-NEXT: .byte 0x0 |
| 1246 ; IASM-NEXT: .byte 0xe0 |
| 1247 ; IASM-NEXT: .byte 0x3 |
OLD | NEW |