From 4c467d411382344a2a754f4d247f9b3226b3486f Mon Sep 17 00:00:00 2001 From: Richard Sandiford Date: Thu, 15 Jul 2004 19:28:22 +0000 Subject: [PATCH] mips.c (mips_adjust_insn_length): Fix handling of calls in mips16 code. * config/mips/mips.c (mips_adjust_insn_length): Fix handling of calls in mips16 code. From-SVN: r84772 --- gcc/ChangeLog | 5 +++++ gcc/config/mips/mips.c | 4 +--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index cd45d8ae906..c19e9963dc5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2004-07-15 Richard Sandiford + + * config/mips/mips.c (mips_adjust_insn_length): Fix handling of + calls in mips16 code. + 2004-07-15 Richard Sandiford * config/mips/mips.md: In the mips16 li/neg splitter, use SImode for diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c index 70c4680cf1f..679416c121f 100644 --- a/gcc/config/mips/mips.c +++ b/gcc/config/mips/mips.c @@ -8969,9 +8969,7 @@ mips_adjust_insn_length (rtx insn, int length) /* A unconditional jump has an unfilled delay slot if it is not part of a sequence. A conditional jump normally has a delay slot, but does not on MIPS16. */ - if (simplejump_p (insn) - || (!TARGET_MIPS16 && (GET_CODE (insn) == JUMP_INSN - || GET_CODE (insn) == CALL_INSN))) + if (CALL_P (insn) || (TARGET_MIPS16 ? simplejump_p (insn) : JUMP_P (insn))) length += 4; /* See how many nops might be needed to avoid hardware hazards. */ -- 2.30.2