public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/102204] New: OpenMP offload map type restriction
@ 2021-09-05  3:30 xw111luoye at gmail dot com
  2021-09-13 13:41 ` [Bug c++/102204] " jakub at gcc dot gnu.org
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: xw111luoye at gmail dot com @ 2021-09-05  3:30 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 102204
           Summary: OpenMP offload map type restriction
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: xw111luoye at gmail dot com
  Target Milestone: ---

With branch devel/omp/gcc-11
I'm getting
/home/yeluo/opt/qmcpack/build_rtx3060_gcc_offload_real/src/config.h:42:29:
error: array section does not have mappable type in ‘map’ clause
   42 |   #define PRAGMA_OFFLOAD(x) _Pragma(x)
      |                             ^~~~~~~
/home/yeluo/opt/qmcpack/src/Particle/SoaDistanceTableAAOMPTarget.h:84:5: note:
in expansion of macro ‘PRAGMA_OFFLOAD’
   84 |     PRAGMA_OFFLOAD("omp target enter data map(to : this[:1])")
      |     ^~~~~~~~~~~~~~
In file included from
/home/yeluo/opt/qmcpack/src/Particle/createDistanceTableAAOMPTarget.cpp:19:
/home/yeluo/opt/qmcpack/src/Particle/SoaDistanceTableAAOMPTarget.h:31:8: note:
type ‘qmcplusplus::SoaDistanceTableAAOMPTarget<double, 3, 41>’ with virtual
members is not mappable
   31 | struct SoaDistanceTableAAOMPTarget : public DTD_BConds<T, D, SC>,
public DistanceTableData
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~

because SoaDistanceTableAAOMPTarget is a derived class and there is virtual
function overriding.
https://github.com/QMCPACK/qmcpack/blob/1a7af8e589726a91da94e5f6ad8b4e8d9e2acd4d/src/Particle/SoaDistanceTableAAOMPTarget.h#L31

In my case virtual functions are never called in offload region and I map
"this[:1]" for easy access a fixed data set. So I'm expecting just bit wise
copy to the device.

please remove this restriction.

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2022-02-10 18:07 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-05  3:30 [Bug c++/102204] New: OpenMP offload map type restriction xw111luoye at gmail dot com
2021-09-13 13:41 ` [Bug c++/102204] " jakub at gcc dot gnu.org
2021-09-13 14:03 ` xw111luoye at gmail dot com
2022-01-28 18:27 ` xw111luoye at gmail dot com
2022-02-10 18:04 ` cvs-commit at gcc dot gnu.org
2022-02-10 18:07 ` burnus at gcc dot gnu.org

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).