67 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 52; RUN: llc %s -mtriple=mipsisa32r6el-linux-gnu -o - | \3; RUN: FileCheck %s --check-prefix=MIPS32R6EL4; RUN: llc %s -mtriple=mipsisa64r6el-linux-gnuabi64 -o - | \5; RUN: FileCheck %s --check-prefix=MIPS64R6EL6 7define float @mins(float %x, float %y) {8; MIPS32R6EL-LABEL: mins:9; MIPS32R6EL: # %bb.0:10; MIPS32R6EL-NEXT: jr $ra11; MIPS32R6EL-NEXT: min.s $f0, $f12, $f1412;13; MIPS64R6EL-LABEL: mins:14; MIPS64R6EL: # %bb.0:15; MIPS64R6EL-NEXT: jr $ra16; MIPS64R6EL-NEXT: min.s $f0, $f12, $f1317 %r = tail call float @llvm.minnum.f32(float %x, float %y)18 ret float %r19}20 21define float @maxs(float %x, float %y) {22; MIPS32R6EL-LABEL: maxs:23; MIPS32R6EL: # %bb.0:24; MIPS32R6EL-NEXT: jr $ra25; MIPS32R6EL-NEXT: max.s $f0, $f12, $f1426;27; MIPS64R6EL-LABEL: maxs:28; MIPS64R6EL: # %bb.0:29; MIPS64R6EL-NEXT: jr $ra30; MIPS64R6EL-NEXT: max.s $f0, $f12, $f1331 %r = tail call float @llvm.maxnum.f32(float %x, float %y)32 ret float %r33}34 35define double @mind(double %x, double %y) {36; MIPS32R6EL-LABEL: mind:37; MIPS32R6EL: # %bb.0:38; MIPS32R6EL-NEXT: jr $ra39; MIPS32R6EL-NEXT: min.d $f0, $f12, $f1440;41; MIPS64R6EL-LABEL: mind:42; MIPS64R6EL: # %bb.0:43; MIPS64R6EL-NEXT: jr $ra44; MIPS64R6EL-NEXT: min.d $f0, $f12, $f1345 %r = tail call double @llvm.minnum.f64(double %x, double %y)46 ret double %r47}48 49define double @maxd(double %x, double %y) {50; MIPS32R6EL-LABEL: maxd:51; MIPS32R6EL: # %bb.0:52; MIPS32R6EL-NEXT: jr $ra53; MIPS32R6EL-NEXT: max.d $f0, $f12, $f1454;55; MIPS64R6EL-LABEL: maxd:56; MIPS64R6EL: # %bb.0:57; MIPS64R6EL-NEXT: jr $ra58; MIPS64R6EL-NEXT: max.d $f0, $f12, $f1359 %r = tail call double @llvm.maxnum.f64(double %x, double %y)60 ret double %r61}62 63declare float @llvm.minnum.f32(float, float)64declare float @llvm.maxnum.f32(float, float)65declare double @llvm.minnum.f64(double, double)66declare double @llvm.maxnum.f64(double, double)67