]> git.karo-electronics.de Git - karo-tx-linux.git/blob - arch/sparc/lib/lshrdi3.S
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux...
[karo-tx-linux.git] / arch / sparc / lib / lshrdi3.S
1
2         .globl  __lshrdi3
3 __lshrdi3:
4         cmp     %o2, 0
5         be      3f
6          mov    0x20, %g2
7
8         sub     %g2, %o2, %g2
9         cmp     %g2, 0
10         bg      1f
11          srl    %o0, %o2, %o4
12
13         clr     %o4
14         neg     %g2
15         b       2f
16          srl    %o0, %g2, %o5
17 1:
18         sll  %o0, %g2, %g3
19         srl  %o1, %o2, %g2
20         or  %g2, %g3, %o5
21 2:
22         mov  %o4, %o0
23         mov  %o5, %o1
24 3:
25         retl 
26          nop