[Bug target/107344] New: GCC/nvptx SESE region optimization

tschwinge at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Fri Oct 21 09:24:39 GMT 2022


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

            Bug ID: 107344
           Summary: GCC/nvptx SESE region optimization
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Keywords: openacc
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: tschwinge at gcc dot gnu.org
                CC: vries at gcc dot gnu.org
  Target Milestone: ---
            Target: nvptx

GCC/nvptx has a "SESE region optimization",
<https://inbox.sourceware.org/gcc-patches/564CC75D.3020309@acm.org>.

A "regression" has been introduced by recent commit
r13-3217-gc4d15dddf6b9eacb36f535807ad2ee364af46e04 "[PR107195] Set range to
zero when nonzero mask is 0":

    UNSUPPORTED: libgomp.oacc-c/../libgomp.oacc-c-c++-common/nvptx-sese-1.c
-DACC_DEVICE_TYPE_nvidia=1 -DACC_MEM_SHARED=0 -foffload=nvptx-none  -O0 
    PASS: libgomp.oacc-c/../libgomp.oacc-c-c++-common/nvptx-sese-1.c
-DACC_DEVICE_TYPE_nvidia=1 -DACC_MEM_SHARED=0 -foffload=nvptx-none  -O2  (test
for excess errors)
    PASS: libgomp.oacc-c/../libgomp.oacc-c-c++-common/nvptx-sese-1.c
-DACC_DEVICE_TYPE_nvidia=1 -DACC_MEM_SHARED=0 -foffload=nvptx-none  -O2 
execution test
    [-PASS:-]{+FAIL:+}
libgomp.oacc-c/../libgomp.oacc-c-c++-common/nvptx-sese-1.c
-DACC_DEVICE_TYPE_nvidia=1 -DACC_MEM_SHARED=0 -foffload=nvptx-none  -O2  
scan-nvptx-none-offload-rtl-dump mach "SESE regions:.*
[0-9]+{[0-9]+->[0-9]+(\\.[0-9]+)+}"

Same for C++.

During investigation of that issue (which I suppose is just one random
example), I found that earlier code transformations/optimizations may inhibit
this "Neuter whole SESE regions" optimization.

It's unclear to me if this is an actual "problem", which optimization is "more
important".


More information about the Gcc-bugs mailing list