[Bug tree-optimization/90837] New: Generate infinite loop when using -ftree-vrp
zhongyunde at huawei dot com
gcc-bugzilla@gcc.gnu.org
Tue Jun 11 14:13:00 GMT 2019
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90837
Bug ID: 90837
Summary: Generate infinite loop when using -ftree-vrp
Product: gcc
Version: 8.2.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: zhongyunde at huawei dot com
Target Milestone: ---
Created attachment 46481
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=46481&action=edit
a simplified test case
compile loop.c with follow command on x86 target , it will Generate infinite
loop, which is not expect.
/home/gcc-serials/GCC/gcc-810/binary/bin/gcc -S -O2 -dpA loop.c
-fdump-tree-vrp-details
test case attached.
if (uwtotalUserNum > 5) {
for (uwUserCountCell0 = 0; uwUserCountCell0 < (uwtotalUserNum - 1);
uwUserCountCell0++) {
for (uwUserCountCell1 = 0; uwUserCountCell1 < (uwtotalUserNum -
(uwUserCountCell0 + 1)); uwUserCountCell1++) {
if
(pstruCodeDetectBuf->auwMulRRUPeakUsrInfo[0][uwUserCountCell1].hfPeakValue <
pstruCodeDetectBuf->auwMulRRUPeakUsrInfo[0][uwUserCountCell1 + 1].hfPeakValue)
{
pstruDetectUserInfoCell0[uwUserCountCell1].uwRachRelativeValue
=
pstruDetectUserInfoCell0[uwUserCountCell1 + 1].uwRachRelativeValue;
}
}
}
in vrp1 dump , there is similar code:
<bb 10> :
# PHI
<bb 11> :
# PHI
...
if (_10 < _12)
goto <bb 12>
else
goto <bb 10>
<bb 12>
...
goto <bb 10>
More information about the Gcc-bugs
mailing list