github.com/aergoio/aergo@v1.3.1/libtool/src/gmp-6.1.2/mpn/pa32/hppa1_1/umul.asm (about)

     1  dnl  Copyright 1999, 2001 Free Software Foundation, Inc.
     2  
     3  dnl  This file is part of the GNU MP Library.
     4  dnl
     5  dnl  The GNU MP Library is free software; you can redistribute it and/or modify
     6  dnl  it under the terms of either:
     7  dnl
     8  dnl    * the GNU Lesser General Public License as published by the Free
     9  dnl      Software Foundation; either version 3 of the License, or (at your
    10  dnl      option) any later version.
    11  dnl
    12  dnl  or
    13  dnl
    14  dnl    * the GNU General Public License as published by the Free Software
    15  dnl      Foundation; either version 2 of the License, or (at your option) any
    16  dnl      later version.
    17  dnl
    18  dnl  or both in parallel, as here.
    19  dnl
    20  dnl  The GNU MP Library is distributed in the hope that it will be useful, but
    21  dnl  WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
    22  dnl  or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
    23  dnl  for more details.
    24  dnl
    25  dnl  You should have received copies of the GNU General Public License and the
    26  dnl  GNU Lesser General Public License along with the GNU MP Library.  If not,
    27  dnl  see https://www.gnu.org/licenses/.
    28  
    29  include(`../config.m4')
    30  
    31  ASM_START()
    32  PROLOGUE(mpn_umul_ppmm)
    33  C	.callinfo frame=64,no_calls
    34  
    35  	ldo	64(%r30),%r30
    36  	stw	%r25,-16(0,%r30)
    37  	fldws	-16(0,%r30),%fr22R
    38  	stw	%r24,-16(0,%r30)
    39  	fldws	-16(0,%r30),%fr22L
    40  	xmpyu	%fr22R,%fr22L,%fr22
    41  	fstds	%fr22,-16(0,%r30)
    42  	ldw	-16(0,%r30),%r28
    43  	ldw	-12(0,%r30),%r29
    44  	stw	%r29,0(0,%r26)
    45  	bv	0(%r2)
    46  	ldo	-64(%r30),%r30
    47  EPILOGUE()