* mips.md (divmodsi4*, divmoddi4*, udivmodsi4*, udivmoddi4): Add -mcheck-range-division/
authorscox <scox@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 1 Dec 1998 16:52:56 +0000 (16:52 +0000)
committerscox <scox@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 1 Dec 1998 16:52:56 +0000 (16:52 +0000)
commit16c730c97a80bdb81e955e8b14d4466d520ec59b
tree39eb2e0c7c345f15e1b7b803b6069bed1e5a46d5
parent64c0b0d5744cffaa12921d5202683f3d2718f08c
* mips.md (divmodsi4*, divmoddi4*, udivmodsi4*, udivmoddi4): Add -mcheck-range-division/
-mcheck-zero-division checking.  Avoid as macro expansion.  Use hi/lo as destination
register.
(div_trap): New.
(divsi3*, divdi3*, modsi3*, moddi3*, udivsi3*, udivdi3*, umodsi3*,
umoddi3*): Add -mcheck-range-division/-mcheck-zero-division checking.
Avoid as macro expansion.  Use hi/lo as destination register.
* mips.h (MASK_CHECK_RANGE_DIV): New.
(MASK_NO_CHECK_ZERO_DIV): New.
(ELIMINABLE_REGS): Added GP_REG_FIRST + 31.
(CAN_ELIMINATE, INITIAL_ELIMINATION_OFFSET): Allow for getting
return address for leaf functions out of r31 to support
builtin_return_address.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@24047 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/mips/mips.h
gcc/config/mips/mips.md