xref: /openbmc/linux/arch/xtensa/lib/bswapdi2.S (revision 034f4a78)
1*034f4a78SMax Filippov/* SPDX-License-Identifier: GPL-2.0-or-later WITH GCC-exception-2.0 */
2*034f4a78SMax Filippov#include <linux/linkage.h>
3*034f4a78SMax Filippov#include <asm/asmmacro.h>
4*034f4a78SMax Filippov#include <asm/core.h>
5*034f4a78SMax Filippov
6*034f4a78SMax FilippovENTRY(__bswapdi2)
7*034f4a78SMax Filippov
8*034f4a78SMax Filippov	abi_entry_default
9*034f4a78SMax Filippov	ssai	8
10*034f4a78SMax Filippov	srli	a4, a2, 16
11*034f4a78SMax Filippov	src	a4, a4, a2
12*034f4a78SMax Filippov	src	a4, a4, a4
13*034f4a78SMax Filippov	src	a4, a2, a4
14*034f4a78SMax Filippov	srli	a2, a3, 16
15*034f4a78SMax Filippov	src	a2, a2, a3
16*034f4a78SMax Filippov	src	a2, a2, a2
17*034f4a78SMax Filippov	src	a2, a3, a2
18*034f4a78SMax Filippov	mov	a3, a4
19*034f4a78SMax Filippov	abi_ret_default
20*034f4a78SMax Filippov
21*034f4a78SMax FilippovENDPROC(__bswapdi2)
22