From 827bdee40df26e3b67824885c60a775d4c3dbe41 Mon Sep 17 00:00:00 2001 From: Alexandre Oliva Date: Fri, 6 Oct 2000 18:12:07 +0000 Subject: [PATCH] sh.md (call, call_value): Use `TARGET_SH2' instead of `! TARGET_SH1'. * config/sh/sh.md (call, call_value): Use `TARGET_SH2' instead of `! TARGET_SH1'. Reindent. From-SVN: r36759 --- gcc/ChangeLog | 5 ++++ gcc/config/sh/sh.md | 66 ++++++++++++++++++++++++--------------------- 2 files changed, 40 insertions(+), 31 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c98f4d9a5ec..ce617b3f28b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2000-10-06 Alexandre Oliva + + * config/sh/sh.md (call, call_value): Use `TARGET_SH2' instead of + `! TARGET_SH1'. Reindent. + 2000-10-06 Kaveh R. Ghazi * builtins.c (is_valid_printf_arglist, expand_builtin_printf): diff --git a/gcc/config/sh/sh.md b/gcc/config/sh/sh.md index 70510bd3f50..25983569970 100644 --- a/gcc/config/sh/sh.md +++ b/gcc/config/sh/sh.md @@ -3331,22 +3331,24 @@ (clobber (reg:SI 17))])] "" " -if (flag_pic && ! TARGET_SH1 && ! flag_unroll_loops - && GET_CODE (operands[0]) == MEM - && GET_CODE (XEXP (operands[0], 0)) == SYMBOL_REF) - { - rtx reg = gen_reg_rtx (SImode), lab = gen_label_rtx (); +{ + if (flag_pic && TARGET_SH2 && ! flag_unroll_loops + && GET_CODE (operands[0]) == MEM + && GET_CODE (XEXP (operands[0], 0)) == SYMBOL_REF) + { + rtx reg = gen_reg_rtx (SImode), lab = gen_label_rtx (); - if (SYMBOL_REF_FLAG (XEXP (operands[0], 0))) - emit_insn (gen_sym_label2reg (reg, XEXP (operands[0], 0), lab)); - else - emit_insn (gen_symPLT_label2reg (reg, XEXP (operands[0], 0), lab)); - operands[0] = reg; - emit_call_insn (gen_calli_pcrel (operands[0], operands[1], lab)); - DONE; - } -else - operands[0] = force_reg (SImode, XEXP (operands[0], 0));") + if (SYMBOL_REF_FLAG (XEXP (operands[0], 0))) + emit_insn (gen_sym_label2reg (reg, XEXP (operands[0], 0), lab)); + else + emit_insn (gen_symPLT_label2reg (reg, XEXP (operands[0], 0), lab)); + operands[0] = reg; + emit_call_insn (gen_calli_pcrel (operands[0], operands[1], lab)); + DONE; + } + else + operands[0] = force_reg (SImode, XEXP (operands[0], 0)); +}") (define_expand "call_value" [(parallel [(set (match_operand 0 "arith_reg_operand" "") @@ -3356,23 +3358,25 @@ else (clobber (reg:SI 17))])] "" " -if (flag_pic && ! TARGET_SH1 && ! flag_unroll_loops - && GET_CODE (operands[1]) == MEM - && GET_CODE (XEXP (operands[1], 0)) == SYMBOL_REF) - { - rtx reg = gen_reg_rtx (SImode), lab = gen_label_rtx (); +{ + if (flag_pic && TARGET_SH2 && ! flag_unroll_loops + && GET_CODE (operands[1]) == MEM + && GET_CODE (XEXP (operands[1], 0)) == SYMBOL_REF) + { + rtx reg = gen_reg_rtx (SImode), lab = gen_label_rtx (); - if (SYMBOL_REF_FLAG (XEXP (operands[1], 0))) - emit_insn (gen_sym_label2reg (reg, XEXP (operands[1], 0), lab)); - else - emit_insn (gen_symPLT_label2reg (reg, XEXP (operands[1], 0), lab)); - operands[1] = reg; - emit_call_insn (gen_call_valuei_pcrel (operands[0], operands[1], - operands[2], lab)); - DONE; - } -else - operands[1] = force_reg (SImode, XEXP (operands[1], 0));") + if (SYMBOL_REF_FLAG (XEXP (operands[1], 0))) + emit_insn (gen_sym_label2reg (reg, XEXP (operands[1], 0), lab)); + else + emit_insn (gen_symPLT_label2reg (reg, XEXP (operands[1], 0), lab)); + operands[1] = reg; + emit_call_insn (gen_call_valuei_pcrel (operands[0], operands[1], + operands[2], lab)); + DONE; + } + else + operands[1] = force_reg (SImode, XEXP (operands[1], 0)); +}") (define_insn "indirect_jump" [(set (pc)