[U-Boot-Users] Eliminate calls of _divsi3 on ARM

Hi,
the enclosed patch agains current top of CVS eliminates two calls of the libgcc helper function _divsi3 and _modsi3.
Rationale: Certain commercially available tool-chains provides b0rken libgcc.a (compiled with hardware FP) making these helper functions unusable (U-Boot already provides the unsigned counterparts in lib_arm/libarm.a).
Changelog: Eliminate calls of ARM libgcc.a helper functions _divsi3 and _modsi3
Cheers Anders

In message fc.004c4e480031a732004c4e480031a732.31a781@rea.de you wrote:
the enclosed patch agains current top of CVS eliminates two calls of the libgcc helper function _divsi3 and _modsi3.
Rationale: Certain commercially available tool-chains provides b0rken libgcc.a (compiled with hardware FP) making these helper functions unusable
Don't use these tool-chains, then. There are free and working solutions.
... - i -= (i % info->portwidth); + i -= i & (info->portwidth - 1); ... - *cp++ = ((i + 1) % info->chipwidth) ? '\0' : cmd; + *cp++ = ((i + 1) & (info->chipwidth - 1)) ? '\0' : cmd;
Should we document the restrictions (i. e. that portwidth and chipwidth have to be powers of two) ?
Best regards,
Wolfgang Denk

Wolfgang Denk wd@denx.de schreibt:
Don't use these tool-chains, then. There are free and working solutions.
Well, in a large organization one does not always have the choice :-/
Should we document the restrictions (i. e. that portwidth and chipwidth have to be powers of two) ?
You're probably right (although I have yet to see a chip with a bus width not an integer multiple of 8).
Cheers Anders

Anders Larsen wrote:
Wolfgang Denk wd@denx.de schreibt:
Should we document the restrictions (i. e. that portwidth and chipwidth have to be powers of two) ?
You're probably right (although I have yet to see a chip with a bus width not an integer multiple of 8).
You mean a power-of-two multiple of 8.
Cheers Anders
Udi

In message fc.004c4e480031a732004c4e480031a732.31a781@rea.de you wrote:
Changelog: Eliminate calls of ARM libgcc.a helper functions _divsi3 and _modsi3
Added, thanks.
Best regards,
Wolfgang Denk
participants (3)
-
Anders Larsen
-
Udi Finkelstein
-
Wolfgang Denk