diff options
author | Clinton Popetz <cpopetz@cygnus.com> | 2000-07-14 15:25:10 +0000 |
---|---|---|
committer | Clinton Popetz <cpopetz@gcc.gnu.org> | 2000-07-14 11:25:10 -0400 |
commit | 12a345cd3fcc62cfa5da6035e7583814669d85d0 (patch) | |
tree | 8e242187150ff258cb39476be1c6aa06d111a906 | |
parent | ecd365573753d0df0b08a07fe3f014ca76904072 (diff) | |
download | gcc-12a345cd3fcc62cfa5da6035e7583814669d85d0.zip gcc-12a345cd3fcc62cfa5da6035e7583814669d85d0.tar.gz gcc-12a345cd3fcc62cfa5da6035e7583814669d85d0.tar.bz2 |
mips.md: (absdi2): Handle sign_extend for second operand.
* config/mips/mips.md: (absdi2): Handle sign_extend for
second operand.
From-SVN: r35034
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/mips/mips.md | 8 |
2 files changed, 12 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index acb6d67..2f532f1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Fri Jul 14 10:25:53 2000 Clinton Popetz <cpopetz@cygnus.com> + + * config/mips/mips.md: (absdi2): Handle sign_extend for + second operand. + 2000-07-14 Nathan Sidwell <nathan@codesourcery.com> * cpplib.c (do_pragma_dependency): Tidy warning messages. diff --git a/gcc/config/mips/mips.md b/gcc/config/mips/mips.md index f63c790..8a84f33 100644 --- a/gcc/config/mips/mips.md +++ b/gcc/config/mips/mips.md @@ -2838,11 +2838,17 @@ "TARGET_64BIT && !TARGET_MIPS16" "* { + int regno1; dslots_jump_total++; dslots_jump_filled++; operands[2] = const0_rtx; + + if (GET_CODE (operands[1]) == REG) + regno1 = REGNO (operands[1]); + else + regno1 = REGNO (XEXP (operands[1], 0)); - if (REGNO (operands[0]) == REGNO (operands[1])) + if (REGNO (operands[0]) == regno1) return \"%(bltzl\\t%1,1f\\n\\tdsubu\\t%0,%z2,%0\\n%~1:%)\"; else return \"%(bgez\\t%1,1f\\n\\tmove\\t%0,%1\\n\\tdsubu\\t%0,%z2,%0\\n%~1:%)\"; |