Staging
v0.8.1
https://github.com/torvalds/linux
Raw File
Tip revision: b13baccc3850ca8b8cccbf8ed9912dbaa0fdf7f3 authored by Linus Torvalds on 12 June 2022, 23:11:37 UTC
Linux 5.19-rc2
Tip revision: b13bacc
ashrdi3.S
/* SPDX-License-Identifier: GPL-2.0-or-later WITH GCC-exception-2.0 */
#include <linux/linkage.h>
#include <asm/asmmacro.h>
#include <asm/core.h>

#ifdef __XTENSA_EB__
#define uh a2
#define ul a3
#else
#define uh a3
#define ul a2
#endif /* __XTENSA_EB__ */

ENTRY(__ashrdi3)

	abi_entry_default
	ssr	a4
	bgei	a4, 32, .Lhigh_only
	src	ul, uh, ul
	sra	uh, uh
	abi_ret_default

.Lhigh_only:
	sra	ul, uh
	srai	uh, uh, 31
	abi_ret_default

ENDPROC(__ashrdi3)
back to top