Linux Audio

Check our new training course

Loading...
v6.2
 1/* SPDX-License-Identifier: GPL-2.0 */
 2/*
 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
 
 9#include <linux/linkage.h>
10#include <asm/export.h>
11
12	.text
13ENTRY(__ashrdi3)
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
39ENDPROC(__ashrdi3)
40EXPORT_SYMBOL(__ashrdi3)
v6.8
 1/* SPDX-License-Identifier: GPL-2.0 */
 2/*
 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
 9#include <linux/export.h>
10#include <linux/linkage.h>
 
11
12	.text
13ENTRY(__ashrdi3)
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
39ENDPROC(__ashrdi3)
40EXPORT_SYMBOL(__ashrdi3)