You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
On clang 12 on ppc64le with -O2, -fstack-stack-protection sometimes causes some of my tests to fail. I don't really speak PPC assembly so I've pretty much hit the end of my ability to debug this further, sorry.
I'm attaching two test cases, one is the original (pre-processed), the other has been run through cvise to try to reduce it, though I'm not sure that it shows the same issue as the original (it seems to manifest as an infinite loop instead of a segfault like the original).
Compile with something like:
clang -O2 -fstack-clash-protection -o test test.c -lm
The corruption doesn't always occur, so you may have to run it a few times. For me, the counter in the function which calls the individual tests jumps from 76 to 140736792407376 (between the svml/mm256_cdfnorminv_pd and svml/mm512_cdfnorminv_ps tests), and eventually there is a segfault.
I haven't been able to reproduce the problem with earlier versions of clang. The code works on other architectures.
If there is anything else I can do to help please let me know. FWIW, I can provide access to the machine I'm encountering this on, though I only have clang-12 in an F32 docker container.
The text was updated successfully, but these errors were encountered:
commit c87c294397ea4c3dae31f5a7fd6e38602338fd57
Author: Kai Luo <lkail@cn.ibm.com>
Date: Wed Jun 9 02:22:48 2021 +0000
[PowerPC][Dwarf] Assign MMA register's dwarf register number to negative value
commit bf58600badb1138a501ad81b07298207a7a64b2a
Author: Kai Luo <lkail@cn.ibm.com>
Date: Wed Jun 9 06:24:14 2021 +0000
[PowerPC] Make sure the first probe is full size or is the last probe when stack is realigned
Extended Description
On clang 12 on ppc64le with -O2, -fstack-stack-protection sometimes causes some of my tests to fail. I don't really speak PPC assembly so I've pretty much hit the end of my ability to debug this further, sorry.
I'm attaching two test cases, one is the original (pre-processed), the other has been run through cvise to try to reduce it, though I'm not sure that it shows the same issue as the original (it seems to manifest as an infinite loop instead of a segfault like the original).
Compile with something like:
clang -O2 -fstack-clash-protection -o test test.c -lm
The corruption doesn't always occur, so you may have to run it a few times. For me, the counter in the function which calls the individual tests jumps from 76 to 140736792407376 (between the svml/mm256_cdfnorminv_pd and svml/mm512_cdfnorminv_ps tests), and eventually there is a segfault.
I haven't been able to reproduce the problem with earlier versions of clang. The code works on other architectures.
If there is anything else I can do to help please let me know. FWIW, I can provide access to the machine I'm encountering this on, though I only have clang-12 in an F32 docker container.
The text was updated successfully, but these errors were encountered: