#include <clc/clc.h>

#if __clang_major__ >= 8
#define CONST_AS __constant
#elif __clang_major__ >= 7
#define CONST_AS __attribute__((address_space(4)))
#else
#define CONST_AS __attribute__((address_space(2)))
#endif

#if __clang_major__ >= 6
#define __dispatch_ptr __builtin_amdgcn_dispatch_ptr
#else
#define __dispatch_ptr __clc_amdgcn_dispatch_ptr
CONST_AS char * __clc_amdgcn_dispatch_ptr(void) __asm("llvm.amdgcn.dispatch.ptr");
#endif

_CLC_DEF size_t get_local_size(uint dim)
{
	CONST_AS uint * ptr = (CONST_AS uint *) __dispatch_ptr();
	switch (dim) {
	case 0:
		return ptr[1] & 0xffffu;
	case 1:
		return ptr[1] >> 16;
	case 2:
		return ptr[2] & 0xffffu;
	}
	return 1;
}
