Hi! On 2019-12-17T00:00:04+0100, I wrote: > On 2019-11-14T16:35:31+0100, Frederik Harwath <frede...@codesourcery.com> > wrote: >> this patch implements OpenACC 2.6 "acc_get_property" and related functions.
> As I mentioned before ("thinking aloud"): > > | [...] 'acc_device_current' [is] relevant only for > | 'acc_get_property', to return "the value of the property for the current > | device". This [now has a] special (negative?) value > | [...], so that when additional real device types are added > | later on, we can just add them with increasing numbers, and keep the > | scanning code simple. > Should this actually get value '-1' instead of '-3'? Or, is the OpenACC > 'acc_device_t' code already paying special attention to negative values > '-1', '-2'? (I don't think so.) Now pushed this change to master branch in commit a5d0bc12e1bfa956941cd9c49d5b978256bd11ec "[OpenACC] Set 'acc_device_current = -1'", see attached. Grüße Thomas ----------------- Mentor Graphics (Deutschland) GmbH, Arnulfstraße 201, 80634 München / Germany Registergericht München HRB 106955, Geschäftsführer: Thomas Heurung, Alexander Walter
>From a5d0bc12e1bfa956941cd9c49d5b978256bd11ec Mon Sep 17 00:00:00 2001 From: Thomas Schwinge <tho...@codesourcery.com> Date: Wed, 29 Apr 2020 08:12:36 +0200 Subject: [PATCH] [OpenACC] Set 'acc_device_current = -1' There's no point in using value '-3', and even though not directly related, value '-1' does match 'GOMP_DEVICE_ICV'. libgomp/ * config/accel/openacc.f90 (acc_device_current): Set to '-1'. * openacc.f90 (acc_device_current): Likewise. * openacc.h (acc_device_current): Likewise. * openacc_lib.h (acc_device_current): Likewise. --- libgomp/ChangeLog | 5 +++++ libgomp/config/accel/openacc.f90 | 2 +- libgomp/openacc.f90 | 2 +- libgomp/openacc.h | 2 +- libgomp/openacc_lib.h | 2 +- 5 files changed, 9 insertions(+), 4 deletions(-) diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog index 1a7046f2fc64..b6828adcbe3d 100644 --- a/libgomp/ChangeLog +++ b/libgomp/ChangeLog @@ -1,5 +1,10 @@ 2020-04-29 Thomas Schwinge <tho...@codesourcery.com> + * config/accel/openacc.f90 (acc_device_current): Set to '-1'. + * openacc.f90 (acc_device_current): Likewise. + * openacc.h (acc_device_current): Likewise. + * openacc_lib.h (acc_device_current): Likewise. + PR target/94282 * testsuite/libgomp.c-c++-common/function-not-offloaded.c: Remove 'dg-allow-blank-lines-in-output'. diff --git a/libgomp/config/accel/openacc.f90 b/libgomp/config/accel/openacc.f90 index 275afe43475c..99330733d8f8 100644 --- a/libgomp/config/accel/openacc.f90 +++ b/libgomp/config/accel/openacc.f90 @@ -44,7 +44,7 @@ module openacc_kinds integer, parameter :: acc_device_kind = int32 ! Keep in sync with include/gomp-constants.h. - integer (acc_device_kind), parameter :: acc_device_current = -3 + integer (acc_device_kind), parameter :: acc_device_current = -1 integer (acc_device_kind), parameter :: acc_device_none = 0 integer (acc_device_kind), parameter :: acc_device_default = 1 integer (acc_device_kind), parameter :: acc_device_host = 2 diff --git a/libgomp/openacc.f90 b/libgomp/openacc.f90 index 467fb612c548..111705d0fb60 100644 --- a/libgomp/openacc.f90 +++ b/libgomp/openacc.f90 @@ -41,7 +41,7 @@ module openacc_kinds integer, parameter :: acc_device_kind = int32 ! Keep in sync with include/gomp-constants.h. - integer (acc_device_kind), parameter :: acc_device_current = -3 + integer (acc_device_kind), parameter :: acc_device_current = -1 integer (acc_device_kind), parameter :: acc_device_none = 0 integer (acc_device_kind), parameter :: acc_device_default = 1 integer (acc_device_kind), parameter :: acc_device_host = 2 diff --git a/libgomp/openacc.h b/libgomp/openacc.h index 617364634748..1dc471f62bc7 100644 --- a/libgomp/openacc.h +++ b/libgomp/openacc.h @@ -49,7 +49,7 @@ extern "C" { /* Types */ typedef enum acc_device_t { /* Keep in sync with include/gomp-constants.h. */ - acc_device_current = -3, + acc_device_current = -1, acc_device_none = 0, acc_device_default = 1, acc_device_host = 2, diff --git a/libgomp/openacc_lib.h b/libgomp/openacc_lib.h index ee08e9787cc9..82a3735b1063 100644 --- a/libgomp/openacc_lib.h +++ b/libgomp/openacc_lib.h @@ -37,7 +37,7 @@ integer, parameter :: acc_device_kind = 4 ! Keep in sync with include/gomp-constants.h. - integer (acc_device_kind), parameter :: acc_device_current = -3 + integer (acc_device_kind), parameter :: acc_device_current = -1 integer (acc_device_kind), parameter :: acc_device_none = 0 integer (acc_device_kind), parameter :: acc_device_default = 1 integer (acc_device_kind), parameter :: acc_device_host = 2 -- 2.26.2