From 287f13ffddd880630093402bb388011df5a9acb6 Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Wed, 30 Nov 1994 18:21:37 -0500 Subject: [PATCH] (extendsidi2): Use lwa_operand predicate. (sign_extend load with update): New PowerPC64 pattern. From-SVN: r8587 --- gcc/config/rs6000/rs6000.md | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md index 0db9e1d5a66..5343d3cc709 100644 --- a/gcc/config/rs6000/rs6000.md +++ b/gcc/config/rs6000/rs6000.md @@ -422,7 +422,7 @@ (define_insn "" [(set (match_operand:DI 0 "gpc_reg_operand" "=r,r") - (sign_extend:DI (match_operand:SI 1 "reg_or_mem_operand" "m,r")))] + (sign_extend:DI (match_operand:SI 1 "lwa_operand" "m,r")))] "TARGET_POWERPC64" "@ lwa%U1%X1 %0,%1 @@ -4284,6 +4284,17 @@ ldu %3,%2(%0)" [(set_attr "type" "load")]) +(define_insn "" + [(set (match_operand:DI 3 "gpc_reg_operand" "=r") + (sign_extend:DI + (mem:SI (plus:DI (match_operand:DI 1 "gpc_reg_operand" "0") + (match_operand:DI 2 "gpc_reg_operand" "r"))))) + (set (match_operand:DI 0 "gpc_reg_operand" "=b") + (plus:DI (match_dup 1) (match_dup 2)))] + "TARGET_POWERPC64" + "lwaux %3,%0,%2" + [(set_attr "type" "load")]) + (define_insn "" [(set (mem:DI (plus:DI (match_operand:DI 1 "gpc_reg_operand" "0,0") (match_operand:DI 2 "reg_or_short_operand" "r,I"))) -- 2.30.2