]> oss.titaniummirror.com Git - msp430-gcc.git/blobdiff - gcc/config/arc/lib1funcs.asm
Imported gcc-4.4.3
[msp430-gcc.git] / gcc / config / arc / lib1funcs.asm
index e0dcd3630712fc3c166aef2bd98f41cea4551a04..c61f39a5ca701eb679bc3ab2a413c6ee939e1ec2 100644 (file)
@@ -1,30 +1,25 @@
 ; libgcc routines for ARC cpu.
 
-/* Copyright (C) 1995, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1995, 1997,2004, 2009 Free Software Foundation, Inc.
 
 This file is free software; you can redistribute it and/or modify it
 under the terms of the GNU General Public License as published by the
-Free Software Foundation; either version 2, or (at your option) any
+Free Software Foundation; either version 3, or (at your option) any
 later version.
 
-In addition to the permissions in the GNU General Public License, the
-Free Software Foundation gives you unlimited permission to link the
-compiled version of this file into combinations with other programs,
-and to distribute those combinations without any restriction coming
-from the use of this file.  (The General Public License restrictions
-do apply in other respects; for example, they cover modification of
-the file, and distribution when not linked into a combine
-executable.)
-
 This file 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
 General Public License for more details.
 
-You should have received a copy of the GNU General Public License
-along with GNU CC; see the file COPYING.  If not, write to
-the Free Software Foundation, 59 Temple Place - Suite 330,
-Boston, MA 02111-1307, USA.  */
+Under Section 7 of GPL version 3, you are granted additional
+permissions described in the GCC Runtime Library Exception, version
+3.1, as published by the Free Software Foundation.
+
+You should have received a copy of the GNU General Public License and
+a copy of the GCC Runtime Library Exception along with this program;
+see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
+<http://www.gnu.org/licenses/>.  */
 
 #ifdef  L_mulsi3
        .section .text
@@ -89,8 +84,12 @@ ___umulsidi3:
        nop
        beq.nd .Ldone
        and.f 0,r0,1            ; if (a & 1)
-       add.nz r4,r4,r1         ; r += b
-       adc.nz r3,r3,r2
+       sub.f 0,r0,0
+       nop
+       beq .Ldontadd
+       add.f r4,r4,r1          ; r += b
+       adc   r3,r3,r2
+.Ldontadd:
        lsr r0,r0               ; a >>= 1
        lsl.f r1,r1             ; b <<= 1
        b.d .Lloop