LLVM API Documentation

Enumerations
AMDGPUAS Namespace Reference

Enumerations

enum  AddressSpaces {
  PRIVATE_ADDRESS = 0, GLOBAL_ADDRESS = 1, CONSTANT_ADDRESS = 2, LOCAL_ADDRESS = 3,
  FLAT_ADDRESS = 4, REGION_ADDRESS = 5, PARAM_D_ADDRESS = 6, PARAM_I_ADDRESS = 7,
  CONSTANT_BUFFER_0 = 8, CONSTANT_BUFFER_1 = 9, CONSTANT_BUFFER_2 = 10, CONSTANT_BUFFER_3 = 11,
  CONSTANT_BUFFER_4 = 12, CONSTANT_BUFFER_5 = 13, CONSTANT_BUFFER_6 = 14, CONSTANT_BUFFER_7 = 15,
  CONSTANT_BUFFER_8 = 16, CONSTANT_BUFFER_9 = 17, CONSTANT_BUFFER_10 = 18, CONSTANT_BUFFER_11 = 19,
  CONSTANT_BUFFER_12 = 20, CONSTANT_BUFFER_13 = 21, CONSTANT_BUFFER_14 = 22, CONSTANT_BUFFER_15 = 23,
  ADDRESS_NONE = 24, LAST_ADDRESS = ADDRESS_NONE
}

Detailed Description

OpenCL uses address spaces to differentiate between various memory regions on the hardware. On the CPU all of the address spaces point to the same memory, however on the GPU, each address space points to a separate piece of memory that is unique from other memory locations.


Enumeration Type Documentation

Enumerator:
PRIVATE_ADDRESS 

Address space for private memory.

GLOBAL_ADDRESS 

Address space for global memory (RAT0, VTX0).

CONSTANT_ADDRESS 

Address space for constant memory.

LOCAL_ADDRESS 

Address space for local memory.

FLAT_ADDRESS 

Address space for flat memory.

REGION_ADDRESS 

Address space for region memory.

PARAM_D_ADDRESS 

Address space for direct addressible parameter memory (CONST0)

PARAM_I_ADDRESS 

Address space for indirect addressible parameter memory (VTX1)

CONSTANT_BUFFER_0 
CONSTANT_BUFFER_1 
CONSTANT_BUFFER_2 
CONSTANT_BUFFER_3 
CONSTANT_BUFFER_4 
CONSTANT_BUFFER_5 
CONSTANT_BUFFER_6 
CONSTANT_BUFFER_7 
CONSTANT_BUFFER_8 
CONSTANT_BUFFER_9 
CONSTANT_BUFFER_10 
CONSTANT_BUFFER_11 
CONSTANT_BUFFER_12 
CONSTANT_BUFFER_13 
CONSTANT_BUFFER_14 
CONSTANT_BUFFER_15 
ADDRESS_NONE 

Address space for unknown memory.

LAST_ADDRESS 

Definition at line 93 of file AMDGPU.h.