diff options
author | Karl Berry <karl@freefriends.org> | 2021-02-25 19:22:25 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2021-02-25 19:22:25 +0000 |
commit | ad547a6b5986815fda458221149728d9d9ab1d87 (patch) | |
tree | 16296910eb3eca724371474ea9aea3994dc69614 /Build/source/libs/gmp/gmp-src/mpn/powerpc64/umul.asm | |
parent | 947b43de3dd21d58ccc2ffadefc4441ea1c2a813 (diff) |
restore Build,TODO from r57911
git-svn-id: svn://tug.org/texlive/trunk@57915 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/libs/gmp/gmp-src/mpn/powerpc64/umul.asm')
-rw-r--r-- | Build/source/libs/gmp/gmp-src/mpn/powerpc64/umul.asm | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/Build/source/libs/gmp/gmp-src/mpn/powerpc64/umul.asm b/Build/source/libs/gmp/gmp-src/mpn/powerpc64/umul.asm new file mode 100644 index 00000000000..7fcc72f18f5 --- /dev/null +++ b/Build/source/libs/gmp/gmp-src/mpn/powerpc64/umul.asm @@ -0,0 +1,53 @@ +dnl PowerPC-64 umul_ppmm -- support for longlong.h + +dnl Copyright 2000, 2001, 2005 Free Software Foundation, Inc. + +dnl This file is part of the GNU MP Library. +dnl +dnl The GNU MP Library is free software; you can redistribute it and/or modify +dnl it under the terms of either: +dnl +dnl * the GNU Lesser General Public License as published by the Free +dnl Software Foundation; either version 3 of the License, or (at your +dnl option) any later version. +dnl +dnl or +dnl +dnl * the GNU General Public License as published by the Free Software +dnl Foundation; either version 2 of the License, or (at your option) any +dnl later version. +dnl +dnl or both in parallel, as here. +dnl +dnl The GNU MP Library is distributed in the hope that it will be useful, but +dnl WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +dnl or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +dnl for more details. +dnl +dnl You should have received copies of the GNU General Public License and the +dnl GNU Lesser General Public License along with the GNU MP Library. If not, +dnl see https://www.gnu.org/licenses/. + +include(`../config.m4') + + +C mp_limb_t mpn_umul_ppmm (mp_limb_t *lowptr, mp_limb_t m1, mp_limb_t m2); +C + +ASM_START() +PROLOGUE(mpn_umul_ppmm) + + C r3 lowptr + C r4 m1 + C r5 m2 + + mulld r0, r4, r5 + mulhdu r4, r4, r5 + std r0, 0(r3) +ifdef(`HAVE_ABI_mode32', +` srdi r3, r4, 32 +',` mr r3, r4 +') + blr + +EPILOGUE(mpn_umul_ppmm) |