drop -aux{dir,base}, revamp -dump{dir,base}

Thomas Schwinge thomas@codesourcery.com
Fri Jul 24 06:01:58 GMT 2020


Hi Alexandre!

On 2020-07-14T01:48:41-0300, Alexandre Oliva <oliva@adacore.com> wrote:
> Sorry it took me so long to get back to you.

Well, likewise.  :-|


> On Jun 30, 2020, Thomas Schwinge <thomas@codesourcery.com> wrote:
>
>> For example, if there are two 'offload_targets' configured, and you do a:
>
>>     PASS: libgomp.c++/scan-offload-1.C scan-offload-tree-dump-times optimized "(?n)^main\\._omp_fn\\.0 " 1
>>     PASS: libgomp.c++/scan-offload-1.C scan-offload-tree-dump-times optimized "(?n)^main\\._omp_fn\\.0 " 1
>
>> Can we easily get the respective offload target into that, or even full
>> 'scoff-format' if that's easier?  I surely could hack up something, but
>> can you see an elegant way?
>
> I'm not sure this is elegant, but...  does it work?
> Ok to install if it does?  (I haven't tested it at all)

Looks "good" ;-) to me -- best we can easily get, and certainly good
enough.  We then change as follows:

    PASS: libgomp.oacc-c/../libgomp.oacc-c-c++-common/pr85381.c -DACC_DEVICE_TYPE_nvidia=1 -DACC_MEM_SHARED=0 -foffload=nvptx-none  -O2   [-scan-offload-rtl-dump-not-]{+scan-nvptx-none-offload-rtl-dump-not+} mach "nvptx_barsync"

..., that is, instead of 'scan-offload-rtl-dump-not' then display
'scan-nvptx-none-offload-rtl-dump-not'.  The latter is no longer the name
of the actual procedure called, but it's close enough.

Please merge in the attached incremental patch to resolve syntax errors.


Grüße
 Thomas


> add offload target to testname for pass/fail message
>
> From: Alexandre Oliva <oliva@adacore.com>
>
> Offload tests that scan dump files may run multiple times, once per
> offload target, but the test result messages do not mention the
> offload target, so we may seem to have repeated results.  Fixed by
> modifying the test name so that it contains the offload target name.
>
>
> for  gcc/testsuite/ChangeLog
>
>       * lib/scanoffload.exp (scoff-testname, scoff-adjust): New.
>       (scoff): Call them.
> ---
>  gcc/testsuite/lib/scanoffload.exp |   17 +++++++++++++++--
>  1 file changed, 15 insertions(+), 2 deletions(-)
>
> diff --git a/gcc/testsuite/lib/scanoffload.exp b/gcc/testsuite/lib/scanoffload.exp
> index 1a26e44..397420a 100644
> --- a/gcc/testsuite/lib/scanoffload.exp
> +++ b/gcc/testsuite/lib/scanoffload.exp
> @@ -22,6 +22,19 @@ proc scoff-format { offtgt suffix } {
>      return ".x$offtgt.mkoffload$suffix"
>  }
>
> +# Adjust an offload dump TESTNAME for offload TARGET.
> +proc scoff-testname { target testname } {
> +    return "$target-$testname"
> +}
> +
> +# Adjust the arglist ARGS, so that argument IDX gets scoff-formatted,
> +# and argument 0 (the test name) gets scoff-testnamed.
> +proc scoff-adjust { args idx target } {
> +    set args [lreplace $args $idx $idx "[scoff-format $target [lindex $args $idx]"]
> +    set args [lreplace $args 0 0 "[scoff-testname $target [lindex $args 0]"]
> +    return $args
> +}
> +
>  # Wrapper for scan procs.
>  # Argument 0 is the index of the argument to replace when calling
>  # argument 1 with the remaining arguments.  Use end-1 or end or so.
> @@ -34,7 +47,7 @@ proc scoff { args } {
>      if [info exists offload_target] {
>       set target $offload_target
>       if { "$target" != "disable" } {
> -         eval $prc [lreplace $args $idx $idx "[scoff-format $target [lindex $args $idx]]"]
> +         eval $prc [scoff-adjust $args $idx $target]
>       }
>      } else {
>       global offload_targets
> @@ -42,7 +55,7 @@ proc scoff { args } {
>           # HSA offloading is doing things differently, doesn't use 'mkoffload'.
>           if { "$target" == "hsa" } continue
>
> -         eval $prc [lreplace $args $idx $idx "[scoff-format $target [lindex $args $idx]]"]
> +         eval $prc [scoff-adjust $args $idx $target]
>       }
>      }
>  }


-----------------
Mentor Graphics (Deutschland) GmbH, Arnulfstraße 201, 80634 München / Germany
Registergericht München HRB 106955, Geschäftsführer: Thomas Heurung, Alexander Walter
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-into-add-offload-target-to-testname-for-pass-fail-me.patch
Type: text/x-diff
Size: 1126 bytes
Desc: not available
URL: <https://gcc.gnu.org/pipermail/gcc-patches/attachments/20200724/88400041/attachment.bin>


More information about the Gcc-patches mailing list