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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |willschm at gcc dot gnu.org
            Summary|ICE: Floating point         |[11/12/13/14 Regression]
                   |exception (in               |ICE: Floating point
                   |is_miss_rate_acceptable),   |exception (in
                   |target assigning alignent   |is_miss_rate_acceptable),
                   |of 4 bits(!) to vector      |target assigning alignent
                   |                            |of 4 bits(!) to vector
      Known to fail|                            |9.1.0
   Target Milestone|---                         |11.5
      Known to work|                            |8.5.0

--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Found it:
        /* In GIMPLE the type of the MEM_REF specifies the alignment.  The
          required alignment (power) is 4 bytes regardless of data type.  */
        tree align_ltype = build_aligned_type (lhs_type, 4);

That should be 4*8 instead of just 4.

There are 2 build_aligned_type in rs6000-builtins.cc which uses the wrong
alignment; thinking it was the alignment argument was bytes rather than bits.

Introduced by r9-2375-g3f7a77cd20d07c which means this is a regression.

Reply via email to