41 lines · plain
1; RUN: llc -mtriple=mipsel < %s | FileCheck %s -check-prefixes=NO-MFHC1,ALL2; RUN: llc -mtriple=mips < %s | FileCheck %s -check-prefixes=NO-MFHC1,ALL3; RUN: llc -mtriple=mipsel -mcpu=mips32r2 < %s | FileCheck %s -check-prefixes=HAS-MFHC1,ALL4; RUN: llc -mtriple=mips -mcpu=mips32r2 < %s | FileCheck %s -check-prefixes=HAS-MFHC1,ALL5; RUN: llc -mtriple=mipsel -mcpu=mips32r2 -mattr=+fp64 < %s | FileCheck %s -check-prefixes=HAS-MFHC1,ALL6; RUN: llc -mtriple=mips -mcpu=mips32r2 -mattr=+fp64 < %s | FileCheck %s -check-prefixes=HAS-MFHC1,ALL7 8@a = external global i329 10; ALL-LABEL: f:11 12; NO-MFHC1: mtc113; NO-MFHC1: mtc114 15; HAS-MFHC1-DAG: mtc116; HAS-MFHC1-DAG: mthc117 18define double @f(i32 %a1, double %d) nounwind {19entry:20 store i32 %a1, ptr @a, align 421 %add = fadd double %d, 2.000000e+0022 ret double %add23}24 25; ALL-LABEL: f3:26 27; NO-MFHC1: mfc128; NO-MFHC1: mfc129 30; HAS-MFHC1-DAG: mfc131; HAS-MFHC1-DAG: mfhc132 33define void @f3(double %d, i32 %a1) nounwind {34entry:35 tail call void @f2(i32 %a1, double %d) nounwind36 ret void37}38 39declare void @f2(i32, double)40 41