This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH][ARM] Optimized 64-bit multiplication for THUMB-1


Hi,

     This patch had been submitted for a previous gcc release quite
some time ago but I missed the deadline last time.  The patch
implemented hand-tuned 64-bit multiplication run-time __aeabi_lmul.
On ARM and THUMB-2, this is done using a very short, 5-instruction
routine.  On THUMB-1, this is done using the ARM version via
interworking or a slower, hand-optimized version, depending on whether
the interworking is supported or not.  This is tested on
arm-unknown-linux-gnueabi in qemu with not new regression.

-Doug

2010-10-22  Doug Kwan  <dougkwan@google.com>

        * config/arm/lib1funcs.asm (muldi3): Implement muldi3 in hand-written
        assembly.
        * config/arm/t-strongarm-elf (LIB1ASMFUNCS): Add _muldi3.
        * config/arm/t-vxworks: Ditto.
        * config/arm/t-pe: Ditto.
        * config/arm/t-arm-elf: Ditto.
        * config/arm/t-linux: Ditto.
        * config/arm/t-symbian: Ditto.
        * config/arm/t-wince-pe: Ditto.

Attachment: patch-mul.txt
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]