Module Name: src Committed By: rin Date: Sun May 31 11:43:38 UTC 2020
Modified Files: src/lib/libc/arch/m68k/gen: Makefile.inc src/sys/lib/libkern/arch/m68k: Makefile.inc Added Files: src/common/lib/libc/arch/m68k/gen: muldi3.S Log Message: Add m68k assembler version of __muldi3(). This is intended for 68060: - GCC does not emit __muldi3() for 68020-40, that have 32 * 32 --> 64 mulul - mulsl (and moveml), used in this code, are not implemented for 68010 In comparison with that from compiler_rt, this version saves: - 12% of processing time - 12 bytes of stack - 50 bytes of code size Also, slightly faster, memory saving, and smaller than libgcc version. By examining with evcnt(9), __muldi3() is invoked more than 1000 times per sec by kernel, which should justify to introduce assembler version of this function. To generate a diff of this commit: cvs rdiff -u -r0 -r1.1 src/common/lib/libc/arch/m68k/gen/muldi3.S cvs rdiff -u -r1.37 -r1.38 src/lib/libc/arch/m68k/gen/Makefile.inc cvs rdiff -u -r1.37 -r1.38 src/sys/lib/libkern/arch/m68k/Makefile.inc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.