aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Wilson <wilson@gcc.gnu.org>1997-02-23 14:17:29 -0800
committerJim Wilson <wilson@gcc.gnu.org>1997-02-23 14:17:29 -0800
commit538bb158647c27e705c7abb73b888c8dce46d8f3 (patch)
treefdeaa7b7a499d09a945f16ce3d799ce9e5edfcdd
parent2ba25f504d54596978a4efa6531cb313688d1ae0 (diff)
downloadgcc-538bb158647c27e705c7abb73b888c8dce46d8f3.zip
gcc-538bb158647c27e705c7abb73b888c8dce46d8f3.tar.gz
gcc-538bb158647c27e705c7abb73b888c8dce46d8f3.tar.bz2
(floatsidf2_loadaddr): Correct syntax for cau instruction.
(load_multiple, store_multiple): Call change_address instead of creating MEM from scratch. From-SVN: r13674
-rw-r--r--gcc/config/rs6000/rs6000.md11
1 files changed, 7 insertions, 4 deletions
diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md
index a5cae5e..a85ee89 100644
--- a/gcc/config/rs6000/rs6000.md
+++ b/gcc/config/rs6000/rs6000.md
@@ -3671,7 +3671,7 @@
xop[0] = operands[0];
xop[1] = (frame_pointer_needed) ? frame_pointer_rtx : stack_pointer_rtx;
xop[2] = GEN_INT ((rs6000_fpmem_offset >> 16) + ((rs6000_fpmem_offset & 0x8000) >> 15));
- output_asm_insn (\"{cau %0,%2(%1)|addis %0,%1,%2}\", xop);
+ output_asm_insn (\"{cau|addis} %0,%1,%2\", xop);
}
else if (rs6000_fpmem_offset < 0)
abort ();
@@ -6291,7 +6291,8 @@
for (i = 0; i < count; i++)
XVECEXP (operands[3], 0, i)
= gen_rtx (SET, VOIDmode, gen_rtx (REG, SImode, regno + i),
- gen_rtx (MEM, SImode, plus_constant (from, i * 4)));
+ change_address (operands[1], SImode,
+ plus_constant (from, i * 4)));
}")
(define_insn ""
@@ -6384,14 +6385,16 @@
to = force_reg (SImode, XEXP (operands[0], 0));
XVECEXP (operands[3], 0, 0)
- = gen_rtx (SET, VOIDmode, gen_rtx (MEM, SImode, to), operands[1]);
+ = gen_rtx (SET, VOIDmode, change_address (operands[0], SImode, to),
+ operands[1]);
XVECEXP (operands[3], 0, 1) = gen_rtx (CLOBBER, VOIDmode,
gen_rtx (SCRATCH, SImode));
for (i = 1; i < count; i++)
XVECEXP (operands[3], 0, i + 1)
= gen_rtx (SET, VOIDmode,
- gen_rtx (MEM, SImode, plus_constant (to, i * 4)),
+ change_address (operands[0], SImode,
+ plus_constant (to, i * 4)),
gen_rtx (REG, SImode, regno + i));
}")