From 885ae155e98c7cf33c0e41a743b5b7edf0d05ec6 Mon Sep 17 00:00:00 2001 From: Jeffrey A Law Date: Wed, 28 Jul 1999 19:21:34 +0000 Subject: [PATCH] pa.md (reload_indi, [...]): Scratch register should be a DImode register. * pa.md (reload_indi, reload_outdi): Scratch register should be a DImode register. (call, call_value): Use "word_mode" instead of "SImode" as needed. From-SVN: r28320 --- gcc/ChangeLog | 6 ++++++ gcc/config/pa/pa.md | 20 +++++++++----------- 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 23c08e62e96..fdecb383dee 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +Wed Jul 28 13:18:35 1999 Jeffrey A Law (law@cygnus.com) + + * pa.md (reload_indi, reload_outdi): Scratch register should + be a DImode register. + (call, call_value): Use "word_mode" instead of "SImode" as needed. + Wed Jul 28 11:28:04 1999 Franz Sirl * builtins.c (expand_builtin): Typo in call to expand_builtin_ffs. diff --git a/gcc/config/pa/pa.md b/gcc/config/pa/pa.md index af209c3d6ee..56777fd572f 100644 --- a/gcc/config/pa/pa.md +++ b/gcc/config/pa/pa.md @@ -2408,7 +2408,7 @@ (define_expand "reload_indi" [(set (match_operand:DI 0 "register_operand" "=f") (match_operand:DI 1 "non_hard_reg_operand" "")) - (clobber (match_operand:SI 2 "register_operand" "=&r"))] + (clobber (match_operand:DI 2 "register_operand" "=&r"))] "" " { @@ -2423,7 +2423,7 @@ (define_expand "reload_outdi" [(set (match_operand:DI 0 "general_operand" "") (match_operand:DI 1 "register_operand" "f")) - (clobber (match_operand:SI 2 "register_operand" "=&r"))] + (clobber (match_operand:DI 2 "register_operand" "=&r"))] "" " { @@ -2473,8 +2473,6 @@ [(set_attr "type" "move") (set_attr "length" "8")]) -;;; Experimental - (define_insn "" [(set (match_operand:DI 0 "reg_or_nonsymb_mem_operand" "=r,o,Q,r,r,r,f,f,*TR") @@ -4309,8 +4307,8 @@ call_insn = emit_call_insn (gen_call_internal_symref (op, operands[1])); else { - rtx tmpreg = gen_rtx_REG (SImode, 22); - emit_move_insn (tmpreg, force_reg (SImode, op)); + rtx tmpreg = gen_rtx_REG (word_mode, 22); + emit_move_insn (tmpreg, force_reg (word_mode, op)); call_insn = emit_call_insn (gen_call_internal_reg (operands[1])); } @@ -4324,7 +4322,7 @@ This will set regs_ever_live for the callee saved register we stored the PIC register in. */ emit_move_insn (pic_offset_table_rtx, - gen_rtx_REG (SImode, PIC_OFFSET_TABLE_REGNUM_SAVED)); + gen_rtx_REG (word_mode, PIC_OFFSET_TABLE_REGNUM_SAVED)); emit_insn (gen_rtx_USE (VOIDmode, pic_offset_table_rtx)); /* Gross. We have to keep the scheduler from moving the restore @@ -4451,7 +4449,7 @@ rtx call_insn; if (TARGET_PORTABLE_RUNTIME) - op = force_reg (SImode, XEXP (operands[1], 0)); + op = force_reg (word_mode, XEXP (operands[1], 0)); else op = XEXP (operands[1], 0); @@ -4466,8 +4464,8 @@ operands[2])); else { - rtx tmpreg = gen_rtx_REG (SImode, 22); - emit_move_insn (tmpreg, force_reg (SImode, op)); + rtx tmpreg = gen_rtx_REG (word_mode, 22); + emit_move_insn (tmpreg, force_reg (word_mode, op)); call_insn = emit_call_insn (gen_call_value_internal_reg (operands[0], operands[2])); } @@ -4481,7 +4479,7 @@ This will set regs_ever_live for the callee saved register we stored the PIC register in. */ emit_move_insn (pic_offset_table_rtx, - gen_rtx_REG (SImode, PIC_OFFSET_TABLE_REGNUM_SAVED)); + gen_rtx_REG (word_mode, PIC_OFFSET_TABLE_REGNUM_SAVED)); emit_insn (gen_rtx_USE (VOIDmode, pic_offset_table_rtx)); /* Gross. We have to keep the scheduler from moving the restore