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

Thomas Schwinge <tschwinge at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |15.0
                 CC|                            |tschwinge at gcc dot gnu.org
           Keywords|                            |openmp

--- Comment #2 from Thomas Schwinge <tschwinge at gcc dot gnu.org> ---
Benjamin, thanks for this one, too.  This now works with (the upcoming) GCC 15:
compiles, executes (tested Nvidia GPU) without error, produces output (that
I've not verified in detail).

I'm curious about a few of your comments, please feel free to provide some more
context if you'd like:

> interestingly, local arrays on the stack work on clang in target regions.

Yes, that's expected to work.  (Within the smallish GPU stack size
constraints.)

> interestingly, with clang, one can do pointer arithmetic on target regions, 
> so the pointers are really target pointers now..

Yes, that's expected to behave according to base language standards.

> interestingly, ['new'] works on clang on target regions. On gcc, this 
> apparently does not work.

Now it does (PR101544).

> also, one can allocate memory in the target region with omp alloc.

Yes.

> ['device' clause confusion]

I can't comment on what LLVM is doing, but with GCC this is expected to behave
as documented by OpenMP.

Reply via email to