1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #include <linux/linkage.h> 3 #include <asm/export.h> 4 5 ENTRY(__lshrdi3) 6 cmp %o2, 0 7 be 3f 8 mov 0x20, %g2 9 10 sub %g2, %o2, %g2 11 cmp %g2, 0 12 bg 1f 13 srl %o0, %o2, %o4 14 15 clr %o4 16 neg %g2 17 b 2f 18 srl %o0, %g2, %o5 19 1: 20 sll %o0, %g2, %g3 21 srl %o1, %o2, %g2 22 or %g2, %g3, %o5 23 2: 24 mov %o4, %o0 25 mov %o5, %o1 26 3: 27 retl 28 nop 29 ENDPROC(__lshrdi3) 30 EXPORT_SYMBOL(__lshrdi3)