This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
fix some alpha regressions
- From: Richard Henderson <rth at redhat dot com>
- To: gcc-patches at gcc dot gnu dot org
- Date: Sat, 4 Dec 2004 10:14:22 -0800
- Subject: fix some alpha regressions
Oops. Fixes all the compat test cases.
r~
* config/alpha/alpha.c (alpha_expand_unaligned_load): Don't forget to
use ofs in BWX two byte special case.
(alpha_expand_unaligned_store): Likewise.
Index: config/alpha/alpha.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/alpha/alpha.c,v
retrieving revision 1.401
diff -c -p -d -r1.401 alpha.c
*** config/alpha/alpha.c 9 Nov 2004 10:12:52 -0000 1.401
--- config/alpha/alpha.c 4 Dec 2004 18:09:12 -0000
*************** alpha_expand_unaligned_load (rtx tgt, rt
*** 3166,3173 ****
if (TARGET_BWX && size == 2)
{
! meml = adjust_address (mem, QImode, 0);
! memh = adjust_address (mem, QImode, 1);
if (BYTES_BIG_ENDIAN)
tmp = meml, meml = memh, memh = tmp;
extl = gen_reg_rtx (DImode);
--- 3166,3173 ----
if (TARGET_BWX && size == 2)
{
! meml = adjust_address (mem, QImode, ofs);
! memh = adjust_address (mem, QImode, ofs+1);
if (BYTES_BIG_ENDIAN)
tmp = meml, meml = memh, memh = tmp;
extl = gen_reg_rtx (DImode);
*************** alpha_expand_unaligned_store (rtx dst, r
*** 3328,3335 ****
else
dstl = dsth = const0_rtx;
! meml = adjust_address (dst, QImode, 0);
! memh = adjust_address (dst, QImode, 1);
if (BYTES_BIG_ENDIAN)
addr = meml, meml = memh, memh = addr;
--- 3328,3335 ----
else
dstl = dsth = const0_rtx;
! meml = adjust_address (dst, QImode, ofs);
! memh = adjust_address (dst, QImode, ofs+1);
if (BYTES_BIG_ENDIAN)
addr = meml, meml = memh, memh = addr;