divtab-sh4.c, [...]: New files.
authorJ"orn Rennecke <joern.rennecke@st.com>
Thu, 23 Mar 2006 21:39:32 +0000 (21:39 +0000)
committerJoern Rennecke <amylaar@gcc.gnu.org>
Thu, 23 Mar 2006 21:39:32 +0000 (21:39 +0000)
commitb368d6b8dff358b7f6b197ba4c95477a41645c23
tree6eb8d5d19c35a219b954adb42735d22b79b838cd
parenta57aee2ab63245bf7678a0cb18997ceb78da8ffc
divtab-sh4.c, [...]: New files.

2006-03-23  J"orn Rennecke <joern.rennecke@st.com>

* config/sh/divtab-sh4.c, config/sh/divcost-analysis: New files.
* config/sh/lib1funcs.asm (div_table): Add !__SH5__ variant.
* config/sh/t-sh (LIB1ASMFUNCS): Add _div_table.
* config/sh/sh.opt (mdiv=): Amend description.
* config/sh/sh.h (TARGET_DIVIDE_CALL_DIV1): New macro.
(TARGET_DIVIDE_CALL_FP, TARGET_DIVIDE_CALL_TABLE): Likewise.
(sh_divide_strategy_e): Add new members SH_DIV_CALL_DIV1,
SH_DIV_CALL_FP, SH_DIV_CALL_TABLE and SH_DIV_INTRINSIC.
(OVERRIDE_OPTIONS): Also process sh_div_str for TARGET_SH1.
Calculate sh_divsi3_libfunc using TARGET_DIVIDE_* macros.
* config/sh/sh.md (udivsi3_i4_int, divsi3_i4_int): New patterns.
(udivsi3, divsi3): Use them.  Check TARGET_DIVIDE_CALL_TABLE /
TARGET_DIVIDE_CALL_FP.

From-SVN: r112331
gcc/ChangeLog
gcc/config/sh/divcost-analysis [new file with mode: 0644]
gcc/config/sh/divtab-sh4.c [new file with mode: 0644]
gcc/config/sh/lib1funcs.asm
gcc/config/sh/sh.h
gcc/config/sh/sh.md
gcc/config/sh/sh.opt
gcc/config/sh/t-sh