1 ; RUN: llc -march=amdgcn -mcpu=SI -verify-machineinstrs < %s | FileCheck -check-prefix=SI %s 2 ; RUN: llc -march=amdgcn -mcpu=tonga -verify-machineinstrs < %s | FileCheck -check-prefix=SI %s 3 4 declare float @llvm.AMDGPU.ldexp.f32(float, i32) nounwind readnone 5 declare double @llvm.AMDGPU.ldexp.f64(double, i32) nounwind readnone 6 7 ; SI-LABEL: {{^}}test_ldexp_f32: 8 ; SI: v_ldexp_f32 9 ; SI: s_endpgm 10 define void @test_ldexp_f32(float addrspace(1)* %out, float %a, i32 %b) nounwind { 11 %result = call float @llvm.AMDGPU.ldexp.f32(float %a, i32 %b) nounwind readnone 12 store float %result, float addrspace(1)* %out, align 4 13 ret void 14 } 15 16 ; SI-LABEL: {{^}}test_ldexp_f64: 17 ; SI: v_ldexp_f64 18 ; SI: s_endpgm 19 define void @test_ldexp_f64(double addrspace(1)* %out, double %a, i32 %b) nounwind { 20 %result = call double @llvm.AMDGPU.ldexp.f64(double %a, i32 %b) nounwind readnone 21 store double %result, double addrspace(1)* %out, align 8 22 ret void 23 } 24