brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.7 KiB · 6d2e392 Raw
72 lines · plain
1; RUN: llc < %s -mtriple=mips64el -mattr=+soft-float | FileCheck %s2; RUN: llc < %s -mtriple=mips -mattr=+soft-float     | FileCheck %s3 4; FIXME: crash5; define signext i32 @testmswh(half %x) {6; entry:7;   %0 = tail call i64 @llvm.lrint.i64.f16(half %x)8;   %conv = trunc i64 %0 to i329;   ret i32 %conv10; }11 12; define i64 @testmsxh(half %x) {13; entry:14;   %0 = tail call i64 @llvm.lrint.i64.f16(half %x)15;   ret i64 %016; }17 18define signext i32 @testmsws(float %x) {19; CHECK-LABEL: testmsws:20; CHECK:       jal     lrintf21entry:22  %0 = tail call i64 @llvm.lrint.i64.f32(float %x)23  %conv = trunc i64 %0 to i3224  ret i32 %conv25}26 27define i64 @testmsxs(float %x) {28; CHECK-LABEL: testmsxs:29; CHECK:       jal     lrintf30entry:31  %0 = tail call i64 @llvm.lrint.i64.f32(float %x)32  ret i64 %033}34 35define signext i32 @testmswd(double %x) {36; CHECK-LABEL: testmswd:37; CHECK:       jal     lrint38entry:39  %0 = tail call i64 @llvm.lrint.i64.f64(double %x)40  %conv = trunc i64 %0 to i3241  ret i32 %conv42}43 44define i64 @testmsxd(double %x) {45; CHECK-LABEL: testmsxd:46; CHECK:       jal     lrint47entry:48  %0 = tail call i64 @llvm.lrint.i64.f64(double %x)49  ret i64 %050}51 52define signext i32 @testmswl(fp128 %x) {53; CHECK-LABEL: testmswl:54; CHECK:       jal     lrintl55entry:56  %0 = tail call i64 @llvm.lrint.i64.f128(fp128 %x)57  %conv = trunc i64 %0 to i3258  ret i32 %conv59}60 61define signext i64 @testmsll(fp128 %x) {62; CHECK-LABEL: testmsll:63; CHECK:       jal     lrintl64entry:65  %0 = tail call i64 @llvm.lrint.i64.f128(fp128 %x)66  ret i64 %067}68 69declare i64 @llvm.lrint.i64.f32(float) nounwind readnone70declare i64 @llvm.lrint.i64.f64(double) nounwind readnone71declare i64 @llvm.lrint.i64.f128(fp128) nounwind readnone72