From: Andre Vehreschild <vehre@gmx.de>
To: Tobias Burnus <tburnus@baylibre.com>
Cc: gcc-patches <gcc-patches@gcc.gnu.org>,
Jakub Jelinek <jakub@redhat.com>,
"fortran@gcc.gnu.org" <fortran@gcc.gnu.org>
Subject: Re: [Patch, v2] OpenMP/Fortran: Fix handling of 'declare target' with 'link' clause [PR11555]
Date: Mon, 29 Jul 2024 09:09:09 +0200 [thread overview]
Message-ID: <20240729090909.60ef379b@vepi2> (raw)
In-Reply-To: <2cf80995-6ba1-4aca-95af-904dc8d849bf@baylibre.com>
Hi Tobias,
I am wondering why the testcase has no `!{ dg-do ... }` line. What will dejagnu
do then? Sorry for the may be stupid question, but I never encountered a
testcase without a dg-do line. It was the minimum for me.
Besides that the patch looks ok to me.
- Andre
On Fri, 26 Jul 2024 20:34:18 +0200
Tobias Burnus <tburnus@baylibre.com> wrote:
> Updated patch - only change is to the testcase:
>
> * With the just posted patch for PR116107, array sections with offset
> work for 'link', hence, I updated the testcase.
>
> * For 'arr2', I added ref to the associated PR.
>
> I intent to commit it once PR116107 has been committed.
>
> Tobias
>
> Tobias Burnus wrote:
> > Hi all,
> >
> > it turned out that 'declare target' with 'link' clause was broken in
> > multiple ways.
> >
> > The main fix is the attached patch, i.e. namely pushing the variables
> > already to the offload-vars list already in the FE.
> >
> > When implementing it, I noticed:
> > * C has a similar issue when using nested functions, which is
> > a GNU extension →https://gcc.gnu.org/115574
> >
> > * When doing partial mapping of arrays (which is one of the reasons for
> > 'link'), offsets are mishandled in Fortran (not tested in C), see FIXME in
> > the patch) There: arr2(10) should print 10 but with map(arr2(10:)) it
> > prints 19. (I will file a PR about this).
> >
> > * It might happen that linked variables do not get linked. I have not
> > investigated why, but 'arr2' gives link errors – while 'arr' works.
> > See FIXME in the patch. (I will file a PR about this)
> >
> > * For COMMON blocks, map(/common/) is rejected,https://gcc.gnu.org/PR115577
> >
> > * When then mapping map(a,b,c) which is identical for 'common /mycom/
> > a,b,c', it fails to link the device side as the 'mycom_' symbol cannot be
> > found on the device side. (I will file a PR about this)
> >
> > As COMMON as issues, an alternative would be to defer the trans-common.cc
> > changes to a later patch.
> >
> > Comments, questions, concerns?
> >
> > Tobias
> >
> > PS: Tested with nvptx offloading with a page-migration supporting system
> > with nvptx and GCN offloading configured and no new fails observed.
--
Andre Vehreschild * Email: vehre ad gmx dot de
next prev parent reply other threads:[~2024-07-29 7:09 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-21 13:06 [Patch] " Tobias Burnus
2024-07-26 18:34 ` [Patch, v2] " Tobias Burnus
2024-07-29 7:09 ` Andre Vehreschild [this message]
2024-07-29 7:29 ` Tobias Burnus
2024-07-29 7:39 ` Andre Vehreschild
2024-07-29 7:53 ` Tobias Burnus
2024-07-29 8:22 ` Jakub Jelinek
2024-07-30 8:37 ` [committed] gfortran.dg/compiler-directive_2.f: Update dg-error (was: [Patch, v2] OpenMP/Fortran: Fix handling of 'declare target' with 'link' clause [PR115559]) Tobias Burnus
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240729090909.60ef379b@vepi2 \
--to=vehre@gmx.de \
--cc=fortran@gcc.gnu.org \
--cc=gcc-patches@gcc.gnu.org \
--cc=jakub@redhat.com \
--cc=tburnus@baylibre.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).