From 2347a7dc655e3fe9415558095b43a5f7102f999d Mon Sep 17 00:00:00 2001 From: Andrew Mahone Date: Thu, 28 Jan 2010 09:04:38 +0000 Subject: Small fix for ARMv5e/v6 APE divider, correct large-divisor path and remove specialized version of it for small dividend, as the test and branch can't be fit into delay slots on that path. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24360 a1c6a512-1295-4272-9138-f99709370657 --- apps/codecs/lib/udiv32_arm.S | 19 ------------------- 1 file changed, 19 deletions(-) diff --git a/apps/codecs/lib/udiv32_arm.S b/apps/codecs/lib/udiv32_arm.S index d080205f08..33ab7a43a5 100644 --- a/apps/codecs/lib/udiv32_arm.S +++ b/apps/codecs/lib/udiv32_arm.S @@ -243,16 +243,7 @@ udiv32_arm: rsb \bits, \bits, #0 sub \inv, \inv, #4 mov \divisor, \inv, lsr \bits -#if ARM_ARCH >= 6 - tst \numerator, \numerator - smmla \divisor, \divisor, \inv, \divisor - bmi 50f - smmul \inv, \numerator, \divisor -#else - mov \bits, #0 - smlal \bits, \divisor, \inv, \divisor umull \bits, \inv, \numerator, \divisor -#endif mla \divisor, \inv, \neg, \numerator mov \quotient, \inv cmn \neg, \divisor, lsr #1 @@ -281,16 +272,6 @@ udiv32_arm: addcc \quotient, \quotient, #1 addpl \quotient, \quotient, #2 bx lr -50: - umull \bits, \inv, \numerator, \divisor - mla \divisor, \inv, \neg, \numerator - mov \quotient, \inv - cmn \neg, \divisor, lsr #1 - addcs \divisor, \divisor, \neg, lsl #1 - addcs \quotient, \quotient, #2 - cmn \neg, \divisor - addcs \quotient, \quotient, #1 - bx lr #endif .endm -- cgit v1.2.3