avionic design with actual uboot and tooling
submodule of avionic design uboot bootloader and with included tools to get you started , read readme.md and readme-tk1-loader.md
This commit is contained in:
48
u-boot/arch/arm/lib/muldi3.S
Normal file
48
u-boot/arch/arm/lib/muldi3.S
Normal file
@@ -0,0 +1,48 @@
|
||||
/*
|
||||
* linux/arch/arm/lib/muldi3.S
|
||||
*
|
||||
* Author: Nicolas Pitre
|
||||
* Created: Oct 19, 2005
|
||||
* Copyright: Monta Vista Software, Inc.
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-2.0
|
||||
*/
|
||||
|
||||
#include <linux/linkage.h>
|
||||
#include <asm/assembler.h>
|
||||
|
||||
#ifdef __ARMEB__
|
||||
#define xh r0
|
||||
#define xl r1
|
||||
#define yh r2
|
||||
#define yl r3
|
||||
#else
|
||||
#define xl r0
|
||||
#define xh r1
|
||||
#define yl r2
|
||||
#define yh r3
|
||||
#endif
|
||||
|
||||
.pushsection .text.__muldi3, "ax"
|
||||
ENTRY(__muldi3)
|
||||
ENTRY(__aeabi_lmul)
|
||||
|
||||
mul xh, yl, xh
|
||||
mla xh, xl, yh, xh
|
||||
mov ip, xl, lsr #16
|
||||
mov yh, yl, lsr #16
|
||||
bic xl, xl, ip, lsl #16
|
||||
bic yl, yl, yh, lsl #16
|
||||
mla xh, yh, ip, xh
|
||||
mul yh, xl, yh
|
||||
mul xl, yl, xl
|
||||
mul ip, yl, ip
|
||||
adds xl, xl, yh, lsl #16
|
||||
adc xh, xh, yh, lsr #16
|
||||
adds xl, xl, ip, lsl #16
|
||||
adc xh, xh, ip, lsr #16
|
||||
ret lr
|
||||
|
||||
ENDPROC(__muldi3)
|
||||
ENDPROC(__aeabi_lmul)
|
||||
.popsection
|
||||
Reference in New Issue
Block a user