CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
103 lines
6.1 KiB
Plaintext
103 lines
6.1 KiB
Plaintext
; REQUIRES: spirv-as
|
|
; RUN: spirv-as --target-env spv1.0 -o %t.spv %s
|
|
; RUN: spirv-val %t.spv
|
|
; RUN: llvm-spirv %t.spv -r --spirv-target-env=SPV-IR -o - | llvm-dis | FileCheck %s --check-prefixes=CHECK,CHECK-SPV-IR
|
|
; RUN: llvm-spirv %t.spv -r --spirv-target-env=CL2.0 -o - | llvm-dis | FileCheck %s --check-prefixes=CHECK,CHECK-CL20
|
|
;
|
|
; CHECK-LABEL: spir_kernel void @test
|
|
;
|
|
; CHECK-SPV-IR: call spir_func <2 x float> @_Z32__spirv_ocl_vloada_halfn_Rfloat2jPU3AS1KDhi(
|
|
; CHECK-SPV-IR: call spir_func <3 x float> @_Z32__spirv_ocl_vloada_halfn_Rfloat3jPU3AS1KDhi(
|
|
; CHECK-SPV-IR: call spir_func <4 x float> @_Z32__spirv_ocl_vloada_halfn_Rfloat4jPU3AS1KDhi(
|
|
; CHECK-SPV-IR: call spir_func <8 x float> @_Z32__spirv_ocl_vloada_halfn_Rfloat8jPU3AS1KDhi(
|
|
; CHECK-SPV-IR: call spir_func <16 x float> @_Z33__spirv_ocl_vloada_halfn_Rfloat16jPU3AS1KDhi(
|
|
; CHECK-SPV-IR: call spir_func <2 x float> @_Z32__spirv_ocl_vloada_halfn_Rfloat2jPU3AS3KDhi(
|
|
; CHECK-SPV-IR: call spir_func <3 x float> @_Z32__spirv_ocl_vloada_halfn_Rfloat3jPU3AS3KDhi(
|
|
; CHECK-SPV-IR: call spir_func <4 x float> @_Z32__spirv_ocl_vloada_halfn_Rfloat4jPU3AS3KDhi(
|
|
; CHECK-SPV-IR: call spir_func <8 x float> @_Z32__spirv_ocl_vloada_halfn_Rfloat8jPU3AS3KDhi(
|
|
; CHECK-SPV-IR: call spir_func <16 x float> @_Z33__spirv_ocl_vloada_halfn_Rfloat16jPU3AS3KDhi(
|
|
; CHECK-SPV-IR: call spir_func <2 x float> @_Z32__spirv_ocl_vloada_halfn_Rfloat2jPU3AS2KDhi(
|
|
; CHECK-SPV-IR: call spir_func <3 x float> @_Z32__spirv_ocl_vloada_halfn_Rfloat3jPU3AS2KDhi(
|
|
; CHECK-SPV-IR: call spir_func <4 x float> @_Z32__spirv_ocl_vloada_halfn_Rfloat4jPU3AS2KDhi(
|
|
; CHECK-SPV-IR: call spir_func <8 x float> @_Z32__spirv_ocl_vloada_halfn_Rfloat8jPU3AS2KDhi(
|
|
; CHECK-SPV-IR: call spir_func <16 x float> @_Z33__spirv_ocl_vloada_halfn_Rfloat16jPU3AS2KDhi(
|
|
; CHECK-SPV-IR: call spir_func <2 x float> @_Z32__spirv_ocl_vloada_halfn_Rfloat2jPKDhi(
|
|
; CHECK-SPV-IR: call spir_func <3 x float> @_Z32__spirv_ocl_vloada_halfn_Rfloat3jPKDhi(
|
|
; CHECK-SPV-IR: call spir_func <4 x float> @_Z32__spirv_ocl_vloada_halfn_Rfloat4jPKDhi(
|
|
; CHECK-SPV-IR: call spir_func <8 x float> @_Z32__spirv_ocl_vloada_halfn_Rfloat8jPKDhi(
|
|
; CHECK-SPV-IR: call spir_func <16 x float> @_Z33__spirv_ocl_vloada_halfn_Rfloat16jPKDhi(
|
|
;
|
|
; CHECK-CL20: call spir_func <2 x float> @_Z12vloada_half2jPU3AS1KDh(
|
|
; CHECK-CL20: call spir_func <3 x float> @_Z12vloada_half3jPU3AS1KDh(
|
|
; CHECK-CL20: call spir_func <4 x float> @_Z12vloada_half4jPU3AS1KDh(
|
|
; CHECK-CL20: call spir_func <8 x float> @_Z12vloada_half8jPU3AS1KDh(
|
|
; CHECK-CL20: call spir_func <16 x float> @_Z13vloada_half16jPU3AS1KDh(
|
|
; CHECK-CL20: call spir_func <2 x float> @_Z12vloada_half2jPU3AS3KDh(
|
|
; CHECK-CL20: call spir_func <3 x float> @_Z12vloada_half3jPU3AS3KDh(
|
|
; CHECK-CL20: call spir_func <4 x float> @_Z12vloada_half4jPU3AS3KDh(
|
|
; CHECK-CL20: call spir_func <8 x float> @_Z12vloada_half8jPU3AS3KDh(
|
|
; CHECK-CL20: call spir_func <16 x float> @_Z13vloada_half16jPU3AS3KDh(
|
|
; CHECK-CL20: call spir_func <2 x float> @_Z12vloada_half2jPU3AS2KDh(
|
|
; CHECK-CL20: call spir_func <3 x float> @_Z12vloada_half3jPU3AS2KDh(
|
|
; CHECK-CL20: call spir_func <4 x float> @_Z12vloada_half4jPU3AS2KDh(
|
|
; CHECK-CL20: call spir_func <8 x float> @_Z12vloada_half8jPU3AS2KDh(
|
|
; CHECK-CL20: call spir_func <16 x float> @_Z13vloada_half16jPU3AS2KDh(
|
|
; CHECK-CL20: call spir_func <2 x float> @_Z12vloada_half2jPKDh(
|
|
; CHECK-CL20: call spir_func <3 x float> @_Z12vloada_half3jPKDh(
|
|
; CHECK-CL20: call spir_func <4 x float> @_Z12vloada_half4jPKDh(
|
|
; CHECK-CL20: call spir_func <8 x float> @_Z12vloada_half8jPKDh(
|
|
; CHECK-CL20: call spir_func <16 x float> @_Z13vloada_half16jPKDh(
|
|
|
|
OpCapability Addresses
|
|
OpCapability Kernel
|
|
OpCapability Vector16
|
|
OpCapability Float16Buffer
|
|
%1 = OpExtInstImport "OpenCL.std"
|
|
OpMemoryModel Physical32 OpenCL
|
|
OpEntryPoint Kernel %7 "test"
|
|
%43 = OpString "kernel_arg_type.test.half*,half*,"
|
|
OpSource OpenCL_C 200000
|
|
%uint = OpTypeInt 32 0
|
|
%uint_0 = OpConstant %uint 0
|
|
%void = OpTypeVoid
|
|
%half = OpTypeFloat 16
|
|
%_ptr_CrossWorkgroup_half = OpTypePointer CrossWorkgroup %half
|
|
%_ptr_Workgroup_half = OpTypePointer Workgroup %half
|
|
%6 = OpTypeFunction %void %_ptr_CrossWorkgroup_half %_ptr_Workgroup_half
|
|
%float = OpTypeFloat 32
|
|
%v2float = OpTypeVector %float 2
|
|
%v3float = OpTypeVector %float 3
|
|
%v4float = OpTypeVector %float 4
|
|
%v8float = OpTypeVector %float 8
|
|
%v16float = OpTypeVector %float 16
|
|
%_ptr_UniformConstant_half = OpTypePointer UniformConstant %half
|
|
%_ptr_Function_half = OpTypePointer Function %half
|
|
%30 = OpUndef %_ptr_UniformConstant_half
|
|
%37 = OpUndef %_ptr_Function_half
|
|
%7 = OpFunction %void None %6
|
|
%pg = OpFunctionParameter %_ptr_CrossWorkgroup_half
|
|
%pl = OpFunctionParameter %_ptr_Workgroup_half
|
|
%entry = OpLabel
|
|
%call = OpExtInst %v2float %1 vloada_halfn %uint_0 %pg 2
|
|
%call1 = OpExtInst %v3float %1 vloada_halfn %uint_0 %pg 3
|
|
%call2 = OpExtInst %v4float %1 vloada_halfn %uint_0 %pg 4
|
|
%call3 = OpExtInst %v8float %1 vloada_halfn %uint_0 %pg 8
|
|
%call4 = OpExtInst %v16float %1 vloada_halfn %uint_0 %pg 16
|
|
%call5 = OpExtInst %v2float %1 vloada_halfn %uint_0 %pl 2
|
|
%call6 = OpExtInst %v3float %1 vloada_halfn %uint_0 %pl 3
|
|
%call7 = OpExtInst %v4float %1 vloada_halfn %uint_0 %pl 4
|
|
%call8 = OpExtInst %v8float %1 vloada_halfn %uint_0 %pl 8
|
|
%call9 = OpExtInst %v16float %1 vloada_halfn %uint_0 %pl 16
|
|
%call10 = OpExtInst %v2float %1 vloada_halfn %uint_0 %30 2
|
|
%call11 = OpExtInst %v3float %1 vloada_halfn %uint_0 %30 3
|
|
%call12 = OpExtInst %v4float %1 vloada_halfn %uint_0 %30 4
|
|
%call13 = OpExtInst %v8float %1 vloada_halfn %uint_0 %30 8
|
|
%call14 = OpExtInst %v16float %1 vloada_halfn %uint_0 %30 16
|
|
%call15 = OpExtInst %v2float %1 vloada_halfn %uint_0 %37 2
|
|
%call16 = OpExtInst %v3float %1 vloada_halfn %uint_0 %37 3
|
|
%call17 = OpExtInst %v4float %1 vloada_halfn %uint_0 %37 4
|
|
%call18 = OpExtInst %v8float %1 vloada_halfn %uint_0 %37 8
|
|
%call19 = OpExtInst %v16float %1 vloada_halfn %uint_0 %37 16
|
|
OpReturn
|
|
OpFunctionEnd
|