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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Target|                            |x86_64-*-*
             Status|RESOLVED                    |REOPENED
          Component|tree-optimization           |middle-end
         Resolution|FIXED                       |---

--- Comment #11 from Richard Biener <rguenth at gcc dot gnu.org> ---
Testcase in comment #2 still ICEs.  As said, similar memcpy/memmove like cases
"work".

struct A { unsigned char a[256]; } __seg_gs a;

void foo ()
{
  a = (struct A){};
}

> ./cc1 -quiet t.c
t.c: In function ‘foo’:
t.c:5:7: internal compiler error: in clear_storage_hints, at expr.c:2973
     a = (struct A){};
     ~~^~~~~~~~~~~~~~
0xaa290f clear_storage_hints(rtx_def*, rtx_def*, block_op_methods, unsigned
int, long, unsigned long, unsigned long, unsigned long)
        /space/rguenther/src/svn/gcc-7-branch/gcc/expr.c:2973
0xaa29a9 clear_storage(rtx_def*, rtx_def*, block_op_methods)
        /space/rguenther/src/svn/gcc-7-branch/gcc/expr.c:2986
0xab3450 expand_constructor

Reply via email to