29 lines · plain
1; RUN: llc -mtriple=arm64ec-windows-msvc < %s | FileCheck -check-prefixes=ARM64EC %s2 3; Separate from ldexp.ll test because this errors on half cases4 5; ARM64EC-LABEL: ldexp_f16 =6; ARM64EC: fcvt d0, h07; ARM64EC: bl "#ldexp"8; ARM64EC: fcvt h0, d09define half @ldexp_f16(half %val, i32 %a) {10 %call = call half @llvm.ldexp.f16(half %val, i32 %a)11 ret half %call12}13 14; ARM64EC-LABEL: ldexp_f32 =15; ARM64EC: fcvt d0, s016; ARM64EC: bl "#ldexp"17; ARM64EC: fcvt s0, d018define float @ldexp_f32(float %val, i32 %a) {19 %call = call float @llvm.ldexp.f32(float %val, i32 %a)20 ret float %call21}22 23; ARM64EC-LABEL: ldexp_f64 =24; ARM64EC: b "#ldexp"25define double @ldexp_f64(double %val, i32 %a) {26 %call = call double @llvm.ldexp.f64(double %val, i32 %a)27 ret double %call28}29