public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Tobias Burnus <tobias@codesourcery.com>
To: Thomas Schwinge <thomas@codesourcery.com>
Cc: <gcc-patches@gcc.gnu.org>
Subject: [committed] libgomp.c/target-51.c: Accept more error-msg variants in dg-output (was: Re: [committed] libgomp: Fix OMP_TARGET_OFFLOAD=mandatory)
Date: Mon, 19 Jun 2023 10:02:58 +0200	[thread overview]
Message-ID: <f0bce677-da4f-3ccd-d220-ef2e2bbba877@codesourcery.com> (raw)
In-Reply-To: <87cz1vf8as.fsf@euler.schwinge.homeip.net>

[-- Attachment #1: Type: text/plain, Size: 2167 bytes --]

On 16.06.23 22:42, Thomas Schwinge wrote:
> I see the new tests PASS, but with offloading enabled (nvptx) also see:
>
>      PASS: libgomp.c/target-51.c (test for excess errors)
>      PASS: libgomp.c/target-51.c execution test
>      [-PASS:-]{+FAIL:+} libgomp.c/target-51.c output pattern test
>
> ... due to:
>
>      Output was:
>
>      libgomp: OMP_TARGET_OFFLOAD is set to MANDATORY, but device cannot be used for offloading
>
>      Should match:
>      .*libgomp: OMP_TARGET_OFFLOAD is set to MANDATORY, but device not found.*

Thanks for the report. I can offer yet another wording for the same program – and also
with nvptx enabled:

libgomp: OMP_TARGET_OFFLOAD is set to MANDATORY, but device cannot be used for offloading

And I can also offer (which is already in the testcase with "! offload_device"):

libgomp: OMP_TARGET_OFFLOAD is set to MANDATORY, but only the host device is available

I think I will just match "..., but .*" without distinguishing check_effective_target_* ...

... which I now did in commit r14-1926-g01fe115ba7eafe (see also attached patch).

* * *

With offloading, there are simply too many possibilities:

* Not compiled with offloading support - vs. with (ENABLE_OFFLOADING)
* Support compiled in but either compiler or library support not installed
   (requires configuring with --enable-offload-defaulted)
* Offloading libgomp plugins there but no CUDA or hsa runtime libraries
* The latter being installed but no device available

Plus -foffload=disable or only enabling an (at runtime) unavailable or
unsupported device type or other issues like CUDA and device present but
an issue with the kernel driver (or similar half-broken states) or ...

[And with remote testing issues related to dg-set-target-env-var and only
few systems supporting offloading, a full test coverage is even harder.]

Tobias
-----------------
Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955

[-- Attachment #2: committed.diff --]
[-- Type: text/x-patch, Size: 1993 bytes --]

commit 01fe115ba7eafebcf97bbac9e157038a003d0c85
Author: Tobias Burnus <tobias@codesourcery.com>
Date:   Mon Jun 19 09:52:10 2023 +0200

    libgomp.c/target-51.c: Accept more error-msg variants in dg-output
    
    Depending on the details, the testcase can fail with different but
    related messages; all of the following all could be observed for this
    testcase:
    
      libgomp: OMP_TARGET_OFFLOAD is set to MANDATORY, but device cannot be used for offloading
      libgomp: OMP_TARGET_OFFLOAD is set to MANDATORY, but device not found
      libgomp: OMP_TARGET_OFFLOAD is set to MANDATORY, but only the host device is available
    
    Before, the last two were tested for with 'target offload_device' and
    '! offload_device', respectively. Now, all three are accepted by matching
    '.*' already after 'but' and without distinguishing whether the effective
    target is an offload_device or not.
    
    (For completeness, there is a fourth error that follows this pattern:
    'OMP_TARGET_OFFLOAD is set to MANDATORY, but device is finalized'.)
    
    libgomp/
    
            * testsuite/libgomp.c/target-51.c: Accept more error msg variants
            as expected dg-output.
---
 libgomp/testsuite/libgomp.c/target-51.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/libgomp/testsuite/libgomp.c/target-51.c b/libgomp/testsuite/libgomp.c/target-51.c
index bbe9ade6e24..db0363bfc14 100644
--- a/libgomp/testsuite/libgomp.c/target-51.c
+++ b/libgomp/testsuite/libgomp.c/target-51.c
@@ -9,8 +9,7 @@
 
 /* See comment in target-50.c/target-50.c for why the output differs.  */
 
-/* { dg-output ".*libgomp: OMP_TARGET_OFFLOAD is set to MANDATORY, but only the host device is available.*" { target { ! offload_device } } } */
-/* { dg-output ".*libgomp: OMP_TARGET_OFFLOAD is set to MANDATORY, but device not found.*" { target offload_device } } */
+/* { dg-output ".*libgomp: OMP_TARGET_OFFLOAD is set to MANDATORY, but .*" } } */
 
 int
 main ()

  reply	other threads:[~2023-06-19  8:03 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-13 18:44 [patch] OpenMP: Set default-device-var with OMP_TARGET_OFFLOAD=mandatory Tobias Burnus
2023-06-14  8:09 ` Fix typo in 'libgomp.c/target-51.c' (was: [patch] OpenMP: Set default-device-var with OMP_TARGET_OFFLOAD=mandatory) Thomas Schwinge
2023-06-14  9:42   ` Tobias Burnus
2023-06-14 10:58     ` Align a 'OMP_TARGET_OFFLOAD=mandatory' diagnostic with others (was: Fix typo in 'libgomp.c/target-51.c' (was: [patch] OpenMP: Set default-device-var with OMP_TARGET_OFFLOAD=mandatory)) Thomas Schwinge
2023-06-16 15:57 ` [committed] libgomp: Fix OMP_TARGET_OFFLOAD=mandatory Tobias Burnus
2023-06-16 20:42   ` Thomas Schwinge
2023-06-19  8:02     ` Tobias Burnus [this message]
2023-06-19 10:24       ` Fix DejaGnu directive syntax error in 'libgomp.c/target-51.c' (was: [committed] libgomp.c/target-51.c: Accept more error-msg variants in dg-output (was: Re: [committed] libgomp: Fix OMP_TARGET_OFFLOAD=mandatory)) Thomas Schwinge

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=f0bce677-da4f-3ccd-d220-ef2e2bbba877@codesourcery.com \
    --to=tobias@codesourcery.com \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=thomas@codesourcery.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).