brintos

brintos / llvm-project-archived public Read only

0
0
Text · 825 B · f0acfdf Raw
21 lines · plain
1; RUN: llc -verify-machineinstrs -mtriple=spirv64-amd-amdhsa %s -o - | FileCheck %s2; RUN: %if spirv-tools %{ llc -mtriple=spirv64-amd-amdhsa %s -o - -filetype=obj | spirv-val %}3 4; CHECK: OpName %[[#LDS:]] "lds"5; CHECK: OpDecorate %[[#LDS]] LinkageAttributes "lds" Import6; CHECK: %[[#UINT:]] = OpTypeInt 32 07; CHECK: %[[#UINT_MAX:]] = OpConstant %[[#UINT]] 42949672958; CHECK: %[[#LDS_ARR_TY:]] = OpTypeArray %[[#UINT]] %[[#UINT_MAX]]9; CHECK: %[[#LDS_ARR_PTR_WG:]] = OpTypePointer Workgroup %[[#LDS_ARR_TY]]10; CHECK: %[[#LDS]] = OpVariable %[[#LDS_ARR_PTR_WG]] Workgroup11 12@lds = external addrspace(3) global [0 x i32]13 14define spir_kernel void @foo(ptr addrspace(4) %in, ptr addrspace(4) %out) {15entry:16  %val = load i32, ptr addrspace(4) %in17  %add = add i32 %val, 118  store i32 %add, ptr addrspace(4) %out19  ret void20}21