diff options
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/config/sparc/sparc.c | 6 |
2 files changed, 10 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 62833b2..3f81dc7 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2004-11-22 Eric Botcazou <ebotcazou@libertysurf.fr> + + * config/sparc/sparc.c (mem_min_alignment): Check MEM_ALIGN. + 2004-11-22 David Edelsohn <edelsohn@gnu.org> * config/rs6000/power4.md: Remove delay between dispatch and issue diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c index 69c3bc5..dcacae2 100644 --- a/gcc/config/sparc/sparc.c +++ b/gcc/config/sparc/sparc.c @@ -3983,6 +3983,12 @@ mem_min_alignment (rtx mem, int desired) if (GET_CODE (mem) != MEM) return 0; + /* Obviously... */ + if (MEM_ALIGN (mem) / BITS_PER_UNIT >= (unsigned)desired) + return 1; + + /* ??? The rest of the function predates MEM_ALIGN so + there is probably a bit of redundancy. */ addr = XEXP (mem, 0); base = offset = NULL_RTX; if (GET_CODE (addr) == PLUS) |