[Bug rtl-optimization/58853] New: [4.9 regression] ICE after r203937

ysrumyan at gmail dot com gcc-bugzilla@gcc.gnu.org
Wed Oct 23 14:05:00 GMT 2013


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

            Bug ID: 58853
           Summary: [4.9 regression] ICE after r203937
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: rtl-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ysrumyan at gmail dot com

After fix for memcpy/memset expansion on x86 target we have met with ICE on the
following simple test:

void
my_memcpy (char *dest, const char *src, int n)
{
  __builtin_memcpy (dest, src, n);
}
which must be compiled with 
  -m32 -mtune=pentiumpro -minline-all-stringops
options.

The issue is an assert:

      gcc_assert (desired_align <= size);
in expand_set_or_movmem_prologue_epilogue_by_misaligned_moves but for
pentium-pro
we have the following exception for desired_align calculation:

  /* PentiumPro has special logic triggering for 8 byte aligned blocks.
     copying whole cacheline at once.  */
  if (TARGET_PENTIUMPRO
      && (alg == rep_prefix_4_byte || alg == rep_prefix_1_byte))
    desired_align = 8;



More information about the Gcc-bugs mailing list