brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.5 KiB · 835a7cf Raw
64 lines · plain
1; RUN: llc -mtriple mips64-unknown-linux -mcpu=mips64r5 -mattr=+msa < %s | FileCheck %s2 3; The fcmp fast flag will result in conversion from4; setolt, setoeq, setole, setone to5; setlt, seteq, setle, setne nodes.6; Test that the latter nodes are matched to the same instructions as the former.7 8define <2 x i1> @testlt_v2f64(<2 x double> %a, <2 x double> %b) {9start:10  %0 = fcmp fast olt <2 x double> %a, %b11  ; CHECK: fclt.d12  ret <2 x i1> %013}14 15define <4 x i1>  @testlt_v4f32(<4 x float> %a, <4 x float> %b) {16start:17  %0 = fcmp fast olt <4 x float> %a, %b18  ; CHECK: fclt.w19  ret <4 x i1> %020}21 22define <2 x i1> @testeq_v2f64(<2 x double> %a, <2 x double> %b) {23start:24  %0 = fcmp fast oeq <2 x double> %a, %b25  ; CHECK: fceq.d26  ret <2 x i1> %027}28 29define <4 x i1> @testeq_v4f32(<4 x float> %a, <4 x float> %b) {30start:31  %0 = fcmp fast oeq <4 x float> %a, %b32  ; CHECK: fceq.w33  ret <4 x i1> %034}35 36define <2 x i1> @testle_v2f64(<2 x double> %a, <2 x double> %b) {37start:38  %0 = fcmp fast ole <2 x double> %a, %b39  ; CHECK: fcle.d40  ret <2 x i1> %041}42 43define <4 x i1> @testle_v4f32(<4 x float> %a, <4 x float> %b) {44start:45  %0 = fcmp fast ole <4 x float> %a, %b46  ; CHECK: fcle.w47  ret <4 x i1> %048}49 50define <2 x i1> @testne_v2f64(<2 x double> %a, <2 x double> %b) {51start:52  %0 = fcmp fast one <2 x double> %a, %b53  ; CHECK: fcne.d54  ret <2 x i1> %055}56 57define <4 x i1> @testne_v4f32(<4 x float> %a, <4 x float> %b) {58start:59  %0 = fcmp fast one <4 x float> %a, %b60  ; CHECK: fcne.w61  ret <4 x i1> %062}63 64