This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug bootstrap/17484] New: [4.0 regression] bootstrap failure on arm-netbsdelf (iterator test hoisted out of loop)
- From: "rearnsha at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 14 Sep 2004 21:14:01 -0000
- Subject: [Bug bootstrap/17484] New: [4.0 regression] bootstrap failure on arm-netbsdelf (iterator test hoisted out of loop)
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
This bug first appeared sometime between 2004/09/02 and 2004/09/10.
The attached test case is distilled from code in tree-cfg.c and its
miscompilation is causing bootstrap to fail on arm-netbsdelf. The problem seems
to be that the test on the iterator for termination is being hoisted outside of
a loop.
In the t44 dump we have:
if (D.14178_51 == 130) goto <L49>; else goto <L50>;
<L50>:;
goto <bb 11> (<L26>);
<L49>:;
<L19>:;
i_63 = &bsi_19->tsi;
D.14241_65 = i_63->ptr;
D.14242_66 = D.14241_65->next;
i_63->ptr = D.14242_66;
i = *bsi_19;
i$ptr_111 = i.tsi.ptr;
D.14250_70 = i$ptr_111 == 0B;
...
<L53>:;
goto <bb 9> (<L19>);
but by the time we reach t45 dump this has changed to
if (D.14178_51 == 130) goto <L49>; else goto <L50>;
<L50>:;
goto <bb 11> (<L26>);
<L49>:;
i_63 = &bsi_19->tsi;
i = *bsi_19;
i$ptr_111 = i.tsi.ptr;
D.14250_70 = i$ptr_111 == 0B;
D.14247_72 = (unsigned char) D.14250_70;
D.14245_73 = (int) D.14247_72;
D.14176_75 = (unsigned char) D.14245_73;
lsm_tmp.61_27 = i_63->ptr;
# lsm_tmp.61_56 = PHI <lsm_tmp.61_27(23), lsm_tmp.61_101(27)>;
<L19>:;
D.14241_65 = lsm_tmp.61_56;
D.14242_66 = D.14241_65->next;
...
<L53>:;
goto <bb 9> (<L19>);
The problem can be repeated on an arm-elf cross, compiling the attached test
case (partially reduced from tree-cfg.c) with -O2.
--
Summary: [4.0 regression] bootstrap failure on arm-netbsdelf
(iterator test hoisted out of loop)
Product: gcc
Version: 4.0.0
Status: UNCONFIRMED
Severity: critical
Priority: P1
Component: bootstrap
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: rearnsha at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org
GCC target triplet: arm-elf
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17484