| ; RUN: not llc -mtriple=amdgcn-unknown-amdhsa -O0 -filetype=null < %s 2>&1 | FileCheck %s |
| |
| @I = global i32 42 |
| @P = global ptr @I |
| |
| ; CHECK: error: <unknown>:0:0: in function pixel_shader_zero_args void (): unsupported non-compute shaders with HSA |
| ; CHECK: error: <unknown>:0:0: in function pixel_shader_one_arg void (ptr): unsupported non-compute shaders with HSA |
| ; CHECK: error: <unknown>:0:0: in function pixel_shader_two_args void (ptr, i32): unsupported non-compute shaders with HSA |
| ; CHECK: error: <unknown>:0:0: in function vertex_shader_zero_args void (): unsupported non-compute shaders with HSA |
| ; CHECK: error: <unknown>:0:0: in function vertex_shader_one_arg void (ptr): unsupported non-compute shaders with HSA |
| ; CHECK: error: <unknown>:0:0: in function vertex_shader_two_args void (ptr, i32): unsupported non-compute shaders with HSA |
| ; CHECK: error: <unknown>:0:0: in function geometry_shader_zero_args void (): unsupported non-compute shaders with HSA |
| ; CHECK: error: <unknown>:0:0: in function geometry_shader_one_arg void (ptr): unsupported non-compute shaders with HSA |
| ; CHECK: error: <unknown>:0:0: in function geometry_shader_two_args void (ptr, i32): unsupported non-compute shaders with HSA |
| |
| define amdgpu_ps void @pixel_shader_zero_args() { |
| %i = load i32, ptr @I |
| store i32 %i, ptr @P |
| ret void |
| } |
| |
| define amdgpu_ps void @pixel_shader_one_arg(ptr %p) { |
| %i = load i32, ptr @I |
| store i32 %i, ptr %p |
| ret void |
| } |
| |
| define amdgpu_ps void @pixel_shader_two_args(ptr %p, i32 %i) { |
| store i32 %i, ptr %p |
| ret void |
| } |
| |
| define amdgpu_vs void @vertex_shader_zero_args() { |
| %i = load i32, ptr @I |
| store i32 %i, ptr @P |
| ret void |
| } |
| |
| define amdgpu_vs void @vertex_shader_one_arg(ptr %p) { |
| %i = load i32, ptr @I |
| store i32 %i, ptr %p |
| ret void |
| } |
| |
| define amdgpu_vs void @vertex_shader_two_args(ptr %p, i32 %i) { |
| store i32 %i, ptr %p |
| ret void |
| } |
| |
| define amdgpu_gs void @geometry_shader_zero_args() { |
| %i = load i32, ptr @I |
| store i32 %i, ptr @P |
| ret void |
| } |
| |
| define amdgpu_gs void @geometry_shader_one_arg(ptr %p) { |
| %i = load i32, ptr @I |
| store i32 %i, ptr %p |
| ret void |
| } |
| |
| define amdgpu_gs void @geometry_shader_two_args(ptr %p, i32 %i) { |
| store i32 %i, ptr %p |
| ret void |
| } |