xref: /arm-trusted-firmware/lib/aarch32/arm32_aeabi_divmod_a32.S (revision 91f16700b400a8c0651d24a598fc48ee2997a0d7)
1*91f16700Schasinglulu/*
2*91f16700Schasinglulu * Copyright (c) 2017, Arm Limited and Contributors. All rights reserved.
3*91f16700Schasinglulu *
4*91f16700Schasinglulu * SPDX-License-Identifier: BSD-3-Clause
5*91f16700Schasinglulu */
6*91f16700Schasinglulu
7*91f16700Schasinglulu#include <asm_macros.S>
8*91f16700Schasinglulu
9*91f16700Schasinglulu/*
10*91f16700Schasinglulu * EABI wrappers from the udivmod and idivmod functions
11*91f16700Schasinglulu */
12*91f16700Schasinglulu
13*91f16700Schasinglulu	.globl ret_uidivmod_values
14*91f16700Schasinglulu	.globl ret_idivmod_values
15*91f16700Schasinglulu
16*91f16700Schasinglulu/*
17*91f16700Schasinglulu * signed ret_idivmod_values(signed quot, signed rem);
18*91f16700Schasinglulu * return quotient and remaining the EABI way (regs r0,r1)
19*91f16700Schasinglulu */
20*91f16700Schasinglulufunc ret_idivmod_values
21*91f16700Schasinglulu        bx lr
22*91f16700Schasingluluendfunc ret_idivmod_values
23*91f16700Schasinglulu
24*91f16700Schasinglulu/*
25*91f16700Schasinglulu * unsigned ret_uidivmod_values(unsigned quot, unsigned rem);
26*91f16700Schasinglulu * return quotient and remaining the EABI way (regs r0,r1)
27*91f16700Schasinglulu */
28*91f16700Schasinglulufunc ret_uidivmod_values
29*91f16700Schasinglulu        bx      lr
30*91f16700Schasingluluendfunc ret_uidivmod_values
31