This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/28010] New: [4.1/4.2 regression] ICE because of fold_rtx endless recursion
- From: "jakub at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 13 Jun 2006 09:34:03 -0000
- Subject: [Bug middle-end/28010] New: [4.1/4.2 regression] ICE because of fold_rtx endless recursion
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
typedef struct
{
unsigned int addr;
unsigned int next;
unsigned int prev;
} list;
static inline list *
shift (list * l, unsigned na)
{
return (list *) ((char *) l + na);
}
static inline int
is_valid (list * l)
{
return shift (l, l->prev)->next == (l->addr);
}
static inline int
not_empty (list * l)
{
return shift (l, l->next) != l;
}
void aaa (void);
void
func (list * l)
{
unsigned int a = l->addr;
while (1)
{
while (not_empty (l))
aaa ();
if (is_valid (l))
aaa ();
}
}
ICEs with -O1 -m32 and above. Might be related to PR27616, but without
debugging/fixing one of these that's hard to say.
--
Summary: [4.1/4.2 regression] ICE because of fold_rtx endless
recursion
Product: gcc
Version: 4.1.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: middle-end
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jakub at gcc dot gnu dot org
GCC target triplet: i?86-linux
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28010