29 lines · plain
1; RUN: llc -mtriple thumbv7--windows-itanium < %s | FileCheck %s2 3; CHECK-LABEL: test_frexp_f16_i32:4; CHECK: bl __gnu_h2f_ieee5; CHECK: vcvt.f64.f32 d0, s06; CHECK: bl frexp7; CHECK: vcvt.f32.f64 s0, d08; CHECK: bl __gnu_f2h_ieee9define { half, i32 } @test_frexp_f16_i32(half %a) {10 %result = call { half, i32 } @llvm.frexp.f16.i32(half %a)11 ret { half, i32 } %result12}13 14; CHECK-LABEL: test_frexp_f32_i32:15; CHECK: vcvt.f64.f3216; CHECK: bl frexp17; CHECK: vcvt.f32.f64 s0, d018define { float, i32 } @test_frexp_f32_i32(float %a) {19 %result = call { float, i32 } @llvm.frexp.f32.i32(float %a)20 ret { float, i32 } %result21}22 23; CHECK-LABEL: test_frexp_f64_i32:24; CHECK: bl frexp25define { double, i32 } @test_frexp_f64_i32(double %a) {26 %result = call { double, i32 } @llvm.frexp.f64.i32(double %a)27 ret { double, i32 } %result28}29