Open jyu2-git opened 2 years ago
@llvm/issue-subscribers-openmp
I'm unable to reproduce this crash with the provided source and options, see https://godbolt.org/z/4GbjMarfh. Is this a problem in LLVM/Clang? Or is it only present in Intel's fork.
I'm unable to reproduce this crash with the provided source and options, see https://godbolt.org/z/4GbjMarfh. Is this a problem in LLVM/Clang? Or is it only present in Intel's fork.
Sorry, the assertion only happen with -no-opaque-pointers. With opaqque-pointers turn on by default, the assertion can no longer reproduced. But the test still run failed with: cmplrllvm-39871>./a.out berfor a = 1 2 a.out: /localdisk2/jyu2/git/xmain1/llvm/openmp/libomptarget/src/omptarget.cpp:172: int initLibrary(DeviceTy &): Assertion `CurrDeviceEntry->size == CurrHostEntry->size && "data size mismatch"' failed. Aborted (core dumped)
Is it still an issue?
Yes, could you reproduce the problem with my test. I still see the runtime as: berfor a = 1 2 Segmentation fault (core dumped)
I have a fix in our source base.
@jyu2-git can you upstream it and have Fix #57855.
at the end of your commit message such that this issue can be closed automatically? It would be great if you can make it before the branching of LLVM 16. Thanks!
I can see the problem is we skip the processing if the argument passed to libomptarget
is not a kernel argument.
The problem is there is an extra indirection involved when requires shared memory is used. It seems like there is a missing load from the reference here.
Reproduce:
There is the test case
x.c
: