Linux 4.8-rc8
[linux/fpc-iii.git] / arch / sparc / lib / lshrdi3.S
blob60ebc7cdbee04a89b772b4ea28d515f86a5cae0e
1 #include <linux/linkage.h>
3 ENTRY(__lshrdi3)
4         cmp     %o2, 0
5         be      3f
6          mov    0x20, %g2
8         sub     %g2, %o2, %g2
9         cmp     %g2, 0
10         bg      1f
11          srl    %o0, %o2, %o4
13         clr     %o4
14         neg     %g2
15         b       2f
16          srl    %o0, %g2, %o5
18         sll  %o0, %g2, %g3
19         srl  %o1, %o2, %g2
20         or  %g2, %g3, %o5
22         mov  %o4, %o0
23         mov  %o5, %o1
25         retl 
26          nop 
27 ENDPROC(__lshrdi3)