[Bug fortran/98476] New: OpenMP offload syntax restriction

2020-12-29 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98476

Bug ID: 98476
   Summary: OpenMP offload syntax restriction
   Product: gcc
   Version: 10.2.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
  Assignee: unassigned at gcc dot gnu.org
  Reporter: xw111luoye at gmail dot com
  Target Milestone: ---

C version code works. The corresponding Fortran version is blocked by the
compiler errror.

C version:
#include 

int main()
{
  int a[1];
  int* b = a;
  a[0] = 0;
  #pragma omp target enter data map(to:b[:1])
  #pragma omp target data use_device_ptr(b)
  {
#pragma omp target is_device_ptr(b)
{
  b[0] = 1;
}
  }
  printf("value before exit data %d\n", b[0]);
  #pragma omp target exit data map(from:b[:1])
  printf("value after exit data %d\n", b[0]);
  return 0;
}


Fortran version, XL fortran compiler works with this case.
program abc
  implicit none
  integer a

  a = 0
  call test(a)

contains
  subroutine test(a)
implicit none
integer a

  !$omp target enter data map(to:a)
  !$omp target data use_device_ptr(a)
  ! Error: TARGET DATA must contain at least one MAP clause at (1)
  ! after adding map(to: a), the second printout is still wrong.
  !$omp target is_device_ptr(a)
a = 1
  !$omp end target
  !$omp end target data
  write(6,*) "before exit data a = ", a
  !$omp target exit data map(from:a)
  write(6,*) "after exit data a = ", a

  endsubroutine
end program

[Bug fortran/98476] OpenMP offload syntax restriction

2020-12-30 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98476

--- Comment #2 from Ye Luo  ---
@jakub thanks for the quick reply. However, even if I add map(to: a) which is
almost a no-op to satisfy the compiler for 4.5 spec. The printout result is
still wrong. It should be 0 and 1 but the fortran case prints 0 and 0.

[Bug fortran/98476] OpenMP offload syntax restriction

2020-12-30 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98476

--- Comment #3 from Ye Luo  ---
I verified that current master has removed the syntax restriction. However, the
printout remains incorrect.

[Bug fortran/98858] OpenMP offload target data ICE at use_device_ptr

2021-01-27 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98858

--- Comment #1 from Ye Luo  ---
GNU Fortran (GCC) 11.0.0 20210127 (experimental)

[Bug fortran/98858] New: OpenMP offload target data ICE at use_device_ptr

2021-01-27 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98858

Bug ID: 98858
   Summary: OpenMP offload target data ICE at use_device_ptr
   Product: gcc
   Version: 11.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
  Assignee: unassigned at gcc dot gnu.org
  Reporter: xw111luoye at gmail dot com
  Target Milestone: ---

Getting ICE


yeluo@ryzen-box:~/opt/openmp-target/hands-on/tests/fortran_use_device_ptr$
gfortran -fopenmp test_use_device_ptr_target.f90 
test_use_device_ptr_target.f90:15:41:

   15 |   !$omp target data use_device_ptr(a)
  | ^
internal compiler error: Segmentation fault
0xf55ee3 crash_signal

source code at.
https://github.com/ye-luo/openmp-target/blob/master/hands-on/tests/fortran_use_device_ptr/test_use_device_ptr_target.f90

[Bug c++/98862] New: Complex reduction support in offload region

2021-01-27 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98862

Bug ID: 98862
   Summary: Complex reduction support in offload region
   Product: gcc
   Version: 11.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: xw111luoye at gmail dot com
  Target Milestone: ---

Using std::complex type in offload region is highly desired.

$ g++ -fopenmp complex_reduction.cpp
ptxas /tmp/cceLNaYr.o, line 484; error   : Label expected for argument 0 of
instruction 'call'
ptxas /tmp/cceLNaYr.o, line 484; error   : Function '_ZNSt7complexIfEC1Eff' not
declared in this scope
ptxas /tmp/cceLNaYr.o, line 484; fatal   : Call target not recognized
ptxas fatal   : Ptx assembly aborted due to errors
nvptx-as: ptxas returned 255 exit status
mkoffload: fatal error: x86_64-pc-linux-gnu-accel-nvptx-none-gcc returned 1
exit status
compilation terminated.
lto-wrapper: fatal error:
/soft/gcc/gcc-11-dev-2021-01-27/bin/../libexec/gcc/x86_64-pc-linux-gnu/11.0.0//accel/nvptx-none/mkoffload
returned 1 exit status
compilation terminated.
/usr/bin/ld: error: lto-wrapper failed
collect2: error: ld returned 1 exit status

$ g++ -fopenmp -O2 complex_reduction.cpp
unresolved symbol __atomic_compare_exchange_16
collect2: error: ld returned 1 exit status
mkoffload: fatal error: x86_64-pc-linux-gnu-accel-nvptx-none-gcc returned 1
exit status
compilation terminated.
lto-wrapper: fatal error:
/soft/gcc/gcc-11-dev-2021-01-27/bin/../libexec/gcc/x86_64-pc-linux-gnu/11.0.0//accel/nvptx-none/mkoffload
returned 1 exit status
compilation terminated.
/usr/bin/ld: error: lto-wrapper failed
collect2: error: ld returned 1 exit status

The -O2 is more useful for production. Fixing both are desired.

source code:
https://github.com/ye-luo/openmp-target/blob/master/hands-on/tests/complex/complex_reduction.cpp

[Bug c++/98869] New: Allowing mapping this in OpenMP target

2021-01-28 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98869

Bug ID: 98869
   Summary: Allowing mapping this in OpenMP target
   Product: gcc
   Version: 11.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: xw111luoye at gmail dot com
  Target Milestone: ---

this restriction seems unnecessary.

/home/yeluo/opt/qmcpack/src/Particle/SoaDistanceTableABOMPTarget.h:63:42:
error: ‘this’ allowed in OpenMP only in ‘declare simd’ clauses
   63 | #pragma omp target enter data map(to:this[:1])

[Bug c++/98869] Allowing mapping this in OpenMP target

2021-01-28 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98869

--- Comment #1 from Ye Luo  ---
Full source code at
https://github.com/QMCPACK/qmcpack/blob/a23584738485bb7c948d0ba1841c669fe76500b6/src/Particle/SoaDistanceTableABOMPTarget.h#L63

[Bug target/98862] Complex reduction support in offload region

2021-01-28 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98862

--- Comment #3 from Ye Luo  ---
Cool. -foffload=-latomic resolved my problem.

[Bug libgomp/66756] libgfortran: ThreadSanitizer: lock-order-inversion

2021-05-22 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66756

Ye Luo  changed:

   What|Removed |Added

 CC||xw111luoye at gmail dot com

--- Comment #18 from Ye Luo  ---
My GCC 11.1.0 built with --disable-linux-futex still prints warning.

Used suppression file with one line to work around this issue
deadlock:libgfortran

[Bug c++/102204] OpenMP offload map type restriction

2021-09-13 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102204

--- Comment #2 from Ye Luo  ---
User code has been written in mostly 5.0 fashion as 4.5 has too many
restrictions. For most users, they only need a subset of 5.0 feature with
up-to-date compilers and fully implemented 5.0 is not expected.

Back to this issue, could the compiler just issue a warning instead of a full
stop? In my case, bitwise copying of a struct is sufficient. Namely use the
struct as if there is no virtual method. At least this unblock some potential
users.

[Bug c++/98869] Allowing mapping this in OpenMP target

2021-09-13 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98869

Ye Luo  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED

--- Comment #4 from Ye Luo  ---
This part of issue has been resolved but compiling the full source code still
need to address https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102204

[Bug c++/98869] Allowing mapping this in OpenMP target

2021-09-04 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98869

--- Comment #3 from Ye Luo  ---
This doesn't work with gcc 11.2 but works on devel/omp/gcc-11 branch.

[Bug c++/102204] New: OpenMP offload map type restriction

2021-09-04 Thread xw111luoye at gmail dot com via 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’ with virtual
members is not mappable
   31 | struct SoaDistanceTableAAOMPTarget : public DTD_BConds,
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.

[Bug target/104283] New: nvptx-none needs more user friendly architecture handling

2022-01-29 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104283

Bug ID: 104283
   Summary: nvptx-none needs more user friendly architecture
handling
   Product: gcc
   Version: 12.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: xw111luoye at gmail dot com
  Target Milestone: ---

x86_64-pc-linux-gnu-accel-nvptx-none-gcc needs both -misa and -mptx to select a
specific target.

When I use OpenMP offload.
-foffload-options=nvptx-none="-misa=sm_80"
I got error
```
ptxas /tmp/ccW7wYQT.o, line 3; error   : PTX .version 3.1 does not support
.target sm_80
ptxas /tmp/ccW7wYQT.o, line 2622; warning : Instruction 'shfl' without '.sync'
may produce unpredictable results on sm_70 and later architectures
```

Then I have to get it through with
-foffload-options=nvptx-none="-misa=sm_80 -mptx=7.0"

I think GPU users know what sm_80 is but they rarely know PTX.
Can we -mptx default to highest -misa selection supports?

Or introduce something like -march=sm_80 and map it to appropriate -misa and
-mptx.

Simplify the need of options is much appreciated.

[Bug c++/104285] New: openmp offload linker issue

2022-01-29 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104285

Bug ID: 104285
   Summary: openmp offload linker issue
   Product: gcc
   Version: 12.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: xw111luoye at gmail dot com
  Target Milestone: ---

miniQMC https://github.com/ye-luo/miniqmc
ships a set of OpenMP offload tests.
```
cmake -DCMAKE_CXX_COMPILER=g++ -DENABLE_OFFLOAD=ON ..
make -j32
```

When those tests are compiled into individual executables.
All tests compile/link/run fine.

However if all the tests are linked together into a single executable
test_omptarget_all_in_one
I got 
```
lto1: fatal error:
CMakeFiles/test_omptarget_all_in_one.dir/test_omp_reduction.cpp.o: section
_ZN11qmcplusplusL29C_A_T_C_HT_E_S_T0Ev$_omp_fn$1.3169 is missing
compilation terminated.
mkoffload: fatal error:
/soft/gcc/gcc-12-dev-2022-01-28/bin/x86_64-pc-linux-gnu-accel-nvptx-none-gcc
returned 1 exit status
compilation terminated.
lto-wrapper: fatal error:
/soft/gcc/gcc-12-dev-2022-01-28/libexec/gcc/x86_64-pc-linux-gnu/12.0.1//accel/nvptx-none/mkoffload
returned 1 exit status
compilation terminated.
/usr/bin/ld: error: lto-wrapper failed
collect2: error: ld returned 1 exit status
make[2]: ***
[src/Platforms/tests/OMPTarget/CMakeFiles/test_omptarget_all_in_one.dir/build.make:359:
src/Platforms/tests/OMPTarget/test_omptarget_all_in_one] Error 1
make[1]: *** [CMakeFiles/Makefile2:1656:
src/Platforms/tests/OMPTarget/CMakeFiles/test_omptarget_all_in_one.dir/all]
Error 2
make: *** [Makefile:101: all] Error 2
```

gcc compiler commit 3f0fcda37f58d4108feb67de08f181a32bcb6388

[Bug c++/102204] OpenMP offload map type restriction

2022-01-28 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102204

--- Comment #3 from Ye Luo  ---
I tried today's main 3f0fcda37f58d4108feb67de08f181a32bcb6388.
This issue persists. Any chance this will be resolved in 12 release?

[Bug middle-end/104285] openmp offload linker issue

2022-02-08 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104285

--- Comment #1 from Ye Luo  ---
Here is a minimal reproducer.
https://github.com/ye-luo/openmp-target/tree/master/tests/linking/two_identical_templates

$ g++ -fopenmp -foffload=nvptx-none -O3 -c test_a.cpp 
$ g++ -fopenmp -foffload=nvptx-none -c test_a.cpp 
$ g++ -fopenmp -foffload=nvptx-none -c test_b.cpp 
$ g++ -fopenmp -foffload=nvptx-none  main.cpp test_a.o test_b.o 
lto1: fatal error: test_a.o: section _Z8test_mapIfEvv$_omp_fn$0.2375 is missing
compilation terminated.
mkoffload: fatal error: x86_64-pc-linux-gnu-accel-nvptx-none-gcc returned 1
exit status
compilation terminated.
lto-wrapper: fatal error:
/soft/gcc/gcc-12-dev-2022-02-08/libexec/gcc/x86_64-pc-linux-gnu/12.0.1//accel/nvptx-none/mkoffload
returned 1 exit status
compilation terminated.
/usr/bin/ld: error: lto-wrapper failed
collect2: error: ld returned 1 exit status

$ g++ -fopenmp -foffload=disable -c test_a.cpp
$ g++ -fopenmp -foffload=disable -c test_b.cpp
g++ -fopenmp -foffload=disable main.cpp test_a.o test_b.o

Using be862bf1f612c884597ace4cbfdec972a0bf0eef from master

[Bug c++/104493] New: OpenMP offload map cannot handle const

2022-02-10 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104493

Bug ID: 104493
   Summary: OpenMP offload map cannot handle const
   Product: gcc
   Version: 12.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: xw111luoye at gmail dot com
  Target Milestone: ---

See reproducer
https://github.com/ye-luo/openmp-target/blob/master/tests/map/struct_with_const.cpp

$ g++ -fopenmp -foffload=nvptx-none struct_with_const.cpp
struct_with_const.cpp: In constructor ‘with_const::with_const()’:
struct_with_const.cpp:9:42: error: array section does not have mappable type in
‘map’ clause
9 | #pragma omp target enter data map(to:this[:1])
  |  ^~~~
struct_with_const.cpp:12:24: note: static field ‘with_const::size’ is not
mappable
   12 |   constexpr static int size = 6;
  |^~~~
struct_with_const.cpp:13:20: note: static field ‘with_const::b’ is not mappable
   13 |   static const int b = 12;
  |^
In file included from
/soft/gcc/gcc-12-dev-2022-02-10/include/c++/12.0.1/string:53,
 from
/soft/gcc/gcc-12-dev-2022-02-10/include/c++/12.0.1/bits/locale_classes.h:40,
 from
/soft/gcc/gcc-12-dev-2022-02-10/include/c++/12.0.1/bits/ios_base.h:41,
 from
/soft/gcc/gcc-12-dev-2022-02-10/include/c++/12.0.1/ios:42,
 from
/soft/gcc/gcc-12-dev-2022-02-10/include/c++/12.0.1/ostream:38,
 from
/soft/gcc/gcc-12-dev-2022-02-10/include/c++/12.0.1/iostream:39,
 from struct_with_const.cpp:1:
/soft/gcc/gcc-12-dev-2022-02-10/include/c++/12.0.1/bits/basic_string.h:140:33:
note: static field ‘std::__cxx11::basic_string::npos’ is not mappable
  140 |   static const size_typenpos = static_cast(-1);
  | ^~~~
struct_with_const.cpp:9:13: error: ‘#pragma omp target enter data’ must contain
at least one ‘map’ clause
9 | #pragma omp target enter data map(to:this[:1])
  |

[Bug c++/104493] OpenMP offload map cannot handle const

2022-05-23 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104493

Ye Luo  changed:

   What|Removed |Added

 CC||burnus at gcc dot gnu.org

--- Comment #1 from Ye Luo  ---
gcc 12 rejects the code but devel/omp/gcc-11 was happy.

[Bug c++/104493] OpenMP offload map cannot handle const

2022-05-25 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104493

--- Comment #3 from Ye Luo  ---
Thank you for the answer with well explained development procedure of gcc. I
was intended to keep this bug report active. I just adopted OpenMP offload
options adjusted in gcc 12 but OG11 doesn't have them due to using 11 as its
base. So looking forward to updates on gcc 12 mainline or og12 branch.

[Bug c++/104493] OpenMP offload map cannot handle const

2022-07-04 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104493

--- Comment #4 from Ye Luo  ---
When I tried master and devel/omp/gcc-12, the fix has not been applied.
Just keep a note here. Probably this has been planned.

[Bug c++/105299] New: dereference null pointer

2022-04-17 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105299

Bug ID: 105299
   Summary: dereference null pointer
   Product: gcc
   Version: 9.3.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: xw111luoye at gmail dot com
  Target Milestone: ---

My application runs in parallel on Power9 RHEL 8.2 using gcc 9.3. The failure
doesn't show up in small scale runs. However, when running with 24576(4096*6)
MPI processes,

code:
void* ArgMappers; // passed in as a function argument.
...
if (ArgMappers) {
  fprintf(stderr, "ArgMappers is not nullptr %p, I = %d\n", ArgMappers, I);
  if (ArgMappers[I]) {

segfault happens at the second 'if'.
the print out and failure message is
ArgMappers is not nullptr (nil), I = 3
[g32n01:3164430] *** Process received signal ***
[g32n01:3164430] Signal: Segmentation fault (11)
[g32n01:3164430] Signal code: Address not mapped (1)
[g32n01:3164430] Failing at address: 0x18

It is very strange that the first if check passed while ArgMappers is has a
value NULL as the printf shows.
In a few more runs, I got at least three failing
"Failing at address" 0x8 0x18 0x40
Any insight is welcome.

[Bug c++/105299] dereference null pointer

2022-04-17 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105299

--- Comment #3 from Ye Luo  ---
Unfortunately there is no easy reproducer.
Even without the printf. I got the same failure.
Will try with a debugger.

[Bug c++/106829] [12/13 Regression] OpenMP offload internal compiler error: in gimplify_expr, at gimplify.cc:16222 since r12-5835

2022-09-07 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106829

Ye Luo  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #5 from Ye Luo  ---
Now all works well in my tests.

[Bug c++/106829] New: OpenMP offload internal compiler error: in gimplify_expr, at gimplify.cc:16222

2022-09-04 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106829

Bug ID: 106829
   Summary: OpenMP offload internal compiler error: in
gimplify_expr, at gimplify.cc:16222
   Product: gcc
   Version: 13.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: xw111luoye at gmail dot com
  Target Milestone: ---

Created attachment 53537
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=53537=edit
reproducer source code

A minimal source code MultiDiracDeterminant.one.cpp is attached.

$ g++ -march=native -fopenmp -foffload=nvptx-none -foffload-options="-lm
-latomic" -O3 -DNDEBUG -std=c++17 MultiDiracDeterminant.one.cpp -c
/home/yeluo/opt/qmcpack/src/QMCWaveFunctions/Fermion/MultiDiracDeterminant.2.cpp:
In static member function ‘static void
qmcplusplus::MultiDiracDeterminant::mw_evaluateDetsForPtclMove(const
qmcplusplus::RefVectorWithLeader&, const
qmcplusplus::RefVectorWithLeader&, int)’:
/home/yeluo/opt/qmcpack/src/QMCWaveFunctions/Fermion/MultiDiracDeterminant.2.cpp:125:9:
internal compiler error: in gimplify_expr, at gimplify.cc:16222
  125 | PRAGMA_OFFLOAD("omp target teams distribute map(always,
from:curRatio_list_ptr[:nw]) \
  | ^~~
0x868378 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
../../gcc/gcc/gimplify.cc:16222
0x102b4d9 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
../../gcc/gcc/gimplify.cc:15514
0x102d6fc gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
../../gcc/gcc/gimplify.cc:15330
0x1042ea4 gimplify_scan_omp_clauses
../../gcc/gcc/gimplify.cc:10293
0x1051438 gimplify_omp_workshare
../../gcc/gcc/gimplify.cc:14244
0x102aa32 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
../../gcc/gcc/gimplify.cc:15751
0x102ee1a gimplify_stmt(tree_node**, gimple**)
../../gcc/gcc/gimplify.cc:7156
0x102beab gimplify_statement_list
../../gcc/gcc/gimplify.cc:2025
0x102beab gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
../../gcc/gcc/gimplify.cc:15654
0x102ee1a gimplify_stmt(tree_node**, gimple**)
../../gcc/gcc/gimplify.cc:7156
0x102f640 gimplify_bind_expr
../../gcc/gcc/gimplify.cc:1434
0x102bdce gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
../../gcc/gcc/gimplify.cc:15410
0x102ee1a gimplify_stmt(tree_node**, gimple**)
../../gcc/gcc/gimplify.cc:7156
0x102beab gimplify_statement_list
../../gcc/gcc/gimplify.cc:2025
0x102beab gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
../../gcc/gcc/gimplify.cc:15654
0x102ee1a gimplify_stmt(tree_node**, gimple**)
../../gcc/gcc/gimplify.cc:7156
0x102b266 gimplify_and_add(tree_node*, gimple**)
../../gcc/gcc/gimplify.cc:496
0x102b266 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
../../gcc/gcc/gimplify.cc:15561
0x102ee1a gimplify_stmt(tree_node**, gimple**)
../../gcc/gcc/gimplify.cc:7156
0x102beab gimplify_statement_list
../../gcc/gcc/gimplify.cc:2025
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See  for instructions.

[Bug target/98862] Complex reduction support in offload region

2022-09-08 Thread xw111luoye at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98862

Ye Luo  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |INVALID

--- Comment #4 from Ye Luo  ---
No fix needed.