combine.c (nonzero_bits): Re-introduce special case for sp/fp/ap wrt REGNO_POINTER_ALIGN.

* combine.c (nonzero_bits): Re-introduce special case for
        sp/fp/ap wrt REGNO_POINTER_ALIGN.

From-SVN: r49501
This commit is contained in:
Richard Henderson 2002-02-04 15:06:04 -08:00 committed by Richard Henderson
parent ae4b4a02e8
commit ebbb0a63f4
2 changed files with 12 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2002-02-04 Richard Henderson <rth@redhat.com>
* combine.c (nonzero_bits): Re-introduce special case for
sp/fp/ap wrt REGNO_POINTER_ALIGN.
2002-02-05 Aldy Hernandez <aldyh@redhat.com>
* doc/extend.texi: Warn about unsupported usage of altivec

View File

@ -7896,8 +7896,13 @@ nonzero_bits (x, mode)
#endif
/* Include declared information about alignment of pointers. */
if (REG_POINTER (x) && REGNO_POINTER_ALIGN (REGNO (x)))
/* ??? We don't properly preserve REG_POINTER changes across
pointer-to-integer casts, so we can't trust it except for
things that we know must be pointers. See execute/960116-1.c. */
if ((x == stack_pointer_rtx
|| x == frame_pointer_rtx
|| x == arg_pointer_rtx)
&& REGNO_POINTER_ALIGN (REGNO (x)))
{
unsigned HOST_WIDE_INT alignment
= REGNO_POINTER_ALIGN (REGNO (x)) / BITS_PER_UNIT;