mirror of
git://git.gnupg.org/gnupg.git
synced 2025-07-02 22:46:30 +02:00
See ChangeLog: Tue Mar 7 18:45:31 CET 2000 Werner Koch
This commit is contained in:
parent
c8efcabec4
commit
f818c5ea6b
12 changed files with 58 additions and 11 deletions
|
@ -1,3 +1,12 @@
|
|||
Tue Mar 7 18:45:31 CET 2000 Werner Koch <wk@gnupg.de>
|
||||
|
||||
* mpih-mul.c (mpihelp_mul_karatsuba_case): It seems that the
|
||||
untested part works fine. Removed the debugging message.
|
||||
|
||||
* longlong.h (umul_ppmm): Fixes for ARM-4. By Sean MacLennan.
|
||||
|
||||
* config.links: Add support for NetBSD.
|
||||
|
||||
Thu Jan 13 19:31:58 CET 2000 Werner Koch <wk@gnupg.de>
|
||||
|
||||
* mpi-internal.h (karatsuba_ctx): New.
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# sourced my ../configure to get the list of files to link
|
||||
# sourced by ../configure to get the list of files to link
|
||||
# this should set $mpi_ln_src and mpi_ln_dst.
|
||||
# Note: this is called from the above directory.
|
||||
|
||||
|
@ -12,12 +12,14 @@ echo '/* created by config.links - do not edit */' >./mpi/asm-syntax.h
|
|||
|
||||
if test "$try_asm_modules" = "yes" ; then
|
||||
case "${target}" in
|
||||
i[34]86*-*-freebsd*-elf | i[34]86*-*-freebsd[34]* | i[34]86*-*-freebsdelf*)
|
||||
i[34]86*-*-freebsd*-elf | i[34]86*-*-freebsd[34]* | i[34]86*-*-freebsdelf* \
|
||||
| i[34]86*-*-netbsd* )
|
||||
echo '#define ELF_SYNTAX' >>./mpi/asm-syntax.h
|
||||
cat $srcdir/mpi/i386/syntax.h >>./mpi/asm-syntax.h
|
||||
path="i386"
|
||||
;;
|
||||
i[56]86*-*-freebsd*-elf | i[56]86*-*-freebsd[34]* | i[56]86*-*-freebsdelf*)
|
||||
i[56]86*-*-freebsd*-elf | i[56]86*-*-freebsd[34]* | i[56]86*-*-freebsdelf* \
|
||||
| i[56]86*-*-netbsd* | pentium-*-netbsd* | pentiumpro-*-netbsd*)
|
||||
echo '#define ELF_SYNTAX' >>./mpi/asm-syntax.h
|
||||
cat $srcdir/mpi/i386/syntax.h >>./mpi/asm-syntax.h
|
||||
path="i586 i386"
|
||||
|
|
|
@ -199,6 +199,8 @@ extern UDItype __udiv_qrnnd ();
|
|||
"rI" ((USItype)(bh)), \
|
||||
"r" ((USItype)(al)), \
|
||||
"rI" ((USItype)(bl)))
|
||||
#ifdef __ARM_ARCH_3__
|
||||
/* SAM This does not work on arm4 */
|
||||
#define umul_ppmm(xh, xl, a, b) \
|
||||
__asm__ ("%@ Inlined umul_ppmm
|
||||
mov %|r0, %2, lsr #16
|
||||
|
@ -218,6 +220,18 @@ extern UDItype __udiv_qrnnd ();
|
|||
: "r" ((USItype)(a)), \
|
||||
"r" ((USItype)(b)) \
|
||||
: "r0", "r1", "r2")
|
||||
#elif __ARM_ARCH_4__
|
||||
#define umul_ppmm(xh, xl, a, b) \
|
||||
__asm__ ("%@ Inlined umul_ppmm
|
||||
umull %r1, %r0, %r2, %r3" \
|
||||
: "=&r" ((USItype)(xh)), \
|
||||
"=r" ((USItype)(xl)) \
|
||||
: "r" ((USItype)(a)), \
|
||||
"r" ((USItype)(b)) \
|
||||
: "r0", "r1")
|
||||
#else
|
||||
#error Untested architecture
|
||||
#endif
|
||||
#define UMUL_TIME 20
|
||||
#define UDIV_TIME 100
|
||||
#endif /* __arm__ */
|
||||
|
|
|
@ -415,8 +415,6 @@ mpihelp_mul_karatsuba_case( mpi_ptr_t prodp,
|
|||
}
|
||||
|
||||
if( usize ) {
|
||||
#warning Must test this CODE!!!
|
||||
g10_log_debug("this code path is not yet tested\n");
|
||||
if( usize < KARATSUBA_THRESHOLD ) {
|
||||
mpihelp_mul( ctx->tspace, vp, vsize, up, usize );
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue