chiark / gitweb /
[PATCH] added klibc version 0.82 (cvs tree) to the udev tree.
[elogind.git] / klibc / klibc / arch / i386 / libgcc / __lshrdi3.S
1 /*
2  * arch/i386/libgcc/__lshrdi3.S
3  *
4  * 64-bit shr
5  */
6         .text
7         .align 4
8         .globl __lshrdi3
9         .type __lshrdi3,@function
10 __lshrdi3:
11 #ifndef REGPARM
12         movl  4(%esp),%eax
13         movl  8(%esp),%edx
14         movb  12(%esp),%cl
15 #endif
16         cmpb  $32,%cl
17         jae   1f
18         
19         shrdl %cl,%edx,%eax
20         shrl  %cl,%edx
21         ret
22         
23 1:
24         shrl  %cl,%edx
25         xorl  %eax,%eax
26         xchgl %edx,%eax
27         ret
28
29         .size __lshrdi3,.-__lshrdi3