[Bug target/70878] [5/6/7 Regression] ICE in expand_expr_addr_expr_1, at expr.c:7680

2017-04-11 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70878

Martin Liška  changed:

   What|Removed |Added

   Keywords||ice-on-valid-code
 Target|spu |spu, x86_64-linux-gnu
 CC||mpolacek at gcc dot gnu.org
  Known to fail||5.4.0, 6.3.0, 7.0

--- Comment #1 from Martin Liška  ---
Started with r216099, where -fsanitize=object-size was added.

I was able to come up with x86_64-linux-gnu test-case:

$ cat pr70878.c

void * sbrk ()
{
 volatile register unsigned int sp_r1 __asm__ ("ebx");
 return __builtin_strcat (sp_r1, 0);
}

$ gcc pr70878.c  -fsanitize=object-size
pr70878.c: In function ‘sbrk’:
pr70878.c:4:27: warning: passing argument 1 of ‘__builtin_strcat’ makes pointer
from integer without a cast [-Wint-conversion]
  return __builtin_strcat (sp_r1, 0);
   ^
pr70878.c:4:27: note: expected ‘char *’ but argument is of type ‘unsigned int’
pr70878.c:1:8: internal compiler error: in expand_expr_addr_expr_1, at
expr.c:7790
 void * sbrk ()
^~~~
0x9ba0e7 expand_expr_addr_expr_1
../../gcc/expr.c:7790
0x9ad6fb expand_expr_addr_expr
../../gcc/expr.c:7903
0x9ad6fb expand_expr_real_1(tree_node*, rtx_def*, machine_mode,
expand_modifier, rtx_def**, bool)
../../gcc/expr.c:11047
0x9c42b0 expand_expr
../../gcc/expr.h:276
0x9c42b0 expand_expr_real_2(separate_ops*, rtx_def*, machine_mode,
expand_modifier)
../../gcc/expr.c:8301
0x89bd92 expand_gimple_stmt_1
../../gcc/cfgexpand.c:3676
0x89bd92 expand_gimple_stmt
../../gcc/cfgexpand.c:3737
0x89e53e expand_gimple_basic_block
../../gcc/cfgexpand.c:5744
0x8a4606 execute
../../gcc/cfgexpand.c:6357

I'll try to take a look.

[Bug target/70878] [5/6/7 Regression] ICE in expand_expr_addr_expr_1, at expr.c:7680

2017-04-10 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70878

Martin Liška  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2017-04-10
 CC||marxin at gcc dot gnu.org
   Assignee|unassigned at gcc dot gnu.org  |marxin at gcc dot 
gnu.org
Summary|ICE in  |[5/6/7 Regression] ICE in
   |expand_expr_addr_expr_1, at |expand_expr_addr_expr_1, at
   |expr.c:7680 |expr.c:7680
 Ever confirmed|0   |1