; RUN: llc -mtriple=arm64ec-windows-msvc < %s | FileCheck -check-prefixes=ARM64EC %s ; Separate from ldexp.ll test because this errors on half cases ; ARM64EC-LABEL: ldexp_f16 = ; ARM64EC: fcvt d0, h0 ; ARM64EC: bl "#ldexp" ; ARM64EC: fcvt h0, d0 define half @ldexp_f16(half %val, i32 %a) { %call = call half @llvm.ldexp.f16(half %val, i32 %a) ret half %call } ; ARM64EC-LABEL: ldexp_f32 = ; ARM64EC: fcvt d0, s0 ; ARM64EC: bl "#ldexp" ; ARM64EC: fcvt s0, d0 define float @ldexp_f32(float %val, i32 %a) { %call = call float @llvm.ldexp.f32(float %val, i32 %a) ret float %call } ; ARM64EC-LABEL: ldexp_f64 = ; ARM64EC: b "#ldexp" define double @ldexp_f64(double %val, i32 %a) { %call = call double @llvm.ldexp.f64(double %val, i32 %a) ret double %call }