------- Additional Comments From ak at muc dot de 2004-10-31 01:07 -------
Created an attachment (id=7440)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=7440&action=view)
miscompiled function
Compiled with -O2 -fno-reorder-blocks -mno-redzone -mcmodel=kernel
It crashes eventually in this loop
do {
int idx;
tag_clear(pathp[0].node, tag, pathp[0].offset);
for (idx = 0; idx < (((1UL << 6) + 64 - 1) / 64); idx++) {
if (pathp[0].node->tags[tag][idx])
goto out;
}
pathp--;
} while (pathp[0].node);
when accessing pathp[0].node. I suspect it is overrunning the array on the
stack. With -O0 this crash doesn't happen.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18241