Khronos should add the following (or an equivalent) predefined macros to the official OpenCL specification: __CPU__, __GPU__, __ACCELERATOR__, __X86__, and __X86_64__. This allows one kernel source to be maintained for all devices and the two most common ISAs, independent of the build options. Currently the AMD APP SDK supports all the requested predefined macros except __ACCELERATOR__.