Commit 67e67979 by David Ung Committed by Jim Wilson

mips.c (mips_output_division): When GENERATE_DIVIDE_TRAPS...

* config/mips/mips.c (mips_output_division): When GENERATE_DIVIDE_TRAPS,
emit the trap instruction before the divide for TUNE_74K.

Co-Authored-By: James E. Wilson <wilson@codesourcery.com>

From-SVN: r159004
parent 35ad90d5
2010-05-03 David Ung <davidu@mips.com>
James E. Wilson <wilson@codesourcery.com>
* config/mip/mips.c (mips_output_division): When GENERATE_DIVIDE_TRAPS,
emit the trap instruction before the divide for TUNE_74K.
2010-05-03 Steven Bosscher <steven@gcc.gnu.org> 2010-05-03 Steven Bosscher <steven@gcc.gnu.org>
* doc/tm.texi (defmac SMALL_REGISTER_CLASSES): Remove. * doc/tm.texi (defmac SMALL_REGISTER_CLASSES): Remove.
......
/* Subroutines used for MIPS code generation. /* Subroutines used for MIPS code generation.
Copyright (C) 1989, 1990, 1991, 1993, 1994, 1995, 1996, 1997, 1998, Copyright (C) 1989, 1990, 1991, 1993, 1994, 1995, 1996, 1997, 1998,
1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
Free Software Foundation, Inc. Free Software Foundation, Inc.
Contributed by A. Lichnewsky, lich@inria.inria.fr. Contributed by A. Lichnewsky, lich@inria.inria.fr.
Changes by Michael Meissner, meissner@osf.org. Changes by Michael Meissner, meissner@osf.org.
...@@ -11817,10 +11817,17 @@ mips_output_division (const char *division, rtx *operands) ...@@ -11817,10 +11817,17 @@ mips_output_division (const char *division, rtx *operands)
s = "bnez\t%2,1f\n\tbreak\t7\n1:"; s = "bnez\t%2,1f\n\tbreak\t7\n1:";
} }
else if (GENERATE_DIVIDE_TRAPS) else if (GENERATE_DIVIDE_TRAPS)
{ {
output_asm_insn (s, operands); /* Avoid long replay penalty on load miss by putting the trap before
s = "teq\t%2,%.,7"; the divide. */
} if (TUNE_74K)
output_asm_insn ("teq\t%2,%.,7", operands);
else
{
output_asm_insn (s, operands);
s = "teq\t%2,%.,7";
}
}
else else
{ {
output_asm_insn ("%(bne\t%2,%.,1f", operands); output_asm_insn ("%(bne\t%2,%.,1f", operands);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment