; RUN: llc -march=mips -mfix4300 -verify-machineinstrs < %s | FileCheck %s ; Function Attrs: mustprogress nofree norecurse nosync nounwind readnone willreturn define dso_local float @fun_s(float %x) local_unnamed_addr !dbg !7 { entry: ; CHECK-LABEL: fun_s ; CHECK: mul.s ; CHECK-NEXT: #DEBUG_VALUE: i <- 1 ; CHECK-NEXT: nop %mul = fmul float %x, %x call void @llvm.dbg.value(metadata i32 1, metadata !13, metadata !DIExpression()), !dbg !17 %mul1 = fmul float %mul, %x ret float %mul1 } define dso_local double @fun_d(double %x) local_unnamed_addr #0 { entry: ; CHECK-LABEL: fun_d ; CHECK: mul.d ; CHECK-NEXT: nop ; CHECK: mul.d %mul = fmul double %x, %x %mul1 = fmul double %mul, %x ret double %mul1 } ; Function Attrs: nofree nosync nounwind readnone speculatable willreturn declare void @llvm.dbg.value(metadata, metadata, metadata) !llvm.dbg.cu = !{!0} !llvm.module.flags = !{!2, !3} !0 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus_14, file: !1, producer: "", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, splitDebugInlining: false, nameTableKind: None) !1 = !DIFile(filename: "vr4300-mulmul.ll", directory: "/") !2 = !{i32 7, !"Dwarf Version", i32 4} !3 = !{i32 2, !"Debug Info Version", i32 3} !7 = distinct !DISubprogram(name: "fun_s", linkageName: "fun_s", scope: !1, file: !1, line: 1, type: !8, scopeLine: 2, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !0) !8 = !DISubroutineType(types: !9) !9 = !{!10, !10} !10 = !DIBasicType(name: "float", size: 32, encoding: DW_ATE_float) !13 = !DILocalVariable(name: "i", scope: !14, file: !1, line: 3, type: !15) !14 = distinct !DILexicalBlock(scope: !7, file: !1, line: 3, column: 5) !15 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed) !17 = !DILocation(line: 0, scope: !14)