xref: /llvm-project/clang/test/CodeGenOpenCL/amdgcn-flat-scratch-name.cl (revision 88e2bb40921f35663e16e45514de20018615c36f)
1// REQUIRES: amdgpu-registered-target
2// RUN: %clang_cc1 -triple amdgcn-unknown-unknown -emit-llvm -o - %s | FileCheck %s
3// RUN: %clang_cc1 -triple spirv64-amd-amdhsa -emit-llvm -o - %s | FileCheck %s
4
5// CHECK-LABEL: @use_flat_scratch_name
6kernel void use_flat_scratch_name()
7{
8// CHECK: tail call{{.*}} void asm sideeffect "s_mov_b64 flat_scratch, 0", "~{flat_scratch}"()
9  __asm__ volatile("s_mov_b64 flat_scratch, 0" : : : "flat_scratch");
10
11// CHECK: tail call{{.*}} void asm sideeffect "s_mov_b32 flat_scratch_lo, 0", "~{flat_scratch_lo}"()
12  __asm__ volatile("s_mov_b32 flat_scratch_lo, 0" : : : "flat_scratch_lo");
13
14// CHECK: tail call{{.*}} void asm sideeffect "s_mov_b32 flat_scratch_hi, 0", "~{flat_scratch_hi}"()
15  __asm__ volatile("s_mov_b32 flat_scratch_hi, 0" : : : "flat_scratch_hi");
16}
17