treewide: remove redundant IS_ERR() before error code check
[linux/fpc-iii.git] / arch / sparc / lib / ashldi3.S
blob2d72de88af905737dc8fb7fac35cd0917a3611e4
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * ashldi3.S:   GCC emits these for certain drivers playing
4  *              with long longs.
5  *
6  * Copyright (C) 1999 David S. Miller (davem@redhat.com)
7  */
9 #include <linux/linkage.h>
10 #include <asm/export.h>
12         .text
13 ENTRY(__ashldi3)
14         cmp     %o2, 0
15         be      9f
16          mov    0x20, %g2
18         sub     %g2, %o2, %g2
19         cmp     %g2, 0
20         bg      7f
21          sll    %o0, %o2, %g3
23         neg     %g2
24         clr     %o5
25         b       8f
26          sll    %o1, %g2, %o4
28         srl     %o1, %g2, %g2
29         sll     %o1, %o2, %o5
30         or      %g3, %g2, %o4
32         mov     %o4, %o0
33         mov     %o5, %o1
35         retl
36          nop
37 ENDPROC(__ashldi3)
38 EXPORT_SYMBOL(__ashldi3)