; RUN: llc -verify-machineinstrs -O0 -mtriple=spirv64v1.5-unknown-unknown %s -o - | FileCheck %s ; RUN: %if spirv-tools %{ llc -O0 -mtriple=spirv64v1.5-unknown-unknown %s -o - -filetype=obj | spirv-val %} ; Check that nofpclass attributes produce FPFastMathMode decorations on ; OpExtInst in Kernel environments even for SPIR-V versions before 1.6, ; because the Kernel capability makes FPFastMathMode available. ; CHECK: OpDecorate %[[#]] FPFastMathMode NotNaN|NotInf declare spir_func noundef nofpclass(nan inf) float @_Z16__spirv_ocl_fmaxff(float noundef nofpclass(nan inf), float noundef nofpclass(nan inf)) define spir_kernel void @test(ptr addrspace(1) %data, ptr addrspace(1) %a) { entry: %0 = load float, ptr addrspace(1) %a, align 4 %fmax = call spir_func noundef nofpclass(nan inf) float @_Z16__spirv_ocl_fmaxff(float noundef nofpclass(nan inf) %0, float noundef nofpclass(nan inf) %0) store float %fmax, ptr addrspace(1) %data, align 4 ret void }