diff options
Diffstat (limited to 'ptx/src/test/spirv_run/extern_func.spvtxt')
-rw-r--r-- | ptx/src/test/spirv_run/extern_func.spvtxt | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/ptx/src/test/spirv_run/extern_func.spvtxt b/ptx/src/test/spirv_run/extern_func.spvtxt new file mode 100644 index 0000000..b757029 --- /dev/null +++ b/ptx/src/test/spirv_run/extern_func.spvtxt @@ -0,0 +1,75 @@ + OpCapability GenericPointer + OpCapability Linkage + OpCapability Addresses + OpCapability Kernel + OpCapability Int8 + OpCapability Int16 + OpCapability Int64 + OpCapability Float16 + OpCapability Float64 + OpCapability DenormFlushToZero + %31 = OpExtInstImport "OpenCL.std" + OpMemoryModel Physical64 OpenCL + OpEntryPoint Kernel %4 "extern_func" + OpExecutionMode %4 ContractionOff + OpDecorate %1 LinkageAttributes "foobar" Import + OpDecorate %12 Alignment 16 + OpDecorate %4 LinkageAttributes "extern_func" Export + %void = OpTypeVoid + %ulong = OpTypeInt 64 0 +%_ptr_Function_ulong = OpTypePointer Function %ulong + %uint = OpTypeInt 32 0 + %uchar = OpTypeInt 8 0 + %uint_16 = OpConstant %uint 16 +%_arr_uchar_uint_16 = OpTypeArray %uchar %uint_16 +%_ptr_Function__arr_uchar_uint_16 = OpTypePointer Function %_arr_uchar_uint_16 + %40 = OpTypeFunction %void %_ptr_Function_ulong %_ptr_Function__arr_uchar_uint_16 + %uint_16_0 = OpConstant %uint 16 + %42 = OpTypeFunction %void %ulong %ulong + %uint_16_1 = OpConstant %uint 16 +%_ptr_CrossWorkgroup_ulong = OpTypePointer CrossWorkgroup %ulong + %ulong_0 = OpConstant %ulong 0 +%_ptr_Function_uchar = OpTypePointer Function %uchar +%_ptr_Generic_ulong = OpTypePointer Generic %ulong + %1 = OpFunction %void None %40 + %3 = OpFunctionParameter %_ptr_Function_ulong + %2 = OpFunctionParameter %_ptr_Function__arr_uchar_uint_16 + OpFunctionEnd + %4 = OpFunction %void None %42 + %13 = OpFunctionParameter %ulong + %14 = OpFunctionParameter %ulong + %29 = OpLabel + %5 = OpVariable %_ptr_Function_ulong Function + %6 = OpVariable %_ptr_Function_ulong Function + %7 = OpVariable %_ptr_Function_ulong Function + %8 = OpVariable %_ptr_Function_ulong Function + %9 = OpVariable %_ptr_Function_ulong Function + %10 = OpVariable %_ptr_Function_ulong Function + %11 = OpVariable %_ptr_Function_ulong Function + %12 = OpVariable %_ptr_Function__arr_uchar_uint_16 Function + OpStore %5 %13 + OpStore %6 %14 + %15 = OpLoad %ulong %5 Aligned 8 + OpStore %7 %15 + %16 = OpLoad %ulong %6 Aligned 8 + OpStore %8 %16 + %18 = OpLoad %ulong %7 + %25 = OpConvertUToPtr %_ptr_CrossWorkgroup_ulong %18 + %17 = OpLoad %ulong %25 Aligned 8 + OpStore %9 %17 + %19 = OpLoad %ulong %9 + %46 = OpBitcast %_ptr_Function_uchar %11 + %47 = OpInBoundsPtrAccessChain %_ptr_Function_uchar %46 %ulong_0 + %24 = OpBitcast %_ptr_Function_ulong %47 + %26 = OpCopyObject %ulong %19 + OpStore %24 %26 Aligned 8 + %48 = OpFunctionCall %void %1 %11 %12 + %27 = OpBitcast %_ptr_Function_ulong %12 + %20 = OpLoad %ulong %27 Aligned 8 + OpStore %10 %20 + %21 = OpLoad %ulong %8 + %22 = OpLoad %ulong %10 + %28 = OpConvertUToPtr %_ptr_Generic_ulong %21 + OpStore %28 %22 Aligned 8 + OpReturn + OpFunctionEnd
\ No newline at end of file |