1//===-- AMDGPUTypes.def - Metadata about AMDGPU types -----------*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8//
9// This file defines various AMDGPU builtin types.
10//
11//===----------------------------------------------------------------------===//
12
13#ifndef AMDGPU_OPAQUE_PTR_TYPE
14#define AMDGPU_OPAQUE_PTR_TYPE(Name, Id, SingletonId, Width, Align, AS) \
15 AMDGPU_TYPE(Name, Id, SingletonId, Width, Align)
16#endif
17
18#ifndef AMDGPU_NAMED_BARRIER_TYPE
19#define AMDGPU_NAMED_BARRIER_TYPE(Name, Id, SingletonId, Width, Align, Scope) \
20 AMDGPU_TYPE(Name, Id, SingletonId, Width, Align)
21#endif
22
23#ifndef AMDGPU_FEATURE_PREDICATE_TYPE
24#define AMDGPU_FEATURE_PREDICATE_TYPE(Name, Id, SingletonId, Width, Align) \
25 AMDGPU_TYPE(Name, Id, SingletonId, Width, Align)
26#endif
27
28AMDGPU_OPAQUE_PTR_TYPE("__amdgpu_buffer_rsrc_t", AMDGPUBufferRsrc, AMDGPUBufferRsrcTy, 128, 128, 8)
29AMDGPU_OPAQUE_PTR_TYPE("__amdgpu_texture_t", AMDGPUTexture, AMDGPUTextureTy, 256, 256, 0)
30
31AMDGPU_NAMED_BARRIER_TYPE("__amdgpu_named_workgroup_barrier_t", AMDGPUNamedWorkgroupBarrier, AMDGPUNamedWorkgroupBarrierTy, 128, 32, 0)
32
33AMDGPU_FEATURE_PREDICATE_TYPE("__amdgpu_feature_predicate_t", AMDGPUFeaturePredicate, AMDGPUFeaturePredicateTy, 1, 1)
34
35#undef AMDGPU_TYPE
36#undef AMDGPU_OPAQUE_PTR_TYPE
37#undef AMDGPU_NAMED_BARRIER_TYPE
38#undef AMDGPU_FEATURE_PREDICATE_TYPE
39