License cleanup: add SPDX GPL-2.0 license identifier to files with no license
[linux-2.6-block.git] / arch / sparc / lib / ashrdi3.S
CommitLineData
b2441318 1/* SPDX-License-Identifier: GPL-2.0 */
88278ca2 2/*
1da177e4
LT
3 * ashrdi3.S: The filesystem code creates all kinds of references to
4 * this little routine on the sparc with gcc.
5 *
6 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
7 */
8
8695c37d 9#include <linux/linkage.h>
d3867f04 10#include <asm/export.h>
8695c37d 11
1da177e4 12 .text
8695c37d 13ENTRY(__ashrdi3)
1da177e4
LT
14 tst %o2
15 be 3f
16 or %g0, 32, %g2
17
18 sub %g2, %o2, %g2
19
20 tst %g2
21 bg 1f
22 sra %o0, %o2, %o4
23
24 sra %o0, 31, %o4
25 sub %g0, %g2, %g2
26 ba 2f
27 sra %o0, %g2, %o5
28
291:
30 sll %o0, %g2, %g3
31 srl %o1, %o2, %g2
32 or %g2, %g3, %o5
332:
34 or %g0, %o4, %o0
35 or %g0, %o5, %o1
363:
37 jmpl %o7 + 8, %g0
38 nop
8695c37d 39ENDPROC(__ashrdi3)
d3867f04 40EXPORT_SYMBOL(__ashrdi3)