AMDGPU Support¶
Clang supports OpenCL, HIP and OpenMP on AMD GPU targets.
Predefined Macros¶
| Macro | Description | 
|---|---|
| 
 | Indicates that the code is being compiled for an AMD GPU. | 
| 
 | Defined if the GPU target is AMDGCN. | 
| 
 | Defined if the GPU target is R600. | 
| 
 | Defined with the name of the architecture (e.g.,  | 
| 
 | Defines the GFX family (e.g., for gfx906, this macro would be  | 
| 
 | Defined with the processor name as a string (e.g.,  | 
| 
 | Defined with the target ID as a string. | 
| 
 | Defined for each supported target feature. The value is 1 if the feature is enabled and 0 if it is disabled. Allowed feature names are sramecc and xnack. | 
| 
 | Defined as 1 if the CU mode is enabled and 0 if the WGP mode is enabled. | 
| 
 | Defined if unsafe floating-point atomics are allowed. | 
| 
 | Defines the wavefront size. Allowed values are 32 and 64. | 
| 
 | Alias to  | 
| 
 | Defined if FMAF instruction is available (deprecated). | 
| 
 | Defined if LDEXPF instruction is available (deprecated). | 
| 
 | Defined if FP64 instruction is available (deprecated). | 
Please note that the specific architecture and feature names will vary depending on the GPU. Also, some macros are deprecated and may be removed in future releases.