[Bug c/94179] New: [10 Regression] ICE in gimplify_expr, at gimplify.c:14399 since r10-7127-gcb99630f254aaec6

marxin at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Sun Mar 15 12:18:50 GMT 2020


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94179

            Bug ID: 94179
           Summary: [10 Regression] ICE in gimplify_expr, at
                    gimplify.c:14399 since r10-7127-gcb99630f254aaec6
           Product: gcc
           Version: 9.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: marxin at gcc dot gnu.org
                CC: rguenth at gcc dot gnu.org
  Target Milestone: ---

I see the following ICE isolated from xf86-video-intel package:

$ cat kgem.i
struct kgem_bo {
  int rq;
  int list;
  int pinned_batches[];
} a;

void
fn1() {
  int b = (struct kgem_bo *)((char *)a.pinned_batches[b > 4096] -
                             (char *)&((struct kgem_bo *)0)->list);
}

$ gcc kgem.i -c
kgem.i: In function ‘fn1’:
kgem.i:9:30: warning: cast to pointer from integer of different size
[-Wint-to-pointer-cast]
    9 |   int b = (struct kgem_bo *)((char *)a.pinned_batches[b > 4096] -
      |                              ^
kgem.i:9:11: warning: initialization of ‘int’ from ‘struct kgem_bo *’ makes
integer from pointer without a cast [-Wint-conversion]
    9 |   int b = (struct kgem_bo *)((char *)a.pinned_batches[b > 4096] -
      |           ^
kgem.i:9:57: internal compiler error: in gimplify_expr, at gimplify.c:14399
    9 |   int b = (struct kgem_bo *)((char *)a.pinned_batches[b > 4096] -
      |                                                       ~~^~~~~~
0x69d747 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        /home/marxin/Programming/gcc/gcc/gimplify.c:14399
0xb83ce1 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        /home/marxin/Programming/gcc/gcc/gimplify.c:14369
0xb8409f gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        /home/marxin/Programming/gcc/gcc/gimplify.c:13705
0xb8b079 gimplify_compound_lval
        /home/marxin/Programming/gcc/gcc/gimplify.c:3079
0xb83845 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        /home/marxin/Programming/gcc/gcc/gimplify.c:13554
0xb8409f gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        /home/marxin/Programming/gcc/gcc/gimplify.c:13705
0xb8409f gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        /home/marxin/Programming/gcc/gcc/gimplify.c:13705
0xb8641e gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        /home/marxin/Programming/gcc/gcc/gimplify.c:13761
0xb8c625 gimplify_addr_expr
        /home/marxin/Programming/gcc/gcc/gimplify.c:6171
0xb84284 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        /home/marxin/Programming/gcc/gcc/gimplify.c:13649
0xb8409f gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        /home/marxin/Programming/gcc/gcc/gimplify.c:13705
0xb8409f gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        /home/marxin/Programming/gcc/gcc/gimplify.c:13705
0xb81ce7 gimplify_modify_expr
        /home/marxin/Programming/gcc/gcc/gimplify.c:5766
0xb83e98 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        /home/marxin/Programming/gcc/gcc/gimplify.c:13602
0xb87976 gimplify_stmt(tree_node**, gimple**)
        /home/marxin/Programming/gcc/gcc/gimplify.c:6823
0xb90518 gimplify_and_add(tree_node*, gimple**)
        /home/marxin/Programming/gcc/gcc/gimplify.c:486
0xb90518 gimplify_decl_expr
        /home/marxin/Programming/gcc/gcc/gimplify.c:1816
0xb8509d gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        /home/marxin/Programming/gcc/gcc/gimplify.c:13799
0xb87976 gimplify_stmt(tree_node**, gimple**)
        /home/marxin/Programming/gcc/gcc/gimplify.c:6823
0xb886fe gimplify_bind_expr
        /home/marxin/Programming/gcc/gcc/gimplify.c:1424
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.


More information about the Gcc-bugs mailing list