From 9d53c942648faa593c459b137142338e9864dc53 Mon Sep 17 00:00:00 2001 From: Jeff Law Date: Wed, 18 Aug 1993 10:34:05 -0600 Subject: [PATCH] pa.md (movdf insn): Distinguish between offsettable and nonoffsettable memory locations when... * pa.md (movdf insn): Distinguish between offsettable and nonoffsettable memory locations when loading/storing a GR. (movdi insn): Likewise. Loading a DImode constant can take as many os 4 insns. From-SVN: r5182 --- gcc/config/pa/pa.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/gcc/config/pa/pa.md b/gcc/config/pa/pa.md index ea9137e37a3..732ec4ec38c 100644 --- a/gcc/config/pa/pa.md +++ b/gcc/config/pa/pa.md @@ -1355,9 +1355,9 @@ (define_insn "" [(set (match_operand:DF 0 "reg_or_nonsymb_mem_operand" - "=fx,*r,Q,?Q,fx,*&r") + "=fx,*r,Q,?o,?Q,fx,*&r,*&r") (match_operand:DF 1 "reg_or_0_or_nonsymb_mem_operand" - "fxG,*rG,fx,*r,Q,Q"))] + "fxG,*rG,fx,*r,*r,Q,o,Q"))] "register_operand (operands[0], DFmode) || reg_or_0_operand (operands[1], DFmode)" "* @@ -1367,8 +1367,8 @@ return output_fp_move_double (operands); return output_move_double (operands); }" - [(set_attr "type" "fpalu,move,fpstore,store,fpload,load") - (set_attr "length" "4,8,4,8,4,8")]) + [(set_attr "type" "fpalu,move,fpstore,store,store,fpload,load,load") + (set_attr "length" "4,8,4,8,16,4,8,16")]) (define_insn "" [(set (match_operand:DF 0 "register_operand" "=fx") @@ -1472,9 +1472,9 @@ (define_insn "" [(set (match_operand:DI 0 "reg_or_nonsymb_mem_operand" - "=r,Q,&r,&r,x,x,*T") + "=r,o,Q,&r,&r,&r,x,x,*T") (match_operand:DI 1 "general_operand" - "rM,r,Q,i,xM,*T,x"))] + "rM,r,r,o,Q,i,xM,*T,x"))] "register_operand (operands[0], DImode) || reg_or_0_operand (operands[1], DImode)" "* @@ -1484,8 +1484,8 @@ return output_fp_move_double (operands); return output_move_double (operands); }" - [(set_attr "type" "move,store,load,misc,fpalu,fpload,fpstore") - (set_attr "length" "8,12,12,12,4,4,4")]) + [(set_attr "type" "move,store,store,load,load,misc,fpalu,fpload,fpstore") + (set_attr "length" "8,8,16,8,16,16,4,4,4")]) (define_insn "" [(set (match_operand:DI 0 "register_operand" "=r,r") -- 2.30.2