Nicolas Pitre <nico@cam.org>
authorNicolas Pitre <nico@cam.org>
Tue, 30 Sep 2003 10:30:32 +0000 (10:30 +0000)
committerRichard Earnshaw <rearnsha@gcc.gnu.org>
Tue, 30 Sep 2003 10:30:32 +0000 (10:30 +0000)
commit6a436e5e453997882b10105880ef33a4322c944f
tree93abdfe4366b19848ed2a38e00fe26f6f53933f7
parent47edf59e900f8d4efeac373f8b6b18f306ecf375
Nicolas Pitre <nico@cam.org>

Nicolas Pitre <nico@cam.org>
* arm/lib1funcs.asm (ARM_DIV_MOD_BODY) split into ARM_DIV_BODY
and ARM_MOD_BODY.
(ARM_MOD_BODY): rewritten. added clz insns for __ARM_ARCH__ >= 5.
(ARM_DIV_BODY): added clz insns for __ARM_ARCH__ >= 5,
added better divisor alignment in the other case.
(ARM_DIV2_ORDER): added, finds the order of a single bit divisor.
(__divsi3, __udivsi3, __modsi3, __umodsi3): rewritten using the
macros above, add fast exits for divisor >= dividend, etc.

From-SVN: r71940
gcc/ChangeLog
gcc/config/arm/lib1funcs.asm