]> git.ipfire.org Git - thirdparty/glibc.git/blobdiff - sysdeps/mips/mips64/lshift.S
Prefer https to http for gnu.org and fsf.org URLs
[thirdparty/glibc.git] / sysdeps / mips / mips64 / lshift.S
index ef403ec25f05a3e3e17f238c2fdbeac703420195..51879835cef8725a9f2713d90a46ff6780f8bda3 100644 (file)
@@ -1,26 +1,26 @@
 /* MIPS3 __mpn_lshift --
  *
- * Copyright (C) 1995 Free Software Foundation, Inc.
+ * Copyright (C) 1995-2019 Free Software Foundation, Inc.
  *
  * This file is part of the GNU MP Library.
  *
  * The GNU MP Library is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Library General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or (at your
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2.1 of the License, or (at your
  * option) any later version.
  *
  * The GNU MP Library is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
- * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library General Public
+ * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public
  * License for more details.
  *
- * You should have received a copy of the GNU Library General Public License
- * along with the GNU MP Library; see the file COPYING.LIB.  If not, write to
- * the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
- * MA 02111-1307, USA.
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with the GNU MP Library.  If not, see
+ * <https://www.gnu.org/licenses/>.
  */
 
 #include <sysdep.h>
+#include <sys/asm.h>
 
 /* INPUT PARAMETERS
  * res_ptr     $4
  * cnt         $7
  */
 
-#ifdef PIC
+#ifdef __PIC__
        .option pic2
 #endif
-       .text
-       .align  2
-       .globl  __mpn_lshift
-       .ent    __mpn_lshift
-__mpn_lshift:
-       .set    noreorder
-#ifdef PIC
-       .cpload t9
+ENTRY (__mpn_lshift)
+#ifdef __PIC__
+       SETUP_GP /* ??? unused */
 #endif
+       .set    noreorder
        .set    nomacro
 
        dsll    $2,$6,3
@@ -50,12 +46,12 @@ __mpn_lshift:
        daddu   $4,$4,$2        # make r4 point at end of res
        daddiu  $6,$6,-1
        and     $9,$6,4-1       # number of limbs in first loop
-       beq     $9,$0,.L0       # if multiple of 4 limbs, skip first loop
-        dsrl   $2,$10,$13      # compute function result
+       beq     $9,$0,L(L0)     # if multiple of 4 limbs, skip first loop
+       dsrl    $2,$10,$13      # compute function result
 
        dsubu   $6,$6,$9
 
-.Loop0:        ld      $3,-16($5)
+L(Loop0):      ld      $3,-16($5)
        daddiu  $4,$4,-8
        daddiu  $5,$5,-8
        daddiu  $9,$9,-1
@@ -63,13 +59,13 @@ __mpn_lshift:
        dsrl    $12,$3,$13
        move    $10,$3
        or      $8,$11,$12
-       bne     $9,$0,.Loop0
-        sd     $8,0($4)
+       bne     $9,$0,L(Loop0)
+       sd      $8,0($4)
 
-.L0:   beq     $6,$0,.Lend
-        nop
+L(L0): beq     $6,$0,L(Lend)
+       nop
 
-.Loop: ld      $3,-16($5)
+L(Loop):       ld      $3,-16($5)
        daddiu  $4,$4,-32
        daddiu  $6,$6,-4
        dsll    $11,$10,$7
@@ -95,10 +91,10 @@ __mpn_lshift:
 
        daddiu  $5,$5,-32
        or      $8,$14,$9
-       bgtz    $6,.Loop
-        sd     $8,0($4)
+       bgtz    $6,L(Loop)
+       sd      $8,0($4)
 
-.Lend: dsll    $8,$10,$7
+L(Lend):       dsll    $8,$10,$7
        j       $31
        sd      $8,-8($4)
-       .end    __mpn_lshift
+END (__mpn_lshift)