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

            Bug ID: 96428
           Summary: [nvptx] nvptx_gen_shuffle does not handle V2DI mode –
                    Fails with an ICE
           Product: gcc
           Version: 10.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: burnus at gcc dot gnu.org
                CC: vries at gcc dot gnu.org
  Target Milestone: ---
            Target: nvptx

Created attachment 48986
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=48986&action=edit
Test case (Fortran, use 'gfortran -fopenacc" with nvptx offloading)

This is a peudoregression due to
https://gcc.gnu.org/g:2ff0f48819c8a7ed5d7c03e2bfc02e5907e2ff1a – however, that
change looks fine. But for this harmlessly looking code, one now gets an ICE.

The ICE is due to nvptx_gen_shuffle not handling V2DI mode but now it is
produced for the testcase.

Additionally, I observe that shfl.mode.b32 (which is used for the implemented
shufflings) the Nvidia documention states: "Deprecated in PTX ISA version 6.0
in favor of shfl.sync." / "Not supported in PTX ISA version 6.4 for .target
sm_70 or higher."
[I find: "Volta (CUDA 9 and later): SM70 or SM_70, compute_70 – Tesla V100, GTX
1180 (GV104) [...]" / "Turing (CUDA 10 and later) SM75 or SM_75, compute_75 –
RTX 2080, Titan RTX, Quadro R8000".]

Reply via email to