blob: 7344142888593a1a1ac5f86cbdbd23f7cbec6c59 [file] [log] [blame]
/*
* arch/i386/libgcc/__ashldi3.S
*
* 64-bit shl
*/
.text
.align 4
.globl __ashldi3
.type __ashldi3,@function
__ashldi3:
#ifndef _REGPARM
movl 4(%esp),%eax
movl 8(%esp),%edx
movb 12(%esp),%cl
#endif
cmpb $32,%cl
jae 1f
shldl %cl,%eax,%edx
shl %cl,%eax
ret
1:
xorl %edx,%edx
shl %cl,%eax
xchgl %edx,%eax
ret
.size __ashldi3,.-__ashldi3