https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116269

--- Comment #1 from Tobias Burnus <burnus at gcc dot gnu.org> ---
Note regarding the compile-time optimization:

Currently, gcc/gimple-fold.cc's gimple_fold_builtin_acc_on_device only handles:

  unsigned val_host = GOMP_DEVICE_HOST;
  unsigned val_dev = GOMP_DEVICE_NONE;    
#ifdef ACCEL_COMPILER
  val_host = GOMP_DEVICE_NOT_HOST;
  val_dev = ACCEL_COMPILER_acc_device;
#endif 

but valid are:
  acc_device_current = -1,
  acc_device_none = 0,
  acc_device_default = 1,
  acc_device_host = 2,
  acc_device_not_host = 4,
  acc_device_nvidia = 5,
  acc_device_radeon = 8,

Albeit the spec only states what happens for:

• acc_device_host
• acc_device_not_host
• an accelerator device type
• acc_device_default is undefined.

In principle, acc_device_{nvidia,radeon} can be handled as the compiler knows
on which system it is.

Reply via email to