Closed wheatman closed 7 months ago
The file encoder-320d36.cpp.txt is empty. Is it too large to attach to a bug report?
trying again to upload the file encoder-320d36.cpp.txt
The file uploaded and I have reproduced the crash.
Reduced test case:
void test(char *data, unsigned long size)
{
_Cilk_for (unsigned long i = 0; i < size; i = i + (1 << 21))
((char*) data)[i] = 0;
}
Even more reduced test case:
void test()
{
_Cilk_for (int i = 0; i < 1; i = i + 1)
;
}
The compiler is crashing because it wants i += 1
instead of i = i + 1
.
Looks like I accidentally removed a check for complicated stride calculations during some refactoring of cilk_for
processing. Sorry about that.
I made a PR that seems to fix the issue.
A fix for this crash is included in the latest release.
Describe the bug
Was compiling random old cilk code to test rc2 and found this crash in the ligra code
Expected behavior
for the crash not to happen
OpenCilk version
The code does compile with version
back trace
requested files encoder-320d36.sh.txt encoder-320d36.cpp.txt