Home | History | Annotate | Download | only in libgcc
      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
     30