1*cf3d6fdeSNathan Gauër; RUN: llc -O0 -verify-machineinstrs -mtriple=spirv-unknown-unknown %s -o - | FileCheck %s 21b2d11deSJoshua Batista; RUN: %if spirv-tools %{ llc -O0 -mtriple=spirv-unknown-unknown %s -o - -filetype=obj | spirv-val %} 31b2d11deSJoshua Batista 41b2d11deSJoshua Batista; Make sure SPIRV operation function calls for normalize are lowered correctly. 51b2d11deSJoshua Batista 61b2d11deSJoshua Batista; CHECK-DAG: %[[#op_ext_glsl:]] = OpExtInstImport "GLSL.std.450" 71b2d11deSJoshua Batista; CHECK-DAG: %[[#float_32:]] = OpTypeFloat 32 81b2d11deSJoshua Batista; CHECK-DAG: %[[#float_16:]] = OpTypeFloat 16 91b2d11deSJoshua Batista; CHECK-DAG: %[[#vec4_float_16:]] = OpTypeVector %[[#float_16]] 4 101b2d11deSJoshua Batista; CHECK-DAG: %[[#vec4_float_32:]] = OpTypeVector %[[#float_32]] 4 111b2d11deSJoshua Batista 121b2d11deSJoshua Batistadefine noundef <4 x half> @normalize_half4(<4 x half> noundef %a) { 131b2d11deSJoshua Batistaentry: 141b2d11deSJoshua Batista ; CHECK: %[[#]] = OpFunction %[[#vec4_float_16]] None %[[#]] 151b2d11deSJoshua Batista ; CHECK: %[[#arg0:]] = OpFunctionParameter %[[#vec4_float_16]] 161b2d11deSJoshua Batista ; CHECK: %[[#]] = OpExtInst %[[#vec4_float_16]] %[[#op_ext_glsl]] Normalize %[[#arg0]] 171b2d11deSJoshua Batista %hlsl.normalize = call <4 x half> @llvm.spv.normalize.v4f16(<4 x half> %a) 181b2d11deSJoshua Batista ret <4 x half> %hlsl.normalize 191b2d11deSJoshua Batista} 201b2d11deSJoshua Batista 211b2d11deSJoshua Batistadefine noundef <4 x float> @normalize_float4(<4 x float> noundef %a) { 221b2d11deSJoshua Batistaentry: 231b2d11deSJoshua Batista ; CHECK: %[[#]] = OpFunction %[[#vec4_float_32]] None %[[#]] 241b2d11deSJoshua Batista ; CHECK: %[[#arg0:]] = OpFunctionParameter %[[#vec4_float_32]] 251b2d11deSJoshua Batista ; CHECK: %[[#]] = OpExtInst %[[#vec4_float_32]] %[[#op_ext_glsl]] Normalize %[[#arg0]] 261b2d11deSJoshua Batista %hlsl.normalize = call <4 x float> @llvm.spv.normalize.v4f32(<4 x float> %a) 271b2d11deSJoshua Batista ret <4 x float> %hlsl.normalize 281b2d11deSJoshua Batista} 291b2d11deSJoshua Batista 301b2d11deSJoshua Batistadeclare <4 x half> @llvm.spv.normalize.v4f16(<4 x half>) 311b2d11deSJoshua Batistadeclare <4 x float> @llvm.spv.normalize.v4f32(<4 x float>) 32