http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54109

             Bug #: 54109
           Summary: ICE at tree-ssa-structalias.c:3049 in
                    get_constraint_for_component_ref
    Classification: Unclassified
           Product: gcc
           Version: 4.8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: mer...@savhon.org


Hello !
I was trying to compile the Linux 3.5 kernel with GCC 4.8.0 as of 20120725 (at
-O{2,3}) when it ICEd on kernel/cpuset.c. Here is a reduced testcase that
reproduces the issue :

$ cat cpuset.c

typedef struct
{
    unsigned long bits[4];
} nodemask_t;

struct cpuset
{
    long flags;
    nodemask_t mems_allowed;
    struct cpuset *parent;
} b;

void func1(unsigned long *p1, int p2)
{
    p1[p2 - 1] = 0;
}

void func2(nodemask_t *p1, int p2)
{
    func1(p1->bits, p2);
}

void func3(void)
{
    func2(&b.mems_allowed, 0);
}

$ xgcc -c cpuset.c -O2

cpuset.c: In function ‘func3’:
cpuset.c:26:1: internal compiler error: in get_constraint_for_component_ref, at
tree-ssa-structalias.c:3049
 }
 ^
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.

GCC 4.7.0 compiles it fine.

Reply via email to